summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason M. Bills <jason.m.bills@linux.intel.com>2021-05-24 22:35:24 +0300
committerJason M. Bills <jason.m.bills@linux.intel.com>2021-05-24 22:35:24 +0300
commit0e0df451ae365f09d5c0c766b253f23de26901f2 (patch)
treedb4d7d3ce85e02ee01ad58a86ede02ac876aae77
parente370fd750e2821620ec427f26f8efab0069824ff (diff)
parent7e10dee74964afa47859704886128dd256acf854 (diff)
downloadopenbmc-0e0df451ae365f09d5c0c766b253f23de26901f2.tar.xz
Merge tag '0.52' of ssh://git-amr-1.devtools.intel.com:29418/openbmc-openbmc into update
-rw-r--r--meta-alibaba/conf/layer.conf2
-rw-r--r--meta-alibaba/meta-thor/conf/bblayers.conf.sample2
-rw-r--r--meta-alibaba/meta-thor/conf/distro/alibaba-openbmc.conf1
-rw-r--r--meta-alibaba/meta-thor/conf/layer.conf2
-rw-r--r--meta-alibaba/meta-thor/conf/local.conf.sample4
-rw-r--r--meta-amd/conf/layer.conf2
-rw-r--r--meta-amd/meta-ethanolx/conf/bblayers.conf.sample2
-rw-r--r--meta-amd/meta-ethanolx/conf/layer.conf2
-rw-r--r--meta-amd/meta-ethanolx/recipes-kernel/linux/linux-aspeed/ethanolx.cfg1
-rw-r--r--meta-amd/meta-ethanolx/recipes-phosphor/configuration/entity-manager/ethanolx-baseboard.json280
-rw-r--r--meta-amd/meta-ethanolx/recipes-phosphor/configuration/entity-manager/ethanolx-chassis.json77
-rw-r--r--meta-amd/meta-ethanolx/recipes-phosphor/configuration/entity-manager_%.bbappend10
-rw-r--r--meta-amd/meta-ethanolx/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend2
-rw-r--r--meta-amd/recipes-amd/amd-fpga/amd-fpga.bb18
-rw-r--r--meta-amd/recipes-amd/amd-fpga/files/LICENSE13
-rw-r--r--meta-amd/recipes-amd/amd-fpga/files/ethanolx/fpgardu.sh398
-rw-r--r--meta-amd/recipes-amd/packagegroups/packagegroup-amd-apps.bb2
-rw-r--r--meta-ampere/conf/layer.conf2
-rw-r--r--meta-ampere/meta-jade/conf/bblayers.conf.sample2
-rw-r--r--meta-ampere/meta-jade/conf/layer.conf2
-rw-r--r--meta-ampere/meta-jade/recipes-bsp/u-boot/u-boot-aspeed/0006-aspeed-support-Mt.Jade-platform-init.patch175
-rw-r--r--meta-ampere/meta-jade/recipes-bsp/u-boot/u-boot-aspeed_%.bbappend1
-rw-r--r--meta-ampere/meta-jade/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend2
-rw-r--r--meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend2
-rw-r--r--meta-arm/conf/layer.conf2
-rw-r--r--meta-aspeed/conf/layer.conf2
-rw-r--r--meta-aspeed/recipes-kernel/linux/linux-aspeed_git.bb4
-rw-r--r--meta-bytedance/conf/layer.conf2
-rw-r--r--meta-bytedance/meta-g220a/conf/bblayers.conf.sample2
-rw-r--r--meta-bytedance/meta-g220a/conf/layer.conf2
-rw-r--r--meta-evb/meta-evb-aspeed/meta-evb-ast2500/conf/bblayers.conf.sample4
-rw-r--r--meta-evb/meta-evb-aspeed/meta-evb-ast2600/conf/bblayers.conf.sample4
-rw-r--r--meta-evb/meta-evb-aspeed/meta-evb-ast2600/conf/layer.conf2
-rw-r--r--meta-evb/meta-evb-enclustra/conf/layer.conf2
-rw-r--r--meta-evb/meta-evb-enclustra/meta-evb-zx3-pm3/conf/bblayers.conf.sample2
-rw-r--r--meta-evb/meta-evb-enclustra/meta-evb-zx3-pm3/conf/layer.conf2
-rw-r--r--meta-evb/meta-evb-nuvoton/conf/layer.conf2
-rw-r--r--meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/bblayers.conf.sample4
-rw-r--r--meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/layer.conf2
l---------meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/machine/evb-npcm750.conf1
-rw-r--r--meta-evb/meta-evb-raspberrypi/conf/bblayers.conf.sample4
-rw-r--r--meta-facebook/conf/layer.conf2
-rw-r--r--meta-facebook/meta-tiogapass/conf/bblayers.conf.sample2
-rw-r--r--meta-facebook/meta-tiogapass/conf/layer.conf2
-rw-r--r--meta-facebook/meta-yosemitev2/conf/bblayers.conf.sample2
-rw-r--r--meta-facebook/meta-yosemitev2/conf/layer.conf2
-rwxr-xr-xmeta-facebook/recipes-fb/ipmi/fb-ipmi-oem_git.bb2
-rw-r--r--meta-facebook/recipes-fb/packagegroups/packagegroup-fb-apps.bb1
-rw-r--r--meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/tiogapass/ttyS2.conf7
-rw-r--r--meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS0.conf7
-rw-r--r--meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS1.conf7
-rw-r--r--meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS2.conf7
-rw-r--r--meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS3.conf7
-rw-r--r--meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger_%.bbappend17
-rw-r--r--meta-facebook/recipes-phosphor/sensors/phosphor-virtual-sensor/tiogapass/tiogapass_sensor_config.json46
-rw-r--r--meta-facebook/recipes-phosphor/sensors/phosphor-virtual-sensor/yosemitev2/yosemitev2_sensor_config.json51
-rw-r--r--meta-facebook/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend11
-rw-r--r--meta-facebook/recipes-x86/chassis/x86-power-control/yosemitev2/chassis-system-reset.service11
-rw-r--r--meta-fii/OWNERS5
-rw-r--r--meta-fii/meta-kudo/conf/bblayers.conf.sample4
-rw-r--r--meta-fii/meta-kudo/conf/layer.conf2
-rw-r--r--meta-fii/meta-kudo/conf/machine/kudo.conf15
-rw-r--r--meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-common-kudo.inc3
-rw-r--r--meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/fixed_phy.cfg2
-rw-r--r--meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/kudo.cfg1
-rw-r--r--meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton_%.bbappend11
-rw-r--r--meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.service9
-rw-r--r--meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.sh10
-rw-r--r--meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog-override.conf2
-rw-r--r--meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.conf79
-rw-r--r--meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate22
-rw-r--r--meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog_%.bbappend25
-rw-r--r--meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton/kudo.cfg41
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update.bb33
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/config-bios.json19
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/phosphor-ipmi-flash-bios-update.service6
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update.bb20
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update/config-bmc.json20
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update.bb39
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-bmccpld.json19
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-mbcpld.json20
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-bmccpld-update.service9
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-mbcpld-update.service9
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw.bb34
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.service10
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.sh28
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw.sh120
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update.bb41
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scp.json19
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scpback.json20
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scp-update.service9
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scpback-update.service9
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/network/usb-network.bb29
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/network/usb-network/00-bmc-usb0.network7
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.service10
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.sh27
-rw-r--r--meta-fii/meta-kudo/recipes-kudo/packagegroups/packagegroup-kudo-apps.bb30
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager/kudo.json3899
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager_%.bbappend7
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service14
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control_%.bbappend6
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init.bb29
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/bin/pwm_init.sh6
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/pwm_init.service11
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/image/obmc-phosphor-image.bbappend4
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/ipmi/phosphor-ipmi-flash_%.bbappend3
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/sel-logger/phosphor-sel-logger_%.bbappend2
-rw-r--r--meta-google/conf/layer.conf2
-rw-r--r--meta-google/recipes-core/dropbear/dropbear/dropbear.default1
-rw-r--r--meta-google/recipes-core/dropbear/dropbear_%.bbappend7
-rw-r--r--meta-google/recipes-core/systemd/systemd_%.bbappend3
-rw-r--r--meta-google/recipes-extended/networking/sslh_git.bb2
-rw-r--r--meta-google/recipes-google/acpi-power-state-daemon/acpi-power-state-daemon_git.bb31
-rw-r--r--meta-google/recipes-google/google-misc/google-misc.inc12
-rw-r--r--meta-google/recipes-google/ipmi/metrics-ipmi-blobs_git.bb27
-rw-r--r--meta-google/recipes-google/kcs/gbmc-kcs-config.bb46
-rw-r--r--meta-google/recipes-google/kcs/google-kcsbridge_git.bb16
-rw-r--r--meta-google/recipes-google/nanopb/nanopb_0.4.5.bb24
-rw-r--r--meta-google/recipes-google/ncsi/ncsid_git.bb19
-rwxr-xr-xmeta-google/recipes-google/networking/files/gbmc-ip-monitor-test.sh181
-rw-r--r--meta-google/recipes-google/networking/files/gbmc-ip-monitor.service9
-rwxr-xr-xmeta-google/recipes-google/networking/files/gbmc-ip-monitor.sh122
-rw-r--r--meta-google/recipes-google/networking/gbmc-ip-monitor.bb35
-rw-r--r--meta-google/recipes-google/networking/network-sh.bb23
-rw-r--r--meta-google/recipes-google/networking/network-sh/lib.sh106
-rwxr-xr-xmeta-google/recipes-google/networking/network-sh/test.sh84
-rw-r--r--meta-google/recipes-google/nftables/files/nft-configure.sh1
-rw-r--r--meta-google/recipes-google/nftables/files/nftables.service2
-rw-r--r--meta-google/recipes-google/ssh/authorized-keys-comp.bb34
-rw-r--r--meta-google/recipes-google/ssh/authorized-keys-comp/authorized-keys-comp.service6
-rw-r--r--meta-google/recipes-google/ssh/authorized-keys-comp/authorized-keys-comp.sh51
-rw-r--r--meta-google/recipes-google/ssh/gbmc-dev-ssh-key.bb15
-rw-r--r--meta-google/recipes-google/ssh/gbmc-dev-ssh-key/gbmc-dev.priv7
-rw-r--r--meta-google/recipes-google/ssh/gbmc-dev-ssh-key/gbmc-dev.pub1
-rw-r--r--meta-google/recipes-google/test/test-sh.bb21
-rwxr-xr-xmeta-google/recipes-google/test/test-sh/lib.sh57
-rwxr-xr-xmeta-google/recipes-google/test/test-sh/test.sh145
-rw-r--r--meta-google/recipes-kernel/linux/files/gbmc.cfg16
-rw-r--r--meta-google/recipes-phosphor/dbus/phosphor-dbus-interfaces-mapper-config-native.bbappend2
-rw-r--r--meta-google/recipes-phosphor/images/obmc-phosphor-image.bbappend4
-rw-r--r--meta-hpe/conf/layer.conf2
-rw-r--r--meta-hpe/meta-dl360poc/conf/bblayers.conf.sample2
-rw-r--r--meta-hpe/meta-dl360poc/conf/layer.conf2
-rw-r--r--meta-hpe/meta-gxp/conf/layer.conf2
-rw-r--r--meta-hxt/conf/layer.conf2
-rw-r--r--meta-hxt/meta-stardragon4800-rep2/conf/bblayers.conf.sample2
-rw-r--r--meta-ibm/MAINTAINERS6
-rw-r--r--meta-ibm/README.md4
-rw-r--r--meta-ibm/conf/bblayers.conf.sample2
-rw-r--r--meta-ibm/conf/conf-notes.txt12
-rw-r--r--meta-ibm/conf/distro/include/ibm-yaml.inc (renamed from meta-ibm/conf/distro/include/ibm-distrovars.inc)0
-rw-r--r--meta-ibm/conf/distro/openbmc-witherspoon.conf4
-rw-r--r--meta-ibm/conf/layer.conf2
-rw-r--r--meta-ibm/conf/local.conf.sample4
-rw-r--r--meta-ibm/conf/machine/mihawk.conf6
-rw-r--r--meta-ibm/conf/machine/p10bmc.conf36
l---------[-rw-r--r--]meta-ibm/conf/machine/rainier.conf34
-rw-r--r--meta-ibm/conf/machine/witherspoon-tacoma.conf1
-rw-r--r--meta-ibm/conf/machine/witherspoon.conf4
-rw-r--r--meta-ibm/meta-palmetto/conf/bblayers.conf.sample2
-rw-r--r--meta-ibm/meta-palmetto/conf/layer.conf2
-rw-r--r--meta-ibm/meta-romulus/conf/bblayers.conf.sample2
-rw-r--r--meta-ibm/meta-romulus/conf/layer.conf2
-rw-r--r--meta-ibm/meta-romulus/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend2
-rw-r--r--meta-ibm/recipes-core/systemd/systemd_%.bbappend14
-rw-r--r--meta-ibm/recipes-kernel/linux/linux-aspeed/p10bmc.cfg (renamed from meta-ibm/recipes-kernel/linux/linux-aspeed/rainier.cfg)1
-rw-r--r--meta-ibm/recipes-kernel/linux/linux-aspeed_%.bbappend2
-rw-r--r--meta-ibm/recipes-phosphor/certificate/phosphor-certificate-manager_%.bbappend2
-rw-r--r--meta-ibm/recipes-phosphor/console/obmc-console/p10bmc/client.2201.conf (renamed from meta-ibm/recipes-phosphor/console/obmc-console/rainier/client.2201.conf)0
-rw-r--r--meta-ibm/recipes-phosphor/console/obmc-console/p10bmc/server.ttyVUART0.conf (renamed from meta-ibm/recipes-phosphor/console/obmc-console/rainier/server.ttyVUART0.conf)0
-rw-r--r--meta-ibm/recipes-phosphor/console/obmc-console/p10bmc/server.ttyVUART1.conf5
-rw-r--r--meta-ibm/recipes-phosphor/console/obmc-console/rainier/server.ttyVUART1.conf3
-rw-r--r--meta-ibm/recipes-phosphor/console/obmc-console_%.bbappend18
-rw-r--r--meta-ibm/recipes-phosphor/dbus/fan-policy.bb8
-rw-r--r--meta-ibm/recipes-phosphor/dbus/phosphor-dbus-interfaces_%.bbappend2
-rw-r--r--meta-ibm/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend19
-rw-r--r--meta-ibm/recipes-phosphor/fans/fan-watchdog/p10bmc/obmc/fan-watchdog/fan-watchdog.conf (renamed from meta-ibm/recipes-phosphor/fans/fan-watchdog/rainier/obmc/fan-watchdog/fan-watchdog.conf)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/fan-watchdog/p10bmc/obmc/fan-watchdog/reset-fan-watchdog.conf (renamed from meta-ibm/recipes-phosphor/fans/fan-watchdog/rainier/obmc/fan-watchdog/reset-fan-watchdog.conf)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config.bbappend16
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/p10bmc/everest/config.json (renamed from meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/rainier/everest/config.json)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/p10bmc/rainier-1s4u/config.json90
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/p10bmc/rainier-2u/config.json (renamed from meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/rainier/rainier-2u/config.json)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/p10bmc/rainier-4u/config.json (renamed from meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/rainier/rainier-4u/config.json)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config.bbappend16
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/p10bmc/everest/config.json (renamed from meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/rainier/everest/config.json)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/p10bmc/rainier-1s4u/config.json86
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/p10bmc/rainier-2u/config.json (renamed from meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/rainier/rainier-2u/config.json)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/p10bmc/rainier-4u/config.json (renamed from meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/rainier/rainier-4u/config.json)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/everest/fans.json (renamed from meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/everest/fans.json)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/everest/zones.json (renamed from meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/everest/zones.json)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/manager.json (renamed from meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/manager.json)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-1s4u/fans.json26
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-1s4u/zones.json (renamed from meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/rainier-4u/zones.json)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-2u/zones.json (renamed from meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/rainier-2u/zones.json)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-4u/zones.json9
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier/fans.json (renamed from meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/rainier/fans.json)0
-rw-r--r--meta-ibm/recipes-phosphor/fans/phosphor-fan_%.bbappend34
-rw-r--r--meta-ibm/recipes-phosphor/flash/phosphor-software-manager_%.bbappend8
-rw-r--r--meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/p10bmc/obmc/gpio/phosphor-power-supply-0.conf (renamed from meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/rainier/obmc/gpio/phosphor-power-supply-0.conf)0
-rw-r--r--meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/p10bmc/obmc/gpio/phosphor-power-supply-1.conf (renamed from meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/rainier/obmc/gpio/phosphor-power-supply-1.conf)0
-rw-r--r--meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/p10bmc/obmc/gpio/phosphor-power-supply-2.conf (renamed from meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/rainier/obmc/gpio/phosphor-power-supply-2.conf)0
-rw-r--r--meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/p10bmc/obmc/gpio/phosphor-power-supply-3.conf (renamed from meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/rainier/obmc/gpio/phosphor-power-supply-3.conf)0
-rw-r--r--meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend4
-rw-r--r--meta-ibm/recipes-phosphor/host/phosphor-host-postd_%.bbappend2
-rw-r--r--meta-ibm/recipes-phosphor/images/obmc-phosphor-image.bbappend2
-rw-r--r--meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/p10bmc/ibm,everest_associations.json (renamed from meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/rainier/ibm,everest_associations.json)0
-rw-r--r--meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/p10bmc/ibm,rainier-2u_associations.json2857
-rw-r--r--meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/p10bmc/ibm,rainier-4u_associations.json2846
-rw-r--r--meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/rainier/ibm,rainier-2u_associations.json150
-rw-r--r--meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/rainier/ibm,rainier-4u_associations.json150
-rw-r--r--meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager_%.bbappend6
-rw-r--r--meta-ibm/recipes-phosphor/leds/phosphor-led-manager/lamp-test-led-overrides.json10
-rw-r--r--meta-ibm/recipes-phosphor/leds/phosphor-led-manager/obmc-led-create-virtual-leds@.service7
-rw-r--r--meta-ibm/recipes-phosphor/leds/phosphor-led-manager_%.bbappend40
-rw-r--r--meta-ibm/recipes-phosphor/logging/ibm-logging_git.bb2
-rw-r--r--meta-ibm/recipes-phosphor/logging/phosphor-logging/p10bmc/ibm,rainier-2u_dev_callouts.json8907
-rw-r--r--meta-ibm/recipes-phosphor/logging/phosphor-logging/p10bmc/ibm,rainier-4u_dev_callouts.json8963
-rw-r--r--meta-ibm/recipes-phosphor/logging/phosphor-logging_%.bbappend16
-rw-r--r--meta-ibm/recipes-phosphor/mboxd/mboxd_%.bbappend2
-rw-r--r--meta-ibm/recipes-phosphor/network/network/p10bmc/inventory-object-map.json (renamed from meta-ibm/recipes-phosphor/network/network/rainier/inventory-object-map.json)0
-rw-r--r--meta-ibm/recipes-phosphor/network/network/p10bmc/ncsi-netlink.service (renamed from meta-ibm/recipes-phosphor/network/network/rainier/ncsi-netlink.service)0
-rw-r--r--meta-ibm/recipes-phosphor/network/phosphor-network_%.bbappend4
-rw-r--r--meta-ibm/recipes-phosphor/openssl/openssl_%.bbappend4
-rw-r--r--meta-ibm/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend17
-rw-r--r--meta-ibm/recipes-phosphor/power/phosphor-power/p10bmc/psu.json (renamed from meta-ibm/recipes-phosphor/power/phosphor-power/rainier/psu.json)0
-rw-r--r--meta-ibm/recipes-phosphor/power/phosphor-power_%.bbappend4
-rw-r--r--meta-ibm/recipes-phosphor/power/power-sequencer.bb6
-rw-r--r--meta-ibm/recipes-phosphor/power/power-sequencer/p10bmc/ucd90160.yaml (renamed from meta-ibm/recipes-phosphor/power/power-sequencer/rainier/ucd90160.yaml)0
-rw-r--r--meta-ibm/recipes-phosphor/sensors/dbus-sensors_%.bbappend2
-rw-r--r--meta-ibm/recipes-phosphor/sensors/phosphor-hwmon/p10bmc/obmc/hwmon/ahb/apb/bus@1e78a000/i2c-bus@400/max31785@52.conf (renamed from meta-ibm/recipes-phosphor/sensors/phosphor-hwmon/rainier/obmc/hwmon/ahb/apb/bus@1e78a000/i2c-bus@400/max31785@52.conf)0
-rw-r--r--meta-ibm/recipes-phosphor/sensors/phosphor-hwmon/p10bmc/obmc/hwmon/ahb/apb/bus@1e78a000/i2c-bus@780/i2c-switch@70/i2c@3/max31785@52.conf (renamed from meta-ibm/recipes-phosphor/sensors/phosphor-hwmon/rainier/obmc/hwmon/ahb/apb/bus@1e78a000/i2c-bus@780/i2c-switch@70/i2c@3/max31785@52.conf)0
-rw-r--r--meta-ibm/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend6
-rw-r--r--meta-ibm/recipes-phosphor/sensors/phosphor-virtual-sensor/p10bmc/virtual_sensor_config.json (renamed from meta-ibm/recipes-phosphor/sensors/phosphor-virtual-sensor/rainier/virtual_sensor_config.json)0
-rw-r--r--meta-ibm/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend2
-rw-r--r--meta-ibm/recipes-phosphor/settings/phosphor-settings-manager/HypervisorInterface-default-p10bmc.override.yml (renamed from meta-ibm/recipes-phosphor/settings/phosphor-settings-manager/HypervisorInterface-default-rainier.override.yml)0
-rw-r--r--meta-ibm/recipes-phosphor/settings/phosphor-settings-manager_%.bbappend2
-rw-r--r--meta-ibm/recipes-phosphor/skeleton/obmc-libobmc-intf/p10bmc/gpio_defs.json (renamed from meta-ibm/recipes-phosphor/skeleton/obmc-libobmc-intf/rainier/gpio_defs.json)5
-rw-r--r--meta-ingrasys/conf/layer.conf2
-rw-r--r--meta-ingrasys/meta-zaius/conf/bblayers.conf.sample2
-rw-r--r--meta-ingrasys/meta-zaius/conf/layer.conf2
-rw-r--r--meta-inspur/MAINTAINERS6
-rw-r--r--meta-inspur/conf/layer.conf2
-rw-r--r--meta-inspur/meta-fp5280g2/conf/bblayers.conf.sample2
-rw-r--r--meta-inspur/meta-fp5280g2/conf/distro/openbmc-fp5280g2.conf1
-rw-r--r--meta-inspur/meta-fp5280g2/conf/layer.conf2
-rw-r--r--meta-inspur/meta-fp5280g2/conf/machine/fp5280g2.conf3
-rw-r--r--meta-inspur/meta-fp5280g2/recipes-phosphor/leds/fp5280g2-led-manager-config-native.bb19
-rw-r--r--meta-inspur/meta-fp5280g2/recipes-phosphor/leds/fp5280g2-led-manager-config/led.yaml20
-rw-r--r--meta-inspur/meta-fp5280g2/recipes-phosphor/leds/phosphor-led-manager_%.bbappend5
-rw-r--r--meta-inspur/meta-fp5280g2/recipes-phosphor/occ/fp5280g2-occ-control-config-native.bb2
-rw-r--r--meta-inspur/meta-fp5280g2/recipes-phosphor/power/phosphor-fp5280g2-psu-update.bb2
-rw-r--r--meta-inspur/meta-fp5280g2/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend2
-rw-r--r--meta-inspur/meta-fp5280g2/recipes-phosphor/vpd/fp5280g2-openpower-fru-inventory-native.bb2
-rw-r--r--meta-inspur/meta-fp5280g2/recipes-phosphor/vpd/fp5280g2-openpower-fru-vpd-layout-native.bb2
-rw-r--r--meta-inspur/meta-on5263m5/conf/bblayers.conf.sample1
-rw-r--r--meta-inspur/meta-on5263m5/conf/layer.conf2
-rw-r--r--meta-inspur/meta-on5263m5/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend2
-rw-r--r--meta-intel-openbmc/conf/layer.conf2
-rw-r--r--meta-intel-openbmc/meta-common/recipes-core/host-error-monitor/host-error-monitor_git.bb2
-rw-r--r--meta-intel-openbmc/meta-common/recipes-core/libpeci/libpeci_git.bb2
-rwxr-xr-xmeta-intel-openbmc/meta-common/recipes-intel/ipmi/intel-ipmi-oem_git.bb2
-rw-r--r--meta-intel-openbmc/meta-common/recipes-intel/pfr/pfr-manager_git.bb2
-rw-r--r--meta-intel-openbmc/meta-common/recipes-phosphor/interfaces/bmcweb_%.bbappend1
-rw-r--r--meta-intel-openbmc/meta-s2600wf/conf/bblayers.conf.sample1
-rw-r--r--meta-intel-openbmc/meta-s2600wf/conf/layer.conf2
-rw-r--r--meta-inventec/conf/layer.conf2
-rw-r--r--meta-inventec/meta-lanyang/conf/bblayers.conf.sample2
-rw-r--r--meta-lenovo/conf/layer.conf2
-rw-r--r--meta-lenovo/meta-hr630/conf/bblayers.conf.sample2
-rw-r--r--meta-lenovo/meta-hr630/conf/layer.conf2
-rw-r--r--meta-lenovo/meta-hr630/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend2
-rw-r--r--meta-lenovo/meta-hr855xg2/conf/bblayers.conf.sample2
-rw-r--r--meta-lenovo/meta-hr855xg2/conf/layer.conf2
-rwxr-xr-xmeta-microsoft/conf/layer.conf2
-rwxr-xr-xmeta-microsoft/meta-olympus/conf/bblayers.conf.sample2
-rwxr-xr-xmeta-microsoft/meta-olympus/conf/layer.conf2
-rw-r--r--meta-nuvoton/conf/layer.conf2
-rw-r--r--meta-nuvoton/recipes-bsp/images/npcm7xx-bootblock_10.10.17.bb (renamed from meta-nuvoton/recipes-bsp/images/npcm7xx-bootblock_10.10.16.bb)2
-rw-r--r--meta-nuvoton/recipes-kernel/linux/linux-nuvoton_git.bb2
-rwxr-xr-xmeta-openembedded/contrib/oe-stylize.py121
-rw-r--r--meta-openembedded/meta-filesystems/conf/layer.conf2
-rw-r--r--meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Replace-u_intXX_t-with-kernel-typedefs.patch54
-rw-r--r--meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Use-asm-type.h-for-kernel-types.patch65
-rw-r--r--meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils_1.9.bb (renamed from meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils_git.bb)6
-rw-r--r--meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.5.5.bb (renamed from meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.5.3.bb)4
-rw-r--r--meta-openembedded/meta-gnome/conf/layer.conf2
-rw-r--r--meta-openembedded/meta-gnome/recipes-connectivity/libnma/libnma_1.8.30.bb5
-rw-r--r--meta-openembedded/meta-gnome/recipes-gimp/gimp/gimp_2.10.22.bb1
-rw-r--r--meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor/0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch522
-rw-r--r--meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor_3.38.2.bb2
-rw-r--r--meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0001-maint-Avoid-g_once_init_enter-error-in-GCC-11.patch77
-rw-r--r--meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs_1.58.8.bb4
-rw-r--r--meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.3.1.bb (renamed from meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.2.4.bb)4
-rw-r--r--meta-openembedded/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_3.36.0.bb8
-rw-r--r--meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.36.1.bb9
-rw-r--r--meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound/0001-Set-vapidir.patch28
-rw-r--r--meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.2.bb2
-rw-r--r--meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_2.3.5.bb2
-rw-r--r--meta-openembedded/meta-initramfs/conf/layer.conf2
-rw-r--r--meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb15
-rw-r--r--meta-openembedded/meta-multimedia/conf/layer.conf2
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/aom/aom_3.0.0.bb (renamed from meta-openembedded/meta-multimedia/recipes-multimedia/aom/aom_2.0.0.bb)2
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth.inc6
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth/0002-fluid_synth_nwrite_float-Allow-zero-pointer-for-left.patch26
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-uvcvideo-Use-auto-variable-to-avoid-range-loop-warni.patch101
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/musicpd/mpd_0.22.6.bb11
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/openh264/openh264_2.1.1.bb1
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb6
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.24.bb (renamed from meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.22.bb)45
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/sox/sox_14.4.2.bb5
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.12.bb4
-rw-r--r--meta-openembedded/meta-networking/conf/layer.conf2
-rw-r--r--meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc64le.txt41
-rw-r--r--meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0001-rlm_python3-add-PY_INC_DIR-in-search-dir.patch58
-rw-r--r--meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.21.bb (renamed from meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.20.bb)3
-rw-r--r--meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_2.0.10.bb (renamed from meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_2.0.8.bb)4
-rw-r--r--meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.14.bb (renamed from meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.12.bb)5
-rw-r--r--meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0002-Do-not-create-settings-settings-property-documentati.patch50
-rw-r--r--meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0004-fix_reallocarray_check.patch27
-rw-r--r--meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch52
-rw-r--r--meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl-systemd-specific.patch26
-rw-r--r--meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch121
-rw-r--r--meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-systemd-specific.patch26
-rw-r--r--meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.30.2.bb (renamed from meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.28.0.bb)6
-rw-r--r--meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.17.1.bb (renamed from meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.17.bb)2
-rw-r--r--meta-openembedded/meta-networking/recipes-daemons/atftp/atftp/atftpd.init (renamed from meta-openembedded/meta-networking/recipes-daemons/atftp/files/atftpd.init)0
-rw-r--r--meta-openembedded/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.1.4.bb (renamed from meta-openembedded/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.1.3.bb)2
-rw-r--r--meta-openembedded/meta-networking/recipes-daemons/lldpd/lldpd_1.0.8.bb (renamed from meta-openembedded/meta-networking/recipes-daemons/lldpd/lldpd_1.0.4.bb)4
-rw-r--r--meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.11.bb (renamed from meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.10.bb)2
-rw-r--r--meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_1.0.20210315.bb (renamed from meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_1.0.20210223.bb)2
-rw-r--r--meta-openembedded/meta-networking/recipes-netkit/netkit-telnet/netkit-telnet_0.17.bb2
-rw-r--r--meta-openembedded/meta-networking/recipes-protocols/mdns/mdns_1310.40.42.bb13
-rw-r--r--meta-openembedded/meta-networking/recipes-protocols/quagga/files/bgpd.service1
-rw-r--r--meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospf6d.service1
-rw-r--r--meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospfd.service1
-rw-r--r--meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripd.service1
-rw-r--r--meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripngd.service1
-rw-r--r--meta-openembedded/meta-networking/recipes-protocols/quagga/files/zebra.service1
-rw-r--r--meta-openembedded/meta-networking/recipes-protocols/quagga/quagga.inc2
-rw-r--r--meta-openembedded/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.bb2
-rw-r--r--meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.14.bb (renamed from meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.13.bb)4
-rw-r--r--meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.18.bb (renamed from meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.16.bb)2
-rw-r--r--meta-openembedded/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb2
-rw-r--r--meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.12.bb2
-rw-r--r--meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.25.5.bb (renamed from meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_git.bb)6
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Add-resolv_compat.h-for-musl-builds.patch72
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-pollGtk-Fix-volatile-qualifier-exposed-incorrectly.patch29
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch49
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch)24
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch112
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch36
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/tools.conf (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/tools.conf)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service)0
-rw-r--r--meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.2.5.bb (renamed from meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools_11.0.1.bb)18
-rw-r--r--meta-openembedded/meta-networking/recipes-support/spice/usbredir_0.9.0.bb (renamed from meta-openembedded/meta-networking/recipes-support/spice/usbredir_0.8.0.bb)2
-rw-r--r--meta-openembedded/meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch10
-rw-r--r--meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.59.bb (renamed from meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.58.bb)2
-rw-r--r--meta-openembedded/meta-networking/recipes-support/vnstat/vnstat_2.6.bb2
-rw-r--r--meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.4.bb (renamed from meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.3.bb)2
-rw-r--r--meta-openembedded/meta-oe/classes/image_types_sparse.bbclass16
-rw-r--r--meta-openembedded/meta-oe/conf/layer.conf14
-rw-r--r--meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/disable_runtime_check.patch17
-rw-r--r--meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/ppc64_ARCH_BITS.patch18
-rw-r--r--meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb_git.bb15
-rw-r--r--meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-devtools/nanopb/nanopb_0.4.5.bb (renamed from meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-devtools/nanopb/nanopb_0.4.4.bb)2
-rw-r--r--meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-core/packagegroups/packagegroup-meta-oe.bbappend3
-rw-r--r--meta-openembedded/meta-oe/lib/oeqa/selftest/cases/meta_oe_sources.py1
-rw-r--r--meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.26.bb (renamed from meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.25.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/0003-fix-precision-handling-bugs.patch138
-rw-r--r--meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb7
-rw-r--r--meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb2
-rw-r--r--meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb2
-rw-r--r--meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-Makefile-Check-for-last-line-only-from-preprocessed-.patch57
-rw-r--r--meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-flashrom-Mark-RISCV-as-non-memory-mapped-I-O-archite.patch44
-rw-r--r--meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-typecast-enum-conversions-explicitly.patch66
-rw-r--r--meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/meson-fixes.patch68
-rw-r--r--meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom_1.2.bb16
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2019-5061.patch854
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-0326.patch43
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-27803.patch54
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-30004.patch123
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb4
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.28.2.bb (renamed from meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.26.6.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.16.2.bb (renamed from meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.14.10.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils/0001-Include-limits.h-for-PATH_MAX.patch25
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb15
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/rabbitmq-c/rabbitmq-c_0.11.0.bb (renamed from meta-openembedded/meta-oe/recipes-connectivity/rabbitmq-c/rabbitmq-c_0.10.0.bb)4
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb4
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/0001-Fix-configure.ac.patch2
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/CVE-2020-15803.patch36
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.6.bb (renamed from meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_4.4.6.bb)10
-rw-r--r--meta-openembedded/meta-oe/recipes-connectivity/zeromq/czmq_4.2.1.bb4
-rw-r--r--meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_28.bb (renamed from meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_26.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-core/musl-rpmatch/musl-rpmatch_git.bb12
-rw-r--r--meta-openembedded/meta-oe/recipes-core/opencl/ocl-icd_2.3.0.bb (renamed from meta-openembedded/meta-oe/recipes-core/opencl/ocl-icd_git.bb)3
-rw-r--r--meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb261
-rw-r--r--meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.5.bb3
-rw-r--r--meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.3.5.bb (renamed from meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.3.4.bb)6
-rw-r--r--meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.9.bb (renamed from meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.8.bb)0
-rw-r--r--meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc7
-rw-r--r--meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-aio_linux-Check-if-syscall-exists-before-using-it.patch43
-rw-r--r--meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-stacktrace-t.c-make-the-test-conditional.patch38
-rw-r--r--meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch16
-rw-r--r--meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ppc-remove-glibc-dep.patch50
-rw-r--r--meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch22
-rw-r--r--meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.9.bb (renamed from meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.8.bb)0
-rw-r--r--meta-openembedded/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb2
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/abseil-ppc-fixes.patch94
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb6
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb4
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch54
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-libc.patch9
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-disable-calls-to-getcontext-with-musl.patch47
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch12
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-Use-_fpstate-instead-of-_libc_fpstate-on-linux.patch60
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-sys-signal.h-is-a-nonportable-alias-for-signal.h.patch26
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0003-Dont-include-stab.h.patch34
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch38
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/mips_asm_sgidefs.patch18
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb23
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0001-support-to-override-usr-sbin-and-usr-share.patch41
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0002-support-to-override-usr-bin-arch-test.patch47
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/devices.tar.gzbin767 -> 0 bytes
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.123.bb23
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.67.bb35
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-build-don-t-look-for-Iconv.patch9
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/doxygen-native-only-check-python3.patch116
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.9.1.bb (renamed from meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.20.bb)3
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.4.bb (renamed from meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.1.bb)9
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.8.bb (renamed from meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.7.bb)6
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.4.bb (renamed from meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.3.bb)4
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.4.bb (renamed from meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.3.bb)4
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/add_ppc64le.patch39
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb2
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd/0001-nsswitch.y-Replace-empty-bison-extension.patch50
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd_git.bb1
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.21.0.bb (renamed from meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.20.2.bb)4
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb4
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb2
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/ply/ply_git.bb6
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/tclap/files/0001-tclap-add-pkg-config-file.patch50
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/tclap/tclap/Makefile.am-disable-docs.patch31
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.2.2.bb16
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.4.0.bb23
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace/0001-Fix-error-on-aarch64-with-binutils2.35.1.patch27
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.4.bb1
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210319.bb (renamed from meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210117.bb)4
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/libbacktrace/libbacktrace_git.bb30
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/libleak/libleak/0001-respect-environment-variables.patch25
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/libleak/libleak_git.bb38
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-tools_0.10.5.bb2
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2021.1.bb (renamed from meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2020.8.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/redis/redis/0006-Define-correct-gregs-for-RISCV32.patch (renamed from meta-openembedded/meta-oe/recipes-extended/redis/redis/riscv32.patch)26
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/redis/redis/ilp32.patch29
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/redis/redis/lua-update-Makefile-to-use-environment-build-setting.patch66
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/redis/redis/oe-use-libc-malloc.patch12
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/redis/redis_6.2.1.bb (renamed from meta-openembedded/meta-oe/recipes-extended/redis/redis_6.0.9.bb)5
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.10.0.bb (renamed from meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.6.0.bb)4
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-disable-the-check-for-inotify.patch46
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/run-ptest6
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.2102.0.bb15
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/0001-Fix-build-with-musl-backtrace-APIs-are-glibc-specifi.patch49
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/fix-uint64-const.patch16
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig_git.bb9
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/tmate/tmate_2.4.0.bb17
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb5
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/zstd/zstd/0001-Fix-legacy-build-after-2103.patch27
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/zstd/zstd_1.4.5.bb39
-rw-r--r--meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.3.0.bb (renamed from meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.1.15.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.5.bb (renamed from meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.4.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.108.bb (renamed from meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.104.bb)4
-rw-r--r--meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_2.0.26.bb (renamed from meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_2.0.25.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-graphics/libyui/libyui-ncurses_4.1.1.bb (renamed from meta-openembedded/meta-oe/recipes-graphics/libyui/libyui-ncurses_4.0.0.bb)11
-rw-r--r--meta-openembedded/meta-oe/recipes-graphics/libyui/libyui_4.1.1.bb (renamed from meta-openembedded/meta-oe/recipes-graphics/libyui/libyui_4.0.0.bb)10
-rw-r--r--meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.4.0.bb2
-rw-r--r--meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm/0001-Add-configure-time-check-for-setsid.patch10
-rw-r--r--meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_367.bb (renamed from meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_362.bb)6
-rw-r--r--meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.14.bb (renamed from meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.13.bb)5
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb13
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/libbpf/libbpf_0.3.bb6
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Fix-build-with-musl.patch55
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Use-new-bfd-APIs-from-2.34.patch79
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0002-Fix-configure-when-bin-sh-is-not-bash.patch40
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0003-Define-the-C-preprocessor-variable-to-improve-reprod.patch30
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0004-Use-BUILD_DATE-to-improve-reproducibility.patch63
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0005-Add-rmb-definition-for-NIOS2-architecture.patch (renamed from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-NIOS2-architecture.patch)11
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0006-replace-sym_iterator-0-with-sym_iterator.patch (renamed from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-replace-sym_iterator-0-with-sym_iterator.patch)8
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0007-oprofile-doesn-t-want-GNU-levels-of-automake-strictn.patch23
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0008-include-linux-limits.h-for-MAX_INPUT.patch30
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0009-Prevent-running-check-tests-on-host-if-cross-compili.patch (renamed from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/oprofile-cross-compile-tests.patch)31
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0010-oprofile-Determine-the-root-home-directory-dynamical.patch (renamed from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/root-home-dir.patch)44
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/automake-foreign.patch12
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/musl.patch46
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.3.0.bb13
-rw-r--r--meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.4.0.bb (renamed from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile.inc)35
-rw-r--r--meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210406.bb (renamed from meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210129.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb6
-rw-r--r--meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd/0001-gpsd-dbusexport.c-Fix-broken-d-bus-message-time.patch36
-rw-r--r--meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.20.bb1
-rw-r--r--meta-openembedded/meta-oe/recipes-support/ceres-solver/ceres-solver_2.0.0.bb8
-rw-r--r--meta-openembedded/meta-oe/recipes-support/emacs/emacs_27.2.bb (renamed from meta-openembedded/meta-oe/recipes-support/emacs/emacs_27.1.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.18.bb (renamed from meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.16.bb)17
-rw-r--r--meta-openembedded/meta-oe/recipes-support/fftw/fftw/club-libtool.patch9
-rw-r--r--meta-openembedded/meta-oe/recipes-support/fftw/fftw/install-bench.patch41
-rw-r--r--meta-openembedded/meta-oe/recipes-support/fftw/fftw/run-ptest30
-rw-r--r--meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.8.bb22
-rw-r--r--meta-openembedded/meta-oe/recipes-support/gd/gd_2.3.2.bb (renamed from meta-openembedded/meta-oe/recipes-support/gd/gd_2.3.1.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-support/glog/glog/0001-Find-Libunwind-during-configure.patch3
-rw-r--r--meta-openembedded/meta-oe/recipes-support/glog/glog/libexecinfo.patch29
-rw-r--r--meta-openembedded/meta-oe/recipes-support/glog/glog_0.4.0.bb4
-rw-r--r--meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch6
-rw-r--r--meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-fix-build-with-musl-libc.patch13
-rw-r--r--meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-profile-handler-Specify-libc-specific-thread_id.patch38
-rw-r--r--meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/disable_libunwind_aarch64.patch4
-rw-r--r--meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/ppc-musl.patch66
-rw-r--r--meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/sgidef.patch2
-rw-r--r--meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.9.1.bb (renamed from meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.8.1.bb)24
-rw-r--r--meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb4
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libb64/libb64/0001-example-Do-not-run-the-tests.patch27
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libb64/libb64/0002-use-BUFSIZ-as-buffer-size.patch57
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libb64/libb64/0003-fix-integer-overflows.patch77
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libb64/libb64/0004-Fix-off-by-one-error.patch26
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libb64/libb64/0005-make-overriding-CFLAGS-possible.patch40
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libb64/libb64/0006-do-not-export-the-CHARS_PER_LINE-variable.patch27
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libb64/libb64/0007-initialize-encoder-decoder-state-in-the-constructors.patch44
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libb64/libb64_1.2.1.bb39
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libcppkafka/libcppkafka_git.bb22
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.6.3.bb (renamed from meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.6.2.bb)4
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb26
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libmanette/libmanette_0.2.6.bb16
-rw-r--r--meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka/0001_fix_absolute_path_usage.patch83
-rw-r--r--meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka_1.6.1.bb23
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libsmi/libsmi_0.5.0.bb2
-rw-r--r--meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.8.9.bb6
-rw-r--r--meta-openembedded/meta-oe/recipes-support/links/links-x11_2.20.2.bb53
-rw-r--r--meta-openembedded/meta-oe/recipes-support/links/links-x11_2.22.bb29
-rw-r--r--meta-openembedded/meta-oe/recipes-support/links/links_2.22.bb (renamed from meta-openembedded/meta-oe/recipes-support/links/links_2.21.bb)5
-rw-r--r--meta-openembedded/meta-oe/recipes-support/lio-utils/lio-utils_4.1.bb2
-rw-r--r--meta-openembedded/meta-oe/recipes-support/mg/mg_20210314.bb (renamed from meta-openembedded/meta-oe/recipes-support/mg/mg_20200723.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-support/neon/neon/fix-package-check-for-libxml2.patch50
-rw-r--r--meta-openembedded/meta-oe/recipes-support/neon/neon/run-ptest25
-rw-r--r--meta-openembedded/meta-oe/recipes-support/neon/neon_0.30.2.bb16
-rw-r--r--meta-openembedded/meta-oe/recipes-support/nss/nss/nss-fix-nsinstall-build.patch2
-rw-r--r--meta-openembedded/meta-oe/recipes-support/nss/nss_3.63.bb (renamed from meta-openembedded/meta-oe/recipes-support/nss/nss_3.60.1.bb)5
-rw-r--r--meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch94
-rw-r--r--meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-utilBacktrace-Ignore-Warray-bounds.patch33
-rw-r--r--meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-add-include-sys-sysmacros.h.patch30
-rw-r--r--meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch41
-rw-r--r--meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch742
-rw-r--r--meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch29
-rw-r--r--meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Fix-building-opencv-using-gcc-11.x-19244.patch28
-rw-r--r--meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch44
-rw-r--r--meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb (renamed from meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.1.bb)10
-rw-r--r--meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.58.bb (renamed from meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.57.bb)4
-rw-r--r--meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Migrate-to-use-g_memdup2.patch192
-rw-r--r--meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb1
-rw-r--r--meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0001-configure.ac-fix-build-with-autoconf-2.71.patch229
-rw-r--r--meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0002-configure.ac-disable-few-languages-not-compatible-wi.patch49
-rw-r--r--meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.14.2.bb (renamed from meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.14.1.bb)6
-rw-r--r--meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.04.0.bb (renamed from meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.02.0.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.37.bb (renamed from meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.36.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-support/ssiapi/ssiapi_1.3.0.bb1
-rw-r--r--meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-CMakeLists.txt-exclude-riscv64-riscv32.patch42
-rw-r--r--meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-Disable-use-of-_tpause-instruction.patch34
-rw-r--r--meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-mallinfo-is-glibc-specific-API-mark-it-so.patch27
-rw-r--r--meta-openembedded/meta-oe/recipes-support/tbb/tbb/GLIBC-PREREQ-is-not-defined-on-musl.patch22
-rw-r--r--meta-openembedded/meta-oe/recipes-support/tbb/tbb/cross-compile.patch35
-rw-r--r--meta-openembedded/meta-oe/recipes-support/tbb/tbb/improve-reproducibility.patch30
-rw-r--r--meta-openembedded/meta-oe/recipes-support/tbb/tbb/tbb.pc11
-rw-r--r--meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb (renamed from meta-openembedded/meta-oe/recipes-support/tbb/tbb_2020.3.bb)53
-rw-r--r--meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.9.2.bb (renamed from meta-openembedded/meta-oe/recipes-support/udisks/udisks2_git.bb)7
-rw-r--r--meta-openembedded/meta-oe/recipes-support/uriparser/uriparser_0.9.5.bb (renamed from meta-openembedded/meta-oe/recipes-support/uriparser/uriparser_0.9.4.bb)2
-rw-r--r--meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.3.0.bb (renamed from meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.2.0.bb)4
-rw-r--r--meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/add__divmoddi4.patch36
-rw-r--r--meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.18.bb1
-rw-r--r--meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-Fixed-compiler-warnings-about-snprintf-truncations.patch28
-rw-r--r--meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch22
-rw-r--r--meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-correct-the-location-of-errno.h.patch30
-rw-r--r--meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-riscv-doesn-t-require-pointers-to-be-aligned.patch28
-rw-r--r--meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb (renamed from meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.14.bb)6
-rw-r--r--meta-openembedded/meta-oe/recipes-test/bats/bats_1.3.0.bb (renamed from meta-openembedded/meta-oe/recipes-test/bats/bats_1.1.0.bb)10
-rw-r--r--meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Add-correct-printf-qualifier-for-off_t.patch20
-rw-r--r--meta-openembedded/meta-oe/recipes-test/fwts/fwts/0002-Include-poll.h-instead-of-deprecated-sys-poll.h.patch (renamed from meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Include-poll.h-instead-of-deprecated-sys-poll.h.patch)12
-rw-r--r--meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-Remove-Werror-from-build.patch (renamed from meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Remove-Werror-from-build.patch)18
-rw-r--r--meta-openembedded/meta-oe/recipes-test/fwts/fwts/0004-Define-__SWORD_TYPE-if-not-defined-by-libc.patch (renamed from meta-openembedded/meta-oe/recipes-test/fwts/fwts/0002-Define-__SWORD_TYPE-if-not-defined-by-libc.patch)12
-rw-r--r--meta-openembedded/meta-oe/recipes-test/fwts/fwts/0005-Undefine-PAGE_SIZE.patch (renamed from meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-Undefine-PAGE_SIZE.patch)10
-rw-r--r--meta-openembedded/meta-oe/recipes-test/fwts/fwts/0006-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch (renamed from meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch)37
-rw-r--r--meta-openembedded/meta-oe/recipes-test/fwts/fwts_21.03.00.bb (renamed from meta-openembedded/meta-oe/recipes-test/fwts/fwts_20.07.00.bb)18
-rw-r--r--meta-openembedded/meta-perl/conf/layer.conf2
-rw-r--r--meta-openembedded/meta-perl/recipes-perl/libcrypt/libcrypt-openssl-guess-perl_0.12.bb (renamed from meta-openembedded/meta-perl/recipes-perl/libcrypt/libcrypt-openssl-guess-perl_0.11.bb)4
-rw-r--r--meta-openembedded/meta-perl/recipes-perl/libnet/libnet-ssleay-perl_1.85.bb1
-rw-r--r--meta-openembedded/meta-python/conf/layer.conf2
-rw-r--r--meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb13
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-absl_0.12.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-absl_0.10.0.bb)4
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-aiohttp_3.7.4.post0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-aiohttp_3.7.4.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-aiohue_2.2.0.bb12
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.5.8.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.5.5.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.5.3.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.5.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_21.3.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_21.2.2.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-backports-functools-lru-cache_1.6.4.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-backports-functools-lru-cache_1.6.1.bb)5
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_1.9.2.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_1.6.3.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.25.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.24.0.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-cerberus_1.3.3.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-cerberus_1.3.2.bb)14
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-cheetah_3.2.6.post1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-cheetah_3.2.6.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-colorlog_5.0.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-colorlog_4.7.2.bb)4
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-configargparse_1.4.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-configargparse_1.3.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_5.0.2.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_5.0.1.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-configshell-fb_1.1.29.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-configshell-fb_1.1.28.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-contextlib2_0.6.0.post1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-contextlib2_0.6.0.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_5.5.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_5.4.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-croniter_1.0.12.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-croniter_1.0.6.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_5.0.7.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_4.4.2.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-defusedxml_0.7.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-defusedxml_0.6.0.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-django_3.2.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-django_3.1.1.bb)5
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-djangorestframework_3.12.4.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-djangorestframework_3.12.2.bb)4
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-docutils_0.17.bb9
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-elementpath_2.2.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-elementpath_2.1.4.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-flask-migrate_2.7.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-flask-migrate_2.6.0.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-flask-sqlalchemy_2.5.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-flask-sqlalchemy_2.4.4.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_2.2.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_1.12.8.bb)5
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-gpsd-py3_0.3.0.bb16
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.37.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.35.0.bb)6
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/0001-absl-always-use-asm-sgidefs.h.patch33
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/boring_ssl.patch50
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/mips_bigendian.patch15
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/ppc-boringssl-support.patch2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/riscv64_support.patch2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio_1.37.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio_1.35.0.bb)8
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-gunicorn_20.1.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-gunicorn_20.0.4.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-h11_0.12.0.bb8
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-h5py/0001-setup.py-Fix-numpy-version.patch8
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-h5py/0001-setup_build.py-avoid-absolute-path.patch4
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-h5py_3.2.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-h5py_3.1.0.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-hexdump_3.3.bb4
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-httplib2_0.19.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-httplib2_0.19.0.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.3.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.3.0.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-humanize_3.4.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-humanize_3.2.0.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-ifaddr_0.1.7.bb10
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-incremental_21.3.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-incremental_17.5.0.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-ipython_7.22.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-ipython_7.20.0.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-isort_5.8.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-isort_5.7.0.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-jmespath_0.10.0.bb12
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.32.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.28.bb)9
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpointer_2.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpointer_2.0.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.6.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.5.2.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-luma-core_2.3.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-luma-core_2.2.0.bb)4
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.6.3.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.6.2.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib_3.4.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib_3.3.4.bb)5
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-mccabe_0.6.1.bb2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-monotonic_1.6.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-monotonic_1.5.bb)10
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-networkx_2.5.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-networkx_2.5.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-openpyxl_3.0.7.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-openpyxl_3.0.6.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pako_0.3.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-pako_0.3.0.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_1.2.4.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_1.2.2.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-parso_0.8.2.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-parso_0.8.1.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pastedeploy_2.1.1.bb21
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pep8_1.7.1.bb2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_8.2.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_8.1.0.bb)4
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pint_0.17.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-pint_0.16.1.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-portion_2.1.5.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-portion_2.1.4.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-prettytable_2.1.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-prettytable_2.0.0.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_3.0.18.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_3.0.16.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pulsectl_21.3.4.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-pulsectl_21.2.0.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_9.1.2.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_8.1.0.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.7.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.6.0.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pyflakes_2.3.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-pyflakes_2.2.0.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.141.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.138.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pyperf_2.2.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-pyperf_2.1.0.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.5.18.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.5.14.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pyscaffold_4.0.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-pyscaffold_3.3.1.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pysonos_0.0.42.bb15
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pystemd_0.8.0.bb1
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-helpers-namespace_2021.3.24.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-helpers-namespace_2019.1.8.bb)10
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-python-vlc_3.0.12117.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-python-vlc_3.0.11115.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-pythonping_1.0.16.bb12
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2021.4.4.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2020.11.13.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-requests/setup.py-Support-idna-version-3.1.patch40
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.25.1.bb2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3339-validator_0.1.3.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3339-validator_0.1.2.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_4.0.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_3.2.2.bb)4
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-ruamel-yaml_0.17.4.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-ruamel-yaml_0.16.12.bb)5
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.17.bb23
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.6.bb24
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_1.0.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_0.20.3.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.1.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.0.4.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-soupsieve_2.2.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-soupsieve_2.2.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-speedtest-cli_2.1.3.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-speedtest-cli_2.1.2.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-spidev_3.2.bb16
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.4.7.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.3.23.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-sympy_1.8.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-sympy_1.7.1.bb)4
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-tqdm_4.60.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-tqdm_4.58.0.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-transitions_0.8.8.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-transitions_0.8.7.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-twine_3.4.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-twine_3.3.0.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_21.2.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_20.3.0.bb)7
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-txdbus_1.1.2.bb13
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-typed-ast_1.4.3.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-typed-ast_1.4.2.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-typeguard_2.12.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-typeguard_2.11.1.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.26.4.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.26.3.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-waitress_2.0.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-waitress_1.4.4.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.58.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.57.0.bb)8
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.0.bb50
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.1.bb2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant/0001-cli-drop-the-second-argument-from-click.argument-dec.patch127
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant_0.2.bb16
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-xlsxwriter_1.3.8.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-xlsxwriter_1.3.7.bb)5
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-xmlschema_1.6.1.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-xmlschema_1.5.1.bb)2
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-yamlloader_1.0.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-yamlloader_0.5.5.bb)3
-rw-r--r--meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_5.3.0.bb (renamed from meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_5.2.0.bb)2
-rw-r--r--meta-openembedded/meta-webserver/conf/layer.conf2
-rw-r--r--meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.1.0.bb (renamed from meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.0.4.bb)6
-rw-r--r--meta-openembedded/meta-xfce/conf/layer.conf2
-rw-r--r--meta-openembedded/meta-xfce/recipes-apps/catfish/catfish_4.16.0.bb2
-rw-r--r--meta-openembedded/meta-xfce/recipes-apps/gigolo/gigolo_0.5.2.bb (renamed from meta-openembedded/meta-xfce/recipes-apps/gigolo/gigolo_0.5.1.bb)3
-rw-r--r--meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.4.bb (renamed from meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.2.bb)4
-rw-r--r--meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles/0001-Makefile.in.in-remove-bashisms.patch56
-rw-r--r--meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles_1.0.13.bb (renamed from meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles_1.0.12.bb)3
-rw-r--r--meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.4.0.bb9
-rw-r--r--meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.5.2.bb9
-rw-r--r--meta-openembedded/meta-xfce/recipes-core/images/core-image-minimal-xfce.bb2
-rw-r--r--meta-openembedded/meta-xfce/recipes-panel-plugins/battery/xfce4-battery-plugin_1.1.4.bb (renamed from meta-openembedded/meta-xfce/recipes-panel-plugins/battery/xfce4-battery-plugin_1.1.3.bb)3
-rw-r--r--meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch121
-rw-r--r--meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch41
-rw-r--r--meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.5.bb (renamed from meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.2.bb)6
-rw-r--r--meta-openembedded/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.2.3.bb (renamed from meta-openembedded/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.2.1.bb)2
-rw-r--r--meta-openembedded/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_4.1.1.bb (renamed from meta-openembedded/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_4.1.0.bb)2
-rw-r--r--meta-openembedded/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.4.0.bb (renamed from meta-openembedded/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.3.2.bb)3
-rw-r--r--meta-openembedded/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.3.0.bb (renamed from meta-openembedded/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.2.4.bb)2
-rw-r--r--meta-openembedded/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.1.2.bb (renamed from meta-openembedded/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.1.1.bb)3
-rw-r--r--meta-openembedded/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.11.0.bb (renamed from meta-openembedded/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.10.2.bb)2
-rw-r--r--meta-openembedded/meta-xfce/recipes-xfce/exo/exo_4.16.1.bb (renamed from meta-openembedded/meta-xfce/recipes-xfce/exo/exo_4.16.0.bb)2
-rw-r--r--meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_4.16.6.bb (renamed from meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_4.16.2.bb)2
-rw-r--r--meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.16.2.bb (renamed from meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.16.1.bb)2
-rw-r--r--meta-openpower/conf/layer.conf2
-rw-r--r--meta-openpower/recipes-phosphor/debug/openpower-debug-collector.inc2
-rw-r--r--meta-openpower/recipes-phosphor/flash/openpower-software-manager_git.bb2
-rw-r--r--meta-openpower/recipes-phosphor/host/op-proc-control_git.bb2
-rw-r--r--meta-openpower/recipes-phosphor/ipmi/openpower-ipmi-oem.inc2
-rw-r--r--meta-openpower/recipes-phosphor/logging/openpower-hw-diags_git.bb28
-rw-r--r--meta-openpower/recipes-phosphor/logging/openpower-libhei_git.bb2
-rw-r--r--meta-openpower/recipes-phosphor/vpd/openpower-fru-vpd.inc2
-rw-r--r--meta-phosphor/MAINTAINERS6
-rw-r--r--meta-phosphor/aspeed-layer/recipes-kernel/linux/linux-aspeed/phosphor-vlan.cfg1
-rw-r--r--meta-phosphor/aspeed-layer/recipes-kernel/linux/linux-aspeed/phosphor-vlan.scc2
-rw-r--r--meta-phosphor/aspeed-layer/recipes-kernel/linux/linux-aspeed_%.bbappend11
-rw-r--r--meta-phosphor/classes/obmc-phosphor-image.bbclass4
-rw-r--r--meta-phosphor/classes/phosphor-logging.bbclass1
-rw-r--r--meta-phosphor/classes/phosphor-networkd-rev.bbclass2
-rw-r--r--meta-phosphor/conf/bblayers.conf.sample5
-rw-r--r--meta-phosphor/conf/distro/include/phosphor-base.inc2
-rw-r--r--meta-phosphor/conf/distro/include/phosphor-defaults.inc2
-rw-r--r--meta-phosphor/conf/layer.conf2
-rw-r--r--meta-phosphor/recipes-core/base-files/base-files_%.bbappend2
-rw-r--r--meta-phosphor/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend1
-rw-r--r--meta-phosphor/recipes-core/systemd/systemd_%.bbappend1
-rw-r--r--meta-phosphor/recipes-extended/gpioplus/gpioplus_git.bb2
-rw-r--r--meta-phosphor/recipes-extended/sdbusplus/sdbusplus-rev.inc2
-rw-r--r--meta-phosphor/recipes-extended/sdeventplus/sdeventplus_git.bb2
-rw-r--r--meta-phosphor/recipes-extended/stdplus/stdplus_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/chassis/obmc-op-control-power/op-wait-power-off@.service2
-rw-r--r--meta-phosphor/recipes-phosphor/configuration/entity-manager_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/console/obmc-console_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/datetime/phosphor-time-manager_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/dbus/phosphor-dbus-interfaces_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/dbus/phosphor-mapper_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/dump/phosphor-debug-collector.inc2
-rw-r--r--meta-phosphor/recipes-phosphor/fans/phosphor-fan.inc2
-rw-r--r--meta-phosphor/recipes-phosphor/fans/phosphor-pid-control_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/flash/phosphor-software-manager.inc2
-rw-r--r--meta-phosphor/recipes-phosphor/gpio/phosphor-gpio-monitor_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/host/phosphor-host-postd_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/interfaces/bmcweb/run-ptest10
-rw-r--r--meta-phosphor/recipes-phosphor/interfaces/bmcweb_git.bb22
-rw-r--r--meta-phosphor/recipes-phosphor/inventory/phosphor-inventory-manager.inc2
-rw-r--r--meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-blobs_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-flash_git.bb4
-rw-r--r--meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-fru.inc2
-rw-r--r--meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-host.inc2
-rw-r--r--meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-kcs_git.bb4
-rw-r--r--meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-net_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/leds/phosphor-led-manager.inc2
-rw-r--r--meta-phosphor/recipes-phosphor/leds/phosphor-led-manager_git.bb34
-rw-r--r--meta-phosphor/recipes-phosphor/leds/phosphor-led-sysfs_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/logging/phosphor-hostlogger_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/logging/phosphor-logging_git.bb47
-rw-r--r--meta-phosphor/recipes-phosphor/mctp/mctp_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/pldm/pldm.inc2
-rw-r--r--meta-phosphor/recipes-phosphor/power/phosphor-power.inc2
-rw-r--r--meta-phosphor/recipes-phosphor/sel-logger/phosphor-sel-logger_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/sensors/dbus-sensors_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/sensors/phosphor-hwmon_git.bb11
-rw-r--r--meta-phosphor/recipes-phosphor/sensors/phosphor-nvme_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/sensors/phosphor-virtual-sensor_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/state/phosphor-post-code-manager_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/state/phosphor-state-manager_git.bb4
-rw-r--r--meta-phosphor/recipes-phosphor/telemetry/telemetry_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/users/phosphor-user-manager_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/watchdog/phosphor-watchdog_git.bb2
-rw-r--r--meta-phosphor/recipes-phosphor/webui/webui-vue_git.bb2
-rw-r--r--meta-phosphor/recipes-support/nss-pam-ldapd/nss-pam-ldapd_0.9.8.bb4
-rw-r--r--meta-phosphor/recipes-support/rng-tools/rng-tools_%.bbappend6
-rwxr-xr-xmeta-phosphor/recipes-x86/chassis/x86-power-control_git.bb2
-rw-r--r--meta-phosphor/recipes-x86/peci-pcie/peci-pcie_git.bb2
-rw-r--r--meta-portwell/meta-neptune/conf/bblayers.conf.sample1
-rw-r--r--meta-portwell/meta-neptune/conf/layer.conf2
-rw-r--r--meta-qualcomm/conf/layer.conf2
-rw-r--r--meta-qualcomm/meta-centriq2400-rep/conf/bblayers.conf.sample2
-rw-r--r--meta-quanta/conf/layer.conf2
-rw-r--r--meta-quanta/meta-common/recipes-quanta/fans/read-margin-temp_git.bb2
-rw-r--r--meta-quanta/meta-f0b/conf/bblayers.conf.sample4
-rw-r--r--meta-quanta/meta-f0b/conf/layer.conf2
-rw-r--r--meta-quanta/meta-f0b/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend2
-rw-r--r--meta-quanta/meta-gbs/conf/bblayers.conf.sample4
-rw-r--r--meta-quanta/meta-gbs/conf/layer.conf2
-rw-r--r--meta-quanta/meta-gbs/conf/machine/gbs.conf3
-rw-r--r--meta-quanta/meta-gbs/recipes-gbs/boot-status-led/files/boot-status-led.service2
-rw-r--r--meta-quanta/meta-gbs/recipes-gbs/gbs-detect-fan-fail/files/gbs-detect-fan-fail.service11
-rw-r--r--meta-quanta/meta-gbs/recipes-gbs/gbs-detect-fan-fail/files/gbs-detect-fan-fail.sh70
-rw-r--r--meta-quanta/meta-gbs/recipes-gbs/gbs-detect-fan-fail/gbs-detect-fan-fail.bb25
-rw-r--r--meta-quanta/meta-gbs/recipes-gbs/gbs-detect-gpio-present/files/detect-gpio-present.sh11
-rw-r--r--meta-quanta/meta-gbs/recipes-gbs/gbs-ipmi-entity-association-map/files/entity_association_map.json3
-rw-r--r--meta-quanta/meta-gbs/recipes-gbs/gbs-sysinit/files/gbs-sysinit.service2
-rw-r--r--meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-check-host-state.service10
-rw-r--r--meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-check-host-state.sh13
-rw-r--r--meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-ready.target8
-rw-r--r--meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-s0-set-failsafe.service15
-rw-r--r--meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-s5-set-failsafe.service15
-rw-r--r--meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-set-boot-failsafe@.service14
-rw-r--r--meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-set-boot-failsafe.sh35
-rw-r--r--meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-set-failsafe.sh53
-rw-r--r--meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon_%.bbappend43
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/configuration/gbs-yaml-config/gbs-ipmi-sensors.yaml21
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/0001-Advertise-failSafePercent-on-dbus.patch117
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/config.json.in (renamed from meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/config-sku.json)12
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-default-speed.sh6
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-reboot-control.service12
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-table-init.sh17
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service2
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control_%.bbappend21
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/gpio/phosphor-gpio-monitor/obmc/gpio/gpios-10.conf6
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend3
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/images/obmc-phosphor-image.bbappend2
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/inventory/gbs-inventory-cleanup.bb (renamed from meta-quanta/meta-gbs/recipes-phosphor/inventory/inventory-cleanup.bb)0
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/inventory/gbs-inventory-cleanup/inventory-cleanup.yaml (renamed from meta-quanta/meta-gbs/recipes-phosphor/inventory/inventory-cleanup/inventory-cleanup.yaml)0
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/inventory/phosphor-inventory-manager_%.bbappend2
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/ipmi/phosphor-ipmi-kcs/99-ipmi-kcs.rules1
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/ipmi/phosphor-ipmi-kcs_%.bbappend9
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/leds/phosphor-led-manager/service-override.conf2
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/leds/phosphor-led-manager_%.bbappend5
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-hwmon/obmc/hwmon/ahb/apb/pwm-fan-controller@103000.conf4
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend2
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor/phosphor-virtual-sensor.service.replace1
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor/setMaxMinValue.sh15
-rw-r--r--meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend6
-rw-r--r--meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp/config-margin.json.in (renamed from meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp/config-margin.json)97
-rw-r--r--meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp/read-margin-temp-wait.sh71
-rw-r--r--meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp_%.bbappend9
-rw-r--r--meta-quanta/meta-gbs/recipes-x86/chassis/x86-power-control/chassis-system-reset.service10
-rw-r--r--meta-quanta/meta-gbs/recipes-x86/chassis/x86-power-control/power-config-host0.json8
-rw-r--r--meta-quanta/meta-gbs/recipes-x86/chassis/x86-power-control_%.bbappend16
-rw-r--r--meta-quanta/meta-gsj/conf/bblayers.conf.sample4
-rw-r--r--meta-quanta/meta-gsj/conf/layer.conf2
-rw-r--r--meta-quanta/meta-gsj/conf/machine/gsj.conf1
-rw-r--r--meta-quanta/meta-gsj/recipes-kernel/linux/linux-nuvoton/gsj.cfg2
-rw-r--r--meta-quanta/meta-gsj/recipes-phosphor/ipmi/gsj-ipmi-fru-properties-native.bb19
-rw-r--r--meta-quanta/meta-gsj/recipes-phosphor/ipmi/gsj-ipmi-fru-properties/extra-properties.yaml7
-rw-r--r--meta-quanta/meta-olympus-nuvoton/conf/bblayers.conf.sample4
-rw-r--r--meta-quanta/meta-olympus-nuvoton/conf/layer.conf2
-rw-r--r--meta-quanta/meta-olympus-nuvoton/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend2
-rw-r--r--meta-quanta/meta-q71l/conf/bblayers.conf.sample2
-rw-r--r--meta-quanta/meta-q71l/conf/layer.conf1
-rw-r--r--meta-quanta/meta-q71l/conf/machine/quanta-q71l.conf2
-rw-r--r--meta-quanta/meta-q71l/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend2
-rw-r--r--meta-raspberrypi/.gitignore1
-rw-r--r--meta-raspberrypi/conf/layer.conf2
-rw-r--r--meta-raspberrypi/conf/machine/include/rpi-base.inc14
-rw-r--r--meta-raspberrypi/conf/machine/include/tune-arm1176jzf-s.inc18
-rw-r--r--meta-raspberrypi/recipes-bsp/common/raspberrypi-firmware.inc6
-rw-r--r--meta-raspberrypi/recipes-graphics/mesa/mesa-gl_%.bbappend2
-rw-r--r--meta-raspberrypi/recipes-graphics/userland/userland_git.bb4
-rw-r--r--meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.10.bb4
-rw-r--r--meta-security/.gitlab-ci.yml88
-rw-r--r--meta-security/README27
-rw-r--r--meta-security/conf/layer.conf6
-rw-r--r--meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/fixup.patch32
-rw-r--r--meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/run-ptest3
-rw-r--r--meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/suricata.service20
-rw-r--r--meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/suricata.yaml1326
-rw-r--r--meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/tmpfiles.suricata2
-rw-r--r--meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/volatiles.03_suricata2
-rw-r--r--meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/libhtp_0.5.37.bb27
-rw-r--r--meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/suricata.inc8
-rw-r--r--meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/suricata_6.0.2.bb193
-rw-r--r--meta-security/kas/kas-security-base.yml2
-rw-r--r--meta-security/kas/kas-security-parsec.yml21
-rw-r--r--meta-security/kas/qemuarm-parsec.yml6
-rw-r--r--meta-security/kas/qemuarm64-parsec.yml6
-rw-r--r--meta-security/kas/qemuppc-parsec.yml6
-rw-r--r--meta-security/kas/qemux86-64-parsec.yml6
-rw-r--r--meta-security/kas/qemux86-parsec.yml6
-rw-r--r--meta-security/meta-hardening/conf/layer.conf2
-rw-r--r--meta-security/meta-integrity/conf/layer.conf2
-rw-r--r--meta-security/meta-integrity/recipes-core/initrdscripts/initramfs-framework-ima.bb5
-rw-r--r--meta-security/meta-integrity/recipes-core/initrdscripts/initramfs-framework-ima/ima9
-rw-r--r--meta-security/meta-integrity/recipes-security/ima-evm-keys/ima-evm-keys_1.0.bb1
-rw-r--r--meta-security/meta-integrity/recipes-security/ima_policy_appraise_all/ima-policy-appraise-all_1.0.bb9
-rw-r--r--meta-security/meta-integrity/recipes-security/ima_policy_hashed/ima-policy-hashed_1.0.bb9
-rw-r--r--meta-security/meta-integrity/recipes-security/ima_policy_simple/ima-policy-simple_1.0.bb9
-rw-r--r--meta-security/meta-parsec/README.md186
-rw-r--r--meta-security/meta-parsec/conf/layer.conf14
-rw-r--r--meta-security/meta-parsec/recipes-parsec/parsec-service/files/cryptoki.patch18
-rw-r--r--meta-security/meta-parsec/recipes-parsec/parsec-service/files/parsec-tmpfiles.conf2
-rwxr-xr-xmeta-security/meta-parsec/recipes-parsec/parsec-service/files/parsec_init63
-rw-r--r--meta-security/meta-parsec/recipes-parsec/parsec-service/files/systemd.patch19
-rw-r--r--meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.7.0.bb67
-rw-r--r--meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.7.0.inc147
-rw-r--r--meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.3.0.bb17
-rw-r--r--meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.3.0.inc127
-rw-r--r--meta-security/meta-security-compliance/conf/layer.conf2
-rw-r--r--meta-security/meta-security-isafw/conf/layer.conf2
-rw-r--r--meta-security/meta-tpm/conf/layer.conf3
-rw-r--r--meta-security/meta-tpm/recipes-tpm/libtpm/libtpm_0.8.2.bb (renamed from meta-security/meta-tpm/recipes-tpm/libtpm/libtpm_0.7.2.bb)4
-rw-r--r--meta-security/meta-tpm/recipes-tpm/swtpm/files/oe_configure.patch65
-rw-r--r--meta-security/meta-tpm/recipes-tpm/swtpm/swtpm_0.5.2.bb (renamed from meta-security/meta-tpm/recipes-tpm/swtpm/swtpm_0.2.0.bb)20
-rw-r--r--meta-security/meta-tpm/recipes-tpm/tpm-tools/files/05-openssl1.1_fix_data_mgmt.patch110
-rw-r--r--meta-security/meta-tpm/recipes-tpm/tpm-tools/tpm-tools_1.3.9.2.bb (renamed from meta-security/meta-tpm/recipes-tpm/tpm-tools/tpm-tools_1.3.9.1.bb)3
-rw-r--r--meta-security/meta-tpm/recipes-tpm/trousers/trousers_git.bb4
-rw-r--r--meta-security/meta-tpm/recipes-tpm2/ibmtpm2tss/ibmtpm2tss/0001-utils-12-Makefile.am-expand-wildcards-in-prereqs.patch30
-rw-r--r--meta-security/meta-tpm/recipes-tpm2/ibmtpm2tss/ibmtpm2tss_1.6.0.bb (renamed from meta-security/meta-tpm/recipes-tpm2/ibmtpm2tss/ibmtpm2tss_1.5.0.bb)2
-rw-r--r--meta-security/meta-tpm/recipes-tpm2/tpm2-abrmd/tpm2-abrmd_2.4.0.bb (renamed from meta-security/meta-tpm/recipes-tpm2/tpm2-abrmd/tpm2-abrmd_2.3.3.bb)2
-rw-r--r--meta-security/meta-tpm/recipes-tpm2/tpm2-pkcs11/tpm2-pkcs11_1.5.0.bb (renamed from meta-security/meta-tpm/recipes-tpm2/tpm2-pkcs11/tpm2-pkcs11_1.4.0.bb)2
-rw-r--r--meta-security/meta-tpm/recipes-tpm2/tpm2-tools/tpm2-tools_5.0.bb (renamed from meta-security/meta-tpm/recipes-tpm2/tpm2-tools/tpm2-tools_4.3.0.bb)2
-rw-r--r--meta-security/meta-tpm/recipes-tpm2/tpm2-totp/tpm2-totp_0.3.0.bb (renamed from meta-security/meta-tpm/recipes-tpm2/tpm2-totp/tpm2-totp_0.2.1.bb)4
-rw-r--r--meta-security/meta-tpm/recipes-tpm2/tpm2-tss-engine/tpm2-tss-engine_1.1.0.bb (renamed from meta-security/meta-tpm/recipes-tpm2/tpm2-tss-engine/tpm2-tss-engine_1.0.1.bb)6
-rw-r--r--meta-security/meta-tpm/recipes-tpm2/tpm2-tss/tpm2-tss/0001-configure.ac-fix-compatibility-with-autoconf-2.70.patch48
-rw-r--r--meta-security/meta-tpm/recipes-tpm2/tpm2-tss/tpm2-tss_3.0.3.bb (renamed from meta-security/meta-tpm/recipes-tpm2/tpm2-tss/tpm2-tss_2.4.3.bb)6
-rw-r--r--meta-security/recipes-core/packagegroup/packagegroup-core-security.bb4
-rw-r--r--meta-security/recipes-ids/samhain/files/samhain-fix-initializer-element-is-not-constant.patch28
-rw-r--r--meta-security/recipes-ids/samhain/samhain.inc1
-rw-r--r--meta-security/recipes-ids/suricata/python3-suricata-update_1.2.1.bb (renamed from meta-security/recipes-ids/suricata/python3-suricata-update_1.1.1.bb)8
-rw-r--r--meta-security/recipes-kernel/lkrg/files/makefile_cleanup.patch73
-rw-r--r--meta-security/recipes-kernel/lkrg/lkrg-module_0.9.0.bb33
-rw-r--r--meta-security/recipes-scanners/clamav/clamav_0.104.0.bb (renamed from meta-security/recipes-scanners/clamav/clamav_0.101.5.bb)116
-rw-r--r--meta-security/recipes-scanners/clamav/files/headers_fixup.patch58
-rw-r--r--meta-security/recipes-scanners/clamav/files/oe_cmake_fixup.patch39
-rw-r--r--meta-security/recipes-security/fail2ban/files/run-ptest2
-rw-r--r--meta-security/recipes-security/fail2ban/python3-fail2ban_0.11.2.bb3
-rw-r--r--meta-security/recipes-security/fscryptctl/fscryptctl_1.0.0.bb2
-rw-r--r--meta-security/recipes-security/libest/libest_3.2.0.bb2
-rw-r--r--meta-security/recipes-security/mfa/python3-privacyidea_3.5.2.bb (renamed from meta-security/recipes-security/mfa/python3-privacyidea_3.5.1.bb)2
-rw-r--r--meta-supermicro/OWNERS2
-rw-r--r--meta-supermicro/conf/layer.conf2
-rw-r--r--meta-supermicro/meta-x11spi/conf/bblayers.conf.sample1
-rw-r--r--meta-supermicro/meta-x11spi/conf/layer.conf2
-rw-r--r--meta-x86/conf/layer.conf2
-rw-r--r--meta-yadro/conf/layer.conf2
-rw-r--r--meta-yadro/meta-nicole/conf/bblayers.conf.sample2
-rw-r--r--meta-yadro/meta-nicole/conf/layer.conf2
-rw-r--r--meta-yadro/meta-nicole/recipes-phosphor/cli/obmc-yadro-cli_%.bbappend2
-rw-r--r--meta-yadro/meta-nicole/recipes-phosphor/configuration/nicole-yaml-config/nicole-ipmi-sensors.yaml21
-rw-r--r--meta-yadro/meta-nicole/recipes-phosphor/sensors/phosphor-hwmon/obmc/hwmon/iio-hwmon-battery.conf6
-rw-r--r--meta-yadro/meta-nicole/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend2
-rw-r--r--meta-yadro/meta-vesnin/conf/bblayers.conf.sample2
-rw-r--r--meta-yadro/meta-vesnin/conf/layer.conf2
-rw-r--r--poky/.gitignore3
-rw-r--r--poky/bitbake/README2
-rwxr-xr-xpoky/bitbake/bin/bitbake2
-rw-r--r--poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.rst3
-rw-r--r--poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst37
-rw-r--r--poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst13
-rw-r--r--poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst111
-rw-r--r--poky/bitbake/lib/bb/__init__.py4
-rw-r--r--poky/bitbake/lib/bb/build.py17
-rw-r--r--poky/bitbake/lib/bb/cache.py3
-rw-r--r--poky/bitbake/lib/bb/codeparser.py6
-rw-r--r--poky/bitbake/lib/bb/cooker.py34
-rw-r--r--poky/bitbake/lib/bb/event.py31
-rw-r--r--poky/bitbake/lib/bb/fetch2/__init__.py4
-rw-r--r--poky/bitbake/lib/bb/fetch2/az.py93
-rw-r--r--poky/bitbake/lib/bb/providers.py84
-rw-r--r--poky/bitbake/lib/bb/runqueue.py106
-rw-r--r--poky/bitbake/lib/bb/tests/color.py2
-rw-r--r--poky/bitbake/lib/bb/tests/fetch.py2
-rw-r--r--poky/bitbake/lib/bb/tinfoil.py2
-rw-r--r--poky/bitbake/lib/bblayers/query.py2
-rw-r--r--poky/documentation/README32
-rw-r--r--poky/documentation/bitbake.rst19
-rw-r--r--poky/documentation/boilerplate.rst2
-rw-r--r--poky/documentation/brief-yoctoprojectqs/index.rst83
-rw-r--r--poky/documentation/bsp-guide/bsp.rst6
-rw-r--r--poky/documentation/dev-manual/common-tasks.rst343
-rw-r--r--poky/documentation/dev-manual/qemu.rst10
-rw-r--r--poky/documentation/dev-manual/start.rst23
-rw-r--r--poky/documentation/index.rst2
-rw-r--r--poky/documentation/kernel-dev/advanced.rst42
-rw-r--r--poky/documentation/kernel-dev/common.rst93
-rw-r--r--poky/documentation/kernel-dev/intro.rst3
-rw-r--r--poky/documentation/kernel-dev/maint-appx.rst2
-rw-r--r--poky/documentation/overview-manual/concepts.rst96
-rw-r--r--poky/documentation/overview-manual/development-environment.rst17
-rw-r--r--poky/documentation/overview-manual/intro.rst13
-rw-r--r--poky/documentation/overview-manual/yp-intro.rst133
-rw-r--r--poky/documentation/poky.yaml14
-rw-r--r--poky/documentation/profile-manual/usage.rst30
-rw-r--r--poky/documentation/ref-manual/TODO6
-rw-r--r--poky/documentation/ref-manual/classes.rst69
-rw-r--r--poky/documentation/ref-manual/devtool-reference.rst4
-rw-r--r--poky/documentation/ref-manual/faq.rst4
-rw-r--r--poky/documentation/ref-manual/kickstart.rst4
-rw-r--r--poky/documentation/ref-manual/migration-1.3.rst6
-rw-r--r--poky/documentation/ref-manual/migration-1.4.rst6
-rw-r--r--poky/documentation/ref-manual/migration-1.5.rst8
-rw-r--r--poky/documentation/ref-manual/migration-1.6.rst6
-rw-r--r--poky/documentation/ref-manual/migration-1.7.rst8
-rw-r--r--poky/documentation/ref-manual/migration-1.8.rst6
-rw-r--r--poky/documentation/ref-manual/migration-2.0.rst6
-rw-r--r--poky/documentation/ref-manual/migration-2.1.rst13
-rw-r--r--poky/documentation/ref-manual/migration-2.2.rst14
-rw-r--r--poky/documentation/ref-manual/migration-2.3.rst6
-rw-r--r--poky/documentation/ref-manual/migration-2.4.rst6
-rw-r--r--poky/documentation/ref-manual/migration-2.5.rst6
-rw-r--r--poky/documentation/ref-manual/migration-2.6.rst10
-rw-r--r--poky/documentation/ref-manual/migration-2.7.rst6
-rw-r--r--poky/documentation/ref-manual/migration-3.0.rst6
-rw-r--r--poky/documentation/ref-manual/migration-3.1.rst6
-rw-r--r--poky/documentation/ref-manual/migration-3.2.rst8
-rw-r--r--poky/documentation/ref-manual/migration-3.3.rst168
-rw-r--r--poky/documentation/ref-manual/migration.rst1
-rw-r--r--poky/documentation/ref-manual/release-process.rst7
-rw-r--r--poky/documentation/ref-manual/resources.rst4
-rw-r--r--poky/documentation/ref-manual/structure.rst2
-rw-r--r--poky/documentation/ref-manual/system-requirements.rst23
-rw-r--r--poky/documentation/ref-manual/terms.rst11
-rw-r--r--poky/documentation/ref-manual/variables.rst131
-rw-r--r--poky/documentation/releases.rst2
-rw-r--r--poky/documentation/sdk-manual/appendix-customizing.rst27
-rw-r--r--poky/documentation/sdk-manual/appendix-obtain.rst22
-rw-r--r--poky/documentation/sdk-manual/extensible.rst21
-rw-r--r--poky/documentation/sdk-manual/intro.rst4
-rw-r--r--poky/documentation/sdk-manual/using.rst22
-rw-r--r--poky/documentation/sdk-manual/working-projects.rst9
-rw-r--r--poky/documentation/sphinx-static/switchers.js2
-rw-r--r--poky/documentation/test-manual/intro.rst10
-rw-r--r--poky/documentation/test-manual/test-process.rst6
-rw-r--r--poky/documentation/test-manual/understand-autobuilder.rst16
-rw-r--r--poky/documentation/toaster-manual/reference.rst4
-rw-r--r--poky/documentation/toaster-manual/setup-and-use.rst18
-rw-r--r--poky/meta-poky/conf/distro/include/poky-world-exclude.inc2
-rw-r--r--poky/meta-poky/conf/distro/poky-tiny.conf2
-rw-r--r--poky/meta-poky/conf/distro/poky.conf11
-rw-r--r--poky/meta-poky/conf/layer.conf2
-rw-r--r--poky/meta-poky/conf/local.conf.sample2
-rw-r--r--poky/meta-poky/conf/local.conf.sample.extended5
-rw-r--r--poky/meta-selftest/conf/layer.conf2
-rw-r--r--poky/meta-selftest/recipes-test/aspell/aspell_0.0.0.1.bb1
-rw-r--r--poky/meta-selftest/recipes-test/git-submodule-test/git-submodule-test.bb1
-rw-r--r--poky/meta-selftest/recipes-test/poison/poison.bb16
-rw-r--r--poky/meta-skeleton/conf/layer.conf2
-rw-r--r--poky/meta-skeleton/recipes-baremetal/baremetal-examples/baremetal-helloworld_git.bb1
-rw-r--r--poky/meta-skeleton/recipes-kernel/hello-mod/hello-mod_0.1.bb1
-rw-r--r--poky/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb2
-rw-r--r--poky/meta-skeleton/recipes-multilib/images/core-image-multilib-example.bb3
-rw-r--r--poky/meta-skeleton/recipes-skeleton/service/service_0.1.bb1
-rw-r--r--poky/meta-yocto-bsp/conf/layer.conf2
-rw-r--r--poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf4
-rw-r--r--poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend16
-rw-r--r--poky/meta-yocto-bsp/wic/beaglebone-yocto.wks2
-rw-r--r--poky/meta/classes/base.bbclass14
-rw-r--r--poky/meta/classes/buildhistory.bbclass3
-rw-r--r--poky/meta/classes/buildstats.bbclass42
-rw-r--r--poky/meta/classes/cmake.bbclass5
-rw-r--r--poky/meta/classes/core-image.bbclass2
-rw-r--r--poky/meta/classes/devshell.bbclass1
-rw-r--r--poky/meta/classes/externalsrc.bbclass16
-rw-r--r--poky/meta/classes/godep.bbclass8
-rw-r--r--poky/meta/classes/image-live.bbclass2
-rw-r--r--poky/meta/classes/image.bbclass10
-rw-r--r--poky/meta/classes/insane.bbclass22
-rw-r--r--poky/meta/classes/kernel-fitimage.bbclass92
-rw-r--r--poky/meta/classes/kernel-yocto.bbclass10
-rw-r--r--poky/meta/classes/license.bbclass9
-rw-r--r--poky/meta/classes/linux-dummy.bbclass26
-rw-r--r--poky/meta/classes/meson.bbclass54
-rw-r--r--poky/meta/classes/metadata_scm.bbclass10
-rw-r--r--poky/meta/classes/multilib_global.bbclass67
-rw-r--r--poky/meta/classes/populate_sdk_base.bbclass7
-rw-r--r--poky/meta/classes/populate_sdk_ext.bbclass32
-rw-r--r--poky/meta/classes/qemuboot.bbclass6
-rw-r--r--poky/meta/classes/rootfs-postcommands.bbclass2
-rw-r--r--poky/meta/classes/sanity.bbclass2
-rw-r--r--poky/meta/classes/sstate.bbclass72
-rw-r--r--poky/meta/classes/testimage.bbclass1
-rw-r--r--poky/meta/classes/toolchain-scripts.bbclass3
-rw-r--r--poky/meta/classes/uboot-config.bbclass58
-rw-r--r--poky/meta/classes/uboot-sign.bbclass419
-rw-r--r--poky/meta/conf/bitbake.conf12
-rw-r--r--poky/meta/conf/distro/include/maintainers.inc3
-rw-r--r--poky/meta/conf/distro/include/ptest-packagelists.inc2
-rw-r--r--poky/meta/conf/image-uefi.conf2
-rw-r--r--poky/meta/conf/layer.conf4
-rw-r--r--poky/meta/conf/machine/include/powerpc/arch-powerpc64.inc3
-rw-r--r--poky/meta/conf/machine/include/qemuboot-mips.inc2
-rw-r--r--poky/meta/conf/machine/include/riscv/qemuriscv.inc2
-rw-r--r--poky/meta/conf/machine/include/tune-cortexa32.inc6
-rw-r--r--poky/meta/conf/machine/qemuarm.conf6
-rw-r--r--poky/meta/conf/machine/qemuarm64.conf6
-rw-r--r--poky/meta/conf/machine/qemuarmv5.conf2
-rw-r--r--poky/meta/conf/machine/qemuppc64.conf24
-rw-r--r--poky/meta/conf/machine/qemuriscv32.conf16
-rw-r--r--poky/meta/files/ext-sdk-prepare.py17
-rw-r--r--poky/meta/lib/bblayers/create.py6
-rw-r--r--poky/meta/lib/bblayers/templates/layer.conf10
-rw-r--r--poky/meta/lib/oe/copy_buildsystem.py6
-rw-r--r--poky/meta/lib/oe/cve_check.py7
-rw-r--r--poky/meta/lib/oe/rootfs.py8
-rw-r--r--poky/meta/lib/oe/utils.py31
-rw-r--r--poky/meta/lib/oeqa/core/target/qemu.py4
-rw-r--r--poky/meta/lib/oeqa/core/utils/concurrencytest.py53
-rw-r--r--poky/meta/lib/oeqa/runtime/cases/parselogs.py5
-rw-r--r--poky/meta/lib/oeqa/runtime/cases/weston.py6
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/buildoptions.py6
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/cve_check.py8
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/distrodata.py36
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/fetch.py54
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/fitimage.py468
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/reproducible.py4
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/wic.py18
-rw-r--r--poky/meta/lib/oeqa/targetcontrol.py2
-rw-r--r--poky/meta/lib/oeqa/utils/qemurunner.py8
-rw-r--r--poky/meta/lib/oeqa/utils/qemutinyrunner.py6
-rwxr-xr-xpoky/meta/recipes-bsp/formfactor/files/qemuppc64/machconfig10
-rw-r--r--poky/meta/recipes-bsp/grub/files/0001-RISC-V-Restore-the-typcast-to-long.patch39
-rw-r--r--poky/meta/recipes-bsp/grub/files/6643507ce30f775008e093580f0c9499dfb2c485.patch47
-rw-r--r--poky/meta/recipes-bsp/grub/files/CVE-2020-10713.patch73
-rw-r--r--poky/meta/recipes-bsp/grub/files/CVE-2020-14308-calloc-Use-calloc-at-most-places.patch1863
-rw-r--r--poky/meta/recipes-bsp/grub/files/CVE-2020-14309-CVE-2020-14310-CVE-2020-14311-malloc-Use-overflow-checking-primitives-where-we-do-.patch1330
-rw-r--r--poky/meta/recipes-bsp/grub/files/CVE-2020-15706-script-Avoid-a-use-after-free-when-redefining-a-func.patch117
-rw-r--r--poky/meta/recipes-bsp/grub/files/CVE-2020-15707-linux-Fix-integer-overflows-in-initrd-size-handling.patch177
-rw-r--r--poky/meta/recipes-bsp/grub/files/autogen.sh-exclude-pc.patch15
-rw-r--r--poky/meta/recipes-bsp/grub/files/calloc-Make-sure-we-always-have-an-overflow-checking.patch246
-rw-r--r--poky/meta/recipes-bsp/grub/files/determinism.patch58
-rw-r--r--poky/meta/recipes-bsp/grub/files/lvm-Add-LVM-cache-logical-volume-handling.patch287
-rw-r--r--poky/meta/recipes-bsp/grub/files/safemath-Add-some-arithmetic-primitives-that-check-f.patch94
-rw-r--r--poky/meta/recipes-bsp/grub/files/script-Remove-unused-fields-from-grub_script_functio.patch37
-rw-r--r--poky/meta/recipes-bsp/grub/grub-efi_git.bb (renamed from poky/meta/recipes-bsp/grub/grub-efi_2.04.bb)2
-rw-r--r--poky/meta/recipes-bsp/grub/grub2.inc25
-rw-r--r--poky/meta/recipes-bsp/grub/grub_git.bb (renamed from poky/meta/recipes-bsp/grub/grub_2.04.bb)0
-rw-r--r--poky/meta/recipes-bsp/u-boot/files/0001-add-valid-fdt-check.patch36
-rw-r--r--poky/meta/recipes-bsp/u-boot/files/0001-riscv32-Use-double-float-ABI-for-rv32.patch42
-rw-r--r--poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-1.patch71
-rw-r--r--poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-2.patch419
-rw-r--r--poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-3.patch105
-rw-r--r--poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-4.patch73
-rw-r--r--poky/meta/recipes-bsp/u-boot/files/CVE-2021-27138-1.patch245
-rw-r--r--poky/meta/recipes-bsp/u-boot/files/CVE-2021-27138-2.patch109
-rw-r--r--poky/meta/recipes-bsp/u-boot/u-boot-common.inc7
-rw-r--r--poky/meta/recipes-bsp/u-boot/u-boot.inc46
-rw-r--r--poky/meta/recipes-bsp/u-boot/u-boot_2021.01.bb2
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.16.12/0001-avoid-start-failure-with-bind-user.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.16.11/0001-avoid-start-failure-with-bind-user.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.16.12/0001-named-lwresd-V-and-start-log-hide-build-options.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.16.11/0001-named-lwresd-V-and-start-log-hide-build-options.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.16.12/bind-ensure-searching-for-json-headers-searches-sysr.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.16.11/bind-ensure-searching-for-json-headers-searches-sysr.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.16.12/bind9 (renamed from poky/meta/recipes-connectivity/bind/bind-9.16.11/bind9)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.16.12/conf.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.16.11/conf.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.16.12/generate-rndc-key.sh (renamed from poky/meta/recipes-connectivity/bind/bind-9.16.11/generate-rndc-key.sh)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.16.12/init.d-add-support-for-read-only-rootfs.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.16.11/init.d-add-support-for-read-only-rootfs.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.16.12/make-etc-initd-bind-stop-work.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.16.11/make-etc-initd-bind-stop-work.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.16.12/named.service (renamed from poky/meta/recipes-connectivity/bind/bind-9.16.11/named.service)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind_9.16.12.bb (renamed from poky/meta/recipes-connectivity/bind/bind_9.16.11.bb)7
-rw-r--r--poky/meta/recipes-connectivity/openssh/openssh/0f90440ca70abab947acbd77795e9f130967956c.patch28
-rw-r--r--poky/meta/recipes-connectivity/openssh/openssh_8.5p1.bb (renamed from poky/meta/recipes-connectivity/openssh/openssh_8.4p1.bb)7
-rw-r--r--poky/meta/recipes-connectivity/openssl/openssl/0003-Add-support-for-io_pgetevents_time64-syscall.patch62
-rw-r--r--poky/meta/recipes-connectivity/openssl/openssl/0004-Fixup-support-for-io_pgetevents_time64-syscall.patch99
-rw-r--r--poky/meta/recipes-connectivity/openssl/openssl_1.1.1k.bb (renamed from poky/meta/recipes-connectivity/openssl/openssl_1.1.1j.bb)7
-rw-r--r--poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/CVE-2021-27803.patch58
-rw-r--r--poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.9.bb1
-rw-r--r--poky/meta/recipes-core/busybox/busybox-inittab_1.33.0.bb (renamed from poky/meta/recipes-core/busybox/busybox-inittab_1.32.0.bb)3
-rw-r--r--poky/meta/recipes-core/busybox/busybox/defconfig133
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0001-gobject-Drop-use-of-volatile-from-get_type-macros.patch403
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0002-tests-Fix-non-atomic-access-to-a-shared-variable.patch44
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0003-tests-Fix-non-atomic-access-to-a-shared-variable.patch90
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0004-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch93
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0005-tests-Fix-non-atomic-access-to-some-shared-variables.patch702
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0006-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch35
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0007-gdbusconnection-Drop-unnecessary-volatile-qualifiers.patch111
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0008-gdbuserror-Drop-unnecessary-volatile-qualifiers-from.patch95
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0009-gio-Drop-unnecessary-volatile-qualifiers-from-intern.patch207
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0010-kqueue-Fix-unlocked-access-to-shared-variable.patch51
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0011-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch126
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0012-tests-Fix-non-atomic-access-to-some-shared-variables.patch103
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0013-gatomic-Drop-unnecessary-volatile-qualifiers-from-in.patch180
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0014-gatomic-Drop-unnecessary-volatile-qualifiers-from-ma.patch56
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0015-glib-Drop-unnecessary-volatile-qualifiers-from-inter.patch169
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0016-gobject-Drop-unnecessary-volatile-qualifiers-from-in.patch126
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0017-gmessages-Drop-unnecessary-volatile-qualifiers-from-.patch44
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0018-gtypes-Drop-volatile-qualifier-from-gatomicrefcount.patch35
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0019-gatomicarray-Drop-volatile-qualifier-from-GAtomicArr.patch44
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0020-gobject-Drop-volatile-qualifier-from-GObject.ref_cou.patch33
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0021-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch51
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0022-build-Drop-unnecessary-volatile-qualifiers-from-conf.patch38
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0023-gdbusprivate-Avoid-a-warning-about-a-statement-with-.patch33
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0024-tests-Add-comment-to-volatile-atomic-tests.patch49
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0025-gthread-Use-g_atomic-primitives-correctly-in-destruc.patch77
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0026-gtype-Fix-some-typos-in-comments.patch47
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0027-gtype-Add-some-missing-atomic-accesses-to-init_state.patch76
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0028-gresource-Fix-a-pointer-mismatch-with-an-atomic-load.patch29
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0/0029-docs-Document-not-to-use-volatile-qualifiers.patch258
-rw-r--r--poky/meta/recipes-core/glib-2.0/glib-2.0_2.66.7.bb37
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0001-nptl-Remove-private-futex-optimization-BZ-27304.patch49
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0033-x86-Handle-_SC_LEVEL1_ICACHE_LINESIZE-BZ-27444.patch185
-rw-r--r--poky/meta/recipes-core/glibc/glibc/CVE-2021-27645.patch51
-rw-r--r--poky/meta/recipes-core/glibc/glibc_2.33.bb3
-rw-r--r--poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb10
-rw-r--r--poky/meta/recipes-core/initrdscripts/initramfs-framework/rootfs17
-rw-r--r--poky/meta/recipes-core/libxcrypt/files/0001-configure.ac-do-not-use-compute-symver-floor.patch32
-rw-r--r--poky/meta/recipes-core/libxcrypt/libxcrypt.inc4
-rw-r--r--poky/meta/recipes-core/meta/cve-update-db-native.bb12
-rw-r--r--poky/meta/recipes-core/meta/uninative-tarball.bb1
-rw-r--r--poky/meta/recipes-core/musl/libucontext_git.bb2
-rw-r--r--poky/meta/recipes-core/ovmf/ovmf/0003-ovmf-enable-long-path-file.patch28
-rw-r--r--poky/meta/recipes-core/ovmf/ovmf/zero.patch84
-rw-r--r--poky/meta/recipes-core/ovmf/ovmf_git.bb6
-rw-r--r--poky/meta/recipes-core/packagegroups/packagegroup-base.bb1
-rw-r--r--poky/meta/recipes-core/packagegroups/packagegroup-core-nfs.bb1
-rw-r--r--poky/meta/recipes-core/systemd/systemd-boot_247.4.bb (renamed from poky/meta/recipes-core/systemd/systemd-boot_247.3.bb)0
-rw-r--r--poky/meta/recipes-core/systemd/systemd-conf/wired.network1
-rw-r--r--poky/meta/recipes-core/systemd/systemd-conf_247.3.bb3
-rw-r--r--poky/meta/recipes-core/systemd/systemd.inc2
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0001-systemd.pc.in-use-ROOTPREFIX-without-suffixed-slash.patch9
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch28
-rw-r--r--poky/meta/recipes-core/systemd/systemd_247.4.bb (renamed from poky/meta/recipes-core/systemd/systemd_247.3.bb)9
-rw-r--r--poky/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb4
-rw-r--r--poky/meta/recipes-core/util-linux/util-linux-libuuid_2.36.2.bb16
-rw-r--r--poky/meta/recipes-core/util-linux/util-linux.inc41
-rw-r--r--poky/meta/recipes-core/util-linux/util-linux/Automake-use-EXTRA_LTLIBRARIES-instead-of-noinst_LTL.patch49
-rw-r--r--poky/meta/recipes-core/util-linux/util-linux_2.36.2.bb57
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch8
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-Do-not-configure-packages-on-installation.patch48
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch4
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch10
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-cmake-Do-not-build-po-files.patch37
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-srvrec-Keep-support-for-older-resolver.patch44
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-test-libapt-do-not-use-gtest-from-the-host.patch40
-rw-r--r--poky/meta/recipes-devtools/apt/apt_2.2.2.bb (renamed from poky/meta/recipes-devtools/apt/apt_1.8.2.2.bb)16
-rw-r--r--poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch60
-rw-r--r--poky/meta/recipes-devtools/automake/automake/python-libdir.patch16
-rw-r--r--poky/meta/recipes-devtools/automake/automake_1.16.3.bb (renamed from poky/meta/recipes-devtools/automake/automake_1.16.2.bb)18
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0008-warn-for-uses-of-system-directories-when-cross-linki.patch23
-rw-r--r--poky/meta/recipes-devtools/dnf/dnf_4.6.0.bb (renamed from poky/meta/recipes-devtools/dnf/dnf_4.5.2.bb)2
-rw-r--r--poky/meta/recipes-devtools/elfutils/elfutils_0.183.bb1
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0004-Disable-the-test-to-convert-euc-jp.patch42
-rw-r--r--poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.7.bb (renamed from poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.6.bb)2
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross.inc2
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc3
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-target.inc1
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch73
-rw-r--r--poky/meta/recipes-devtools/git/git.inc3
-rw-r--r--poky/meta/recipes-devtools/git/git_2.31.1.bb (renamed from poky/meta/recipes-devtools/git/git_2.30.1.bb)4
-rw-r--r--poky/meta/recipes-devtools/go/go-1.16.2.inc (renamed from poky/meta/recipes-devtools/go/go-1.16.inc)4
-rw-r--r--poky/meta/recipes-devtools/go/go-binary-native_1.16.2.bb (renamed from poky/meta/recipes-devtools/go/go-binary-native_1.16.bb)4
-rw-r--r--poky/meta/recipes-devtools/go/go-cross-canadian_1.16.2.bb (renamed from poky/meta/recipes-devtools/go/go-cross-canadian_1.16.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-cross_1.16.2.bb (renamed from poky/meta/recipes-devtools/go/go-cross_1.16.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-crosssdk_1.16.2.bb (renamed from poky/meta/recipes-devtools/go/go-crosssdk_1.16.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-dep/0001-Add-support-for-mips-mips64.patch54
-rw-r--r--poky/meta/recipes-devtools/go/go-dep/0001-Update-sys-module-to-latest.patch145574
-rw-r--r--poky/meta/recipes-devtools/go/go-dep/0001-bolt_riscv64-Add-support-for-riscv64.patch33
-rw-r--r--poky/meta/recipes-devtools/go/go-dep_0.5.4.bb30
-rw-r--r--poky/meta/recipes-devtools/go/go-native_1.16.2.bb (renamed from poky/meta/recipes-devtools/go/go-native_1.16.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-runtime_1.16.2.bb (renamed from poky/meta/recipes-devtools/go/go-runtime_1.16.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go_1.16.2.bb (renamed from poky/meta/recipes-devtools/go/go_1.16.bb)0
-rw-r--r--poky/meta/recipes-devtools/help2man/help2man_1.48.2.bb (renamed from poky/meta/recipes-devtools/help2man/help2man_1.48.1.bb)2
-rw-r--r--poky/meta/recipes-devtools/jquery/jquery_3.6.0.bb (renamed from poky/meta/recipes-devtools/jquery/jquery_3.5.1.bb)8
-rw-r--r--poky/meta/recipes-devtools/libdnf/libdnf/0001-libdnf-config.h-avoid-the-use-of-non-portable-__WORD.patch31
-rw-r--r--poky/meta/recipes-devtools/libdnf/libdnf_0.58.0.bb (renamed from poky/meta/recipes-devtools/libdnf/libdnf_0.55.2.bb)3
-rw-r--r--poky/meta/recipes-devtools/libedit/libedit_20210216-3.1.bb (renamed from poky/meta/recipes-devtools/libedit/libedit_20191231-3.1.bb)3
-rw-r--r--poky/meta/recipes-devtools/librepo/librepo/0002-Do-not-try-to-obtain-PYTHON_INSTALL_DIR-by-running-p.patch38
-rw-r--r--poky/meta/recipes-devtools/librepo/librepo/0004-Set-gpgme-variables-with-pkg-config-not-with-cmake-m.patch8
-rw-r--r--poky/meta/recipes-devtools/librepo/librepo_1.13.0.bb (renamed from poky/meta/recipes-devtools/librepo/librepo_1.12.1.bb)2
-rw-r--r--poky/meta/recipes-devtools/libtool/libtool-2.4.6.inc1
-rw-r--r--poky/meta/recipes-devtools/libtool/libtool/0001-Makefile.am-make-sure-autoheader-run-before-autoconf.patch35
-rw-r--r--poky/meta/recipes-devtools/meson/meson.inc16
-rw-r--r--poky/meta/recipes-devtools/meson/meson/0001-minstall-Correctly-set-uid-gid-of-installed-files.patch28
-rw-r--r--poky/meta/recipes-devtools/meson/meson/gi-target-dep.patch41
-rw-r--r--poky/meta/recipes-devtools/perl/files/perl-rdepends.txt8
-rw-r--r--poky/meta/recipes-devtools/perl/liburi-perl_5.08.bb (renamed from poky/meta/recipes-devtools/perl/liburi-perl_1.74.bb)4
-rw-r--r--poky/meta/recipes-devtools/perl/perl_5.32.1.bb7
-rw-r--r--poky/meta/recipes-devtools/python/python-cython.inc2
-rw-r--r--poky/meta/recipes-devtools/python/python3-cython_0.29.22.bb9
-rw-r--r--poky/meta/recipes-devtools/python/python3-dbusmock_0.22.0.bb1
-rw-r--r--poky/meta/recipes-devtools/python/python3-iniconfig_1.1.1.bb1
-rw-r--r--poky/meta/recipes-devtools/python/python3-jinja2_2.11.3.bb3
-rw-r--r--poky/meta/recipes-devtools/python/python3-pygments_2.8.1.bb (renamed from poky/meta/recipes-devtools/python/python3-pygments_2.8.0.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-pygobject_3.38.0.bb2
-rw-r--r--poky/meta/recipes-devtools/python/python3-pytest_6.2.2.bb2
-rw-r--r--poky/meta/recipes-devtools/python/python3-scons_3.1.2.bb1
-rw-r--r--poky/meta/recipes-devtools/python/python3-setuptools-scm_5.0.1.bb2
-rw-r--r--poky/meta/recipes-devtools/python/python3-setuptools_54.1.1.bb (renamed from poky/meta/recipes-devtools/python/python3-setuptools_53.0.0.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-zipp_3.4.1.bb (renamed from poky/meta/recipes-devtools/python/python3-zipp_3.4.0.bb)4
-rw-r--r--poky/meta/recipes-devtools/python/python3/0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch53
-rw-r--r--poky/meta/recipes-devtools/python/python3/0017-setup.py-do-not-report-missing-dependencies-for-disa.patch10
-rw-r--r--poky/meta/recipes-devtools/python/python3_3.9.2.bb2
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu.inc1
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2021-20203.patch73
-rw-r--r--poky/meta/recipes-devtools/rpm/rpm_4.16.1.2.bb39
-rwxr-xr-xpoky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts10
-rw-r--r--poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch19
-rw-r--r--poky/meta/recipes-devtools/strace/strace/disable-git-version-gen.patch37
-rw-r--r--poky/meta/recipes-devtools/strace/strace/update-gawk-paths.patch44
-rw-r--r--poky/meta/recipes-devtools/strace/strace_5.11.bb (renamed from poky/meta/recipes-devtools/strace/strace_5.10.bb)18
-rw-r--r--poky/meta/recipes-devtools/vala/vala_0.50.4.bb (renamed from poky/meta/recipes-devtools/vala/vala_0.50.3.bb)2
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0001-Fix-nlcontrolc.vgtest-hanging-on-newer-glibc-and-or-.patch200
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0001-gdbserver_tests-Disable-nlcontrolc.vgtest-for-x86-64.patch36
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0001-lmw-lswi-and-related-PowerPC-insns-aren-t-allowed-on.patch62
-rwxr-xr-xpoky/meta/recipes-devtools/valgrind/valgrind/run-ptest10
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind_3.16.1.bb3
-rw-r--r--poky/meta/recipes-extended/asciidoc/asciidoc/auto-catalogs.patch53
-rw-r--r--poky/meta/recipes-extended/asciidoc/asciidoc_9.1.0.bb (renamed from poky/meta/recipes-extended/asciidoc/asciidoc_9.0.4.bb)5
-rw-r--r--poky/meta/recipes-extended/bash/bash.inc1
-rw-r--r--poky/meta/recipes-extended/bc/bc_1.07.1.bb1
-rw-r--r--poky/meta/recipes-extended/cracklib/cracklib_2.9.5.bb3
-rw-r--r--poky/meta/recipes-extended/cwautomacros/cwautomacros_20110201.bb1
-rw-r--r--poky/meta/recipes-extended/ed/ed_1.17.bb1
-rw-r--r--poky/meta/recipes-extended/go-examples/go-helloworld_0.1.bb5
-rw-r--r--poky/meta/recipes-extended/grep/grep_3.6.bb1
-rw-r--r--poky/meta/recipes-extended/libsolv/libsolv_0.7.17.bb1
-rw-r--r--poky/meta/recipes-extended/lighttpd/lighttpd_1.4.59.bb1
-rw-r--r--poky/meta/recipes-extended/logrotate/logrotate_3.18.0.bb3
-rw-r--r--poky/meta/recipes-extended/ltp/ltp/0001-open_posix_testsuite-generate-makefiles.sh-Avoid-inc.patch40
-rw-r--r--poky/meta/recipes-extended/ltp/ltp/0002-Makefile-Avoid-wildcard-determinism-issues.patch310
-rw-r--r--poky/meta/recipes-extended/ltp/ltp/0003-syscalls-swapon-swapoff-Move-common-library-to-libs.patch133
-rw-r--r--poky/meta/recipes-extended/ltp/ltp/libswapon.patch368
-rw-r--r--poky/meta/recipes-extended/ltp/ltp_20210121.bb15
-rw-r--r--poky/meta/recipes-extended/lzip/lzip_1.22.bb1
-rw-r--r--poky/meta/recipes-extended/man-db/man-db_2.9.4.bb1
-rw-r--r--poky/meta/recipes-extended/mc/mc_4.8.26.bb1
-rw-r--r--poky/meta/recipes-extended/mdadm/mdadm_4.1.bb1
-rw-r--r--poky/meta/recipes-extended/mingetty/mingetty_1.08.bb1
-rw-r--r--poky/meta/recipes-extended/msmtp/msmtp_1.8.15.bb (renamed from poky/meta/recipes-extended/msmtp/msmtp_1.8.14.bb)2
-rw-r--r--poky/meta/recipes-extended/parted/parted_3.4.bb1
-rw-r--r--poky/meta/recipes-extended/perl/libconvert-asn1-perl_0.27.bb2
-rw-r--r--poky/meta/recipes-extended/perl/libtimedate-perl_2.30.bb1
-rw-r--r--poky/meta/recipes-extended/procps/procps/0001-w.c-correct-musl-builds.patch44
-rw-r--r--poky/meta/recipes-extended/procps/procps/0002-proc-escape.c-add-missing-include.patch23
-rw-r--r--poky/meta/recipes-extended/procps/procps_3.3.17.bb (renamed from poky/meta/recipes-extended/procps/procps_3.3.16.bb)4
-rw-r--r--poky/meta/recipes-extended/quota/quota_4.06.bb1
-rw-r--r--poky/meta/recipes-extended/sed/sed_4.8.bb1
-rw-r--r--poky/meta/recipes-extended/shadow/shadow.inc1
-rw-r--r--poky/meta/recipes-extended/shadow/shadow_4.8.1.bb5
-rw-r--r--poky/meta/recipes-extended/stress-ng/stress-ng_0.12.05.bb (renamed from poky/meta/recipes-extended/stress-ng/stress-ng_0.12.03.bb)2
-rw-r--r--poky/meta/recipes-extended/sudo/sudo.inc2
-rw-r--r--poky/meta/recipes-extended/sudo/sudo_1.9.6p1.bb (renamed from poky/meta/recipes-extended/sudo/sudo_1.9.5p2.bb)2
-rw-r--r--poky/meta/recipes-extended/sysklogd/sysklogd_2.2.2.bb (renamed from poky/meta/recipes-extended/sysklogd/sysklogd_2.2.1.bb)2
-rw-r--r--poky/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb1
-rw-r--r--poky/meta/recipes-extended/unzip/unzip_6.0.bb1
-rw-r--r--poky/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb1
-rw-r--r--poky/meta/recipes-extended/xz/xz_5.2.5.bb1
-rw-r--r--poky/meta/recipes-extended/zip/zip_3.0.bb1
-rw-r--r--poky/meta/recipes-extended/zstd/zstd/0001-Makefile-sort-all-wildcard-file-list-expansions.patch19
-rw-r--r--poky/meta/recipes-extended/zstd/zstd_1.4.9.bb (renamed from poky/meta/recipes-extended/zstd/zstd_1.4.8.bb)2
-rw-r--r--poky/meta/recipes-gnome/epiphany/epiphany_3.38.2.bb3
-rw-r--r--poky/meta/recipes-gnome/gcr/gcr_3.38.1.bb7
-rw-r--r--poky/meta/recipes-gnome/libhandy/libhandy/determinism.patch35
-rw-r--r--poky/meta/recipes-gnome/libhandy/libhandy_1.2.0.bb (renamed from poky/meta/recipes-gnome/libhandy/libhandy_1.0.3.bb)5
-rw-r--r--poky/meta/recipes-graphics/images/core-image-weston.bb8
-rw-r--r--poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb1
-rw-r--r--poky/meta/recipes-graphics/mesa/files/0001-anv-fix-a-build-race-between-generating-a-header-and.patch31
-rw-r--r--poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch12
-rw-r--r--poky/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch14
-rw-r--r--poky/meta/recipes-graphics/mesa/mesa-gl_21.0.1.bb (renamed from poky/meta/recipes-graphics/mesa/mesa-gl_20.3.4.bb)9
-rw-r--r--poky/meta/recipes-graphics/mesa/mesa.inc16
-rw-r--r--poky/meta/recipes-graphics/mesa/mesa_20.3.4.bb2
-rw-r--r--poky/meta/recipes-graphics/mesa/mesa_21.0.1.bb4
-rw-r--r--poky/meta/recipes-graphics/packagegroups/packagegroup-core-weston.bb15
-rw-r--r--poky/meta/recipes-graphics/shaderc/files/0003-cmake-add-option-to-skip-build-the-examples.patch47
-rw-r--r--poky/meta/recipes-graphics/shaderc/shaderc_2020.5.bb (renamed from poky/meta/recipes-graphics/shaderc/shaderc_2020.4.bb)3
-rw-r--r--poky/meta/recipes-graphics/spir/files/0001-Respect-CMAKE_INSTALL_LIBDIR-in-installed-CMake-file.patch35
-rw-r--r--poky/meta/recipes-graphics/spir/files/0001-fix-strncpy-bound-error.patch30
-rw-r--r--poky/meta/recipes-graphics/spir/spirv-headers_1.5.4.bb3
-rw-r--r--poky/meta/recipes-graphics/spir/spirv-tools_2020.7.bb (renamed from poky/meta/recipes-graphics/spir/spirv-tools_2020.6.bb)8
-rw-r--r--poky/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb1
-rw-r--r--poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.170.0.bb (renamed from poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.162.0.bb)2
-rw-r--r--poky/meta/recipes-graphics/vulkan/vulkan-loader/0001-Rename-LIB_SUFFIX-to-VULKAN_LIB_SUFFIX.patch40
-rw-r--r--poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.170.0.bb (renamed from poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.162.0.bb)5
-rw-r--r--poky/meta/recipes-graphics/vulkan/vulkan-tools_1.2.170.0.bb (renamed from poky/meta/recipes-graphics/vulkan/vulkan-tools_1.2.162.1.bb)4
-rw-r--r--poky/meta/recipes-graphics/wayland/libinput/run-ptest2
-rw-r--r--poky/meta/recipes-graphics/wayland/weston-init.bb1
-rw-r--r--poky/meta/recipes-graphics/wayland/weston-init/init1
-rw-r--r--poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb4
-rw-r--r--poky/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb2
-rw-r--r--poky/meta/recipes-kernel/linux-firmware/linux-firmware_20210208.bb42
-rw-r--r--poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc1
-rw-r--r--poky/meta/recipes-kernel/linux/kernel-devsrc.bb1
-rw-r--r--poky/meta/recipes-kernel/linux/linux-dummy.bb2
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto-dev.bb2
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb6
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb6
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb8
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb8
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb26
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb22
-rw-r--r--poky/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-memory-leaks-on-event-destroy.patch58
-rw-r--r--poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-filter-interpreter-early-exits-on-uninitialized-.patch159
-rw-r--r--poky/meta/recipes-kernel/lttng/lttng-modules/0003-fix-mm-tracing-record-slab-name-for-kmem_cache_free-.patch91
-rw-r--r--poky/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-kretprobe-null-ptr-deref-on-session-destroy.patch41
-rw-r--r--poky/meta/recipes-kernel/lttng/lttng-modules_2.12.5.bb (renamed from poky/meta/recipes-kernel/lttng/lttng-modules_2.12.4.bb)11
-rw-r--r--poky/meta/recipes-kernel/lttng/lttng-tools_2.12.3.bb (renamed from poky/meta/recipes-kernel/lttng/lttng-tools_2.12.2.bb)2
-rw-r--r--poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb2
-rw-r--r--poky/meta/recipes-kernel/perf/perf.bb57
-rwxr-xr-xpoky/meta/recipes-kernel/perf/perf/sort-pmuevents.py93
-rw-r--r--poky/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb2
-rw-r--r--poky/meta/recipes-multimedia/ffmpeg/ffmpeg/0001-lavf-srt-fix-build-fail-when-used-the-libsrt-1.4.1.patch52
-rw-r--r--poky/meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2020-35964.patch75
-rw-r--r--poky/meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2020-35965.patch35
-rw-r--r--poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.3.2.bb (renamed from poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.3.1.bb)7
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.4.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.3.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.4.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.3.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.4.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.3.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.4.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.3.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.4.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.3.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.4.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.3.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0002-rtpjitterbuffer-Fix-parsing-of-the-mediaclk-direct-f.patch33
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.4.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.3.bb)3
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.4.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.3.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.4.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.3.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.4.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.3.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.4.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.3.bb)3
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.4.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.3.bb)3
-rw-r--r--poky/meta/recipes-rt/rt-tests/rt-tests_1.10.bb3
-rw-r--r--poky/meta/recipes-sato/webkit/webkitgtk/0001-Extend-atomics-check-to-include-1-byte-CAS-test.patch77
-rw-r--r--poky/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch36
-rw-r--r--poky/meta/recipes-sato/webkit/webkitgtk/include_array.patch15
-rw-r--r--poky/meta/recipes-sato/webkit/webkitgtk/musl-lower-stack-usage.patch74
-rw-r--r--poky/meta/recipes-sato/webkit/webkitgtk/reduce-memory-overheads.patch22
-rw-r--r--poky/meta/recipes-sato/webkit/webkitgtk_2.30.5.bb7
-rw-r--r--poky/meta/recipes-support/attr/attr_2.4.48.bb6
-rw-r--r--poky/meta/recipes-support/attr/attr_2.5.1.bb5
-rw-r--r--poky/meta/recipes-support/bmap-tools/bmap-tools_3.6.bb (renamed from poky/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb)5
-rw-r--r--poky/meta/recipes-support/boost/boost-build-native_4.3.0.bb2
-rw-r--r--poky/meta/recipes-support/diffoscope/diffoscope_172.bb (renamed from poky/meta/recipes-support/diffoscope/diffoscope_168.bb)2
-rw-r--r--poky/meta/recipes-support/gnutls/gnutls_3.7.1.bb (renamed from poky/meta/recipes-support/gnutls/gnutls_3.7.0.bb)2
-rw-r--r--poky/meta/recipes-support/iso-codes/iso-codes_4.6.0.bb (renamed from poky/meta/recipes-support/iso-codes/iso-codes_4.5.0.bb)4
-rw-r--r--poky/meta/recipes-support/libical/libical/0001-Fix-build-with-icu-68.1.patch81
-rw-r--r--poky/meta/recipes-support/libical/libical/0001-Use-our-hand-build-native-src-generator.patch33
-rw-r--r--poky/meta/recipes-support/libical/libical_3.0.9.bb (renamed from poky/meta/recipes-support/libical/libical_3.0.8.bb)22
-rw-r--r--poky/meta/recipes-support/libunistring/libunistring/iconv-m4-remove-the-test-to-convert-euc-jp.patch56
-rw-r--r--poky/meta/recipes-support/libunistring/libunistring_0.9.10.bb1
-rw-r--r--poky/meta/recipes-support/libunwind/libunwind.inc1
-rw-r--r--poky/meta/recipes-support/libunwind/libunwind/0001-configure-Do-not-enforce-libdir-for-ppc64.patch35
-rw-r--r--poky/meta/recipes-support/libunwind/libunwind_1.5.0.bb2
-rw-r--r--poky/meta/recipes-support/lz4/lz4_1.9.3.bb1
-rw-r--r--poky/meta/recipes-support/lzop/lzop_1.04.bb1
-rw-r--r--poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.1.bb (renamed from poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.0.bb)3
-rw-r--r--poky/meta/recipes-support/serf/serf_1.3.9.bb1
-rw-r--r--poky/meta/recipes-support/sqlite/sqlite3_3.35.0.bb (renamed from poky/meta/recipes-support/sqlite/sqlite3_3.34.1.bb)2
-rw-r--r--poky/meta/recipes-support/taglib/taglib/CVE-2017-12678.patch40
-rw-r--r--poky/meta/recipes-support/taglib/taglib/CVE-2018-11439.patch51
-rw-r--r--poky/meta/recipes-support/taglib/taglib_1.12.bb (renamed from poky/meta/recipes-support/taglib/taglib_1.11.1.bb)9
-rw-r--r--poky/meta/recipes-support/xxhash/xxhash_0.8.0.bb (renamed from meta-openembedded/meta-oe/recipes-support/xxhash/xxhash_0.8.0.bb)2
-rw-r--r--poky/meta/site/common-linux3
-rwxr-xr-xpoky/scripts/bitbake-whatchanged2
-rwxr-xr-xpoky/scripts/contrib/documentation-audit.sh2
-rwxr-xr-xpoky/scripts/contrib/list-packageconfig-flags.py2
-rw-r--r--poky/scripts/lib/devtool/standard.py7
-rw-r--r--poky/scripts/oe-time-dd-test.sh23
-rwxr-xr-xpoky/scripts/runqemu151
-rwxr-xr-xpoky/scripts/sstate-diff-machines.sh4
-rwxr-xr-xpoky/scripts/verify-bashisms2
1477 files changed, 52677 insertions, 158461 deletions
diff --git a/meta-alibaba/conf/layer.conf b/meta-alibaba/conf/layer.conf
index 430ef5e37..435d1ddec 100644
--- a/meta-alibaba/conf/layer.conf
+++ b/meta-alibaba/conf/layer.conf
@@ -4,4 +4,4 @@ BBPATH .= ":${LAYERDIR}"
BBFILE_COLLECTIONS += "alibaba-layer"
BBFILE_PATTERN_alibaba-layer = "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_alibaba-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_alibaba-layer = "gatesgarth hardknott"
diff --git a/meta-alibaba/meta-thor/conf/bblayers.conf.sample b/meta-alibaba/meta-thor/conf/bblayers.conf.sample
index 50cc08f71..1884f55ef 100644
--- a/meta-alibaba/meta-thor/conf/bblayers.conf.sample
+++ b/meta-alibaba/meta-thor/conf/bblayers.conf.sample
@@ -9,6 +9,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-alibaba \
@@ -20,6 +21,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-alibaba \
diff --git a/meta-alibaba/meta-thor/conf/distro/alibaba-openbmc.conf b/meta-alibaba/meta-thor/conf/distro/alibaba-openbmc.conf
deleted file mode 100644
index de15fbcc6..000000000
--- a/meta-alibaba/meta-thor/conf/distro/alibaba-openbmc.conf
+++ /dev/null
@@ -1 +0,0 @@
-require conf/distro/include/phosphor-base.inc
diff --git a/meta-alibaba/meta-thor/conf/layer.conf b/meta-alibaba/meta-thor/conf/layer.conf
index 149bdf8fd..89eca706a 100644
--- a/meta-alibaba/meta-thor/conf/layer.conf
+++ b/meta-alibaba/meta-thor/conf/layer.conf
@@ -6,4 +6,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += ""
BBFILE_PATTERN := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT = "dunfell gatesgarth"
+LAYERSERIES_COMPAT = "gatesgarth hardknott"
diff --git a/meta-alibaba/meta-thor/conf/local.conf.sample b/meta-alibaba/meta-thor/conf/local.conf.sample
index 09c441fee..fbae84b73 100644
--- a/meta-alibaba/meta-thor/conf/local.conf.sample
+++ b/meta-alibaba/meta-thor/conf/local.conf.sample
@@ -58,9 +58,9 @@ DL_DIR ?= "${TOPDIR}/../downloads"
# Ultimately when creating custom policy, people will likely end up subclassing
# these defaults.
#
-DISTRO ?= "alibaba-openbmc"
+DISTRO ?= "openbmc-phosphor"
# As an example of a subclass there is a "bleeding" edge policy configuration
-# where many versions are set to the absolute latest code from the upstream
+# where many versions are set to the absolute latest code from the upstream
# source control systems. This is just mentioned here as an example, its not
# useful to most new users.
# DISTRO ?= "poky-bleeding"
diff --git a/meta-amd/conf/layer.conf b/meta-amd/conf/layer.conf
index da41da812..8caa32493 100644
--- a/meta-amd/conf/layer.conf
+++ b/meta-amd/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "amd-layer"
BBFILE_PATTERN_amd-layer = "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_amd-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_amd-layer = "gatesgarth hardknott"
diff --git a/meta-amd/meta-ethanolx/conf/bblayers.conf.sample b/meta-amd/meta-ethanolx/conf/bblayers.conf.sample
index d84dbc759..2b8d624bc 100644
--- a/meta-amd/meta-ethanolx/conf/bblayers.conf.sample
+++ b/meta-amd/meta-ethanolx/conf/bblayers.conf.sample
@@ -11,6 +11,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-amd \
@@ -22,6 +23,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-amd \
diff --git a/meta-amd/meta-ethanolx/conf/layer.conf b/meta-amd/meta-ethanolx/conf/layer.conf
index 22fc7bed0..818ab7df1 100644
--- a/meta-amd/meta-ethanolx/conf/layer.conf
+++ b/meta-amd/meta-ethanolx/conf/layer.conf
@@ -9,4 +9,4 @@ BBFILE_COLLECTIONS += "ethanolx-layer"
BBFILE_PATTERN_ethanolx-layer = "^${LAYERDIR}/"
BBFILE_PRIORITY_ethanolx-layer = "6"
-LAYERSERIES_COMPAT_ethanolx-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_ethanolx-layer = "gatesgarth hardknott"
diff --git a/meta-amd/meta-ethanolx/recipes-kernel/linux/linux-aspeed/ethanolx.cfg b/meta-amd/meta-ethanolx/recipes-kernel/linux/linux-aspeed/ethanolx.cfg
index 4a0a61e38..e20cd22d6 100644
--- a/meta-amd/meta-ethanolx/recipes-kernel/linux/linux-aspeed/ethanolx.cfg
+++ b/meta-amd/meta-ethanolx/recipes-kernel/linux/linux-aspeed/ethanolx.cfg
@@ -1,2 +1,3 @@
CONFIG_SENSORS_LM75=y
+CONFIG_SENSORS_SBTSI=y
CONFIG_I2C_ASPEED=y
diff --git a/meta-amd/meta-ethanolx/recipes-phosphor/configuration/entity-manager/ethanolx-baseboard.json b/meta-amd/meta-ethanolx/recipes-phosphor/configuration/entity-manager/ethanolx-baseboard.json
new file mode 100644
index 000000000..0ce9f8096
--- /dev/null
+++ b/meta-amd/meta-ethanolx/recipes-phosphor/configuration/entity-manager/ethanolx-baseboard.json
@@ -0,0 +1,280 @@
+{
+ "Exposes": [
+ {
+ "Name": "P0 Fan connector",
+ "Status": "disabled",
+ "Type": "FanConnector"
+ },
+ {
+ "Name": "P1 Fan connector",
+ "Status": "disabled",
+ "Type": "FanConnector"
+ },
+ {
+ "Address": "0x48",
+ "Bus": 7,
+ "Name": "BMC",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 40
+ },
+ {
+ "Direction": "greater than",
+ "Name": "upper non critical",
+ "Severity": 0,
+ "Value": 38
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower non critical",
+ "Severity": 0,
+ "Value": 5
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 0
+ }
+ ],
+ "Type": "LM75A"
+ },
+ {
+ "Address": "0x49",
+ "Bus": 7,
+ "Name": "DIMM_P0_ABCD_P1_EFGH",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 40
+ },
+ {
+ "Direction": "greater than",
+ "Name": "upper non critical",
+ "Severity": 0,
+ "Value": 38
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower non critical",
+ "Severity": 0,
+ "Value": 5
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 0
+ }
+ ],
+ "Type": "LM75A"
+ },
+ {
+ "Address": "0x4A",
+ "Bus": 7,
+ "Name": "DIMM_P1_EFGH",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 40
+ },
+ {
+ "Direction": "greater than",
+ "Name": "upper non critical",
+ "Severity": 0,
+ "Value": 38
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower non critical",
+ "Severity": 0,
+ "Value": 5
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 0
+ }
+ ],
+ "Type": "LM75A"
+ },
+ {
+ "Address": "0x4B",
+ "Bus": 7,
+ "Name": "PCIe_Slots",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 40
+ },
+ {
+ "Direction": "greater than",
+ "Name": "upper non critical",
+ "Severity": 0,
+ "Value": 38
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower non critical",
+ "Severity": 0,
+ "Value": 5
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 0
+ }
+ ],
+ "Type": "LM75A"
+ },
+ {
+ "Address": "0x4C",
+ "Bus": 7,
+ "Name": "DIMM_P0_EFGH_P1_ABCD",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 40
+ },
+ {
+ "Direction": "greater than",
+ "Name": "upper non critical",
+ "Severity": 0,
+ "Value": 38
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower non critical",
+ "Severity": 0,
+ "Value": 5
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 0
+ }
+ ],
+ "Type": "LM75A"
+ },
+ {
+ "Address": "0x4D",
+ "Bus": 7,
+ "Name": "DIMM_P1_ABCD",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 40
+ },
+ {
+ "Direction": "greater than",
+ "Name": "upper non critical",
+ "Severity": 0,
+ "Value": 38
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower non critical",
+ "Severity": 0,
+ "Value": 5
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 0
+ }
+ ],
+ "Type": "LM75A"
+ },
+ {
+ "Address": "0x4E",
+ "Bus": 7,
+ "Name": "DIMM_P0_EFGH",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 40
+ },
+ {
+ "Direction": "greater than",
+ "Name": "upper non critical",
+ "Severity": 0,
+ "Value": 38
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower non critical",
+ "Severity": 0,
+ "Value": 5
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 0
+ }
+ ],
+ "Type": "LM75A"
+ },
+ {
+ "Address": "0x4F",
+ "Bus": 7,
+ "Name": "DIMM_P0_ABCD",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 40
+ },
+ {
+ "Direction": "greater than",
+ "Name": "upper non critical",
+ "Severity": 0,
+ "Value": 38
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower non critical",
+ "Severity": 0,
+ "Value": 5
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 0
+ }
+ ],
+ "Type": "LM75A"
+ }
+ ],
+ "Name": "AMD EthanolX Baseboard",
+ "Probe": "TRUE",
+ "Type": "Board",
+ "ProductId": "1",
+ "xyz.openbmc_project.Inventory.Decorator.Asset": {
+ "Manufacturer": "AMD",
+ "Model": "EthanolX",
+ "PartNumber": "109-H43111-00A_02",
+ "SerialNumber": "EX782B"
+ }
+}
diff --git a/meta-amd/meta-ethanolx/recipes-phosphor/configuration/entity-manager/ethanolx-chassis.json b/meta-amd/meta-ethanolx/recipes-phosphor/configuration/entity-manager/ethanolx-chassis.json
new file mode 100644
index 000000000..ff4cbdc54
--- /dev/null
+++ b/meta-amd/meta-ethanolx/recipes-phosphor/configuration/entity-manager/ethanolx-chassis.json
@@ -0,0 +1,77 @@
+{
+ "Exposes": [
+ {
+ "Index": 0,
+ "BindConnector": "P0 Fan connector",
+ "MaxReading": 6000,
+ "Name": "P0_Fan",
+ "Type": "AspeedFan",
+ "Pwm": 1,
+ "Tachs": [1],
+ "Thresholds": [
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 0
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower non critical",
+ "Severity": 0,
+ "Value": 10
+ },
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 10000
+ },
+ {
+ "Direction": "greater than",
+ "Name": "upper non critical",
+ "Severity": 0,
+ "Value": 8000
+ }
+ ]
+ },
+ {
+ "Index": 1,
+ "BindConnector": "P1 Fan connector",
+ "MaxReading": 6000,
+ "Name": "P1_Fan",
+ "Type": "AspeedFan",
+ "Pwm": 2,
+ "Tachs": [2],
+ "Thresholds": [
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 0
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower non critical",
+ "Severity": 0,
+ "Value": 10
+ },
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 10000
+ },
+ {
+ "Direction": "greater than",
+ "Name": "upper non critical",
+ "Severity": 0,
+ "Value": 8000
+ }
+ ]
+ }
+ ],
+ "Name": "AMD EthanolX Chassis",
+ "Probe": "FOUND('AMD EthanolX Baseboard')",
+ "Type": "Chassis"
+}
diff --git a/meta-amd/meta-ethanolx/recipes-phosphor/configuration/entity-manager_%.bbappend b/meta-amd/meta-ethanolx/recipes-phosphor/configuration/entity-manager_%.bbappend
new file mode 100644
index 000000000..5a287694d
--- /dev/null
+++ b/meta-amd/meta-ethanolx/recipes-phosphor/configuration/entity-manager_%.bbappend
@@ -0,0 +1,10 @@
+FILESEXTRAPATHS_append := ":${THISDIR}/${PN}"
+SRC_URI_append = " file://ethanolx-baseboard.json \
+ file://ethanolx-chassis.json"
+
+do_install_append() {
+ rm -f ${D}/usr/share/entity-manager/configurations/*.json
+ install -d ${D}/usr/share/entity-manager/configurations
+ install -m 0444 ${WORKDIR}/ethanolx-baseboard.json ${D}/usr/share/entity-manager/configurations
+ install -m 0444 ${WORKDIR}/ethanolx-chassis.json ${D}/usr/share/entity-manager/configurations
+}
diff --git a/meta-amd/meta-ethanolx/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend b/meta-amd/meta-ethanolx/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
index fc565dc6e..b0631e627 100644
--- a/meta-amd/meta-ethanolx/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
+++ b/meta-amd/meta-ethanolx/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
@@ -1,5 +1,5 @@
FILESEXTRAPATHS_prepend_ethanolx := "${THISDIR}/${PN}:"
-EXTRA_OECONF_append_ethanolx = " --enable-negative-errno-on-fail"
+EXTRA_OEMESON_append_ethanolx = " -Dnegative-errno-on-fail=true"
CHIPS = " \
diff --git a/meta-amd/recipes-amd/amd-fpga/amd-fpga.bb b/meta-amd/recipes-amd/amd-fpga/amd-fpga.bb
new file mode 100644
index 000000000..3fcaeaa91
--- /dev/null
+++ b/meta-amd/recipes-amd/amd-fpga/amd-fpga.bb
@@ -0,0 +1,18 @@
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}/${MACHINE}:"
+SUMMARY = "AMD Ethanolx FPGA Register Dump Utility"
+DESCRIPTION = "AMD Ethanolx FPGA Register Dump Utility"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=5e24678b8d0883d9dfa9e9473069ddd2"
+
+RDEPENDS_${PN} = "bash"
+SRCREV = "${AUTOREV}"
+SRC_URI = "file://fpgardu.sh"
+SRC_URI += "file://LICENSE"
+
+S = "${WORKDIR}/"
+
+do_install () {
+ install -d ${D}${bindir}
+ install -m 0755 ${S}/fpgardu.sh ${D}${bindir}/
+}
diff --git a/meta-amd/recipes-amd/amd-fpga/files/LICENSE b/meta-amd/recipes-amd/amd-fpga/files/LICENSE
new file mode 100644
index 000000000..d86ae6717
--- /dev/null
+++ b/meta-amd/recipes-amd/amd-fpga/files/LICENSE
@@ -0,0 +1,13 @@
+Full Description:
+Different components of meta-amd are under different licenses (a mix
+of MIT and Apache-2.0). Please see:
+
+COPYING.Apache-2.0
+COPYING.MIT (MIT)
+
+All metadata is MIT licensed unless otherwise stated. Source code
+included in tree for individual recipes is under the LICENSE stated in
+the associated recipe (.bb file) unless otherwise stated.
+
+License information for any other files is either explicitly stated
+or defaults to Apache-2.0.
diff --git a/meta-amd/recipes-amd/amd-fpga/files/ethanolx/fpgardu.sh b/meta-amd/recipes-amd/amd-fpga/files/ethanolx/fpgardu.sh
new file mode 100644
index 000000000..b229c7939
--- /dev/null
+++ b/meta-amd/recipes-amd/amd-fpga/files/ethanolx/fpgardu.sh
@@ -0,0 +1,398 @@
+#!/bin/bash
+echo
+echo "-----FPGA Ethanol<x> CRB Register Dump Utility"
+echo
+I2CBUS=2
+FPGAADDR=0x50
+
+# FPGA FW Version Information
+FPGA_REG=39
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+MAJOR=$((DATA >> 4))
+MINOR=$((DATA & 0x0F))
+echo FPGA FW Version: $MAJOR.$MINOR
+
+# IP register information
+FPGA_REG=0
+IP_REG_MAX=3
+printf "IP Address Registers: "
+while [ $FPGA_REG -le $IP_REG_MAX ]
+ do
+ # not using printf as integer and hex values are the same for this use
+ DATA=$(i2cget -y $I2CBUS $FPGAADDR $FPGA_REG)
+ if [ $FPGA_REG -ne $IP_REG_MAX ] ; then
+ printf "%d." $DATA
+ else
+ printf "%d\n\n" $DATA
+ fi
+ let FPGA_REG=FPGA_REG+1
+ done
+
+# VDD block - Addresses 16 - 23
+FPGA_REG=16
+VDD_REG_MAX=23
+SOCKET=0
+
+while [ $FPGA_REG -le $VDD_REG_MAX ]
+ do
+ VDD_LOOP_CNT=0
+
+ while [ $VDD_LOOP_CNT -le 1 ]
+ do
+ if [ $VDD_LOOP_CNT -eq 0 ] ; then
+ VDD_LOOP_CNT_TXT="Enables"
+ else
+ VDD_LOOP_CNT_TXT="Power Goods"
+ fi
+ DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+ echo ----------FPGAreg$FPGA_REG-----P$SOCKET VDD $VDD_LOOP_CNT_TXT
+ echo VDD_18_DUAL : $((DATA & 0x01))
+ echo VDD_SOC_DUAL: $((((DATA & 0x02)) >> 1))
+ echo VDD_SPD_ABCD: $((((DATA & 0x04)) >> 2))
+ echo VDD_VPP_ABCD: $((((DATA & 0x08)) >> 3))
+ echo VDD_VTT_ABCD: $((((DATA & 0x10)) >> 4))
+ echo VDD_MEM_ABCD: $((((DATA & 0x20)) >> 5))
+ echo VDD_SPD_EFGH: $((((DATA & 0x40)) >> 6))
+ echo VDD_VPP_EFGH: $((((DATA & 0x80)) >> 7))
+
+ let FPGA_REG=FPGA_REG+1
+ DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+ echo VDD_VTT_EFGH : $((DATA & 0x01))
+ echo VDD_MEM_EFGH : $((((DATA & 0x02)) >> 1))
+ echo VDD_18_RUN-- : $((((DATA & 0x04)) >> 2))
+ echo VDD_SOC_RUN- : $((((DATA & 0x08)) >> 3))
+ echo VDD_CORE_RUN : $((((DATA & 0x10)) >> 4))
+ let FPGA_REG=FPGA_REG+1
+ let VDD_LOOP_CNT=VDD_LOOP_CNT+1
+ done
+ let SOCKET=SOCKET+1
+ done
+
+# Power State/Reset Data
+FPGA_REG=24
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+echo ----------FPGAreg$FPGA_REG-----Power state Information:
+echo P0_SLP_S5_L--- : $((DATA & 0x01))
+echo P0_SLP_S3_L--- : $((((DATA & 0x02)) >> 1))
+echo ATX_PS_ON----- : $((((DATA & 0x04)) >> 2))
+echo FPGA_5_DUAL_EN : $((((DATA & 0x08)) >> 3))
+
+# Power Good information
+FPGA_REG=25
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+echo ----------FPGAreg$FPGA_REG-----Power Good Information:
+echo VDD_33_DUAL_PG------- : $((DATA & 0x01))
+echo FPGA_VDD_CORE_DUAL_PG : $((((DATA & 0x02)) >> 1))
+echo MGMT_VDD_VPP_DUAL_PG- : $((((DATA & 0x04)) >> 2))
+echo MGMT_VDD_MEM_DUAL_PG- : $((((DATA & 0x08)) >> 3))
+echo MGMT_VDD_CORE_DUAL_PG : $((((DATA & 0x10)) >> 4))
+echo ATX_PWR_OK----------- : $((((DATA & 0x20)) >> 5))
+
+# Power and Reset Signals
+FPGA_REG=26
+PWRRST_REG_MAX=27
+SOCKET=0
+while [ $FPGA_REG -le $PWRRST_REG_MAX ]
+ do
+ DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+ echo ----------FPGAreg$FPGA_REG-----P$SOCKET Power and Reset Signals:
+ echo RSMRST_L----------------- : $((DATA & 0x01))
+ echo PWR_GOOD----------------- : $((((DATA & 0x02)) >> 1))
+ echo PWRGD_OUT---------------- : $((((DATA & 0x04)) >> 2))
+ echo FPGA_PWROK_RESET_BUF_EN_L : $((((DATA & 0x08)) >> 3))
+ echo 33_PWROK----------------- : $((((DATA & 0x10)) >> 4))
+ echo VDD_CORE_RUN_PWROK------- : $((((DATA & 0x20)) >> 5))
+ echo VDD_SOC_RUN_PWROK-------- : $((((DATA & 0x40)) >> 6))
+ echo 33_RESET_L--------------- : $((((DATA & 0x80)) >> 7))
+ let FPGA_REG=FPGA_REG+1
+ done
+
+# Processor and power cable preset signals
+FPGA_REG=28
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+echo ----------FPGAreg$FPGA_REG-----Processor and power cable preset signals:
+echo P0_PRESENT_L--------------------- : $((DATA & 0x01))
+echo P0_VDD_MEM_ABCD_12_RUN_PLUG_PRSNT : $((((DATA & 0x02)) >> 1))
+echo P0_VDD_MEM_EFGH_12_RUN_PLUG_PRSNT : $((((DATA & 0x04)) >> 2))
+echo P0_VDD_12_RUN_PLUG_PRSNT--------- : $((((DATA & 0x08)) >> 3))
+echo P1_PRESENT_L--------------------- : $((((DATA & 0x10)) >> 4))
+echo P1_VDD_MEM_ABCD_12_RUN_PLUG_PRSNT : $((((DATA & 0x20)) >> 5))
+echo P1_VDD_MEM_EFGH_12_RUN_PLUG_PRSNT : $((((DATA & 0x40)) >> 6))
+echo P1_VDD_12_RUN_PLUG_PRSNT--------- : $((((DATA & 0x80)) >> 7))
+
+# Board LEDs
+FPGA_REG=29
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+echo ----------FPGAreg$FPGA_REG-----LED States:
+echo PWR_GOOD_LED--- : $((DATA & 0x01))
+echo PWROK_LED------ : $((((DATA & 0x02)) >> 1))
+echo RESET_LED_L---- : $((((DATA & 0x04)) >> 2))
+echo P0_PROCHOT_LED- : $((((DATA & 0x08)) >> 3))
+echo P1_PROCHOT_LED- : $((((DATA & 0x10)) >> 4))
+
+# VR thermal errors
+FPGA_REG=30
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+echo ----------FPGAreg$FPGA_REG-----VR Thermal Errors:
+echo P0_VDD_MEM_ABCD_SUS_VRHOT_L : $((DATA & 0x01))
+echo P0_VDD_MEM_EFGH_SUS_VRHOT_L : $((((DATA & 0x02)) >> 1))
+echo P0_VDD_SOC_RUN_VRHOT_L----- : $((((DATA & 0x04)) >> 2))
+echo P0_VDD_CORE_RUN_VRHOT_L---- : $((((DATA & 0x08)) >> 3))
+echo P1_VDD_MEM_ABCD_SUS_VRHOT_L : $((((DATA & 0x10)) >> 4))
+echo P1_VDD_MEM_EFGH_SUS_VRHOT_L : $((((DATA & 0x20)) >> 5))
+echo P1_VDD_SOC_RUN_VRHOT_L----- : $((((DATA & 0x40)) >> 6))
+echo P1_VDD_CORE_RUN_VRHOT_L---- : $((((DATA & 0x80)) >> 7))
+
+# Processor and board Thermal Errors
+FPGA_REG=31
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+echo ----------FPGAreg$FPGA_REG-----Processor and board Thermal Errors:
+echo FPGA_P0_THERMTRIP_L : $((DATA & 0x01))
+echo FPGA_P1_THERMTRIP_L : $((((DATA & 0x02)) >> 1))
+echo SENSOR_THERM_L----- : $((((DATA & 0x04)) >> 2))
+echo P0_PROCHOT_L------- : $((((DATA & 0x08)) >> 3))
+echo P1_PROCHOT_L------- : $((((DATA & 0x10)) >> 4))
+
+# AST2500 control Signals
+FPGA_REG=32
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+echo ----------FPGAreg$FPGA_REG-----AST2500 Control Signals:
+echo MGMT_ASSERT_BMC_READY--- : $((DATA & 0x01))
+echo MGMT_ASSERT_LOCAL_LOCK-- : $((((DATA & 0x02)) >> 1))
+echo MGMT_ASSERT_PWR_BTN----- : $((((DATA & 0x04)) >> 2))
+echo MGMT_ASSERT_RST_BTN----- : $((((DATA & 0x08)) >> 3))
+echo MGMT_ASSERT_NMI_BTN----- : $((((DATA & 0x10)) >> 4))
+echo MGMT_ASSERT_P0_PROCHOT-- : $((((DATA & 0x20)) >> 5))
+echo MGMT_ASSERT_P1_PROCHOT-- : $((((DATA & 0x40)) >> 6))
+echo MGMT_ASSERT_WARM_RST_BTN : $((((DATA & 0x80)) >> 7))
+
+# FPGA processor control signals
+FPGA_REG=33
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+echo ----------FPGAreg$FPGA_REG-----FPGA processor Control Signals:
+echo ASSERT_P0_PWROK_L-------- : $((DATA & 0x01))
+echo ASSERT_P0_RESET_L-------- : $((((DATA & 0x02)) >> 1))
+echo ASSERT_P0_PROCHOT_L------ : $((((DATA & 0x04)) >> 2))
+echo MGMT_SYS_MON_P0_PROCHOT_L : $((((DATA & 0x08)) >> 3))
+echo ASSERT_P1_PWROK_L-------- : $((((DATA & 0x10)) >> 4))
+echo ASSERT_P1_RESET_L-------- : $((((DATA & 0x20)) >> 5))
+echo ASSERT_P1_PROCHOT_L------ : $((((DATA & 0x40)) >> 6))
+echo MGMT_SYS_MON_P1_PROCHOT_L : $((((DATA & 0x80)) >> 7))
+
+# Buttons/Resets
+FPGA_REG=34
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+echo ----------FPGAreg$FPGA_REG-----Button and Reset Signals:
+echo PWR_BTN_L----- : $((DATA & 0x01))
+echo RST_BTN_L----- : $((((DATA & 0x02)) >> 1))
+echo WARM_RST_BTN_L : $((((DATA & 0x04)) >> 2))
+echo NMI_BTN_L----- : $((((DATA & 0x08)) >> 3))
+echo FPGA_BTN_L---- : $((((DATA & 0x10)) >> 4))
+echo P0_PWR_BTN_L-- : $((((DATA & 0x20)) >> 5))
+echo P0_SYS_RESET_L : $((((DATA & 0x40)) >> 6))
+echo P0_KBRST_L---- : $((((DATA & 0x80)) >> 7))
+
+# Miscellaneous Block 1
+FPGA_REG=35
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+echo ----------FPGAreg$FPGA_REG-----Miscellaneous 35 Signals:
+echo MGMT_AC_LOSS_L---------- : $((DATA & 0x01))
+echo P0_NV_FORCE_SELF_REFRESH : $((((DATA & 0x02)) >> 1))
+echo P1_NV_FORCE_SELF_REFRESH : $((((DATA & 0x04)) >> 2))
+echo P0_LOCAL_SPI_ROM_SEL_L-- : $((((DATA & 0x08)) >> 3))
+echo PCIE_SLOT4_HP_FON_L----- : $((((DATA & 0x10)) >> 4))
+echo P0_NMI_SYNC_FLOOD_L----- : $((((DATA & 0x20)) >> 5))
+echo FPGA_LPC_RST_L---------- : $((((DATA & 0x40)) >> 6))
+echo MGMT_SMBUS_ALERT_L------ : $((((DATA & 0x80)) >> 7))
+
+# Miscellaneous Block 2
+FPGA_REG=36
+SHUTDOWNERR=0
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+echo ----------FPGAreg$FPGA_REG-----Miscellaneous 36 Signals:
+echo physical_pg------------------- : $((DATA & 0x01))
+echo shutdown_error---------------- : $((((DATA & 0x02)) >> 1))
+SHUTDOWNERR=$((((DATA & 0x02)) >> 1))
+echo P0_PRESENT_HDT---------------- : $((((DATA & 0x04)) >> 2))
+echo P1_PRESENT_HDT---------------- : $((((DATA & 0x08)) >> 3))
+echo DAP_EXT_P0_CORE_RUN_VOLTAGE_PG : $((((DATA & 0x10)) >> 4))
+echo FPGA_BRD_ID------------------- : $((((DATA & 0x20)) >> 5))
+echo FPGA_BRD_ID------------------- : $((((DATA & 0x40)) >> 6))
+echo MGMT_FPGA_RSVD---------------- : $((((DATA & 0x80)) >> 7))
+
+# Switch S1
+FPGA_REG=37
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+echo ----------FPGAreg$FPGA_REG-----Switch Bank S1:
+if [ $((DATA & 0x01)) -eq 1 ] ; then
+ echo "FPGA_SW1-1 - OFF - P0 PwrReg PU with Proc"
+else
+ echo "FPGA_SW1-1 - ON - P0 PwrReg PU without Proc"
+fi
+if [ $((((DATA & 0x02)) >> 1)) -eq 1 ] ; then
+ echo "FPGA_SW1-1 - OFF - P1 PwrReg PU with Proc"
+else
+ echo "FPGA_SW1-1 - ON - P1 PwrReg PU without Proc"
+fi
+if [ $((((DATA & 0x04)) >> 2)) -eq 1 ] ; then
+ echo "FPGA_SW1-3 - OFF - ATX Connectors Valid"
+else
+ echo "FPGA_SW1-3 - ON - ATX Connectors Ignored"
+fi
+if [ $((((DATA & 0x08)) >> 3)) -eq 1 ] ; then
+ echo "FPGA_SW1-4 - OFF - Wait for BMC Boot"
+else
+ echo "FPGA_SW1-4 - ON - Do Not Wait for BMC Boot"
+fi
+if [ $((((DATA & 0x10)) >> 4)) -eq 1 ] ; then
+ echo "FPGA_SW1-5 - OFF - MemPwrReg PU after ATX"
+else
+ echo "FPGA_SW1-5 - ON - MemPwrReg PU before ATX"
+fi
+if [ $((((DATA & 0x20)) >> 5)) -eq 1 ] ; then
+ echo "FPGA_SW1-6 - OFF - DAP CORE Reg Bypass DISABLED"
+else
+ echo "FPGA_SW1-6 - ON - DAP CORE Reg Bypass ENABLED"
+fi
+if [ $((((DATA & 0x40)) >> 6)) -eq 1 ] ; then
+ echo "FPGA_SW1-7 - OFF - Bypass P0 in HDT JTAG Chain DISABLED"
+else
+ echo "FPGA_SW1-7 - ON - Bypass P0 in HDT JTAG Chain ENABLED"
+fi
+if [ $((((DATA & 0x80)) >> 7)) -eq 1 ] ; then
+ echo "FPGA_SW1-8 - OFF - Bypass P1 in HDT JTAG Chain DISABLED"
+else
+ echo "FPGA_SW1-8 - ON - Bypass P1 in HDT JTAG Chain ENABLED"
+fi
+
+# Switch S2
+FPGA_REG=38
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+echo ----------FPGAreg$FPGA_REG-----Switch Bank S2:
+if [ $((DATA & 0x01)) -eq 1 ] ; then
+ echo "FPGA_SW2-1 - OFF - Boot from SPI ROM behind BMC"
+else
+ echo "FPGA_SW2-1 - ON - Boot from P0 local SPI ROM"
+fi
+if [ $((((DATA & 0x02)) >> 1)) -eq 1 ] ; then
+ echo "FPGA_SW2-2 - OFF - PCIe SLOT4 hot plug forced PwrON without driver"
+else
+ echo "FPGA_SW2-2 - ON - PCIe SLOT4 hot plug NOT forced PwrON without driver"
+fi
+if [ $((((DATA & 0x04)) >> 2)) -eq 1 ] ; then
+ echo "FPGA_SW2-3 - OFF - SMI testing DISABLED"
+else
+ echo "FPGA_SW2-3 - ON - SMI testing ENABLED"
+fi
+if [ $((((DATA & 0x08)) >> 3)) -eq 1 ] ; then
+ echo "FPGA_SW2-4 - OFF - PROCHOT testing DISABLED"
+else
+ echo "FPGA_SW2-4 - ON - PROCHOT testing ENABLED"
+fi
+if [ $((((DATA & 0x10)) >> 4)) -eq 1 ] ; then
+ echo "FPGA_SW2-5 - OFF - PwrCycle on post code C0 DISABLED"
+else
+ echo "FPGA_SW2-5 - ON - PwrCycle on post code C0 ENABLED"
+fi
+if [ $((((DATA & 0x20)) >> 5)) -eq 1 ] ; then
+ echo "FPGA_SW2-6 - OFF - PwrCycle Px DISABLED"
+else
+ echo "FPGA_SW2-6 - ON - PwrCycle - Px Present - RESET_L | Px Not Present VR PwrGood"
+fi
+if [ $((((DATA & 0x40)) >> 6)) -eq 1 ] ; then
+ echo "FPGA_SW2-7 - OFF - BMC IP Address display DISABLED"
+else
+ echo "FPGA_SW2-7 - ON - BMC IP Address display ENABLED"
+fi
+if [ $((((DATA & 0x80)) >> 7)) -eq 1 ] ; then
+ echo "FPGA_SW1-8 - OFF - FORCE_SELFREFRESH support diabled"
+else
+ echo "FPGA_SW1-8 - ON - FORCE_SELFREFRESH support diabled"
+fi
+
+# Powerup Error Group
+echo ------------------------Power and Thermal Error Group
+if [ $SHUTDOWNERR = 0 ] ; then
+ echo NO Shutdown Errors Detected
+fi
+
+FPGA_REG=40
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+if [ $((DATA & 0x0F)) != 0 ] ; then
+ echo PU Error: PU1$((DATA & 0x0F))
+ echo $DATA
+fi
+
+FPGA_REG=41
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+if [ $((DATA & 0x07)) != 0 ] ; then
+ echo PU Error: PU2$((DATA & 0x07))
+fi
+
+FPGA_REG=42
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+if [ $((DATA & 0x0F)) != 0 ] ; then
+ echo PU Error: PU1$((DATA & 0x0F))
+fi
+
+FPGA_REG=43
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+if [ $((DATA & 0x07)) != 0 ] ; then
+ echo PU Error: PU4$((DATA & 0x07))
+fi
+
+FPGA_REG=44
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+if [ $((DATA & 0x03)) != 0 ] ; then
+ echo PU Error: PU5$((DATA & 0x03))
+fi
+
+FPGA_REG=45
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+if [ $((DATA & 0x07)) != 0 ] ; then
+ echo PU Error: PU6$((DATA & 0x07))
+fi
+
+# Powerdown Error Group
+FPGA_REG=46
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+if [ $((DATA & 0x0F)) != 0 ] ; then
+ echo PD Error: PD1$((DATA & 0x0F))
+fi
+
+FPGA_REG=47
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+if [ $((DATA & 0x07)) != 0 ] ; then
+ echo PD Error: PD2$((DATA & 0x07))
+fi
+
+FPGA_REG=48
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+if [ $((DATA & 0x0F)) != 0 ] ; then
+ echo PD Error: PD3$((DATA & 0x0F))
+fi
+
+FPGA_REG=49
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+if [ $((DATA & 0x07)) != 0 ] ; then
+ echo PD Error: PD4$((DATA & 0x07))
+fi
+
+FPGA_REG=50
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+if [ $((DATA & 0x03)) != 0 ] ; then
+ echo PD Error: PD5$((DATA & 0x03))
+fi
+
+FPGA_REG=51
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+if [ $((DATA & 0x03)) != 0 ] ; then
+ echo PD Error: PD6$((DATA & 0x03))
+fi
+
+FPGA_REG=52
+DATA=$(i2cget -y $I2CBUS $FPGAADDR $(printf "0x%x" $FPGA_REG))
+if [ $((DATA & 0x0F)) != 0 ] ; then
+ echo Thermal Error: H_0$((DATA & 0x0F))
+fi
+echo ------------- end of data -----------------
diff --git a/meta-amd/recipes-amd/packagegroups/packagegroup-amd-apps.bb b/meta-amd/recipes-amd/packagegroups/packagegroup-amd-apps.bb
index 13d59f5f4..7f1a6c67f 100644
--- a/meta-amd/recipes-amd/packagegroups/packagegroup-amd-apps.bb
+++ b/meta-amd/recipes-amd/packagegroups/packagegroup-amd-apps.bb
@@ -37,7 +37,9 @@ RDEPENDS_${PN}-flash = " \
SUMMARY_${PN}-system = "AMD System"
RDEPENDS_${PN}-system = " \
+ amd-fpga \
bmcweb \
+ dbus-sensors \
entity-manager \
ipmitool \
phosphor-hostlogger \
diff --git a/meta-ampere/conf/layer.conf b/meta-ampere/conf/layer.conf
index 20fb0b2a5..800936b1b 100644
--- a/meta-ampere/conf/layer.conf
+++ b/meta-ampere/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/meta-common/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "ampere-layer"
BBFILE_PATTERN_ampere-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_ampere-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_ampere-layer = "gatesgarth hardknott"
diff --git a/meta-ampere/meta-jade/conf/bblayers.conf.sample b/meta-ampere/meta-jade/conf/bblayers.conf.sample
index f4d7fc399..6e0893eb3 100644
--- a/meta-ampere/meta-jade/conf/bblayers.conf.sample
+++ b/meta-ampere/meta-jade/conf/bblayers.conf.sample
@@ -11,6 +11,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-ampere \
@@ -22,6 +23,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-ampere \
diff --git a/meta-ampere/meta-jade/conf/layer.conf b/meta-ampere/meta-jade/conf/layer.conf
index 2cf1805c7..e8abd6921 100644
--- a/meta-ampere/meta-jade/conf/layer.conf
+++ b/meta-ampere/meta-jade/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "jade-layer"
BBFILE_PATTERN_jade-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_jade-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_jade-layer = "gatesgarth hardknott"
diff --git a/meta-ampere/meta-jade/recipes-bsp/u-boot/u-boot-aspeed/0006-aspeed-support-Mt.Jade-platform-init.patch b/meta-ampere/meta-jade/recipes-bsp/u-boot/u-boot-aspeed/0006-aspeed-support-Mt.Jade-platform-init.patch
new file mode 100644
index 000000000..02a478362
--- /dev/null
+++ b/meta-ampere/meta-jade/recipes-bsp/u-boot/u-boot-aspeed/0006-aspeed-support-Mt.Jade-platform-init.patch
@@ -0,0 +1,175 @@
+From 2c9ab641f2a7ea146a468ec4301c416010badff7 Mon Sep 17 00:00:00 2001
+From: Chanh Nguyen <chanh@os.amperecomputing.com>
+Date: Wed, 17 Mar 2021 14:11:18 +0700
+Subject: [PATCH] aspeed: support Mt.Jade platform init
+
+This commit adds platform init for Mt.Jade platform.
+
+Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
+Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
+---
+ arch/arm/include/asm/arch-aspeed/ast_scu.h | 1 +
+ arch/arm/include/asm/arch-aspeed/regs-scu.h | 4 ++
+ arch/arm/mach-aspeed/ast-scu.c | 18 +++++
+ board/aspeed/ast-g5/ast-g5.c | 76 +++++++++++++++++++++
+ include/configs/ast-g5-phy.h | 3 +
+ 5 files changed, 102 insertions(+)
+
+diff --git a/arch/arm/include/asm/arch-aspeed/ast_scu.h b/arch/arm/include/asm/arch-aspeed/ast_scu.h
+index f5c9126ec0..e2d06ccc1f 100644
+--- a/arch/arm/include/asm/arch-aspeed/ast_scu.h
++++ b/arch/arm/include/asm/arch-aspeed/ast_scu.h
+@@ -46,5 +46,6 @@ extern void ast_scu_init_eth(u8 num);
+ extern void ast_scu_multi_func_eth(u8 num);
+ extern void ast_scu_multi_func_romcs(u8 num);
+ extern void ast_scu_switch_pwm_to_gpio_mode(void);
++extern void ast_scu_switch_espi_to_gpio_mode(void);
+
+ #endif
+diff --git a/arch/arm/include/asm/arch-aspeed/regs-scu.h b/arch/arm/include/asm/arch-aspeed/regs-scu.h
+index b714fa9234..704ad75b4e 100644
+--- a/arch/arm/include/asm/arch-aspeed/regs-scu.h
++++ b/arch/arm/include/asm/arch-aspeed/regs-scu.h
+@@ -76,6 +76,7 @@
+ #define AST_SCU_FUN_PIN_CTRL7 0xA0 /* Multi-function Pin Control#7*/
+ #define AST_SCU_FUN_PIN_CTRL8 0xA4 /* Multi-function Pin Control#8*/
+ #define AST_SCU_FUN_PIN_CTRL9 0xA8 /* Multi-function Pin Control#9*/
++#define AST_SCU_FUN_PIN_CTRL10 0xAC /* Multi-function Pin Control#10*/
+ #define AST_SCU_MAC_CLK_DELAY_100M 0xB8 /* MAC interface clock delay 100M setting*/
+ #define AST_SCU_MAC_CLK_DELAY_10M 0xBC /* MAC interface clock delay 10M setting*/
+ #define AST_SCU_PWR_SAVING_EN 0xC0 /* Power Saving Wakeup Enable*/
+@@ -921,6 +922,9 @@
+ #define SCU_FUN_PIN_ROMA19 (0x1 << 1)
+ #define SCU_FUN_PIN_ROMA18 (0x1)
+
++/* AST_SCU_FUN_PIN_CTRL10 0xAC - Multi-function Pin Control#10 */
++#define SCU_FUN_PIN_ESPI(x) (0x1 << (x))
++
+ /* AST_SCU_PWR_SAVING_EN 0xC0 - Power Saving Wakeup Enable */
+ /* AST_SCU_PWR_SAVING_CTRL 0xC4 - Power Saving Wakeup Control */
+ /* AST_SCU_HW_STRAP2 0xD0 - Haardware strapping register set 2 */
+diff --git a/arch/arm/mach-aspeed/ast-scu.c b/arch/arm/mach-aspeed/ast-scu.c
+index c7ab66415f..71c043d3e8 100644
+--- a/arch/arm/mach-aspeed/ast-scu.c
++++ b/arch/arm/mach-aspeed/ast-scu.c
+@@ -554,3 +554,21 @@ void ast_scu_get_who_init_dram(void)
+ break;
+ }
+ }
++
++void ast_scu_switch_espi_to_gpio_mode(void)
++{
++ /*
++ * This Function to set the ESPI pin to GPIO mode
++ * This allow to setting AC5_READY
++ */
++ ast_scu_write(ast_scu_read(AST_SCU_FUN_PIN_CTRL10) &
++ ~SCU_FUN_PIN_ESPI(0) &
++ ~SCU_FUN_PIN_ESPI(1) &
++ ~SCU_FUN_PIN_ESPI(2) &
++ ~SCU_FUN_PIN_ESPI(3) &
++ ~SCU_FUN_PIN_ESPI(4) &
++ ~SCU_FUN_PIN_ESPI(5) &
++ ~SCU_FUN_PIN_ESPI(6) &
++ ~SCU_FUN_PIN_ESPI(7),
++ AST_SCU_FUN_PIN_CTRL10);
++}
+diff --git a/board/aspeed/ast-g5/ast-g5.c b/board/aspeed/ast-g5/ast-g5.c
+index ed83d65136..edf7f050a8 100644
+--- a/board/aspeed/ast-g5/ast-g5.c
++++ b/board/aspeed/ast-g5/ast-g5.c
+@@ -163,3 +163,79 @@ void hw_watchdog_reset(void)
+ writel(0x4755, AST_WDT2_BASE + 0x08);
+ }
+ #endif /* CONFIG_WATCHDOG */
++
++#ifdef CONFIG_BOARD_EARLY_INIT_F
++int board_gpio_init(void)
++{
++ int pgood = 0;
++
++ /* GPIO_BMC_PSU_PG */
++ pgood = gpio_get_value(44);
++ /* GPIO_BMC_OCP_AUX_PWREN */
++ gpio_direction_output(139, 1);
++
++ if (pgood)
++ {
++ /* GPIO_BMC_SYS_ATX_PSON_L */
++ gpio_direction_output(42, 0);
++ /* GPIO_BMC_OCP_MAIN_PWREN */
++ gpio_direction_output(140, 1);
++ }
++ else
++ {
++ /* GPIO_BMC_SYS_ATX_PSON_L */
++ gpio_direction_output(42, 1);
++ /* GPIO_BMC_OCP_MAIN_PWREN */
++ gpio_direction_output(140, 0);
++ }
++
++ /* GPIOH7 GPIO_BMC_I2C6_RESET_L */
++ gpio_direction_output(63, 1);
++
++ /* GPIOM4 S0_I2C9_ALERT_L */
++ gpio_direction_input(100);
++
++ /* GPIOM5 S1_I2C9_ALERT_L */
++ gpio_direction_input(101);
++
++ /* GPIOQ7 GPIO_BMC_VGA_FRONT_PRES_L */
++ gpio_direction_input(135);
++
++ /* GPIOR1 GPIO_BMC_JTAG_SRST_L */
++ gpio_direction_output(137, 1);
++
++ /* BMC_GPIOR2_EXT_HIGHTEMP_L */
++ gpio_direction_output(138, 1);
++
++ /* GPIOS0 GPIO_S0_VRHOT_L */
++ gpio_direction_input(144);
++
++ /* GPIOS1 GPIO_S1_VRHOT_L */
++ gpio_direction_input(145);
++
++ /* GPIOS5 GPIO_BMC_VR_PMBUS_SEL_L */
++ gpio_direction_output(149, 1);
++
++ /* GPIOY3 BMC_VGA_SEL */
++ gpio_direction_output(195, 1);
++
++ /* GPIOAC1 GPIO_BMC_PCA9554_INT_L */
++ gpio_direction_input(225);
++
++ /* GPIO_BMC_READY */
++ gpio_direction_output(229, 1);
++
++ /* Enable I2C4 device access */
++ gpio_direction_output(194, 1);
++
++ return 0;
++}
++
++int board_early_init_f(void)
++{
++ ast_scu_switch_espi_to_gpio_mode();
++ board_gpio_init();
++
++ return 0;
++}
++#endif /* CONFIG_BOARD_EARLY_INIT_F */
+diff --git a/include/configs/ast-g5-phy.h b/include/configs/ast-g5-phy.h
+index ea7c66716a..a5e389616b 100644
+--- a/include/configs/ast-g5-phy.h
++++ b/include/configs/ast-g5-phy.h
+@@ -34,4 +34,7 @@
+ #define CONFIG_BOARD_LATE_INIT 1
+ #define CONFIG_CMD_GPIO 1 /* Enable gpio command in shell */
+
++/* Call board_early_init_f */
++#define CONFIG_BOARD_EARLY_INIT_F 1
++
+ #endif /* __AST_G5_PHY_CONFIG_H */
+--
+2.17.1
+
diff --git a/meta-ampere/meta-jade/recipes-bsp/u-boot/u-boot-aspeed_%.bbappend b/meta-ampere/meta-jade/recipes-bsp/u-boot/u-boot-aspeed_%.bbappend
index 0febf924d..5fbc69f2d 100644
--- a/meta-ampere/meta-jade/recipes-bsp/u-boot/u-boot-aspeed_%.bbappend
+++ b/meta-ampere/meta-jade/recipes-bsp/u-boot/u-boot-aspeed_%.bbappend
@@ -6,4 +6,5 @@ SRC_URI += " \
file://0003-aspeed-support-passing-system-reset-status-to-kernel.patch \
file://0004-aspeed-add-gpio-support.patch \
file://0005-aspeed-Enable-SPI-master-mode.patch \
+ file://0006-aspeed-support-Mt.Jade-platform-init.patch \
"
diff --git a/meta-ampere/meta-jade/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend b/meta-ampere/meta-jade/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend
index 980d9261d..c84a7f106 100644
--- a/meta-ampere/meta-jade/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend
+++ b/meta-ampere/meta-jade/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend
@@ -1,2 +1,2 @@
-RDEPENDS_${PN}-extras_append_mtjade = " phosphor-webui phosphor-image-signing"
+RDEPENDS_${PN}-extras_append_mtjade = " webui-vue phosphor-image-signing"
RDEPENDS_${PN}-inventory_append_mtjade = " fault-monitor id-button"
diff --git a/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend b/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
index e69b83e14..821c9b100 100644
--- a/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
+++ b/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
@@ -1,6 +1,6 @@
FILESEXTRAPATHS_append_mtjade := "${THISDIR}/${PN}:"
-EXTRA_OECONF_append_mtjade = " --enable-negative-errno-on-fail"
+EXTRA_OEMESON_append_mtjade = " -Dnegative-errno-on-fail=true"
CHIPS_mtjade = " \
bus@1e78a000/i2c-bus@100/tmp175@28 \
diff --git a/meta-arm/conf/layer.conf b/meta-arm/conf/layer.conf
index d0311258f..d111b24b8 100644
--- a/meta-arm/conf/layer.conf
+++ b/meta-arm/conf/layer.conf
@@ -9,4 +9,4 @@ BBFILE_COLLECTIONS += "arm"
BBFILE_PATTERN_arm = "^${LAYERDIR}/"
LAYERVERSION_arm = "1"
-LAYERSERIES_COMPAT_arm = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_arm = "gatesgarth hardknott"
diff --git a/meta-aspeed/conf/layer.conf b/meta-aspeed/conf/layer.conf
index 56a2dee1c..c0289753f 100644
--- a/meta-aspeed/conf/layer.conf
+++ b/meta-aspeed/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "aspeed-layer"
BBFILE_PATTERN_aspeed-layer := "^${LAYERDIR}/"
LAYERVERSION_aspeed-layer = "1"
-LAYERSERIES_COMPAT_aspeed-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_aspeed-layer = "gatesgarth hardknott"
diff --git a/meta-aspeed/recipes-kernel/linux/linux-aspeed_git.bb b/meta-aspeed/recipes-kernel/linux/linux-aspeed_git.bb
index 45f09d7a3..9df959114 100644
--- a/meta-aspeed/recipes-kernel/linux/linux-aspeed_git.bb
+++ b/meta-aspeed/recipes-kernel/linux/linux-aspeed_git.bb
@@ -1,6 +1,6 @@
KBRANCH ?= "dev-5.10"
-LINUX_VERSION ?= "5.10.23"
+LINUX_VERSION ?= "5.10.30"
-SRCREV="6687842ee68152c5cc7b7f8ac771b25eaece056a"
+SRCREV="d538d632fb2046278ff3457994d64d43ee2901c7"
require linux-aspeed.inc
diff --git a/meta-bytedance/conf/layer.conf b/meta-bytedance/conf/layer.conf
index 1f36655ca..1428987a1 100644
--- a/meta-bytedance/conf/layer.conf
+++ b/meta-bytedance/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "bytedance-layer"
BBFILE_PATTERN_bytedance-layer = "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_bytedance-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_bytedance-layer = "gatesgarth hardknott"
diff --git a/meta-bytedance/meta-g220a/conf/bblayers.conf.sample b/meta-bytedance/meta-g220a/conf/bblayers.conf.sample
index f00148158..370d6456f 100644
--- a/meta-bytedance/meta-g220a/conf/bblayers.conf.sample
+++ b/meta-bytedance/meta-g220a/conf/bblayers.conf.sample
@@ -11,6 +11,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-bytedance \
@@ -22,6 +23,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-bytedance \
diff --git a/meta-bytedance/meta-g220a/conf/layer.conf b/meta-bytedance/meta-g220a/conf/layer.conf
index 8c075e539..0d28b4a09 100644
--- a/meta-bytedance/meta-g220a/conf/layer.conf
+++ b/meta-bytedance/meta-g220a/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "g220a-layer"
BBFILE_PATTERN_g220a-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_g220a-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_g220a-layer = "gatesgarth hardknott"
diff --git a/meta-evb/meta-evb-aspeed/meta-evb-ast2500/conf/bblayers.conf.sample b/meta-evb/meta-evb-aspeed/meta-evb-ast2500/conf/bblayers.conf.sample
index a13721955..83c22c5b6 100644
--- a/meta-evb/meta-evb-aspeed/meta-evb-ast2500/conf/bblayers.conf.sample
+++ b/meta-evb/meta-evb-aspeed/meta-evb-ast2500/conf/bblayers.conf.sample
@@ -10,8 +10,10 @@ BBLAYERS ?= " \
##OEROOT##/meta-poky \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-evb \
@@ -23,8 +25,10 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-poky \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-evb \
diff --git a/meta-evb/meta-evb-aspeed/meta-evb-ast2600/conf/bblayers.conf.sample b/meta-evb/meta-evb-aspeed/meta-evb-ast2600/conf/bblayers.conf.sample
index f9f079a26..de8ab1312 100644
--- a/meta-evb/meta-evb-aspeed/meta-evb-ast2600/conf/bblayers.conf.sample
+++ b/meta-evb/meta-evb-aspeed/meta-evb-ast2600/conf/bblayers.conf.sample
@@ -10,7 +10,9 @@ BBLAYERS ?= " \
##OEROOT##/meta-poky \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-evb/meta-evb-aspeed/meta-evb-ast2600 \
@@ -20,7 +22,9 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-poky \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-evb/meta-evb-aspeed/meta-evb-ast2600 \
diff --git a/meta-evb/meta-evb-aspeed/meta-evb-ast2600/conf/layer.conf b/meta-evb/meta-evb-aspeed/meta-evb-ast2600/conf/layer.conf
index 2a88b8aa2..75861bfe6 100644
--- a/meta-evb/meta-evb-aspeed/meta-evb-ast2600/conf/layer.conf
+++ b/meta-evb/meta-evb-aspeed/meta-evb-ast2600/conf/layer.conf
@@ -8,4 +8,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "meta-evb-ast2600"
BBFILE_PATTERN_meta-evb-ast2600 = "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_meta-evb-ast2600 = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_meta-evb-ast2600 = "gatesgarth hardknott"
diff --git a/meta-evb/meta-evb-enclustra/conf/layer.conf b/meta-evb/meta-evb-enclustra/conf/layer.conf
index 9dbc04525..35ca2eba3 100644
--- a/meta-evb/meta-evb-enclustra/conf/layer.conf
+++ b/meta-evb/meta-evb-enclustra/conf/layer.conf
@@ -3,4 +3,4 @@ BBPATH .= ":${LAYERDIR}"
BBFILE_COLLECTIONS += "evb-enclustra"
BBFILE_PATTERN_evb-enclustra = ""
-LAYERSERIES_COMPAT_evb-enclustra = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_evb-enclustra = "gatesgarth hardknott"
diff --git a/meta-evb/meta-evb-enclustra/meta-evb-zx3-pm3/conf/bblayers.conf.sample b/meta-evb/meta-evb-enclustra/meta-evb-zx3-pm3/conf/bblayers.conf.sample
index f1f9b4e9c..122192f9a 100644
--- a/meta-evb/meta-evb-enclustra/meta-evb-zx3-pm3/conf/bblayers.conf.sample
+++ b/meta-evb/meta-evb-enclustra/meta-evb-zx3-pm3/conf/bblayers.conf.sample
@@ -13,6 +13,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-xilinx/meta-xilinx-bsp/ \
##OEROOT##/meta-evb \
@@ -27,6 +28,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-xilinx/meta-xilinx-bsp/ \
##OEROOT##/meta-evb \
diff --git a/meta-evb/meta-evb-enclustra/meta-evb-zx3-pm3/conf/layer.conf b/meta-evb/meta-evb-enclustra/meta-evb-zx3-pm3/conf/layer.conf
index 648a0bad7..6cc86c4af 100644
--- a/meta-evb/meta-evb-enclustra/meta-evb-zx3-pm3/conf/layer.conf
+++ b/meta-evb/meta-evb-enclustra/meta-evb-zx3-pm3/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "evb-zx3-pm3"
BBFILE_PATTERN_evb-zx3-pm3 = ""
-LAYERSERIES_COMPAT_evb-zx3-pm3 = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_evb-zx3-pm3 = "gatesgarth hardknott"
diff --git a/meta-evb/meta-evb-nuvoton/conf/layer.conf b/meta-evb/meta-evb-nuvoton/conf/layer.conf
index 52eec4958..bdea5d674 100644
--- a/meta-evb/meta-evb-nuvoton/conf/layer.conf
+++ b/meta-evb/meta-evb-nuvoton/conf/layer.conf
@@ -3,4 +3,4 @@ BBPATH .= ":${LAYERDIR}"
BBFILE_COLLECTIONS += "evb-nuvoton"
BBFILE_PATTERN_evb-nuvoton = ""
-LAYERSERIES_COMPAT_evb-nuvoton = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_evb-nuvoton = "gatesgarth hardknott"
diff --git a/meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/bblayers.conf.sample b/meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/bblayers.conf.sample
index 74cbfac01..ee62cea41 100644
--- a/meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/bblayers.conf.sample
+++ b/meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/bblayers.conf.sample
@@ -10,7 +10,9 @@ BBLAYERS ?= " \
##OEROOT##/meta-poky \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-nuvoton \
##OEROOT##/meta-evb \
@@ -22,7 +24,9 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-poky \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-nuvoton \
##OEROOT##/meta-evb \
diff --git a/meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/layer.conf b/meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/layer.conf
index 95fd769fb..65945156b 100644
--- a/meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/layer.conf
+++ b/meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/layer.conf
@@ -3,4 +3,4 @@ BBPATH .= ":${LAYERDIR}"
BBFILE_COLLECTIONS += "evb-npcm750"
BBFILE_PATTERN_evb-npcm750 = ""
-LAYERSERIES_COMPAT_evb-npcm750 = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_evb-npcm750 = "gatesgarth hardknott"
diff --git a/meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/machine/evb-npcm750.conf b/meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/machine/evb-npcm750.conf
new file mode 120000
index 000000000..51ebe36ac
--- /dev/null
+++ b/meta-evb/meta-evb-nuvoton/meta-evb-npcm750/conf/machine/evb-npcm750.conf
@@ -0,0 +1 @@
+../../../../../meta-nuvoton/conf/machine/evb-npcm750.conf \ No newline at end of file
diff --git a/meta-evb/meta-evb-raspberrypi/conf/bblayers.conf.sample b/meta-evb/meta-evb-raspberrypi/conf/bblayers.conf.sample
index d34db13a0..6e838d799 100644
--- a/meta-evb/meta-evb-raspberrypi/conf/bblayers.conf.sample
+++ b/meta-evb/meta-evb-raspberrypi/conf/bblayers.conf.sample
@@ -10,8 +10,10 @@ BBLAYERS ?= " \
##OEROOT##/meta-poky \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-raspberrypi \
"
@@ -20,8 +22,10 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-poky \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-raspberrypi \
"
diff --git a/meta-facebook/conf/layer.conf b/meta-facebook/conf/layer.conf
index aa0e82f55..c0ca08f37 100644
--- a/meta-facebook/conf/layer.conf
+++ b/meta-facebook/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "facebook-layer"
BBFILE_PATTERN_facebook-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_facebook-layer := "dunfell gatesgarth"
+LAYERSERIES_COMPAT_facebook-layer := "gatesgarth hardknott"
diff --git a/meta-facebook/meta-tiogapass/conf/bblayers.conf.sample b/meta-facebook/meta-tiogapass/conf/bblayers.conf.sample
index a452dd666..d8d02ae93 100644
--- a/meta-facebook/meta-tiogapass/conf/bblayers.conf.sample
+++ b/meta-facebook/meta-tiogapass/conf/bblayers.conf.sample
@@ -13,6 +13,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-facebook \
@@ -26,6 +27,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-facebook \
diff --git a/meta-facebook/meta-tiogapass/conf/layer.conf b/meta-facebook/meta-tiogapass/conf/layer.conf
index 1ef53dbe9..94db7e114 100644
--- a/meta-facebook/meta-tiogapass/conf/layer.conf
+++ b/meta-facebook/meta-tiogapass/conf/layer.conf
@@ -8,4 +8,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "tiogapass-layer"
BBFILE_PATTERN_tiogapass-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_tiogapass-layer := "dunfell gatesgarth"
+LAYERSERIES_COMPAT_tiogapass-layer := "gatesgarth hardknott"
diff --git a/meta-facebook/meta-yosemitev2/conf/bblayers.conf.sample b/meta-facebook/meta-yosemitev2/conf/bblayers.conf.sample
index 30d405903..18dc94472 100644
--- a/meta-facebook/meta-yosemitev2/conf/bblayers.conf.sample
+++ b/meta-facebook/meta-yosemitev2/conf/bblayers.conf.sample
@@ -13,6 +13,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-facebook \
@@ -26,6 +27,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-facebook \
diff --git a/meta-facebook/meta-yosemitev2/conf/layer.conf b/meta-facebook/meta-yosemitev2/conf/layer.conf
index 4db441577..977d5df67 100644
--- a/meta-facebook/meta-yosemitev2/conf/layer.conf
+++ b/meta-facebook/meta-yosemitev2/conf/layer.conf
@@ -8,4 +8,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "yosemitev2-layer"
BBFILE_PATTERN_yosemitev2-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_yosemitev2-layer := "dunfell gatesgarth"
+LAYERSERIES_COMPAT_yosemitev2-layer := "gatesgarth hardknott"
diff --git a/meta-facebook/recipes-fb/ipmi/fb-ipmi-oem_git.bb b/meta-facebook/recipes-fb/ipmi/fb-ipmi-oem_git.bb
index 6cc2450c5..28586a989 100755
--- a/meta-facebook/recipes-fb/ipmi/fb-ipmi-oem_git.bb
+++ b/meta-facebook/recipes-fb/ipmi/fb-ipmi-oem_git.bb
@@ -5,7 +5,7 @@ LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=9e69ba356fa59848ffd865152a3ccc13"
SRC_URI = "git://github.com/openbmc/fb-ipmi-oem"
-SRCREV = "c723d6a5917cde0808713bc57934eb503fa20b8a"
+SRCREV = "58c1ca2f7cc58eacc059486bacb66d152de0631c"
S = "${WORKDIR}/git"
PV = "0.1+git${SRCPV}"
diff --git a/meta-facebook/recipes-fb/packagegroups/packagegroup-fb-apps.bb b/meta-facebook/recipes-fb/packagegroups/packagegroup-fb-apps.bb
index 86fac887c..b2ec84b65 100644
--- a/meta-facebook/recipes-fb/packagegroups/packagegroup-fb-apps.bb
+++ b/meta-facebook/recipes-fb/packagegroups/packagegroup-fb-apps.bb
@@ -52,4 +52,5 @@ RDEPENDS_${PN}-system = " \
ipmitool \
phosphor-post-code-manager \
phosphor-host-postd \
+ phosphor-virtual-sensor \
"
diff --git a/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/tiogapass/ttyS2.conf b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/tiogapass/ttyS2.conf
new file mode 100644
index 000000000..5716c4a60
--- /dev/null
+++ b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/tiogapass/ttyS2.conf
@@ -0,0 +1,7 @@
+SOCKET_ID=
+BUF_MAXSIZE=3000
+BUF_MAXTIME=0
+FLUSH_FULL=false
+HOST_STATE=/xyz/openbmc_project/state/host0
+OUT_DIR=/var/lib/obmc/hostlogs/host0
+MAX_FILES=10
diff --git a/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS0.conf b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS0.conf
new file mode 100644
index 000000000..a9e5e4429
--- /dev/null
+++ b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS0.conf
@@ -0,0 +1,7 @@
+SOCKET_ID=host0
+BUF_MAXSIZE=3000
+BUF_MAXTIME=0
+FLUSH_FULL=false
+HOST_STATE=/xyz/openbmc_project/state/host1
+OUT_DIR=/var/lib/obmc/hostlogs/host1
+MAX_FILES=10
diff --git a/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS1.conf b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS1.conf
new file mode 100644
index 000000000..78ea5bfa0
--- /dev/null
+++ b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS1.conf
@@ -0,0 +1,7 @@
+SOCKET_ID=host1
+BUF_MAXSIZE=3000
+BUF_MAXTIME=0
+FLUSH_FULL=false
+HOST_STATE=/xyz/openbmc_project/state/host2
+OUT_DIR=/var/lib/obmc/hostlogs/host2
+MAX_FILES=10
diff --git a/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS2.conf b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS2.conf
new file mode 100644
index 000000000..2bcc641a4
--- /dev/null
+++ b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS2.conf
@@ -0,0 +1,7 @@
+SOCKET_ID=host2
+BUF_MAXSIZE=3000
+BUF_MAXTIME=0
+FLUSH_FULL=false
+HOST_STATE=/xyz/openbmc_project/state/host3
+OUT_DIR=/var/lib/obmc/hostlogs/host3
+MAX_FILES=10
diff --git a/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS3.conf b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS3.conf
new file mode 100644
index 000000000..59bdb866e
--- /dev/null
+++ b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/yosemitev2/ttyS3.conf
@@ -0,0 +1,7 @@
+SOCKET_ID=host3
+BUF_MAXSIZE=3000
+BUF_MAXTIME=0
+FLUSH_FULL=false
+HOST_STATE=/xyz/openbmc_project/state/host4
+OUT_DIR=/var/lib/obmc/hostlogs/host4
+MAX_FILES=10
diff --git a/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger_%.bbappend b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger_%.bbappend
new file mode 100644
index 000000000..3c280ceba
--- /dev/null
+++ b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger_%.bbappend
@@ -0,0 +1,17 @@
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+
+SRC_URI += "file://ttyS2.conf"
+
+SRC_URI_append_yosemitev2 += "file://ttyS0.conf"
+SRC_URI_append_yosemitev2 += "file://ttyS1.conf"
+SRC_URI_append_yosemitev2 += "file://ttyS3.conf"
+
+do_install_append() {
+
+ # Install the configurations
+ install -m 0755 -d ${D}${sysconfdir}/${BPN}
+ install -m 0644 ${WORKDIR}/*.conf ${D}${sysconfdir}/${BPN}/
+
+ # Remove upstream-provided default configuration
+ rm -f ${D}${sysconfdir}/${BPN}/ttyVUART0.conf
+}
diff --git a/meta-facebook/recipes-phosphor/sensors/phosphor-virtual-sensor/tiogapass/tiogapass_sensor_config.json b/meta-facebook/recipes-phosphor/sensors/phosphor-virtual-sensor/tiogapass/tiogapass_sensor_config.json
new file mode 100644
index 000000000..a394faef8
--- /dev/null
+++ b/meta-facebook/recipes-phosphor/sensors/phosphor-virtual-sensor/tiogapass/tiogapass_sensor_config.json
@@ -0,0 +1,46 @@
+[
+ {
+ "Desc" :
+ {
+ "Name" : "Virtual_Inlet_Temp",
+ "SensorType" : "temperature"
+ },
+ "Threshold" :
+ {
+ "CriticalHigh": 90,
+ "CriticalLow": 20,
+ "WarningHigh": 70,
+ "WarningLow": 30
+ },
+ "Params":
+ {
+ "ConstParam" :
+ [
+ {
+ "ParamName" : "P1",
+ "Value" : 1.1
+ }
+ ],
+ "DbusParam" :
+ [
+ {
+ "ParamName" : "P2",
+ "Desc" :
+ {
+ "Name" : "MB_INLET_TEMP",
+ "SensorType" : "temperature"
+ }
+ },
+ {
+ "ParamName" : "P3",
+ "Desc" :
+ {
+ "Name" : "MB_FAN0_TACH",
+ "SensorType" : "fan_tach"
+ }
+ }
+ ]
+ },
+ "Expression" : "P1 * (P2 + 5 - P3 * 0.01)"
+ }
+]
diff --git a/meta-facebook/recipes-phosphor/sensors/phosphor-virtual-sensor/yosemitev2/yosemitev2_sensor_config.json b/meta-facebook/recipes-phosphor/sensors/phosphor-virtual-sensor/yosemitev2/yosemitev2_sensor_config.json
new file mode 100644
index 000000000..c56712dbd
--- /dev/null
+++ b/meta-facebook/recipes-phosphor/sensors/phosphor-virtual-sensor/yosemitev2/yosemitev2_sensor_config.json
@@ -0,0 +1,51 @@
+[
+ {
+ "Desc" :
+ {
+ "Name" : "Virtual_CFM_Sensor",
+ "SensorType" : "airflow"
+ },
+ "Threshold" :
+ {
+ "CriticalHigh": 40,
+ "CriticalLow": 10,
+ "WarningHigh": 30,
+ "WarningLow": 15
+ },
+ "Params":
+ {
+ "ConstParam" :
+ [
+ {
+ "ParamName" : "P1",
+ "Value" : 0.00565
+ },
+ {
+ "ParamName" : "P2",
+ "Value" : 3.7427
+ }
+ ],
+ "DbusParam" :
+ [
+ {
+ "ParamName" : "P3",
+ "Desc" :
+ {
+ "Name" : "SP_FAN0_TACH",
+ "SensorType" : "fan_tach"
+ }
+ },
+ {
+ "ParamName" : "P4",
+ "Desc" :
+ {
+ "Name" : "SP_FAN1_TACH",
+ "SensorType" : "fan_tach"
+ }
+ }
+ ]
+ },
+ "Expression" : "(P3 * P1) + (P4 * P1) - P2"
+ }
+]
+
diff --git a/meta-facebook/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend b/meta-facebook/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend
new file mode 100644
index 000000000..94650bab6
--- /dev/null
+++ b/meta-facebook/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend
@@ -0,0 +1,11 @@
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}/${MACHINE}:"
+
+SRC_URI_append = " file://${MACHINE}_sensor_config.json"
+
+do_install_append() {
+
+ install -d ${D}/usr/share/phosphor-virtual-sensor
+
+ install -m 0644 -D ${WORKDIR}/${MACHINE}_sensor_config.json \
+ ${D}/usr/share/phosphor-virtual-sensor/virtual_sensor_config.json
+}
diff --git a/meta-facebook/recipes-x86/chassis/x86-power-control/yosemitev2/chassis-system-reset.service b/meta-facebook/recipes-x86/chassis/x86-power-control/yosemitev2/chassis-system-reset.service
new file mode 100644
index 000000000..91cbc90df
--- /dev/null
+++ b/meta-facebook/recipes-x86/chassis/x86-power-control/yosemitev2/chassis-system-reset.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=System unit to hard reset or system reset chassis for yosemitev2
+
+[Service]
+Type=oneshot
+RemainAfterExit=no
+ExecStart=i2cset -f -y 10 0x40 0xd9 c
+
+[Install]
+WantedBy=chassis-system-reset.target
+
diff --git a/meta-fii/OWNERS b/meta-fii/OWNERS
index 847f9142d..3fb7829f6 100644
--- a/meta-fii/OWNERS
+++ b/meta-fii/OWNERS
@@ -2,5 +2,6 @@ owners:
- benjaminfair@google.com
- vveerach@google.com
- lancelot.kao@fii-usa.com
-- Mohaimen.Alsamarai@fii-na.com
-# - Xiao-Peng.Chen@fii-na.com
+- mohaimen.alsamarai@fii-na.com
+- xiao-peng.chen@fii-na.com
+- mustafa.shehabi@fii-na.com
diff --git a/meta-fii/meta-kudo/conf/bblayers.conf.sample b/meta-fii/meta-kudo/conf/bblayers.conf.sample
index 9fe42076b..f8958b950 100644
--- a/meta-fii/meta-kudo/conf/bblayers.conf.sample
+++ b/meta-fii/meta-kudo/conf/bblayers.conf.sample
@@ -9,7 +9,9 @@ BBLAYERS ?= " \
##OEROOT##/meta \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-nuvoton \
##OEROOT##/meta-google \
@@ -19,7 +21,9 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-nuvoton \
##OEROOT##/meta-google \
diff --git a/meta-fii/meta-kudo/conf/layer.conf b/meta-fii/meta-kudo/conf/layer.conf
index e5a3c34af..84da9fb54 100644
--- a/meta-fii/meta-kudo/conf/layer.conf
+++ b/meta-fii/meta-kudo/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "kudo-layer"
BBFILE_PATTERN_kudo-layer = "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_kudo-layer = "warrior zeus dunfell"
+LAYERSERIES_COMPAT_kudo-layer = "warrior zeus gatesgarth dunfell"
diff --git a/meta-fii/meta-kudo/conf/machine/kudo.conf b/meta-fii/meta-kudo/conf/machine/kudo.conf
index 31036a4ff..c136987c7 100644
--- a/meta-fii/meta-kudo/conf/machine/kudo.conf
+++ b/meta-fii/meta-kudo/conf/machine/kudo.conf
@@ -7,15 +7,24 @@ require conf/machine/include/obmc-bsp-common.inc
FLASH_SIZE = "65536"
FLASH_UBOOT_OFFSET = "0"
FLASH_KERNEL_OFFSET = "2048"
-FLASH_ROFS_OFFSET = "8192"
-FLASH_RWFS_OFFSET = "62464"
+FLASH_ROFS_OFFSET = "7168"
+FLASH_RWFS_OFFSET = "62400"
UBOOT_MACHINE = "PolegSVB_config"
UBOOT_DEVICETREE = "nuvoton-npcm730-kudo"
IGPS_MACHINE = "EB"
+GBMC_MAC_EEPROM_OF_NAME = "bmcfru"
+GBMC_MAC_IF_MAP = "eth0"
+GBMC_NCSI_IF_NAME = "eth0"
+
IMAGE_FSTYPES += " cpio.${INITRAMFS_CTYPE}.u-boot"
-VIRTUAL-RUNTIME_obmc-fan-control = "phosphor-pid-control"
+OBMC_MACHINE_FEATURES += " \
+ obmc-host-ipmi \
+ "
+
PREFERRED_PROVIDER_virtual/obmc-fan-control = "phosphor-pid-control"
PREFERRED_PROVIDER_virtual/obmc-system-mgmt = "packagegroup-kudo-apps"
+PREFERRED_PROVIDER_virtual/obmc-host-ipmi-hw = "phosphor-ipmi-ssif"
+PREFERRED_PROVIDER_virtual/obmc-flash-mgmt = "packagegroup-kudo-apps"
diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-common-kudo.inc b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-common-kudo.inc
deleted file mode 100644
index 9154bc131..000000000
--- a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-common-kudo.inc
+++ /dev/null
@@ -1,3 +0,0 @@
-UBRANCH = "npcm7xx-v2019.01"
-SRC_URI = "git://github.com/Nuvoton-Israel/u-boot.git;branch=${UBRANCH}"
-SRCREV = "5caf59416ba1d6316dd78895e69789246a77e00a"
diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/fixed_phy.cfg b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/fixed_phy.cfg
deleted file mode 100644
index 125522f84..000000000
--- a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/fixed_phy.cfg
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_PHY_FIXED=y
-
diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/kudo.cfg b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/kudo.cfg
index 417ffa98c..58839d9fd 100644
--- a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/kudo.cfg
+++ b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/kudo.cfg
@@ -1,2 +1,3 @@
+CONFIG_PHY_FIXED=y
CONFIG_CMD_MII=y
CONFIG_NET_RANDOM_ETHADDR=y
diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton_%.bbappend b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton_%.bbappend
index 73ad51e15..1c1383680 100644
--- a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton_%.bbappend
+++ b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton_%.bbappend
@@ -1,10 +1,3 @@
-FILESEXTRAPATHS_prepend_kudo := "${THISDIR}/u-boot-nuvoton:"
+FILESEXTRAPATHS_prepend_kudo := "${THISDIR}/${PN}:"
-require u-boot-common-kudo.inc
-
-UBOOT_MAKE_TARGET_append_kudo = " DEVICE_TREE=${UBOOT_DEVICETREE}"
-
-SRC_URI_append_kudo = " \
- file://fixed_phy.cfg \
- file://kudo.cfg \
- "
+SRC_URI_append_kudo = " file://kudo.cfg"
diff --git a/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.service b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.service
new file mode 100644
index 000000000..8f3a2bc31
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Rotate the event logs
+
+[Service]
+Type=simple
+ExecStart=/usr/bin/rotate-event-logs.sh
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.sh b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.sh
new file mode 100644
index 000000000..5a8c5cc10
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+while true; do
+ sleep 60
+ /usr/sbin/logrotate /etc/logrotate.d/logrotate.rsyslog
+ ec=$?
+ if [ $ec -ne 0 ] ; then
+ echo "logrotate failed ($ec)"
+ fi
+done
diff --git a/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog-override.conf b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog-override.conf
new file mode 100644
index 000000000..14bcc0781
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog-override.conf
@@ -0,0 +1,2 @@
+[Service]
+ExecReload=/bin/kill -HUP $MAINPID
diff --git a/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.conf b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.conf
new file mode 100644
index 000000000..46a287eef
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.conf
@@ -0,0 +1,79 @@
+# if you experience problems, check
+# http://www.rsyslog.com/troubleshoot for assistance
+
+# rsyslog v3: load input modules
+# If you do not load inputs, nothing happens!
+# You may need to set the module load path if modules are not found.
+#
+# Ported from debian's sysklogd.conf
+
+# Journal-style logging
+# Limit to no more than 2000 entries in one minute and enable the
+# journal workaround to avoid duplicate entries
+module(load="imjournal" StateFile="/var/log/state"
+ RateLimit.Interval="60"
+ RateLimit.Burst="2000")
+
+# Template for IPMI SEL messages
+# "<timestamp> <ID>,<Type>,<EventData>,[<Generator ID>,<Path>,<Direction>]"
+template(name="IPMISELTemplate" type="list") {
+ property(name="timereported" dateFormat="rfc3339")
+ constant(value=" ")
+ property(name="$!IPMI_SEL_RECORD_ID")
+ constant(value=",")
+ property(name="$!IPMI_SEL_RECORD_TYPE")
+ constant(value=",")
+ property(name="$!IPMI_SEL_DATA")
+ constant(value=",")
+ property(name="$!IPMI_SEL_GENERATOR_ID")
+ constant(value=",")
+ property(name="$!IPMI_SEL_SENSOR_PATH")
+ constant(value=",")
+ property(name="$!IPMI_SEL_EVENT_DIR")
+ constant(value="\n")
+}
+
+# Template for Redfish messages
+# "<timestamp> <MessageId>,<MessageArgs>"
+template(name="RedfishTemplate" type="list") {
+ property(name="timereported" dateFormat="rfc3339")
+ constant(value=" ")
+ property(name="$!REDFISH_MESSAGE_ID")
+ constant(value=",")
+ property(name="$!REDFISH_MESSAGE_ARGS")
+ constant(value="\n")
+}
+
+# Template for Application Crashes
+# "<timestamp> <MessageId>,<MessageArgs>"
+template(name="CrashTemplate" type="list") {
+ property(name="timereported" dateFormat="rfc3339")
+ constant(value=" ")
+ constant(value="OpenBMC.0.1.ServiceFailure")
+ constant(value=",")
+ property(name="$!UNIT")
+ constant(value="\n")
+}
+
+
+# If the journal entry has the IPMI SEL MESSAGE_ID, save as IPMI SEL
+# The MESSAGE_ID string is generated using journalctl and must match the
+# MESSAGE_ID used in IPMI to correctly find the SEL entries.
+if ($!MESSAGE_ID == "b370836ccf2f4850ac5bee185b77893a") then {
+ action(type="omfile" file="/var/log/ipmi_sel" template="IPMISELTemplate")
+}
+
+# If the journal entry has a Redfish MessageId, save as a Redfish event
+if ($!REDFISH_MESSAGE_ID != "") then {
+ action(type="omfile" file="/var/log/redfish" template="RedfishTemplate")
+}
+
+# If the journal entry has a Exit Code, save as a Redfish event
+if ($!EXIT_STATUS != "" and $!EXIT_STATUS != "0") then {
+ action(type="omfile" file="/var/log/redfish" template="CrashTemplate")
+}
+
+#
+# Include all config files in /etc/rsyslog.d/
+#
+$IncludeConfig /etc/rsyslog.d/*.conf
diff --git a/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate
new file mode 100644
index 000000000..a6ba28d86
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate
@@ -0,0 +1,22 @@
+# /etc/logrotate.d/rsyslog - Ported from Debian
+
+# Keep up to four 64k files for ipmi_sel (256k total)
+/var/log/ipmi_sel
+{
+ rotate 3
+ size 64k
+ missingok
+ postrotate
+ systemctl reload rsyslog 2> /dev/null || true
+ endscript
+}
+# Keep up to four 64k files for redfish (256k total)
+/var/log/redfish
+{
+ rotate 3
+ size 64k
+ missingok
+ postrotate
+ systemctl reload rsyslog 2> /dev/null || true
+ endscript
+}
diff --git a/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog_%.bbappend b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog_%.bbappend
new file mode 100644
index 000000000..278debb32
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog_%.bbappend
@@ -0,0 +1,25 @@
+FILESEXTRAPATHS_prepend_kudo := "${THISDIR}/${PN}:"
+
+SRC_URI_append_kudo = " \
+ file://rsyslog.conf \
+ file://rsyslog.logrotate \
+ file://rotate-event-logs.service \
+ file://rotate-event-logs.sh \
+ file://rsyslog-override.conf \
+ "
+
+FILES_${PN}_append_kudo = " ${systemd_system_unitdir}/rsyslog.service.d/rsyslog-override.conf"
+
+PACKAGECONFIG_append_kudo = " imjournal"
+
+do_install_append_kudo() {
+ install -m 0644 ${WORKDIR}/rotate-event-logs.service ${D}${systemd_system_unitdir}
+ install -d ${D}${systemd_system_unitdir}/rsyslog.service.d
+ install -m 0644 ${WORKDIR}/rsyslog-override.conf \
+ ${D}${systemd_system_unitdir}/rsyslog.service.d/rsyslog-override.conf
+ install -d ${D}${bindir}
+ install -m 0755 ${WORKDIR}/rotate-event-logs.sh ${D}/${bindir}/rotate-event-logs.sh
+ rm ${D}${sysconfdir}/rsyslog.d/imjournal.conf
+}
+
+SYSTEMD_SERVICE_${PN}_append_kudo = " rotate-event-logs.service"
diff --git a/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton/kudo.cfg b/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton/kudo.cfg
index 0811dd9d9..c43b0745b 100644
--- a/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton/kudo.cfg
+++ b/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton/kudo.cfg
@@ -30,21 +30,15 @@ CONFIG_SQUASHFS_XZ=y
CONFIG_JFFS2_FS=y
CONFIG_EXT4_FS=y
+# SPI
CONFIG_SPI=y
CONFIG_SPI_NPCM_FIU=y
CONFIG_MTD_M25P80=y
CONFIG_SPI_NPCM_PSPI=y
-CONFIG_NET_NCSI=y
-
-CONFIG_EEPROM_AT24=y
-CONFIG_I2C_MUX=y
-CONFIG_I2C_MUX_PCA954x=y
-CONFIG_I2C_SLAVE_EEPROM=y
-CONFIG_GPIO_PCA953X=y
-CONFIG_GPIO_PCA953X_IRQ=y
-CONFIG_GPIO_PCF857X=y
-CONFIG_MUX_MMIO=y
+#
+# USB configuration
+#
CONFIG_USB_U_ETHER=y
CONFIG_USB_F_ECM=y
CONFIG_USB_F_EEM=y
@@ -58,6 +52,23 @@ CONFIG_USB_CONFIGFS_RNDIS=y
CONFIG_USB_CONFIGFS_EEM=y
CONFIG_USB_CONFIGFS_MASS_STORAGE=y
CONFIG_USB_CONFIGFS_F_HID=y
+CONFIG_USB_GADGET_NPCM_USB2=y
+
+#
+# Nuvoton emc device
+#
+CONFIG_NET_VENDOR_NUVOTON=y
+CONFIG_NPCM7XX_EMC_ETH=y
+CONFIG_NET_NCSI=y
+
+CONFIG_EEPROM_AT24=y
+CONFIG_I2C_MUX=y
+CONFIG_I2C_MUX_PCA954x=y
+CONFIG_I2C_SLAVE_EEPROM=y
+CONFIG_GPIO_PCA953X=y
+CONFIG_GPIO_PCA953X_IRQ=y
+CONFIG_GPIO_PCF857X=y
+CONFIG_MUX_MMIO=y
CONFIG_MEDIA_SUPPORT=y
CONFIG_VIDEO_NUVOTON=y
@@ -65,8 +76,6 @@ CONFIG_NPCM750_VCD=y
CONFIG_NPCM750_ECE=y
CONFIG_FORCE_MAX_ZONEORDER=12
-CONFIG_USB_GADGET_NPCM_USB2=y
-
CONFIG_NPCM7XX_PCI_MBOX=y
CONFIG_RESET_NPCM=y
@@ -74,6 +83,13 @@ CONFIG_RESET_NPCM=y
CONFIG_I2C_SLAVE=y
CONFIG_I2C_SLAVE_MQUEUE=y
CONFIG_IPMB_DEVICE_INTERFACE=y
+
+# RTC device
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_DRV_PCF85063=y
+
+#
+# JATG Configuration
CONFIG_NUVOTON_JTAG=y
CONFIG_NPCM7XX_JTAG_MASTER=y
@@ -103,6 +119,5 @@ CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_TARGET_REJECT=y
CONFIG_NF_DEFRAG_IPV6=y
-
CONFIG_TCG_TPM=y
CONFIG_TCG_TIS_I2C_INFINEON=y
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update.bb b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update.bb
new file mode 100644
index 000000000..b126bfc8c
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update.bb
@@ -0,0 +1,33 @@
+SUMMARY = "Phosphor OpenBMC Kudo BIOS Firmware Upgrade Command"
+DESCRIPTION = "Phosphor OpenBMC Kudo BIOS Firmware Upgrade Comman Daemon"
+
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+inherit systemd
+inherit obmc-phosphor-systemd
+
+DEPENDS += "systemd"
+DEPENDS += "phosphor-ipmi-flash"
+RDEPENDS_${PN} += "libsystemd"
+RDEPENDS_${PN} += "bash"
+
+FILES_${PN} += "${datadir}/phosphor-ipmi-flash/config-bios.json"
+
+SRC_URI_append_kudo = " \
+ file://phosphor-ipmi-flash-bios-update.service \
+ file://config-bios.json \
+ "
+
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE_${PN}_append_kudo = " \
+ phosphor-ipmi-flash-bios-update.service \
+ "
+
+do_install () {
+ install -d ${D}${datadir}/phosphor-ipmi-flash
+ install -m 0644 ${WORKDIR}/config-bios.json ${D}${datadir}/phosphor-ipmi-flash
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/phosphor-ipmi-flash-bios-update.service ${D}${systemd_system_unitdir}
+}
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/config-bios.json b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/config-bios.json
new file mode 100644
index 000000000..de2382346
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/config-bios.json
@@ -0,0 +1,19 @@
+[{
+ "blob": "/flash/bios",
+ "handler": {
+ "type": "file",
+ "path": "/run/initramfs/bios-image"
+ },
+ "actions": {
+ "preparation": {
+ "type": "skip"
+ },
+ "verification": {
+ "type": "skip"
+ },
+ "update": {
+ "type": "systemd",
+ "unit": "phosphor-ipmi-flash-bios-update.service"
+ }
+ }
+}]
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/phosphor-ipmi-flash-bios-update.service b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/phosphor-ipmi-flash-bios-update.service
new file mode 100644
index 000000000..1702153d7
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/phosphor-ipmi-flash-bios-update.service
@@ -0,0 +1,6 @@
+[Unit]
+Description=Phosphor-ipmi-flash update BIOS firmware service
+
+[Service]
+ExecStart=/usr/sbin/kudo-fw.sh bios /run/initramfs/bios-image
+Type=oneshot \ No newline at end of file
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update.bb b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update.bb
new file mode 100644
index 000000000..184f3efc6
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update.bb
@@ -0,0 +1,20 @@
+SUMMARY = "Phosphor OpenBMC Kudo BMC Firmware Upgrade Command"
+DESCRIPTION = "Phosphor OpenBMC Kudo BMC Firmware Upgrade Comman Daemon"
+
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+DEPENDS += "phosphor-ipmi-flash"
+RDEPENDS_${PN} += "bash"
+
+FILES_${PN} += "${datadir}/phosphor-ipmi-flash/config-bmc.json"
+
+SRC_URI_append_kudo = " \
+ file://config-bmc.json \
+ "
+
+do_install () {
+ install -d ${D}${datadir}/phosphor-ipmi-flash
+ install -m 0644 ${WORKDIR}/config-bmc.json ${D}${datadir}/phosphor-ipmi-flash
+}
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update/config-bmc.json b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update/config-bmc.json
new file mode 100644
index 000000000..5aefeb342
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update/config-bmc.json
@@ -0,0 +1,20 @@
+[{
+ "blob": "/flash/image",
+ "handler": {
+ "type": "file",
+ "path": "/run/initramfs/image-bmc"
+ },
+ "actions": {
+ "preparation": {
+ "type": "skip"
+ },
+ "verification": {
+ "type": "skip"
+ },
+ "update": {
+ "type": "systemd",
+ "unit": "reboot.target",
+ "mode": "replace-irreversibly"
+ }
+ }
+}]
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update.bb b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update.bb
new file mode 100644
index 000000000..b2fd8209d
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update.bb
@@ -0,0 +1,39 @@
+SUMMARY = "Phosphor OpenBMC Kudo CPLD Firmware Upgrade Command"
+DESCRIPTION = "Phosphor OpenBMC Kudo CPLD Firmware Upgrade Comman Daemon"
+
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+inherit systemd
+inherit obmc-phosphor-systemd
+
+DEPENDS += "systemd"
+DEPENDS += "phosphor-ipmi-flash"
+RDEPENDS_${PN} += "libsystemd"
+RDEPENDS_${PN} += "bash"
+
+FILES_${PN} += "${datadir}/phosphor-ipmi-flash/config-bmccpld.json"
+FILES_${PN} += "${datadir}/phosphor-ipmi-flash/config-mbcpld.json"
+
+SRC_URI_append_kudo = " \
+ file://phosphor-ipmi-flash-bmccpld-update.service \
+ file://phosphor-ipmi-flash-mbcpld-update.service \
+ file://config-bmccpld.json \
+ file://config-mbcpld.json \
+ "
+
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE_${PN}_append_kudo = " \
+ phosphor-ipmi-flash-bmccpld-update.service \
+ phosphor-ipmi-flash-mbcpld-update.service \
+ "
+
+do_install () {
+ install -d ${D}${datadir}/phosphor-ipmi-flash
+ install -m 0644 ${WORKDIR}/config-bmccpld.json ${D}${datadir}/phosphor-ipmi-flash
+ install -m 0644 ${WORKDIR}/config-mbcpld.json ${D}${datadir}/phosphor-ipmi-flash
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/phosphor-ipmi-flash-bmccpld-update.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/phosphor-ipmi-flash-mbcpld-update.service ${D}${systemd_system_unitdir}
+} \ No newline at end of file
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-bmccpld.json b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-bmccpld.json
new file mode 100644
index 000000000..687aa11c2
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-bmccpld.json
@@ -0,0 +1,19 @@
+[{
+ "blob": "/flash/bmccpld",
+ "handler": {
+ "type": "file",
+ "path": "/run/initramfs/bmc-cpld.svf"
+ },
+ "actions": {
+ "preparation": {
+ "type": "skip"
+ },
+ "verification": {
+ "type": "skip"
+ },
+ "update": {
+ "type": "systemd",
+ "unit": "phosphor-ipmi-flash-bmccpld-update.service"
+ }
+ }
+}]
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-mbcpld.json b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-mbcpld.json
new file mode 100644
index 000000000..f5870bb33
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-mbcpld.json
@@ -0,0 +1,20 @@
+[{
+ "blob": "/flash/mbcpld",
+ "handler": {
+ "type": "file",
+ "path": "/run/initramfs/mb-cpld.svf"
+ },
+ "actions": {
+ "preparation": {
+ "type": "skip"
+ },
+ "verification": {
+ "type": "skip"
+ },
+ "update": {
+ "type": "systemd",
+ "unit": "phosphor-ipmi-flash-mbcpld-update.service"
+ }
+ }
+}]
+
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-bmccpld-update.service b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-bmccpld-update.service
new file mode 100644
index 000000000..b4f91f81c
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-bmccpld-update.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Phosphor-ipmi-flash update BMC CPLD firmware service
+
+[Service]
+ExecStart=/usr/sbin/kudo-fw.sh bmccpld /run/initramfs/bmc-cpld.svf
+Type=oneshot
+
+[Install]
+WantedBy=phosphor-ipmi-flash-bmccpld-update.target
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-mbcpld-update.service b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-mbcpld-update.service
new file mode 100644
index 000000000..51b6c9c4b
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-mbcpld-update.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Phosphor-ipmi-flash update MB CPLD firmware service
+
+[Service]
+ExecStart=/usr/sbin/kudo-fw.sh mbcpld /run/initramfs/mb-cpld.svf
+Type=oneshot
+
+[Install]
+WantedBy=phosphor-ipmi-flash-mbcpld-update.target
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw.bb b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw.bb
new file mode 100644
index 000000000..3f5a30ec6
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw.bb
@@ -0,0 +1,34 @@
+SUMMARY = "Phosphor OpenBMC Kudo Firmware Upgrade Command"
+DESCRIPTION = "Phosphor OpenBMC Kudo Firmware Upgrade Comman Daemon"
+
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+inherit systemd
+inherit obmc-phosphor-systemd
+
+DEPENDS += "systemd"
+DEPENDS += "phosphor-ipmi-flash"
+RDEPENDS_${PN} += "libsystemd"
+RDEPENDS_${PN} += "bash"
+
+
+SRC_URI_append_kudo = " \
+ file://kudo-fw.sh \
+ file://kudo-fw-ver.service \
+ file://kudo-fw-ver.sh \
+ "
+
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE_${PN}_append_kudo = " \
+ kudo-fw-ver.service \
+ "
+
+do_install () {
+ install -d ${D}/${sbindir}
+ install -m 0755 ${WORKDIR}/kudo-fw.sh ${D}/${sbindir}/kudo-fw.sh
+ install -m 0755 ${WORKDIR}/kudo-fw-ver.sh ${D}/${sbindir}/kudo-fw-ver.sh
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/kudo-fw-ver.service ${D}${systemd_system_unitdir}
+}
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.service b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.service
new file mode 100644
index 000000000..24e21d236
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Firmware Version Daemon
+
+[Service]
+RemainAfterExit=yes
+Type=oneshot
+ExecStart=/usr/sbin/kudo-fw-ver.sh
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.sh b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.sh
new file mode 100644
index 000000000..498fe7d0a
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.sh
@@ -0,0 +1,28 @@
+
+#!/bin/bash
+BMC_CPLD_VER_FILE="/run/cpld0.version"
+MB_CPLD_VER_FILE="/run/cpld1.version"
+ver=''
+
+function fw_rev() {
+ case $1 in
+ cpldb)
+ rsp=($(i2cget -y -f -a 13 0x76 0x00 i 5))
+ ver=$(printf '%d.%d.%d.%d' ${rsp[6]} ${rsp[5]} ${rsp[4]} ${rsp[3]})
+ ;;
+ cpldm)
+ I2C_BUS_DEV=$(readlink "/sys/bus/i2c/devices/4-0077/channel-2" | cut -c 8-)
+ rsp=($(i2cget -y -f -a $I2C_BUS_DEV 0x76 0x00 i 5))
+ ver=$(printf '%d.%d.%d.%d' ${rsp[6]} ${rsp[5]} ${rsp[4]} ${rsp[3]})
+ ;;
+ *)
+ ;;
+ esac
+}
+
+fw_rev cpldb
+echo "BMC CPLD version : ${ver}"
+echo "${ver}" > "${BMC_CPLD_VER_FILE}"
+fw_rev cpldm
+echo "MB CPLD version : ${ver}"
+echo "${ver}" > "${MB_CPLD_VER_FILE}" \ No newline at end of file
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw.sh b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw.sh
new file mode 100644
index 000000000..e42795f0c
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw.sh
@@ -0,0 +1,120 @@
+#!/bin/bash
+
+devpath="/sys/bus/i2c/devices/13-0077/driver"
+
+# set_gpio_ctrl
+# pin #, direction, high(1)/low(0)
+function set_gpio_ctrl() {
+ echo $1 > /sys/class/gpio/export
+ echo $2 > /sys/class//gpio/gpio$1/direction
+ echo $3 > /sys/class/gpio/gpio$1/value
+ echo $1 > /sys/class/gpio/unexport
+ sleep 1
+}
+
+function fwbios() {
+ KERNEL_FIU_ID="c0000000.spi"
+ KERNEL_SYSFS_FIU="/sys/bus/platform/drivers/NPCM-FIU"
+
+ # switch the SPI mux from Host to BMC
+ i2cset -y -f -a 13 0x76 0x10 0x01
+
+ # rescan the spi bus
+ if [ -d "${KERNEL_SYSFS_FIU}/${KERNEL_FIU_ID}" ]; then
+ echo "${KERNEL_FIU_ID}" > "${KERNEL_SYSFS_FIU}"/unbind
+ sleep 1
+ fi
+ echo "${KERNEL_FIU_ID}" > "${KERNEL_SYSFS_FIU}"/bind
+
+ # write to the mtd device
+ BIOS_MTD=$(cat /proc/mtd | grep "bios" | sed -n 's/^\(.*\):.*/\1/p')
+
+ if [ ! -f $1 ]; then
+ echo " Cannot find the" $1 "image file"
+ exit 1
+ fi
+
+ echo "Flashing BIOS @/dev/$BIOS_MTD"
+ flashcp -v $1 /dev/$BIOS_MTD
+ wait
+
+ # switch the SPI mux from BMC to Host
+ if [ -d "${KERNEL_SYSFS_FIU}/${KERNEL_FIU_ID}" ]; then
+ echo "${KERNEL_FIU_ID}" > "${KERNEL_SYSFS_FIU}"/unbind
+ fi
+ i2cset -y -f -a 13 0x76 0x10 0x00
+
+ if [[ $(find ${1} -type f -size +17156k 2>/dev/null) ]]; then
+ echo "Extracting the SCP from the image"
+ dd if=$1 bs=1024 skip=17156 count=256 of=/run/initramfs/myscp.img
+ fwscp /run/initramfs/myscp.img
+ fi
+ rm -f $1
+}
+
+
+function fwbmccpld() {
+ # BMC_JTAG_MUX_1 #218 0:BMC 1:MB
+ set_gpio_ctrl 218 out 0
+ loadsvf -d /dev/jtag0 -s $1 -m 0
+ wait
+ set_gpio_ctrl 218 out 1
+ rm -f $1
+}
+
+function fwmbcpld() {
+ # BMC_JTAG_MUX_1 #218 0:BMC 1:MB
+ # BMC_JTAG_SEL #164 0:BMC 1:CPU
+ set_gpio_ctrl 218 out 1
+ set_gpio_ctrl 164 out 1
+ loadsvf -d /dev/jtag0 -s $1 -m 0
+ wait
+ rm -f $1
+}
+
+function fwscp() {
+ # BMC_I2C_BACKUP_SEL #168 0:failover, 1:main
+ # BMC_CPU_EEPROM_I2C_SEL #85 0:BMC, 1:CPU
+ set_gpio_ctrl 168 out 1
+ set_gpio_ctrl 85 out 0
+ I2C_BUS_DEV=$(ls -l $devpath/"13-0077/" | grep channel-0 | awk '{ print $11}' | cut -c 8-)
+ ampere_eeprom_prog -b $I2C_BUS_DEV -s 0x50 -p -f $1
+ wait
+ set_gpio_ctrl 85 out 1
+ set_gpio_ctrl 168 out 1
+ rm -f $1
+}
+
+function fwscpback() {
+ # BMC_I2C_BACKUP_SEL #168 0:failover, 1:main
+ # BMC_CPU_EEPROM_I2C_SEL #85 0:BMC, 1:CPU
+ set_gpio_ctrl 168 out 0
+ set_gpio_ctrl 85 out 0
+ I2C_BUS_DEV=$(ls -l $devpath/"13-0077/" | grep channel-0 | awk '{ print $11}' | cut -c 8-)
+ ampere_eeprom_prog -b $I2C_BUS_DEV -s 0x50 -p -f $1
+ wait
+ set_gpio_ctrl 85 out 1
+ set_gpio_ctrl 168 out 1
+ rm -f $1
+}
+
+
+case $1 in
+ bios)
+ fwbios $2
+ ;;
+ bmccpld)
+ fwbmccpld $2
+ ;;
+ mbcpld)
+ fwmbcpld $2
+ ;;
+ scp)
+ fwscp $2
+ ;;
+ scpback)
+ fwscpback $2
+ ;;
+ *)
+ ;;
+esac
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update.bb b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update.bb
new file mode 100644
index 000000000..8d2fb1324
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update.bb
@@ -0,0 +1,41 @@
+SUMMARY = "Phosphor OpenBMC Kudo SCP Firmware Upgrade Command"
+DESCRIPTION = "Phosphor OpenBMC Kudo SCP Firmware Upgrade Comman Daemon"
+FILESEXTRAPATHS_prepend := "${THISDIR}/kudo-scp-update:"
+
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+inherit systemd
+inherit obmc-phosphor-systemd
+
+DEPENDS += "systemd"
+DEPENDS += "phosphor-ipmi-flash"
+RDEPENDS_${PN} += "libsystemd"
+RDEPENDS_${PN} += "bash"
+
+FILES_${PN} += "${datadir}/phosphor-ipmi-flash/config-scp.json"
+FILES_${PN} += "${datadir}/phosphor-ipmi-flash/config-scpback.json"
+
+SRC_URI_append_kudo = " \
+ file://phosphor-ipmi-flash-scp-update.service \
+ file://phosphor-ipmi-flash-scpback-update.service \
+ file://config-scp.json \
+ file://config-scpback.json \
+ "
+
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE_${PN}_append_kudo = " \
+ phosphor-ipmi-flash-scp-update.service \
+ phosphor-ipmi-flash-scpback-update.service \
+ "
+
+do_install () {
+ install -d ${D}${datadir}/phosphor-ipmi-flash
+ install -m 0644 ${WORKDIR}/config-scp.json ${D}${datadir}/phosphor-ipmi-flash
+ install -m 0644 ${WORKDIR}/config-scpback.json ${D}${datadir}/phosphor-ipmi-flash
+
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/phosphor-ipmi-flash-scp-update.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/phosphor-ipmi-flash-scpback-update.service ${D}${systemd_system_unitdir}
+}
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scp.json b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scp.json
new file mode 100644
index 000000000..563238c6a
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scp.json
@@ -0,0 +1,19 @@
+[{
+ "blob": "/flash/scp",
+ "handler": {
+ "type": "file",
+ "path": "/run/initramfs/scp-fw.slim"
+ },
+ "actions": {
+ "preparation": {
+ "type": "skip"
+ },
+ "verification": {
+ "type": "skip"
+ },
+ "update": {
+ "type": "systemd",
+ "unit": "phosphor-ipmi-flash-scp-update.service"
+ }
+ }
+}]
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scpback.json b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scpback.json
new file mode 100644
index 000000000..0e6c61425
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scpback.json
@@ -0,0 +1,20 @@
+[{
+ "blob": "/flash/scpb",
+ "handler": {
+ "type": "file",
+ "path": "/run/initramfs/scp-fw.slim"
+ },
+ "actions": {
+ "preparation": {
+ "type": "skip"
+ },
+ "verification": {
+ "type": "skip"
+ },
+ "update": {
+ "type": "systemd",
+ "unit": "phosphor-ipmi-flash-scpback-update.service"
+ }
+ }
+}]
+
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scp-update.service b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scp-update.service
new file mode 100644
index 000000000..8d5e2da30
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scp-update.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Phosphor-ipmi-flash update main EEPROM SCP firmware service
+
+[Service]
+ExecStart=/usr/sbin/kudo-fw.sh scp /run/initramfs/scp-fw.slim
+Type=oneshot
+
+[Install]
+WantedBy=phosphor-ipmi-flash-scp-update.target
diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scpback-update.service b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scpback-update.service
new file mode 100644
index 000000000..c247552bf
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scpback-update.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Phosphor-ipmi-flash update failover EEPROM SCP firmware service
+
+[Service]
+ExecStart=/usr/sbin/kudo-fw.sh scpback /run/initramfs/scp-fw.slim
+Type=oneshot
+
+[Install]
+WantedBy=phosphor-ipmi-flash-scpback-update.target
diff --git a/meta-fii/meta-kudo/recipes-kudo/network/usb-network.bb b/meta-fii/meta-kudo/recipes-kudo/network/usb-network.bb
new file mode 100644
index 000000000..249e454ae
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/network/usb-network.bb
@@ -0,0 +1,29 @@
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+inherit allarch systemd
+
+DEPENDS += "systemd"
+RDEPENDS_${PN} += "libsystemd"
+RDEPENDS_${PN} += "bash"
+
+SRC_URI_append += " \
+ file://usb_network.sh \
+ file://usb_network.service \
+ file://00-bmc-usb0.network \
+ "
+
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE_${PN}_append = " usb_network.service"
+FILES_${PN} += "${sysconfdir_native}/systemd/network/00-bmc-usb0.network"
+
+do_install() {
+ install -d ${D}/${sbindir}
+ install -m 0755 ${WORKDIR}/usb_network.sh ${D}/${sbindir}
+
+ install -d ${D}${systemd_unitdir}/system/
+ install -m 0644 ${WORKDIR}/usb_network.service ${D}${systemd_unitdir}/system
+
+ install -d ${D}${sysconfdir_native}/systemd/network/
+ install -m 0644 ${WORKDIR}/00-bmc-usb0.network ${D}${sysconfdir_native}/systemd/network
+}
diff --git a/meta-fii/meta-kudo/recipes-kudo/network/usb-network/00-bmc-usb0.network b/meta-fii/meta-kudo/recipes-kudo/network/usb-network/00-bmc-usb0.network
new file mode 100644
index 000000000..1b8d66e4d
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/network/usb-network/00-bmc-usb0.network
@@ -0,0 +1,7 @@
+[Match]
+Name=usb0
+[Address]
+Address=169.254.95.118/16
+[Network]
+LinkLocalAddressing=ipv6
+IPv6AcceptRA=no
diff --git a/meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.service b/meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.service
new file mode 100644
index 000000000..81a4e4244
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=enable usb network
+After=phosphor-ipmi-host.service
+
+[Service]
+Type=oneshot
+ExecStart=/bin/bash -c '/usr/sbin/usb_network.sh'
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.sh b/meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.sh
new file mode 100644
index 000000000..8d7804d06
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+cd /sys/kernel/config/usb_gadget
+
+if [ ! -f "g1" ]; then
+ mkdir g1
+ cd g1
+
+ echo 0x1d6b > idVendor # Linux foundation
+ echo 0x0104 > idProduct # Multifunction composite gadget
+ mkdir -p strings/0x409
+ echo "Linux" > strings/0x409/manufacturer
+ echo "Ethernet/ECM gadget" > strings/0x409/product
+
+ mkdir -p configs/c.1
+ echo 100 > configs/c.1/MaxPower
+ mkdir -p configs/c.1/strings/0x409
+ echo "ECM" > configs/c.1/strings/0x409/configuration
+
+ mkdir -p functions/ecm.usb0
+
+ ln -s functions/ecm.usb0 configs/c.1
+
+ echo f0835000.udc > UDC
+
+fi
+exit 0
diff --git a/meta-fii/meta-kudo/recipes-kudo/packagegroups/packagegroup-kudo-apps.bb b/meta-fii/meta-kudo/recipes-kudo/packagegroups/packagegroup-kudo-apps.bb
index be879455d..f64373e89 100644
--- a/meta-fii/meta-kudo/recipes-kudo/packagegroups/packagegroup-kudo-apps.bb
+++ b/meta-fii/meta-kudo/recipes-kudo/packagegroups/packagegroup-kudo-apps.bb
@@ -5,26 +5,32 @@ inherit packagegroup
PROVIDES = "${PACKAGES}"
PACKAGES = " \
- ${PN}-kudo-system \
- ${PN}-kudo-common-utils \
- "
+ ${PN}-kudo-system \
+ ${PN}-kudo-fw \
+ "
PROVIDES += "virtual/obmc-system-mgmt"
RPROVIDES_${PN}-kudo-system += "virtual-obmc-system-mgmt"
+RPROVIDES_${PN}-kudo-fw += "virtual-obmc-system-mgmt"
SUMMARY_${PN}-kudo-system = "KUDO System"
RDEPENDS_${PN}-kudo-system = " \
- google-ipmi-sys \
- google-ipmi-i2c \
- "
-
-SUMMARY_${PN}-kudo-common-utils = "KUDO common utils"
-RDEPENDS_${PN}-kudo-common-utils = " \
ipmitool \
- phosphor-webui \
- phosphor-host-postd \
+ ethtool \
+ memtester \
loadsvf \
obmc-console \
- phosphor-sel-logger \
+ usb-network \
+ ncsid \
+ gbmc-mac-config \
+ "
+
+SUMMARY_${PN}-kudo-fw = "KUDO Firmware"
+RDEPENDS_${PN}-kudo-fw = " \
+ kudo-fw \
+ kudo-bios-update \
+ kudo-bmc-update \
+ kudo-cpld-update \
+ kudo-scp-update \
"
diff --git a/meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager/kudo.json b/meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager/kudo.json
new file mode 100644
index 000000000..2c5fdb3bc
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager/kudo.json
@@ -0,0 +1,3899 @@
+[
+ {
+ "Exposes":[
+ {
+ "Address":"$address",
+ "Bus":"$bus",
+ "Name":"BMC FRU",
+ "Type":"EEPROM"
+ },
+ {
+ "Address":"0x59",
+ "Bus":14,
+ "Name":"BMC_MAX34440",
+ "EntityID" : "0x13",
+ "Labels":[
+ "vout2",
+ "vout3",
+ "vout4",
+ "vout5",
+ "vout6"
+ ],
+ "vout2_Name":"DC_P2V5",
+ "vout3_Name":"DC_P1V2",
+ "vout4_Name":"DC_P3V3_PU",
+ "vout5_Name":"DC_3V3_STBY",
+ "vout6_Name":"DC_P1V175",
+ "vout2_Max":3,
+ "vout3_Max":2.2,
+ "vout4_Max":5.8,
+ "vout5_Max":5.8,
+ "vout6_Max":3,
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout2",
+ "Severity":1,
+ "Value":2.75
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout2",
+ "Severity":0,
+ "Value":2.5
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout2",
+ "Severity":1,
+ "Value":2.375
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout2",
+ "Severity":0,
+ "Value":2.4
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout3",
+ "Severity":1,
+ "Value":1.32
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout3",
+ "Severity":0,
+ "Value":1.22
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout3",
+ "Severity":1,
+ "Value":1.14
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout3",
+ "Severity":0,
+ "Value":1.17
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout4",
+ "Severity":1,
+ "Value":3.63
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout4",
+ "Severity":0,
+ "Value":3.4
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout4",
+ "Severity":1,
+ "Value":3.135
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout4",
+ "Severity":0,
+ "Value":3.2
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout5",
+ "Severity":1,
+ "Value":3.63
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout5",
+ "Severity":0,
+ "Value":3.4
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout5",
+ "Severity":1,
+ "Value":3.135
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout5",
+ "Severity":0,
+ "Value":3.2
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout6",
+ "Severity":1,
+ "Value":1.292
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout6",
+ "Severity":0,
+ "Value":1.23
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout6",
+ "Severity":1,
+ "Value":1.117
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout6",
+ "Severity":0,
+ "Value":1.117
+ }
+ ],
+ "Type":"MAX34440"
+ },
+ {
+ "Name":"DC_P2V5",
+ "Type":"MAX34440",
+ "EntityId":"0x13",
+ "EntityInstance":0
+ },
+ {
+ "Name":"DC_P1V2",
+ "Type":"MAX34440",
+ "EntityId":"0x13",
+ "EntityInstance":1
+ },
+ {
+ "Name":"DC_P3V3_PU",
+ "Type":"MAX34440",
+ "EntityId":"0x13",
+ "EntityInstance":2
+ },
+ {
+ "Name":"DC_3V3_STBY",
+ "Type":"MAX34440",
+ "EntityId":"0x13",
+ "EntityInstance":3
+ },
+ {
+ "Name":"DC_P1V175",
+ "Type":"MAX34440",
+ "EntityId":"0x13",
+ "EntityInstance":4
+ }
+ ],
+ "Name":"Kudo_BMC",
+ "Probe":"xyz.openbmc_project.FruDevice({'BOARD_SERIAL_NUMBER': 'ACN*'})",
+ "Type":"Board",
+ "xyz.openbmc_project.Inventory.Decorator.Asset":{
+ "Manufacturer":"$BOARD_MANUFACTURER",
+ "Model":"$BOARD_PRODUCT_NAME",
+ "PartNumber":"$BOARD_PART_NUMBER",
+ "SerialNumber":"$BOARD_SERIAL_NUMBER"
+ },
+ "xyz.openbmc_project.Inventory.Decorator.FruDevice":{
+ "Bus":"$bus",
+ "Address":"$address"
+ },
+ "xyz.openbmc_project.Inventory.Decorator.Ipmi": {
+ "EntityId": "0x07",
+ "EntityInstance": 0
+ }
+ },
+ {
+ "Exposes":[
+ {
+ "Address":"$address",
+ "Bus":"$bus",
+ "Name":"MB FRU",
+ "Type":"EEPROM"
+ },
+ {
+ "Address":"0x48",
+ "Bus":42,
+ "Name":"Mobo_M2_ZONE_T",
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Severity":0,
+ "Value":100
+ }
+ ],
+ "Type":"TMP75",
+ "EntityId": "0x03",
+ "EntityInstance": 1
+ },
+ {
+ "Address":"0x49",
+ "Bus":43,
+ "Name":"Mobo_BATT_ZONE_T",
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Severity":0,
+ "Value":100
+ }
+ ],
+ "Type":"TMP75",
+ "EntityId": "0x03",
+ "EntityInstance": 2
+ },
+ {
+ "Address":"0x48",
+ "Bus":44,
+ "Name":"Mobo_NBM1_ZONE_T",
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Severity":1,
+ "Value":110
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Severity":0,
+ "Value":108
+ }
+ ],
+ "Type":"TMP75",
+ "EntityId": "0x03",
+ "EntityInstance": 3
+ },
+ {
+ "Address":"0x49",
+ "Bus":45,
+ "Name":"Mobo_NBM2_ZONE_T",
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Severity":1,
+ "Value":110
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Severity":0,
+ "Value":108
+ }
+ ],
+ "Type":"TMP75",
+ "EntityId": "0x03",
+ "EntityInstance": 4
+ },
+ {
+ "Address":"0x5c",
+ "Bus":20,
+ "Name":"Mobo_INLET1_T",
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Severity":1,
+ "Value":46
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Severity":0,
+ "Value":42
+ }
+ ],
+ "Type":"TMP75",
+ "EntityId": "0x03",
+ "EntityInstance": 5
+ },
+ {
+ "Address":"0x5c",
+ "Bus":21,
+ "Name":"Mobo_OUTLET1_T",
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Severity":1,
+ "Value":90
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Severity":0,
+ "Value":85
+ }
+ ],
+ "Type":"TMP75",
+ "EntityId": "0x03",
+ "EntityInstance": 6
+ },
+ {
+ "Address":"0x5c",
+ "Bus":22,
+ "Name":"Mobo_OUTLET2_T",
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Severity":1,
+ "Value":90
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Severity":0,
+ "Value":85
+ }
+ ],
+ "Type":"TMP75",
+ "EntityId": "0x03",
+ "EntityInstance": 7
+ },
+ {
+ "Address":"0x5c",
+ "Bus":23,
+ "Name":"Mobo_OUTLET3_T",
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Severity":1,
+ "Value":90
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Severity":0,
+ "Value":85
+ }
+ ],
+ "Type":"TMP75",
+ "EntityId": "0x03",
+ "EntityInstance": 8
+ },
+ {
+ "Address":"0x74",
+ "Bus":26,
+ "Name":"Mobo_STB_T",
+ "Labels":[
+ "temp1"
+ ],
+ "temp1_Name":"Mobo_STB_T",
+ "temp1_Max":255,
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp1",
+ "Severity":1,
+ "Value":220
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp1",
+ "Severity":0,
+ "Value":125
+ }
+ ],
+ "Type":"pmbus",
+ "EntityId": "0x03",
+ "EntityInstance": 9
+ },
+ {
+ "Address":"0x40",
+ "Bus":32,
+ "Name":"MB_ADM1266_0",
+ "Labels":[
+ "vout1",
+ "vout2",
+ "vout3",
+ "vout4",
+ "vout5",
+ "vout6",
+ "vout7",
+ "vout8",
+ "vout9",
+ "vout10",
+ "vout11",
+ "vout12",
+ "vout13",
+ "vout14",
+ "vout15",
+ "vout16",
+ "vout17"
+ ],
+ "vout1_Name":"Mobo_12V_PSTB",
+ "vout2_Name":"Mobo_5V",
+ "vout3_Name":"Mobo_3V3",
+ "vout4_Name":"Mobo_3V3_STB",
+ "vout5_Name":"Mobo_48V",
+ "vout6_Name":"CPU0_13V5_NBM",
+ "vout7_Name":"CPU0_3V3_SOC",
+ "vout8_Name":"CPU0_1V2_DQ0123",
+ "vout9_Name":"CPU0_1V2_DQ4567",
+ "vout10_Name":"Mobo_8V5_PSTB",
+ "vout11_Name":"Mobo_5V_PSTB",
+ "vout12_Name":"CPU0_1V8_VDDH",
+ "vout13_Name":"CPU0_1V5_VDDH",
+ "vout14_Name":"Mobo_1V8_SATA",
+ "vout15_Name":"CPU0_1V8_SOC",
+ "vout16_Name":"CPU0_0V8_DC_SOC",
+ "vout17_Name":"Mobo_VBAT_RTC",
+ "vout1_Max":14.5,
+ "vout2_Max":8.5,
+ "vout3_Max":6,
+ "vout4_Max":6,
+ "vout5_Max":70,
+ "vout6_Max":19.5,
+ "vout7_Max":5,
+ "vout8_Max":3,
+ "vout9_Max":3,
+ "vout10_Max":11.5,
+ "vout11_Max":7.5,
+ "vout12_Max":4,
+ "vout13_Max":3,
+ "vout14_Max":4.5,
+ "vout15_Max":5,
+ "vout16_Max":3,
+ "vout17_Max":6,
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout1",
+ "Severity":1,
+ "Value":12.6
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout1",
+ "Severity":1,
+ "Value":11.4
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout1",
+ "Severity":0,
+ "Value":12.4
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout1",
+ "Severity":0,
+ "Value":11.9
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout2",
+ "Severity":1,
+ "Value":6.06
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout2",
+ "Severity":1,
+ "Value":3.4
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout2",
+ "Severity":0,
+ "Value":5.25
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout2",
+ "Severity":0,
+ "Value":4.75
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout3",
+ "Severity":1,
+ "Value":3.98
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout3",
+ "Severity":1,
+ "Value":2.83
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout3",
+ "Severity":0,
+ "Value":3.465
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout3",
+ "Severity":0,
+ "Value":3.132
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout4",
+ "Severity":1,
+ "Value":5.508
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout4",
+ "Severity":1,
+ "Value":1.922
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout4",
+ "Severity":0,
+ "Value":2.938
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout4",
+ "Severity":0,
+ "Value":2.657
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout5",
+ "Severity":1,
+ "Value":64.9
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout5",
+ "Severity":1,
+ "Value":36.58
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout5",
+ "Severity":0,
+ "Value":59.95
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout5",
+ "Severity":0,
+ "Value":39.875
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout6",
+ "Severity":1,
+ "Value":16.685
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout6",
+ "Severity":1,
+ "Value":8.59
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout6",
+ "Severity":0,
+ "Value":14.91
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout6",
+ "Severity":0,
+ "Value":10.011
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout7",
+ "Severity":1,
+ "Value":3.98
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout7",
+ "Severity":1,
+ "Value":2.268
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout7",
+ "Severity":0,
+ "Value":3.456
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout7",
+ "Severity":0,
+ "Value":3.132
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout8",
+ "Severity":1,
+ "Value":1.805
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout8",
+ "Severity":1,
+ "Value":0.802
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout8",
+ "Severity":0,
+ "Value":1.263
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout8",
+ "Severity":0,
+ "Value":1.145
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout9",
+ "Severity":1,
+ "Value":1.805
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout9",
+ "Severity":1,
+ "Value":0.802
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout9",
+ "Severity":0,
+ "Value":1.263
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout9",
+ "Severity":0,
+ "Value":1.145
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout10",
+ "Severity":1,
+ "Value":8.898
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout10",
+ "Severity":1,
+ "Value":8.036
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout10",
+ "Severity":0,
+ "Value":8.938
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout10",
+ "Severity":0,
+ "Value":8.075
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout11",
+ "Severity":1,
+ "Value":5.253
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout11",
+ "Severity":1,
+ "Value":4.758
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout11",
+ "Severity":0,
+ "Value":5.143
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout11",
+ "Severity":0,
+ "Value":4.84
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout12",
+ "Severity":1,
+ "Value":2.167
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout12",
+ "Severity":1,
+ "Value":1.225
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout12",
+ "Severity":0,
+ "Value":1.884
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout12",
+ "Severity":0,
+ "Value":1.711
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout13",
+ "Severity":1,
+ "Value":1.804
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout13",
+ "Severity":1,
+ "Value":1.021
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout13",
+ "Severity":0,
+ "Value":1.575
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout13",
+ "Severity":0,
+ "Value":1.426
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout14",
+ "Severity":1,
+ "Value":2.072
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout14",
+ "Severity":1,
+ "Value":1.444
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout14",
+ "Severity":0,
+ "Value":1.884
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout14",
+ "Severity":0,
+ "Value":1.711
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout15",
+ "Severity":1,
+ "Value":2.165
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout15",
+ "Severity":1,
+ "Value":1.214
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout15",
+ "Severity":0,
+ "Value":1.883
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout15",
+ "Severity":0,
+ "Value":1.795
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout16",
+ "Severity":1,
+ "Value":1.196
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout16",
+ "Severity":1,
+ "Value":0.598
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout16",
+ "Severity":0,
+ "Value":0.823
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout16",
+ "Severity":0,
+ "Value":0.676
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout17",
+ "Severity":1,
+ "Value":3.972
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout17",
+ "Severity":1,
+ "Value":2.327
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout17",
+ "Severity":0,
+ "Value":3.455
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout17",
+ "Severity":0,
+ "Value":3.126
+ }
+ ],
+ "Type":"ADM1266"
+ },
+ {
+ "Name":"Mobo_12V_PSTB",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":5
+ },
+ {
+ "Name":"Mobo_5V",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":6
+ },
+ {
+ "Name":"Mobo_3V3",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":7
+ },
+ {
+ "Name":"Mobo_3V3_STB",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":8
+ },
+ {
+ "Name":"Mobo_48V",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":9
+ },
+ {
+ "Name":"CPU0_13V5_NBM",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":10
+ },
+ {
+ "Name":"CPU0_3V3_SOC",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":11
+ },
+ {
+ "Name":"CPU0_1V2_DQ0123",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":12
+ },
+ {
+ "Name":"CPU0_1V2_DQ4567",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":13
+ },
+ {
+ "Name":"Mobo_8V5_PSTB",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":14
+ },
+ {
+ "Name":"Mobo_5V_PSTB",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":15
+ },
+ {
+ "Name":"CPU0_1V8_VDDH",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":16
+ },
+ {
+ "Name":"CPU0_1V5_VDDH",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":17
+ },
+ {
+ "Name":"Mobo_1V8_SATA",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":18
+ },
+ {
+ "Name":"CPU0_1V8_SOC",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":19
+ },
+ {
+ "Name":"CPU0_0V8_DC_SOC",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":20
+ },
+ {
+ "Name":"Mobo_VBAT_RTC",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":21
+ },
+ {
+ "Address":"0x41",
+ "Bus":32,
+ "Name":"MB_ADM1266_1",
+ "Labels":[
+ "vout2",
+ "vout3",
+ "vout4",
+ "vout5",
+ "vout6",
+ "vout7",
+ "vout8",
+ "vout9",
+ "vout10",
+ "vout11",
+ "vout12",
+ "vout13",
+ "vout14",
+ "vout15",
+ "vout16",
+ "vout17"
+ ],
+ "vout2_Name":"Mobo_5V_SATA",
+ "vout3_Name":"Mobo_1V_SATA",
+ "vout4_Name":"CPU0_0V85_DC_RCA",
+ "vout5_Name":"CPU0_1V8_PCP",
+ "vout6_Name":"CPU1_13V5_NBM",
+ "vout7_Name":"CPU1_3V3_SOC",
+ "vout8_Name":"CPU1_1V2_DQ0123",
+ "vout9_Name":"CPU1_1V2_DQ4567",
+ "vout10_Name":"CPU0_0V75_PCP",
+ "vout11_Name":"CPU1_0V75_PCP",
+ "vout12_Name":"CPU1_1V8_VDDH",
+ "vout13_Name":"CPU1_1V5_VDDH",
+ "vout14_Name":"CPU1_0V85_DC_RCA",
+ "vout15_Name":"CPU1_1V8_SOC",
+ "vout16_Name":"CPU1_0V8_DC_SOC",
+ "vout17_Name":"CPU1_1V8_PCP",
+ "vout2_Max":9,
+ "vout3_Max":4.5,
+ "vout4_Max":3,
+ "vout5_Max":4,
+ "vout6_Max":20,
+ "vout7_Max":5.5,
+ "vout8_Max":3.5,
+ "vout9_Max":3.5,
+ "vout10_Max":3,
+ "vout11_Max":3,
+ "vout12_Max":4,
+ "vout13_Max":3.4,
+ "vout14_Max":3,
+ "vout15_Max":4,
+ "vout16_Max":3.2,
+ "vout17_Max":4,
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout2",
+ "Severity":1,
+ "Value":6.06
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout2",
+ "Severity":1,
+ "Value":3.391
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout2",
+ "Severity":0,
+ "Value":5.244
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout2",
+ "Severity":0,
+ "Value":4.741
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout3",
+ "Severity":1,
+ "Value":3.009
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout3",
+ "Severity":1,
+ "Value":0.484
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout3",
+ "Severity":0,
+ "Value":0.637
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout3",
+ "Severity":0,
+ "Value":0.566
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout4",
+ "Severity":1,
+ "Value":1.901
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout4",
+ "Severity":1,
+ "Value":0.198
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout4",
+ "Severity":0,
+ "Value":1.496
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout4",
+ "Severity":0,
+ "Value":0.404
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout5",
+ "Severity":1,
+ "Value":2.165
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout5",
+ "Severity":1,
+ "Value":1.219
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout5",
+ "Severity":0,
+ "Value":1.891
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout5",
+ "Severity":0,
+ "Value":1.713
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout6",
+ "Severity":1,
+ "Value":16.685
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout6",
+ "Severity":1,
+ "Value":8.591
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout6",
+ "Severity":0,
+ "Value":14.91
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout6",
+ "Severity":0,
+ "Value":10.011
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout7",
+ "Severity":1,
+ "Value":3.974
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout7",
+ "Severity":1,
+ "Value":2.268
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout7",
+ "Severity":0,
+ "Value":3.465
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout7",
+ "Severity":0,
+ "Value":3.132
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout8",
+ "Severity":1,
+ "Value":1.805
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout8",
+ "Severity":1,
+ "Value":0.802
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout8",
+ "Severity":0,
+ "Value":1.263
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout8",
+ "Severity":0,
+ "Value":1.145
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout9",
+ "Severity":1,
+ "Value":1.805
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout9",
+ "Severity":1,
+ "Value":0.802
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout9",
+ "Severity":0,
+ "Value":1.263
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout9",
+ "Severity":0,
+ "Value":1.145
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout10",
+ "Severity":1,
+ "Value":1.196
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout10",
+ "Severity":1,
+ "Value":0.598
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout10",
+ "Severity":0,
+ "Value":1.098
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout10",
+ "Severity":0,
+ "Value":0.755
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout11",
+ "Severity":1,
+ "Value":1.196
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout11",
+ "Severity":1,
+ "Value":0.598
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout11",
+ "Severity":0,
+ "Value":1.098
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout11",
+ "Severity":0,
+ "Value":0.755
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout12",
+ "Severity":1,
+ "Value":2.167
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout12",
+ "Severity":1,
+ "Value":1.225
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout12",
+ "Severity":0,
+ "Value":1.884
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout12",
+ "Severity":0,
+ "Value":1.711
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout13",
+ "Severity":1,
+ "Value":1.804
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout13",
+ "Severity":1,
+ "Value":1.021
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout13",
+ "Severity":0,
+ "Value":1.575
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout13",
+ "Severity":0,
+ "Value":1.426
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout14",
+ "Severity":1,
+ "Value":1.901
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout14",
+ "Severity":1,
+ "Value":0.198
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout14",
+ "Severity":0,
+ "Value":1.496
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout14",
+ "Severity":0,
+ "Value":0.404
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout15",
+ "Severity":1,
+ "Value":2.165
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout15",
+ "Severity":1,
+ "Value":1.214
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout15",
+ "Severity":0,
+ "Value":1.883
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout15",
+ "Severity":0,
+ "Value":1.795
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout16",
+ "Severity":1,
+ "Value":1.196
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout16",
+ "Severity":1,
+ "Value":0.598
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout16",
+ "Severity":0,
+ "Value":0.823
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout16",
+ "Severity":0,
+ "Value":0.676
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout17",
+ "Severity":1,
+ "Value":2.165
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout17",
+ "Severity":1,
+ "Value":1.219
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout17",
+ "Severity":0,
+ "Value":1.891
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout17",
+ "Severity":0,
+ "Value":1.713
+ }
+ ],
+ "Type":"ADM1266"
+ },
+ {
+ "Name":"Mobo_5V_SATA",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":22
+ },
+ {
+ "Name":"Mobo_1V_SATA",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":23
+ },
+ {
+ "Name":"CPU0_0V85_DC_RCA",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":24
+ },
+ {
+ "Name":"CPU0_1V8_PCP",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":25
+ },
+ {
+ "Name":"CPU1_13V5_NBM",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":26
+ },
+ {
+ "Name":"CPU1_3V3_SOC",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":27
+ },
+ {
+ "Name":"CPU1_1V2_DQ0123",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":28
+ },
+ {
+ "Name":"CPU1_1V2_DQ4567",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":29
+ },
+ {
+ "Name":"CPU0_0V75_PCP",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":30
+ },
+ {
+ "Name":"CPU1_0V75_PCP",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":31
+ },
+ {
+ "Name":"CPU1_1V8_VDDH",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":32
+ },
+ {
+ "Name":"CPU1_1V5_VDDH",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":33
+ },
+ {
+ "Name":"CPU1_0V85_DC_RCA",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":34
+ },
+ {
+ "Name":"CPU1_1V8_SOC",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":35
+ },
+ {
+ "Name":"CPU1_0V8_DC_SOC",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":36
+ },
+ {
+ "Name":"CPU1_1V8_PCP",
+ "Type":"ADM1266",
+ "EntityId":"0x13",
+ "EntityInstance":37
+ },
+ {
+ "Address":"0x4e",
+ "Bus":2,
+ "Name":"MB_smpro_CPU1",
+ "Labels":[
+ "temp1",
+ "temp2",
+ "temp3",
+ "temp4",
+ "temp5",
+ "temp6",
+ "temp7",
+ "temp8",
+ "temp9",
+ "temp10",
+ "temp11",
+ "temp12",
+ "temp13",
+ "temp14",
+ "pout5",
+ "pout3",
+ "pout4",
+ "pout6",
+ "pout7",
+ "pout8",
+ "vout1",
+ "vout2",
+ "vout3",
+ "vout4",
+ "vout5",
+ "vout6",
+ "temp17",
+ "curr1",
+ "curr2",
+ "curr3",
+ "curr4",
+ "curr5"
+ ],
+ "Type":"AC01_SMPRO",
+ "temp1_Name":"CPU1_SOC_T",
+ "temp2_Name":"CPU1_SOC_VRD_T",
+ "temp3_Name":"CPU1_DIMM_VRD_T",
+ "temp4_Name":"CPU1_CORE_VRD_T",
+ "temp5_Name":"CPU1_DIMMG0_T",
+ "temp6_Name":"CPU1_CH0DIMM_T",
+ "temp7_Name":"CPU1_CH1DIMM_T",
+ "temp8_Name":"CPU1_CH2DIMM_T",
+ "temp9_Name":"CPU1_CH3DIMM_T",
+ "temp10_Name":"CPU1_DIMMG1_T",
+ "temp11_Name":"CPU1_CH4DIMM_T",
+ "temp12_Name":"CPU1_CH5DIMM_T",
+ "temp13_Name":"CPU1_CH6DIMM_T",
+ "temp14_Name":"CPU1_CH7DIMM_T",
+ "pout5_Name":"CPU1_CPU_PW",
+ "pout3_Name":"CPU1_DIMM_VR1_PW",
+ "pout4_Name":"CPU1_DIMM_VR2_PW",
+ "pout6_Name":"CPU1_MEM_PW",
+ "pout7_Name":"CPU1_RCA_VR_PW",
+ "pout8_Name":"CPU1_SOC_TDP_PW",
+ "vout1_Name":"CPU1_CPU_VCORE",
+ "vout2_Name":"CPU1_SOC_V",
+ "vout3_Name":"CPU1_DIMM_VR1_V",
+ "vout4_Name":"CPU1_DIMM_VR2_V",
+ "vout5_Name":"CPU1_DIMM_DDR_V",
+ "vout6_Name":"CPU1_RCA_VR_V",
+ "temp17_Name":"CPU1_RCA_VR_T",
+ "curr1_Name":"CPU1_CORE_VRD_CU",
+ "curr2_Name":"CPU1_SOC_VRD_CU",
+ "curr3_Name":"CPU1_DIMM_VR1_CU",
+ "curr4_Name":"CPU1_DIMM_VR2_CU",
+ "curr5_Name":"CPU1_RCA_VRD_CU",
+ "temp1_Max":255,
+ "temp2_Max":255,
+ "temp3_Max":255,
+ "temp4_Max":255,
+ "temp5_Max":255,
+ "temp6_Max":255,
+ "temp7_Max":255,
+ "temp8_Max":255,
+ "temp9_Max":255,
+ "temp10_Max":255,
+ "temp11_Max":255,
+ "temp12_Max":255,
+ "temp13_Max":255,
+ "temp14_Max":255,
+ "pout5_Max":255,
+ "pout3_Max":40,
+ "pout4_Max":40,
+ "pout6_Max":70,
+ "pout7_Max":30,
+ "pout8_Max":255,
+ "vout1_Max":3.2,
+ "vout2_Max":3.3,
+ "vout3_Max":3,
+ "vout4_Max":3,
+ "vout5_Max":5,
+ "vout6_Max":6,
+ "temp17_Max":255,
+ "curr1_Max":13,
+ "curr2_Max":5,
+ "curr3_Max":13,
+ "curr4_Max":13,
+ "curr5_Max":10,
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp1",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp1",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp2",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp2",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp3",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp3",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp4",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp4",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp5",
+ "Severity":1,
+ "Value":90
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp5",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp6",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp6",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp7",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp7",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp8",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp8",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp9",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp9",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp10",
+ "Severity":1,
+ "Value":90
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp10",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp11",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp11",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp12",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp12",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp13",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp13",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp14",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp14",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"pout5",
+ "Severity":1,
+ "Value":53.815
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"pout5",
+ "Severity":0,
+ "Value":47.94
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"pout3",
+ "Severity":1,
+ "Value":7.801
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"pout4",
+ "Severity":1,
+ "Value":7.801
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"pout6",
+ "Severity":1,
+ "Value":29.987
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout1",
+ "Severity":1,
+ "Value":1.05
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout1",
+ "Severity":1,
+ "Value":0.697
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout1",
+ "Severity":0,
+ "Value":1.05
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout1",
+ "Severity":0,
+ "Value":0.697
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout2",
+ "Severity":1,
+ "Value":0.951
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout2",
+ "Severity":1,
+ "Value":0.549
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout2",
+ "Severity":0,
+ "Value":0.804
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout2",
+ "Severity":0,
+ "Value":0.598
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout3",
+ "Severity":1,
+ "Value":1.254
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout3",
+ "Severity":1,
+ "Value":1.098
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout3",
+ "Severity":0,
+ "Value":1.215
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout3",
+ "Severity":0,
+ "Value":1.147
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout4",
+ "Severity":1,
+ "Value":1.254
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout4",
+ "Severity":1,
+ "Value":1.098
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout4",
+ "Severity":0,
+ "Value":1.215
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout4",
+ "Severity":0,
+ "Value":1.147
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout5",
+ "Severity":1,
+ "Value":2.999
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp17",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp17",
+ "Severity":0,
+ "Value":100
+ }
+ ]
+ },
+ {
+ "Name":"CPU1_SOC_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":12
+ },
+ {
+ "Name":"CPU1_SOC_VRD_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":13
+ },
+ {
+ "Name":"CPU1_DIMM_VRD_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":14
+ },
+ {
+ "Name":"CPU1_CORE_VRD_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":15
+ },
+ {
+ "Name":"CPU1_DIMMG0_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":16
+ },
+ {
+ "Name":"CPU1_CH0DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":17
+ },
+ {
+ "Name":"CPU1_CH1DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":18
+ },
+ {
+ "Name":"CPU1_CH2DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":19
+ },
+ {
+ "Name":"CPU1_CH3DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":20
+ },
+ {
+ "Name":"CPU1_DIMMG1_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":21
+ },
+ {
+ "Name":"CPU1_CH4DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":22
+ },
+ {
+ "Name":"CPU1_CH5DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":23
+ },
+ {
+ "Name":"CPU1_CH6DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":24
+ },
+ {
+ "Name":"CPU1_CH7DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":25
+ },
+ {
+ "Name":"CPU1_CPU_PW",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":38
+ },
+ {
+ "Name":"CPU1_DIMM_VR1_PW",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":39
+ },
+ {
+ "Name":"CPU1_DIMM_VR2_PW",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":40
+ },
+ {
+ "Name":"CPU1_MEM_PW",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":41
+ },
+ {
+ "Name":"CPU1_RCA_VR_PW",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":42
+ },
+ {
+ "Name":"CPU1_SOC_TDP_PW",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":43
+ },
+ {
+ "Name":"CPU1_CPU_VCORE",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":44
+ },
+ {
+ "Name":"CPU1_SOC_V",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":45
+ },
+ {
+ "Name":"CPU1_DIMM_VR1_V",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":46
+ },
+ {
+ "Name":"CPU1_DIMM_VR2_V",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":47
+ },
+ {
+ "Name":"CPU1_DIMM_DDR_V",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":48
+ },
+ {
+ "Name":"CPU1_RCA_VR_V",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":49
+ },
+ {
+ "Name":"CPU1_RCA_VR_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":26
+ },
+ {
+ "Name":"CPU1_CORE_VRD_CU",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":50
+ },
+ {
+ "Name":"CPU1_SOC_VRD_CU",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":51
+ },
+ {
+ "Name":"CPU1_DIMM_VR1_CU",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":52
+ },
+ {
+ "Name":"CPU1_DIMM_VR2_CU",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":53
+ },
+ {
+ "Name":"CPU1_RCA_VRD_CU",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":54
+ },
+ {
+ "Address":"0x4f",
+ "Bus":2,
+ "Name":"MB_smpro_CPU0",
+ "Labels":[
+ "temp1",
+ "temp2",
+ "temp3",
+ "temp4",
+ "temp5",
+ "temp6",
+ "temp7",
+ "temp8",
+ "temp9",
+ "temp10",
+ "temp11",
+ "temp12",
+ "temp13",
+ "temp14",
+ "pout5",
+ "pout3",
+ "pout4",
+ "pout6",
+ "pout7",
+ "pout8",
+ "vout1",
+ "vout2",
+ "vout3",
+ "vout4",
+ "vout5",
+ "vout6",
+ "temp17",
+ "curr1",
+ "curr2",
+ "curr3",
+ "curr4",
+ "curr5"
+ ],
+ "Type":"AC01_SMPRO",
+ "temp1_Name":"CPU0_SOC_T",
+ "temp2_Name":"CPU0_SOC_VRD_T",
+ "temp3_Name":"CPU0_DIMM_VRD_T",
+ "temp4_Name":"CPU0_CORE_VRD_T",
+ "temp5_Name":"CPU0_DIMMG0_T",
+ "temp6_Name":"CPU0_CH0DIMM_T",
+ "temp7_Name":"CPU0_CH1DIMM_T",
+ "temp8_Name":"CPU0_CH2DIMM_T",
+ "temp9_Name":"CPU0_CH3DIMM_T",
+ "temp10_Name":"CPU0_DIMMG1_T",
+ "temp11_Name":"CPU0_CH4DIMM_T",
+ "temp12_Name":"CPU0_CH5DIMM_T",
+ "temp13_Name":"CPU0_CH6DIMM_T",
+ "temp14_Name":"CPU0_CH7DIMM_T",
+ "pout5_Name":"CPU0_CPU_PW",
+ "pout3_Name":"CPU0_DIMM_VR1_PW",
+ "pout4_Name":"CPU0_DIMM_VR2_PW",
+ "pout6_Name":"CPU0_MEM_PW",
+ "pout7_Name":"CPU0_RCA_VR_PW",
+ "pout8_Name":"CPU0_SOC_TDP_PW",
+ "vout1_Name":"CPU0_CPU_VCORE",
+ "vout2_Name":"CPU0_SOC_V",
+ "vout3_Name":"CPU0_DIMM_VR1_V",
+ "vout4_Name":"CPU0_DIMM_VR2_V",
+ "vout5_Name":"CPU0_DIMM_DDR_V",
+ "vout6_Name":"CPU0_RCA_VR_V",
+ "temp17_Name":"CPU0_RCA_VR_T",
+ "curr1_Name":"CPU0_CORE_VRD_CU",
+ "curr2_Name":"CPU0_SOC_VRD_CU",
+ "curr3_Name":"CPU0_DIMM_VR1_CU",
+ "curr4_Name":"CPU0_DIMM_VR2_CU",
+ "curr5_Name":"CPU0_RCA_VRD_CU",
+ "temp1_Max":255,
+ "temp2_Max":255,
+ "temp3_Max":255,
+ "temp4_Max":255,
+ "temp5_Max":255,
+ "temp6_Max":255,
+ "temp7_Max":255,
+ "temp8_Max":255,
+ "temp9_Max":255,
+ "temp10_Max":255,
+ "temp11_Max":255,
+ "temp12_Max":255,
+ "temp13_Max":255,
+ "temp14_Max":255,
+ "pout5_Max":350,
+ "pout3_Max":40,
+ "pout4_Max":40,
+ "pout6_Max":80,
+ "pout7_Max":30,
+ "pout8_Max":255,
+ "vout1_Max":3,
+ "vout2_Max":3.5,
+ "vout3_Max":3.5,
+ "vout4_Max":3.5,
+ "vout5_Max":5,
+ "vout6_Max":5,
+ "temp17_Max":255,
+ "curr1_Max":13,
+ "curr2_Max":5,
+ "curr3_Max":12,
+ "curr4_Max":12,
+ "curr5_Max":10,
+ "Thresholds":[
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp1",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp1",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp2",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp2",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp3",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp3",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp4",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp4",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp5",
+ "Severity":1,
+ "Value":90
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp5",
+ "Severity":0,
+ "Value":80
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp6",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp6",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp7",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp7",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp8",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp8",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp9",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp9",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp10",
+ "Severity":1,
+ "Value":90
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp10",
+ "Severity":0,
+ "Value":80
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp11",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp11",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp12",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp12",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp13",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp13",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp14",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp14",
+ "Severity":0,
+ "Value":100
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"pout5",
+ "Severity":1,
+ "Value":299.98
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"pout5",
+ "Severity":0,
+ "Value":299.98
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"pout3",
+ "Severity":1,
+ "Value":7.801
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"pout4",
+ "Severity":1,
+ "Value":7.801
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"pout6",
+ "Severity":1,
+ "Value":29.987
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout1",
+ "Severity":1,
+ "Value":1.05
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout1",
+ "Severity":1,
+ "Value":0.697
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout1",
+ "Severity":0,
+ "Value":1.05
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout1",
+ "Severity":0,
+ "Value":0.697
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout2",
+ "Severity":1,
+ "Value":0.951
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout2",
+ "Severity":1,
+ "Value":0.549
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout2",
+ "Severity":0,
+ "Value":0.804
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout2",
+ "Severity":0,
+ "Value":0.598
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout3",
+ "Severity":1,
+ "Value":1.254
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout3",
+ "Severity":1,
+ "Value":1.098
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout3",
+ "Severity":0,
+ "Value":1.215
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout3",
+ "Severity":0,
+ "Value":1.147
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout4",
+ "Severity":1,
+ "Value":1.254
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Label":"vout4",
+ "Severity":1,
+ "Value":1.098
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"vout4",
+ "Severity":0,
+ "Value":1.215
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Label":"vout4",
+ "Severity":0,
+ "Value":1.147
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"vout5",
+ "Severity":1,
+ "Value":2.999
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper critical",
+ "Label":"temp17",
+ "Severity":1,
+ "Value":105
+ },
+ {
+ "Direction":"greater than",
+ "Name":"upper non critical",
+ "Label":"temp17",
+ "Severity":0,
+ "Value":100
+ }
+ ]
+ },
+ {
+ "Name":"CPU0_SOC_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":27
+ },
+ {
+ "Name":"CPU0_SOC_VRD_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":28
+ },
+ {
+ "Name":"CPU0_DIMM_VRD_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":29
+ },
+ {
+ "Name":"CPU0_CORE_VRD_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":30
+ },
+ {
+ "Name":"CPU0_DIMMG0_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":31
+ },
+ {
+ "Name":"CPU0_CH0DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":32
+ },
+ {
+ "Name":"CPU0_CH1DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":33
+ },
+ {
+ "Name":"CPU0_CH2DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":34
+ },
+ {
+ "Name":"CPU0_CH3DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":35
+ },
+ {
+ "Name":"CPU0_DIMMG1_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":36
+ },
+ {
+ "Name":"CPU0_CH4DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":37
+ },
+ {
+ "Name":"CPU0_CH5DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":38
+ },
+ {
+ "Name":"CPU0_CH6DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":39
+ },
+ {
+ "Name":"CPU0_CH7DIMM_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":40
+ },
+ {
+ "Name":"CPU0_CPU_PW",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":55
+ },
+ {
+ "Name":"CPU0_DIMM_VR1_PW",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":56
+ },
+ {
+ "Name":"CPU0_DIMM_VR2_PW",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":57
+ },
+ {
+ "Name":"CPU0_MEM_PW",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":58
+ },
+ {
+ "Name":"CPU0_RCA_VR_PW",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":59
+ },
+ {
+ "Name":"CPU0_SOC_TDP_PW",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":60
+ },
+ {
+ "Name":"CPU0_CPU_VCORE",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":61
+ },
+ {
+ "Name":"CPU0_SOC_V",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":62
+ },
+ {
+ "Name":"CPU0_DIMM_VR1_V",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":63
+ },
+ {
+ "Name":"CPU0_DIMM_VR2_V",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":64
+ },
+ {
+ "Name":"CPU0_DIMM_DDR_V",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":65
+ },
+ {
+ "Name":"CPU0_RCA_VR_V",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":66
+ },
+ {
+ "Name":"CPU0_RCA_VR_T",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x03",
+ "EntityInstance":41
+ },
+ {
+ "Name":"CPU0_CORE_VRD_CU",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":67
+ },
+ {
+ "Name":"CPU0_SOC_VRD_CU",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":68
+ },
+ {
+ "Name":"CPU0_DIMM_VR1_CU",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":69
+ },
+ {
+ "Name":"CPU0_DIMM_VR2_CU",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":70
+ },
+ {
+ "Name":"CPU0_RCA_VRD_CU",
+ "Type":"AC01_SMPRO",
+ "EntityId":"0x13",
+ "EntityInstance":71
+ },
+ {
+ "Index" : 8,
+ "Name" : "Mobo_NBM1_RAW",
+ "Type" : "ADC",
+ "EntityId" : "0x13",
+ "EntityInstance" : 72
+ },
+ {
+ "Index" : 9,
+ "Name" : "Mobo_NBM2_RAW",
+ "Type" : "ADC",
+ "EntityId" : "0x13",
+ "EntityInstance" : 73
+ },
+ {
+ "Name" : "Mobo_NBM1_T"
+ },
+ {
+ "Name" : "Mobo_NBM2_T"
+ },
+ {
+ "AllowedFailures":1,
+ "Name":"FanRedundancy",
+ "Type":"FanRedundancy"
+ },
+ {
+ "Address":"0x2c",
+ "Bus":"18",
+ "Connector":{
+ "Name":"REAR_FAN0_SPEED",
+ "Pwm":0,
+ "PwmName":"REAR_FAN0_PWM",
+ "Tachs":[
+ 0
+ ]
+ },
+ "Index":0,
+ "MaxReading":20000,
+ "Name":"REAR_FAN0_SPEED",
+ "PowerState":"Always",
+ "Thresholds":[
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Severity":1,
+ "Value":2000
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Severity":0,
+ "Value":1000
+ }
+ ],
+ "Type":"I2CFan",
+ "EntityId":"0x1D",
+ "EntityInstance":0,
+ "Mutable":true
+ },
+ {
+ "EntityId":"0x1D",
+ "EntityInstance":0,
+ "Mutable":true,
+ "Name":"REAR_FAN0_PWM",
+ "Type":"I2CFan"
+ },
+ {
+ "Address":"0x2c",
+ "Bus":"18",
+ "Connector":{
+ "Name":"REAR_FAN1_SPEED",
+ "Pwm":1,
+ "PwmName":"REAR_FAN1_PWM",
+ "Tachs":[
+ 0
+ ]
+ },
+ "Index":1,
+ "MaxReading":20000,
+ "Name":"REAR_FAN1_SPEED",
+ "PowerState":"Always",
+ "Thresholds":[
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Severity":1,
+ "Value":2000
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Severity":0,
+ "Value":1000
+ }
+ ],
+ "Type":"I2CFan",
+ "EntityId":"0x1D",
+ "EntityInstance":1
+ },
+ {
+ "EntityId":"0x1D",
+ "EntityInstance":1,
+ "Mutable":true,
+ "Name":"REAR_FAN1_PWM",
+ "Type":"I2CFan"
+ },
+ {
+ "Address":"0x2c",
+ "Bus":"18",
+ "Connector":{
+ "Name":"REAR_FAN2_SPEED",
+ "Pwm":2,
+ "PwmName":"REAR_FAN2_PWM",
+ "Tachs":[
+ 0
+ ],
+ "EntityId":"0x1D",
+ "EntityInstance":2,
+ "Mutable":true
+ },
+ "Index":2,
+ "MaxReading":20000,
+ "Name":"REAR_FAN2_SPEED",
+ "PowerState":"Always",
+ "Thresholds":[
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Severity":1,
+ "Value":2000
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Severity":0,
+ "Value":1000
+ }
+ ],
+ "Type":"I2CFan",
+ "EntityId":"0x1D",
+ "EntityInstance":2
+ },
+ {
+ "EntityId":"0x1D",
+ "EntityInstance":2,
+ "Mutable":true,
+ "Name":"REAR_FAN2_PWM",
+ "Type":"I2CFan"
+ },
+ {
+ "Address":"0x2c",
+ "Bus":"18",
+ "Connector":{
+ "Name":"REAR_FAN3_SPEED",
+ "Pwm":3,
+ "PwmName":"REAR_FAN3_PWM",
+ "Tachs":[
+ 0
+ ],
+ "EntityId":"0x1D",
+ "EntityInstance":3,
+ "Mutable":true
+ },
+ "Index":3,
+ "MaxReading":20000,
+ "Name":"REAR_FAN3_SPEED",
+ "PowerState":"Always",
+ "Thresholds":[
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Severity":1,
+ "Value":2000
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Severity":0,
+ "Value":1000
+ }
+ ],
+ "Type":"I2CFan",
+ "EntityId":"0x1D",
+ "EntityInstance":3
+ },
+ {
+ "EntityId":"0x1D",
+ "EntityInstance":3,
+ "Mutable":true,
+ "Name":"REAR_FAN3_PWM",
+ "Type":"I2CFan"
+ },
+ {
+ "Address":"0x2c",
+ "Bus":"18",
+ "Connector":{
+ "Name":"REAR_FAN4_SPEED",
+ "Pwm":4,
+ "PwmName":"REAR_FAN4_PWM",
+ "Tachs":[
+ 0
+ ],
+ "EntityId":"0x1D",
+ "EntityInstance":4,
+ "Mutable":true
+ },
+ "Index":4,
+ "MaxReading":20000,
+ "Name":"REAR_FAN4_SPEED",
+ "PowerState":"Always",
+ "Thresholds":[
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Severity":1,
+ "Value":2000
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Severity":0,
+ "Value":1000
+ }
+ ],
+ "Type":"I2CFan",
+ "EntityId":"0x1D",
+ "EntityInstance":4
+ },
+ {
+ "EntityId":"0x1D",
+ "EntityInstance":4,
+ "Mutable":true,
+ "Name":"REAR_FAN4_PWM",
+ "Type":"I2CFan"
+ },
+ {
+ "Address":"0x2c",
+ "Bus":"18",
+ "Connector":{
+ "Name":"REAR_FAN5_SPEED",
+ "Pwm":5,
+ "PwmName":"REAR_FAN5_PWM",
+ "Tachs":[
+ 0
+ ],
+ "EntityId":"0x1D",
+ "EntityInstance":5,
+ "Mutable":true
+ },
+ "Index":5,
+ "MaxReading":20000,
+ "Name":"REAR_FAN5_SPEED",
+ "PowerState":"Always",
+ "Thresholds":[
+ {
+ "Direction":"less than",
+ "Name":"lower critical",
+ "Severity":1,
+ "Value":2000
+ },
+ {
+ "Direction":"less than",
+ "Name":"lower non critical",
+ "Severity":0,
+ "Value":1000
+ }
+ ],
+ "Type":"I2CFan",
+ "EntityId":"0x1D",
+ "EntityInstance":5
+ },
+ {
+ "EntityId":"0x1D",
+ "EntityInstance":5,
+ "Mutable":true,
+ "Name":"REAR_FAN5_PWM",
+ "Type":"I2CFan"
+ },
+ {
+ "Name": "Fan1Zone",
+ "Type": "Pid.Zone",
+ "MinThermalOutput": 25,
+ "FailSafePercent": 100
+ },
+ {
+ "Name": "Fan2Zone",
+ "Type": "Pid.Zone",
+ "MinThermalOutput": 25,
+ "FailSafePercent": 100
+ },
+ {
+ "Name": "REAR_FAN0_1",
+ "Type": "Pid",
+ "Class": "fan",
+ "SetPoint": 65.0,
+ "FFGainCoefficient": 1.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": 0.0,
+ "ICoefficient": 0.0,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "REAR_FAN0_SPEED",
+ "REAR_FAN1_SPEED"
+ ],
+ "Outputs": [
+ "REAR_FAN0_PWM",
+ "REAR_FAN1_PWM"
+ ],
+ "Zones": [
+ "Fan1Zone"
+ ]
+ },
+ {
+ "Name": "REAR_FAN2",
+ "Type": "Pid",
+ "Class": "fan",
+ "SetPoint": 65.0,
+ "FFGainCoefficient": 1.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": 0.0,
+ "ICoefficient": 0.0,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "REAR_FAN2_SPEED"
+ ],
+ "Outputs": [
+ "REAR_FAN2_PWM"
+ ],
+ "Zones": [
+ "Fan1Zone"
+ ]
+ },
+ {
+ "Name": "REAR_FAN3",
+ "Type": "Pid",
+ "Class": "fan",
+ "SetPoint": 65.0,
+ "FFGainCoefficient": 1.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": 0.0,
+ "ICoefficient": 0.0,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "REAR_FAN3_SPEED"
+ ],
+ "Outputs": [
+ "REAR_FAN3_PWM"
+ ],
+ "Zones": [
+ "Fan2Zone"
+ ]
+ },
+ {
+ "Name": "REAR_FAN4_5",
+ "Type": "Pid",
+ "Class": "fan",
+ "SetPoint": 65.0,
+ "FFGainCoefficient": 1.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": 0.0,
+ "ICoefficient": 0.0,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "REAR_FAN4_SPEED",
+ "REAR_FAN5_SPEED"
+ ],
+ "Outputs": [
+ "REAR_FAN4_PWM",
+ "REAR_FAN5_PWM"
+ ],
+ "Zones": [
+ "Fan2Zone"
+ ]
+ },
+ {
+ "Name": "CPU0_SOC_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 90.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -4.5,
+ "ICoefficient": -0.3,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "CPU0_SOC_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan1Zone"
+ ]
+ },
+ {
+ "Name": "CPU0_SOC_VRD_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 85.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "CPU0_SOC_VRD_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan1Zone"
+ ]
+ },
+ {
+ "Name": "CPU0_DIMM_VRD_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 85.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "CPU0_DIMM_VRD_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan1Zone"
+ ]
+ },
+ {
+ "Name": "CPU0_CORE_VRD_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 85.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "CPU0_CORE_VRD_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan1Zone"
+ ]
+ },
+ {
+ "Name": "CPU0_DIMMG0_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 60.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "CPU0_DIMMG0_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan1Zone"
+ ]
+ },
+ {
+ "Name": "CPU0_DIMMG1_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 60.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "CPU0_DIMMG0_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan1Zone"
+ ]
+ },
+ {
+ "Name": "CPU1_SOC_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 90.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -4.5,
+ "ICoefficient": -0.3,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "CPU1_SOC_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan2Zone"
+ ]
+ },
+ {
+ "Name": "CPU1_SOC_VRD_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 85.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "CPU1_SOC_VRD_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan2Zone"
+ ]
+ },
+ {
+ "Name": "CPU1_DIMM_VRD_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 85.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "CPU1_DIMM_VRD_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan2Zone"
+ ]
+ },
+ {
+ "Name": "CPU1_CORE_VRD_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 85.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "CPU1_CORE_VRD_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan2Zone"
+ ]
+ },
+ {
+ "Name": "CPU1_DIMMG0_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 60.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "CPU1_DIMMG0_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan2Zone"
+ ]
+ },
+ {
+ "Name": "CPU1_DIMMG1_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 60.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "CPU1_DIMMG0_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan2Zone"
+ ]
+ },
+ {
+ "Name": "Mobo_STB_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 85.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "Mobo_STB_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan2Zone"
+ ]
+ },
+ {
+ "Name": "Mobo_NBM1_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 75.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "Mobo_NBM1_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan1Zone"
+ ]
+ },
+ {
+ "Name": "Mobo_NBM2_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 75.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "Mobo_NBM2_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan2Zone"
+ ]
+ },
+ {
+ "Name": "Mobo_NBM1_ZONE_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 60.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "Mobo_NBM1_ZONE_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan1Zone"
+ ]
+ },
+ {
+ "Name": "Mobo_NBM2_ZONE_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 60.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "Mobo_NBM2_ZONE_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan2Zone"
+ ]
+ },
+ {
+ "Name": "Mobo_M2_ZONE_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 50.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -2.0,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "Mobo_M2_ZONE_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan1Zone"
+ ]
+ },
+ {
+ "Name": "Mobo_BATT_ZONE_TEMP",
+ "Type": "Pid",
+ "Class": "temp",
+ "SetPoint": 50.0,
+ "FFGainCoefficient": 0.0,
+ "FFOffCoefficient": 0.0,
+ "PCoefficient": -3.5,
+ "ICoefficient": -0.1,
+ "ILimitMin": 0.0,
+ "ILimitMax": 0.0,
+ "PositiveHysteresis": 0.0,
+ "NegativeHysteresis": 0.0,
+ "SlewPos": 0.0,
+ "SlewNeg": 0.0,
+ "OutLimitMin": 25.0,
+ "OutLimitMax": 100.0,
+ "Inputs": [
+ "Mobo_BATT_ZONE_T"
+ ],
+ "Outputs": [],
+ "Zones": [
+ "Fan2Zone"
+ ]
+ }
+ ],
+ "Name":"Kudo_MB",
+ "Probe":"xyz.openbmc_project.FruDevice({'BOARD_SERIAL_NUMBER': 'MCN*'})",
+ "Type":"Board",
+ "xyz.openbmc_project.Inventory.Decorator.Asset":{
+ "Manufacturer":"$BOARD_MANUFACTURER",
+ "Model":"$BOARD_PRODUCT_NAME",
+ "PartNumber":"$BOARD_PART_NUMBER",
+ "SerialNumber":"$BOARD_SERIAL_NUMBER"
+ },
+ "xyz.openbmc_project.Inventory.Decorator.FruDevice":{
+ "Bus":"$bus",
+ "Address":"$address"
+ },
+ "xyz.openbmc_project.Inventory.Decorator.Ipmi": {
+ "EntityId": "0x07",
+ "EntityInstance": 1
+ }
+ }
+]
diff --git a/meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager_%.bbappend b/meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager_%.bbappend
new file mode 100644
index 000000000..58b52f50b
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager_%.bbappend
@@ -0,0 +1,7 @@
+FILESEXTRAPATHS_prepend_kudo := "${THISDIR}/${PN}:"
+
+SRC_URI_append_kudo = " file://kudo.json"
+
+do_install_append_kudo () {
+ install -m 0644 -D ${WORKDIR}/kudo.json ${D}/usr/share/entity-manager/configurations/kudo.json
+}
diff --git a/meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service b/meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service
new file mode 100644
index 000000000..8f16d6818
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=OpenBMC Fan Control Daemon
+After=xyz.openbmc_project.EntityManager.service
+After=xyz.openbmc_project.ObjectMapper.service
+
+[Service]
+Type=simple
+ExecStart=/usr/bin/swampd -t
+Restart=always
+RestartSec=5
+StartLimitInterval=0
+
+[Install]
+WantedBy=basic.target \ No newline at end of file
diff --git a/meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control_%.bbappend b/meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control_%.bbappend
new file mode 100644
index 000000000..03f391cc1
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control_%.bbappend
@@ -0,0 +1,6 @@
+FILESEXTRAPATHS_prepend_kudo := "${THISDIR}/${PN}:"
+SRC_URI_append_kudo = " file://phosphor-pid-control.service"
+
+inherit systemd
+
+SYSTEMD_SERVICE_${PN}_append_kudo = " phosphor-pid-control.service"
diff --git a/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init.bb b/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init.bb
new file mode 100644
index 000000000..c380feba3
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init.bb
@@ -0,0 +1,29 @@
+SUMMARY = "Initialize PWM sensors"
+DESCRIPTION = "Initialize PWM sensors"
+LICENSE = "CLOSED"
+PR = "r1"
+
+inherit systemd
+
+DEPENDS = "systemd"
+RDEPENDS_${PN} = "bash"
+
+S = "${WORKDIR}"
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+SRC_URI += " \
+ file://pwm_init.service \
+ file://bin/pwm_init.sh \
+ "
+
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_AUTO_ENABLE = "enable"
+SYSTEMD_SERVICE_${PN} += "pwm_init.service"
+
+FILES_${PN} += "${bindir}/* ${systemd_system_unitdir}/*"
+
+do_install_append() {
+ install -d ${D}${bindir}
+ install -m 0755 ${S}/bin/* ${D}${bindir}/
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${S}/*.service ${D}${systemd_system_unitdir}
+}
diff --git a/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/bin/pwm_init.sh b/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/bin/pwm_init.sh
new file mode 100644
index 000000000..d559f6a31
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/bin/pwm_init.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+#
+# Set all fans to pwm mode.
+
+# Set all pwm_enable to 1
+find /sys/class/hwmon/hwmon*/ -name 'pwm*_enable' -exec bash -c 'echo "${1}" && echo 1 > "${1}" && cat "${1}"' -- {} \; \ No newline at end of file
diff --git a/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/pwm_init.service b/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/pwm_init.service
new file mode 100644
index 000000000..981b8773c
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/pwm_init.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Init PWM sensors
+Before=xyz.openbmc_project.fansensor.service
+
+[Service]
+Type=oneshot
+ExecStart=/usr/bin/pwm_init.sh
+
+[Install]
+WantedBy=multi-user.target
+WantedBy=xyz.openbmc_project.fansensor.service
diff --git a/meta-fii/meta-kudo/recipes-phosphor/image/obmc-phosphor-image.bbappend b/meta-fii/meta-kudo/recipes-phosphor/image/obmc-phosphor-image.bbappend
index 0efccea65..588803b3b 100644
--- a/meta-fii/meta-kudo/recipes-phosphor/image/obmc-phosphor-image.bbappend
+++ b/meta-fii/meta-kudo/recipes-phosphor/image/obmc-phosphor-image.bbappend
@@ -1,7 +1,7 @@
-OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " ipmitool"
-OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " ethtool"
OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " google-ipmi-sys"
OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " google-ipmi-i2c"
OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " phosphor-ipmi-blobs"
OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " phosphor-ipmi-ethstats"
OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " phosphor-ipmi-flash"
+OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " usb-network"
+OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " entity-manager"
diff --git a/meta-fii/meta-kudo/recipes-phosphor/ipmi/phosphor-ipmi-flash_%.bbappend b/meta-fii/meta-kudo/recipes-phosphor/ipmi/phosphor-ipmi-flash_%.bbappend
new file mode 100644
index 000000000..fa9468ac4
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/ipmi/phosphor-ipmi-flash_%.bbappend
@@ -0,0 +1,3 @@
+PACKAGECONFIG_append_kudo = " nuvoton-p2a-mbox net-bridge"
+
+IPMI_FLASH_BMC_ADDRESS_kudo = "0xF0848000"
diff --git a/meta-fii/meta-kudo/recipes-phosphor/sel-logger/phosphor-sel-logger_%.bbappend b/meta-fii/meta-kudo/recipes-phosphor/sel-logger/phosphor-sel-logger_%.bbappend
new file mode 100644
index 000000000..664ca5901
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/sel-logger/phosphor-sel-logger_%.bbappend
@@ -0,0 +1,2 @@
+# Enable threshold monitoring
+EXTRA_OECMAKE_append_kudo = " -DSEL_LOGGER_MONITOR_THRESHOLD_EVENTS=ON"
diff --git a/meta-google/conf/layer.conf b/meta-google/conf/layer.conf
index 24a84800c..ed605d1e6 100644
--- a/meta-google/conf/layer.conf
+++ b/meta-google/conf/layer.conf
@@ -14,4 +14,4 @@ BBFILES_DYNAMIC += " \
BBFILE_COLLECTIONS += "google-layer"
BBFILE_PATTERN_google-layer := "^${LAYERDIR}/"
LAYERVERSION_google-layer = "1"
-LAYERSERIES_COMPAT_google-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_google-layer = "gatesgarth hardknott"
diff --git a/meta-google/recipes-core/dropbear/dropbear/dropbear.default b/meta-google/recipes-core/dropbear/dropbear/dropbear.default
new file mode 100644
index 000000000..e5f778145
--- /dev/null
+++ b/meta-google/recipes-core/dropbear/dropbear/dropbear.default
@@ -0,0 +1 @@
+DROPBEAR_EXTRA_ARGS=""
diff --git a/meta-google/recipes-core/dropbear/dropbear_%.bbappend b/meta-google/recipes-core/dropbear/dropbear_%.bbappend
index 20c53fecb..e93eba8b6 100644
--- a/meta-google/recipes-core/dropbear/dropbear_%.bbappend
+++ b/meta-google/recipes-core/dropbear/dropbear_%.bbappend
@@ -1,3 +1,10 @@
+FILESEXTRAPATHS_prepend_gbmc := "${THISDIR}/${PN}:"
+SRC_URI_append_gbmc = " file://dropbear.default"
+SYSTEMD_AUTO_ENABLE_${PN}_prod = "disable"
+
+FILESEXTRAPATHS_remove_gbmc_bandaid := "${THISDIR}/${PN}:"
+SYSTEMD_AUTO_ENABLE_${PN}_bandaid_prod = "enable"
+
# Allow SSH to the mgmt node on DEV builds
do_install_append_gbmc_dev() {
nftables_dir=${D}${sysconfdir}/nftables
diff --git a/meta-google/recipes-core/systemd/systemd_%.bbappend b/meta-google/recipes-core/systemd/systemd_%.bbappend
index 88065e2e0..d40168e45 100644
--- a/meta-google/recipes-core/systemd/systemd_%.bbappend
+++ b/meta-google/recipes-core/systemd/systemd_%.bbappend
@@ -3,3 +3,6 @@ PACKAGECONFIG_append_gbmc = " coredump"
# Disable timesync as we don't use it and it makes rebooting much slower
PACKAGECONFIG_remove_gbmc = "timesyncd"
+
+# We don't need any legacy sysv rc compatability
+PACKAGECONFIG_remove_gbmc = "sysvinit"
diff --git a/meta-google/recipes-extended/networking/sslh_git.bb b/meta-google/recipes-extended/networking/sslh_git.bb
index c874f4420..749ee1d41 100644
--- a/meta-google/recipes-extended/networking/sslh_git.bb
+++ b/meta-google/recipes-extended/networking/sslh_git.bb
@@ -4,7 +4,7 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = "git://github.com/yrutschle/sslh"
-SRCREV = "de8e5725c27ba6941f47254e6fcb485e94f2de35"
+SRCREV = "b72baa0622ae2d29152dc251d7c21fe80a3052da"
S = "${WORKDIR}/git"
inherit perlnative
diff --git a/meta-google/recipes-google/acpi-power-state-daemon/acpi-power-state-daemon_git.bb b/meta-google/recipes-google/acpi-power-state-daemon/acpi-power-state-daemon_git.bb
index bf26a8c07..0755d4eab 100644
--- a/meta-google/recipes-google/acpi-power-state-daemon/acpi-power-state-daemon_git.bb
+++ b/meta-google/recipes-google/acpi-power-state-daemon/acpi-power-state-daemon_git.bb
@@ -1,28 +1,19 @@
SUMMARY = "ACPI Power/Sleep state daemon to allow host state events"
DESCRIPTION = "ACPI Power/Sleep state daemon to allow host state events"
-HOMEPAGE = "http://github.com/openbmc/google-misc"
-PR = "r1"
-PV = "1.0+git${SRCPV}"
+GOOGLE_MISC_PROJ = "acpi-power-state-daemon"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://../LICENSE;md5=34400b68072d710fecd0a2940a0d1658"
+require ../google-misc/google-misc.inc
-SRC_URI += "git://github.com/openbmc/google-misc"
-SRCREV = "15fe169d1fbdd510bb9cfc9bb725baf0613350ff"
-S = "${WORKDIR}/git/acpi-power-state-daemon"
-
-inherit meson
-inherit pkgconfig
-inherit systemd
+inherit pkgconfig systemd
DEPENDS += " \
- phosphor-dbus-interfaces \
- sdbusplus \
- systemd \
- "
+ phosphor-dbus-interfaces \
+ sdbusplus \
+ systemd \
+ "
SYSTEMD_SERVICE_${PN} = " \
- acpi-power-state.service \
- host-s0-state.target \
- host-s5-state.target \
- "
+ acpi-power-state.service \
+ host-s0-state.target \
+ host-s5-state.target \
+ "
diff --git a/meta-google/recipes-google/google-misc/google-misc.inc b/meta-google/recipes-google/google-misc/google-misc.inc
new file mode 100644
index 000000000..95f52613a
--- /dev/null
+++ b/meta-google/recipes-google/google-misc/google-misc.inc
@@ -0,0 +1,12 @@
+HOMEPAGE = "http://github.com/openbmc/google-misc"
+PR = "r1"
+PV = "1.0+git${SRCPV}"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://../../LICENSE;md5=34400b68072d710fecd0a2940a0d1658"
+
+SRC_URI += "git://github.com/openbmc/google-misc"
+SRCREV = "4c68ffb8b08fa4484824586ef4a981bcfabd38bb"
+
+S = "${WORKDIR}/git/subprojects/${GOOGLE_MISC_PROJ}"
+inherit meson
diff --git a/meta-google/recipes-google/ipmi/metrics-ipmi-blobs_git.bb b/meta-google/recipes-google/ipmi/metrics-ipmi-blobs_git.bb
new file mode 100644
index 000000000..4518f49b5
--- /dev/null
+++ b/meta-google/recipes-google/ipmi/metrics-ipmi-blobs_git.bb
@@ -0,0 +1,27 @@
+SUMMARY = "gBMC Health Metrics Blob"
+DESCRIPTION = "BMC health metrics IPMI blob handler."
+GOOGLE_MISC_PROJ = "metrics-ipmi-blobs"
+
+require ../google-misc/google-misc.inc
+
+inherit pkgconfig
+
+DEPENDS += " \
+ phosphor-ipmi-blobs \
+ phosphor-logging \
+ protobuf-native \
+ protobuf \
+ "
+
+FILES_${PN} += " \
+ ${libdir}/ipmid-providers/libmetricsblob.so* \
+ ${libdir}/blob-ipmid/libmetricsblob.so* \
+ "
+BLOBIPMI_PROVIDER_LIBRARY += "libmetricsblob.so"
+
+INSANE_SKIP_${PN} += "dev-so"
+
+do_install_append() {
+ install -d ${D}/${libdir}/blob-ipmid
+ ln -s ../ipmid-providers/libmetricsblob.so ${D}/${libdir}/blob-ipmid/libmetricsblob.so.0
+}
diff --git a/meta-google/recipes-google/kcs/gbmc-kcs-config.bb b/meta-google/recipes-google/kcs/gbmc-kcs-config.bb
new file mode 100644
index 000000000..ca7110660
--- /dev/null
+++ b/meta-google/recipes-google/kcs/gbmc-kcs-config.bb
@@ -0,0 +1,46 @@
+SUMMARY = "Configures KCS for a gBMC system"
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+inherit systemd
+
+S = "${WORKDIR}"
+
+PROVIDES += "virtual-obmc-host-ipmi-hw"
+RPROVIDES_${PN} += "virtual-obmc-host-ipmi-hw"
+
+FILES_${PN} += "${systemd_system_unitdir}"
+RDEPENDS_${PN} += "google-kcsbridge"
+
+GBMC_KCS_DEV ?= ""
+
+def systemd_escape_char(c):
+ return '\\x{:x}'.format(ord(c))
+
+def systemd_escape(unit):
+ import string
+ ret = ''
+ if len(unit) > 0 and unit[0] == '.':
+ ret += systemd_escape_char(unit[0])
+ unit = unit[1:]
+ for c in unit:
+ if c == '/':
+ ret += '-'
+ elif c not in {*string.ascii_letters, *string.digits, ':', '_', '.'}:
+ ret += systemd_escape_char(c)
+ else:
+ ret += c
+ return ret
+
+do_install_append() {
+ if [ -z '${GBMC_KCS_DEV}' ]; then
+ echo "Missing GBMC_KCS_DEV" >&2
+ exit 1
+ fi
+
+ wantdir=${D}${systemd_system_unitdir}/multi-user.target.wants
+ install -d -m0755 $wantdir
+ inst="${@systemd_escape(GBMC_KCS_DEV)}"
+ ln -sv ../kcsbridge@.service $wantdir/kcsbridge@$inst.service
+}
diff --git a/meta-google/recipes-google/kcs/google-kcsbridge_git.bb b/meta-google/recipes-google/kcs/google-kcsbridge_git.bb
new file mode 100644
index 000000000..4b3138eee
--- /dev/null
+++ b/meta-google/recipes-google/kcs/google-kcsbridge_git.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Google NCSI daemon"
+DESCRIPTION = "Google NCSI daemon."
+GOOGLE_MISC_PROJ = "kcsbridge"
+
+require ../google-misc/google-misc.inc
+
+inherit systemd
+
+DEPENDS += " \
+ fmt \
+ sdbusplus \
+ sdeventplus \
+ stdplus \
+"
+
+SYSTEMD_SERVICE_${PN} += "kcsbridge@.service"
diff --git a/meta-google/recipes-google/nanopb/nanopb_0.4.5.bb b/meta-google/recipes-google/nanopb/nanopb_0.4.5.bb
new file mode 100644
index 000000000..232872e75
--- /dev/null
+++ b/meta-google/recipes-google/nanopb/nanopb_0.4.5.bb
@@ -0,0 +1,24 @@
+SUMMARY = "Nanopb library"
+DESCRIPTION = "Nanopb - Protocol Buffers for Embedded Systems"
+HOMEPAGE = "https://github.com/nanopb/nanopb"
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=9db4b73a55a3994384112efcdb37c01f"
+
+inherit cmake python3native
+
+SRC_URI = "git://github.com/nanopb/nanopb"
+SRCREV = "f7e4140a27d9e63517b5d596bc117bd6d5248888"
+S = "${WORKDIR}/git"
+
+DEPENDS = "protobuf-native python3-protobuf"
+
+RDEPENDS_${PN}-generator += "python3 python3-protobuf"
+
+PACKAGES_prepend = "${PN}-generator ${PN}-runtime "
+
+FILES_${PN}-generator = "${libdir}/python* ${bindir}"
+
+FILES_${PN}-runtime = "${libdir}/*.so.*"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-google/recipes-google/ncsi/ncsid_git.bb b/meta-google/recipes-google/ncsi/ncsid_git.bb
index de5eb6e5b..4d74c992a 100644
--- a/meta-google/recipes-google/ncsi/ncsid_git.bb
+++ b/meta-google/recipes-google/ncsi/ncsid_git.bb
@@ -1,17 +1,10 @@
SUMMARY = "Google NCSI daemon"
DESCRIPTION = "Google NCSI daemon."
-HOMEPAGE = "http://github.com/openbmc/google-misc"
-PR = "r1"
-PV = "1.0+git${SRCPV}"
+GOOGLE_MISC_PROJ = "ncsid"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://../LICENSE;md5=34400b68072d710fecd0a2940a0d1658"
+require ../google-misc/google-misc.inc
-SRC_URI += "git://github.com/openbmc/google-misc"
-SRCREV = "15fe169d1fbdd510bb9cfc9bb725baf0613350ff"
-S = "${WORKDIR}/git/ncsid"
-
-inherit meson systemd
+inherit systemd
SYSTEMD_SERVICE_${PN} += " \
dhcp4@.service \
@@ -21,13 +14,13 @@ SYSTEMD_SERVICE_${PN} += " \
nic-hostless@.target \
update-static-neighbors@.service \
update-static-neighbors@.timer \
-"
+ "
DEPENDS += " \
fmt \
sdbusplus \
stdplus \
-"
+ "
RDEPENDS_${PN} += " \
bash \
@@ -37,4 +30,4 @@ RDEPENDS_${PN} += " \
ndisc6-ndisc6 \
ndisc6-rdisc6 \
systemd \
-"
+ "
diff --git a/meta-google/recipes-google/networking/files/gbmc-ip-monitor-test.sh b/meta-google/recipes-google/networking/files/gbmc-ip-monitor-test.sh
new file mode 100755
index 000000000..8b5f3492f
--- /dev/null
+++ b/meta-google/recipes-google/networking/files/gbmc-ip-monitor-test.sh
@@ -0,0 +1,181 @@
+#!/bin/bash
+# Copyright 2021 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+cd "$(dirname "$0")"
+source gbmc-ip-monitor.sh
+if [ -e ../gbmc-ip-monitor.bb ]; then
+ source '../../test/test-sh/lib.sh'
+else
+ source "$SYSROOT/usr/share/test/lib.sh"
+fi
+
+test_init_empty() {
+ ip() {
+ return 0
+ }
+ str="$(gbmc_ip_monitor_generate_init)" || fail
+ expect_streq "$str" '[INIT]'
+}
+
+test_init_link_populated() {
+ ip() {
+ if [ "$1" = 'link' ]; then
+ cat <<EOF
+1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
+ link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
+2: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
+ link/ether aa:aa:aa:aa:aa:aa brd ff:ff:ff:ff:ff:ff
+ altname enp0s31f6
+EOF
+ fi
+ return 0
+ }
+ str="$(gbmc_ip_monitor_generate_init)" || fail
+ expect_streq "$str" <<EOF
+[LINK]1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
+ link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
+[LINK]2: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
+ link/ether aa:aa:aa:aa:aa:aa brd ff:ff:ff:ff:ff:ff
+ altname enp0s31f6
+[INIT]
+EOF
+}
+
+test_init_addr_populated() {
+ ip() {
+ if [ "$1" = 'addr' ]; then
+ cat <<EOF
+1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
+ link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
+ inet 127.0.0.1/8 scope host lo
+ valid_lft forever preferred_lft forever
+ inet6 ::1/128 scope host
+ valid_lft forever preferred_lft forever
+2: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
+ link/ether aa:aa:aa:aa:aa:aa brd ff:ff:ff:ff:ff:ff
+ altname enp0s31f6
+ inet 192.168.242.57/23 brd 192.168.243.255 scope global dynamic noprefixroute eno2
+ valid_lft 83967sec preferred_lft 83967sec
+ inet6 fd01:ff2:5687:4:cf03:45f3:983a:96eb/64 scope global temporary dynamic
+ valid_lft 518788sec preferred_lft 183sec
+EOF
+ fi
+ return 0
+ }
+ str="$(gbmc_ip_monitor_generate_init)" || fail
+ expect_streq "$str" <<EOF
+[ADDR]1: lo inet 127.0.0.1/8 scope host lo
+[ADDR]1: lo inet6 ::1/128 scope host
+[ADDR]2: eno2 inet 192.168.242.57/23 brd 192.168.243.255 scope global dynamic noprefixroute eno2
+[ADDR]2: eno2 inet6 fd01:ff2:5687:4:cf03:45f3:983a:96eb/64 scope global temporary dynamic
+[INIT]
+EOF
+}
+
+test_init_route_populated() {
+ ip() {
+ if [ "$1" = "-4" -a "${2-}" = 'route' ]; then
+ cat <<EOF
+default via 192.168.243.254 dev eno2 proto dhcp metric 100
+192.168.242.0/23 dev eno2 proto kernel scope link src 192.168.242.57 metric 100
+EOF
+ elif [ "$1" = "-6" -a "${2-}" = 'route' ]; then
+ cat <<EOF
+::1 dev lo proto kernel metric 256 pref medium
+fd01:ff2:5687:4::/64 dev eno2 proto ra metric 100 pref medium
+fe80::/64 dev eno2 proto kernel metric 100 pref medium
+EOF
+ fi
+ return 0
+ }
+ str="$(gbmc_ip_monitor_generate_init)" || fail
+ expect_streq "$str" <<EOF
+[ROUTE]default via 192.168.243.254 dev eno2 proto dhcp metric 100
+[ROUTE]192.168.242.0/23 dev eno2 proto kernel scope link src 192.168.242.57 metric 100
+[ROUTE]::1 dev lo proto kernel metric 256 pref medium
+[ROUTE]fd01:ff2:5687:4::/64 dev eno2 proto ra metric 100 pref medium
+[ROUTE]fe80::/64 dev eno2 proto kernel metric 100 pref medium
+[INIT]
+EOF
+}
+
+testParseNonTag() {
+ expect_err 2 gbmc_ip_monitor_parse_line ''
+ expect_err 2 gbmc_ip_monitor_parse_line ' '
+ expect_err 2 gbmc_ip_monitor_parse_line ' Data'
+ expect_err 2 gbmc_ip_monitor_parse_line ' [LINK]'
+ expect_err 2 gbmc_ip_monitor_parse_line ' [ROUTE]'
+}
+
+testParseInit() {
+ expect_err 0 gbmc_ip_monitor_parse_line '[INIT]'
+ expect_streq "$change" 'init'
+}
+
+testParseAddrAdd() {
+ expect_err 0 gbmc_ip_monitor_parse_line '[ADDR]2: eno2 inet6 fd01:ff2:5687:4:cf03:45f3:983a:96eb/128 scope global temporary dynamic'
+ expect_streq "$change" 'addr'
+ expect_streq "$action" 'add'
+ expect_streq "$intf" 'eno2'
+ expect_streq "$fam" 'inet6'
+ expect_streq "$ip" 'fd01:ff2:5687:4:cf03:45f3:983a:96eb'
+ expect_streq "$scope" 'global'
+ expect_streq "$flags" 'temporary dynamic'
+}
+
+testParseAddrDel() {
+ expect_err 0 gbmc_ip_monitor_parse_line '[ADDR]Deleted 2: eno2 inet6 fe80::aaaa:aaff:feaa:aaaa/64 scope link'
+ expect_streq "$change" 'addr'
+ expect_streq "$action" 'del'
+ expect_streq "$intf" 'eno2'
+ expect_streq "$fam" 'inet6'
+ expect_streq "$ip" 'fe80::aaaa:aaff:feaa:aaaa'
+ expect_streq "$scope" 'link'
+ expect_streq "$flags" ''
+}
+
+testParseRouteAdd() {
+ expect_err 0 gbmc_ip_monitor_parse_line "[ROUTE]fd01:ff2:5687:4::/64 dev eno2 proto ra metric 100 pref medium"
+ expect_streq "$change" 'route'
+ expect_streq "$action" 'add'
+ expect_streq "$route" 'fd01:ff2:5687:4::/64 dev eno2 proto ra metric 100 pref medium'
+}
+
+testParseRouteDel() {
+ expect_err 0 gbmc_ip_monitor_parse_line "[ROUTE]Deleted fd01:ff2:5687:4::/64 dev eno2 proto ra metric 100 pref medium"
+ expect_streq "$change" 'route'
+ expect_streq "$action" 'del'
+ expect_streq "$route" 'fd01:ff2:5687:4::/64 dev eno2 proto ra metric 100 pref medium'
+}
+
+testParseLinkAdd() {
+ expect_err 0 gbmc_ip_monitor_parse_line "[LINK]2: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000" \
+ < <(echo 'link/ether aa:aa:aa:aa:aa:aa brd ff:ff:ff:ff:ff:ff')
+ expect_streq "$change" 'link'
+ expect_streq "$action" 'add'
+ expect_streq "$intf" 'eno2'
+ expect_streq "$mac" 'aa:aa:aa:aa:aa:aa'
+}
+
+testParseLinkDel() {
+ expect_err 0 gbmc_ip_monitor_parse_line "[LINK]Deleted 2: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000" \
+ < <(echo 'link/ether aa:aa:aa:aa:aa:aa brd ff:ff:ff:ff:ff:ff')
+ expect_streq "$change" 'link'
+ expect_streq "$action" 'del'
+ expect_streq "$intf" 'eno2'
+ expect_streq "$mac" 'aa:aa:aa:aa:aa:aa'
+}
+
+main
diff --git a/meta-google/recipes-google/networking/files/gbmc-ip-monitor.service b/meta-google/recipes-google/networking/files/gbmc-ip-monitor.service
new file mode 100644
index 000000000..435eac91d
--- /dev/null
+++ b/meta-google/recipes-google/networking/files/gbmc-ip-monitor.service
@@ -0,0 +1,9 @@
+[Unit]
+Before=systemd-networkd.service
+
+[Service]
+Type=notify
+ExecStart=/usr/libexec/gbmc-ip-monitor.sh
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-google/recipes-google/networking/files/gbmc-ip-monitor.sh b/meta-google/recipes-google/networking/files/gbmc-ip-monitor.sh
new file mode 100755
index 000000000..baeff9a85
--- /dev/null
+++ b/meta-google/recipes-google/networking/files/gbmc-ip-monitor.sh
@@ -0,0 +1,122 @@
+#!/bin/bash
+# Copyright 2021 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# A list of functions which get executed for each netlink event received.
+# These are configured by the files included below.
+GBMC_IP_MONITOR_HOOKS=()
+
+# Load configurations from a known location in the filesystem to populate
+# hooks that are executed after each event.
+shopt -s nullglob
+for conf in /usr/share/gbmc-ip-monitor/*.sh; do
+ source "$conf"
+done
+
+gbmc_ip_monitor_run_hooks() {
+ local hook
+ for hook in "${GBMC_IP_MONITOR_HOOKS[@]}"; do
+ "$hook" || continue
+ done
+}
+
+gbmc_ip_monitor_generate_init() {
+ ip link | sed 's,^[^ ],[LINK]\0,'
+ local intf=
+ local line
+ while read line; do
+ [[ "$line" =~ ^([0-9]+:[[:space:]][^:]+) ]] && intf="${BASH_REMATCH[1]}"
+ [[ "$line" =~ ^[[:space:]]*inet ]] && echo "[ADDR]$intf $line"
+ done < <(ip addr)
+ ip -4 route | sed 's,^,[ROUTE],'
+ ip -6 route | sed 's,^,[ROUTE],'
+ echo '[INIT]'
+}
+
+gbmc_ip_monitor_parse_line() {
+ local line="$1"
+ if [[ "$line" == '[INIT]'* ]]; then
+ change=init
+ echo "Initialized" >&2
+ elif [[ "$line" == '[ADDR]'* ]]; then
+ change=addr
+ action=add
+ pfx_re='^\[ADDR\](Deleted )?[0-9]+:[[:space:]]*'
+ intf_re='([^ ]+)[[:space:]]+'
+ fam_re='([^ ]+)[[:space:]]+'
+ addr_re='([^/]+)/[0-9]+[[:space:]]+(brd[[:space:]]+[^ ]+[[:space:]]+)?'
+ scope_re='scope[[:space:]]+([^ ]+)[[:space:]]*(.*)'
+ combined_re="${pfx_re}${intf_re}${fam_re}${addr_re}${scope_re}"
+ if ! [[ "$line" =~ ${combined_re} ]]; then
+ echo "Failed to parse addr: $line" >&2
+ return 1
+ fi
+ if [ -n "${BASH_REMATCH[1]}" ]; then
+ action=del
+ fi
+ intf="${BASH_REMATCH[2]}"
+ fam="${BASH_REMATCH[3]}"
+ ip="${BASH_REMATCH[4]}"
+ scope="${BASH_REMATCH[6]}"
+ flags="${BASH_REMATCH[7]}"
+ elif [[ "$line" == '[ROUTE]'* ]]; then
+ line="${line#[ROUTE]}"
+ change=route
+ action=add
+ if ! [[ "$line" =~ ^\[ROUTE\](Deleted )?(.*)$ ]]; then
+ echo "Failed to parse link: $line" >&2
+ return 1
+ fi
+ if [ -n "${BASH_REMATCH[1]}" ]; then
+ action=del
+ fi
+ route="${BASH_REMATCH[2]}"
+ elif [[ "$line" == '[LINK]'* ]]; then
+ change=link
+ action=add
+ pfx_re='^\[LINK\](Deleted )?[0-9]+:[[:space:]]*'
+ intf_re='([^:]+):[[:space:]]+'
+ if ! [[ "$line" =~ ${pfx_re}${intf_re} ]]; then
+ echo "Failed to parse link: $line" >&2
+ return 1
+ fi
+ if [ -n "${BASH_REMATCH[1]}" ]; then
+ action=del
+ fi
+ intf="${BASH_REMATCH[2]}"
+ read line || break
+ data=($line)
+ mac="${data[1]}"
+ else
+ return 2
+ fi
+}
+
+cleanup() {
+ local st="$?"
+ trap - HUP INT QUIT ABRT TERM EXIT
+ jobs -l -p | xargs -r kill || true
+ exit $st
+}
+trap cleanup HUP INT QUIT ABRT TERM EXIT
+
+return 0 2>/dev/null
+
+while read line; do
+ gbmc_ip_monitor_parse_line || continue
+ gbmc_ip_monitor_run_hooks || continue
+ if [ "$change" = 'init' ]; then
+ systemd-notify --ready
+ fi
+done < <(gbmc_ip_monitor_generate_init; exec ip monitor link addr route label)
diff --git a/meta-google/recipes-google/networking/gbmc-ip-monitor.bb b/meta-google/recipes-google/networking/gbmc-ip-monitor.bb
new file mode 100644
index 000000000..32804302b
--- /dev/null
+++ b/meta-google/recipes-google/networking/gbmc-ip-monitor.bb
@@ -0,0 +1,35 @@
+SUMMARY = "Allows hooking netlink events to perform network actions"
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+inherit systemd
+
+SRC_URI += " \
+ file://gbmc-ip-monitor.service \
+ file://gbmc-ip-monitor.sh \
+ file://gbmc-ip-monitor-test.sh \
+ "
+
+S = "${WORKDIR}"
+
+DEPENDS += "test-sh"
+
+RDEPENDS_${PN} += " \
+ bash \
+ iproute2 \
+ "
+
+SYSTEMD_SERVICE_${PN} += "gbmc-ip-monitor.service"
+
+do_compile() {
+ SYSROOT="$PKG_CONFIG_SYSROOT_DIR" bash gbmc-ip-monitor-test.sh || exit
+}
+
+do_install_append() {
+ install -d -m0755 ${D}${libexecdir}
+ install -m0755 gbmc-ip-monitor.sh ${D}${libexecdir}/
+
+ install -d -m0755 ${D}${systemd_system_unitdir}
+ install -m0644 gbmc-ip-monitor.service ${D}${systemd_system_unitdir}/
+}
diff --git a/meta-google/recipes-google/networking/network-sh.bb b/meta-google/recipes-google/networking/network-sh.bb
new file mode 100644
index 000000000..a377b9e2a
--- /dev/null
+++ b/meta-google/recipes-google/networking/network-sh.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Shell functions for manipulating network addresses"
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+SRC_URI += "file://lib.sh"
+SRC_URI += "file://test.sh"
+S = "${WORKDIR}"
+
+DATA = "${datadir}/network"
+FILES_${PN} += "${DATA}"
+
+DEPENDS += "test-sh"
+
+do_compile() {
+ SYSROOT="$PKG_CONFIG_SYSROOT_DIR" bash test.sh || exit
+}
+
+do_install_append() {
+ install -d -m0755 ${D}${DATA}
+ install -m0644 lib.sh ${D}${DATA}/
+}
diff --git a/meta-google/recipes-google/networking/network-sh/lib.sh b/meta-google/recipes-google/networking/network-sh/lib.sh
new file mode 100644
index 000000000..f37f7196d
--- /dev/null
+++ b/meta-google/recipes-google/networking/network-sh/lib.sh
@@ -0,0 +1,106 @@
+#!/bin/bash
+# Copyright 2021 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+[ -n "${network_init-}" ] && return
+
+mac_to_bytes() {
+ local -n bytes="$1"
+ local str="$2"
+
+ # Verify that the MAC is Valid
+ [[ "$str" =~ ^[[:xdigit:]]{1,2}(:[[:xdigit:]]{1,2}){5}$ ]] || return
+
+ # Split the mac into hex bytes
+ local oldifs="$IFS"
+ IFS=:
+ local byte
+ for byte in $str; do
+ bytes+=(0x$byte)
+ done
+ IFS="$oldifs"
+}
+
+mac_to_eui48() {
+ local mac_bytes=()
+ mac_to_bytes mac_bytes "$1" || return
+
+ # Return the EUI-64 bytes in the IPv6 format
+ printf '%02x%02x:%02x%02x:%02x%02x\n' "${mac_bytes[@]}"
+}
+
+mac_to_eui64() {
+ local mac_bytes=()
+ mac_to_bytes mac_bytes "$1" || return
+
+ # Using EUI-64 conversion rules, create the suffix bytes from MAC bytes
+ # Invert bit-0 of the first byte, and insert 0xfffe in the middle.
+ local suffix_bytes=(
+ $((mac_bytes[0] ^ 1))
+ ${mac_bytes[@]:1:2}
+ $((0xff)) $((0xfe))
+ ${mac_bytes[@]:3:3}
+ )
+
+ # Return the EUI-64 bytes in the IPv6 format
+ printf '%02x%02x:%02x%02x:%02x%02x:%02x%02x\n' "${suffix_bytes[@]}"
+}
+
+ipv6_pfx_concat() {
+ local pfx="$1"
+ local sfx="$2"
+
+ # Validate the prefix
+ if ! [[ "$pfx" =~ ^(([0-9a-fA-F]{1,4}:)+):/([0-9]+)$ ]]; then
+ echo "Invalid IPv6 prefix: $pfx" >&2
+ return 1
+ fi
+ local addr="${BASH_REMATCH[1]}"
+ local cidr="${BASH_REMATCH[3]}"
+ # Ensure prefix doesn't have too many bytes
+ local nos="${addr//:/}"
+ if (( ${#addr} - ${#nos} > (cidr+7)/16 )); then
+ echo "Too many prefix bytes: $pfx" >&2
+ return 1
+ fi
+
+ # Validate the suffix
+ if ! [[ "$sfx" =~ ^[0-9a-fA-F]{1,4}(:[0-9a-fA-F]{1,4})*$ ]]; then
+ echo "Invalid IPv6 suffix: $sfx" >&2
+ return 1
+ fi
+ # Ensure suffix doesn't have too many bytes
+ local nos="${sfx//:/}"
+ if (( ${#sfx} - ${#nos} >= (128-cidr)/16 )); then
+ echo "Too many suffix bytes: $sfx" >&2
+ return 1
+ fi
+
+ local comb="$addr:$sfx"
+ local nos="${comb//:/}"
+ if (( ${#comb} - ${#nos} == 8 )); then
+ comb="$addr$sfx"
+ fi
+ echo "$comb/$cidr"
+}
+
+ipv6_pfx_to_cidr() {
+ [[ "$1" =~ ^[0-9a-fA-F:]+/([0-9]+)$ ]] || return
+ echo "${BASH_REMATCH[1]}"
+}
+
+network_init=1
+return 0 2>/dev/null
+echo "network is a library, not executed directly" >&2
+exit 1
diff --git a/meta-google/recipes-google/networking/network-sh/test.sh b/meta-google/recipes-google/networking/network-sh/test.sh
new file mode 100755
index 000000000..57387c47c
--- /dev/null
+++ b/meta-google/recipes-google/networking/network-sh/test.sh
@@ -0,0 +1,84 @@
+#!/bin/bash
+# Copyright 2021 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+cd "$(dirname "$0")"
+if [ -e ../network-sh.bb ]; then
+ source '../../test/test-sh/lib.sh'
+else
+ source "$SYSROOT/usr/share/test/lib.sh"
+fi
+source lib.sh
+
+test_mac_to_bytes() {
+ out=()
+ expect_err 1 mac_to_bytes out ''
+ expect_err 1 mac_to_bytes out '00'
+ expect_err 1 mac_to_bytes out '12:34:56:78:90:'
+ expect_err 1 mac_to_bytes out ':12:34:56:78:90'
+ expect_err 1 mac_to_bytes out '12:34:56:78:90:0:'
+ expect_err 1 mac_to_bytes out '12:34:56:78:90:0:2'
+
+ expect_err 0 mac_to_bytes out 'a2:0:f:de:0:29'
+ expected=(0xa2 0 0xf 0xde 0 0x29)
+ for (( i=0; i < ${#expected[@]}; ++i )); do
+ expect_numeq "${out[$i]}" "${expected[$i]}"
+ done
+}
+
+test_mac_to_eui_48() {
+ str="$(mac_to_eui48 '12:34:56:78:90:af')" || fail
+ expect_streq "$str" '1234:5678:90af'
+}
+
+test_eui_64() {
+ str="$(mac_to_eui64 '12:34:56:78:90:af')" || fail
+ expect_streq "$str" '1334:56ff:fe78:90af'
+}
+
+test_ipv6_pfx_concat() {
+ # Invalid inputs
+ expect_err 1 ipv6_pfx_concat 'fd/64' '1234:5678:90af'
+ expect_err 1 ipv6_pfx_concat 'fd01::' '1234:5678:90af'
+ expect_err 1 ipv6_pfx_concat 'fd01:' '1234:5678:90af'
+ expect_err 1 ipv6_pfx_concat 'fd01::/a0' '1234:5678:90af'
+ expect_err 1 ipv6_pfx_concat 'fd01::/64' ':1234:5678:90af'
+ expect_err 1 ipv6_pfx_concat 'fd01::/64' '::'
+
+ # Too many address bits
+ expect_err 1 ipv6_pfx_concat 'fd01:1:1:1:1::/64' '1234:5678:90af'
+ expect_err 1 ipv6_pfx_concat 'fd01::/64' '1:0:1234:5678:90af'
+ expect_err 1 ipv6_pfx_concat 'fd01::/65' '1:1234:5678:90af'
+ expect_err 1 ipv6_pfx_concat 'fd01::/72' '1:1234:5678:90af'
+
+ str="$(ipv6_pfx_concat 'fd01::/64' '1')" || fail
+ expect_streq "$str" 'fd01::1/64'
+ str="$(ipv6_pfx_concat 'fd01::/72' '1234:5678:90af')" || fail
+ expect_streq "$str" 'fd01::1234:5678:90af/72'
+ str="$(ipv6_pfx_concat 'fd01:eeee:aaaa:cccc::/64' 'a:1234:5678:90af')" || fail
+ expect_streq "$str" 'fd01:eeee:aaaa:cccc:a:1234:5678:90af/64'
+}
+
+test_ipv6_pfx_to_cidr() {
+ expect_err 1 ipv6_pfx_to_cidr 'z/64'
+ expect_err 1 ipv6_pfx_to_cidr '64'
+
+ cidr="$(ipv6_pfx_to_cidr 'fd01::/64')" || fail
+ expect_numeq "$cidr" 64
+ cidr="$(ipv6_pfx_to_cidr 'fd01:eeee:aaaa:cccc:a:1234:5678:90af/128')" || fail
+ expect_numeq "$cidr" 128
+}
+
+return 0 2>/dev/null
+main
diff --git a/meta-google/recipes-google/nftables/files/nft-configure.sh b/meta-google/recipes-google/nftables/files/nft-configure.sh
index a82c2826f..05bb23d8b 100644
--- a/meta-google/recipes-google/nftables/files/nft-configure.sh
+++ b/meta-google/recipes-google/nftables/files/nft-configure.sh
@@ -9,6 +9,7 @@ for dir in /run/nftables /etc/nftables /usr/share/nftables; do
let i+=1
done
rc=0
+nft flush ruleset || rc=$?
for key in $(printf "%s\n" "${!basemap[@]}" | sort -r); do
echo "Executing ${basemap[$key]}" >&2
nft -f "${basemap[$key]}" || rc=$?
diff --git a/meta-google/recipes-google/nftables/files/nftables.service b/meta-google/recipes-google/nftables/files/nftables.service
index 79f0bb5b0..770a3d3ac 100644
--- a/meta-google/recipes-google/nftables/files/nftables.service
+++ b/meta-google/recipes-google/nftables/files/nftables.service
@@ -5,7 +5,7 @@ Before=network-pre.target
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/libexec/nft-configure.sh
-ExecStop=/bin/bash -c 'nft flush ruleset'
+ExecStop=/usr/sbin/nft flush ruleset
[Install]
WantedBy=multi-user.target
diff --git a/meta-google/recipes-google/ssh/authorized-keys-comp.bb b/meta-google/recipes-google/ssh/authorized-keys-comp.bb
new file mode 100644
index 000000000..81ee868a8
--- /dev/null
+++ b/meta-google/recipes-google/ssh/authorized-keys-comp.bb
@@ -0,0 +1,34 @@
+SUMMARY = "Compiles a set of authorized_keys files into a single file"
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+inherit systemd
+
+SRC_URI += " \
+ file://authorized-keys-comp.service \
+ file://authorized-keys-comp.sh \
+ "
+
+S = "${WORKDIR}"
+
+RDEPENDS_${PN} += "bash"
+
+SYSTEMD_SERVICE_${PN} += "authorized-keys-comp.service"
+
+FILES_${PN} += "/home"
+
+AUTHORIZED_KEYS_COMP_USERS ?= "root"
+
+do_install_append() {
+ install -d -m0755 ${D}${libexecdir}
+ install -m0755 authorized-keys-comp.sh ${D}${libexecdir}/
+
+ install -d -m0755 ${D}${systemd_system_unitdir}
+ install -m0644 authorized-keys-comp.service ${D}${systemd_system_unitdir}/
+
+ for user in ${AUTHORIZED_KEYS_COMP_USERS}; do
+ install -d -m0755 ${D}/home/$user/.ssh
+ ln -sv /run/authorized_keys/$user ${D}/home/$user/.ssh/authorized_keys
+ done
+}
diff --git a/meta-google/recipes-google/ssh/authorized-keys-comp/authorized-keys-comp.service b/meta-google/recipes-google/ssh/authorized-keys-comp/authorized-keys-comp.service
new file mode 100644
index 000000000..92f9b2699
--- /dev/null
+++ b/meta-google/recipes-google/ssh/authorized-keys-comp/authorized-keys-comp.service
@@ -0,0 +1,6 @@
+[Service]
+Type=oneshot
+ExecStart=/usr/libexec/authorized-keys-comp.sh
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-google/recipes-google/ssh/authorized-keys-comp/authorized-keys-comp.sh b/meta-google/recipes-google/ssh/authorized-keys-comp/authorized-keys-comp.sh
new file mode 100644
index 000000000..caff0a7a4
--- /dev/null
+++ b/meta-google/recipes-google/ssh/authorized-keys-comp/authorized-keys-comp.sh
@@ -0,0 +1,51 @@
+#!/bin/bash
+shopt -s nullglob
+
+# We want to iterate over all system users, check if they are opted-in to ssh
+# authorized_keys building, and then construct their keyfile
+for user in $(cut -d':' -f1 /etc/passwd); do
+ home="$(eval echo ~$user)" || continue
+ link="$(readlink $home/.ssh/authorized_keys 2>/dev/null)" || continue
+ # Users are only opted-in if they symlink to our well-known directory where
+ # the final output of this script lives.
+ if [ "$link" != "/run/authorized_keys/$user" ]; then
+ echo "Ignoring $user $home/.ssh/authorized_keys" >&2
+ continue
+ fi
+
+ echo "Updating $link" >&2
+ declare -A basemap=()
+ declare -a dirs=(
+ "/usr/share/authorized_keys.d/$user"
+ "$home/.ssh/authorized_keys.d"
+ "/run/authorized_keys.d/$user"
+ )
+ # Build a map that can be used for sorting directories by their priority
+ # and prioritizing the last listed directories over the later ones. We
+ # append a counter to ensure that there is a stable sorting mechanism for
+ # duplicate filenames. Duplicate filenames will be overridden by higher
+ # priority directories.
+ # Ex.
+ # /usr/share/authorized_keys.d/root/10-key
+ # /usr/share/authorized_keys.d/root/15-key
+ # /run/authorized_keys.d/root/10-key
+ # /run/authorized_keys.d/root/20-key
+ # Becomes
+ # ["10-key"]="/run/authorized_keys.d/root/10-key"
+ # ["15-key"]="/usr/share/authorized_keys.d/root/15-key"
+ # ["20-key"]="/run/authorized_keys.d/root/20-key"
+ for dir in "${dirs[@]}"; do
+ for file in "$dir"/*; do
+ basemap["${file##*/}"]="$file"
+ done
+ done
+ rm -f /run/authorized_keys.tmp
+ touch /run/authorized_keys.tmp
+ for key in $(printf "%s\n" "${!basemap[@]}" | sort -r); do
+ echo " Including ${basemap[$key]}" >&2
+ cat "${basemap[$key]}" >>/run/authorized_keys.tmp
+ done
+ mkdir -p /run/authorized_keys
+ mv /run/authorized_keys.tmp /run/authorized_keys/$user
+ chown $user /run/authorized_keys/$user
+done
diff --git a/meta-google/recipes-google/ssh/gbmc-dev-ssh-key.bb b/meta-google/recipes-google/ssh/gbmc-dev-ssh-key.bb
new file mode 100644
index 000000000..a9d371e70
--- /dev/null
+++ b/meta-google/recipes-google/ssh/gbmc-dev-ssh-key.bb
@@ -0,0 +1,15 @@
+SUMMARY = "Publicly exposed development SSH key"
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+SRC_URI += "file://gbmc-dev.pub"
+
+S = "${WORKDIR}"
+
+FILES_${PN} += " ${datadir}/authorized_keys.d"
+
+do_install() {
+ install -d ${D}${datadir}/authorized_keys.d/root
+ install -m 0755 ${S}/gbmc-dev.pub ${D}${datadir}/authorized_keys.d/root/50-gbmc-dev
+}
diff --git a/meta-google/recipes-google/ssh/gbmc-dev-ssh-key/gbmc-dev.priv b/meta-google/recipes-google/ssh/gbmc-dev-ssh-key/gbmc-dev.priv
new file mode 100644
index 000000000..5fe3fb720
--- /dev/null
+++ b/meta-google/recipes-google/ssh/gbmc-dev-ssh-key/gbmc-dev.priv
@@ -0,0 +1,7 @@
+-----BEGIN OPENSSH PRIVATE KEY-----
+b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW
+QyNTUxOQAAACAC+PxTCx2WyYG5iaq+GO0RArtziSb4kH/uzMZKyh5LKgAAAJAQPe9NED3v
+TQAAAAtzc2gtZWQyNTUxOQAAACAC+PxTCx2WyYG5iaq+GO0RArtziSb4kH/uzMZKyh5LKg
+AAAECx890MYHciMhMENgtQURn4zw10U3v5jAMymfFI9FaqwAL4/FMLHZbJgbmJqr4Y7REC
+u3OJJviQf+7MxkrKHksqAAAACGdibWMtZGV2AQIDBAU=
+-----END OPENSSH PRIVATE KEY-----
diff --git a/meta-google/recipes-google/ssh/gbmc-dev-ssh-key/gbmc-dev.pub b/meta-google/recipes-google/ssh/gbmc-dev-ssh-key/gbmc-dev.pub
new file mode 100644
index 000000000..82eb5f63d
--- /dev/null
+++ b/meta-google/recipes-google/ssh/gbmc-dev-ssh-key/gbmc-dev.pub
@@ -0,0 +1 @@
+ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAL4/FMLHZbJgbmJqr4Y7RECu3OJJviQf+7MxkrKHksq gbmc-dev
diff --git a/meta-google/recipes-google/test/test-sh.bb b/meta-google/recipes-google/test/test-sh.bb
new file mode 100644
index 000000000..7edbb9189
--- /dev/null
+++ b/meta-google/recipes-google/test/test-sh.bb
@@ -0,0 +1,21 @@
+SUMMARY = "Shell functions for testing shell scripts"
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+SRC_URI += "file://lib.sh"
+SRC_URI += "file://test.sh"
+S = "${WORKDIR}"
+
+DATA = "${datadir}/test"
+FILES_${PN} += "${DATA}"
+
+do_compile() {
+ SYSROOT="$PKG_CONFIG_SYSROOT_DIR" bash test.sh || exit
+}
+
+do_install_append() {
+ install -d -m0755 ${D}${DATA}
+ install -m0644 lib.sh ${D}${DATA}/
+}
diff --git a/meta-google/recipes-google/test/test-sh/lib.sh b/meta-google/recipes-google/test/test-sh/lib.sh
new file mode 100755
index 000000000..cc04c5dbf
--- /dev/null
+++ b/meta-google/recipes-google/test/test-sh/lib.sh
@@ -0,0 +1,57 @@
+#!/bin/bash
+# Copyright 2021 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+expect_streq() {
+ local r="${2-$(cat)}"
+ [ "$1" = "$r" ] && return
+ echo " Line ${BASH_LINENO[0]} '$1' != '$r'" >&2
+ test_err=1
+}
+
+expect_numeq() {
+ (( "$1" == "$2" )) && return
+ echo " Line ${BASH_LINENO[0]} '$1' != '$2'" >&2
+ test_err=1
+}
+
+expect_err() {
+ local expected=$1
+ shift
+ local rc=0
+ "$@" || rc="$?"
+ (( rc == expected )) && return
+ echo " Line ${BASH_LINENO[0]} Status '$rc' != '$expected'" >&2
+ test_err=1
+}
+
+fail() {
+ echo " Line ${BASH_LINENO[0]} Fail" >&2
+ test_err=1
+}
+
+main() {
+ local agg_err=0
+ for f in $(declare -F | grep 'declare -f test[A-Z_]' | awk '{print $3}'); do
+ echo "[$f] Running..." >&2
+ local test_err=0
+ if "$f" && (( test_err == 0 )); then
+ echo "[$f] Success" >&2
+ else
+ echo "[$f] Failed ($?)" >&2
+ agg_err=1
+ fi
+ done
+ return $agg_err
+}
diff --git a/meta-google/recipes-google/test/test-sh/test.sh b/meta-google/recipes-google/test/test-sh/test.sh
new file mode 100755
index 000000000..c74029d17
--- /dev/null
+++ b/meta-google/recipes-google/test/test-sh/test.sh
@@ -0,0 +1,145 @@
+#!/bin/bash
+# Copyright 2021 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+source "$(dirname "$0")/lib.sh" || exit
+
+(
+ echo '## Test Pass' >&2
+ test_pass() {
+ return 0
+ }
+ main || exit
+) || exit
+
+(
+ echo '## Test Fail' >&2
+ i=0
+ test_pass1() {
+ (( i++ ))
+ return 0
+ }
+ test_fail() {
+ return 1
+ (( i++ ))
+ return 0
+ }
+ test_pass2() {
+ (( i++ ))
+ return 0
+ }
+ ! main || exit
+ (( i == 2 )) || exit
+) || exit
+
+(
+ echo '## Test Deferred Fail' >&2
+ i=0
+ test_expect_fail() {
+ test_err=1 || return
+ (( i++ ))
+ return 0
+ }
+ test_pass() {
+ (( i++ ))
+ return 0
+ }
+ ! main || exit
+ (( i == 2 )) || exit
+) || exit
+
+(
+ echo '## Test Fail' >&2
+ i=0
+ test_fail() {
+ fail 'Failed' || return
+ (( i++ ))
+ return 0
+ }
+ ! main || exit
+ (( i == 1 )) || exit
+) || exit
+
+(
+ echo '## Test Expect Err' >&2
+ i=0
+ test_expect_err() {
+ expect_err 1 false || return
+ (( i++ ))
+ return 0
+ }
+ main || exit
+ (( i == 1 )) || exit
+) || exit
+
+(
+ echo '## Test Expect Err Error' >&2
+ i=0
+ test_expect_err() {
+ expect_err 0 false || return
+ (( i++ ))
+ return 0
+ }
+ ! main || exit
+ (( i == 1 )) || exit
+) || exit
+
+(
+ echo '## Test Num EQ' >&2
+ i=0
+ test_num_eq() {
+ expect_numeq 15 0xf || return
+ expect_numeq 1 1 || return
+ (( i++ ))
+ return 0
+ }
+ main || exit
+ (( i == 1 )) || exit
+) || exit
+
+(
+ echo '## Test Num EQ Error' >&2
+ i=0
+ test_num_eq() {
+ expect_numeq 15 10 || return
+ (( i++ ))
+ return 0
+ }
+ ! main || exit
+ (( i == 1 )) || exit
+) || exit
+
+(
+ echo '## Test Str EQ' >&2
+ i=0
+ test_str_eq() {
+ expect_streq abz abz || return
+ (( i++ ))
+ return 0
+ }
+ main || exit
+ (( i == 1 )) || exit
+) || exit
+
+(
+ echo '## Test Str EQ Error' >&2
+ i=0
+ test_str_eq() {
+ expect_streq 15 0xf || return
+ (( i++ ))
+ return 0
+ }
+ ! main || exit
+ (( i == 1 )) || exit
+) || exit
diff --git a/meta-google/recipes-kernel/linux/files/gbmc.cfg b/meta-google/recipes-kernel/linux/files/gbmc.cfg
index 4385cc9eb..89e1ef9a7 100644
--- a/meta-google/recipes-kernel/linux/files/gbmc.cfg
+++ b/meta-google/recipes-kernel/linux/files/gbmc.cfg
@@ -36,3 +36,19 @@ CONFIG_DUMMY=y
CONFIG_BRIDGE_NETFILTER=y
CONFIG_NF_TABLES_BRIDGE=y
CONFIG_BRIDGE_NF_EBTABLES=y
+
+# Remove features we won't use
+CONFIG_WLAN=n
+CONFIG_SUSPEND=n
+CONFIG_USB_CHIPIDEA=n
+CONFIG_NETWORK_FILESYSTEMS=n
+CONFIG_RD_GZIP=n
+CONFIG_RD_BZIP2=n
+CONFIG_RD_LZMA=n
+CONFIG_RD_LZO=n
+CONFIG_RD_LZ4=n
+CONFIG_CRYPTO_LZO=n
+CONFIG_INPUT_LEDS=n
+CONFIG_INPUT_MOUSE=n
+CONFIG_KEYBOARD_ATKBD=n
+CONFIG_SERIO_LIBPS2=n
diff --git a/meta-google/recipes-phosphor/dbus/phosphor-dbus-interfaces-mapper-config-native.bbappend b/meta-google/recipes-phosphor/dbus/phosphor-dbus-interfaces-mapper-config-native.bbappend
new file mode 100644
index 000000000..8ba6e7c33
--- /dev/null
+++ b/meta-google/recipes-phosphor/dbus/phosphor-dbus-interfaces-mapper-config-native.bbappend
@@ -0,0 +1,2 @@
+PHOSPHOR_MAPPER_SERVICE_append = " com.google.gbmc"
+PHOSPHOR_MAPPER_INTERFACE_append = " com.google.gbmc"
diff --git a/meta-google/recipes-phosphor/images/obmc-phosphor-image.bbappend b/meta-google/recipes-phosphor/images/obmc-phosphor-image.bbappend
index acccde532..0c74fc8bb 100644
--- a/meta-google/recipes-phosphor/images/obmc-phosphor-image.bbappend
+++ b/meta-google/recipes-phosphor/images/obmc-phosphor-image.bbappend
@@ -7,7 +7,11 @@ OBMC_IMAGE_EXTRA_INSTALL_append = " phosphor-ipmi-flash"
OBMC_IMAGE_EXTRA_INSTALL_append_gbmc = " iproute2 iproute2-ss"
OBMC_IMAGE_EXTRA_INSTALL_append_gbmc = " gbmc-systemd-config"
OBMC_IMAGE_EXTRA_INSTALL_append_gbmc = " gbmc-iperf3"
+OBMC_IMAGE_EXTRA_INSTALL_append_gbmc = " authorized-keys-comp"
+OBMC_IMAGE_EXTRA_INSTALL_append_gbmc_dev = " gbmc-dev-ssh-key"
OBMC_IMAGE_EXTRA_INSTALL_append_gbmc = \
'${@"" if not d.getVar("GBMC_NCSI_IF_NAME") else " gbmc-ncsi-config"}'
OBMC_IMAGE_EXTRA_INSTALL_append_gbmc = \
'${@"" if not d.getVar("GBMC_MAC_EEPROM_OF_NAME") else " gbmc-mac-config"}'
+OBMC_IMAGE_EXTRA_INSTALL_append_gbmc = \
+ '${@"" if not d.getVar("GBMC_KCS_DEV") else " gbmc-kcs-config"}'
diff --git a/meta-hpe/conf/layer.conf b/meta-hpe/conf/layer.conf
index 977654c82..6ff79df8f 100644
--- a/meta-hpe/conf/layer.conf
+++ b/meta-hpe/conf/layer.conf
@@ -7,7 +7,7 @@ BBFILES += "${LAYERDIR}/meta-common/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "hpe-layer"
BBFILE_PATTERN_hpe-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_hpe-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_hpe-layer = "gatesgarth hardknott"
# Provide a variable that points the base of the hpe layer.
HPEBASE = '${@os.path.normpath("${LAYERDIR}/")}'
diff --git a/meta-hpe/meta-dl360poc/conf/bblayers.conf.sample b/meta-hpe/meta-dl360poc/conf/bblayers.conf.sample
index 3416353bf..ef28dc220 100644
--- a/meta-hpe/meta-dl360poc/conf/bblayers.conf.sample
+++ b/meta-hpe/meta-dl360poc/conf/bblayers.conf.sample
@@ -12,6 +12,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-hpe/meta-gxp \
##OEROOT##/meta-hpe \
@@ -24,6 +25,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-hpe/meta-gxp \
##OEROOT##/meta-hpe \
diff --git a/meta-hpe/meta-dl360poc/conf/layer.conf b/meta-hpe/meta-dl360poc/conf/layer.conf
index ef937d3b9..5f85f7c1c 100644
--- a/meta-hpe/meta-dl360poc/conf/layer.conf
+++ b/meta-hpe/meta-dl360poc/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "dl360poc-layer"
BBFILE_PATTERN_dl360poc-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_dl360poc-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_dl360poc-layer = "gatesgarth hardknott"
diff --git a/meta-hpe/meta-gxp/conf/layer.conf b/meta-hpe/meta-gxp/conf/layer.conf
index af9f8af30..28f2ddc87 100644
--- a/meta-hpe/meta-gxp/conf/layer.conf
+++ b/meta-hpe/meta-gxp/conf/layer.conf
@@ -7,6 +7,6 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "gxp-layer"
BBFILE_PATTERN_gxp-layer = "^${LAYERDIR}/"
LAYERVERSION_gxp-layer = "1"
-LAYERSERIES_COMPAT_gxp-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_gxp-layer = "gatesgarth hardknott"
GXPBASE = '${@os.path.normpath("${LAYERDIR}/")}'
diff --git a/meta-hxt/conf/layer.conf b/meta-hxt/conf/layer.conf
index 5de44030d..bc8cd5bc0 100644
--- a/meta-hxt/conf/layer.conf
+++ b/meta-hxt/conf/layer.conf
@@ -4,4 +4,4 @@ BBPATH .= ":${LAYERDIR}"
BBFILE_COLLECTIONS += "hxt"
BBFILE_PATTERN_hxt = ""
-LAYERSERIES_COMPAT_hxt = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_hxt = "gatesgarth hardknott"
diff --git a/meta-hxt/meta-stardragon4800-rep2/conf/bblayers.conf.sample b/meta-hxt/meta-stardragon4800-rep2/conf/bblayers.conf.sample
index ded435f2f..9a25461b3 100644
--- a/meta-hxt/meta-stardragon4800-rep2/conf/bblayers.conf.sample
+++ b/meta-hxt/meta-stardragon4800-rep2/conf/bblayers.conf.sample
@@ -13,6 +13,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-arm \
@@ -27,6 +28,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-arm \
diff --git a/meta-ibm/MAINTAINERS b/meta-ibm/MAINTAINERS
index 68f29a274..81dd7c5af 100644
--- a/meta-ibm/MAINTAINERS
+++ b/meta-ibm/MAINTAINERS
@@ -14,7 +14,7 @@ Description of section entries:
Section entries are structured according to the following scheme:
- X: NAME <EMAIL_USERNAME@DOMAIN> <IRC_USERNAME!>
+ X: NAME <EMAIL_USERNAME@DOMAIN> <DISCORD_USERNAME!>
X: ...
.
.
@@ -24,10 +24,10 @@ Description of section entries:
organization; FILE_PATH is a file path within the repository, possibly with
wildcards; X is a tag of one of the following types:
- M: Denotes maintainer; has fields NAME <EMAIL_USERNAME@DOMAIN> <IRC_USERNAME!>;
+ M: Denotes maintainer; has fields NAME <EMAIL_USERNAME@DOMAIN> <DISCORD_USERNAME!>;
if omitted from an entry, assume one of the maintainers from the
MAINTAINERS entry.
- R: Denotes reviewer; has fields NAME <EMAIL_USERNAME@DOMAIN> <IRC_USERNAME!>;
+ R: Denotes reviewer; has fields NAME <EMAIL_USERNAME@DOMAIN> <DISCORD_USERNAME!>;
these people are to be added as reviewers for a change matching the repo
path.
F: Denotes forked from an external repository; has fields URL.
diff --git a/meta-ibm/README.md b/meta-ibm/README.md
index 6d54c5514..1c736a790 100644
--- a/meta-ibm/README.md
+++ b/meta-ibm/README.md
@@ -71,5 +71,5 @@ Patch checklist. Please ensure patches adhere to the following guidelines:
message](https://chris.beams.io/posts/git-commit/#seven-rules)
For questions or help please come join us on the [mailing
-list](https://lists.ozlabs.org/listinfo/openbmc) or in
-[IRC](irc://freenode.net/openbmc).
+list](https://lists.ozlabs.org/listinfo/openbmc) or on
+[Discord](https://discord.gg/69Km47zH98).
diff --git a/meta-ibm/conf/bblayers.conf.sample b/meta-ibm/conf/bblayers.conf.sample
index 4c665d1bb..11b3f5980 100644
--- a/meta-ibm/conf/bblayers.conf.sample
+++ b/meta-ibm/conf/bblayers.conf.sample
@@ -12,6 +12,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-security/meta-tpm \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
@@ -24,6 +25,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-security/meta-tpm \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
diff --git a/meta-ibm/conf/conf-notes.txt b/meta-ibm/conf/conf-notes.txt
index f56b88b1b..705a54d7c 100644
--- a/meta-ibm/conf/conf-notes.txt
+++ b/meta-ibm/conf/conf-notes.txt
@@ -1,12 +1,12 @@
Example build invocations:
mihawk:
-DISTRO=openbmc-witherspoon MACHINE=mihawk bitbake obmc-phosphor-image
+MACHINE=mihawk bitbake obmc-phosphor-image
+p10bmc:
+MACHINE=p10bmc bitbake obmc-phosphor-image
swift:
-DISTRO=openbmc-witherspoon MACHINE=swift bitbake obmc-phosphor-image
+MACHINE=swift bitbake obmc-phosphor-image
witherspoon:
-DISTRO=openbmc-witherspoon MACHINE=witherspoon bitbake obmc-phosphor-image
+MACHINE=witherspoon bitbake obmc-phosphor-image
witherspoon-tacoma:
-DISTRO=openbmc-openpower MACHINE=witherspoon-tacoma bitbake obmc-phosphor-image
-rainier:
-DISTRO=openbmc-openpower MACHINE=rainier bitbake obmc-phosphor-image
+MACHINE=witherspoon-tacoma bitbake obmc-phosphor-image
diff --git a/meta-ibm/conf/distro/include/ibm-distrovars.inc b/meta-ibm/conf/distro/include/ibm-yaml.inc
index dde13f233..dde13f233 100644
--- a/meta-ibm/conf/distro/include/ibm-distrovars.inc
+++ b/meta-ibm/conf/distro/include/ibm-yaml.inc
diff --git a/meta-ibm/conf/distro/openbmc-witherspoon.conf b/meta-ibm/conf/distro/openbmc-witherspoon.conf
deleted file mode 100644
index f2caf402b..000000000
--- a/meta-ibm/conf/distro/openbmc-witherspoon.conf
+++ /dev/null
@@ -1,4 +0,0 @@
-require conf/distro/openbmc-openpower.conf
-require conf/distro/include/phosphor-ubi.inc
-require conf/distro/include/openpower-mrw.inc
-require conf/distro/include/openpower-ubi.inc
diff --git a/meta-ibm/conf/layer.conf b/meta-ibm/conf/layer.conf
index 8662448e1..e8824c853 100644
--- a/meta-ibm/conf/layer.conf
+++ b/meta-ibm/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "ibm-layer"
BBFILE_PATTERN_ibm-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_ibm-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_ibm-layer = "gatesgarth hardknott"
diff --git a/meta-ibm/conf/local.conf.sample b/meta-ibm/conf/local.conf.sample
index 4b70cade4..2ee8833b2 100644
--- a/meta-ibm/conf/local.conf.sample
+++ b/meta-ibm/conf/local.conf.sample
@@ -1,8 +1,8 @@
#MACHINE ?= "mihawk"
+#MACHINE ?= "p10bmc"
#MACHINE ?= "swift"
-#MACHINE ?= "rainier"
MACHINE ??= "witherspoon"
-DISTRO ?= "openbmc-witherspoon"
+DISTRO ?= "openbmc-openpower"
PACKAGE_CLASSES ?= "package_rpm"
SANITY_TESTED_DISTROS_append ?= " *"
EXTRA_IMAGE_FEATURES = "debug-tweaks"
diff --git a/meta-ibm/conf/machine/mihawk.conf b/meta-ibm/conf/machine/mihawk.conf
index efcf7717d..2bb67ed08 100644
--- a/meta-ibm/conf/machine/mihawk.conf
+++ b/meta-ibm/conf/machine/mihawk.conf
@@ -7,11 +7,15 @@ OBMC_POWER_SUPPLY_INSTANCES = "0 1"
PREFERRED_PROVIDER_virtual/openpower-fru-vpd-layout = "mihawk-openpower-fru-vpd-layout-native"
+require conf/distro/include/phosphor-aspeednic-use-mac2.inc
+require conf/distro/include/phosphor-ubi.inc
+require conf/distro/include/openpower-mrw.inc
+require conf/distro/include/openpower-ubi.inc
require conf/machine/include/ast2500.inc
require conf/machine/include/obmc-bsp-common.inc
require conf/machine/include/openpower.inc
require conf/machine/include/p9.inc
-require conf/distro/include/phosphor-aspeednic-use-mac2.inc
+require conf/distro/include/ibm-yaml.inc
PHOSPHOR_MRW_LICENSE = "Apache-2.0"
PHOSPHOR_MRW_LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
diff --git a/meta-ibm/conf/machine/p10bmc.conf b/meta-ibm/conf/machine/p10bmc.conf
new file mode 100644
index 000000000..2cab74e4d
--- /dev/null
+++ b/meta-ibm/conf/machine/p10bmc.conf
@@ -0,0 +1,36 @@
+KERNEL_DEVICETREE = "aspeed-bmc-ibm-rainier.dtb aspeed-bmc-ibm-rainier-4u.dtb aspeed-bmc-ibm-everest.dtb"
+UBOOT_MACHINE = "ast2600_openbmc_spl_emmc_defconfig"
+UBOOT_DEVICETREE = "ast2600-rainier"
+SPL_BINARY = "spl/u-boot-spl.bin"
+
+OBMC_POWER_SUPPLY_INSTANCES = "0 1 2 3"
+
+# TODO remove the MACHINEOVERRIDES when the rainier.conf file is removed.
+MACHINEOVERRIDES =. "p10bmc:"
+require conf/machine/include/ast2600.inc
+require conf/machine/include/obmc-bsp-common.inc
+require conf/machine/include/openpower.inc
+include conf/machine/include/ibm-power10-cpu.inc
+require conf/distro/include/openpower-virtual-pnor.inc
+require conf/distro/include/phosphor-mmc.inc
+require conf/distro/include/ibm-mpreboot.inc
+require conf/distro/include/ibm-yaml.inc
+
+SERIAL_CONSOLES = "115200;ttyS4"
+
+MRW_XML = "witherspoon.xml"
+PHOSPHOR_MRW_LICENSE = "Apache-2.0"
+PHOSPHOR_MRW_LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
+PHOSPHOR_MRW_URI = "git://github.com/open-power/witherspoon-xml"
+PHOSPHOR_MRW_REV = "c622cb5a5dd3ebc2a4eef558d1b70740f914e6f7"
+
+VIRTUAL-RUNTIME_phosphor-hwmon-config_df-mrw = ""
+
+PREFERRED_PROVIDER_virtual/phosphor-fan-control-fan-config_df-mrw = \
+ "phosphor-fan-control-fan-config"
+PREFERRED_PROVIDER_virtual/phosphor-fan-presence-config_df-mrw = \
+ "phosphor-fan-presence-config"
+
+SKIP_BROKEN_MRW = "1"
+
+IMAGE_FEATURES_remove = "obmc-ikvm"
diff --git a/meta-ibm/conf/machine/rainier.conf b/meta-ibm/conf/machine/rainier.conf
index f5152f7c5..ddfb6ec6d 100644..120000
--- a/meta-ibm/conf/machine/rainier.conf
+++ b/meta-ibm/conf/machine/rainier.conf
@@ -1,33 +1 @@
-KERNEL_DEVICETREE = "aspeed-bmc-ibm-rainier.dtb"
-UBOOT_MACHINE = "ast2600_openbmc_spl_emmc_defconfig"
-UBOOT_DEVICETREE = "ast2600-rainier"
-SPL_BINARY = "spl/u-boot-spl.bin"
-
-OBMC_POWER_SUPPLY_INSTANCES = "0 1 2 3"
-
-require conf/machine/include/ast2600.inc
-require conf/machine/include/obmc-bsp-common.inc
-require conf/machine/include/openpower.inc
-include conf/machine/include/ibm-power10-cpu.inc
-require conf/distro/include/openpower-virtual-pnor.inc
-require conf/distro/include/phosphor-mmc.inc
-require conf/distro/include/ibm-mpreboot.inc
-
-SERIAL_CONSOLES = "115200;ttyS4"
-
-MRW_XML = "witherspoon.xml"
-PHOSPHOR_MRW_LICENSE = "Apache-2.0"
-PHOSPHOR_MRW_LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
-PHOSPHOR_MRW_URI = "git://github.com/open-power/witherspoon-xml"
-PHOSPHOR_MRW_REV = "c622cb5a5dd3ebc2a4eef558d1b70740f914e6f7"
-
-VIRTUAL-RUNTIME_phosphor-hwmon-config_df-mrw = ""
-
-PREFERRED_PROVIDER_virtual/phosphor-fan-control-fan-config_df-mrw = \
- "phosphor-fan-control-fan-config"
-PREFERRED_PROVIDER_virtual/phosphor-fan-presence-config_df-mrw = \
- "phosphor-fan-presence-config"
-
-SKIP_BROKEN_MRW = "1"
-
-IMAGE_FEATURES_remove = "obmc-ikvm"
+p10bmc.conf \ No newline at end of file
diff --git a/meta-ibm/conf/machine/witherspoon-tacoma.conf b/meta-ibm/conf/machine/witherspoon-tacoma.conf
index 8d2a9078c..9826d55ec 100644
--- a/meta-ibm/conf/machine/witherspoon-tacoma.conf
+++ b/meta-ibm/conf/machine/witherspoon-tacoma.conf
@@ -10,6 +10,7 @@ require conf/machine/include/ast2600.inc
require conf/machine/include/obmc-bsp-common.inc
require conf/machine/include/openpower.inc
require conf/machine/include/p9.inc
+require conf/distro/include/ibm-yaml.inc
require conf/distro/include/openpower-virtual-pnor.inc
require conf/distro/include/phosphor-mmc.inc
require conf/distro/include/ibm-mpreboot.inc
diff --git a/meta-ibm/conf/machine/witherspoon.conf b/meta-ibm/conf/machine/witherspoon.conf
index acceb478b..08f2935f9 100644
--- a/meta-ibm/conf/machine/witherspoon.conf
+++ b/meta-ibm/conf/machine/witherspoon.conf
@@ -8,10 +8,14 @@ OBMC_POWER_SUPPLY_INSTANCES = "0 1"
# A machine override for common machine configuration for all of IBM's
# "Accelerated Computing" class of systems.
MACHINEOVERRIDES =. "ibm-ac-server:"
+require conf/distro/include/phosphor-ubi.inc
+require conf/distro/include/openpower-mrw.inc
+require conf/distro/include/openpower-ubi.inc
require conf/machine/include/ast2500.inc
require conf/machine/include/obmc-bsp-common.inc
require conf/machine/include/openpower.inc
require conf/machine/include/p9.inc
+require conf/distro/include/ibm-yaml.inc
PHOSPHOR_MRW_LICENSE = "Apache-2.0"
PHOSPHOR_MRW_LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
diff --git a/meta-ibm/meta-palmetto/conf/bblayers.conf.sample b/meta-ibm/meta-palmetto/conf/bblayers.conf.sample
index 3470c2d64..b5c268c64 100644
--- a/meta-ibm/meta-palmetto/conf/bblayers.conf.sample
+++ b/meta-ibm/meta-palmetto/conf/bblayers.conf.sample
@@ -11,6 +11,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
@@ -22,6 +23,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
diff --git a/meta-ibm/meta-palmetto/conf/layer.conf b/meta-ibm/meta-palmetto/conf/layer.conf
index 724670dda..9f2df6365 100644
--- a/meta-ibm/meta-palmetto/conf/layer.conf
+++ b/meta-ibm/meta-palmetto/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "palmetto-layer"
BBFILE_PATTERN_palmetto-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_palmetto-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_palmetto-layer = "gatesgarth hardknott"
diff --git a/meta-ibm/meta-romulus/conf/bblayers.conf.sample b/meta-ibm/meta-romulus/conf/bblayers.conf.sample
index 52329db64..1bb30353e 100644
--- a/meta-ibm/meta-romulus/conf/bblayers.conf.sample
+++ b/meta-ibm/meta-romulus/conf/bblayers.conf.sample
@@ -11,6 +11,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
@@ -22,6 +23,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
diff --git a/meta-ibm/meta-romulus/conf/layer.conf b/meta-ibm/meta-romulus/conf/layer.conf
index 4ca0eadef..2c176f432 100644
--- a/meta-ibm/meta-romulus/conf/layer.conf
+++ b/meta-ibm/meta-romulus/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "romulus-layer"
BBFILE_PATTERN_romulus-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_romulus-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_romulus-layer = "gatesgarth hardknott"
diff --git a/meta-ibm/meta-romulus/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend b/meta-ibm/meta-romulus/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
index c7d3bfcf3..3aba6bbb8 100644
--- a/meta-ibm/meta-romulus/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
+++ b/meta-ibm/meta-romulus/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
@@ -1,6 +1,6 @@
FILESEXTRAPATHS_prepend_romulus := "${THISDIR}/${PN}:"
-EXTRA_OECONF_append_romulus = " --enable-negative-errno-on-fail"
+EXTRA_OEMESON_append_romulus = " -Dnegative-errno-on-fail=true"
CHIPS = " \
bus@1e78a000/i2c-bus@440/w83773g@4c \
diff --git a/meta-ibm/recipes-core/systemd/systemd_%.bbappend b/meta-ibm/recipes-core/systemd/systemd_%.bbappend
index 500c91df5..a6ef71d29 100644
--- a/meta-ibm/recipes-core/systemd/systemd_%.bbappend
+++ b/meta-ibm/recipes-core/systemd/systemd_%.bbappend
@@ -3,24 +3,24 @@ SRC_URI_append_ibm-ac-server = " file://journald-storage-policy.conf"
SRC_URI_append_ibm-ac-server = " file://systemd-journald-override.conf"
SRC_URI_append_ibm-ac-server = " file://journald-size-policy.conf"
-SRC_URI_append_rainier = " file://journald-storage-policy.conf"
-SRC_URI_append_rainier = " file://systemd-journald-override.conf"
-SRC_URI_append_rainier = " file://journald-size-policy.conf"
+SRC_URI_append_p10bmc = " file://journald-storage-policy.conf"
+SRC_URI_append_p10bmc = " file://systemd-journald-override.conf"
+SRC_URI_append_p10bmc = " file://journald-size-policy.conf"
FILES_${PN}_append_ibm-ac-server = " ${systemd_unitdir}/journald.conf.d/journald-storage-policy.conf"
FILES_${PN}_append_ibm-ac-server = " ${systemd_system_unitdir}/systemd-journald.service.d/systemd-journald-override.conf"
FILES_${PN}_append_ibm-ac-server = " ${systemd_unitdir}/journald.conf.d/journald-size-policy.conf"
-FILES_${PN}_append_rainier = " ${systemd_unitdir}/journald.conf.d/journald-storage-policy.conf"
-FILES_${PN}_append_rainier = " ${systemd_system_unitdir}/systemd-journald.service.d/systemd-journald-override.conf"
-FILES_${PN}_append_rainier = " ${systemd_unitdir}/journald.conf.d/journald-size-policy.conf"
+FILES_${PN}_append_p10bmc = " ${systemd_unitdir}/journald.conf.d/journald-storage-policy.conf"
+FILES_${PN}_append_p10bmc = " ${systemd_system_unitdir}/systemd-journald.service.d/systemd-journald-override.conf"
+FILES_${PN}_append_p10bmc = " ${systemd_unitdir}/journald.conf.d/journald-size-policy.conf"
do_install_append_ibm-ac-server() {
install -m 644 -D ${WORKDIR}/journald-storage-policy.conf ${D}${systemd_unitdir}/journald.conf.d/journald-storage-policy.conf
install -m 644 -D ${WORKDIR}/systemd-journald-override.conf ${D}${systemd_system_unitdir}/systemd-journald.service.d/systemd-journald-override.conf
install -m 644 -D ${WORKDIR}/journald-size-policy.conf ${D}${systemd_unitdir}/journald.conf.d/journald-size-policy.conf
}
-do_install_append_rainier() {
+do_install_append_p10bmc() {
install -m 644 -D ${WORKDIR}/journald-storage-policy.conf ${D}${systemd_unitdir}/journald.conf.d/journald-storage-policy.conf
install -m 644 -D ${WORKDIR}/systemd-journald-override.conf ${D}${systemd_system_unitdir}/systemd-journald.service.d/systemd-journald-override.conf
install -m 644 -D ${WORKDIR}/journald-size-policy.conf ${D}${systemd_unitdir}/journald.conf.d/journald-size-policy.conf
diff --git a/meta-ibm/recipes-kernel/linux/linux-aspeed/rainier.cfg b/meta-ibm/recipes-kernel/linux/linux-aspeed/p10bmc.cfg
index f79ad4e11..f3c581eac 100644
--- a/meta-ibm/recipes-kernel/linux/linux-aspeed/rainier.cfg
+++ b/meta-ibm/recipes-kernel/linux/linux-aspeed/p10bmc.cfg
@@ -1,4 +1,5 @@
CONFIG_SENSORS_IIO_HWMON=y
+CONFIG_SENSORS_TMP401=y
CONFIG_SENSORS_TMP421=y
CONFIG_SENSORS_MAX31785=y
CONFIG_SENSORS_UCD9000=y
diff --git a/meta-ibm/recipes-kernel/linux/linux-aspeed_%.bbappend b/meta-ibm/recipes-kernel/linux/linux-aspeed_%.bbappend
index dfd3afded..5ba22e3a7 100644
--- a/meta-ibm/recipes-kernel/linux/linux-aspeed_%.bbappend
+++ b/meta-ibm/recipes-kernel/linux/linux-aspeed_%.bbappend
@@ -1,4 +1,4 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
SRC_URI_append_ibm-ac-server = " file://witherspoon.cfg"
-SRC_URI_append_rainier = " file://rainier.cfg"
+SRC_URI_append_p10bmc = " file://p10bmc.cfg"
SRC_URI_append_mihawk = " file://mihawk.cfg"
diff --git a/meta-ibm/recipes-phosphor/certificate/phosphor-certificate-manager_%.bbappend b/meta-ibm/recipes-phosphor/certificate/phosphor-certificate-manager_%.bbappend
index 48fc87a54..ee6b1893c 100644
--- a/meta-ibm/recipes-phosphor/certificate/phosphor-certificate-manager_%.bbappend
+++ b/meta-ibm/recipes-phosphor/certificate/phosphor-certificate-manager_%.bbappend
@@ -1,2 +1,2 @@
-PACKAGECONFIG_append_rainier = " ibm-hypervisor-cert"
+PACKAGECONFIG_append_p10bmc = " ibm-hypervisor-cert"
PACKAGECONFIG_append_witherspoon-tacoma = " ibm-hypervisor-cert"
diff --git a/meta-ibm/recipes-phosphor/console/obmc-console/rainier/client.2201.conf b/meta-ibm/recipes-phosphor/console/obmc-console/p10bmc/client.2201.conf
index 7264e8278..7264e8278 100644
--- a/meta-ibm/recipes-phosphor/console/obmc-console/rainier/client.2201.conf
+++ b/meta-ibm/recipes-phosphor/console/obmc-console/p10bmc/client.2201.conf
diff --git a/meta-ibm/recipes-phosphor/console/obmc-console/rainier/server.ttyVUART0.conf b/meta-ibm/recipes-phosphor/console/obmc-console/p10bmc/server.ttyVUART0.conf
index 638ae7e5d..638ae7e5d 100644
--- a/meta-ibm/recipes-phosphor/console/obmc-console/rainier/server.ttyVUART0.conf
+++ b/meta-ibm/recipes-phosphor/console/obmc-console/p10bmc/server.ttyVUART0.conf
diff --git a/meta-ibm/recipes-phosphor/console/obmc-console/p10bmc/server.ttyVUART1.conf b/meta-ibm/recipes-phosphor/console/obmc-console/p10bmc/server.ttyVUART1.conf
new file mode 100644
index 000000000..32e8bd467
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/console/obmc-console/p10bmc/server.ttyVUART1.conf
@@ -0,0 +1,5 @@
+lpc-address = 0x2f8
+sirq = 3
+socket-id = guests
+logsize = 256k
+logfile = /var/log/obmc-console1.log
diff --git a/meta-ibm/recipes-phosphor/console/obmc-console/rainier/server.ttyVUART1.conf b/meta-ibm/recipes-phosphor/console/obmc-console/rainier/server.ttyVUART1.conf
deleted file mode 100644
index e98587f15..000000000
--- a/meta-ibm/recipes-phosphor/console/obmc-console/rainier/server.ttyVUART1.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-lpc-address = 0x2f8
-sirq = 3
-socket-id = guests
diff --git a/meta-ibm/recipes-phosphor/console/obmc-console_%.bbappend b/meta-ibm/recipes-phosphor/console/obmc-console_%.bbappend
index c10b7ce04..f493ef5a0 100644
--- a/meta-ibm/recipes-phosphor/console/obmc-console_%.bbappend
+++ b/meta-ibm/recipes-phosphor/console/obmc-console_%.bbappend
@@ -27,21 +27,21 @@ install_concurrent_console_config() {
install -m 0644 ${WORKDIR}/server.ttyVUART1.conf ${D}${sysconfdir}/${BPN}/
}
-SRC_URI_append_rainier = " file://client.2201.conf"
-SRC_URI_append_rainier = " file://server.ttyVUART1.conf"
+SRC_URI_append_p10bmc = " file://client.2201.conf"
+SRC_URI_append_p10bmc = " file://server.ttyVUART1.conf"
-REGISTERED_SERVICES_${PN}_append_rainier = " obmc_console_guests:tcp:2201:"
+REGISTERED_SERVICES_${PN}_append_p10bmc = " obmc_console_guests:tcp:2201:"
-SYSTEMD_SERVICE_${PN}_append_rainier = " obmc-console-ssh@2200.service \
+SYSTEMD_SERVICE_${PN}_append_p10bmc = " obmc-console-ssh@2200.service \
obmc-console-ssh@2201.service \
"
-SYSTEMD_SERVICE_${PN}_remove_rainier = "obmc-console-ssh.socket"
+SYSTEMD_SERVICE_${PN}_remove_p10bmc = "obmc-console-ssh.socket"
-FILES_${PN}_remove_rainier = "/lib/systemd/system/obmc-console-ssh@.service.d/use-socket.conf"
+FILES_${PN}_remove_p10bmc = "${systemd_system_unitdir}/obmc-console-ssh@.service.d/use-socket.conf"
-EXTRA_OECONF_append_rainier = " --enable-concurrent-servers"
+EXTRA_OECONF_append_p10bmc = " --enable-concurrent-servers"
-do_install_append_rainier() {
+do_install_append_p10bmc() {
install_concurrent_console_config
}
@@ -55,7 +55,7 @@ SYSTEMD_SERVICE_${PN}_append_witherspoon-tacoma = " obmc-console-ssh@2200.servic
"
SYSTEMD_SERVICE_${PN}_remove_witherspoon-tacoma = "obmc-console-ssh.socket"
-FILES_${PN}_remove_witherspoon-tacoma = "/lib/systemd/system/obmc-console-ssh@.service.d/use-socket.conf"
+FILES_${PN}_remove_witherspoon-tacoma = "${systemd_system_unitdir}/obmc-console-ssh@.service.d/use-socket.conf"
EXTRA_OECONF_append_witherspoon-tacoma = " --enable-concurrent-servers"
diff --git a/meta-ibm/recipes-phosphor/dbus/fan-policy.bb b/meta-ibm/recipes-phosphor/dbus/fan-policy.bb
index 59e6347cc..8bfecd32f 100644
--- a/meta-ibm/recipes-phosphor/dbus/fan-policy.bb
+++ b/meta-ibm/recipes-phosphor/dbus/fan-policy.bb
@@ -12,8 +12,8 @@ SRC_URI += "file://air-cooled.yaml"
SRC_URI_append_ibm-ac-server = " file://water-cooled.yaml"
SRC_URI += "file://fan-errors.yaml"
-SRC_URI_remove_rainier = "file://air-cooled.yaml"
-SRC_URI_remove_rainier = "file://fan-errors.yaml"
+SRC_URI_remove_p10bmc = "file://air-cooled.yaml"
+SRC_URI_remove_p10bmc = "file://fan-errors.yaml"
do_install_append_ibm-ac-server() {
install -D ${WORKDIR}/air-cooled.yaml ${D}${config_dir}/air-cooled.yaml
@@ -30,5 +30,5 @@ FILES_${PN} += "${config_dir}/air-cooled.yaml"
FILES_${PN}_append_ibm-ac-server = " ${config_dir}/water-cooled.yaml"
FILES_${PN} += "${config_dir}/fan-errors.yaml"
-FILES_${PN}_remove_rainier = "${config_dir}/air-cooled.yaml"
-FILES_${PN}_remove_rainier = "${config_dir}/fan-errors.yaml"
+FILES_${PN}_remove_p10bmc = "${config_dir}/air-cooled.yaml"
+FILES_${PN}_remove_p10bmc = "${config_dir}/fan-errors.yaml"
diff --git a/meta-ibm/recipes-phosphor/dbus/phosphor-dbus-interfaces_%.bbappend b/meta-ibm/recipes-phosphor/dbus/phosphor-dbus-interfaces_%.bbappend
deleted file mode 100644
index 0c632a151..000000000
--- a/meta-ibm/recipes-phosphor/dbus/phosphor-dbus-interfaces_%.bbappend
+++ /dev/null
@@ -1,2 +0,0 @@
-OBMC_ORG_YAML_SUBDIRS_append_witherspoon = " com/ibm"
-OBMC_ORG_YAML_SUBDIRS_append_rainier = " com/ibm"
diff --git a/meta-ibm/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend b/meta-ibm/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend
index a134e350b..0cbca65aa 100644
--- a/meta-ibm/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend
+++ b/meta-ibm/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend
@@ -1,9 +1,9 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
-PACKAGECONFIG_append_rainier = " host-dump-transport-pldm"
+PACKAGECONFIG_append_p10bmc = " host-dump-transport-pldm"
PACKAGECONFIG_append_witherspoon-tacoma = " host-dump-transport-pldm"
-PACKAGECONFIG_append_rainier = " openpower-dumps-extension"
+PACKAGECONFIG_append_p10bmc = " openpower-dumps-extension"
PACKAGECONFIG_append_witherspoon-tacoma = " openpower-dumps-extension"
SRC_URI += "file://plugins.d/ibm_elogall"
@@ -33,7 +33,20 @@ install_dreport_header() {
install -m 0755 ${S}/tools/dreport.d/ibm.d/gendumpheader ${D}${dreport_include_dir}/
}
+#Install ibm bad vpd script from dreport/ibm.d to dreport/plugins.d
+install_ibm_bad_vpd() {
+ install -d ${D}${dreport_plugin_dir}
+ install -m 0755 ${S}/tools/dreport.d/ibm.d/badvpd ${D}${dreport_plugin_dir}
+}
+
+#Link in the plugins so dreport run them at the appropriate time based on the plugin type
+python link_ibm_bad_vpd() {
+ sourcedir = d.getVar('S', True)
+ script = os.path.join(sourcedir, "tools", "dreport.d", "ibm.d", "badvpd")
+ install_dreport_user_script(script, d)
+}
+
IBM_INSTALL_POSTFUNCS = "install_ibm_plugins link_ibm_plugins"
-IBM_INSTALL_POSTFUNCS_rainier += "install_dreport_header"
+IBM_INSTALL_POSTFUNCS_p10bmc += "install_dreport_header install_ibm_bad_vpd link_ibm_bad_vpd"
do_install[postfuncs] += "${IBM_INSTALL_POSTFUNCS}"
diff --git a/meta-ibm/recipes-phosphor/fans/fan-watchdog/rainier/obmc/fan-watchdog/fan-watchdog.conf b/meta-ibm/recipes-phosphor/fans/fan-watchdog/p10bmc/obmc/fan-watchdog/fan-watchdog.conf
index ce7824ccb..ce7824ccb 100644
--- a/meta-ibm/recipes-phosphor/fans/fan-watchdog/rainier/obmc/fan-watchdog/fan-watchdog.conf
+++ b/meta-ibm/recipes-phosphor/fans/fan-watchdog/p10bmc/obmc/fan-watchdog/fan-watchdog.conf
diff --git a/meta-ibm/recipes-phosphor/fans/fan-watchdog/rainier/obmc/fan-watchdog/reset-fan-watchdog.conf b/meta-ibm/recipes-phosphor/fans/fan-watchdog/p10bmc/obmc/fan-watchdog/reset-fan-watchdog.conf
index 98cb60288..98cb60288 100644
--- a/meta-ibm/recipes-phosphor/fans/fan-watchdog/rainier/obmc/fan-watchdog/reset-fan-watchdog.conf
+++ b/meta-ibm/recipes-phosphor/fans/fan-watchdog/p10bmc/obmc/fan-watchdog/reset-fan-watchdog.conf
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config.bbappend b/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config.bbappend
index dfe220935..2c15e034a 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config.bbappend
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config.bbappend
@@ -1,8 +1,9 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
SRC_URI_witherspoon = "file://config.json"
-SRC_URI_rainier = "file://rainier-2u/config.json \
+SRC_URI_p10bmc = "file://rainier-2u/config.json \
file://rainier-4u/config.json \
+ file://rainier-1s4u/config.json \
file://everest/config.json \
"
@@ -11,12 +12,14 @@ do_install_witherspoon() {
install -m 0644 ${WORKDIR}/config.json ${D}/${datadir}/phosphor-fan-presence/monitor/
}
-do_install_rainier() {
+do_install_p10bmc() {
# Install Rainier-2U/4U fan monitor config files
install -d ${D}/${datadir}/phosphor-fan-presence/monitor/ibm,rainier-2u/
install -d ${D}/${datadir}/phosphor-fan-presence/monitor/ibm,rainier-4u/
+ install -d ${D}/${datadir}/phosphor-fan-presence/monitor/ibm,rainier-1s4u/
install -m 0644 ${WORKDIR}/rainier-2u/config.json ${D}/${datadir}/phosphor-fan-presence/monitor/ibm,rainier-2u/
install -m 0644 ${WORKDIR}/rainier-4u/config.json ${D}/${datadir}/phosphor-fan-presence/monitor/ibm,rainier-4u/
+ install -m 0644 ${WORKDIR}/rainier-1s4u/config.json ${D}/${datadir}/phosphor-fan-presence/monitor/ibm,rainier-1s4u/
# Install Everest fan monitor config file
install -d ${D}/${datadir}/phosphor-fan-presence/monitor/ibm,everest/
@@ -26,7 +29,8 @@ do_install_rainier() {
FILES_${PN}_append_witherspoon = " ${datadir}/phosphor-fan-presence/monitor/config.json"
FILES_${PN}_remove_witherspoon = "${monitor_datadir}/monitor.yaml"
-FILES_${PN}_remove_rainier = "${monitor_datadir}/monitor.yaml"
-FILES_${PN}_append_rainier = " ${datadir}/phosphor-fan-presence/monitor/ibm,rainier-2u/config.json"
-FILES_${PN}_append_rainier = " ${datadir}/phosphor-fan-presence/monitor/ibm,rainier-4u/config.json"
-FILES_${PN}_append_rainier = " ${datadir}/phosphor-fan-presence/monitor/ibm,everest/config.json"
+FILES_${PN}_remove_p10bmc = "${monitor_datadir}/monitor.yaml"
+FILES_${PN}_append_p10bmc = " ${datadir}/phosphor-fan-presence/monitor/ibm,rainier-2u/config.json"
+FILES_${PN}_append_p10bmc = " ${datadir}/phosphor-fan-presence/monitor/ibm,rainier-4u/config.json"
+FILES_${PN}_append_p10bmc = " ${datadir}/phosphor-fan-presence/monitor/ibm,rainier-1s4u/config.json"
+FILES_${PN}_append_p10bmc = " ${datadir}/phosphor-fan-presence/monitor/ibm,everest/config.json"
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/rainier/everest/config.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/p10bmc/everest/config.json
index 74bcfc425..74bcfc425 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/rainier/everest/config.json
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/p10bmc/everest/config.json
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/p10bmc/rainier-1s4u/config.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/p10bmc/rainier-1s4u/config.json
new file mode 100644
index 000000000..737cb3f3b
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/p10bmc/rainier-1s4u/config.json
@@ -0,0 +1,90 @@
+{
+ "fans": [
+ {
+ "inventory": "/system/chassis/motherboard/fan0",
+ "functional_delay": 5,
+ "allowed_out_of_range_time": 30,
+ "deviation": 15,
+ "num_sensors_nonfunc_for_fan_nonfunc": 1,
+ "monitor_start_delay": 30,
+ "fan_missing_error_delay": 20,
+ "nonfunc_rotor_error_delay": 0,
+ "sensors": [
+ {
+ "name": "fan0_0",
+ "has_target": true
+ }
+ ]
+ },
+ {
+ "inventory": "/system/chassis/motherboard/fan1",
+ "functional_delay": 5,
+ "allowed_out_of_range_time": 30,
+ "deviation": 15,
+ "num_sensors_nonfunc_for_fan_nonfunc": 1,
+ "monitor_start_delay": 30,
+ "fan_missing_error_delay": 20,
+ "nonfunc_rotor_error_delay": 0,
+ "sensors": [
+ {
+ "name": "fan1_0",
+ "has_target": true
+ }
+ ]
+ },
+ {
+ "inventory": "/system/chassis/motherboard/fan2",
+ "functional_delay": 5,
+ "allowed_out_of_range_time": 30,
+ "deviation": 15,
+ "num_sensors_nonfunc_for_fan_nonfunc": 1,
+ "monitor_start_delay": 30,
+ "fan_missing_error_delay": 20,
+ "nonfunc_rotor_error_delay": 0,
+ "sensors": [
+ {
+ "name": "fan2_0",
+ "has_target": true
+ }
+ ]
+ },
+ {
+ "inventory": "/system/chassis/motherboard/fan4",
+ "functional_delay": 5,
+ "allowed_out_of_range_time": 30,
+ "deviation": 15,
+ "num_sensors_nonfunc_for_fan_nonfunc": 1,
+ "monitor_start_delay": 30,
+ "fan_missing_error_delay": 20,
+ "nonfunc_rotor_error_delay": 0,
+ "sensors": [
+ {
+ "name": "fan4_0",
+ "has_target": true
+ }
+ ]
+ }
+ ],
+ "fault_handling":
+ {
+ "num_nonfunc_rotors_before_error": 1,
+
+ "power_off_config":
+ [
+ {
+ "type": "hard",
+ "cause": "missing_fan_frus",
+ "count": 1,
+ "delay": 25,
+ "state": "at_pgood"
+ },
+ {
+ "type": "epow",
+ "cause": "nonfunc_fan_rotors",
+ "count": 2,
+ "service_mode_delay": 300,
+ "meltdown_delay": 300
+ }
+ ]
+ }
+}
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/rainier/rainier-2u/config.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/p10bmc/rainier-2u/config.json
index 145e37f38..145e37f38 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/rainier/rainier-2u/config.json
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/p10bmc/rainier-2u/config.json
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/rainier/rainier-4u/config.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/p10bmc/rainier-4u/config.json
index 71a489944..71a489944 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/rainier/rainier-4u/config.json
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan-monitor-config/p10bmc/rainier-4u/config.json
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config.bbappend b/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config.bbappend
index efbdea1f3..2306ee509 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config.bbappend
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config.bbappend
@@ -1,8 +1,9 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
SRC_URI_witherspoon = "file://config.json"
-SRC_URI_rainier = "file://rainier-2u/config.json \
+SRC_URI_p10bmc = "file://rainier-2u/config.json \
file://rainier-4u/config.json \
+ file://rainier-1s4u/config.json \
file://everest/config.json \
"
@@ -10,12 +11,14 @@ do_install_witherspoon() {
install -d ${D}/${datadir}/phosphor-fan-presence/presence/
install -m 0644 ${WORKDIR}/config.json ${D}/${datadir}/phosphor-fan-presence/presence/
}
-do_install_rainier() {
+do_install_p10bmc() {
# Install Rainier-2U/4U fan presence config files
install -d ${D}/${datadir}/phosphor-fan-presence/presence/ibm,rainier-2u/
install -d ${D}/${datadir}/phosphor-fan-presence/presence/ibm,rainier-4u/
+ install -d ${D}/${datadir}/phosphor-fan-presence/presence/ibm,rainier-1s4u/
install -m 0644 ${WORKDIR}/rainier-2u/config.json ${D}/${datadir}/phosphor-fan-presence/presence/ibm,rainier-2u/
install -m 0644 ${WORKDIR}/rainier-4u/config.json ${D}/${datadir}/phosphor-fan-presence/presence/ibm,rainier-4u/
+ install -m 0644 ${WORKDIR}/rainier-1s4u/config.json ${D}/${datadir}/phosphor-fan-presence/presence/ibm,rainier-1s4u/
# Install Everest fan presence config file
install -d ${D}/${datadir}/phosphor-fan-presence/presence/ibm,everest/
@@ -25,7 +28,8 @@ do_install_rainier() {
FILES_${PN}_append_witherspoon = " ${datadir}/phosphor-fan-presence/presence/config.json"
FILES_${PN}_remove_witherspoon = "${presence_datadir}/config.yaml"
-FILES_${PN}_remove_rainier = "${presence_datadir}/config.yaml"
-FILES_${PN}_append_rainier = " ${datadir}/phosphor-fan-presence/presence/ibm,rainier-2u/config.json"
-FILES_${PN}_append_rainier = " ${datadir}/phosphor-fan-presence/presence/ibm,rainier-4u/config.json"
-FILES_${PN}_append_rainier = " ${datadir}/phosphor-fan-presence/presence/ibm,everest/config.json"
+FILES_${PN}_remove_p10bmc = "${presence_datadir}/config.yaml"
+FILES_${PN}_append_p10bmc = " ${datadir}/phosphor-fan-presence/presence/ibm,rainier-2u/config.json"
+FILES_${PN}_append_p10bmc = " ${datadir}/phosphor-fan-presence/presence/ibm,rainier-4u/config.json"
+FILES_${PN}_append_p10bmc = " ${datadir}/phosphor-fan-presence/presence/ibm,rainier-1s4u/config.json"
+FILES_${PN}_append_p10bmc = " ${datadir}/phosphor-fan-presence/presence/ibm,everest/config.json"
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/rainier/everest/config.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/p10bmc/everest/config.json
index 439aedcac..439aedcac 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/rainier/everest/config.json
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/p10bmc/everest/config.json
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/p10bmc/rainier-1s4u/config.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/p10bmc/rainier-1s4u/config.json
new file mode 100644
index 000000000..5bcda88b3
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/p10bmc/rainier-1s4u/config.json
@@ -0,0 +1,86 @@
+[
+ {
+ "name": "fan0",
+ "path": "/system/chassis/motherboard/fan0",
+ "methods": [
+ {
+ "type": "gpio",
+ "key": 6,
+ "physpath": "/sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@1e78a000/1e78a400.i2c-bus/i2c-7/7-0061",
+ "devpath": "/dev/input/by-path/platform-gpio-keys-polled-event"
+ },
+ {
+ "type": "tach",
+ "sensors": [
+ "fan0_0"
+ ]
+ }
+ ],
+ "rpolicy": {
+ "type": "anyof"
+ }
+ },
+ {
+ "name": "fan1",
+ "path": "/system/chassis/motherboard/fan1",
+ "methods": [
+ {
+ "type": "gpio",
+ "key": 7,
+ "physpath": "/sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@1e78a000/1e78a400.i2c-bus/i2c-7/7-0061",
+ "devpath": "/dev/input/by-path/platform-gpio-keys-polled-event"
+ },
+ {
+ "type": "tach",
+ "sensors": [
+ "fan1_0"
+ ]
+ }
+ ],
+ "rpolicy": {
+ "type": "anyof"
+ }
+ },
+ {
+ "name": "fan2",
+ "path": "/system/chassis/motherboard/fan2",
+ "methods": [
+ {
+ "type": "gpio",
+ "key": 8,
+ "physpath": "/sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@1e78a000/1e78a400.i2c-bus/i2c-7/7-0061",
+ "devpath": "/dev/input/by-path/platform-gpio-keys-polled-event"
+ },
+ {
+ "type": "tach",
+ "sensors": [
+ "fan2_0"
+ ]
+ }
+ ],
+ "rpolicy": {
+ "type": "anyof"
+ }
+ },
+ {
+ "name": "fan4",
+ "path": "/system/chassis/motherboard/fan4",
+ "methods": [
+ {
+ "type": "gpio",
+ "key": 10,
+ "physpath": "/sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@1e78a000/1e78a400.i2c-bus/i2c-7/7-0061",
+ "devpath": "/dev/input/by-path/platform-gpio-keys-polled-event"
+ },
+ {
+ "type": "tach",
+ "sensors": [
+ "fan4_0"
+ ]
+ }
+ ],
+ "rpolicy": {
+ "type": "anyof"
+ }
+ }
+]
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/rainier/rainier-2u/config.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/p10bmc/rainier-2u/config.json
index 726451028..726451028 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/rainier/rainier-2u/config.json
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/p10bmc/rainier-2u/config.json
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/rainier/rainier-4u/config.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/p10bmc/rainier-4u/config.json
index 94e7e69f8..94e7e69f8 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/rainier/rainier-4u/config.json
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/p10bmc/rainier-4u/config.json
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/everest/fans.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/everest/fans.json
index 0e4e4d05a..0e4e4d05a 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/everest/fans.json
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/everest/fans.json
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/everest/zones.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/everest/zones.json
index 2edfb3680..2edfb3680 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/everest/zones.json
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/everest/zones.json
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/manager.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/manager.json
index 1480aa30f..1480aa30f 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/manager.json
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/manager.json
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-1s4u/fans.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-1s4u/fans.json
new file mode 100644
index 000000000..a04270076
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-1s4u/fans.json
@@ -0,0 +1,26 @@
+[
+ {
+ "name": "fan0",
+ "zone": "0",
+ "sensors": ["fan0_0"],
+ "target_interface": "xyz.openbmc_project.Control.FanSpeed"
+ },
+ {
+ "name": "fan1",
+ "zone": "0",
+ "sensors": ["fan1_0"],
+ "target_interface": "xyz.openbmc_project.Control.FanSpeed"
+ },
+ {
+ "name": "fan2",
+ "zone": "0",
+ "sensors": ["fan2_0"],
+ "target_interface": "xyz.openbmc_project.Control.FanSpeed"
+ },
+ {
+ "name": "fan4",
+ "zone": "0",
+ "sensors": ["fan4_0"],
+ "target_interface": "xyz.openbmc_project.Control.FanSpeed"
+ }
+]
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/rainier-4u/zones.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-1s4u/zones.json
index b2c96070b..b2c96070b 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/rainier-4u/zones.json
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-1s4u/zones.json
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/rainier-2u/zones.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-2u/zones.json
index 54d3f28ca..54d3f28ca 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/rainier-2u/zones.json
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-2u/zones.json
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-4u/zones.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-4u/zones.json
new file mode 100644
index 000000000..b2c96070b
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier-4u/zones.json
@@ -0,0 +1,9 @@
+[
+ {
+ "name": "0",
+ "full_speed": 6000,
+ "default_floor": 6000,
+ "increase_delay": 5,
+ "decrease_interval": 30
+ }
+]
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/rainier/fans.json b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier/fans.json
index 10465a909..10465a909 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan/rainier/rainier/fans.json
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan/p10bmc/rainier/fans.json
diff --git a/meta-ibm/recipes-phosphor/fans/phosphor-fan_%.bbappend b/meta-ibm/recipes-phosphor/fans/phosphor-fan_%.bbappend
index 3d6829a2d..7de421656 100644
--- a/meta-ibm/recipes-phosphor/fans/phosphor-fan_%.bbappend
+++ b/meta-ibm/recipes-phosphor/fans/phosphor-fan_%.bbappend
@@ -34,16 +34,16 @@ SYSTEMD_OVERRIDE_phosphor-fan-control_witherspoon += "fan-watchdog-monitor.conf:
SYSTEMD_OVERRIDE_phosphor-fan-control_witherspoon += "fan-watchdog-monitor.conf:phosphor-fan-control@0.service.d/fan-watchdog-monitor.conf"
SYSTEMD_OVERRIDE_phosphor-fan-monitor_witherspoon += "fan-watchdog-monitor.conf:phosphor-fan-monitor-init@0.service.d/fan-watchdog-monitor.conf"
SYSTEMD_OVERRIDE_phosphor-fan-monitor_witherspoon += "fan-watchdog-monitor.conf:phosphor-fan-monitor@0.service.d/fan-watchdog-monitor.conf"
-SYSTEMD_OVERRIDE_phosphor-fan-control_rainier += "fan-watchdog-monitor.conf:phosphor-fan-control-init@0.service.d/fan-watchdog-monitor.conf"
-SYSTEMD_OVERRIDE_phosphor-fan-control_rainier += "fan-watchdog-monitor.conf:phosphor-fan-control@0.service.d/fan-watchdog-monitor.conf"
-SYSTEMD_OVERRIDE_phosphor-fan-monitor_rainier += "fan-watchdog-monitor.conf:phosphor-fan-monitor-init@0.service.d/fan-watchdog-monitor.conf"
-SYSTEMD_OVERRIDE_phosphor-fan-monitor_rainier += "fan-watchdog-monitor.conf:phosphor-fan-monitor@0.service.d/fan-watchdog-monitor.conf"
+SYSTEMD_OVERRIDE_phosphor-fan-control_p10bmc += "fan-watchdog-monitor.conf:phosphor-fan-control-init@0.service.d/fan-watchdog-monitor.conf"
+SYSTEMD_OVERRIDE_phosphor-fan-control_p10bmc += "fan-watchdog-monitor.conf:phosphor-fan-control@0.service.d/fan-watchdog-monitor.conf"
+SYSTEMD_OVERRIDE_phosphor-fan-monitor_p10bmc += "fan-watchdog-monitor.conf:phosphor-fan-monitor-init@0.service.d/fan-watchdog-monitor.conf"
+SYSTEMD_OVERRIDE_phosphor-fan-monitor_p10bmc += "fan-watchdog-monitor.conf:phosphor-fan-monitor@0.service.d/fan-watchdog-monitor.conf"
#These services need to be stopped when watchdog expires
SYSTEMD_OVERRIDE_phosphor-fan-control_witherspoon += "fan-watchdog-conflicts.conf:phosphor-fan-control@0.service.d/fan-watchdog-conflicts.conf"
SYSTEMD_OVERRIDE_phosphor-fan-monitor_witherspoon += "fan-watchdog-conflicts.conf:phosphor-fan-monitor@0.service.d/fan-watchdog-conflicts.conf"
-SYSTEMD_OVERRIDE_phosphor-fan-control_rainier += "fan-watchdog-conflicts.conf:phosphor-fan-control@0.service.d/fan-watchdog-conflicts.conf"
-SYSTEMD_OVERRIDE_phosphor-fan-monitor_rainier += "fan-watchdog-conflicts.conf:phosphor-fan-monitor@0.service.d/fan-watchdog-conflicts.conf"
+SYSTEMD_OVERRIDE_phosphor-fan-control_p10bmc += "fan-watchdog-conflicts.conf:phosphor-fan-control@0.service.d/fan-watchdog-conflicts.conf"
+SYSTEMD_OVERRIDE_phosphor-fan-monitor_p10bmc += "fan-watchdog-conflicts.conf:phosphor-fan-monitor@0.service.d/fan-watchdog-conflicts.conf"
# Witherspoon fan control service linking
# Link fan control init service
@@ -61,43 +61,51 @@ EXTRA_OECONF_append_witherspoon = " --disable-json-control"
RDEPENDS_${PN}-presence-tach_append_witherspoon = " phosphor-fan-presence-config"
RDEPENDS_${PN}-monitor_append_witherspoon = " phosphor-fan-monitor-config"
-PACKAGECONFIG_append_rainier = " json sensor-monitor"
-FAN_PACKAGES_append_rainier = " sensor-monitor"
-RDEPENDS_${PN}-presence-tach_append_rainier = " phosphor-fan-presence-config"
-RDEPENDS_${PN}-monitor_append_rainier = " phosphor-fan-monitor-config"
+PACKAGECONFIG_append_p10bmc = " json sensor-monitor"
+FAN_PACKAGES_append_p10bmc = " sensor-monitor"
+RDEPENDS_${PN}-presence-tach_append_p10bmc = " phosphor-fan-presence-config"
+RDEPENDS_${PN}-monitor_append_p10bmc = " phosphor-fan-monitor-config"
# Install fan control JSON config files
-SRC_URI_append_rainier = " \
+SRC_URI_append_p10bmc = " \
file://manager.json \
file://rainier/fans.json \
+ file://rainier-1s4u/fans.json \
file://rainier-2u/zones.json \
file://rainier-4u/zones.json \
+ file://rainier-1s4u/zones.json \
file://everest/fans.json \
file://everest/zones.json"
-do_install_append_rainier() {
+do_install_append_p10bmc() {
# Install fan control manager config file
install -d ${D}/${datadir}/phosphor-fan-presence/control/
install -m 0644 ${WORKDIR}/manager.json ${D}/${datadir}/phosphor-fan-presence/control/
# Install Rainier-2U/4U fan config files
install -d ${D}/${datadir}/phosphor-fan-presence/control/ibm,rainier
+ install -d ${D}/${datadir}/phosphor-fan-presence/control/ibm,rainier-1s4u
install -m 0644 ${WORKDIR}/rainier/fans.json ${D}/${datadir}/phosphor-fan-presence/control/ibm,rainier/
+ install -m 0644 ${WORKDIR}/rainier-1s4u/fans.json ${D}/${datadir}/phosphor-fan-presence/control/ibm,rainier-1s4u/
install -d ${D}/${datadir}/phosphor-fan-presence/control/ibm,rainier-2u/
install -d ${D}/${datadir}/phosphor-fan-presence/control/ibm,rainier-4u/
+ install -d ${D}/${datadir}/phosphor-fan-presence/control/ibm,rainier-1s4u/
install -m 0644 ${WORKDIR}/rainier-2u/zones.json ${D}/${datadir}/phosphor-fan-presence/control/ibm,rainier-2u/
install -m 0644 ${WORKDIR}/rainier-4u/zones.json ${D}/${datadir}/phosphor-fan-presence/control/ibm,rainier-4u/
+ install -m 0644 ${WORKDIR}/rainier-1s4u/zones.json ${D}/${datadir}/phosphor-fan-presence/control/ibm,rainier-1s4u/
# Install Everest fan config files
install -d ${D}/${datadir}/phosphor-fan-presence/control/ibm,everest
install -m 0644 ${WORKDIR}/everest/fans.json ${D}/${datadir}/phosphor-fan-presence/control/ibm,everest/
install -m 0644 ${WORKDIR}/everest/zones.json ${D}/${datadir}/phosphor-fan-presence/control/ibm,everest/
}
-FILES_${PN}-control_append_rainier = " \
+FILES_${PN}-control_append_p10bmc = " \
${datadir}/phosphor-fan-presence/control/manager.json \
${datadir}/phosphor-fan-presence/control/ibm,rainier/fans.json \
+ ${datadir}/phosphor-fan-presence/control/ibm,rainier-1s4u/fans.json \
${datadir}/phosphor-fan-presence/control/ibm,rainier-2u/zones.json \
${datadir}/phosphor-fan-presence/control/ibm,rainier-4u/zones.json \
+ ${datadir}/phosphor-fan-presence/control/ibm,rainier-1s4u/zones.json \
${datadir}/phosphor-fan-presence/control/ibm,everest/fans.json \
${datadir}/phosphor-fan-presence/control/ibm,everest/zones.json"
diff --git a/meta-ibm/recipes-phosphor/flash/phosphor-software-manager_%.bbappend b/meta-ibm/recipes-phosphor/flash/phosphor-software-manager_%.bbappend
index 61297c12c..a440b1173 100644
--- a/meta-ibm/recipes-phosphor/flash/phosphor-software-manager_%.bbappend
+++ b/meta-ibm/recipes-phosphor/flash/phosphor-software-manager_%.bbappend
@@ -1,16 +1,16 @@
BMC_RW_MTD_ibm-ac-server = "bmc"
-BMC_RW_MTD_rainier = "bmc"
+BMC_RW_MTD_p10bmc = "bmc"
BMC_RW_MTD_mihawk = "bmc"
BMC_RO_MTD_ibm-ac-server = "alt-bmc+bmc"
-BMC_RO_MTD_rainier = "bmc"
+BMC_RO_MTD_p10bmc = "bmc"
BMC_RO_MTD_mihawk = "alt-bmc+bmc"
BMC_KERNEL_MTD_ibm-ac-server = "bmc"
-BMC_KERNEL_MTD_rainier = "bmc"
+BMC_KERNEL_MTD_p10bmc = "bmc"
BMC_KERNEL_MTD_mihawk = "bmc"
# Enable signature verification
PACKAGECONFIG_append_ibm-ac-server = " verify_signature"
-PACKAGECONFIG_append_rainier = " verify_signature"
+PACKAGECONFIG_append_p10bmc = " verify_signature"
PACKAGECONFIG_append_mihawk = " verify_signature"
# Enable sync of persistent files to the alternate BMC chip
diff --git a/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/rainier/obmc/gpio/phosphor-power-supply-0.conf b/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/p10bmc/obmc/gpio/phosphor-power-supply-0.conf
index d2c96e643..d2c96e643 100644
--- a/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/rainier/obmc/gpio/phosphor-power-supply-0.conf
+++ b/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/p10bmc/obmc/gpio/phosphor-power-supply-0.conf
diff --git a/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/rainier/obmc/gpio/phosphor-power-supply-1.conf b/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/p10bmc/obmc/gpio/phosphor-power-supply-1.conf
index 655ce07f5..655ce07f5 100644
--- a/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/rainier/obmc/gpio/phosphor-power-supply-1.conf
+++ b/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/p10bmc/obmc/gpio/phosphor-power-supply-1.conf
diff --git a/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/rainier/obmc/gpio/phosphor-power-supply-2.conf b/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/p10bmc/obmc/gpio/phosphor-power-supply-2.conf
index 0723892d6..0723892d6 100644
--- a/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/rainier/obmc/gpio/phosphor-power-supply-2.conf
+++ b/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/p10bmc/obmc/gpio/phosphor-power-supply-2.conf
diff --git a/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/rainier/obmc/gpio/phosphor-power-supply-3.conf b/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/p10bmc/obmc/gpio/phosphor-power-supply-3.conf
index 3dadeefbe..3dadeefbe 100644
--- a/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/rainier/obmc/gpio/phosphor-power-supply-3.conf
+++ b/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor/p10bmc/obmc/gpio/phosphor-power-supply-3.conf
diff --git a/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend b/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend
index e5af8850c..9884173d5 100644
--- a/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend
+++ b/meta-ibm/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend
@@ -7,10 +7,10 @@ FMT_POWERSUPPLY = "../${TMPL_POWERSUPPLY}:${POWERSUPPLY_TGT}.wants/${INSTFMT_POW
SYSTEMD_LINK_${PN}-presence_append_ibm-ac-server = " ${@compose_list(d, 'FMT_POWERSUPPLY', 'OBMC_POWER_SUPPLY_INSTANCES')}"
SYSTEMD_LINK_${PN}-presence_append_mihawk = " ${@compose_list(d, 'FMT_POWERSUPPLY', 'OBMC_POWER_SUPPLY_INSTANCES')}"
-SYSTEMD_LINK_${PN}-presence_append_rainier = " ${@compose_list(d, 'FMT_POWERSUPPLY', 'OBMC_POWER_SUPPLY_INSTANCES')}"
+SYSTEMD_LINK_${PN}-presence_append_p10bmc = " ${@compose_list(d, 'FMT_POWERSUPPLY', 'OBMC_POWER_SUPPLY_INSTANCES')}"
POWERSUPPLY_ENV_FMT = "obmc/gpio/phosphor-power-supply-{0}.conf"
SYSTEMD_ENVIRONMENT_FILE_${PN}-presence_append_ibm-ac-server = " ${@compose_list(d, 'POWERSUPPLY_ENV_FMT', 'OBMC_POWER_SUPPLY_INSTANCES')}"
SYSTEMD_ENVIRONMENT_FILE_${PN}-presence_append_mihawk = " ${@compose_list(d, 'POWERSUPPLY_ENV_FMT', 'OBMC_POWER_SUPPLY_INSTANCES')}"
-SYSTEMD_ENVIRONMENT_FILE_${PN}-presence_append_rainier = " ${@compose_list(d, 'POWERSUPPLY_ENV_FMT', 'OBMC_POWER_SUPPLY_INSTANCES')}"
+SYSTEMD_ENVIRONMENT_FILE_${PN}-presence_append_p10bmc = " ${@compose_list(d, 'POWERSUPPLY_ENV_FMT', 'OBMC_POWER_SUPPLY_INSTANCES')}"
diff --git a/meta-ibm/recipes-phosphor/host/phosphor-host-postd_%.bbappend b/meta-ibm/recipes-phosphor/host/phosphor-host-postd_%.bbappend
new file mode 100644
index 000000000..5ac5e59ce
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/host/phosphor-host-postd_%.bbappend
@@ -0,0 +1,2 @@
+SNOOP_DEVICE_witherspoon-tacoma = ""
+SNOOP_DEVICE_p10bmc = ""
diff --git a/meta-ibm/recipes-phosphor/images/obmc-phosphor-image.bbappend b/meta-ibm/recipes-phosphor/images/obmc-phosphor-image.bbappend
index 433d58d68..403bfa0cc 100644
--- a/meta-ibm/recipes-phosphor/images/obmc-phosphor-image.bbappend
+++ b/meta-ibm/recipes-phosphor/images/obmc-phosphor-image.bbappend
@@ -1,5 +1,5 @@
OBMC_IMAGE_EXTRA_INSTALL_append_ibm-ac-server = " mboxd max31785-msl phosphor-msl-verify liberation-fonts uart-render-controller first-boot-set-hostname"
-OBMC_IMAGE_EXTRA_INSTALL_append_rainier = " mboxd ibmtpm2tss"
+OBMC_IMAGE_EXTRA_INSTALL_append_p10bmc = " mboxd ibmtpm2tss"
OBMC_IMAGE_EXTRA_INSTALL_append_witherspoon-tacoma = " ibmtpm2tss"
OBMC_IMAGE_EXTRA_INSTALL_append_mihawk = " mboxd liberation-fonts uart-render-controller "
diff --git a/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/rainier/ibm,everest_associations.json b/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/p10bmc/ibm,everest_associations.json
index bf797d94c..bf797d94c 100644
--- a/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/rainier/ibm,everest_associations.json
+++ b/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/p10bmc/ibm,everest_associations.json
diff --git a/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/p10bmc/ibm,rainier-2u_associations.json b/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/p10bmc/ibm,rainier-2u_associations.json
new file mode 100644
index 000000000..348cb9755
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/p10bmc/ibm,rainier-2u_associations.json
@@ -0,0 +1,2857 @@
+{
+ "condition":
+ {
+ "path": "system/chassis/motherboard",
+ "interface": "com.ibm.ipzvpd.VSBP",
+ "property": "IM",
+ "values": [
+ [80, 0, 16, 1],
+ [80, 0, 16, 3]
+ ]
+ },
+ "associations":
+ [
+ {
+ "path": "system/chassis/motherboard/fan0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "inventory",
+ "fType": "sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan0_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan0_1"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/fan1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "inventory",
+ "fType": "sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan1_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan1_1"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/fan2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "inventory",
+ "fType": "sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan2_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan2_1"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan2_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan2_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/fan3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "inventory",
+ "fType": "sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan3_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan3_1"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan3_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan3_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/fan4",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "inventory",
+ "fType": "sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan4_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan4_1"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan4_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan4_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/fan5",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "inventory",
+ "fType": "sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan5_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan5_1"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan5_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan5_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "chassis",
+ "fType": "all_sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan0_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan0_1",
+ "/xyz/openbmc_project/sensors/fan_tach/fan1_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan1_1",
+ "/xyz/openbmc_project/sensors/fan_tach/fan2_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan2_1",
+ "/xyz/openbmc_project/sensors/fan_tach/fan3_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan3_1",
+ "/xyz/openbmc_project/sensors/fan_tach/fan4_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan4_1"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/powersupply0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/powersupply0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/powersupply0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/powersupply1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/powersupply1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/powersupply1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/planar_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/planar_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/base_op_panel_blyth",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/base_blyth_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/base_blyth_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/lcd_op_panel_hill",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/lcd_russel_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/lcd_russel_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/ebmc_card_bmc",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/bmc_ingraham_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/bmc_ingraham_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/cpu0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/cpu1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/cpu2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/cpu3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm2_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm2_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm3_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm3_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm4",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm4_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm4_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm5",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm5_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm5_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm6",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm6_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm6_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm7",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm7_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm7_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm8",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm8_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm8_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm9",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm9_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm9_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm10",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm10_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm10_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm11",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm11_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm11_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm12",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm12_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm12_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm13",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm13_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm13_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm14",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm14_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm14_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm15",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm15_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm15_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm16",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm16_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm16_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm17",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm17_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm17_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm18",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm18_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm18_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm19",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm19_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm19_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm20",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm20_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm20_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm21",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm21_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm21_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm22",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm22_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm22_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm23",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm23_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm23_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm24",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm24_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm24_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm25",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm25_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm25_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm26",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm26_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm26_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm27",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm27_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm27_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm28",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm28_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm28_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm29",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm29_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm29_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm30",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm30_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm30_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm31",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm31_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm31_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/vdd_vrm0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu0_vrm0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu0_vrm0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/vdd_vrm1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu1_vrm0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu1_vrm0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/tod_battery",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/rtc_battery_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/rtc_battery_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/tpm_wilson",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/tpm_wilson_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/tpm_wilson_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot2_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot2_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot3_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot3_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot4",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot4_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot4_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot6",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot6_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot6_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot7",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot7_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot7_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot8",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot8_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot8_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot9",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot9_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot9_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot10",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot10_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot10_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot11",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot11_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot11_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card0/cxp_top",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard0_cxp_top_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard0_cxp_top_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card0/cxp_bot",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard0_cxp_bot_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard0_cxp_bot_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card3/cxp_top",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard3_cxp_top_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard3_cxp_top_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card3/cxp_bot",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard3_cxp_bot_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard3_cxp_bot_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card4/cxp_top",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard4_cxp_top_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard4_cxp_top_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card4/cxp_bot",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard4_cxp_bot_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard4_cxp_bot_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card10/cxp_top",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard10_cxp_top_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard10_cxp_top_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card10/cxp_bot",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard10_cxp_bot_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard10_cxp_bot_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/dasd_pyramid0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/dasd_pyramid0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/dasd_pyramid1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/dasd_pyramid1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/dasd_pyramid2_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/dasd_pyramid2_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme2_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme2_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme3_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme3_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme4",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme4_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme4_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme5",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme5_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme5_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme6",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme6_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme6_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme7",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme7_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme7_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme8_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme8_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme9_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme9_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme10_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme10_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme11_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme11_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme4",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme12_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme12_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme5",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme13_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme13_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme6",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme14_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme14_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme7",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme15_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme15_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme16_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme16_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme17_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme17_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme18_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme18_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme19_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme19_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme4",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme20_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme20_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme5",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme21_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme21_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme6",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme22_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme22_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme7",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme23_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme23_identify"
+ ]
+ }
+ ]
+ }
+ ]
+}
diff --git a/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/p10bmc/ibm,rainier-4u_associations.json b/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/p10bmc/ibm,rainier-4u_associations.json
new file mode 100644
index 000000000..7841a966a
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/p10bmc/ibm,rainier-4u_associations.json
@@ -0,0 +1,2846 @@
+{
+ "condition":
+ {
+ "path": "system/chassis/motherboard",
+ "interface": "com.ibm.ipzvpd.VSBP",
+ "property": "IM",
+ "values": [
+ [80, 0, 16, 0],
+ [80, 0, 16, 2]
+ ]
+ },
+ "associations":
+ [
+ {
+ "path": "system/chassis/motherboard/fan0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "inventory",
+ "fType": "sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan0_0"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/fan1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "inventory",
+ "fType": "sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan1_0"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/fan2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "inventory",
+ "fType": "sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan2_0"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan2_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan2_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/fan3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "inventory",
+ "fType": "sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan3_0"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan3_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan3_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/fan4",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "inventory",
+ "fType": "sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan4_0"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan4_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan4_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/fan5",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "inventory",
+ "fType": "sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan5_0"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan5_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/fan5_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "chassis",
+ "fType": "all_sensors"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/sensors/fan_tach/fan0_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan1_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan2_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan3_0",
+ "/xyz/openbmc_project/sensors/fan_tach/fan4_0"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/powersupply0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/powersupply0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/powersupply0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/powersupply1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/powersupply1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/powersupply1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/planar_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/planar_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/base_op_panel_blyth",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/base_blyth_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/base_blyth_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/lcd_op_panel_hill",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/lcd_russel_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/lcd_russel_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/ebmc_card_bmc",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/bmc_ingraham_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/bmc_ingraham_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/cpu0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/cpu1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/cpu2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/cpu3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm2_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm2_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm3_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm3_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm4",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm4_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm4_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm5",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm5_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm5_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm6",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm6_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm6_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm7",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm7_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm7_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm8",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm8_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm8_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm9",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm9_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm9_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm10",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm10_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm10_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm11",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm11_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm11_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm12",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm12_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm12_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm13",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm13_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm13_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm14",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm14_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm14_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm15",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm15_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm15_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm16",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm16_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm16_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm17",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm17_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm17_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm18",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm18_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm18_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm19",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm19_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm19_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm20",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm20_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm20_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm21",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm21_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm21_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm22",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm22_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm22_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm23",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm23_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm23_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm24",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm24_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm24_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm25",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm25_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm25_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm26",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm26_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm26_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm27",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm27_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm27_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm28",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm28_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm28_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm29",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm29_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm29_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm30",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm30_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm30_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/dimm31",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm31_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/ddimm31_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/vdd_vrm0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu0_vrm0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu0_vrm0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/vdd_vrm1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu1_vrm0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cpu1_vrm0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/tod_battery",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/rtc_battery_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/rtc_battery_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/tpm_wilson",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/tpm_wilson_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/tpm_wilson_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot2_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot2_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot3_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot3_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot4",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot4_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot4_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot6",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot6_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot6_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot7",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot7_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot7_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot8",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot8_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot8_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot9",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot9_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot9_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot10",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot10_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot10_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcieslot11",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot11_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/pcieslot11_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card0/cxp_top",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard0_cxp_top_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard0_cxp_top_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card0/cxp_bot",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard0_cxp_bot_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard0_cxp_bot_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card3/cxp_top",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard3_cxp_top_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard3_cxp_top_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card3/cxp_bot",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard3_cxp_bot_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard3_cxp_bot_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card4/cxp_top",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard4_cxp_top_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard4_cxp_top_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card4/cxp_bot",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard4_cxp_bot_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard4_cxp_bot_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card10/cxp_top",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard10_cxp_top_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard10_cxp_top_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/pcie_cable_card10/cxp_bot",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard10_cxp_bot_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/cablecard10_cxp_bot_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/dasd_pyramid0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/dasd_pyramid0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/dasd_pyramid1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/dasd_pyramid1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/dasd_pyramid2_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/dasd_pyramid2_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme0_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme0_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme1_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme1_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme2_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme2_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme3_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme3_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme4",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme4_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme4_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme5",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme5_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme5_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme6",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme6_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme6_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane0/nvme7",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme7_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme7_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme8_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme8_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme9_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme9_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme10_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme10_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme11_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme11_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme4",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme12_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme12_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme5",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme13_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme13_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme6",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme14_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme14_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane1/nvme7",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme15_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme15_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme0",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme16_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme16_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme1",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme17_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme17_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme2",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme18_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme18_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme3",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme19_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme19_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme4",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme20_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme20_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme5",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme21_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme21_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme6",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme22_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme22_identify"
+ ]
+ }
+ ]
+ },
+ {
+ "path": "system/chassis/motherboard/disk_backplane2/nvme7",
+ "endpoints":
+ [
+ {
+ "types":
+ {
+ "rType": "fault_inventory_object",
+ "fType": "fault_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme23_fault"
+ ]
+ },
+ {
+ "types":
+ {
+ "rType": "identify_inventory_object",
+ "fType": "identify_led_group"
+ },
+ "paths":
+ [
+ "/xyz/openbmc_project/led/groups/nvme23_identify"
+ ]
+ }
+ ]
+ }
+ ]
+}
diff --git a/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/rainier/ibm,rainier-2u_associations.json b/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/rainier/ibm,rainier-2u_associations.json
deleted file mode 100644
index e27de98a8..000000000
--- a/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/rainier/ibm,rainier-2u_associations.json
+++ /dev/null
@@ -1,150 +0,0 @@
-{
- "condition":
- {
- "path": "system/chassis/motherboard",
- "interface": "com.ibm.ipzvpd.VSBP",
- "property": "IM",
- "values": [
- [80, 0, 16, 1],
- [80, 0, 16, 3]
- ]
- },
- "associations":
- [
- {
- "path": "system/chassis/motherboard/fan0",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "inventory",
- "fType": "sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan0_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan0_1"
- ]
- }
- ]
- },
- {
- "path": "system/chassis/motherboard/fan1",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "inventory",
- "fType": "sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan1_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan1_1"
- ]
- }
- ]
- },
- {
- "path": "system/chassis/motherboard/fan2",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "inventory",
- "fType": "sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan2_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan2_1"
- ]
- }
- ]
- },
- {
- "path": "system/chassis/motherboard/fan3",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "inventory",
- "fType": "sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan3_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan3_1"
- ]
- }
- ]
- },
- {
- "path": "system/chassis/motherboard/fan4",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "inventory",
- "fType": "sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan4_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan4_1"
- ]
- }
- ]
- },
- {
- "path": "system/chassis/motherboard/fan5",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "inventory",
- "fType": "sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan5_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan5_1"
- ]
- }
- ]
- },
- {
- "path": "system/chassis",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "chassis",
- "fType": "all_sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan0_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan0_1",
- "/xyz/openbmc_project/sensors/fan_tach/fan1_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan1_1",
- "/xyz/openbmc_project/sensors/fan_tach/fan2_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan2_1",
- "/xyz/openbmc_project/sensors/fan_tach/fan3_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan3_1",
- "/xyz/openbmc_project/sensors/fan_tach/fan4_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan4_1"
- ]
- }
- ]
- }
- ]
-}
-
diff --git a/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/rainier/ibm,rainier-4u_associations.json b/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/rainier/ibm,rainier-4u_associations.json
deleted file mode 100644
index 3ba8fea11..000000000
--- a/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager/rainier/ibm,rainier-4u_associations.json
+++ /dev/null
@@ -1,150 +0,0 @@
-{
- "condition":
- {
- "path": "system/chassis/motherboard",
- "interface": "com.ibm.ipzvpd.VSBP",
- "property": "IM",
- "values": [
- [80, 0, 16, 0],
- [80, 0, 16, 2]
- ]
- },
- "associations":
- [
- {
- "path": "system/chassis/motherboard/fan0",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "inventory",
- "fType": "sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan0_0"
- ]
- },
- {
- "types":
- {
- "rType": "inventory",
- "fType": "leds"
- },
- "paths":
- [
- "/xyz/openbmc_project/led/physical/fan0"
- ]
- }
- ]
- },
- {
- "path": "system/chassis/motherboard/fan1",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "inventory",
- "fType": "sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan1_0"
- ]
- }
- ]
- },
- {
- "path": "system/chassis/motherboard/fan2",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "inventory",
- "fType": "sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan2_0"
- ]
- }
- ]
- },
- {
- "path": "system/chassis/motherboard/fan3",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "inventory",
- "fType": "sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan3_0"
- ]
- }
- ]
- },
- {
- "path": "system/chassis/motherboard/fan4",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "inventory",
- "fType": "sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan4_0"
- ]
- }
- ]
- },
- {
- "path": "system/chassis/motherboard/fan5",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "inventory",
- "fType": "sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan5_0"
- ]
- }
- ]
- },
- {
- "path": "system/chassis",
- "endpoints":
- [
- {
- "types":
- {
- "rType": "chassis",
- "fType": "all_sensors"
- },
- "paths":
- [
- "/xyz/openbmc_project/sensors/fan_tach/fan0_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan1_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan2_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan3_0",
- "/xyz/openbmc_project/sensors/fan_tach/fan4_0"
- ]
- }
- ]
- }
- ]
-}
-
diff --git a/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager_%.bbappend b/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager_%.bbappend
index af512973a..607546b9d 100644
--- a/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager_%.bbappend
+++ b/meta-ibm/recipes-phosphor/inventory/phosphor-inventory-manager_%.bbappend
@@ -3,8 +3,8 @@ PACKAGECONFIG_append_ibm-ac-server = " associations"
SRC_URI_append_ibm-ac-server = " file://associations.json"
DEPENDS_append_ibm-ac-server = " inventory-cleanup"
-PACKAGECONFIG_append_rainier = " associations"
-SRC_URI_append_rainier = " \
+PACKAGECONFIG_append_p10bmc = " associations"
+SRC_URI_append_p10bmc = " \
file://ibm,rainier-2u_associations.json \
file://ibm,rainier-4u_associations.json \
file://ibm,everest_associations.json \
@@ -15,7 +15,7 @@ do_install_append_ibm-ac-server() {
install -m 0755 ${WORKDIR}/associations.json ${D}${base_datadir}/associations.json
}
-do_install_append_rainier() {
+do_install_append_p10bmc() {
install -d ${D}${base_datadir}
install -m 0755 ${WORKDIR}/ibm,rainier-2u_associations.json ${D}${base_datadir}/ibm,rainier-2u_associations.json
install -m 0755 ${WORKDIR}/ibm,rainier-4u_associations.json ${D}${base_datadir}/ibm,rainier-4u_associations.json
diff --git a/meta-ibm/recipes-phosphor/leds/phosphor-led-manager/lamp-test-led-overrides.json b/meta-ibm/recipes-phosphor/leds/phosphor-led-manager/lamp-test-led-overrides.json
new file mode 100644
index 000000000..0cde229ba
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/leds/phosphor-led-manager/lamp-test-led-overrides.json
@@ -0,0 +1,10 @@
+{
+ "forceLEDs":[
+ "virtual_enc_fault",
+ "virtual_enc_id"
+ ],
+ "skipLEDs":[
+ "virtual_enc_fault",
+ "virtual_enc_id"
+ ]
+}
diff --git a/meta-ibm/recipes-phosphor/leds/phosphor-led-manager/obmc-led-create-virtual-leds@.service b/meta-ibm/recipes-phosphor/leds/phosphor-led-manager/obmc-led-create-virtual-leds@.service
new file mode 100644
index 000000000..41bd08131
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/leds/phosphor-led-manager/obmc-led-create-virtual-leds@.service
@@ -0,0 +1,7 @@
+[Unit]
+Description=Create the virtual physical LEDs
+
+[Service]
+Restart=always
+ExecStart=/usr/sbin/phosphor-ledcontroller -p %f
+SyslogIdentifier=obmc-led-create-virtual-leds
diff --git a/meta-ibm/recipes-phosphor/leds/phosphor-led-manager_%.bbappend b/meta-ibm/recipes-phosphor/leds/phosphor-led-manager_%.bbappend
index 612139550..96a97b040 100644
--- a/meta-ibm/recipes-phosphor/leds/phosphor-led-manager_%.bbappend
+++ b/meta-ibm/recipes-phosphor/leds/phosphor-led-manager_%.bbappend
@@ -1,11 +1,19 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
-SYSTEMD_SERVICE_${PN}-ledmanager_append_rainier += "obmc-led-set-all-groups-asserted@.service"
+SYSTEMD_SERVICE_${PN}_append_p10bmc += "obmc-led-set-all-groups-asserted@.service obmc-led-create-virtual-leds@.service"
# Copies config file having arguments for led-set-all-groups-asserted.sh
-SYSTEMD_ENVIRONMENT_FILE_${PN}-ledmanager_append_rainier +="obmc/led/set-all/groups/config"
+SYSTEMD_ENVIRONMENT_FILE_${PN}_append_p10bmc +="obmc/led/set-all/groups/config"
-pkg_postinst_${PN}-ledmanager_rainier () {
+# Use the JSON configuration file at runtime than the static led.yaml
+# Also, enable Lamp Test and OperationalStatus monitor feature for
+# p10bmc systems
+PACKAGECONFIG_append_p10bmc = " use-json use-lamp-test monitor-operational-status"
+
+# Install the lamp test override file for p10bmc
+SRC_URI_append_p10bmc = " file://lamp-test-led-overrides.json"
+
+pkg_postinst_${PN}_p10bmc () {
# Needed this to run as part of BMC boot
mkdir -p $D$systemd_system_unitdir/multi-user.target.wants
@@ -18,13 +26,37 @@ pkg_postinst_${PN}-ledmanager_rainier () {
LINK="$D$systemd_system_unitdir/obmc-chassis-poweron@0.target.wants/obmc-led-set-all-groups-asserted@false.service"
TARGET="../obmc-led-set-all-groups-asserted@.service"
ln -s $TARGET $LINK
+
+ # Needed this to run as part of BMC boot
+ mkdir -p $D$systemd_system_unitdir/multi-user.target.wants
+ LINK_FAULT="$D$systemd_system_unitdir/multi-user.target.wants/obmc-led-create-virtual-leds@sys-class-leds-virtual-enc-fault.service"
+ TARGET_FAULT="../obmc-led-create-virtual-leds@.service"
+ ln -s $TARGET_FAULT $LINK_FAULT
+
+ # Needed this to run as part of BMC boot
+ mkdir -p $D$systemd_system_unitdir/multi-user.target.wants
+ LINK_ID="$D$systemd_system_unitdir/multi-user.target.wants/obmc-led-create-virtual-leds@sys-class-leds-virtual-enc-id.service"
+ TARGET_ID="../obmc-led-create-virtual-leds@.service"
+ ln -s $TARGET_ID $LINK_ID
}
-pkg_prerm_${PN}-ledmanager_rainier () {
+pkg_prerm_${PN}_p10bmc () {
LINK="$D$systemd_system_unitdir/multi-user.target.wants/obmc-led-set-all-groups-asserted@false.service"
rm $LINK
LINK="$D$systemd_system_unitdir/obmc-chassis-poweron@0.target.wants/obmc-led-set-all-groups-asserted@false.service"
rm $LINK
+
+ LINK_FAULT="$D$systemd_system_unitdir/multi-user.target.wants/obmc-led-create-virtual-leds@sys-class-leds-virtual-enc-fault.service"
+ rm $LINK_FAULT
+
+ LINK_ID="$D$systemd_system_unitdir/multi-user.target.wants/obmc-led-create-virtual-leds@sys-class-leds-virtual-enc-id.service"
+ rm $LINK_ID
+}
+
+# Install lamp test override json
+do_install_append_p10bmc() {
+ install -d ${D}${datadir}/${BPN}/
+ install -m 0644 ${WORKDIR}/lamp-test-led-overrides.json ${D}${datadir}/${BPN}/
}
diff --git a/meta-ibm/recipes-phosphor/logging/ibm-logging_git.bb b/meta-ibm/recipes-phosphor/logging/ibm-logging_git.bb
index 791ae9880..3163c07b9 100644
--- a/meta-ibm/recipes-phosphor/logging/ibm-logging_git.bb
+++ b/meta-ibm/recipes-phosphor/logging/ibm-logging_git.bb
@@ -6,7 +6,7 @@ HOMEPAGE = "https://github.com/openbmc/ibm-logging"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
SRC_URI += "git://github.com/openbmc/ibm-logging"
-SRCREV = "aeaa374a6fa097b2359acfc4d694ed3ebe8eecaa"
+SRCREV = "074d53b723a26a50b628387c635a97c730555bce"
inherit autotools
inherit pkgconfig
diff --git a/meta-ibm/recipes-phosphor/logging/phosphor-logging/p10bmc/ibm,rainier-2u_dev_callouts.json b/meta-ibm/recipes-phosphor/logging/phosphor-logging/p10bmc/ibm,rainier-2u_dev_callouts.json
new file mode 100644
index 000000000..c5f34c728
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/logging/phosphor-logging/p10bmc/ibm,rainier-2u_dev_callouts.json
@@ -0,0 +1,8907 @@
+{
+ "FSI":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10-0",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "0-1":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10-1",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "0-2":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10-0",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "0-3":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10-1",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "FSI-I2C":{
+ "0":{
+ "0":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C29",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C29",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C29",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "46":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C22",
+ "Name":"/sys-0/node-0/nisqually-0/tpm-connector-0/wilson-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/tpm-connector-0/wilson-0/NPCT750AAC-0",
+ "HexAddress":"0x2e",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C29",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C29",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9551-0",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "1":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-3/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-7/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-3/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "33":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-7/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x21",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "37":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9554-1",
+ "HexAddress":"0x25",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C30",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-7/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-7/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C30",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-7/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-7/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C30",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-7/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-7/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "99":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9552-3",
+ "HexAddress":"0x63",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "10":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C27",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C27",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C27",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C27",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C27",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C27",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "11":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C32",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C32",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C32",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C32",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C32",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C32",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "12":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C31",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C31",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C31",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C31",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C31",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C31",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "13":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C28",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C28",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C28",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C28",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C28",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C28",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "8":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C13",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C13",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C13",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C13",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C13",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C13",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "9":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C12",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C12",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C12",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C12",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C12",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C12",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+ },
+ "0-1":{
+ "1":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-6/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-9/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "26":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-5/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x1a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-6/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "33":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-9/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x21",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "34":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-5/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x22",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "37":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9554-2",
+ "HexAddress":"0x25",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "12":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C16",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C16",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C16",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C16",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C16",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C16",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "13":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C37",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C37",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C37",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C37",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C37",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C37",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "14":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C33",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C33",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C33",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C33",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C33",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C33",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "15":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C35",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C35",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C35",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C35",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C35",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C35",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "2":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C18",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C18",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C18",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C18",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C18",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C18",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "3":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C34",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C34",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C34",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C34",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C34",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C34",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "8":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C17",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C17",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C17",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C17",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C17",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C17",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "9":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C36",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C36",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C36",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C36",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C36",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C36",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+ },
+ "0-2":{
+ "0":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C39",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C39",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C39",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C39",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C39",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C39",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "1":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-1/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-2/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-1/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "33":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-2/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x21",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "37":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9554-3",
+ "HexAddress":"0x25",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C42",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-23/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-23/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C42",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-23/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-23/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C42",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-23/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-23/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "99":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9552-2",
+ "HexAddress":"0x63",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "10":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C21",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C21",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C21",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C21",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C21",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C21",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "11":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C40",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C40",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C40",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C40",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C40",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C40",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "12":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C41",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C41",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C41",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C41",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C41",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C41",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "13":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C38",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C38",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C38",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C38",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C38",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C38",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "8":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C20",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C20",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C20",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C20",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C20",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C20",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "9":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C19",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C19",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C19",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C19",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C19",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C19",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+ },
+ "0-3":{
+ "1":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-0/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-8/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "26":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-4/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x1a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-0/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "33":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-8/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x21",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "34":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-4/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x22",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "37":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9554-4",
+ "HexAddress":"0x25",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "12":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C48",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C48",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C48",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C48",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C48",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C48",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "13":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C47",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C47",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C47",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C47",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C47",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C47",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "14":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C45",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C45",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C45",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C45",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C45",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C45",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "15":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C43",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C43",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C43",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C43",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C43",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C43",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "2":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C25",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C25",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C25",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C25",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C25",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C25",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "3":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C44",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C44",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C44",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C44",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C44",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C44",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "8":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C26",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C26",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C26",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C26",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C26",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C26",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "9":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C46",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C46",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C46",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C46",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C46",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C46",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+ }
+ },
+ "FSI-SPI":{
+ "0":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p0-sbe-p",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "1":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p0-sbe-b",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "2":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p0-mvpd",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "3":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p0-meas",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "4":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C22",
+ "Name":"/sys-0/node-0/nisqually-0/tpm-connector-0/wilson-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/tpm-connector-0/wilson-0/NPCT750AAC-0",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "6":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/rainier-apss-0",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "0-1":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p1-sbe-p",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "1":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p1-sbe-b",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "2":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p1-mvpd",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "3":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p1-meas",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "0-2":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p0-sbe-p",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "1":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p0-sbe-b",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "2":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p0-mvpd",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "3":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p0-meas",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "0-3":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p1-sbe-p",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "1":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p1-sbe-b",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "2":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p1-mvpd",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "3":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p1-meas",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+ },
+ "I2C":{
+ "0":{
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9554-0",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C22",
+ "Name":"/sys-0/node-0/nisqually-0/tpm-connector-0/wilson-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/tpm-connector-0/wilson-0/wilson-vpd-0",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "10":{
+ "112":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdd-vrm-connector-1/vdd-vrm-0/vdd-0",
+ "HexAddress":"0x70",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "113":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdd-vrm-connector-1/vdd-vrm-0/vdd-1",
+ "HexAddress":"0x71",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "114":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdn-vcs-1",
+ "HexAddress":"0x72",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "115":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vio-vcs-1",
+ "HexAddress":"0x73",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "116":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vpcie-1",
+ "HexAddress":"0x74",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "76":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dcm1-p0-tmp423a-2",
+ "HexAddress":"0x4c",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "77":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dcm1-p1-tmp423a-3",
+ "HexAddress":"0x4d",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdd-vrm-connector-1/vdd-vrm-0/vdd-vrm-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "11":{
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-3/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "73":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-7/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x49",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-3/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-7/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-3/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-7/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "12":{
+ "87":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/ingraham-tpm-1",
+ "HexAddress":"0x57",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "13":{
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P1",
+ "Name":"/sys-0/node-0/nisqually-0/dasd-card-connector-0/pyramid-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dasd-card-connector-0/pyramid-0/pyramid-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "14":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P1",
+ "Name":"/sys-0/node-0/nisqually-0/dasd-card-connector-0/pyramid-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dasd-card-connector-1/pyramid-0/pyramid-vpd-0",
+ "HexAddress":"0x0",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "15":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P1",
+ "Name":"/sys-0/node-0/nisqually-0/dasd-card-connector-0/pyramid-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dasd-card-connector-2/pyramid-0/pyramid-vpd-0",
+ "HexAddress":"0x0",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "3":{
+ "104":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"E0",
+ "Name":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/emmons-0/power-supply-connector-0/power-supply-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ },
+ {
+ "LocationCode":"P0-T4",
+ "Name":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/emmons-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/emmons-0/power-supply-connector-0/power-supply-0/power-supply-blackbox-0",
+ "HexAddress":"0x68",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "105":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"E1",
+ "Name":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/emmons-0/power-supply-connector-1/power-supply-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ },
+ {
+ "LocationCode":"P0-T4",
+ "Name":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/emmons-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/emmons-0/power-supply-connector-1/power-supply-0/power-supply-blackbox-0",
+ "HexAddress":"0x69",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "18":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/avdd-0",
+ "HexAddress":"0x12",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "28":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/3p3vb-0",
+ "HexAddress":"0x1c",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "56":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/rainier-apss-0",
+ "HexAddress":"0x38",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "90":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PIC18F2XK20-0",
+ "HexAddress":"0x5a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9552-4",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "4":{
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-0/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "73":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-8/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x49",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "74":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-4/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x4a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-0/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-8/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "82":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-4/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x52",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-0/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-8/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "98":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-4/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x62",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "5":{
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-1/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "73":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-2/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x49",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-1/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-2/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-1/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-2/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "6":{
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-6/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "73":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-9/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x49",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "74":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-5/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x4a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-6/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-9/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "82":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-5/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x52",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-6/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-9/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "98":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-5/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x62",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "7":{
+ "118":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D0",
+ "Name":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0/blyth-DPS310-0",
+ "HexAddress":"0x76",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D0",
+ "Name":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0/blyth-SI7021-0",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "48":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PIC16F882-0",
+ "HexAddress":"0x30",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "49":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PIC16F882-1",
+ "HexAddress":"0x31",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "50":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PIC16F882-2",
+ "HexAddress":"0x32",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "51":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PIC16F882-3",
+ "HexAddress":"0x33",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D0",
+ "Name":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0/blyth-TMP275-0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D0",
+ "Name":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0/blyth-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D1",
+ "Name":"/sys-0/node-0/nisqually-0/lcd-op-panel-connector-0/russell-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/lcd-op-panel-connector-0/russell-0/russell-vpd-3",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "82":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-T10",
+ "Name":"/sys-0/node-0/nisqually-0/fan-card-connector-0/paradise-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/fan-card-connector-0/paradise-0/MAX31785-0",
+ "HexAddress":"0x52",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "90":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D1",
+ "Name":"/sys-0/node-0/nisqually-0/lcd-op-panel-connector-0/russell-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/lcd-op-panel-connector-0/russell-0/russell-89LPC932-0",
+ "HexAddress":"0x5a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D0",
+ "Name":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0/blyth-PCA9551-0",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-T10",
+ "Name":"/sys-0/node-0/nisqually-0/fan-card-connector-0/paradise-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/fan-card-connector-0/paradise-0/PCA9552-1",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "8":{
+ "17":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "MRU":"/sys-0/node-0/nisqually-0/ucd90320-0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ucd90320-0",
+ "HexAddress":"0x11",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "27":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/3p3va-0",
+ "HexAddress":"0x1b",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "50":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/ingraham-rtc-0",
+ "HexAddress":"0x32",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/TMP275-0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "74":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/TMP275-1",
+ "HexAddress":"0x4a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/nisqually-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/ingraham-vpd-0",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9552-0",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9552-5",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "9":{
+ "112":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdd-vrm-connector-0/vdd-vrm-0/vdd-0",
+ "HexAddress":"0x70",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "113":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdd-vrm-connector-0/vdd-vrm-0/vdd-1",
+ "HexAddress":"0x71",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "114":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdn-vcs-0",
+ "HexAddress":"0x72",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "115":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vio-vcs-0",
+ "HexAddress":"0x73",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "116":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vpcie-0",
+ "HexAddress":"0x74",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "76":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dcm0-p0-tmp423a-0",
+ "HexAddress":"0x4c",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "77":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dcm0-p1-tmp423a-1",
+ "HexAddress":"0x4d",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdd-vrm-connector-0/vdd-vrm-0/vdd-vrm-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+ },
+ "SPI":{
+ "0":{
+ "Callouts":[],
+ "Dest":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/ingraham-tpm-1",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+}
diff --git a/meta-ibm/recipes-phosphor/logging/phosphor-logging/p10bmc/ibm,rainier-4u_dev_callouts.json b/meta-ibm/recipes-phosphor/logging/phosphor-logging/p10bmc/ibm,rainier-4u_dev_callouts.json
new file mode 100644
index 000000000..f8767f4a6
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/logging/phosphor-logging/p10bmc/ibm,rainier-4u_dev_callouts.json
@@ -0,0 +1,8963 @@
+{
+ "FSI":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10-0",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "0-1":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10-1",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "0-2":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10-0",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "0-3":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10-1",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "FSI-I2C":{
+ "0":{
+ "0":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C29",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C29",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C29",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "46":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C22",
+ "Name":"/sys-0/node-0/nisqually-0/tpm-connector-0/wilson-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/tpm-connector-0/wilson-0/NPCT750AAC-0",
+ "HexAddress":"0x2e",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C29",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C29",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-5/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9551-0",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "1":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-3/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-7/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-3/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "33":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-7/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x21",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "37":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9554-1",
+ "HexAddress":"0x25",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C30",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-7/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-7/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C30",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-7/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-7/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C30",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-7/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-7/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "99":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9552-3",
+ "HexAddress":"0x63",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "10":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C27",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C27",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C27",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C27",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C27",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C27",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-2/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "11":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C32",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C32",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C32",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C32",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C32",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C32",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-3/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "12":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C31",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C31",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C31",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C31",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C31",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C31",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-6/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "13":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C28",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C28",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C28",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C28",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C28",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C28",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-4/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "8":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C13",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C13",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C13",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C13",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C13",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C13",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-1/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "9":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C12",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C12",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C12",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C12",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C12",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C12",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-0/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+ },
+ "0-1":{
+ "1":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-6/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-9/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "26":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-5/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x1a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-6/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "33":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-9/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x21",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "34":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-5/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x22",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "37":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9554-2",
+ "HexAddress":"0x25",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "12":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C16",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C16",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C16",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C16",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C16",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C16",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-10/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "13":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C37",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C37",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C37",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C37",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C37",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C37",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-12/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "14":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C33",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C33",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C33",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C33",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C33",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C33",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-15/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "15":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C35",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C35",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C35",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C35",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C35",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C35",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-11/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "2":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C18",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C18",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C18",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C18",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C18",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C18",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-8/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "3":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C34",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C34",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C34",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C34",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C34",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C34",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-14/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "8":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C17",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C17",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C17",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C17",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C17",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C17",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-9/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "9":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C36",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C36",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C36",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C36",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C36",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C36",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-13/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+ },
+ "0-2":{
+ "0":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C39",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C39",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C39",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C39",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C39",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C39",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-21/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "1":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-1/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-2/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-1/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "33":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-2/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x21",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "37":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9554-3",
+ "HexAddress":"0x25",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C42",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-23/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-23/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C42",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-23/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-23/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C42",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-23/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-23/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "99":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9552-2",
+ "HexAddress":"0x63",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "10":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C21",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C21",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C21",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C21",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C21",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C21",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-18/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "11":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C40",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C40",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C40",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C40",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C40",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C40",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-19/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "12":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C41",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C41",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C41",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C41",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C41",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C41",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-22/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "13":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C38",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C38",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C38",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C38",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C38",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C38",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-20/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "8":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C20",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C20",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C20",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C20",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C20",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C20",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-17/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "9":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C19",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C19",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C19",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C19",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C19",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C19",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-16/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+ },
+ "0-3":{
+ "1":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-0/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-8/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "26":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-4/pcie-cable-card-0/cablecard-CXP-TOP",
+ "HexAddress":"0x1a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-0/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "33":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-8/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x21",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "34":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-4/pcie-cable-card-0/cablecard-CXP-BOT",
+ "HexAddress":"0x22",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "37":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9554-4",
+ "HexAddress":"0x25",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "12":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C48",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C48",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C48",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C48",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C48",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C48",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-26/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "13":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C47",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C47",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C47",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C47",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C47",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C47",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-28/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "14":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C45",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C45",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C45",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C45",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C45",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C45",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-31/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "15":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C43",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C43",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C43",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C43",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C43",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C43",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-27/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "2":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C25",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C25",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C25",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C25",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C25",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C25",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-24/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "3":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C44",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C44",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C44",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C44",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C44",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C44",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-30/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "8":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C26",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C26",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C26",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C26",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C26",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C26",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-25/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "9":{
+ "24":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C46",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0/ocmb",
+ "HexAddress":"0x18",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "25":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C46",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0/ocmb",
+ "HexAddress":"0x19",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C46",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0/ocmb",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C46",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0/pmic0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C46",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0/spd",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C46",
+ "Name":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ddimm-connector-29/ddimm-0/pmic1",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+ }
+ },
+ "FSI-SPI":{
+ "0":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p0-sbe-p",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "1":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p0-sbe-b",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "2":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p0-mvpd",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "3":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p0-meas",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "4":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C22",
+ "Name":"/sys-0/node-0/nisqually-0/tpm-connector-0/wilson-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/tpm-connector-0/wilson-0/NPCT750AAC-0",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "6":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/rainier-apss-0",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "0-1":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p1-sbe-p",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "1":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p1-sbe-b",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "2":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p1-mvpd",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "3":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/p1-meas",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "0-2":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p0-sbe-p",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "1":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p0-sbe-b",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "2":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p0-mvpd",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "3":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p0-meas",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "0-3":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p1-sbe-p",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "1":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p1-sbe-b",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "2":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p1-mvpd",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "3":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C24",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C15",
+ "MRU":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0/power10",
+ "Name":"/sys-0/node-0/nisqually-0/proc_socket-0/godel-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/proc_socket-1/godel-0/p1-meas",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+ },
+ "I2C":{
+ "0":{
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9554-0",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-C22",
+ "Name":"/sys-0/node-0/nisqually-0/tpm-connector-0/wilson-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/tpm-connector-0/wilson-0/wilson-vpd-0",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "10":{
+ "112":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdd-vrm-connector-1/vdd-vrm-0/vdd-0",
+ "HexAddress":"0x70",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "113":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdd-vrm-connector-1/vdd-vrm-0/vdd-1",
+ "HexAddress":"0x71",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "114":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdn-vcs-1",
+ "HexAddress":"0x72",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "115":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vio-vcs-1",
+ "HexAddress":"0x73",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "116":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vpcie-1",
+ "HexAddress":"0x74",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "76":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dcm1-p0-tmp423a-2",
+ "HexAddress":"0x4c",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "77":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dcm1-p1-tmp423a-3",
+ "HexAddress":"0x4d",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdd-vrm-connector-1/vdd-vrm-0/vdd-vrm-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "11":{
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-3/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "73":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-7/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x49",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-3/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-7/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-3/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-7/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "12":{
+ "87":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/ingraham-tpm-1",
+ "HexAddress":"0x57",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "13":{
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P1",
+ "Name":"/sys-0/node-0/nisqually-0/dasd-card-connector-0/pyramid-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dasd-card-connector-0/pyramid-0/pyramid-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "14":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P1",
+ "Name":"/sys-0/node-0/nisqually-0/dasd-card-connector-0/pyramid-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dasd-card-connector-1/pyramid-0/pyramid-vpd-0",
+ "HexAddress":"0x0",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "15":{
+ "0":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P1",
+ "Name":"/sys-0/node-0/nisqually-0/dasd-card-connector-0/pyramid-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dasd-card-connector-2/pyramid-0/pyramid-vpd-0",
+ "HexAddress":"0x0",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "3":{
+ "104":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"E0",
+ "Name":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/fryingpan-0/power-supply-connector-0/power-supply-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ },
+ {
+ "LocationCode":"P0-T4",
+ "Name":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/fryingpan-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/fryingpan-0/power-supply-connector-0/power-supply-0/power-supply-blackbox-0",
+ "HexAddress":"0x68",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "105":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"E1",
+ "Name":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/fryingpan-0/power-supply-connector-1/power-supply-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ },
+ {
+ "LocationCode":"P0-T4",
+ "Name":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/fryingpan-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/fryingpan-0/power-supply-connector-1/power-supply-0/power-supply-blackbox-0",
+ "HexAddress":"0x69",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "106":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"E2",
+ "Name":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/fryingpan-0/power-supply-connector-2/power-supply-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ },
+ {
+ "LocationCode":"P0-T4",
+ "Name":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/fryingpan-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/fryingpan-0/power-supply-connector-2/power-supply-0/power-supply-blackbox-0",
+ "HexAddress":"0x6a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "107":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"E3",
+ "Name":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/fryingpan-0/power-supply-connector-3/power-supply-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ },
+ {
+ "LocationCode":"P0-T4",
+ "Name":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/fryingpan-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/power-distribution-connector-0/fryingpan-0/power-supply-connector-3/power-supply-0/power-supply-blackbox-0",
+ "HexAddress":"0x6b",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "18":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/avdd-0",
+ "HexAddress":"0x12",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "28":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/3p3vb-0",
+ "HexAddress":"0x1c",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "56":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/rainier-apss-0",
+ "HexAddress":"0x38",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "90":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PIC18F2XK20-0",
+ "HexAddress":"0x5a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9552-4",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "4":{
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-0/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "73":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-8/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x49",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "74":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-4/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x4a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-0/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-8/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "82":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-4/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x52",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-0/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-8/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "98":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-4/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x62",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "5":{
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-1/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "73":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-2/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x49",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-1/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-2/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-1/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x16-2/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "6":{
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-6/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "73":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-9/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x49",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "74":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-5/pcie-cable-card-0/cablecard-TMP275A",
+ "HexAddress":"0x4a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-6/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-9/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "82":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-5/pcie-cable-card-0/pcie-cable-card-vpd-0",
+ "HexAddress":"0x52",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-6/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-9/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "98":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/pcieslot-x8-5/pcie-cable-card-0/cablecard-PCA9551",
+ "HexAddress":"0x62",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "7":{
+ "118":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D0",
+ "Name":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0/blyth-DPS310-0",
+ "HexAddress":"0x76",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "32":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D0",
+ "Name":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0/blyth-SI7021-0",
+ "HexAddress":"0x20",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "48":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PIC16F882-0",
+ "HexAddress":"0x30",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "49":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PIC16F882-1",
+ "HexAddress":"0x31",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "50":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PIC16F882-2",
+ "HexAddress":"0x32",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "51":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PIC16F882-3",
+ "HexAddress":"0x33",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D0",
+ "Name":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0/blyth-TMP275-0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D0",
+ "Name":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0/blyth-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D1",
+ "Name":"/sys-0/node-0/nisqually-0/lcd-op-panel-connector-0/russell-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/lcd-op-panel-connector-0/russell-0/russell-vpd-3",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "82":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-T10",
+ "Name":"/sys-0/node-0/nisqually-0/fan-card-connector-0/winthrop-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/fan-card-connector-0/winthrop-0/MAX31785-0",
+ "HexAddress":"0x52",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "90":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D1",
+ "Name":"/sys-0/node-0/nisqually-0/lcd-op-panel-connector-0/russell-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/lcd-op-panel-connector-0/russell-0/russell-89LPC932-0",
+ "HexAddress":"0x5a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"D0",
+ "Name":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/base-op-panel-connector-0/blyth-0/blyth-PCA9551-0",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0-T10",
+ "Name":"/sys-0/node-0/nisqually-0/fan-card-connector-0/winthrop-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/fan-card-connector-0/winthrop-0/PCA9552-1",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "8":{
+ "17":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "MRU":"/sys-0/node-0/nisqually-0/ucd90320-0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ucd90320-0",
+ "HexAddress":"0x11",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "27":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/3p3va-0",
+ "HexAddress":"0x1b",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "50":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/ingraham-rtc-0",
+ "HexAddress":"0x32",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "72":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/TMP275-0",
+ "HexAddress":"0x48",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "74":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/TMP275-1",
+ "HexAddress":"0x4a",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/nisqually-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "81":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/ingraham-vpd-0",
+ "HexAddress":"0x51",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "96":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9552-0",
+ "HexAddress":"0x60",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "97":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/PCA9552-5",
+ "HexAddress":"0x61",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ },
+ "9":{
+ "112":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdd-vrm-connector-0/vdd-vrm-0/vdd-0",
+ "HexAddress":"0x70",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "113":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdd-vrm-connector-0/vdd-vrm-0/vdd-1",
+ "HexAddress":"0x71",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "114":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdn-vcs-0",
+ "HexAddress":"0x72",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "115":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vio-vcs-0",
+ "HexAddress":"0x73",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "116":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vpcie-0",
+ "HexAddress":"0x74",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "76":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dcm0-p0-tmp423a-0",
+ "HexAddress":"0x4c",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "77":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/dcm0-p1-tmp423a-1",
+ "HexAddress":"0x4d",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ },
+ "80":{
+ "Callouts":[
+ {
+ "LocationCode":"P0-C5",
+ "MRU":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/BMC-0",
+ "Name":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0",
+ "Priority":"H"
+ },
+ {
+ "LocationCode":"P0",
+ "Name":"/sys-0/node-0/nisqually-0",
+ "Priority":"L"
+ }
+ ],
+ "Dest":"/sys-0/node-0/nisqually-0/vdd-vrm-connector-0/vdd-vrm-0/vdd-vrm-vpd-0",
+ "HexAddress":"0x50",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+ },
+ "SPI":{
+ "0":{
+ "Callouts":[],
+ "Dest":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/ingraham-tpm-1",
+ "Source":"/sys-0/node-0/nisqually-0/ebmc-card-connector-0/ingraham-0/bmc-0"
+ }
+ }
+}
diff --git a/meta-ibm/recipes-phosphor/logging/phosphor-logging_%.bbappend b/meta-ibm/recipes-phosphor/logging/phosphor-logging_%.bbappend
index ac5e0b969..2f0ace22b 100644
--- a/meta-ibm/recipes-phosphor/logging/phosphor-logging_%.bbappend
+++ b/meta-ibm/recipes-phosphor/logging/phosphor-logging_%.bbappend
@@ -1,2 +1,16 @@
PACKAGECONFIG_append_witherspoon-tacoma = " openpower-pels"
-PACKAGECONFIG_append_rainier = " openpower-pels"
+PACKAGECONFIG_append_p10bmc = " openpower-pels"
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+
+SRC_URI_append_p10bmc = " file://ibm,rainier-2u_dev_callouts.json"
+SRC_URI_append_p10bmc = " file://ibm,rainier-4u_dev_callouts.json"
+FILES_${PN}_append_p10bmc = " ${datadir}/phosphor-logging/pels/ibm,rainier-2u_dev_callouts.json"
+FILES_${PN}_append_p10bmc = " ${datadir}/phosphor-logging/pels/ibm,rainier-4u_dev_callouts.json"
+
+do_install_append_p10bmc() {
+ install -d ${D}/${datadir}/phosphor-logging/pels
+ install -m 0644 ${WORKDIR}/ibm,rainier-2u_dev_callouts.json ${D}/${datadir}/phosphor-logging/pels/ibm,rainier-2u_dev_callouts.json
+ install -m 0644 ${WORKDIR}/ibm,rainier-4u_dev_callouts.json ${D}/${datadir}/phosphor-logging/pels/ibm,rainier-4u_dev_callouts.json
+ ln -s ./ibm,rainier-4u_dev_callouts.json ${D}/${datadir}/phosphor-logging/pels/ibm,rainier-1s4u_dev_callouts.json
+}
diff --git a/meta-ibm/recipes-phosphor/mboxd/mboxd_%.bbappend b/meta-ibm/recipes-phosphor/mboxd/mboxd_%.bbappend
index e23d8fa45..23d1718fd 100644
--- a/meta-ibm/recipes-phosphor/mboxd/mboxd_%.bbappend
+++ b/meta-ibm/recipes-phosphor/mboxd/mboxd_%.bbappend
@@ -1,6 +1,6 @@
MBOXD_FLASH_SIZE_ibm-ac-server = "64M"
MBOXD_FLASH_SIZE_mihawk = "64M"
-MBOXD_FLASH_SIZE_rainier = "64M"
+MBOXD_FLASH_SIZE_p10bmc = "64M"
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
diff --git a/meta-ibm/recipes-phosphor/network/network/rainier/inventory-object-map.json b/meta-ibm/recipes-phosphor/network/network/p10bmc/inventory-object-map.json
index 08bb92aed..08bb92aed 100644
--- a/meta-ibm/recipes-phosphor/network/network/rainier/inventory-object-map.json
+++ b/meta-ibm/recipes-phosphor/network/network/p10bmc/inventory-object-map.json
diff --git a/meta-ibm/recipes-phosphor/network/network/rainier/ncsi-netlink.service b/meta-ibm/recipes-phosphor/network/network/p10bmc/ncsi-netlink.service
index 890551e7a..890551e7a 100644
--- a/meta-ibm/recipes-phosphor/network/network/rainier/ncsi-netlink.service
+++ b/meta-ibm/recipes-phosphor/network/network/p10bmc/ncsi-netlink.service
diff --git a/meta-ibm/recipes-phosphor/network/phosphor-network_%.bbappend b/meta-ibm/recipes-phosphor/network/phosphor-network_%.bbappend
index 150d373e6..cf88f2282 100644
--- a/meta-ibm/recipes-phosphor/network/phosphor-network_%.bbappend
+++ b/meta-ibm/recipes-phosphor/network/phosphor-network_%.bbappend
@@ -13,8 +13,8 @@ install_network_configuration(){
install -m 0644 ${WORKDIR}/inventory-object-map.json ${D}${datadir}/network/config.json
}
-SRC_URI_append_rainier = " file://inventory-object-map.json"
-do_install_append_rainier(){
+SRC_URI_append_p10bmc = " file://inventory-object-map.json"
+do_install_append_p10bmc(){
install_network_configuration
}
diff --git a/meta-ibm/recipes-phosphor/openssl/openssl_%.bbappend b/meta-ibm/recipes-phosphor/openssl/openssl_%.bbappend
index ebe35e4b2..c0bf602d3 100644
--- a/meta-ibm/recipes-phosphor/openssl/openssl_%.bbappend
+++ b/meta-ibm/recipes-phosphor/openssl/openssl_%.bbappend
@@ -1,4 +1,4 @@
-# Rainier needs ibmtpm2tss which needs ibmswtpm2 which needs openssl
+# P10 needs ibmtpm2tss which needs ibmswtpm2 which needs openssl
# camellia support
DEPRECATED_CRYPTO_FLAGS_remove_witherspoon-tacoma = " no-camellia"
-DEPRECATED_CRYPTO_FLAGS_remove_rainier = " no-camellia"
+DEPRECATED_CRYPTO_FLAGS_remove_p10bmc = " no-camellia"
diff --git a/meta-ibm/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend b/meta-ibm/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend
index ce13dc115..a7bf5740f 100644
--- a/meta-ibm/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend
+++ b/meta-ibm/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend
@@ -7,8 +7,8 @@ POWER_SERVICE_PACKAGES_AC_SERVER = " \
phosphor-power \
"
-# Rainier does not need/want the old PSU monitor
-POWER_SERVICE_PACKAGES_RAINIER = " \
+# P10 does not need/want the old PSU monitor
+POWER_SERVICE_PACKAGES_P10 = " \
phosphor-power-sequencer \
phosphor-power-systemd-links-sequencer \
phosphor-power-utils \
@@ -23,21 +23,20 @@ EXTRA_IBM_LOGGING_PKGS_witherspoon-tacoma = ""
EXTRA_IBM_LOGGING_PKGS_mihawk = "ibm-logging"
RDEPENDS_${PN}-inventory_append_ibm-ac-server = " openpower-fru-vpd openpower-occ-control phosphor-cooling-type virtual/obmc-gpio-presence"
-RDEPENDS_${PN}-inventory_append_rainier = " openpower-fru-vpd openpower-occ-control virtual/obmc-gpio-presence"
+RDEPENDS_${PN}-inventory_append_p10bmc = " openpower-fru-vpd openpower-occ-control virtual/obmc-gpio-presence"
RDEPENDS_${PN}-inventory_append_mihawk = " openpower-fru-vpd openpower-occ-control virtual/obmc-gpio-presence id-button phosphor-cooling-type"
RDEPENDS_${PN}-fan-control_append_ibm-ac-server = " fan-watchdog"
-RDEPENDS_${PN}-fan-control_append_rainier = " fan-watchdog sensor-monitor"
+RDEPENDS_${PN}-fan-control_append_p10bmc = " fan-watchdog sensor-monitor"
RDEPENDS_${PN}-extras_append_ibm-ac-server = " ${POWER_SERVICE_PACKAGES_AC_SERVER} witherspoon-power-supply-sync phosphor-webui"
-RDEPENDS_${PN}-extras_append_rainier = " ${POWER_SERVICE_PACKAGES_RAINIER} webui-vue dbus-sensors phosphor-virtual-sensor"
+RDEPENDS_${PN}-extras_append_p10bmc = " ${POWER_SERVICE_PACKAGES_P10} webui-vue dbus-sensors phosphor-virtual-sensor kexec-tools makedumpfile kdump vmcore-dmesg"
RDEPENDS_${PN}-extras_append_mihawk = " phosphor-webui phosphor-image-signing wistron-ipmi-oem ${POWER_SERVICE_PACKAGES_AC_SERVER}"
-RDEPENDS_${PN}-extras_append_witherspoon-tacoma = " pldm srvcfg-manager webui-vue biosconfig-manager phosphor-post-code-manager phosphor-host-postd"
+RDEPENDS_${PN}-extras_append_witherspoon-tacoma = " pldm srvcfg-manager webui-vue biosconfig-manager phosphor-post-code-manager phosphor-host-postd kexec-tools makedumpfile kdump vmcore-dmesg"
-RDEPENDS_${PN}-extras_remove_rainier = "obmc-ikvm liberation-fonts uart-render-controller"
+RDEPENDS_${PN}-extras_remove_p10bmc = "obmc-ikvm liberation-fonts uart-render-controller"
RDEPENDS_${PN}-extras_remove_swift = "obmc-ikvm"
RDEPENDS_${PN}-extras_remove_witherspoon-tacoma = "obmc-ikvm liberation-fonts uart-render-controller phosphor-webui"
RDEPENDS_${PN}-logging_append = " ${EXTRA_IBM_LOGGING_PKGS}"
-RDEPENDS_${PN}-extras_append_rainier = " pldm openpower-hw-diags srvcfg-manager biosconfig-manager phosphor-post-code-manager phosphor-host-postd"
-RDEPENDS_${PN}-leds_remove_rainier = "phosphor-led-manager-faultmonitor"
+RDEPENDS_${PN}-extras_append_p10bmc = " pldm openpower-hw-diags srvcfg-manager biosconfig-manager phosphor-post-code-manager phosphor-host-postd"
RDEPENDS_${PN}-leds_remove_witherspoon-tacoma = "phosphor-led-manager-faultmonitor"
${PN}-software-extras_append_ibm-ac-server = " phosphor-software-manager-sync"
diff --git a/meta-ibm/recipes-phosphor/power/phosphor-power/rainier/psu.json b/meta-ibm/recipes-phosphor/power/phosphor-power/p10bmc/psu.json
index baa96ac27..baa96ac27 100644
--- a/meta-ibm/recipes-phosphor/power/phosphor-power/rainier/psu.json
+++ b/meta-ibm/recipes-phosphor/power/phosphor-power/p10bmc/psu.json
diff --git a/meta-ibm/recipes-phosphor/power/phosphor-power_%.bbappend b/meta-ibm/recipes-phosphor/power/phosphor-power_%.bbappend
index 3c652cee9..c8084b39e 100644
--- a/meta-ibm/recipes-phosphor/power/phosphor-power_%.bbappend
+++ b/meta-ibm/recipes-phosphor/power/phosphor-power_%.bbappend
@@ -5,11 +5,11 @@ inherit obmc-phosphor-systemd
SRC_URI += "file://psu.json"
EXTRA_OEMESON_append_ibm-ac-server = " -Ducd90160-yaml=${STAGING_DIR_HOST}${datadir}/power-sequencer/ucd90160.yaml"
-EXTRA_OEMESON_append_rainier = " -Ducd90160-yaml=${STAGING_DIR_HOST}${datadir}/power-sequencer/ucd90160.yaml -Dibm-vpd=true"
+EXTRA_OEMESON_append_p10bmc = " -Ducd90160-yaml=${STAGING_DIR_HOST}${datadir}/power-sequencer/ucd90160.yaml -Dibm-vpd=true"
EXTRA_OEMESON_append_mihawk = " -Dpower_sequencer=mihawk-cpld"
DEPENDS_append_ibm-ac-server = " power-sequencer"
-DEPENDS_append_rainier = " power-sequencer"
+DEPENDS_append_p10bmc = " power-sequencer"
do_install_append(){
install -D ${WORKDIR}/psu.json ${D}${datadir}/phosphor-power/psu.json
diff --git a/meta-ibm/recipes-phosphor/power/power-sequencer.bb b/meta-ibm/recipes-phosphor/power/power-sequencer.bb
index cd5822202..6fc1133cf 100644
--- a/meta-ibm/recipes-phosphor/power/power-sequencer.bb
+++ b/meta-ibm/recipes-phosphor/power/power-sequencer.bb
@@ -6,10 +6,10 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5
inherit allarch
SRC_URI_append_ibm-ac-server = " file://ucd90160.yaml"
-SRC_URI_append_rainier = " file://ucd90160.yaml"
+SRC_URI_append_p10bmc = " file://ucd90160.yaml"
FILES_${PN}_append_ibm-ac-server = " ${datadir}/power-sequencer/ucd90160.yaml"
-FILES_${PN}_append_rainier = " ${datadir}/power-sequencer/ucd90160.yaml"
+FILES_${PN}_append_p10bmc = " ${datadir}/power-sequencer/ucd90160.yaml"
S = "${WORKDIR}"
@@ -19,7 +19,7 @@ do_install_append_ibm-ac-server() {
install -D ucd90160.yaml ${DEST}/ucd90160.yaml
}
-do_install_append_rainier() {
+do_install_append_p10bmc() {
DEST=${D}${datadir}/power-sequencer
install -D ucd90160.yaml ${DEST}/ucd90160.yaml
diff --git a/meta-ibm/recipes-phosphor/power/power-sequencer/rainier/ucd90160.yaml b/meta-ibm/recipes-phosphor/power/power-sequencer/p10bmc/ucd90160.yaml
index a6bba44ce..a6bba44ce 100644
--- a/meta-ibm/recipes-phosphor/power/power-sequencer/rainier/ucd90160.yaml
+++ b/meta-ibm/recipes-phosphor/power/power-sequencer/p10bmc/ucd90160.yaml
diff --git a/meta-ibm/recipes-phosphor/sensors/dbus-sensors_%.bbappend b/meta-ibm/recipes-phosphor/sensors/dbus-sensors_%.bbappend
index 3f2661301..6c283f455 100644
--- a/meta-ibm/recipes-phosphor/sensors/dbus-sensors_%.bbappend
+++ b/meta-ibm/recipes-phosphor/sensors/dbus-sensors_%.bbappend
@@ -1 +1 @@
-PACKAGECONFIG_rainier = "hwmontempsensor"
+PACKAGECONFIG_p10bmc = "hwmontempsensor"
diff --git a/meta-ibm/recipes-phosphor/sensors/phosphor-hwmon/rainier/obmc/hwmon/ahb/apb/bus@1e78a000/i2c-bus@400/max31785@52.conf b/meta-ibm/recipes-phosphor/sensors/phosphor-hwmon/p10bmc/obmc/hwmon/ahb/apb/bus@1e78a000/i2c-bus@400/max31785@52.conf
index c3b9db146..c3b9db146 100644
--- a/meta-ibm/recipes-phosphor/sensors/phosphor-hwmon/rainier/obmc/hwmon/ahb/apb/bus@1e78a000/i2c-bus@400/max31785@52.conf
+++ b/meta-ibm/recipes-phosphor/sensors/phosphor-hwmon/p10bmc/obmc/hwmon/ahb/apb/bus@1e78a000/i2c-bus@400/max31785@52.conf
diff --git a/meta-ibm/recipes-phosphor/sensors/phosphor-hwmon/rainier/obmc/hwmon/ahb/apb/bus@1e78a000/i2c-bus@780/i2c-switch@70/i2c@3/max31785@52.conf b/meta-ibm/recipes-phosphor/sensors/phosphor-hwmon/p10bmc/obmc/hwmon/ahb/apb/bus@1e78a000/i2c-bus@780/i2c-switch@70/i2c@3/max31785@52.conf
index d3df21599..d3df21599 100644
--- a/meta-ibm/recipes-phosphor/sensors/phosphor-hwmon/rainier/obmc/hwmon/ahb/apb/bus@1e78a000/i2c-bus@780/i2c-switch@70/i2c@3/max31785@52.conf
+++ b/meta-ibm/recipes-phosphor/sensors/phosphor-hwmon/p10bmc/obmc/hwmon/ahb/apb/bus@1e78a000/i2c-bus@780/i2c-switch@70/i2c@3/max31785@52.conf
diff --git a/meta-ibm/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend b/meta-ibm/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
index 8e4d5f621..c9e7927a3 100644
--- a/meta-ibm/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
+++ b/meta-ibm/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
@@ -1,6 +1,6 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
-EXTRA_OECONF_append_mihawk = " --enable-negative-errno-on-fail"
+EXTRA_OEMESON_append_mihawk = "-Dnegative-errno-on-fail=true"
SRC_URI_append_ibm-ac-server = " \
file://70-hwmon.rules \
@@ -74,7 +74,7 @@ CHIPS_witherspoon-tacoma = " \
bus@1e78a000/i2c-bus@500/tmp275@4a \
"
-CHIPS_rainier = " \
+CHIPS_p10bmc = " \
bus@1e78a000/i2c-bus@400/max31785@52 \
bus@1e78a000/i2c-bus@780/i2c-switch@70/i2c@3/max31785@52 \
"
@@ -110,7 +110,7 @@ SYSTEMD_ENVIRONMENT_FILE_${PN}_append_ibm-ac-server = " ${@compose_list(d, 'ENVS
SYSTEMD_ENVIRONMENT_FILE_${PN}_append_ibm-ac-server = " ${@compose_list(d, 'ENVS', 'OCCITEMS')}"
SYSTEMD_ENVIRONMENT_FILE_${PN}_append_mihawk = " ${@compose_list(d, 'ENVS', 'ITEMS')}"
SYSTEMD_ENVIRONMENT_FILE_${PN}_append_mihawk = " ${@compose_list(d, 'ENVS', 'OCCITEMS')}"
-SYSTEMD_ENVIRONMENT_FILE_${PN}_append_rainier = " ${@compose_list(d, 'ENVS', 'ITEMS')}"
+SYSTEMD_ENVIRONMENT_FILE_${PN}_append_p10bmc = " ${@compose_list(d, 'ENVS', 'ITEMS')}"
# Enable and install the max31785-msl package
PACKAGECONFIG_append_ibm-ac-server = " max31785-msl"
diff --git a/meta-ibm/recipes-phosphor/sensors/phosphor-virtual-sensor/rainier/virtual_sensor_config.json b/meta-ibm/recipes-phosphor/sensors/phosphor-virtual-sensor/p10bmc/virtual_sensor_config.json
index df51c66ab..df51c66ab 100644
--- a/meta-ibm/recipes-phosphor/sensors/phosphor-virtual-sensor/rainier/virtual_sensor_config.json
+++ b/meta-ibm/recipes-phosphor/sensors/phosphor-virtual-sensor/p10bmc/virtual_sensor_config.json
diff --git a/meta-ibm/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend b/meta-ibm/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend
index 53f8905be..878a58a01 100644
--- a/meta-ibm/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend
+++ b/meta-ibm/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend
@@ -1,6 +1,6 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
SRC_URI += "file://virtual_sensor_config.json"
-do_install_append_rainier() {
+do_install_append_p10bmc() {
install -m 0644 ${WORKDIR}/virtual_sensor_config.json ${D}${datadir}/phosphor-virtual-sensor/
}
diff --git a/meta-ibm/recipes-phosphor/settings/phosphor-settings-manager/HypervisorInterface-default-rainier.override.yml b/meta-ibm/recipes-phosphor/settings/phosphor-settings-manager/HypervisorInterface-default-p10bmc.override.yml
index ecc95317f..ecc95317f 100644
--- a/meta-ibm/recipes-phosphor/settings/phosphor-settings-manager/HypervisorInterface-default-rainier.override.yml
+++ b/meta-ibm/recipes-phosphor/settings/phosphor-settings-manager/HypervisorInterface-default-p10bmc.override.yml
diff --git a/meta-ibm/recipes-phosphor/settings/phosphor-settings-manager_%.bbappend b/meta-ibm/recipes-phosphor/settings/phosphor-settings-manager_%.bbappend
index 3c658ae0c..92c1bccae 100644
--- a/meta-ibm/recipes-phosphor/settings/phosphor-settings-manager_%.bbappend
+++ b/meta-ibm/recipes-phosphor/settings/phosphor-settings-manager_%.bbappend
@@ -3,5 +3,5 @@ SRC_URI_append_ibm-ac-server = " file://TPMEnable-default-true.override.yml"
SRC_URI_append_ibm-ac-server = " file://ClearHostSecurityKeys-default-zero.override.yml"
SRC_URI_append_mihawk = " file://TPMEnable-default-true.override.yml"
SRC_URI_append = " file://ibm_settings.override.yml"
-SRC_URI_append_rainier = " file://HypervisorInterface-default-rainier.override.yml"
+SRC_URI_append_p10bmc = " file://HypervisorInterface-default-p10bmc.override.yml"
SRC_URI_append_witherspoon-tacoma = " file://HypervisorInterface-default-tacoma.override.yml"
diff --git a/meta-ibm/recipes-phosphor/skeleton/obmc-libobmc-intf/rainier/gpio_defs.json b/meta-ibm/recipes-phosphor/skeleton/obmc-libobmc-intf/p10bmc/gpio_defs.json
index 296039502..654be093a 100644
--- a/meta-ibm/recipes-phosphor/skeleton/obmc-libobmc-intf/rainier/gpio_defs.json
+++ b/meta-ibm/recipes-phosphor/skeleton/obmc-libobmc-intf/p10bmc/gpio_defs.json
@@ -25,6 +25,11 @@
"name": "SYS_PWROK_BUFF",
"pin": "R2",
"direction": "in"
+ },
+ {
+ "name": "POWER_BUTTON",
+ "pin": "P3",
+ "direction": "both"
}
]
}
diff --git a/meta-ingrasys/conf/layer.conf b/meta-ingrasys/conf/layer.conf
index 1c9165c67..18a1bfaf8 100644
--- a/meta-ingrasys/conf/layer.conf
+++ b/meta-ingrasys/conf/layer.conf
@@ -3,4 +3,4 @@ BBPATH .= ":${LAYERDIR}"
BBFILE_COLLECTIONS += "ingrasys"
BBFILE_PATTERN_ingrasys := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_ingrasys = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_ingrasys = "gatesgarth hardknott"
diff --git a/meta-ingrasys/meta-zaius/conf/bblayers.conf.sample b/meta-ingrasys/meta-zaius/conf/bblayers.conf.sample
index f5e40dcfc..3ee615247 100644
--- a/meta-ingrasys/meta-zaius/conf/bblayers.conf.sample
+++ b/meta-ingrasys/meta-zaius/conf/bblayers.conf.sample
@@ -11,6 +11,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
@@ -23,6 +24,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
diff --git a/meta-ingrasys/meta-zaius/conf/layer.conf b/meta-ingrasys/meta-zaius/conf/layer.conf
index 92c5de5ba..d63eb76a1 100644
--- a/meta-ingrasys/meta-zaius/conf/layer.conf
+++ b/meta-ingrasys/meta-zaius/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "zaius"
BBFILE_PATTERN_zaius := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_zaius = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_zaius = "gatesgarth hardknott"
diff --git a/meta-inspur/MAINTAINERS b/meta-inspur/MAINTAINERS
index 0bb9d65fb..0710437fe 100644
--- a/meta-inspur/MAINTAINERS
+++ b/meta-inspur/MAINTAINERS
@@ -14,7 +14,7 @@ Description of section entries:
Section entries are structured according to the following scheme:
- X: NAME <EMAIL_USERNAME@DOMAIN> <IRC_USERNAME!>
+ X: NAME <EMAIL_USERNAME@DOMAIN> <DISCORD_USERNAME!>
X: ...
.
.
@@ -24,10 +24,10 @@ Description of section entries:
organization; FILE_PATH is a file path within the repository, possibly with
wildcards; X is a tag of one of the following types:
- M: Denotes maintainer; has fields NAME <EMAIL_USERNAME@DOMAIN> <IRC_USERNAME!>;
+ M: Denotes maintainer; has fields NAME <EMAIL_USERNAME@DOMAIN> <DISCORD_USERNAME!>;
if omitted from an entry, assume one of the maintainers from the
MAINTAINERS entry.
- R: Denotes reviewer; has fields NAME <EMAIL_USERNAME@DOMAIN> <IRC_USERNAME!>;
+ R: Denotes reviewer; has fields NAME <EMAIL_USERNAME@DOMAIN> <DISCORD_USERNAME!>;
these people are to be added as reviewers for a change matching the repo
path.
F: Denotes forked from an external repository; has fields URL.
diff --git a/meta-inspur/conf/layer.conf b/meta-inspur/conf/layer.conf
index ca10a79bc..14a32e923 100644
--- a/meta-inspur/conf/layer.conf
+++ b/meta-inspur/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "inspur-layer"
BBFILE_PATTERN_inspur-layer = "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_inspur-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_inspur-layer = "gatesgarth hardknott"
diff --git a/meta-inspur/meta-fp5280g2/conf/bblayers.conf.sample b/meta-inspur/meta-fp5280g2/conf/bblayers.conf.sample
index d8aa6bebc..9f5c27cd4 100644
--- a/meta-inspur/meta-fp5280g2/conf/bblayers.conf.sample
+++ b/meta-inspur/meta-fp5280g2/conf/bblayers.conf.sample
@@ -12,6 +12,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
@@ -25,6 +26,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
diff --git a/meta-inspur/meta-fp5280g2/conf/distro/openbmc-fp5280g2.conf b/meta-inspur/meta-fp5280g2/conf/distro/openbmc-fp5280g2.conf
index de0682cf6..95edf37d9 100644
--- a/meta-inspur/meta-fp5280g2/conf/distro/openbmc-fp5280g2.conf
+++ b/meta-inspur/meta-fp5280g2/conf/distro/openbmc-fp5280g2.conf
@@ -1,3 +1,2 @@
require conf/distro/openbmc-openpower.conf
-require conf/distro/include/phosphor-aspeednic-use-mac2.inc
require conf/distro/include/inspur-distrovars.inc
diff --git a/meta-inspur/meta-fp5280g2/conf/layer.conf b/meta-inspur/meta-fp5280g2/conf/layer.conf
index 63ebcb857..18e651877 100644
--- a/meta-inspur/meta-fp5280g2/conf/layer.conf
+++ b/meta-inspur/meta-fp5280g2/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "fp5280g2-layer"
BBFILE_PATTERN_fp5280g2-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_fp5280g2-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_fp5280g2-layer = "gatesgarth hardknott"
diff --git a/meta-inspur/meta-fp5280g2/conf/machine/fp5280g2.conf b/meta-inspur/meta-fp5280g2/conf/machine/fp5280g2.conf
index 193336888..86663753e 100644
--- a/meta-inspur/meta-fp5280g2/conf/machine/fp5280g2.conf
+++ b/meta-inspur/meta-fp5280g2/conf/machine/fp5280g2.conf
@@ -7,9 +7,10 @@ OBMC_POWER_SUPPLY_INSTANCES = "0 1"
PREFERRED_PROVIDER_virtual/openpower-fru-vpd-layout = "fp5280g2-openpower-fru-vpd-layout-native"
PREFERRED_PROVIDER_virtual/openpower-fru-inventory = "fp5280g2-openpower-fru-inventory-native"
-PREFERRED_PROVIDER_virtual/phosphor-led-manager-config-native = "fp5280g2-led-manager-config-native"
require conf/machine/include/ast2500.inc
require conf/machine/include/obmc-bsp-common.inc
require conf/machine/include/openpower.inc
require conf/machine/include/p9.inc
+
+require conf/distro/include/phosphor-aspeednic-use-mac2.inc
diff --git a/meta-inspur/meta-fp5280g2/recipes-phosphor/leds/fp5280g2-led-manager-config-native.bb b/meta-inspur/meta-fp5280g2/recipes-phosphor/leds/fp5280g2-led-manager-config-native.bb
deleted file mode 100644
index 22aadad8e..000000000
--- a/meta-inspur/meta-fp5280g2/recipes-phosphor/leds/fp5280g2-led-manager-config-native.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-SUMMARY = "Phosphor LED Group Management for fp5280g2"
-PR = "r1"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
-
-inherit native
-
-PROVIDES += "virtual/phosphor-led-manager-config-native"
-
-SRC_URI += "file://led.yaml"
-S = "${WORKDIR}"
-
-# Overwrite the example led layout yaml file prior
-# to building the phosphor-led-manager package
-do_install() {
- SRC=${S}
- DEST=${D}${datadir}/phosphor-led-manager
- install -D ${SRC}/led.yaml ${DEST}/led.yaml
-}
diff --git a/meta-inspur/meta-fp5280g2/recipes-phosphor/leds/fp5280g2-led-manager-config/led.yaml b/meta-inspur/meta-fp5280g2/recipes-phosphor/leds/fp5280g2-led-manager-config/led.yaml
deleted file mode 100644
index 922d67bb7..000000000
--- a/meta-inspur/meta-fp5280g2/recipes-phosphor/leds/fp5280g2-led-manager-config/led.yaml
+++ /dev/null
@@ -1,20 +0,0 @@
-bmc_booted:
- power:
- Action: 'Blink'
- DutyOn: 50
- Period: 1000
- Priority: 'On'
- init-ok:
- Action: 'On'
- DutyOn: 50
- Period: 0
- Priority: 'On'
-
-#fp5280g2 does not use "power" and "power_on". but the led.yaml needs it, otherwise the machine won't power on.
-power_on:
- power:
- Action: 'On'
- DutyOn: 50
- Period: 0
- Priority: 'On'
-
diff --git a/meta-inspur/meta-fp5280g2/recipes-phosphor/leds/phosphor-led-manager_%.bbappend b/meta-inspur/meta-fp5280g2/recipes-phosphor/leds/phosphor-led-manager_%.bbappend
index 2ad194fc8..ed9666776 100644
--- a/meta-inspur/meta-fp5280g2/recipes-phosphor/leds/phosphor-led-manager_%.bbappend
+++ b/meta-inspur/meta-fp5280g2/recipes-phosphor/leds/phosphor-led-manager_%.bbappend
@@ -2,11 +2,8 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
SRC_URI += "file://led-group-config.json"
-EXTRA_OECONF += "--enable-use-json"
-
-DEPENDS += "phosphor-dbus-interfaces"
+PACKAGECONFIG_append = " use-json use-lamp-test"
do_install_append() {
- install -d ${D}${datadir}/phosphor-led-manager/
install -m 0644 ${WORKDIR}/led-group-config.json ${D}${datadir}/phosphor-led-manager/
}
diff --git a/meta-inspur/meta-fp5280g2/recipes-phosphor/occ/fp5280g2-occ-control-config-native.bb b/meta-inspur/meta-fp5280g2/recipes-phosphor/occ/fp5280g2-occ-control-config-native.bb
index 4cf267794..fbbab0bbc 100644
--- a/meta-inspur/meta-fp5280g2/recipes-phosphor/occ/fp5280g2-occ-control-config-native.bb
+++ b/meta-inspur/meta-fp5280g2/recipes-phosphor/occ/fp5280g2-occ-control-config-native.bb
@@ -3,8 +3,8 @@ PR = "r1"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
-inherit native
inherit openpower-occ-control
+inherit native
SRC_URI += "file://occ_sensor.yaml"
diff --git a/meta-inspur/meta-fp5280g2/recipes-phosphor/power/phosphor-fp5280g2-psu-update.bb b/meta-inspur/meta-fp5280g2/recipes-phosphor/power/phosphor-fp5280g2-psu-update.bb
index 3cc63868a..7c9e4f679 100644
--- a/meta-inspur/meta-fp5280g2/recipes-phosphor/power/phosphor-fp5280g2-psu-update.bb
+++ b/meta-inspur/meta-fp5280g2/recipes-phosphor/power/phosphor-fp5280g2-psu-update.bb
@@ -10,7 +10,7 @@ PV = "1.0+git${SRCPV}"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
-S = "${WORKDIR}/git/"
+S = "${WORKDIR}/git"
do_install() {
install -d ${D}${bindir}
install -m 0755 ${S}/fp5280g2-psu-update ${D}${bindir}/fp5280g2-psu-update
diff --git a/meta-inspur/meta-fp5280g2/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend b/meta-inspur/meta-fp5280g2/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
index 3b4166390..b856e66fd 100644
--- a/meta-inspur/meta-fp5280g2/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
+++ b/meta-inspur/meta-fp5280g2/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
@@ -1,6 +1,6 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
-EXTRA_OECONF_append_fp5280g2= " --enable-negative-errno-on-fail"
+EXTRA_OEMESON_append_fp5280g2= " -Dnegative-errno-on-fail=true"
CHIPS = " \
bus@1e78a000/i2c-bus@c0/tmp112@48 \
diff --git a/meta-inspur/meta-fp5280g2/recipes-phosphor/vpd/fp5280g2-openpower-fru-inventory-native.bb b/meta-inspur/meta-fp5280g2/recipes-phosphor/vpd/fp5280g2-openpower-fru-inventory-native.bb
index f731bfe54..746e961cf 100644
--- a/meta-inspur/meta-fp5280g2/recipes-phosphor/vpd/fp5280g2-openpower-fru-inventory-native.bb
+++ b/meta-inspur/meta-fp5280g2/recipes-phosphor/vpd/fp5280g2-openpower-fru-inventory-native.bb
@@ -3,8 +3,8 @@ PR = "r1"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
-inherit native
inherit openpower-fru-vpd
+inherit native
SRC_URI += "file://inventory"
diff --git a/meta-inspur/meta-fp5280g2/recipes-phosphor/vpd/fp5280g2-openpower-fru-vpd-layout-native.bb b/meta-inspur/meta-fp5280g2/recipes-phosphor/vpd/fp5280g2-openpower-fru-vpd-layout-native.bb
index ba684fb88..b3135005b 100644
--- a/meta-inspur/meta-fp5280g2/recipes-phosphor/vpd/fp5280g2-openpower-fru-vpd-layout-native.bb
+++ b/meta-inspur/meta-fp5280g2/recipes-phosphor/vpd/fp5280g2-openpower-fru-vpd-layout-native.bb
@@ -3,8 +3,8 @@ PR = "r1"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
-inherit native
inherit openpower-fru-vpd
+inherit native
SRC_URI += "file://layout.yaml"
diff --git a/meta-inspur/meta-on5263m5/conf/bblayers.conf.sample b/meta-inspur/meta-on5263m5/conf/bblayers.conf.sample
index 3c806e9ab..6d1e794a0 100644
--- a/meta-inspur/meta-on5263m5/conf/bblayers.conf.sample
+++ b/meta-inspur/meta-on5263m5/conf/bblayers.conf.sample
@@ -11,6 +11,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-x86 \
diff --git a/meta-inspur/meta-on5263m5/conf/layer.conf b/meta-inspur/meta-on5263m5/conf/layer.conf
index fe5d156eb..59a0a8a6a 100644
--- a/meta-inspur/meta-on5263m5/conf/layer.conf
+++ b/meta-inspur/meta-on5263m5/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "on5263m5-layer"
BBFILE_PATTERN_on5263m5-layer = "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_on5263m5-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_on5263m5-layer = "gatesgarth hardknott"
diff --git a/meta-inspur/meta-on5263m5/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend b/meta-inspur/meta-on5263m5/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
index 780ffb746..ac03883e8 100644
--- a/meta-inspur/meta-on5263m5/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
+++ b/meta-inspur/meta-on5263m5/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
@@ -1,6 +1,6 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
-EXTRA_OECONF_append_on5263m5= " --enable-negative-errno-on-fail"
+EXTRA_OEMESON_append_on5263m5= " -Dnegative-errno-on-fail=true"
CHIPS = " \
bus@1e78a000/i2c-bus@1c0/tmp112@48 \
diff --git a/meta-intel-openbmc/conf/layer.conf b/meta-intel-openbmc/conf/layer.conf
index e515b5f57..e2133be24 100644
--- a/meta-intel-openbmc/conf/layer.conf
+++ b/meta-intel-openbmc/conf/layer.conf
@@ -8,5 +8,5 @@ BBFILES += "${LAYERDIR}/meta-common/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "intel"
BBFILE_PATTERN_intel = "^${LAYERDIR}/"
LAYERVERSION_intel = "1"
-LAYERSERIES_COMPAT_intel = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_intel = "gatesgarth hardknott"
LAYERDEPENDS_intel = "phosphor-layer"
diff --git a/meta-intel-openbmc/meta-common/recipes-core/host-error-monitor/host-error-monitor_git.bb b/meta-intel-openbmc/meta-common/recipes-core/host-error-monitor/host-error-monitor_git.bb
index 6b24c522c..1236cbfc7 100644
--- a/meta-intel-openbmc/meta-common/recipes-core/host-error-monitor/host-error-monitor_git.bb
+++ b/meta-intel-openbmc/meta-common/recipes-core/host-error-monitor/host-error-monitor_git.bb
@@ -7,7 +7,7 @@ SRC_URI = "git://github.com/openbmc/host-error-monitor"
DEPENDS = "boost sdbusplus libgpiod libpeci"
PV = "0.1+git${SRCPV}"
-SRCREV = "c90570ab1ad57ac824edf7b5d0f8a89afbcf0c09"
+SRCREV = "4a6e45c4c2f38bc64afe5faac05ea82b3adb8d93"
S = "${WORKDIR}/git"
diff --git a/meta-intel-openbmc/meta-common/recipes-core/libpeci/libpeci_git.bb b/meta-intel-openbmc/meta-common/recipes-core/libpeci/libpeci_git.bb
index ad02834a3..417705148 100644
--- a/meta-intel-openbmc/meta-common/recipes-core/libpeci/libpeci_git.bb
+++ b/meta-intel-openbmc/meta-common/recipes-core/libpeci/libpeci_git.bb
@@ -8,6 +8,6 @@ inherit cmake
SRC_URI = "git://github.com/openbmc/libpeci"
PV = "0.1+git${SRCPV}"
-SRCREV = "8fc53d7cef0dd7ac405b5d7d91a368f376cdb508"
+SRCREV = "ff44e549c44c7658ec11e0c19c13c4c45900cfe4"
S = "${WORKDIR}/git"
diff --git a/meta-intel-openbmc/meta-common/recipes-intel/ipmi/intel-ipmi-oem_git.bb b/meta-intel-openbmc/meta-common/recipes-intel/ipmi/intel-ipmi-oem_git.bb
index bb820da3f..3a86b5657 100755
--- a/meta-intel-openbmc/meta-common/recipes-intel/ipmi/intel-ipmi-oem_git.bb
+++ b/meta-intel-openbmc/meta-common/recipes-intel/ipmi/intel-ipmi-oem_git.bb
@@ -5,7 +5,7 @@ LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=a6a4edad4aed50f39a66d098d74b265b"
SRC_URI = "git://github.com/openbmc/intel-ipmi-oem"
-SRCREV = "06aa21ab75cecce354b2a17e05d053c6f61d6a29"
+SRCREV = "01fbd0176c403feb29bf2a9ddd17469d0a27c3ef"
S = "${WORKDIR}/git"
PV = "0.1+git${SRCPV}"
diff --git a/meta-intel-openbmc/meta-common/recipes-intel/pfr/pfr-manager_git.bb b/meta-intel-openbmc/meta-common/recipes-intel/pfr/pfr-manager_git.bb
index abfcbc539..264d661e9 100644
--- a/meta-intel-openbmc/meta-common/recipes-intel/pfr/pfr-manager_git.bb
+++ b/meta-intel-openbmc/meta-common/recipes-intel/pfr/pfr-manager_git.bb
@@ -8,7 +8,7 @@ inherit cmake systemd
SRC_URI = "git://github.com/openbmc/pfr-manager"
PV = "0.1+git${SRCPV}"
-SRCREV = "00acaffb3840d019bf0853d1ee93fdde947f47d2"
+SRCREV = "2dfaf507da581ed4c71d41c02976e4efafc1d634"
S = "${WORKDIR}/git"
diff --git a/meta-intel-openbmc/meta-common/recipes-phosphor/interfaces/bmcweb_%.bbappend b/meta-intel-openbmc/meta-common/recipes-phosphor/interfaces/bmcweb_%.bbappend
index 4e24bab9e..bd97c35f4 100644
--- a/meta-intel-openbmc/meta-common/recipes-phosphor/interfaces/bmcweb_%.bbappend
+++ b/meta-intel-openbmc/meta-common/recipes-phosphor/interfaces/bmcweb_%.bbappend
@@ -1,5 +1,4 @@
EXTRA_OEMESON += "-Dredfish-cpu-log=enabled \
- -Dredfish-raw-peci=enabled \
-Dredfish-bmc-journal=enabled \
-Drest=disabled"
diff --git a/meta-intel-openbmc/meta-s2600wf/conf/bblayers.conf.sample b/meta-intel-openbmc/meta-s2600wf/conf/bblayers.conf.sample
index c208e10fc..cbaf88b2e 100644
--- a/meta-intel-openbmc/meta-s2600wf/conf/bblayers.conf.sample
+++ b/meta-intel-openbmc/meta-s2600wf/conf/bblayers.conf.sample
@@ -13,6 +13,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-intel-openbmc \
diff --git a/meta-intel-openbmc/meta-s2600wf/conf/layer.conf b/meta-intel-openbmc/meta-s2600wf/conf/layer.conf
index c5001beec..82a9da0ae 100644
--- a/meta-intel-openbmc/meta-s2600wf/conf/layer.conf
+++ b/meta-intel-openbmc/meta-s2600wf/conf/layer.conf
@@ -8,4 +8,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "s2600wf"
BBFILE_PATTERN_s2600wf = ""
BBFILE_PRIORITY_s2600wf = "5"
-LAYERSERIES_COMPAT_s2600wf = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_s2600wf = "gatesgarth hardknott"
diff --git a/meta-inventec/conf/layer.conf b/meta-inventec/conf/layer.conf
index f46b3e2af..08ca2651e 100644
--- a/meta-inventec/conf/layer.conf
+++ b/meta-inventec/conf/layer.conf
@@ -4,4 +4,4 @@ BBPATH .= ":${LAYERDIR}"
BBFILE_COLLECTIONS += "inventec"
BBFILE_PATTERN_inventec = ""
-LAYERSERIES_COMPAT_inventec = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_inventec = "gatesgarth hardknott"
diff --git a/meta-inventec/meta-lanyang/conf/bblayers.conf.sample b/meta-inventec/meta-lanyang/conf/bblayers.conf.sample
index fd230c743..a0962fa0e 100644
--- a/meta-inventec/meta-lanyang/conf/bblayers.conf.sample
+++ b/meta-inventec/meta-lanyang/conf/bblayers.conf.sample
@@ -12,6 +12,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
@@ -25,6 +26,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
diff --git a/meta-lenovo/conf/layer.conf b/meta-lenovo/conf/layer.conf
index b18d1ea9b..180e9603e 100644
--- a/meta-lenovo/conf/layer.conf
+++ b/meta-lenovo/conf/layer.conf
@@ -12,7 +12,7 @@ BBFILES += "${LAYERDIR}/meta-common/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "lenovo-layer"
BBFILE_PATTERN_lenovo-layer = ""
LAYERVERSION_lenovo-layer = "1"
-LAYERSERIES_COMPAT_lenovo-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_lenovo-layer = "gatesgarth hardknott"
# Provide a variable that points the base of the lenovo layer.
LENOVOBASE = '${@os.path.normpath("${LAYERDIR}/")}'
diff --git a/meta-lenovo/meta-hr630/conf/bblayers.conf.sample b/meta-lenovo/meta-hr630/conf/bblayers.conf.sample
index 5ecfeada5..0443211c5 100644
--- a/meta-lenovo/meta-hr630/conf/bblayers.conf.sample
+++ b/meta-lenovo/meta-hr630/conf/bblayers.conf.sample
@@ -12,7 +12,9 @@ BBLAYERS ?= " \
##OEROOT##/meta \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-x86 \
diff --git a/meta-lenovo/meta-hr630/conf/layer.conf b/meta-lenovo/meta-hr630/conf/layer.conf
index 58bf5269c..9c1b4d652 100644
--- a/meta-lenovo/meta-hr630/conf/layer.conf
+++ b/meta-lenovo/meta-hr630/conf/layer.conf
@@ -11,4 +11,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "hr630-layer"
BBFILE_PATTERN_hr630-layer = ""
BBFILE_PRIORITY_hr630-layer = "5"
-LAYERSERIES_COMPAT_hr630-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_hr630-layer = "gatesgarth hardknott"
diff --git a/meta-lenovo/meta-hr630/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend b/meta-lenovo/meta-hr630/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
index 507954d49..7a2345ebc 100644
--- a/meta-lenovo/meta-hr630/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
+++ b/meta-lenovo/meta-hr630/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
@@ -2,7 +2,7 @@
#Licensed under BSD-3, see COPYING.BSD file for details."
FILESEXTRAPATHS_prepend_hr630 := "${THISDIR}/${PN}:"
-EXTRA_OECONF_append_hr630 = " --enable-negative-errno-on-fail"
+EXTRA_OEMESON_append_hr630 = " -Dnegative-errno-on-fail=true"
CHIPS = " \
bus@1e78a000/i2c-bus@40/tmp75@4e \
diff --git a/meta-lenovo/meta-hr855xg2/conf/bblayers.conf.sample b/meta-lenovo/meta-hr855xg2/conf/bblayers.conf.sample
index a14ab61ea..744edb7e6 100644
--- a/meta-lenovo/meta-hr855xg2/conf/bblayers.conf.sample
+++ b/meta-lenovo/meta-hr855xg2/conf/bblayers.conf.sample
@@ -12,8 +12,10 @@ BBLAYERS ?= " \
##OEROOT##/meta \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-x86 \
diff --git a/meta-lenovo/meta-hr855xg2/conf/layer.conf b/meta-lenovo/meta-hr855xg2/conf/layer.conf
index 8402ee9f0..364143298 100644
--- a/meta-lenovo/meta-hr855xg2/conf/layer.conf
+++ b/meta-lenovo/meta-hr855xg2/conf/layer.conf
@@ -11,4 +11,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "hr855xg2-layer"
BBFILE_PATTERN_hr855xg2-layer := "^${LAYERDIR}/"
BBFILE_PRIORITY_hr855xg2-layer = "5"
-LAYERSERIES_COMPAT_hr855xg2-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_hr855xg2-layer = "gatesgarth hardknott"
diff --git a/meta-microsoft/conf/layer.conf b/meta-microsoft/conf/layer.conf
index aa3cd789f..03c6d8fc7 100755
--- a/meta-microsoft/conf/layer.conf
+++ b/meta-microsoft/conf/layer.conf
@@ -3,4 +3,4 @@ BBPATH .= ":${LAYERDIR}"
BBFILE_COLLECTIONS += "microsoft-layer"
BBFILE_PATTERN_microsoft-layer = ""
-LAYERSERIES_COMPAT_microsoft-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_microsoft-layer = "gatesgarth hardknott"
diff --git a/meta-microsoft/meta-olympus/conf/bblayers.conf.sample b/meta-microsoft/meta-olympus/conf/bblayers.conf.sample
index 730455080..4d15ac629 100755
--- a/meta-microsoft/meta-olympus/conf/bblayers.conf.sample
+++ b/meta-microsoft/meta-olympus/conf/bblayers.conf.sample
@@ -11,6 +11,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-microsoft \
@@ -22,6 +23,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-microsoft \
diff --git a/meta-microsoft/meta-olympus/conf/layer.conf b/meta-microsoft/meta-olympus/conf/layer.conf
index 2a58334f6..1132bedd2 100755
--- a/meta-microsoft/meta-olympus/conf/layer.conf
+++ b/meta-microsoft/meta-olympus/conf/layer.conf
@@ -9,4 +9,4 @@ BBFILE_COLLECTIONS += "olympus-layer"
BBFILE_PATTERN_olympus-layer = "^${LAYERDIR}/"
BBFILE_PRIORITY_olympus-layer = "6"
-LAYERSERIES_COMPAT_olympus-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_olympus-layer = "gatesgarth hardknott"
diff --git a/meta-nuvoton/conf/layer.conf b/meta-nuvoton/conf/layer.conf
index eaf9a52bd..15d4b971b 100644
--- a/meta-nuvoton/conf/layer.conf
+++ b/meta-nuvoton/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "nuvoton-layer"
BBFILE_PATTERN_nuvoton-layer = ""
LAYERVERSION_nuvoton-layer = "1"
-LAYERSERIES_COMPAT_nuvoton-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_nuvoton-layer = "gatesgarth hardknott"
diff --git a/meta-nuvoton/recipes-bsp/images/npcm7xx-bootblock_10.10.16.bb b/meta-nuvoton/recipes-bsp/images/npcm7xx-bootblock_10.10.17.bb
index 10d5dd108..7e1912d22 100644
--- a/meta-nuvoton/recipes-bsp/images/npcm7xx-bootblock_10.10.16.bb
+++ b/meta-nuvoton/recipes-bsp/images/npcm7xx-bootblock_10.10.17.bb
@@ -15,7 +15,7 @@ SRC_URI = " \
"
SRC_URI[lic.md5sum] = "b234ee4d69f5fce4486a80fdaf4a4263"
-SRC_URI[bin.sha256sum] = "b2df56cc8667227fa625f11c628bfc10c831d36d076bf28ff376902d06b63a54"
+SRC_URI[bin.sha256sum] = "3e92e3f6c4624139d000f91541792a54f52205637bb88abd14310c854694cb39"
inherit deploy
diff --git a/meta-nuvoton/recipes-kernel/linux/linux-nuvoton_git.bb b/meta-nuvoton/recipes-kernel/linux/linux-nuvoton_git.bb
index 49f2f38b1..3a06a3e4d 100644
--- a/meta-nuvoton/recipes-kernel/linux/linux-nuvoton_git.bb
+++ b/meta-nuvoton/recipes-kernel/linux/linux-nuvoton_git.bb
@@ -1,6 +1,6 @@
KBRANCH ?= "dev-5.10"
LINUX_VERSION ?= "5.10.23"
-SRCREV="6687842ee68152c5cc7b7f8ac771b25eaece056a"
+SRCREV="395847787d8f955f03bcb350ed9f852346fcda4d"
require linux-nuvoton.inc
diff --git a/meta-openembedded/contrib/oe-stylize.py b/meta-openembedded/contrib/oe-stylize.py
index ba4b87a74..e1ba1b321 100755
--- a/meta-openembedded/contrib/oe-stylize.py
+++ b/meta-openembedded/contrib/oe-stylize.py
@@ -2,12 +2,12 @@
"""\
Sanitize a bitbake file following the OpenEmbedded style guidelines,
-see http://openembedded.org/wiki/StyleGuide
+see http://openembedded.org/wiki/StyleGuide
(C) 2006 Cyril Romain <cyril.romain@gmail.com>
MIT license
-TODO:
+TODO:
- add the others OpenEmbedded variables commonly used:
- parse command arguments and print usage on misuse
. prevent giving more than one .bb file in arguments
@@ -19,7 +19,7 @@ TODO:
- count rule breaks and displays them in the order frequence
"""
-from __future__ import print_function
+from __future__ import print_function
import fileinput
import string
import re
@@ -65,7 +65,7 @@ OE_vars = [
'RSUGGESTS',
'RPROVIDES',
'RCONFLICTS',
- 'FILES',
+ 'FILES',
'do_package',
'do_stage',
'addhandler',
@@ -215,81 +215,114 @@ routineRegexp = r'^([a-zA-Z0-9_ ${}-]+?)\('
# Variables seen in the processed .bb
seen_vars = {}
-for v in OE_vars:
+for v in OE_vars:
seen_vars[v] = []
-# _Format guideline #0_:
-# No spaces are allowed at the beginning of lines that define a variable or
+# _Format guideline #0_:
+# No spaces are allowed at the beginning of lines that define a variable or
# a do_ routine
-def respect_rule0(line):
- return line.lstrip()==line
-def conformTo_rule0(line):
+
+
+def respect_rule0(line):
+ return line.lstrip() == line
+
+
+def conformTo_rule0(line):
return line.lstrip()
-# _Format guideline #1_:
+# _Format guideline #1_:
# No spaces are allowed behind the line continuation symbol '\'
+
+
def respect_rule1(line):
if line.rstrip().endswith('\\'):
return line.endswith('\\')
- else:
+ else:
return True
+
+
def conformTo_rule1(line):
return line.rstrip()
-# _Format guideline #2_:
+# _Format guideline #2_:
# Tabs should not be used (use spaces instead).
+
+
def respect_rule2(line):
- return line.count('\t')==0
+ return line.count('\t') == 0
+
+
def conformTo_rule2(line):
return line.expandtabs()
# _Format guideline #3_:
-# Comments inside bb files are allowed using the '#' character at the
+# Comments inside bb files are allowed using the '#' character at the
# beginning of a line.
+
+
def respect_rule3(line):
if line.lstrip().startswith('#'):
return line.startswith('#')
- else:
+ else:
return True
+
+
def conformTo_rule3(line):
return line.lstrip()
# _Format guideline #4_:
# Use quotes on the right hand side of assignments FOO = "BAR"
+
+
def respect_rule4(line):
r = re.search(varRegexp, line)
if r is not None:
r2 = re.search(r'("?)([^"\\]*)(["\\]?)', r.group(5))
# do not test for None it because always match
- return r2.group(1)=='"' and r2.group(3)!=''
+ return r2.group(1) == '"' and r2.group(3) != ''
return False
+
+
def conformTo_rule4(line):
r = re.search(varRegexp, line)
return ''.join([r.group(1), ' ', r.group(3), ' "', r.group(5), r.group(5).endswith('"') and '' or '"'])
# _Format guideline #5_:
# The correct spacing for a variable is FOO = "BAR".
+
+
def respect_rule5(line):
r = re.search(varRegexp, line)
- return r is not None and r.group(2)==" " and r.group(4)==" "
+ return r is not None and r.group(2) == " " and r.group(4) == " "
+
+
def conformTo_rule5(line):
r = re.search(varRegexp, line)
return ''.join([r.group(1), ' ', r.group(3), ' ', r.group(5)])
# _Format guideline #6_:
# Don't use spaces or tabs on empty lines
+
+
def respect_rule6(line):
- return not line.isspace() or line=="\n"
+ return not line.isspace() or line == "\n"
+
+
def conformTo_rule6(line):
return ""
# _Format guideline #7_:
# Indentation of multiline variables such as SRC_URI is desireable.
+
+
def respect_rule7(line):
return True
+
+
def conformTo_rule7(line):
return line
+
rules = (
(respect_rule0, conformTo_rule0, "No spaces are allowed at the beginning of lines that define a variable or a do_ routine"),
(respect_rule1, conformTo_rule1, "No spaces are allowed behind the line continuation symbol '\\'"),
@@ -303,6 +336,8 @@ rules = (
# Function to check that a line respects a rule. If not, it tries to conform
# the line to the rule. Reminder or Disgression message are dump accordingly.
+
+
def follow_rule(i, line):
oldline = line
# if the line does not respect the rule
@@ -312,10 +347,10 @@ def follow_rule(i, line):
# if the line still does not respect the rule
if not rules[i][0](line):
# this is a rule disgression
- print ("## Disgression: ", rules[i][2], " in: '", oldline, "'")
+ print("## Disgression: ", rules[i][2], " in: '", oldline, "'")
else:
# just remind user about his/her errors
- print ("## Reminder: ", rules[i][2], " in : '", oldline, "'")
+ print("## Reminder: ", rules[i][2], " in : '", oldline, "'")
return line
@@ -329,8 +364,8 @@ if __name__ == "__main__":
if True:
lines.append(line)
else:
- # expandtabs on each line so that rule2 is always respected
- # rstrip each line so that rule1 is always respected
+ # expandtabs on each line so that rule2 is always respected
+ # rstrip each line so that rule1 is always respected
line = line.expandtabs().rstrip()
# ignore empty lines (or line filled with spaces or tabs only)
# so that rule6 is always respected
@@ -342,7 +377,7 @@ if __name__ == "__main__":
in_routine = False
commentBloc = []
olines = []
- for line in lines:
+ for line in lines:
originalLine = line
# rstrip line to remove line breaks characters
line = line.rstrip()
@@ -353,12 +388,13 @@ if __name__ == "__main__":
# ignore empty lines
if line.isspace() or line is '':
# flush comments into the olines
- for c in commentBloc: olines.append(c)
+ for c in commentBloc:
+ olines.append(c)
commentBloc = []
continue
- if line.startswith('}'):
- in_routine=False
+ if line.startswith('}'):
+ in_routine = False
keep = line.endswith('\\') or in_routine
# handles commented lines
@@ -370,7 +406,8 @@ if __name__ == "__main__":
continue
if var in seen_vars:
- for c in commentBloc: seen_vars[var].append(c)
+ for c in commentBloc:
+ seen_vars[var].append(c)
commentBloc = []
seen_vars[var].append(line)
else:
@@ -378,8 +415,8 @@ if __name__ == "__main__":
if line.startswith(k):
var = k
break
- if re.match(routineRegexp, line) is not None:
- in_routine=True
+ if re.match(routineRegexp, line) is not None:
+ in_routine = True
line = follow_rule(0, line)
elif re.match(varRegexp, line) is not None:
line = follow_rule(0, line)
@@ -387,26 +424,30 @@ if __name__ == "__main__":
line = follow_rule(5, line)
if var == "":
if not in_routine:
- print ("## Warning: unknown variable/routine \"%s\"" % originalLine.rstrip('\n'))
+ print("## Warning: unknown variable/routine \"%s\"" % originalLine.rstrip('\n'))
var = 'others'
- for c in commentBloc: seen_vars[var].append(c)
+ for c in commentBloc:
+ seen_vars[var].append(c)
commentBloc = []
seen_vars[var].append(line)
- if not keep and not in_routine: var = ""
+ if not keep and not in_routine:
+ var = ""
# -- dump the sanitized .bb file --
addEmptyLine = False
# write comments that are not related to variables nor routines
- for l in commentBloc: olines.append(l)
+ for l in commentBloc:
+ olines.append(l)
# write variables and routines
previourVarPrefix = "unknown"
for k in OE_vars:
- if k=='SRC_URI': addEmptyLine = True
- if seen_vars[k] != []:
+ if k == 'SRC_URI':
+ addEmptyLine = True
+ if seen_vars[k] != []:
if addEmptyLine and not k.startswith(previourVarPrefix):
olines.append("")
- for l in seen_vars[k]:
+ for l in seen_vars[k]:
olines.append(l)
- previourVarPrefix = k.split('_')[0]=='' and "unknown" or k.split('_')[0]
- for line in olines: print(line)
-
+ previourVarPrefix = k.split('_')[0] == '' and "unknown" or k.split('_')[0]
+ for line in olines:
+ print(line)
diff --git a/meta-openembedded/meta-filesystems/conf/layer.conf b/meta-openembedded/meta-filesystems/conf/layer.conf
index 343f5209c..ae93a36b4 100644
--- a/meta-openembedded/meta-filesystems/conf/layer.conf
+++ b/meta-openembedded/meta-filesystems/conf/layer.conf
@@ -15,4 +15,4 @@ LAYERVERSION_filesystems-layer = "1"
LAYERDEPENDS_filesystems-layer = "core openembedded-layer"
-LAYERSERIES_COMPAT_filesystems-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_filesystems-layer = " hardknott"
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Replace-u_intXX_t-with-kernel-typedefs.patch b/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Replace-u_intXX_t-with-kernel-typedefs.patch
deleted file mode 100644
index e69a3cf1f..000000000
--- a/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Replace-u_intXX_t-with-kernel-typedefs.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 6cf6f5b9c39dfd0d46f2069c3baeab92ae980367 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 15 Dec 2019 00:58:13 -0800
-Subject: [PATCH] Replace u_intXX_t with kernel typedefs
-
-u_intXX_t requires including sys/types.h which might not work in kernel
-code, if this header is used in a kernel module
-
-Fixes
-| In file included from ufs.c:16:
-| In file included from ./ufs.h:9:
-| ./scsi_bsg_util.h:131:2: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
-| u_int16_t result;
-| ^~~~~~~~~
-
-Upstream-Status: Submitted [https://github.com/westerndigitalcorporation/ufs-utils/pull/23]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- scsi_bsg_util.h | 18 +++++++++---------
- 1 file changed, 9 insertions(+), 9 deletions(-)
-
-diff --git a/scsi_bsg_util.h b/scsi_bsg_util.h
-index 3f8a482..497c3ae 100644
---- a/scsi_bsg_util.h
-+++ b/scsi_bsg_util.h
-@@ -121,15 +121,15 @@ struct ufs_bsg_reply {
- #endif /* SCSI_BSG_UFS_H.*/
-
- struct rpmb_frame {
-- u_int8_t stuff[196];
-- u_int8_t key_mac[32];
-- u_int8_t data[256];
-- u_int8_t nonce[16];
-- u_int32_t write_counter;
-- u_int16_t addr;
-- u_int16_t block_count;
-- u_int16_t result;
-- u_int16_t req_resp;
-+ __u8 stuff[196];
-+ __u8 key_mac[32];
-+ __u8 data[256];
-+ __u8 nonce[16];
-+ __u32 write_counter;
-+ __u16 addr;
-+ __u16 block_count;
-+ __u16 result;
-+ __u16 req_resp;
- };
-
- #define BSG_REPLY_SZ (sizeof(struct ufs_bsg_reply))
---
-2.24.1
-
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Use-asm-type.h-for-kernel-types.patch b/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Use-asm-type.h-for-kernel-types.patch
new file mode 100644
index 000000000..08cf87016
--- /dev/null
+++ b/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils/0001-Use-asm-type.h-for-kernel-types.patch
@@ -0,0 +1,65 @@
+From 517f841ccac59b0579e706dd768d6c7b1a7e7552 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 12 Mar 2021 10:37:21 -0800
+Subject: [PATCH] Use asm/type.h for kernel types
+
+This ensures that right headers for types is included otherwise it can
+conflict for some platforms e.g. ppc64 where it includes the underlying
+files conditionally
+
+asm/types.h is
+
+if !defined(__SANE_USERSPACE_TYPES__) && defined(__powerpc64__) && !defined(__KERNEL__)
+ include <asm-generic/int-l64.h>
+else
+ include <asm-generic/int-ll64.h>
+endif
+
+Upstream-Status: Submitted [https://github.com/westerndigitalcorporation/ufs-utils/pull/29]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ ufs.h | 1 -
+ ufs_cmds.h | 2 +-
+ ufs_ffu.c | 1 -
+ 3 files changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/ufs.h b/ufs.h
+index dc51367..0321c54 100644
+--- a/ufs.h
++++ b/ufs.h
+@@ -4,7 +4,6 @@
+
+ #ifndef UFS_H_
+ #define UFS_H_
+-#include <asm-generic/int-ll64.h>
+ #include "ioctl.h"
+ #include "scsi_bsg_util.h"
+
+diff --git a/ufs_cmds.h b/ufs_cmds.h
+index 1e7e24d..5c5b045 100644
+--- a/ufs_cmds.h
++++ b/ufs_cmds.h
+@@ -5,7 +5,7 @@
+ #define UFS_CMNDS_H_
+
+ #include "options.h"
+-#include <asm-generic/int-ll64.h>
++#include <asm/types.h>
+
+
+ enum field_width {
+diff --git a/ufs_ffu.c b/ufs_ffu.c
+index 2bcec44..99b479c 100644
+--- a/ufs_ffu.c
++++ b/ufs_ffu.c
+@@ -12,7 +12,6 @@
+ #include <unistd.h>
+ #include <stdint.h>
+ #include <errno.h>
+-#include <asm-generic/int-ll64.h>
+
+ #include "ufs.h"
+ #include "ufs_cmds.h"
+--
+2.30.2
+
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils_git.bb b/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils_1.9.bb
index 23583650b..e23c764a0 100644
--- a/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils_git.bb
+++ b/meta-openembedded/meta-filesystems/recipes-utils/ufs-utils/ufs-utils_1.9.bb
@@ -2,14 +2,12 @@ SUMMARY = "Tool to access UFS (Universal Flash Storage) devices"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-PV = "1.6+git${SRCPV}"
-
BRANCH ?= "dev"
-SRCREV = "a3cf93b66f4606a46354cf884d24aa966661f848"
+SRCREV = "517c0b01e47d4441cc45be351509fb4c96843d5a"
SRC_URI = "git://github.com/westerndigitalcorporation/ufs-utils.git;protocol=git;branch=${BRANCH} \
- file://0001-Replace-u_intXX_t-with-kernel-typedefs.patch \
+ file://0001-Use-asm-type.h-for-kernel-types.patch \
"
UPSTREAM_CHECK_COMMITS = "1"
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.5.3.bb b/meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.5.5.bb
index 30224c202..75b66d923 100644
--- a/meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.5.3.bb
+++ b/meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.5.5.bb
@@ -7,8 +7,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
SRC_URI = "http://www.gnu.org/software/${BPN}/${BPN}-${PV}.tar.gz"
-SRC_URI[md5sum] = "d6b16763a2ca23eec718cfac1761b40f"
-SRC_URI[sha256sum] = "97a9c9831fa1b053f781f74a17b79327e7402c6163f5c7973453ba881616aeb4"
+SRC_URI[md5sum] = "a5e3dc4e0b92be6837f9ed6cbf7f9df5"
+SRC_URI[sha256sum] = "91663d61bee61ff790b3f6861fdf57c54af0e238ab14f297b55bae8ab5d17684"
PACKAGECONFIG ??= "acl attr zlib bzip2 readline"
PACKAGECONFIG[acl] = "--enable-libacl,--disable-libacl,acl,"
diff --git a/meta-openembedded/meta-gnome/conf/layer.conf b/meta-openembedded/meta-gnome/conf/layer.conf
index 5e92cdbd7..ba2d59948 100644
--- a/meta-openembedded/meta-gnome/conf/layer.conf
+++ b/meta-openembedded/meta-gnome/conf/layer.conf
@@ -17,7 +17,7 @@ LAYERVERSION_gnome-layer = "1"
LAYERDEPENDS_gnome-layer = "core openembedded-layer networking-layer"
-LAYERSERIES_COMPAT_gnome-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_gnome-layer = " hardknott"
SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += "\
faenza-icon-theme->gdk-pixbuf \
diff --git a/meta-openembedded/meta-gnome/recipes-connectivity/libnma/libnma_1.8.30.bb b/meta-openembedded/meta-gnome/recipes-connectivity/libnma/libnma_1.8.30.bb
index 3f3cb90b7..c0a7dd63d 100644
--- a/meta-openembedded/meta-gnome/recipes-connectivity/libnma/libnma_1.8.30.bb
+++ b/meta-openembedded/meta-gnome/recipes-connectivity/libnma/libnma_1.8.30.bb
@@ -20,7 +20,8 @@ PACKAGECONFIG[mobile_broadband_provider_info] = "-Dmobile_broadband_provider_inf
# go introspection is not supported for mipsn32/riscv32, but vapi needs it
#
-EXTRA_OEMESON_mipsarchn32_append = " -Dvapi=false"
-EXTRA_OEMESON_riscv32_append = " -Dvapi=false"
+EXTRA_OEMESON_append_mipsarchn32 = " -Dvapi=false"
+EXTRA_OEMESON_append_riscv32 = " -Dvapi=false"
+EXTRA_OEMESON_append_powerpc64le = " -Dvapi=false"
GTKDOC_MESON_OPTION = "gtk_doc"
diff --git a/meta-openembedded/meta-gnome/recipes-gimp/gimp/gimp_2.10.22.bb b/meta-openembedded/meta-gnome/recipes-gimp/gimp/gimp_2.10.22.bb
index 2d75d6011..aa5112add 100644
--- a/meta-openembedded/meta-gnome/recipes-gimp/gimp/gimp_2.10.22.bb
+++ b/meta-openembedded/meta-gnome/recipes-gimp/gimp/gimp_2.10.22.bb
@@ -54,6 +54,7 @@ EXTRA_OECONF = "--disable-python \
--without-wmf"
EXTRA_OECONF_append_libc-musl_mipsarch = " --disable-vector-icons"
+EXTRA_OECONF_append_libc-musl_riscv32 = " --disable-vector-icons"
EXTRA_OECONF_append_arm = " --disable-vector-icons"
do_configure_append() {
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor/0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch b/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor/0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch
new file mode 100644
index 000000000..7c83ae339
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor/0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch
@@ -0,0 +1,522 @@
+From ba4a39b74067b73c9bed64dad7be3d53e837dd8d Mon Sep 17 00:00:00 2001
+From: Rico Tzschichholz <ricotz@ubuntu.com>
+Date: Sat, 16 Jan 2021 13:26:32 +0100
+Subject: [PATCH] Don't alter or try to write GtkChild fields
+
+See https://gitlab.gnome.org/GNOME/vala/issues/1121
+
+Upstream-Status: Backport [https://github.com/GNOME/dconf-editor/commit/9272e9fb6867e71426bfd0aa5edce5ec39cf0ad4]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ editor/bookmarks-headerbar.vala | 4 +--
+ editor/bookmarks-list.vala | 4 +--
+ editor/bookmarks.vala | 12 +++----
+ editor/delayed-setting-view.vala | 54 ++++++++++++++++----------------
+ editor/overlayed-list.vala | 38 +++++++++++-----------
+ editor/pathentry.vala | 24 +++++++-------
+ editor/registry-list.vala | 6 ++--
+ editor/registry-search.vala | 6 ++--
+ editor/registry-view.vala | 2 +-
+ 9 files changed, 75 insertions(+), 75 deletions(-)
+
+diff --git a/editor/bookmarks-headerbar.vala b/editor/bookmarks-headerbar.vala
+index 54848a5..0522c37 100644
+--- a/editor/bookmarks-headerbar.vala
++++ b/editor/bookmarks-headerbar.vala
+@@ -24,7 +24,7 @@ private abstract class BookmarksHeaderBar : BrowserHeaderBar, AdaptativeWidget
+ install_action_entries ();
+
+ add_bookmarks_revealer (out bookmarks_revealer,
+- out bookmarks_button, ref center_box);
++ out bookmarks_button, center_box);
+ connect_bookmarks_signals ();
+ add_bookmarks_controller (out bookmarks_controller, ref this);
+
+@@ -58,7 +58,7 @@ private abstract class BookmarksHeaderBar : BrowserHeaderBar, AdaptativeWidget
+ private Bookmarks bookmarks_button;
+ private BookmarksController bookmarks_controller;
+
+- private static void add_bookmarks_revealer (out Revealer bookmarks_revealer, out Bookmarks bookmarks_button, ref Box center_box)
++ private static void add_bookmarks_revealer (out Revealer bookmarks_revealer, out Bookmarks bookmarks_button, Box center_box)
+ {
+ bookmarks_revealer = new Revealer ();
+ bookmarks_revealer.transition_type = RevealerTransitionType.SLIDE_LEFT;
+diff --git a/editor/bookmarks-list.vala b/editor/bookmarks-list.vala
+index 393973b..c9280d5 100644
+--- a/editor/bookmarks-list.vala
++++ b/editor/bookmarks-list.vala
+@@ -146,10 +146,10 @@ private class BookmarksList : OverlayedList
+
+ internal bool create_bookmark_rows (Variant bookmarks_variant)
+ {
+- _create_bookmark_rows (bookmarks_variant, view_mode, ref main_list_store, ref main_list_box, ref bookmarks_hashtable);
++ _create_bookmark_rows (bookmarks_variant, view_mode, ref main_list_store, main_list_box, ref bookmarks_hashtable);
+ return n_items == 0;
+ }
+- private static void _create_bookmark_rows (Variant bookmarks_variant, bool view_mode, ref GLib.ListStore main_list_store, ref ListBox main_list_box, ref HashTable<string, Bookmark> bookmarks_hashtable)
++ private static void _create_bookmark_rows (Variant bookmarks_variant, bool view_mode, ref GLib.ListStore main_list_store, ListBox main_list_box, ref HashTable<string, Bookmark> bookmarks_hashtable)
+ {
+ string saved_bookmark_name = "";
+ ListBoxRow? selected_row = main_list_box.get_selected_row ();
+diff --git a/editor/bookmarks.vala b/editor/bookmarks.vala
+index 153af10..d8cea7c 100644
+--- a/editor/bookmarks.vala
++++ b/editor/bookmarks.vala
+@@ -84,7 +84,7 @@ private class Bookmarks : MenuButton
+
+ construct
+ {
+- update_switch_label (ViewType.SEARCH, ViewType.FOLDER, ref switch_label); // init text with "Bookmark this Location"
++ update_switch_label (ViewType.SEARCH, ViewType.FOLDER, switch_label); // init text with "Bookmark this Location"
+
+ install_action_entries ();
+
+@@ -184,7 +184,7 @@ private class Bookmarks : MenuButton
+
+ internal void set_path (ViewType type, string path)
+ {
+- update_switch_label (current_type, type, ref switch_label);
++ update_switch_label (current_type, type, switch_label);
+
+ current_path = path;
+ current_type = type;
+@@ -392,7 +392,7 @@ private class Bookmarks : MenuButton
+ * * Bookmarks management
+ \*/
+
+- private static void update_switch_label (ViewType old_type, ViewType new_type, ref Label switch_label)
++ private static void update_switch_label (ViewType old_type, ViewType new_type, Label switch_label)
+ {
+ if (new_type == ViewType.SEARCH && old_type != ViewType.SEARCH)
+ switch_label.label = bookmark_this_search_text;
+@@ -414,18 +414,18 @@ private class Bookmarks : MenuButton
+ {
+ if (bookmarks_icon.icon_name != "starred-symbolic")
+ bookmarks_icon.icon_name = "starred-symbolic";
+- update_switch_state (true, ref bookmarked_switch);
++ update_switch_state (true, bookmarked_switch);
+ bookmarked_switch.set_detailed_action_name ("bookmarks.unbookmark(" + variant.print (true) + ")");
+ }
+ else
+ {
+ if (bookmarks_icon.icon_name != "non-starred-symbolic")
+ bookmarks_icon.icon_name = "non-starred-symbolic";
+- update_switch_state (false, ref bookmarked_switch);
++ update_switch_state (false, bookmarked_switch);
+ bookmarked_switch.set_detailed_action_name ("bookmarks.bookmark(" + variant.print (true) + ")");
+ }
+ }
+- private static void update_switch_state (bool bookmarked, ref Switch bookmarked_switch)
++ private static void update_switch_state (bool bookmarked, Switch bookmarked_switch)
+ {
+ if (bookmarked == bookmarked_switch.active)
+ return;
+diff --git a/editor/delayed-setting-view.vala b/editor/delayed-setting-view.vala
+index add6852..b1f774c 100644
+--- a/editor/delayed-setting-view.vala
++++ b/editor/delayed-setting-view.vala
+@@ -41,24 +41,24 @@ private class DelayedSettingView : OverlayedListRow
+ {
+ // at row creation, key is never ghost
+ _update_dconf_key_current_value (key_value,
+- ref key_value_label,
+- ref key_value_default);
++ key_value_label,
++ key_value_default);
+
+ _update_dconf_key_planned_value (cool_planned_value,
+- ref planned_value_label,
+- ref planned_value_default);
++ planned_value_label,
++ planned_value_default);
+ }
+ else
+ {
+ _update_gsettings_key_current_value (key_value,
+ has_schema_and_is_default,
+- ref key_value_label,
+- ref key_value_default);
++ key_value_label,
++ key_value_default);
+
+ _update_gsettings_key_planned_value (cool_planned_value,
+ (!) cool_default_value,
+- ref planned_value_label,
+- ref planned_value_default);
++ planned_value_label,
++ planned_value_default);
+ }
+ }
+
+@@ -74,23 +74,23 @@ private class DelayedSettingView : OverlayedListRow
+
+ private static inline void _update_gsettings_key_planned_value (string? cool_planned_value,
+ string cool_default_value,
+- ref Label planned_value_label,
+- ref Label planned_value_default)
++ Label planned_value_label,
++ Label planned_value_default)
+ {
+ bool is_default = cool_planned_value == null;
+ planned_value_label.label = is_default ? cool_default_value : (!) cool_planned_value;
+- update_value_default_label (is_default, ref planned_value_default);
++ update_value_default_label (is_default, planned_value_default);
+ }
+
+ private static inline void _update_dconf_key_planned_value (string? cool_planned_value,
+- ref Label planned_value_label,
+- ref Label planned_value_default)
++ Label planned_value_label,
++ Label planned_value_default)
+ {
+ if (cool_planned_value == null)
+- update_labels_dconf_key_erased (ref planned_value_label, ref planned_value_default);
++ update_labels_dconf_key_erased (planned_value_label, planned_value_default);
+ else
+ update_labels_dconf_key_values ((!) cool_planned_value,
+- ref planned_value_label, ref planned_value_default);
++ planned_value_label, planned_value_default);
+ }
+
+ /*\
+@@ -99,37 +99,37 @@ private class DelayedSettingView : OverlayedListRow
+
+ internal void update_gsettings_key_current_value (Variant key_value, bool is_default)
+ {
+- _update_gsettings_key_current_value (key_value, is_default, ref key_value_label, ref key_value_default);
++ _update_gsettings_key_current_value (key_value, is_default, key_value_label, key_value_default);
+ }
+ private static void _update_gsettings_key_current_value (Variant key_value,
+ bool is_default,
+- ref Label key_value_label,
+- ref Label key_value_default)
++ Label key_value_label,
++ Label key_value_default)
+ {
+ key_value_label.label = Key.cool_text_value_from_variant (key_value);
+- update_value_default_label (is_default, ref key_value_default);
++ update_value_default_label (is_default, key_value_default);
+ }
+
+ internal void update_dconf_key_current_value (Variant? key_value_or_null)
+ {
+- _update_dconf_key_current_value (key_value_or_null, ref key_value_label, ref key_value_default);
++ _update_dconf_key_current_value (key_value_or_null, key_value_label, key_value_default);
+ }
+ private static void _update_dconf_key_current_value (Variant? key_value_or_null,
+- ref Label key_value_label,
+- ref Label key_value_default)
++ Label key_value_label,
++ Label key_value_default)
+ {
+ if (key_value_or_null == null)
+- update_labels_dconf_key_erased (ref key_value_label, ref key_value_default);
++ update_labels_dconf_key_erased (key_value_label, key_value_default);
+ else
+ update_labels_dconf_key_values (Key.cool_text_value_from_variant ((!) key_value_or_null),
+- ref key_value_label, ref key_value_default);
++ key_value_label, key_value_default);
+ }
+
+ /*\
+ * * common utilities
+ \*/
+
+- private static void update_labels_dconf_key_erased (ref Label value_label, ref Label value_default)
++ private static void update_labels_dconf_key_erased (Label value_label, Label value_default)
+ {
+ value_label.visible = false;
+ /* Translators: displayed in the list of pending changes (could be an in-window panel, or in the popover of the bottom bar); for dconf keys */
+@@ -137,14 +137,14 @@ private class DelayedSettingView : OverlayedListRow
+ value_default.visible = true;
+ }
+
+- private static void update_labels_dconf_key_values (string key_value, ref Label value_label, ref Label value_default)
++ private static void update_labels_dconf_key_values (string key_value, Label value_label, Label value_default)
+ {
+ value_default.visible = false;
+ value_label.label = key_value; // TODO move Key.cool_text_value_from_variant here?
+ value_label.visible = true;
+ }
+
+- private static void update_value_default_label (bool is_default, ref Label value_default)
++ private static void update_value_default_label (bool is_default, Label value_default)
+ {
+ if (is_default)
+ /* Translators: displayed in the list of pending changes (could be an in-window panel, or in the popover of the bottom bar); for gsettings keys */
+diff --git a/editor/overlayed-list.vala b/editor/overlayed-list.vala
+index 8b0ec51..bcdfc3a 100644
+--- a/editor/overlayed-list.vala
++++ b/editor/overlayed-list.vala
+@@ -89,11 +89,11 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ internal void set_window_size (AdaptativeWidget.WindowSize new_size)
+ {
+ if (!AdaptativeWidget.WindowSize.is_extra_thin (new_size) && AdaptativeWidget.WindowSize.is_extra_flat (new_size))
+- set_horizontal (ref main_context, ref edit_mode_box);
++ set_horizontal (ref main_context, edit_mode_box);
+ else
+- set_vertical (ref main_context, ref edit_mode_box);
++ set_vertical (ref main_context, edit_mode_box);
+ }
+- private static inline void set_horizontal (ref StyleContext main_context, ref Box edit_mode_box)
++ private static inline void set_horizontal (ref StyleContext main_context, Box edit_mode_box)
+ {
+ main_context.remove_class ("vertical");
+ edit_mode_box.halign = Align.END;
+@@ -102,7 +102,7 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ edit_mode_box.width_request = 160;
+ main_context.add_class ("horizontal");
+ }
+- private static inline void set_vertical (ref StyleContext main_context, ref Box edit_mode_box)
++ private static inline void set_vertical (ref StyleContext main_context, Box edit_mode_box)
+ {
+ main_context.remove_class ("horizontal");
+ edit_mode_box.halign = Align.CENTER;
+@@ -118,9 +118,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ internal bool next_match ()
+ {
+- return _next_match (ref main_list_box);
++ return _next_match (main_list_box);
+ }
+- private static inline bool _next_match (ref ListBox main_list_box)
++ private static inline bool _next_match (ListBox main_list_box)
+ {
+ ListBoxRow? row = main_list_box.get_selected_row (); // TODO multiple rows and focus-only lists
+ if (row == null)
+@@ -130,7 +130,7 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ if (row == null)
+ {
+- _scroll_bottom (ref main_list_box);
++ _scroll_bottom (main_list_box);
+ return false;
+ }
+ main_list_box.select_row ((!) row);
+@@ -140,9 +140,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ internal bool previous_match ()
+ {
+- return _previous_match (ref main_list_box);
++ return _previous_match (main_list_box);
+ }
+- private static inline bool _previous_match (ref ListBox main_list_box)
++ private static inline bool _previous_match (ListBox main_list_box)
+ {
+ uint n_items = main_list_box.get_children ().length (); // FIXME OverlayedList.n_items is unreliable
+ if (n_items == 0)
+@@ -189,9 +189,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ protected int [] get_selected_rows_indices ()
+ {
+- return _get_selected_rows_indices (ref main_list_box);
++ return _get_selected_rows_indices (main_list_box);
+ }
+- private static inline int [] _get_selected_rows_indices (ref ListBox main_list_box)
++ private static inline int [] _get_selected_rows_indices (ListBox main_list_box)
+ {
+ int [] indices = new int [0];
+ main_list_box.selected_foreach ((_list_box, selected_row) => {
+@@ -205,9 +205,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ protected void scroll_top ()
+ {
+- _scroll_top (ref main_list_box);
++ _scroll_top (main_list_box);
+ }
+- private static inline void _scroll_top (ref ListBox main_list_box)
++ private static inline void _scroll_top (ListBox main_list_box)
+ {
+ Adjustment adjustment = main_list_box.get_adjustment ();
+ adjustment.set_value (adjustment.get_lower ());
+@@ -215,9 +215,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ protected void scroll_bottom ()
+ {
+- _scroll_bottom (ref main_list_box);
++ _scroll_bottom (main_list_box);
+ }
+- private static inline void _scroll_bottom (ref ListBox main_list_box)
++ private static inline void _scroll_bottom (ListBox main_list_box)
+ {
+ Adjustment adjustment = main_list_box.get_adjustment ();
+ adjustment.set_value (adjustment.get_upper ());
+@@ -225,9 +225,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ internal bool handle_copy_text (out string copy_text)
+ {
+- return _handle_copy_text (out copy_text, ref main_list_box);
++ return _handle_copy_text (out copy_text, main_list_box);
+ }
+- private static inline bool _handle_copy_text (out string copy_text, ref ListBox main_list_box)
++ private static inline bool _handle_copy_text (out string copy_text, ListBox main_list_box)
+ {
+ List<weak ListBoxRow> selected_rows = main_list_box.get_selected_rows ();
+ OverlayedListRow row;
+@@ -283,9 +283,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ internal SelectionState get_selection_state ()
+ {
+- return _get_selection_state (ref main_list_box, ref main_list_store);
++ return _get_selection_state (main_list_box, ref main_list_store);
+ }
+- private static inline SelectionState _get_selection_state (ref ListBox main_list_box, ref GLib.ListStore main_list_store)
++ private static inline SelectionState _get_selection_state (ListBox main_list_box, ref GLib.ListStore main_list_store)
+ {
+ List<weak ListBoxRow> selected_rows = main_list_box.get_selected_rows ();
+ uint n_selected_rows = selected_rows.length ();
+diff --git a/editor/pathentry.vala b/editor/pathentry.vala
+index 5000b21..5c7efc5 100644
+--- a/editor/pathentry.vala
++++ b/editor/pathentry.vala
+@@ -133,9 +133,9 @@ private class PathEntry : Box, AdaptativeWidget
+
+ internal void entry_grab_focus_without_selecting ()
+ {
+- _entry_grab_focus_without_selecting (ref search_entry);
++ _entry_grab_focus_without_selecting (search_entry);
+ }
+- private static void _entry_grab_focus_without_selecting (ref BrowserEntry search_entry)
++ private static void _entry_grab_focus_without_selecting (BrowserEntry search_entry)
+ {
+ if (search_entry.text_length != 0)
+ {
+@@ -172,36 +172,36 @@ private class PathEntry : Box, AdaptativeWidget
+ requires (search_changed_handler != 0)
+ {
+ SignalHandler.block (search_entry, search_changed_handler);
+- _prepare (mode, nullable_search, ref current_path, ref search_entry);
++ _prepare (mode, nullable_search, ref current_path, search_entry);
+ SignalHandler.unblock (search_entry, search_changed_handler);
+ }
+
+ private static inline void _prepare (SearchMode mode,
+ string? nullable_search,
+ ref string current_path,
+- ref BrowserEntry search_entry)
++ BrowserEntry search_entry)
+ {
+ string search;
+ switch (mode)
+ {
+ case SearchMode.EDIT_PATH_MOVE_END:
+ search = nullable_search == null ? current_path : (!) nullable_search;
+- _prepare_move_end (ref search, ref search_entry);
++ _prepare_move_end (ref search, search_entry);
+ return;
+
+ case SearchMode.EDIT_PATH_SELECT_ALL:
+ search = nullable_search == null ? current_path : (!) nullable_search;
+- _prepare_search (ref search, ref search_entry);
++ _prepare_search (ref search, search_entry);
+ return;
+
+ case SearchMode.EDIT_PATH_SELECT_LAST_WORD:
+ search = current_path;
+- _prepare_select_last_word (ref search, ref search_entry);
++ _prepare_select_last_word (ref search, search_entry);
+ return;
+
+ case SearchMode.SEARCH:
+ search = "";
+- _prepare_search (ref search, ref search_entry);
++ _prepare_search (ref search, search_entry);
+ return;
+
+ case SearchMode.UNCLEAR:
+@@ -210,19 +210,19 @@ private class PathEntry : Box, AdaptativeWidget
+ }
+ }
+
+- private static inline void _prepare_move_end (ref string text, ref BrowserEntry search_entry)
++ private static inline void _prepare_move_end (ref string text, BrowserEntry search_entry)
+ {
+ search_entry.text = text;
+- _entry_grab_focus_without_selecting (ref search_entry);
++ _entry_grab_focus_without_selecting (search_entry);
+ }
+
+- private static inline void _prepare_search (ref string text, ref BrowserEntry search_entry)
++ private static inline void _prepare_search (ref string text, BrowserEntry search_entry)
+ {
+ search_entry.text = text;
+ search_entry.grab_focus ();
+ }
+
+- private static inline void _prepare_select_last_word (ref string current_path, ref BrowserEntry search_entry)
++ private static inline void _prepare_select_last_word (ref string current_path, BrowserEntry search_entry)
+ {
+ search_entry.move_cursor (MovementStep.DISPLAY_LINE_ENDS, -1, false);
+ search_entry.text = current_path;
+diff --git a/editor/registry-list.vala b/editor/registry-list.vala
+index 74b7f99..54aa6fa 100644
+--- a/editor/registry-list.vala
++++ b/editor/registry-list.vala
+@@ -291,9 +291,9 @@ private abstract class RegistryList : Grid, BrowsableView, AdaptativeWidget
+
+ internal bool handle_copy_text (out string copy_text) // can compile with "private", but is public 1/2
+ {
+- return _handle_copy_text (out copy_text, ref key_list_box);
++ return _handle_copy_text (out copy_text, key_list_box);
+ }
+- private bool _handle_copy_text (out string copy_text, ref ListBox key_list_box)
++ private bool _handle_copy_text (out string copy_text, ListBox key_list_box)
+ {
+ ListBoxRow? selected_row = (ListBoxRow?) key_list_box.get_selected_row ();
+ if (selected_row == null)
+@@ -1138,7 +1138,7 @@ private abstract class RegistryList : Grid, BrowsableView, AdaptativeWidget
+ * * headers
+ \*/
+
+- protected static bool is_first_row (int row_index, ref unowned ListBoxRow? before)
++ protected static bool is_first_row (int row_index, ListBoxRow? before)
+ {
+ bool is_first_row = row_index == 0;
+ if (is_first_row != (before == null))
+diff --git a/editor/registry-search.vala b/editor/registry-search.vala
+index 220583f..eb8e6f2 100644
+--- a/editor/registry-search.vala
++++ b/editor/registry-search.vala
+@@ -48,7 +48,7 @@ private class RegistrySearch : RegistryList
+
+ internal bool handle_alt_copy_text (out string copy_text)
+ {
+- return _handle_alt_copy_text (out copy_text, ref key_list_box);
++ return _handle_alt_copy_text (out copy_text, key_list_box);
+ }
+
+ internal void clean ()
+@@ -145,7 +145,7 @@ private class RegistrySearch : RegistryList
+ * * Keyboard calls
+ \*/
+
+- private static bool _handle_alt_copy_text (out string copy_text, ref ListBox key_list_box)
++ private static bool _handle_alt_copy_text (out string copy_text, ListBox key_list_box)
+ {
+ ListBoxRow? selected_row = key_list_box.get_selected_row ();
+ if (selected_row == null)
+@@ -521,7 +521,7 @@ private class RegistrySearch : RegistryList
+ private void update_row_header (ListBoxRow row, ListBoxRow? before)
+ {
+ int row_index = row.get_index ();
+- if (is_first_row (row_index, ref before))
++ if (is_first_row (row_index, before))
+ return;
+
+ if (search_is_path_search)
+diff --git a/editor/registry-view.vala b/editor/registry-view.vala
+index e0ff379..7d9eb1f 100644
+--- a/editor/registry-view.vala
++++ b/editor/registry-view.vala
+@@ -114,7 +114,7 @@ private class RegistryView : RegistryList
+
+ private void update_row_header (ListBoxRow row, ListBoxRow? before)
+ {
+- if (is_first_row (row.get_index (), ref before))
++ if (is_first_row (row.get_index (), before))
+ return;
+ update_row_header_with_context (row, (!) before, modifications_handler.model, /* local search header */ false);
+ }
+--
+2.30.1
+
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor_3.38.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor_3.38.2.bb
index 02e604f0c..776558ebf 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor_3.38.2.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor_3.38.2.bb
@@ -8,6 +8,8 @@ DEPENDS = "dconf gtk+3"
inherit gnomebase vala gettext gsettings bash-completion
+SRC_URI += "file://0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch"
+
SRC_URI[archive.sha256sum] = "1253dad87e6213fbf313ff9ec9dc4358aa1b10261f28072c1dc0e0997b92f835"
FILES_${PN} += " \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0001-maint-Avoid-g_once_init_enter-error-in-GCC-11.patch b/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0001-maint-Avoid-g_once_init_enter-error-in-GCC-11.patch
new file mode 100644
index 000000000..6343a24a2
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0001-maint-Avoid-g_once_init_enter-error-in-GCC-11.patch
@@ -0,0 +1,77 @@
+From dae0055be61937fe70252f3f4ee09b355aba2b8f Mon Sep 17 00:00:00 2001
+From: Philip Chimento <philip.chimento@gmail.com>
+Date: Sun, 14 Feb 2021 12:20:09 -0800
+Subject: [PATCH] maint: Avoid g_once_init_enter error in GCC 11
+
+On platforms where g_once_init_enter() is defined to use C11 atomic
+builtins, passing a pointer to a volatile value is an error in GCC 11 and
+later, in C++.
+
+More info about the GCC change:
+https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95378
+https://gcc.gnu.org/pipermail/gcc-patches/2020-June/548283.html
+
+However, it's my understanding that in modern C++ there is no longer a
+need to guard the initialization of these variables. Since C++11, static
+local variables in a function are guaranteed to be initialized only once,
+the first time control passes through that function. So we can just remove
+the g_once_init_enter guard.
+
+More info:
+https://en.cppreference.com/w/cpp/language/storage_duration#Static_local_variables
+
+Stack Overflow answers with quotations from the C++ standard:
+https://stackoverflow.com/a/58804/172999
+https://stackoverflow.com/a/8102145/172999
+
+Closes: #376
+---
+ gjs/error-types.cpp | 32 +++++++++++++-------------------
+ 1 file changed, 13 insertions(+), 19 deletions(-)
+
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gjs/-/commit/f02eaf3a9d3465915eb849428c2d9615e2184a4c]
+diff --git a/gjs/error-types.cpp b/gjs/error-types.cpp
+index 86cb878..5eba61b 100644
+--- a/gjs/error-types.cpp
++++ b/gjs/error-types.cpp
+@@ -31,24 +31,18 @@ G_DEFINE_QUARK(gjs-js-error-quark, gjs_js_error)
+ // clang-format on
+
+ GType gjs_js_error_get_type(void) {
+- static volatile GType g_type_id;
+-
+- if (g_once_init_enter(&g_type_id)) {
+- static GEnumValue errors[] = {
+- { GJS_JS_ERROR_ERROR, "Error", "error" },
+- { GJS_JS_ERROR_EVAL_ERROR, "EvalError", "eval-error" },
+- { GJS_JS_ERROR_INTERNAL_ERROR, "InternalError", "internal-error" },
+- { GJS_JS_ERROR_RANGE_ERROR, "RangeError", "range-error" },
+- { GJS_JS_ERROR_REFERENCE_ERROR, "ReferenceError", "reference-error" },
+- { GJS_JS_ERROR_STOP_ITERATION, "StopIteration", "stop-iteration" },
+- { GJS_JS_ERROR_SYNTAX_ERROR, "SyntaxError", "syntax-error" },
+- { GJS_JS_ERROR_TYPE_ERROR, "TypeError", "type-error" },
+- { GJS_JS_ERROR_URI_ERROR, "URIError", "uri-error" },
+- { 0, nullptr, nullptr }
+- };
+-
+- g_type_id = g_enum_register_static("GjsJSError", errors);
+- }
+-
++ static const GEnumValue errors[] = {
++ {GJS_JS_ERROR_ERROR, "Error", "error"},
++ {GJS_JS_ERROR_EVAL_ERROR, "EvalError", "eval-error"},
++ {GJS_JS_ERROR_INTERNAL_ERROR, "InternalError", "internal-error"},
++ {GJS_JS_ERROR_RANGE_ERROR, "RangeError", "range-error"},
++ {GJS_JS_ERROR_REFERENCE_ERROR, "ReferenceError", "reference-error"},
++ {GJS_JS_ERROR_STOP_ITERATION, "StopIteration", "stop-iteration"},
++ {GJS_JS_ERROR_SYNTAX_ERROR, "SyntaxError", "syntax-error"},
++ {GJS_JS_ERROR_TYPE_ERROR, "TypeError", "type-error"},
++ {GJS_JS_ERROR_URI_ERROR, "URIError", "uri-error"},
++ {0, nullptr, nullptr}};
++ // Initialization of static local variable guaranteed only once in C++11
++ static GType g_type_id = g_enum_register_static("GjsJSError", errors);
+ return g_type_id;
+ }
+--
+2.31.1
+
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs_1.58.8.bb b/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs_1.58.8.bb
index dbb04ef8e..678ba9c4c 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs_1.58.8.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs_1.58.8.bb
@@ -12,7 +12,9 @@ DEPENDS = "mozjs gtk+3"
inherit gnomebase gsettings gobject-introspection vala gettext features_check upstream-version-is-even
SRC_URI[archive.sha256sum] = "7fb3eb746c17363d9ee47f4a5d0bb048f0075611763eb0da11d85e0e57aff381"
-SRC_URI += "file://0001-Disable-tests-on-host.patch"
+SRC_URI += "file://0001-Disable-tests-on-host.patch \
+ file://0001-maint-Avoid-g_once_init_enter-error-in-GCC-11.patch \
+"
# gobject-introspection is mandatory and cannot be configured
REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.2.4.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.3.1.bb
index afeda3e93..5e833a91a 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.2.4.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.3.1.bb
@@ -9,8 +9,8 @@ DEPENDS = " \
inherit gnomebase gobject-introspection gtk-doc vala
-SRC_URI[archive.md5sum] = "36ab263f477eeee3c95c9381766eb3c2"
-SRC_URI[archive.sha256sum] = "0a34c377f8841abbf4c29bc848b301fbd8e4e20c03d7318c777c58432033657a"
+SRC_URI[archive.md5sum] = "3149496d0189623a8e1289bbab4d8385"
+SRC_URI[archive.sha256sum] = "0e78713e6f0de339fdee16bab82753ae290fe80fa7b4ba6e3db8c1465b81d0f8"
do_compile_prepend() {
export GIR_EXTRA_LIBS_PATH="${B}/gnome-autoar/.libs"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_3.36.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_3.36.0.bb
index 8f318bb15..3fc16bb0a 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_3.36.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_3.36.0.bb
@@ -43,10 +43,8 @@ FILES_${PN} += " \
${base_libdir}/security/*${SOLIBSDEV} \
${libdir}/pkcs11/gnome-keyring-pkcs11.so \
"
-
# fix | gnome-keyring-daemon: insufficient process capabilities, unsecure memory might get used
-# This does not make it through pseudo so perform on-target - sigh
-pkg_postinst_ontarget_${PN} () {
- setcap cap_ipc_lock+ep `which gnome-keyring-daemon`
+pkg_postinst_${PN} () {
+ setcap cap_ipc_lock+ep $D/${bindir}/gnome-keyring-daemon
}
-RDEPENDS_${PN} += "libcap-bin"
+PACKAGE_WRITE_DEPS += "libcap-native"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.36.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.36.1.bb
index e14891a23..a532ae749 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.36.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.36.1.bb
@@ -29,15 +29,6 @@ SRC_URI[archive.sha256sum] = "3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec6
UNKNOWN_CONFIGURE_WHITELIST = "introspection"
-# allow cross build mixed with build of native tools
-do_write_config_append() {
- cat >${WORKDIR}/meson.native <<EOF
-[binaries]
-pkgconfig = 'pkg-config-native'
-EOF
-}
-EXTRA_OEMESON = "--native-file ${WORKDIR}/meson.native"
-
PACKAGECONFIG ??= " \
cups nm \
alsa gudev \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound/0001-Set-vapidir.patch b/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound/0001-Set-vapidir.patch
new file mode 100644
index 000000000..ffccfd56f
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound/0001-Set-vapidir.patch
@@ -0,0 +1,28 @@
+From 0a790273aca3ba07dfa6d2f61e3aaa7157c1a3bb Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 20 Mar 2021 09:22:18 -0700
+Subject: [PATCH] Set vapidir
+
+Use parentheses instead of braces, it makes automake and perl happy
+newer perl does not like ${} for VALAFLAGS
+
+Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.30), passed through in regex; marked by <-- HERE in m/^${ <-- HERE abs_top_builddir}/gsound$/ at TOPDIR/build/tmp/work/mips32r2-yoe-linux/gsound/1.0.2-r0/recipe-sysroot-native/usr/bin/automake line 5759.
+autoreconf: error: automake failed with exit status: 255
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tools/Makefile.am | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/tools/Makefile.am
++++ b/tools/Makefile.am
+@@ -8,7 +8,7 @@ bin_PROGRAMS = gsound-play
+ gsound_play_SOURCES = gsound-play.vala
+
+ gsound_play_VALAFLAGS = \
+- --vapidir ${abs_top_builddir}/gsound \
++ --vapidir $(abs_top_builddir)/gsound \
+ --pkg gsound \
+ ${NULL}
+
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.2.bb
index e4478e14a..65ee1e1c1 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.2.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.2.bb
@@ -9,5 +9,7 @@ DEPENDS = " \
inherit gnomebase gettext gobject-introspection vala
+SRC_URI += "file://0001-Set-vapidir.patch"
+
SRC_URI[archive.md5sum] = "c26fd21c21b9ef6533a202a73fab21db"
SRC_URI[archive.sha256sum] = "bba8ff30eea815037e53bee727bbd5f0b6a2e74d452a7711b819a7c444e78e53"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_2.3.5.bb b/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_2.3.5.bb
index 097bcdb6f..07fa10a0e 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_2.3.5.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_2.3.5.bb
@@ -23,7 +23,7 @@ REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
UNKNOWN_CONFIGURE_WHITELIST_append = " introspection"
PACKAGECONFIG ??= " \
- ffmpeg \
+ ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "ffmpeg", "", d)} \
flac \
gexiv2 \
gstreamer \
diff --git a/meta-openembedded/meta-initramfs/conf/layer.conf b/meta-openembedded/meta-initramfs/conf/layer.conf
index 92df5794d..d1d669373 100644
--- a/meta-openembedded/meta-initramfs/conf/layer.conf
+++ b/meta-openembedded/meta-initramfs/conf/layer.conf
@@ -16,7 +16,7 @@ BBFILE_PATTERN_meta-initramfs := "^${LAYERDIR}/"
BBFILE_PRIORITY_meta-initramfs = "8"
LAYERDEPENDS_meta-initramfs = "core"
-LAYERSERIES_COMPAT_meta-initramfs = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_meta-initramfs = " hardknott"
SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
dracut->virtual/kernel \
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb
index c49b24f52..656162fb1 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb
@@ -10,7 +10,7 @@ PV = "2.0.18+git${SRCPV}"
DEPENDS = "zlib xz"
-inherit klibc autotools
+inherit klibc autotools siteinfo
SRC_URI = "git://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git"
SRCREV = "5750980cdbbc33ef75bfba6660295b932376ce15"
@@ -66,17 +66,8 @@ EXTRA_OECONF += "--without-zlib --without-lzma --without-xen"
# fix purgatory/printf.c:2:10: fatal error: limits.h: No such file or directory
# fix include/limits.h:42:10: fatal error: bitsize/limits.h: No such file or directory
-COMMON_CFLAGS += "-O2 -I${STAGING_DIR_HOST}${libdir}/klibc/include -I${S}/purgatory/include"
-CFLAGS_x86_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits32"
-CFLAGS_x86-64_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits64"
-CFLAGS_arm_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits32"
-CFLAGS_aarch64_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits64"
-CFLAGS_mips_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits32"
-CFLAGS_mipsel_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits32"
-CFLAGS_mips64_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits64"
-CFLAGS_mips64el_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits64"
-CFLAGS_powerpc_append = " ${COMMON_CFLAGS} -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits32"
-
+CFLAGS += "-O2 -I${STAGING_DIR_HOST}${libdir}/klibc/include -I${S}/purgatory/include \
+ -I${STAGING_DIR_HOST}${libdir}/klibc/include/bits${SITEINFO_BITS}"
do_compile_prepend() {
# Remove the prepackaged config.h from the source tree as it overrides
diff --git a/meta-openembedded/meta-multimedia/conf/layer.conf b/meta-openembedded/meta-multimedia/conf/layer.conf
index a27b97de0..6d3de7c11 100644
--- a/meta-openembedded/meta-multimedia/conf/layer.conf
+++ b/meta-openembedded/meta-multimedia/conf/layer.conf
@@ -31,4 +31,4 @@ LAYERVERSION_multimedia-layer = "1"
LAYERDEPENDS_multimedia-layer = "core meta-python"
-LAYERSERIES_COMPAT_multimedia-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_multimedia-layer = " hardknott"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/aom/aom_2.0.0.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/aom/aom_3.0.0.bb
index 1ad457710..7ea9b199b 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/aom/aom_2.0.0.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/aom/aom_3.0.0.bb
@@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=6ea91368c1bbdf877159435572b931f5 \
SRC_URI = "git://aomedia.googlesource.com/aom;protocol=https"
-SRCREV = "d1d1226af626a61f7ca664b270dd473b92228984"
+SRCREV = "307ce06ed82d93885ee8ed53e152c9268ac0d98d"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth.inc b/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth.inc
index 74a2683ac..63ba54c34 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth.inc
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth.inc
@@ -4,9 +4,9 @@ SECTION = "libs/multimedia"
LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://LICENSE;md5=fc178bcd425090939a8b634d1d6a9594"
-SRC_URI = "git://github.com/FluidSynth/fluidsynth.git;branch=2.1.x"
-SRCREV = "e2d67ea77237046b703d537aec90620c22f7f629"
+SRC_URI = "git://github.com/FluidSynth/fluidsynth.git"
+SRCREV = "8413c35aca641567baf13e9b16e9839019ebf99d"
S = "${WORKDIR}/git"
-PV = "2.1.7"
+PV = "2.2.0"
inherit cmake pkgconfig lib_package
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth/0002-fluid_synth_nwrite_float-Allow-zero-pointer-for-left.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth/0002-fluid_synth_nwrite_float-Allow-zero-pointer-for-left.patch
index 94daa951c..f7debc5ad 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth/0002-fluid_synth_nwrite_float-Allow-zero-pointer-for-left.patch
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth/0002-fluid_synth_nwrite_float-Allow-zero-pointer-for-left.patch
@@ -17,15 +17,15 @@ Upstream-Status: Submitted [1]
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
- src/synth/fluid_synth.c | 69 ++++++++++++++++++++++++++++++++++---------------
+ src/synth/fluid_synth.c | 69 ++++++++++++++++++++++++++++-------------
1 file changed, 48 insertions(+), 21 deletions(-)
diff --git a/src/synth/fluid_synth.c b/src/synth/fluid_synth.c
-index 0df620d3..379f8216 100644
+index 1eb5d737..6c876efa 100644
--- a/src/synth/fluid_synth.c
+++ b/src/synth/fluid_synth.c
-@@ -3306,10 +3306,10 @@ fluid_synth_program_reset(fluid_synth_t *synth)
- * Synthesize a block of floating point audio to separate audio buffers (multichannel rendering). First effect channel used by reverb, second for chorus.
+@@ -3628,10 +3628,10 @@ fluid_synth_program_reset(fluid_synth_t *synth)
+ *
* @param synth FluidSynth instance
* @param len Count of audio frames to synthesize
- * @param left Array of float buffers to store left channel of planar audio (as many as \c synth.audio-channels buffers, each of \c len in size)
@@ -38,8 +38,8 @@ index 0df620d3..379f8216 100644
+ * @param fx_right Since 1.1.7: If not \c NULL, array of float buffers to store right effect channels (size: dito). Since 2.0.3: NULL allowed for array entry
* @return #FLUID_OK on success, #FLUID_FAILED otherwise
*
- * @note Should only be called from synthesis thread.
-@@ -3386,15 +3386,27 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
+ * First effect channel used by reverb, second for chorus.
+@@ -3719,15 +3719,27 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
for(i = 0; i < synth->audio_channels; i++)
{
#ifdef WITH_FLOAT
@@ -71,7 +71,7 @@ index 0df620d3..379f8216 100644
}
#endif //WITH_FLOAT
-@@ -3404,12 +3416,12 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
+@@ -3737,12 +3749,12 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
{
#ifdef WITH_FLOAT
@@ -86,7 +86,7 @@ index 0df620d3..379f8216 100644
{
FLUID_MEMCPY(fx_right[i], &fx_right_in[i * FLUID_BUFSIZE * FLUID_MIXER_MAX_BUFFERS_DEFAULT + synth->cur], bytes);
}
-@@ -3417,7 +3429,7 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
+@@ -3750,7 +3762,7 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
#else //WITH_FLOAT
int j;
@@ -95,7 +95,7 @@ index 0df620d3..379f8216 100644
{
for(j = 0; j < num; j++)
{
-@@ -3425,7 +3437,7 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
+@@ -3758,7 +3770,7 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
}
}
@@ -104,7 +104,7 @@ index 0df620d3..379f8216 100644
{
for(j = 0; j < num; j++)
{
-@@ -3456,15 +3468,30 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
+@@ -3789,15 +3801,30 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
for(i = 0; i < synth->audio_channels; i++)
{
#ifdef WITH_FLOAT
@@ -140,7 +140,7 @@ index 0df620d3..379f8216 100644
}
#endif //WITH_FLOAT
-@@ -3474,12 +3501,12 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
+@@ -3807,12 +3834,12 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
{
#ifdef WITH_FLOAT
@@ -155,7 +155,7 @@ index 0df620d3..379f8216 100644
{
FLUID_MEMCPY(fx_right[i] + count, &fx_right_in[i * FLUID_BUFSIZE * FLUID_MIXER_MAX_BUFFERS_DEFAULT], bytes);
}
-@@ -3487,7 +3514,7 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
+@@ -3820,7 +3847,7 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
#else //WITH_FLOAT
int j;
@@ -164,7 +164,7 @@ index 0df620d3..379f8216 100644
{
for(j = 0; j < num; j++)
{
-@@ -3495,7 +3522,7 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
+@@ -3828,7 +3855,7 @@ fluid_synth_nwrite_float(fluid_synth_t *synth, int len,
}
}
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-uvcvideo-Use-auto-variable-to-avoid-range-loop-warni.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-uvcvideo-Use-auto-variable-to-avoid-range-loop-warni.patch
index 4ca412c69..cec5fc287 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-uvcvideo-Use-auto-variable-to-avoid-range-loop-warni.patch
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-uvcvideo-Use-auto-variable-to-avoid-range-loop-warni.patch
@@ -1,27 +1,104 @@
-From 767267ef69c001870d41caf9c60dd7fec89b0a13 Mon Sep 17 00:00:00 2001
+Delivered-To: raj.khem@gmail.com
+Received: by 2002:a05:620a:20d3:0:0:0:0 with SMTP id f19csp2716715qka;
+ Sat, 27 Mar 2021 19:58:30 -0700 (PDT)
+X-Google-Smtp-Source: ABdhPJwyDnjZqZmFqHVShb/5/RoVkJ4Avv5bcnyuo85vIRR2vJDQF+QBZpQpEWHgx5GuEuwLVSC+
+X-Received: by 2002:a05:6512:22d0:: with SMTP id g16mr12125441lfu.650.1616900310724;
+ Sat, 27 Mar 2021 19:58:30 -0700 (PDT)
+ARC-Seal: i=1; a=rsa-sha256; t=1616900310; cv=none;
+ d=google.com; s=arc-20160816;
+ b=bZlu68tossyE2YcGkt0HzIhqTUroWDT/EgJvAiQBgZ6bPzMJ+wjwWp3LzViqOxiRPQ
+ r0cFyme7CJ9YRf2TLmpjGuv2RPQ+EkrtFdlB7i65nhDrwvBoxt78vF2tUoDgVLL1YrU9
+ wKgHPtBjtDcDveOXKQJH2j5HRwiBjCXlPRBhlSxV8kJPBj//dRaKm0MsxfiW/IgyN1tZ
+ FFxfe4Lk1Awm8ZKAklhdKMly3MFA6IbnjwNcN/84a0R/0+PLu9X8XIR6+CnrfqSgWOBx
+ zsV8p3HuVQTpX7Hhnkiz7PYudHsJJ/7KXeXTP6s9NNnZGu9A6U/E6VOob5BSm9DDIA5z
+ 4AnA==
+ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816;
+ h=content-transfer-encoding:mime-version:message-id:date:subject:cc
+ :to:from:dkim-signature;
+ bh=fbAn+wsNks5BGTY34H4T90NDFJaNV4nnt9vc9DBFaWQ=;
+ b=mLZNiQR/CdgcVTAc7OQmK0ZYTVpofG/EOqTIi2NYIYFhanWhatYY9Hx2xwxIp6kQ5R
+ n0uXh5tLth6aPYD09z3YcXYasEIszBKwoNUFjRA85lFm3d5/J2S1wC5rBy25QeCDOg57
+ QdzYrTBX2QGRHGQKauEnX5FLDTT+I53sPa87TyvxUKBS+lTAbJig70KfmL7FJIEWT1ZI
+ CZKCErYFlQTGNnwM0CYVXyHv54D2tA25veHQIJN8KK+XObNWuAY3rYpqKoUpOP4vpSPi
+ MXJWAV4L6NZEShWvwJiC4Zdy2xFzXASX27CAKIsX6T5Rub03grVTg6WVt9bChK1x5jeg
+ A2Yw==
+ARC-Authentication-Results: i=1; mx.google.com;
+ dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=MniKswyT;
+ spf=pass (google.com: domain of laurent.pinchart@ideasonboard.com designates 213.167.242.64 as permitted sender) smtp.mailfrom=laurent.pinchart@ideasonboard.com
+Return-Path: <laurent.pinchart@ideasonboard.com>
+Received: from perceval.ideasonboard.com (perceval.ideasonboard.com. [213.167.242.64])
+ by mx.google.com with ESMTPS id v18si12339470ljj.208.2021.03.27.19.58.30
+ for <raj.khem@gmail.com>
+ (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
+ Sat, 27 Mar 2021 19:58:30 -0700 (PDT)
+Received-SPF: pass (google.com: domain of laurent.pinchart@ideasonboard.com designates 213.167.242.64 as permitted sender) client-ip=213.167.242.64;
+Authentication-Results: mx.google.com;
+ dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=MniKswyT;
+ spf=pass (google.com: domain of laurent.pinchart@ideasonboard.com designates 213.167.242.64 as permitted sender) smtp.mailfrom=laurent.pinchart@ideasonboard.com
+Received: from pendragon.lan (62-78-145-57.bb.dnainternet.fi [62.78.145.57])
+ by perceval.ideasonboard.com (Postfix) with ESMTPSA id 11F12332;
+ Sun, 28 Mar 2021 04:58:28 +0200 (CEST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;
+ s=mail; t=1616900309;
+ bh=BwCg4h9N9fJysbMT1Yjbazbp7zTImD9mkWJSjCKzCmg=;
+ h=From:To:Cc:Subject:Date:From;
+ b=MniKswyT+aUtPgeMFeLqW6cRMFsPRN4W1XtVDA6pqI0QTSSx5koEuzSfEybjs6Qbp
+ ZdQar1r5nBIRCg9uq85YoLKoFeT7WN4PrwnRYPwaYGAFHfV44rDrq4RBe3VOIb+85W
+ tKn4HEzjlFelrImVbeymBsgpVhITveSVH1MdYRsE=
+From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
+To: libcamera-devel@lists.libcamera.org
+Cc: Khem Raj <raj.khem@gmail.com>
+Subject: [PATCH v2] libcamera: pipeline: uvcvideo: Avoid reference to temporary object
+Date: Sun, 28 Mar 2021 05:57:41 +0300
+Message-Id: <20210328025741.30246-1-laurent.pinchart@ideasonboard.com>
+X-Mailer: git-send-email 2.28.1
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+
From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 3 Mar 2021 15:11:46 -0800
-Subject: [PATCH] uvcvideo: Use auto variable to avoid range loop warnings
-With c++17 loop range bases are defined where copy is obvious since
-iterator returns a copy and not reference, gcc11 will emit a warning
-about this
+A range-based for loop whose range expression is an array of char
+pointers and range variable declaration is a const reference to a
+std::string creates a temporary string from the char pointer and binds
+the range variable reference to it. This creates a const reference to a
+temporary, which is valid in C++, and extends the lifetime of the
+temporary to the lifetime of the reference.
+
+However, lifetime extension in range-based for loops is considered as a
+sign of a potential issue, as a temporary is created for every
+iteration, which can be costly, and the usage of a reference in the
+range declaration doesn't make it obvious that the code isn't simply
+binding a reference to an existing object. gcc 11, with the
+-Wrange-loop-construct option, flags this:
uvcvideo.cpp:432:33: error: loop variable 'name' of type 'const string&' {aka 'const std::__cxx11::basic_string<cha
r>&'} binds to a temporary constructed from type 'const char* const' [-Werror=range-loop-construct]
| 432 | for (const std::string &name : { "idVendor", "idProduct" }) {
| | ^~~~
-Therefore making it explicit is better
+To please the compiler, make the range variable a const char *. This may
+bring a tiny performance improvement, as the name is only used once, in
+a location where the compiler can use
+
+ operator+(const std::string &, const char *)
+
+instead of
+
+ operator+(const std::string &, const std::string &)
-Upstream-Status: Submitted [https://lists.libcamera.org/pipermail/libcamera-devel/2021-March/017966.html]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
+
+Use a const char * type instead of auto, and update the commit message
+accordingly.
+
+Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
-index 031f96e2..ef23ece7 100644
+index 031f96e28449..b6c6ade5ebaf 100644
--- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
+++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
@@ -429,7 +429,7 @@ std::string PipelineHandlerUVC::generateId(const UVCCameraData *data)
@@ -29,10 +106,12 @@ index 031f96e2..ef23ece7 100644
/* Creata a device ID from the USB devices vendor and product ID. */
std::string deviceId;
- for (const std::string &name : { "idVendor", "idProduct" }) {
-+ for (const auto name : { "idVendor", "idProduct" }) {
++ for (const char *name : { "idVendor", "idProduct" }) {
std::ifstream file(path + "/../" + name);
if (!file.is_open())
--
-2.30.1
+Regards,
+
+Laurent Pinchart
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/musicpd/mpd_0.22.6.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/musicpd/mpd_0.22.6.bb
index e91bb5d97..b1fa96e1b 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/musicpd/mpd_0.22.6.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/musicpd/mpd_0.22.6.bb
@@ -2,8 +2,6 @@ SUMMARY = "Music Player Daemon"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-LICENSE_FLAGS = "${@bb.utils.contains_any('PACKAGECONFIG', ['ffmpeg', 'aac'], 'commercial', '', d)}"
-
HOMEPAGE ="http://www.musicpd.org"
inherit meson useradd systemd pkgconfig
@@ -28,7 +26,14 @@ S = "${WORKDIR}/git"
EXTRA_OEMESON += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '-Dsystemd=enabled -Dsystemd_system_unit_dir=${systemd_system_unitdir} -Dsystemd_user_unit_dir=${systemd_system_unitdir}', '-Dsystemd=disabled', d)}"
-PACKAGECONFIG ??= "aac alsa ao bzip2 daemon ffmpeg fifo flac fluidsynth iso9660 jack libsamplerate httpd mms mpg123 modplug sndfile upnp openal opus oss recorder vorbis wavpack zlib"
+PACKAGECONFIG ??= "${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "aac", "", d)} \
+ alsa ao bzip2 daemon \
+ ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "ffmpeg aac", "", d)} \
+ fifo flac fluidsynth iso9660 \
+ jack libsamplerate httpd \
+ mms mpg123 modplug sndfile \
+ upnp openal opus oss recorder \
+ vorbis wavpack zlib"
PACKAGECONFIG[aac] = "-Dfaad=enabled,-Dfaad=disabled,faad2"
PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/openh264/openh264_2.1.1.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/openh264/openh264_2.1.1.bb
index 3988cfff8..75d5010f1 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/openh264/openh264_2.1.1.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/openh264/openh264_2.1.1.bb
@@ -23,6 +23,7 @@ COMPATIBLE_MACHINE_x86 = "(.*)"
COMPATIBLE_MACHINE_x86-64 = "(.*)"
COMPATIBLE_MACHINE_mips = "(.*)"
COMPATIBLE_MACHINE_mips64 = "(.*)"
+COMPATIBLE_MACHINE_powerpc64le = "null"
EXTRA_OEMAKE_armv7a = "ARCH=arm"
EXTRA_OEMAKE_armv7ve = "ARCH=arm"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
index 78c7c06b2..73b852a4a 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
@@ -53,7 +53,8 @@ RDEPENDS_packagegroup-meta-multimedia = "\
bigbuckbunny-720p \
tearsofsteel-1080p \
schroedinger \
- projucer \
+ pipewire \
+ ${@bb.utils.contains("DISTRO_FEATURES", "x11", "projucer", "", d)} \
libcamera \
${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "libde265 openh264", "", d)} \
vorbis-tools \
@@ -66,7 +67,7 @@ RDEPENDS_packagegroup-meta-multimedia = "\
openal-soft \
opusfile \
libdvdcss \
- ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "vlc", "", d)} \
+ ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", bb.utils.contains("DISTRO_FEATURES", "x11", "vlc", "", d), "", d)} \
${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "sox streamripper", "", d)} \
tinyalsa \
tremor \
@@ -74,6 +75,7 @@ RDEPENDS_packagegroup-meta-multimedia = "\
${@bb.utils.contains_any("TRANSLATED_TARGET_ARCH", "i586 x86-64", "x265", "", d)} \
"
RDEPENDS_packagegroup-meta-multimedia_remove_libc-musl = "projucer"
+RDEPENDS_packagegroup-meta-multimedia_remove_powerpc64le = "openh264"
RDEPENDS_packagegroup-meta-multimedia-connectivity = "\
gssdp \
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.22.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.24.bb
index b54be7f89..25c87d26d 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.22.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.24.bb
@@ -11,7 +11,7 @@ SECTION = "multimedia"
DEPENDS = "dbus"
-SRCREV = "22d563720a7f6ba7bdf59950f8c14488d80dfa95"
+SRCREV = "c81d44e8a9497899d01bcc3054b6aa845e7a066e"
SRC_URI = "git://gitlab.freedesktop.org/pipewire/pipewire.git;branch=master;protocol=https"
S = "${WORKDIR}/git"
@@ -30,24 +30,30 @@ USERADD_PARAM_${PN} = "--system --home / --no-create-home \
# For "EVL", look up https://evlproject.org/ . It involves
# a specially prepared kernel, and is currently unavailable
# in Yocto.
+#
# FFmpeg and Vulkan aren't really supported - at the current
# stage (version 0.3.22), these are just experiments, not
# actual features.
+#
# libcamera support currently does not build successfully.
+#
# systemd user service files are disabled because per-user
# PipeWire instances aren't really something that makes
# much sense in an embedded environment. A system-wide
# instance does.
+#
+# manpage generation requires xmltoman, which is not available.
EXTRA_OEMESON += " \
- -Daudiotestsrc=true \
- -Devl=false \
- -Dsystemd-user-service=false \
- -Dtests=false \
+ -Daudiotestsrc=enabled \
+ -Devl=disabled \
+ -Dsystemd-user-service=disabled \
+ -Dtests=disabled \
-Dudevrulesdir=${nonarch_base_libdir}/udev/rules.d/ \
- -Dvideotestsrc=true \
- -Dffmpeg=false \
- -Dvulkan=false \
- -Dlibcamera=false \
+ -Dvideotestsrc=enabled \
+ -Dffmpeg=disabled \
+ -Dvulkan=disabled \
+ -Dlibcamera=disabled \
+ -Dman=disabled \
"
PACKAGECONFIG ??= "\
@@ -62,18 +68,17 @@ PACKAGECONFIG ??= "\
# is why these two are marked in their respective packageconfigs
# as being in conflict.
-PACKAGECONFIG[alsa] = "-Dalsa=true,-Dalsa=false,alsa-lib udev"
-PACKAGECONFIG[bluez] = "-Dbluez5=true,-Dbluez5=false,bluez5 sbc"
-PACKAGECONFIG[docs] = "-Ddocs=true,-Ddocs=false,doxygen"
-PACKAGECONFIG[gstreamer] = "-Dgstreamer=true,-Dgstreamer=false,glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base"
-PACKAGECONFIG[jack] = "-Djack=true,-Djack=false,jack,,,pipewire-jack"
-PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,libxml-parser-perl-native"
+PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib udev"
+PACKAGECONFIG[bluez] = "-Dbluez5=enabled,-Dbluez5=disabled,bluez5 sbc"
+PACKAGECONFIG[docs] = "-Ddocs=enabled,-Ddocs=disabled,doxygen-native"
+PACKAGECONFIG[gstreamer] = "-Dgstreamer=enabled,-Dgstreamer=disabled,glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base"
+PACKAGECONFIG[jack] = "-Djack=enabled,-Djack=disabled,jack,,,pipewire-jack"
PACKAGECONFIG[sdl2] = "-Dsdl2=enabled,-Dsdl2=disabled,virtual/libsdl2"
PACKAGECONFIG[sndfile] = "-Dsndfile=enabled,-Dsndfile=disabled,libsndfile1"
-PACKAGECONFIG[systemd] = "-Dsystemd=true -Dsystemd-system-service=true ,-Dsystemd=false -Dsystemd-system-service=false,systemd"
-PACKAGECONFIG[v4l2] = "-Dv4l2=true,-Dv4l2=false,udev"
-PACKAGECONFIG[pipewire-alsa] = "-Dpipewire-alsa=true,-Dpipewire-alsa=false,alsa-lib"
-PACKAGECONFIG[pipewire-jack] = "-Dpipewire-jack=true -Dlibjack-path=${libdir}/${PW_MODULE_SUBDIR}/jack,-Dpipewire-jack=false,jack,,,jack"
+PACKAGECONFIG[systemd] = "-Dsystemd=enabled -Dsystemd-system-service=enabled ,-Dsystemd=disabled -Dsystemd-system-service=disabled,systemd"
+PACKAGECONFIG[v4l2] = "-Dv4l2=enabled,-Dv4l2=disabled,udev"
+PACKAGECONFIG[pipewire-alsa] = "-Dpipewire-alsa=enabled,-Dpipewire-alsa=disabled,alsa-lib"
+PACKAGECONFIG[pipewire-jack] = "-Dpipewire-jack=enabled -Dlibjack-path=${libdir}/${PW_MODULE_SUBDIR}/jack,-Dpipewire-jack=disabled,jack,,,jack"
PACKAGESPLITFUNCS_prepend = " split_dynamic_packages "
PACKAGESPLITFUNCS_append = " set_dynamic_metapkg_rdepends "
@@ -240,9 +245,11 @@ FILES_${PN}-jack = "\
# Example session manager. Not intended for use in production.
CONFFILES_${PN}-media-session = "${sysconfdir}/pipewire/media-session.d/*"
+SYSTEMD_SERVICE_${PN}-media-session = "pipewire-media-session.service"
FILES_${PN}-media-session = " \
${bindir}/pipewire-media-session \
${sysconfdir}/pipewire/media-session.d/* \
+ ${systemd_system_unitdir}/pipewire-media-session.service \
"
RPROVIDES_${PN}-media-session = "virtual/pipewire-sessionmanager"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/sox/sox_14.4.2.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/sox/sox_14.4.2.bb
index 21fddd1e1..2d6e913d8 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/sox/sox_14.4.2.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/sox/sox_14.4.2.bb
@@ -6,9 +6,6 @@ SECTION = "audio"
DEPENDS = "libpng ffmpeg libsndfile1"
-# While this item does not require it, it depends on ffmpeg which does
-LICENSE_FLAGS = "commercial"
-
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'alsa pulseaudio', d)} \
magic \
"
@@ -38,3 +35,5 @@ SRC_URI[md5sum] = "d04fba2d9245e661f245de0577f48a33"
SRC_URI[sha256sum] = "b45f598643ffbd8e363ff24d61166ccec4836fea6d3888881b8df53e3bb55f6c"
inherit autotools pkgconfig
+
+EXCLUDE_FROM_WORLD = "${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "0", "1", d)}"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.12.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.12.bb
index c0074aabb..cb796a00f 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.12.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.12.bb
@@ -16,9 +16,6 @@ DEPENDS = "coreutils-native fribidi libtool libgcrypt libgcrypt-native \
LDFLAGS_append_riscv64 = " -latomic"
LDFLAGS_append_riscv32 = " -latomic"
-# While this item does not require it, it depends on ffmpeg which does
-LICENSE_FLAGS = "commercial"
-
SRC_URI = "http://download.videolan.org/pub/videolan/${BPN}/${PV}/${BP}.tar.xz \
file://0001-make-opencv-configurable.patch \
file://0002-use-vorbisidec.patch \
@@ -134,3 +131,4 @@ FILES_${PN}-staticdev += "\
INSANE_SKIP_${PN} = "dev-so"
+EXCLUDE_FROM_WORLD = "${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "0", "1", d)}"
diff --git a/meta-openembedded/meta-networking/conf/layer.conf b/meta-openembedded/meta-networking/conf/layer.conf
index c28c7bdb6..968b21601 100644
--- a/meta-openembedded/meta-networking/conf/layer.conf
+++ b/meta-openembedded/meta-networking/conf/layer.conf
@@ -17,7 +17,7 @@ LAYERDEPENDS_networking-layer = "core"
LAYERDEPENDS_networking-layer += "openembedded-layer"
LAYERDEPENDS_networking-layer += "meta-python"
-LAYERSERIES_COMPAT_networking-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_networking-layer = " hardknott"
LICENSE_PATH += "${LAYERDIR}/licenses"
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc64le.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc64le.txt
new file mode 100644
index 000000000..7a443cc01
--- /dev/null
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc64le.txt
@@ -0,0 +1,41 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "65"
+Checking value of _NSIG: "65"
+Checking value of SIGRTMAX: "64"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: (255, "")
+Checking if can we convert from IBM850 to UCS-2LE: (255, "")
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: OK
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: OK
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0001-rlm_python3-add-PY_INC_DIR-in-search-dir.patch b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0001-rlm_python3-add-PY_INC_DIR-in-search-dir.patch
deleted file mode 100644
index d63023162..000000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0001-rlm_python3-add-PY_INC_DIR-in-search-dir.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 733330888fff49e4d2b6c2121a6050fdd9f11a87 Mon Sep 17 00:00:00 2001
-From: Yi Zhao <yi.zhao@windriver.com>
-Date: Thu, 6 Feb 2020 09:32:04 +0800
-Subject: [PATCH] rlm_python3: add PY_INC_DIR in search dir
-
-The configure option --with-rlm-python3-include-dir is used to set
-PY_INC_DIR which is never used and it fails to find Python.h,
-so add it into search dir to fix it.
-
-Also remove SMART_LIBS from mod_flags because it introduces rpath
-to LDFALGS which causes a do_package_qa error:
-
-ERROR: freeradius-3.0.20-r0 do_package_qa: QA Issue: package freeradius-python contains bad RPATH
-/buildarea/build/tmp/work/core2-64-poky-linux/freeradius/3.0.20-r0/recipe-sysroot-native/usr/lib/python3.8/config in file
-/buildarea/build/tmp/work/core2-64-poky-linux/freeradius/3.0.20-r0/packages-split/freeradius-python/usr/lib/rlm_python3.so.0.0.0
-package freeradius-python contains bad RPATH
-/buildarea/build/tmp/work/core2-64-poky-linux/freeradius/3.0.20-r0/recipe-sysroot-native/usr/lib/python3.8/config in file
-/buildarea/build/tmp/work/core2-64-poky-linux/freeradius/3.0.20-r0/packages-split/freeradius-python/usr/lib/rlm_python3.so.0.0.0 [rpaths]
-
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
----
- src/modules/rlm_python3/configure.ac | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/src/modules/rlm_python3/configure.ac b/src/modules/rlm_python3/configure.ac
-index a00320f..adbdf19 100644
---- a/src/modules/rlm_python3/configure.ac
-+++ b/src/modules/rlm_python3/configure.ac
-@@ -95,7 +95,7 @@ if test x$with_[]modname != xno; then
-
- old_CFLAGS=$CFLAGS
- CFLAGS="$CFLAGS $PY_CFLAGS"
-- smart_try_dir="$PY_PREFIX/include/python$PY_SYS_VERSION"
-+ smart_try_dir="$PY_PREFIX/include/python$PY_SYS_VERSION $PY_INC_DIR"
- FR_SMART_CHECK_INCLUDE(Python.h)
- CFLAGS=$old_CFLAGS
-
-@@ -114,13 +114,13 @@ if test x$with_[]modname != xno; then
-
- eval t=\${ac_cv_lib_${sm_lib_safe}_${sm_func_safe}}
- if test "x$t" = "xyes"; then
-- mod_ldflags="$PY_LIB_LOC $PY_EXTRA_LIBS $SMART_LIBS -lm"
-+ mod_ldflags="$PY_LIB_LOC $PY_EXTRA_LIBS -lm"
- targetname=modname
- else
- FR_SMART_CHECK_LIB(python${PY_SYS_VERSION}m, Py_Initialize)
- eval t=\${ac_cv_lib_${sm_lib_safe}_${sm_func_safe}}
- if test "x$t" = "xyes"; then
-- mod_ldflags="$PY_LIB_LOC $PY_EXTRA_LIBS $SMART_LIBS -lm"
-+ mod_ldflags="$PY_LIB_LOC $PY_EXTRA_LIBS -lm"
- targetname=modname
- else
- targetname=
---
-2.7.4
-
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.20.bb b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.21.bb
index 608d66b1b..864a4e944 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.20.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.21.bb
@@ -26,7 +26,6 @@ SRC_URI = "git://github.com/FreeRADIUS/freeradius-server.git;branch=v3.0.x;lfs=0
file://freeradius-fix-quoting-for-BUILT_WITH.patch \
file://freeradius-fix-error-for-expansion-of-macro.patch \
file://0001-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch \
- file://0001-rlm_python3-add-PY_INC_DIR-in-search-dir.patch \
file://0001-raddb-certs-Makefile-fix-the-existed-certificate-err.patch \
file://0001-raddb-certs-Makefile-fix-the-occasional-verification.patch \
file://0001-workaround-error-with-autoconf-2.7.patch \
@@ -34,7 +33,7 @@ SRC_URI = "git://github.com/FreeRADIUS/freeradius-server.git;branch=v3.0.x;lfs=0
file://radiusd-volatiles.conf \
"
-SRCREV = "d94c953ab9602a238433ba18533111b845fd8e9e"
+SRCREV = "af428abda249b2279ba0582180985a9f6f4a144a"
PARALLEL_MAKE = ""
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_2.0.8.bb b/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_2.0.10.bb
index 03a829fc8..b815ac3b4 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_2.0.8.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/mosquitto/mosquitto_2.0.10.bb
@@ -19,8 +19,8 @@ SRC_URI = "http://mosquitto.org/files/source/mosquitto-${PV}.tar.gz \
file://1571.patch \
"
-SRC_URI[md5sum] = "542c30f32c4473b7c50dc2e4a1424cf6"
-SRC_URI[sha256sum] = "b15da8fc4edcb91d554e1259e220ea0173ef639ceaa4b465e06feb7e125b84bf"
+SRC_URI[md5sum] = "3d1c327d8c5881f56983bee1e3c8f068"
+SRC_URI[sha256sum] = "0188f7b21b91d6d80e992b8d6116ba851468b3bd154030e8a003ed28fb6f4a44"
inherit systemd update-rc.d useradd cmake
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.12.bb b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.14.bb
index d455a0f06..1f76d8ab5 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.12.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.14.bb
@@ -10,8 +10,8 @@ inherit gnomebase useradd gettext systemd
SRC_URI = "${GNOME_MIRROR}/NetworkManager-openvpn/${@gnome_verdir("${PV}")}/NetworkManager-openvpn-${PV}.tar.xz"
-SRC_URI[md5sum] = "e8b1210011ece18d0278310fbff45af5"
-SRC_URI[sha256sum] = "0efda8878aaf0e6eb5071a053aea5d7f9d42aac097b3ff89e7cbc9233f815318"
+SRC_URI[md5sum] = "bef67eca77bee68da703609b92f804a0"
+SRC_URI[sha256sum] = "e7419053fc3b5a7e25f1a7517c313ad4531b6ea280255524ebb85a70c76fdbeb"
S = "${WORKDIR}/NetworkManager-openvpn-${PV}"
@@ -38,6 +38,7 @@ USERADD_PARAM_${PN} = "--system nm-openvpn"
FILES_${PN} += " \
${datadir}/dbus-1 \
+ ${datadir}/metainfo \
${libdir}/NetworkManager/*.so \
${nonarch_libdir}/NetworkManager/VPN/nm-openvpn-service.name \
"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0002-Do-not-create-settings-settings-property-documentati.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0002-Do-not-create-settings-settings-property-documentati.patch
index ecd13504d..0a86abafc 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0002-Do-not-create-settings-settings-property-documentati.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0002-Do-not-create-settings-settings-property-documentati.patch
@@ -1,34 +1,29 @@
-From 9eab96351a726e9ce6a15d158f743e35d73a8900 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Sat, 16 Jan 2021 14:27:38 +0100
+From d0dead0478a070b96f37bd3b310443eaa8c93a25 Mon Sep 17 00:00:00 2001
+From: Vinicius Aquino <voa.aquino@gmail.com>
+Date: Thu, 1 Apr 2021 14:13:07 -0300
Subject: [PATCH] Do not create settings settings/property documentation
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
It was tried to get this work by adding python3-pygobject-native to DEPENDS but
-compile could not find (configure passed) python module gi.
+compile could not find (configure passed) python module gi.
Anyway it is not necessary for us to have the settings/property docs.
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
-
+Signed-off-by: Vinicius Aquino <voa.aquino@gmail.com>
---
- Makefile.am | 13 -------------
- configure.ac | 5 -----
- 2 files changed, 18 deletions(-)
+ Makefile.am | 4 ----
+ configure.ac | 5 -----
+ 2 files changed, 9 deletions(-)
diff --git a/Makefile.am b/Makefile.am
-index 110957a..b4cfbcc 100644
+index 9279672c1..2e52acbb2 100644
--- a/Makefile.am
+++ b/Makefile.am
-@@ -1587,14 +1587,10 @@ libnm/libnm.typelib: libnm/libnm.gir
+@@ -1686,14 +1686,10 @@ libnm/libnm.typelib: libnm/libnm.gir
INTROSPECTION_GIRS += libnm/NM-1.0.gir
libnm_noinst_data = \
@@ -43,30 +38,11 @@ index 110957a..b4cfbcc 100644
$(NULL)
noinst_DATA += $(libnm_noinst_data)
-@@ -4448,18 +4444,9 @@ $(clients_common_libnmc_base_la_OBJECTS): $(libnm_lib_h_pub_mkenums)
- $(clients_common_libnmc_base_la_OBJECTS): clients/common/.dirstamp
-
- clients_common_settings_doc_h = clients/common/settings-docs.h
--if HAVE_INTROSPECTION
--$(clients_common_settings_doc_h): clients/common/settings-docs.xsl libnm/nm-settings-docs-gir.xml clients/common/.dirstamp
-- $(AM_V_GEN) $(XSLTPROC) --output $@ $< $(word 2,$^)
--DISTCLEANFILES += $(clients_common_settings_doc_h)
--check-local-settings-docs: $(clients_common_settings_doc_h)
-- $(srcdir)/tools/check-settings-docs.sh "$(srcdir)" "$(builddir)" "$(clients_common_settings_doc_h)"
--check_local += check-local-settings-docs
--else
- $(clients_common_settings_doc_h): $(clients_common_settings_doc_h).in clients/common/.dirstamp
- $(AM_V_GEN) cp "$(srcdir)/$(clients_common_settings_doc_h).in" "$(builddir)/$(clients_common_settings_doc_h)"
- check-local-settings-docs:
--endif
- EXTRA_DIST += \
- $(clients_common_settings_doc_h) \
- $(clients_common_settings_doc_h).in
diff --git a/configure.ac b/configure.ac
-index 704b1c1..18bba87 100644
+index 784ac4695..681e6cb32 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -1228,11 +1228,6 @@ GTK_DOC_CHECK(1.0)
+@@ -1241,11 +1241,6 @@ GTK_DOC_CHECK(1.0)
# check if we can build setting property documentation
build_docs=no
if test -n "$INTROSPECTION_MAKEFILE"; then
@@ -79,5 +55,5 @@ index 704b1c1..18bba87 100644
if test -z "$PERL"; then
AC_MSG_ERROR([--enable-introspection requires perl])
--
-2.26.2
+2.20.1
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0004-fix_reallocarray_check.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0004-fix_reallocarray_check.patch
deleted file mode 100644
index 2df449f2e..000000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0004-fix_reallocarray_check.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-reallocarray() is coming from stdlib.h which maybe indirectly included
-by malloc.h but not on all libc implementations
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
---- a/meson.build
-+++ b/meson.build
-@@ -114,7 +114,7 @@ config_h.set10('HAVE_GETRANDOM', use_sys
- #include <sys/wait.h>'''))
- config_h.set('HAVE_SECURE_GETENV', cc.has_function('secure_getenv'))
- config_h.set('HAVE___SECURE_GETENV', cc.has_function('__secure_getenv'))
--config_h.set10('HAVE_DECL_REALLOCARRAY', cc.has_function('reallocarray', prefix: '#include <malloc.h>'))
-+config_h.set10('HAVE_DECL_REALLOCARRAY', cc.has_function('reallocarray', prefix: '#include <stdlib.h>'))
- config_h.set10('HAVE_DECL_EXPLICIT_BZERO', cc.has_function('explicit_bzero', prefix: '#include <string.h>'))
- config_h.set10('HAVE_DECL_MEMFD_CREATE', cc.has_function('memfd_create', prefix: '#include <sys/mman.h>'))
-
---- a/configure.ac
-+++ b/configure.ac
-@@ -82,7 +82,7 @@ AC_CHECK_DECLS([
- AC_CHECK_DECLS([
- reallocarray],
- [], [], [[
--#include <malloc.h>
-+#include <stdlib.h>
- ]])
-
- AC_CHECK_DECLS([
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch
index 7807fc77c..692f1ffa4 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch
@@ -1,12 +1,11 @@
-From 9597122867c22e949ef3b69c779e0facebce6eb5 Mon Sep 17 00:00:00 2001
+From 44884c7e7655b889f41cb02ffc8ab72a29b52ebf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Tue, 2 Apr 2019 01:34:35 +0200
-Subject: [PATCH] Fix build with musl - systemd specific
+Subject: [PATCH 1/2] Fix build with musl - systemd specific
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -17,18 +16,18 @@ for musl.
Upstream-Status: Pending
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
-
+Signed-off-by: Vinicius Aquino <voa.aquino@gmail.com>
---
shared/systemd/src/basic/in-addr-util.c | 1 +
shared/systemd/src/basic/process-util.c | 9 +++++++++
shared/systemd/src/basic/socket-util.h | 6 ++++++
- shared/systemd/src/basic/sort-util.h | 27 ++++---------------------
+ shared/systemd/src/basic/sort-util.h | 13 ++++---------
shared/systemd/src/basic/stdio-util.h | 2 ++
shared/systemd/src/basic/string-util.h | 5 +++++
- 6 files changed, 27 insertions(+), 23 deletions(-)
+ 6 files changed, 27 insertions(+), 9 deletions(-)
diff --git a/shared/systemd/src/basic/in-addr-util.c b/shared/systemd/src/basic/in-addr-util.c
-index 1ea3e7f..1204393 100644
+index c315dcbb8..5b7e04eb7 100644
--- a/shared/systemd/src/basic/in-addr-util.c
+++ b/shared/systemd/src/basic/in-addr-util.c
@@ -15,6 +15,7 @@
@@ -40,7 +39,7 @@ index 1ea3e7f..1204393 100644
#include "string-util.h"
#include "strxcpyx.h"
diff --git a/shared/systemd/src/basic/process-util.c b/shared/systemd/src/basic/process-util.c
-index 03ca04e..be8bca8 100644
+index 0e25b0200..ea2c0fbb4 100644
--- a/shared/systemd/src/basic/process-util.c
+++ b/shared/systemd/src/basic/process-util.c
@@ -17,6 +17,9 @@
@@ -80,7 +79,7 @@ index 03ca04e..be8bca8 100644
cached_pid = CACHED_PID_UNSET;
return new_pid;
diff --git a/shared/systemd/src/basic/socket-util.h b/shared/systemd/src/basic/socket-util.h
-index 1ece911..290e94c 100644
+index 1de069476..f6834fbd2 100644
--- a/shared/systemd/src/basic/socket-util.h
+++ b/shared/systemd/src/basic/socket-util.h
@@ -14,6 +14,12 @@
@@ -94,10 +93,10 @@ index 1ece911..290e94c 100644
+#endif
+
#include "macro.h"
+ #include "missing_network.h"
#include "missing_socket.h"
- #include "sparse-endian.h"
diff --git a/shared/systemd/src/basic/sort-util.h b/shared/systemd/src/basic/sort-util.h
-index a8dc3bb..ff0aa88 100644
+index a8984fc16..5fb90f8c5 100644
--- a/shared/systemd/src/basic/sort-util.h
+++ b/shared/systemd/src/basic/sort-util.h
@@ -5,15 +5,10 @@
@@ -120,40 +119,22 @@ index a8dc3bb..ff0aa88 100644
/**
* Normal bsearch requires base to be nonnull. Here were require
-@@ -54,17 +49,3 @@ static inline void _qsort_safe(void *base, size_t nmemb, size_t size, __compar_f
- int (*_func_)(const typeof(p[0])*, const typeof(p[0])*) = func; \
- _qsort_safe((p), (n), sizeof((p)[0]), (__compar_fn_t) _func_); \
- })
--
--static inline void qsort_r_safe(void *base, size_t nmemb, size_t size, __compar_d_fn_t compar, void *userdata) {
-- if (nmemb <= 1)
-- return;
--
-- assert(base);
-- qsort_r(base, nmemb, size, compar, userdata);
--}
--
--#define typesafe_qsort_r(p, n, func, userdata) \
-- ({ \
-- int (*_func_)(const typeof(p[0])*, const typeof(p[0])*, typeof(userdata)) = func; \
-- qsort_r_safe((p), (n), sizeof((p)[0]), (__compar_d_fn_t) _func_, userdata); \
-- })
diff --git a/shared/systemd/src/basic/stdio-util.h b/shared/systemd/src/basic/stdio-util.h
-index c3b9448..e80a938 100644
+index d45d3c1a6..fee1a57ca 100644
--- a/shared/systemd/src/basic/stdio-util.h
+++ b/shared/systemd/src/basic/stdio-util.h
-@@ -1,7 +1,9 @@
- /* SPDX-License-Identifier: LGPL-2.1+ */
+@@ -2,7 +2,9 @@
#pragma once
+ #if 0 /* NM_IGNORED */
+#if defined(__GLIBC__)
#include <printf.h>
+#endif
+ #endif /* NM_IGNORED */
#include <stdarg.h>
#include <stdio.h>
- #include <sys/types.h>
diff --git a/shared/systemd/src/basic/string-util.h b/shared/systemd/src/basic/string-util.h
-index cefbda3..71e4dec 100644
+index 593cf04ae..541c393f6 100644
--- a/shared/systemd/src/basic/string-util.h
+++ b/shared/systemd/src/basic/string-util.h
@@ -26,6 +26,11 @@
@@ -168,3 +149,6 @@ index cefbda3..71e4dec 100644
int strcmp_ptr(const char *a, const char *b) _pure_;
int strcasecmp_ptr(const char *a, const char *b) _pure_;
+--
+2.20.1
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl-systemd-specific.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl-systemd-specific.patch
new file mode 100644
index 000000000..d83efd39e
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl-systemd-specific.patch
@@ -0,0 +1,26 @@
+From 7d9a11a17da425d106791ada7100d7a6559e6065 Mon Sep 17 00:00:00 2001
+From: Adrian Freihofer <adrian.freihofer@siemens.com>
+Date: Sat, 7 Mar 2020 14:24:01 +0100
+Subject: [PATCH 2/2] Fix build with musl - systemd specific
+
+---
+ src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c b/src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c
+index 3fafd3c0e..79d6096c2 100644
+--- a/src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c
++++ b/src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c
+@@ -8,7 +8,9 @@
+ #include <errno.h>
+ #include <sys/ioctl.h>
+ #if 0 /* NM_IGNORED */
++#ifdef __GLIBC__ /* musl supplies full set of userspace headers */
+ #include <linux/if_arp.h>
++#endif
+ #else /* NM_IGNORED */
+ #include <net/if_arp.h>
+ #endif /* NM_IGNORED */
+--
+2.20.1
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch
deleted file mode 100644
index 0f43c0c68..000000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch
+++ /dev/null
@@ -1,121 +0,0 @@
-From bacc14089c80ec757025789ff054a05e1f9c088d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Mon, 8 Apr 2019 23:10:43 +0200
-Subject: [PATCH] Fix build with musl
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The build issues caused by definition conflicts musl vs linux-libc headers
-(error: redefinition of ...) can be reduced to two headers:
-
-1. netinet/if_ether.h <-> linux/if_ether.h: linux-libc header plays well with
- glibc and musl headers in case libc's variant (netinet/if_ether.h) is
- included BEFORE linux variant [1]. We add include at two positions:
- 1. shared/nm-default.h: This is a global which used for networkmanager and
- is included at the very beginning of all c-files.
- 2. libnm-core/nm-utils.h: This file makes it into installation and is used
- by dependent packages as network-manager-applet
-2. net/if_arp. <-> linux/if_ether.h: linux-libc: Unfortunaly these files do
- not play together in harmony. Therefore the libc variant is included early in
- shared/nm-default.h and occurances linux/if_arp.h are removed.
-
-Note:
-Be aware that this is still nasty business: We have to trust that musl headers
-define same signatures as linux would do - just because musl-makers consider
-linux-libc headers 'notoriously broken for userspace' [2] (search for
-'error: redefinition of').
-
-[1] http://lists.openembedded.org/pipermail/openembedded-core/2019-March/280440.html
-[2] https://wiki.musl-libc.org/faq.html
-
-Upstream-Status: Pending
-
-Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
-
----
- clients/tui/nmt-device-entry.c | 1 -
- libnm-core/nm-utils.h | 4 ++++
- shared/nm-default.h | 3 +++
- src/devices/nm-device.c | 2 +-
- src/platform/nm-linux-platform.c | 1 -
- 5 files changed, 8 insertions(+), 3 deletions(-)
-
-diff --git a/clients/tui/nmt-device-entry.c b/clients/tui/nmt-device-entry.c
-index 692a467..cf9b32e 100644
---- a/clients/tui/nmt-device-entry.c
-+++ b/clients/tui/nmt-device-entry.c
-@@ -26,7 +26,6 @@
- #include "nmt-device-entry.h"
-
- #include <sys/socket.h>
--#include <linux/if_arp.h>
-
- #include "nmtui.h"
-
-diff --git a/libnm-core/nm-utils.h b/libnm-core/nm-utils.h
-index 9589c51..b82c5cf 100644
---- a/libnm-core/nm-utils.h
-+++ b/libnm-core/nm-utils.h
-@@ -10,6 +10,10 @@
- #error "Only <NetworkManager.h> can be included directly."
- #endif
-
-+/* include as early as possible for musl */
-+#include <netinet/if_ether.h>
-+/* #include <net/if_arp.h> - uncoment for broken dependents?? */
-+
- #include <glib.h>
-
- #include <netinet/in.h>
-diff --git a/shared/nm-default.h b/shared/nm-default.h
-index b322f1d..c287dbe 100644
---- a/shared/nm-default.h
-+++ b/shared/nm-default.h
-@@ -178,6 +178,9 @@
- #endif
-
- #include <stdlib.h>
-+/* include as early as possible for musl */
-+#include <netinet/if_ether.h>
-+#include <net/if_arp.h>
-
- /*****************************************************************************/
-
-diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
-index 0be05f2..04061f9 100644
---- a/src/devices/nm-device.c
-+++ b/src/devices/nm-device.c
-@@ -9,6 +9,7 @@
- #include "nm-device.h"
-
- #include <netinet/in.h>
-+#include <net/if.h>
- #include <unistd.h>
- #include <sys/ioctl.h>
- #include <signal.h>
-@@ -17,7 +18,6 @@
- #include <arpa/inet.h>
- #include <fcntl.h>
- #include <linux/if_addr.h>
--#include <linux/if_arp.h>
- #include <linux/rtnetlink.h>
-
- #include "nm-std-aux/unaligned.h"
-diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c
-index b377c85..87af59a 100644
---- a/src/platform/nm-linux-platform.c
-+++ b/src/platform/nm-linux-platform.c
-@@ -14,7 +14,6 @@
- #include <libudev.h>
- #include <linux/fib_rules.h>
- #include <linux/ip.h>
--#include <linux/if_arp.h>
- #include <linux/if_bridge.h>
- #include <linux/if_link.h>
- #include <linux/if_tun.h>
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-systemd-specific.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-systemd-specific.patch
deleted file mode 100644
index 5735d51a8..000000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-systemd-specific.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From ed748a28076eada9f38e3f4a476f28d7a10ba84b Mon Sep 17 00:00:00 2001
-From: Adrian Freihofer <adrian.freihofer@siemens.com>
-Date: Sat, 7 Mar 2020 14:24:01 +0100
-Subject: [PATCH] Fix build with musl - systemd specific
-
----
- src/systemd/src/libsystemd-network/sd-dhcp6-client.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
-index ec7f1be..31bcd4d 100644
---- a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
-+++ b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
-@@ -7,7 +7,9 @@
-
- #include <errno.h>
- #include <sys/ioctl.h>
-+#ifdef __GLIBC__ /* musl supplies full set of userspace headers */
- #include <linux/if_arp.h>
-+#endif
- #include <linux/if_infiniband.h>
-
- #include "sd-dhcp6-client.h"
---
-2.24.1
-
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.28.0.bb b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.30.2.bb
index 7a20e914f..ec3bdd22b 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.28.0.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.30.2.bb
@@ -26,14 +26,12 @@ SRC_URI = " \
file://0001-Fixed-configure.ac-Fix-pkgconfig-sysroot-locations.patch \
file://0002-Do-not-create-settings-settings-property-documentati.patch \
file://0003-install-firewalld-to-var-libdir-rather-than-hardcod-.patch \
- file://0004-fix_reallocarray_check.patch \
"
SRC_URI_append_libc-musl = " \
file://musl/0001-Fix-build-with-musl-systemd-specific.patch \
- file://musl/0002-Fix-build-with-musl.patch \
- file://musl/0003-Fix-build-with-musl-systemd-specific.patch \
+ file://musl/0002-Fix-build-with-musl-systemd-specific.patch \
"
-SRC_URI[sha256sum] = "3e170e9045e20598d2630e40c5789b2e2c46b942bfe5cb220f36202299253062"
+SRC_URI[sha256sum] = "0c8e80e77877860e4a4e6ab4a0f7cdc1186e356b65b042a751897188b88944d2"
S = "${WORKDIR}/NetworkManager-${PV}"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.17.bb b/meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.17.1.bb
index 324114f63..9c20be537 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.17.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.17.1.bb
@@ -14,7 +14,7 @@ SRC_URI = "https://www.snort.org/downloads/archive/snort/${BP}.tar.gz \
file://disable-run-test-program-while-cross-compiling.patch \
file://configure.in-disable-tirpc-checking-for-fedora.patch \
"
-SRC_URI[sha256sum] = "c3b234c3922a09b0368b847ddb8d1fa371b741f032f42aa9ab53d67b428dc648"
+SRC_URI[sha256sum] = "303d3d5dc5affecfeaad3a331d3163f901d48d960fdd6598cb55c6d1591eed82"
UPSTREAM_CHECK_URI = "https://www.snort.org/downloads"
UPSTREAM_CHECK_REGEX = "snort-(?P<pver>\d+(\.\d+)+)\.tar"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/atftp/files/atftpd.init b/meta-openembedded/meta-networking/recipes-daemons/atftp/atftp/atftpd.init
index 161d97aca..161d97aca 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/atftp/files/atftpd.init
+++ b/meta-openembedded/meta-networking/recipes-daemons/atftp/atftp/atftpd.init
diff --git a/meta-openembedded/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.1.3.bb b/meta-openembedded/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.1.4.bb
index 4a9cf9db4..8a3dd011e 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.1.3.bb
+++ b/meta-openembedded/meta-networking/recipes-daemons/iscsi-initiator-utils/iscsi-initiator-utils_2.1.4.bb
@@ -12,7 +12,7 @@ DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-SRCREV ?= "34e3ffb194f6fa3028c0eb2ff57e7db2d1026771"
+SRCREV ?= "095f59ca464220eae285de6b5f2ee31185a6a84c"
SRC_URI = "git://github.com/open-iscsi/open-iscsi \
file://0001-Makefile-Do-not-set-Werror.patch \
diff --git a/meta-openembedded/meta-networking/recipes-daemons/lldpd/lldpd_1.0.4.bb b/meta-openembedded/meta-networking/recipes-daemons/lldpd/lldpd_1.0.8.bb
index 8fdaf848f..bd94c0919 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/lldpd/lldpd_1.0.4.bb
+++ b/meta-openembedded/meta-networking/recipes-daemons/lldpd/lldpd_1.0.8.bb
@@ -11,8 +11,8 @@ SRC_URI = "\
file://lldpd.default \
"
-SRC_URI[md5sum] = "33e8d58623f99184e4e709cbbfe45db3"
-SRC_URI[sha256sum] = "5319bc032fabf1008d5d91e280276aa7f1bbfbb70129d8526cd4526d7c22724f"
+SRC_URI[md5sum] = "000042dbf5b445f750b5ba01ab25c8ba"
+SRC_URI[sha256sum] = "98d200e76e30f6262c4a4493148c1840827898329146a57a34f8f0f928ca3def"
inherit autotools update-rc.d useradd systemd pkgconfig bash-completion
diff --git a/meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.10.bb b/meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.11.bb
index b724233ba..693aa9031 100644
--- a/meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.10.bb
+++ b/meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.11.bb
@@ -10,7 +10,7 @@ SECTION = "base"
DEPENDS = "libtool libmnl"
SRC_URI = "http://ftp.netfilter.org/pub/ipset/${BP}.tar.bz2"
-SRC_URI[sha256sum] = "b24906ba43e2fe322bd41863476761d749a4bddf5ce4c2265ba04b03bc7e9cf6"
+SRC_URI[sha256sum] = "3151baad30f1d9e317b2ab4f2f5aa7a9f7b4dc11fcf8fe73acd0dc0b5dbabf7d"
inherit autotools pkgconfig module-base
diff --git a/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_1.0.20210223.bb b/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_1.0.20210315.bb
index 4af7e3e66..f02303e0e 100644
--- a/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_1.0.20210223.bb
+++ b/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_1.0.20210315.bb
@@ -1,6 +1,6 @@
require wireguard.inc
-SRCREV = "6d3b876492298d0e311053567ecd7084972a8bc8"
+SRCREV = "622408872fd6f3a58e98e88d39d30e98968314fa"
SRC_URI = "git://git.zx2c4.com/wireguard-tools"
inherit bash-completion systemd pkgconfig
diff --git a/meta-openembedded/meta-networking/recipes-netkit/netkit-telnet/netkit-telnet_0.17.bb b/meta-openembedded/meta-networking/recipes-netkit/netkit-telnet/netkit-telnet_0.17.bb
index 08dd532b6..c05d0fd6c 100644
--- a/meta-openembedded/meta-networking/recipes-netkit/netkit-telnet/netkit-telnet_0.17.bb
+++ b/meta-openembedded/meta-networking/recipes-netkit/netkit-telnet/netkit-telnet_0.17.bb
@@ -5,7 +5,7 @@ DEPENDS = "ncurses"
LICENSE = "BSD-4-Clause"
LIC_FILES_CHKSUM = "file://telnet/telnet.cc;beginline=2;endline=3;md5=780868e7b566313e70cb701560ca95ef"
-SRC_URI = "http://ftp.linux.org.uk/pub/linux/Networking/netkit/${BP}.tar.gz \
+SRC_URI = "${DEBIAN_MIRROR}/main/n/netkit-telnet/netkit-telnet_${PV}.orig.tar.gz \
file://To-aviod-buffer-overflow-in-telnet.patch \
file://Warning-fix-in-the-step-of-install.patch \
file://telnet-xinetd \
diff --git a/meta-openembedded/meta-networking/recipes-protocols/mdns/mdns_1310.40.42.bb b/meta-openembedded/meta-networking/recipes-protocols/mdns/mdns_1310.40.42.bb
index 445ed87e4..60bc26bf1 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/mdns/mdns_1310.40.42.bb
+++ b/meta-openembedded/meta-networking/recipes-protocols/mdns/mdns_1310.40.42.bb
@@ -27,6 +27,19 @@ SRC_URI[sha256sum] = "bea29e1616cd56ccb8f88c0fad2bcdc4031f4deb2d899c793e2f27a838
CVE_PRODUCT = "apple:mdnsresponder"
+# CVE-2007-0613 is not applicable as it only affects Apple products
+# i.e. ichat,mdnsresponder, instant message framework and MacOS.
+# Also, https://www.exploit-db.com/exploits/3230 shows the part of code
+# affected by CVE-2007-0613 which is not preset in upstream source code.
+# Hence, CVE-2007-0613 does not affect other Yocto implementations and
+# is not reported for other distros can be marked whitelisted.
+# Links:
+# https://vulmon.com/vulnerabilitydetails?qid=CVE-2007-0613
+# https://www.incibe-cert.es/en/early-warning/vulnerabilities/cve-2007-0613
+# https://security-tracker.debian.org/tracker/CVE-2007-0613
+# https://vulmon.com/vulnerabilitydetails?qid=CVE-2007-0613
+CVE_CHECK_WHITELIST += "CVE-2007-0613"
+
PARALLEL_MAKE = ""
S = "${WORKDIR}/mDNSResponder-${PV}/mDNSPosix"
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/bgpd.service b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/bgpd.service
index c1021fbd7..818b59cb2 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/bgpd.service
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/bgpd.service
@@ -7,7 +7,6 @@ ConditionPathExists=@SYSCONFDIR@/quagga/bgpd.conf
[Service]
Type=forking
EnvironmentFile=-@SYSCONFDIR@/default/quagga
-PIDFile=/run/quagga/bgpd.pid
ExecStart=@SBINDIR@/bgpd -d $bgpd_options -f @SYSCONFDIR@/quagga/bgpd.conf
ExecStopPost=@base_bindir@/rm -rf /run/quagga/bgpd.pid
Restart=on-abort
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospf6d.service b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospf6d.service
index 99d0e6dca..50645fe2a 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospf6d.service
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospf6d.service
@@ -7,7 +7,6 @@ ConditionPathExists=@SYSCONFDIR@/quagga/ospf6d.conf
[Service]
Type=forking
EnvironmentFile=-@SYSCONFDIR@/default/quagga
-PIDFile=/run/quagga/ospf6d.pid
ExecStart=@SBINDIR@/ospf6d -d $ospf6d_options -f @SYSCONFDIR@/quagga/ospf6d.conf
ExecStopPost=@base_bindir@/rm -rf /run/quagga/ospf6d.pid
Restart=on-abort
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospfd.service b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospfd.service
index fe8343be1..2cab1cd14 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospfd.service
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ospfd.service
@@ -7,7 +7,6 @@ ConditionPathExists=@SYSCONFDIR@/quagga/ospfd.conf
[Service]
Type=forking
EnvironmentFile=-@SYSCONFDIR@/default/quagga
-PIDFile=/run/quagga/ospfd.pid
ExecStart=@SBINDIR@/ospfd -d $ospfd_options -f @SYSCONFDIR@/quagga/ospfd.conf
ExecStopPost=@base_bindir@/rm -rf /run/quagga/ospfd.pid
Restart=on-abort
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripd.service b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripd.service
index 7af65ca8a..2c824318a 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripd.service
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripd.service
@@ -7,7 +7,6 @@ ConditionPathExists=@SYSCONFDIR@/quagga/ripd.conf
[Service]
Type=forking
EnvironmentFile=-@SYSCONFDIR@/default/quagga
-PIDFile=/run/quagga/ripd.pid
ExecStart=@SBINDIR@/ripd -d $ripd_options -f @SYSCONFDIR@/quagga/ripd.conf
ExecStopPost=@base_bindir@/rm -rf /run/quagga/ripd.pid
Restart=on-abort
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripngd.service b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripngd.service
index 9305f86be..c3555b345 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripngd.service
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/ripngd.service
@@ -7,7 +7,6 @@ ConditionPathExists=@SYSCONFDIR@/quagga/ripngd.conf
[Service]
Type=forking
EnvironmentFile=-@SYSCONFDIR@/default/quagga
-PIDFile=/run/quagga/ripngd.pid
ExecStart=@SBINDIR@/ripngd -d $ripngd_options -f @SYSCONFDIR@/quagga/ripngd.conf
ExecStopPost=@base_bindir@/rm -rf /run/quagga/ripngd.pid
Restart=on-abort
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/zebra.service b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/zebra.service
index e34af7242..9186041ae 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/files/zebra.service
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/files/zebra.service
@@ -7,7 +7,6 @@ ConditionPathExists=@SYSCONFDIR@/quagga/zebra.conf
[Service]
Type=forking
EnvironmentFile=-@SYSCONFDIR@/default/quagga
-PIDFile=/run/quagga/zebra.pid
ExecStartPre=@BASE_SBINDIR@/ip route flush proto zebra
ExecStart=@SBINDIR@/zebra -d $zebra_options -f @SYSCONFDIR@/quagga/zebra.conf
ExecStopPost=@base_bindir@/rm -rf /run/quagga/zebra.pid
diff --git a/meta-openembedded/meta-networking/recipes-protocols/quagga/quagga.inc b/meta-openembedded/meta-networking/recipes-protocols/quagga/quagga.inc
index 6df72427b..3b7a425bb 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/quagga/quagga.inc
+++ b/meta-openembedded/meta-networking/recipes-protocols/quagga/quagga.inc
@@ -20,7 +20,7 @@ SNMP_CONF="${@bb.utils.contains('DISTRO_FEATURES', 'snmp', '--enable-snmp', '',
# the "ip" command from busybox is not sufficient (flush by protocol flushes all routes)
RDEPENDS_${PN} += "iproute2"
-SRC_URI = "${SAVANNAH_GNU_MIRROR}/quagga/quagga-${PV}.tar.gz; \
+SRC_URI = "https://github.com/Quagga/quagga/releases/download/quagga-${PV}/quagga-${PV}.tar.gz \
file://quagga.init \
file://quagga.default \
file://watchquagga.init \
diff --git a/meta-openembedded/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.bb b/meta-openembedded/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.bb
index 369232343..cf7185864 100644
--- a/meta-openembedded/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.bb
+++ b/meta-openembedded/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.bb
@@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=f9d20a453221a1b7e32ae84694da2c37"
SRCREV = "ab8a2cc330253321be7bc69dea88bfaa3d48415e"
SRC_URI = "\
- git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/bridge-utils.git \
+ git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/bridge-utils.git;branch=main \
file://kernel-headers.patch \
file://0005-build-don-t-ignore-CFLAGS-from-environment.patch \
file://0006-libbridge-Modifying-the-AR-to-cross-toolchain.patch \
diff --git a/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.13.bb b/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.14.bb
index c78d283d2..c0f2863db 100644
--- a/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.13.bb
+++ b/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.14.bb
@@ -12,8 +12,8 @@ SRC_URI = "http://dovecot.org/releases/2.3/dovecot-${PV}.tar.gz \
file://0001-not-check-pandoc.patch \
"
-SRC_URI[md5sum] = "f512bf1a4dac9ac994fddfb6bc5068ff"
-SRC_URI[sha256sum] = "a3f875b80ec11a452480690108660030978c94fa8e796ad6d943a874b496f1c4"
+SRC_URI[md5sum] = "2f03532cec3280ae45a101a7a55ccef5"
+SRC_URI[sha256sum] = "c8b3d7f3af1e558a3ff0f970309d4013a4d3ce136f8c02a53a3b05f345b9a34a"
DEPENDS = "openssl xz zlib bzip2 libcap icu libtirpc bison-native"
CFLAGS += "-I${STAGING_INCDIR}/tirpc"
diff --git a/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.16.bb b/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.18.bb
index 71163c8d9..7254a4713 100644
--- a/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.16.bb
+++ b/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.18.bb
@@ -12,7 +12,7 @@ DEPENDS = "openssl"
SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz \
"
-SRC_URI[sha256sum] = "044b9a0ac03afbae7744979defe3e2e32e39141bca68fd0c8deda2ed40884fb9"
+SRC_URI[sha256sum] = "302dc9bcdc6927dedf375d2baaead2347557faa70d98b1da83f2409fa6fb259f"
inherit autotools gettext python3-dir python3native
diff --git a/meta-openembedded/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb b/meta-openembedded/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb
index ed5c3a979..944c00576 100644
--- a/meta-openembedded/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb
+++ b/meta-openembedded/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb
@@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=e4f3ea6e9b28af88dc0321190a1f8250"
S = "${WORKDIR}/git"
SRCREV = "4cdfdc38eca237c19c22a8b90490446ce6d970fa"
-SRC_URI = "git://github.com/maxmind/geoip-api-perl.git;protocol=https; \
+SRC_URI = "git://github.com/maxmind/geoip-api-perl.git;branch=main \
file://run-ptest \
"
diff --git a/meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.12.bb b/meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.12.bb
index 4271c2e15..143100e48 100644
--- a/meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.12.bb
+++ b/meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.12.bb
@@ -10,7 +10,7 @@ SECTION = "libdevel"
GEOIP_DATABASE_VERSION = "20181205"
-SRC_URI = "git://github.com/maxmind/geoip-api-c.git \
+SRC_URI = "git://github.com/maxmind/geoip-api-c.git;branch=main \
http://sources.openembedded.org/GeoIP.dat.${GEOIP_DATABASE_VERSION}.gz;apply=no;name=GeoIP-dat; \
http://sources.openembedded.org/GeoIPv6.dat.${GEOIP_DATABASE_VERSION}.gz;apply=no;name=GeoIPv6-dat; \
http://sources.openembedded.org/GeoLiteCity.dat.${GEOIP_DATABASE_VERSION}.gz;apply=no;name=GeoLiteCity-dat; \
diff --git a/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_git.bb b/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.25.5.bb
index a63e49ec5..a6070ccf8 100644
--- a/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_git.bb
+++ b/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.25.5.bb
@@ -7,14 +7,12 @@ nbdkit is a toolkit for creating NBD servers."
HOMEPAGE = "https://github.com/libguestfs/nbdkit"
LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=4332a97808994cf2133a65b6c6f33eaf"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=f9dcc2d8acdde215fa4bd6ac12bb14f0"
SRC_URI = "git://github.com/libguestfs/nbdkit.git;protocol=https \
- file://0001-server-Fix-build-when-printf-is-a-macro.patch \
"
-PV = "1.19.6+git${SRCPV}"
-SRCREV = "257561bc9f2f01eb9f21686bcec4b863d17a26c4"
+SRCREV = "c828c6d48ff6b69454cad98054a1920d03c4b4c7"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Add-resolv_compat.h-for-musl-builds.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Add-resolv_compat.h-for-musl-builds.patch
new file mode 100644
index 000000000..aa7a5607c
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Add-resolv_compat.h-for-musl-builds.patch
@@ -0,0 +1,72 @@
+From c0c36ba5dd7047710e4c3135f147ce4119021200 Mon Sep 17 00:00:00 2001
+From: Trevor Gamblin <trevor.gamblin@windriver.com>
+Date: Wed, 14 Apr 2021 10:24:52 -0400
+Subject: [PATCH] Add resolv_compat.h for musl builds
+
+musl doesn't implement res_ninit, so it needs to be defined
+independently for musl builds. This patch is based on the one at
+https://gitweb.gentoo.org/proj/musl.git/tree/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-resolver.patch?id=7f4100326793d55d45d0f5bb6178827ce6173513
+
+Upstream-Status: Pending
+
+Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
+---
+ open-vm-tools/lib/nicInfo/nicInfoPosix.c | 4 +++
+ open-vm-tools/lib/nicInfo/resolv_compat.h | 30 +++++++++++++++++++++++
+ 2 files changed, 34 insertions(+)
+ create mode 100644 open-vm-tools/lib/nicInfo/resolv_compat.h
+
+diff --git a/open-vm-tools/lib/nicInfo/nicInfoPosix.c b/open-vm-tools/lib/nicInfo/nicInfoPosix.c
+index 8710c542..25f3146e 100644
+--- a/open-vm-tools/lib/nicInfo/nicInfoPosix.c
++++ b/open-vm-tools/lib/nicInfo/nicInfoPosix.c
+@@ -70,6 +70,10 @@
+ # include <net/if.h>
+ #endif
+
++#if !defined(__GLIBC__)
++#include "resolv_compat.h"
++#endif
++
+ /*
+ * resolver(3) and IPv6:
+ *
+diff --git a/open-vm-tools/lib/nicInfo/resolv_compat.h b/open-vm-tools/lib/nicInfo/resolv_compat.h
+new file mode 100644
+index 00000000..d768464b
+--- /dev/null
++++ b/open-vm-tools/lib/nicInfo/resolv_compat.h
+@@ -0,0 +1,30 @@
++#if !defined(__GLIBC__)
++/***************************************************************************
++ * resolv_compat.h
++ *
++ * Mimick GLIBC's res_ninit() and res_nclose() for musl libc
++ * Note: res_init() is actually deprecated according to
++ * http://docs.oracle.com/cd/E36784_01/html/E36875/res-nclose-3resolv.html
++ **************************************************************************/
++#include <string.h>
++
++static inline int res_ninit(res_state statp)
++{
++ int rc = res_init();
++ if (statp != &_res) {
++ memcpy(statp, &_res, sizeof(*statp));
++ }
++ return rc;
++}
++
++static inline int res_nclose(res_state statp)
++{
++ if (!statp)
++ return -1;
++ if (statp != &_res) {
++ memset(statp, 0, sizeof(*statp));
++ }
++ return 0;
++}
++#endif
++
+--
+2.30.2
+
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch
index 61a681f17..61a681f17 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch
index a711f5e5d..a711f5e5d 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch
index 82443ee66..82443ee66 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch
diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-pollGtk-Fix-volatile-qualifier-exposed-incorrectly.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-pollGtk-Fix-volatile-qualifier-exposed-incorrectly.patch
new file mode 100644
index 000000000..fdcd7d614
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-pollGtk-Fix-volatile-qualifier-exposed-incorrectly.patch
@@ -0,0 +1,29 @@
+From 524fd4db646b4ac2155074b4cedf8436a8ff726d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 15 Apr 2021 06:58:31 -0700
+Subject: [PATCH] pollGtk: Fix volatile qualifier exposed incorrectly
+
+GCC11 flags it
+
+Fixes
+glib-2.0/glib/gatomic.h:117:5: error: argument 2 of '__atomic_load' discards 'volatile' qualifier [-Werror=incompatible-pointer-types]
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ open-vm-tools/lib/pollGtk/pollGtk.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/open-vm-tools/lib/pollGtk/pollGtk.c b/open-vm-tools/lib/pollGtk/pollGtk.c
+index 4ccaeda6..336a8bf1 100644
+--- a/open-vm-tools/lib/pollGtk/pollGtk.c
++++ b/open-vm-tools/lib/pollGtk/pollGtk.c
+@@ -127,7 +127,7 @@ typedef struct Poll {
+ } Poll;
+
+ static Poll *pollState;
+-static volatile gsize inited = 0;
++static gsize inited = 0;
+
+ static VMwareStatus
+ PollGtkCallback(PollClassSet classSet, // IN
diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch
new file mode 100644
index 000000000..efada7aaf
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch
@@ -0,0 +1,49 @@
+From deba3b87a9bfad007f94b840c9ccd6f1c78c2e98 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 24 Mar 2021 17:36:26 -0400
+Subject: [PATCH 1/2] hgfsServerLinux: Consider 64bit time_t possibility
+
+Upstream-Status: Pending
+
+Refit for open-vm-tools-11.2.5.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
+Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
+---
+ .../lib/hgfsServer/hgfsServerLinux.c | 19 +++++--------------
+ 1 file changed, 5 insertions(+), 14 deletions(-)
+
+diff --git a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
+index 62aeee6d..ba2e5624 100644
+--- a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
++++ b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
+@@ -2566,20 +2566,11 @@ HgfsStatToFileAttr(struct stat *stats, // IN: stat information
+ LOG(4, "%s: done, permissions %o%o%o%o, size %"FMT64"u\n", __FUNCTION__,
+ attr->specialPerms, attr->ownerPerms, attr->groupPerms,
+ attr->otherPerms, attr->size);
+-#ifdef __FreeBSD__
+-# if !defined(VM_X86_64) && __FreeBSD_version >= 500043
+-# define FMTTIMET ""
+-# else
+-# define FMTTIMET "l"
+-# endif
+-#else
+-# define FMTTIMET "l"
+-#endif
+- LOG(4, "access: %"FMTTIMET"d/%"FMT64"u \nwrite: %"FMTTIMET"d/%"FMT64"u \n"
+- "attr: %"FMTTIMET"d/%"FMT64"u\n",
+- stats->st_atime, attr->accessTime, stats->st_mtime, attr->writeTime,
+- stats->st_ctime, attr->attrChangeTime);
+-#undef FMTTIMET
++ //LOG(4, ("access: %jd/%"FMT64"u \nwrite: %jd/%"FMT64"u \n"
++ // "attr: %jd/%"FMT64"u\n",
++ // (intmax_t)stats->st_atime, attr->accessTime,
++ // (intmax_t)stats->st_mtime, attr->writeTime,
++ // (intmax_t)stats->st_ctime, attr->attrChangeTime));
+
+ attr->userId = stats->st_uid;
+ attr->groupId = stats->st_gid;
+--
+2.30.2
+
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch
index 6d2e49814..6d2e49814 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch
index e107ecf23..e107ecf23 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch
index c6378b808..34d4ce4a9 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch
@@ -1,4 +1,4 @@
-From 719d60978f979cf2e03771a9b8a62e36c92639f9 Mon Sep 17 00:00:00 2001
+From b653a81da70c44af002dcbc7489ad9f4588ed11d Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Wed, 18 Nov 2015 10:05:07 +0000
Subject: [PATCH] Use configure to test for feature instead of platform
@@ -18,7 +18,10 @@ The features we test for are:
This is needed for musl libc.
+Refit patch of open-vm-tools/lib/nicInfo/nicInfoPosix.c
+
Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
+Signed-off-by: Randy MacLeod <randy.macleod@windriver.com>
---
open-vm-tools/configure.ac | 4 ++++
open-vm-tools/lib/misc/idLinux.c | 30 +++++++++++-------------
@@ -26,10 +29,10 @@ Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
3 files changed, 23 insertions(+), 17 deletions(-)
diff --git a/open-vm-tools/configure.ac b/open-vm-tools/configure.ac
-index 48ff1ef3..71e684bb 100644
+index 27f3717f..6baab9e3 100644
--- a/open-vm-tools/configure.ac
+++ b/open-vm-tools/configure.ac
-@@ -897,6 +897,7 @@ AC_CHECK_FUNCS(
+@@ -923,6 +923,7 @@ AC_CHECK_FUNCS(
AC_CHECK_FUNCS([ecvt])
AC_CHECK_FUNCS([fcvt])
@@ -37,7 +40,7 @@ index 48ff1ef3..71e684bb 100644
AC_CHECK_FUNC([mkdtemp], [have_mkdtemp=yes])
-@@ -1145,10 +1146,13 @@ fi
+@@ -1132,10 +1133,13 @@ fi
###
AC_CHECK_HEADERS([crypt.h])
@@ -52,7 +55,7 @@ index 48ff1ef3..71e684bb 100644
AC_CHECK_HEADERS([sys/io.h])
AC_CHECK_HEADERS([sys/param.h]) # Required to make the sys/user.h check work correctly on FreeBSD
diff --git a/open-vm-tools/lib/misc/idLinux.c b/open-vm-tools/lib/misc/idLinux.c
-index b950cf84..1dcfb508 100644
+index 1bb86f48..41c670cf 100644
--- a/open-vm-tools/lib/misc/idLinux.c
+++ b/open-vm-tools/lib/misc/idLinux.c
@@ -27,12 +27,9 @@
@@ -69,7 +72,7 @@ index b950cf84..1dcfb508 100644
#ifdef __APPLE__
#include <sys/socket.h>
#include <TargetConditionals.h>
-@@ -997,31 +994,32 @@ Id_EndSuperUser(uid_t uid) // IN:
+@@ -1025,31 +1022,32 @@ Id_EndSuperUser(uid_t uid) // IN:
static Bool
IdIsSetUGid(void)
{
@@ -115,13 +118,13 @@ index b950cf84..1dcfb508 100644
}
#endif
diff --git a/open-vm-tools/lib/nicInfo/nicInfoPosix.c b/open-vm-tools/lib/nicInfo/nicInfoPosix.c
-index a22981d5..b4e08681 100644
+index cc5fa281..8710c542 100644
--- a/open-vm-tools/lib/nicInfo/nicInfoPosix.c
+++ b/open-vm-tools/lib/nicInfo/nicInfoPosix.c
-@@ -34,9 +34,13 @@
- #include <sys/socket.h>
+@@ -35,9 +35,13 @@
#include <sys/stat.h>
#include <errno.h>
+ #include <limits.h>
-#if defined(__FreeBSD__) || defined(__APPLE__)
+#if HAVE_SYS_SYSCTL_H
# include <sys/sysctl.h>
@@ -133,3 +136,6 @@ index a22981d5..b4e08681 100644
# include <net/if.h>
#endif
#ifndef NO_DNET
+--
+2.27.0
+
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch
index 9a227f9ec..9a227f9ec 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch
index 11be2d4a0..11be2d4a0 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch
index 814b9e3b2..814b9e3b2 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch
diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch
new file mode 100644
index 000000000..214dac471
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch
@@ -0,0 +1,112 @@
+From 7a5db1cf47e70e72d78a42468912c276e57f865e Mon Sep 17 00:00:00 2001
+From: Randy MacLeod <Randy.MacLeod@windriver.com>
+Date: Wed, 24 Mar 2021 16:21:35 -0400
+Subject: [PATCH] Rename poll.h to vm_poll.h
+
+Rename poll.h to vm_poll.h and switch from:
+ #include <sys/poll.h>
+to
+ #include <poll.h>
+
+musl libc's system headers pulls in open-vm-tools' poll.h. To avoid this
+we rename poll.h to vm_poll.h.
+
+Update for open-vm-tools-11.2.5.
+
+Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
+---
+ open-vm-tools/lib/asyncsocket/asyncsocket.c | 2 +-
+ open-vm-tools/lib/hgfsServer/hgfsServer.c | 2 +-
+ open-vm-tools/lib/include/asyncsocket.h | 2 +-
+ open-vm-tools/lib/include/pollImpl.h | 2 +-
+ open-vm-tools/lib/include/{poll.h => vm_poll.h} | 2 +-
+ open-vm-tools/lib/rpcIn/rpcin.c | 2 +-
+ 6 files changed, 6 insertions(+), 6 deletions(-)
+ rename open-vm-tools/lib/include/{poll.h => vm_poll.h} (99%)
+
+diff --git a/open-vm-tools/lib/asyncsocket/asyncsocket.c b/open-vm-tools/lib/asyncsocket/asyncsocket.c
+index 9914ffc5..89679f7a 100644
+--- a/open-vm-tools/lib/asyncsocket/asyncsocket.c
++++ b/open-vm-tools/lib/asyncsocket/asyncsocket.c
+@@ -87,7 +87,7 @@
+ #include "random.h"
+ #include "asyncsocket.h"
+ #include "asyncSocketBase.h"
+-#include "poll.h"
++#include "vm_poll.h"
+ #include "log.h"
+ #include "err.h"
+ #include "hostinfo.h"
+diff --git a/open-vm-tools/lib/hgfsServer/hgfsServer.c b/open-vm-tools/lib/hgfsServer/hgfsServer.c
+index 3a18a7e1..acdda54d 100644
+--- a/open-vm-tools/lib/hgfsServer/hgfsServer.c
++++ b/open-vm-tools/lib/hgfsServer/hgfsServer.c
+@@ -51,7 +51,7 @@
+ #include "hgfsDirNotify.h"
+ #include "hgfsThreadpool.h"
+ #include "userlock.h"
+-#include "poll.h"
++#include "vm_poll.h"
+ #include "mutexRankLib.h"
+ #include "vm_basic_asm.h"
+ #include "unicodeOperations.h"
+diff --git a/open-vm-tools/lib/include/asyncsocket.h b/open-vm-tools/lib/include/asyncsocket.h
+index 746dd78b..82c22f46 100644
+--- a/open-vm-tools/lib/include/asyncsocket.h
++++ b/open-vm-tools/lib/include/asyncsocket.h
+@@ -171,7 +171,7 @@ typedef struct AsyncSocket AsyncSocket;
+ * Or the client can specify its favorite poll class and locking behavior.
+ * Use of IVmdbPoll is only supported for regular sockets and for Attach.
+ */
+-#include "poll.h"
++#include "vm_poll.h"
+ struct IVmdbPoll;
+ typedef struct AsyncSocketPollParams {
+ int flags; /* Default 0, only POLL_FLAG_NO_BULL is valid */
+diff --git a/open-vm-tools/lib/include/pollImpl.h b/open-vm-tools/lib/include/pollImpl.h
+index 46442e55..8bc66997 100644
+--- a/open-vm-tools/lib/include/pollImpl.h
++++ b/open-vm-tools/lib/include/pollImpl.h
+@@ -44,7 +44,7 @@
+ #define INCLUDE_ALLOW_USERLEVEL
+ #include "includeCheck.h"
+
+-#include "poll.h"
++#include "vm_poll.h"
+ #include "vm_basic_asm.h"
+
+ #if defined(__cplusplus)
+diff --git a/open-vm-tools/lib/include/poll.h b/open-vm-tools/lib/include/vm_poll.h
+similarity index 99%
+rename from open-vm-tools/lib/include/poll.h
+rename to open-vm-tools/lib/include/vm_poll.h
+index c90f5dcd..73a56204 100644
+--- a/open-vm-tools/lib/include/poll.h
++++ b/open-vm-tools/lib/include/vm_poll.h
+@@ -60,7 +60,7 @@ extern "C" {
+ #if !defined(TARGET_OS_IPHONE) || TARGET_OS_IPHONE == 0
+ #include <sys/kernel.h>
+ #endif
+-#include <sys/poll.h>
++#include <poll.h>
+ #define HZ 100
+ #endif
+ #ifdef __ANDROID__
+diff --git a/open-vm-tools/lib/rpcIn/rpcin.c b/open-vm-tools/lib/rpcIn/rpcin.c
+index 8b1fe759..f22fcd40 100644
+--- a/open-vm-tools/lib/rpcIn/rpcin.c
++++ b/open-vm-tools/lib/rpcIn/rpcin.c
+@@ -57,7 +57,7 @@
+
+ #if defined(VMTOOLS_USE_VSOCKET)
+ # include <glib.h>
+-# include "poll.h"
++# include "vm_poll.h"
+ # include "asyncsocket.h"
+ # include "vmci_defs.h"
+ #include "dataMap.h"
+--
+2.27.0
+
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch
index 784b4fc6c..784b4fc6c 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch
diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch
new file mode 100644
index 000000000..144b5837c
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch
@@ -0,0 +1,36 @@
+From 4b69d8fd78bf6edbc8b4ace58e621d46071fd8dc Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 24 Mar 2021 17:26:53 -0400
+Subject: [PATCH 2/2] Use uintmax_t for handling rlim_t
+
+rlimit types are not representable with long or long long
+formats, therefore use uintmax_t to typecast rlim_t types
+and use %j to print it
+
+Refit patch for open-vm-tools-11.2.5.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
+Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
+---
+ open-vm-tools/lib/hgfsServer/hgfsServerLinux.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
+index ba2e5624..889f730a 100644
+--- a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
++++ b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
+@@ -5292,8 +5292,8 @@ HgfsWriteCheckIORange(off_t offset, // IN:
+ goto exit;
+ }
+
+- LOG(6, "%s: File Size limits: 0x%"FMT64"x 0x%"FMT64"x\n",
+- __FUNCTION__, fileSize.rlim_cur, fileSize.rlim_max);
++ //LOG(6, ("%s: File Size limits: 0x%jx 0x%jx\n",
++ // __FUNCTION__, (uintmax_t)fileSize.rlim_cur, (uintmax_t)fileSize.rlim_max));
+
+ /*
+ * Check the offset is within the file size range.
+--
+2.30.2
+
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch
index d69b74e23..d69b74e23 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch
index 3e4753b2a..3e4753b2a 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/tools.conf b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/tools.conf
index f6cae70cc..f6cae70cc 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/tools.conf
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/tools.conf
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init
index 38280464a..38280464a 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service
index d30e38055..d30e38055 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools_11.0.1.bb b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.2.5.bb
index 34a81d21f..473af8d41 100644
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools_11.0.1.bb
+++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.2.5.bb
@@ -11,6 +11,10 @@
SUMMARY = "Tools to enhance VMWare guest integration and performance"
HOMEPAGE = "https://github.com/vmware/open-vm-tools"
+DESCRIPTION = "\
+open-vm-tools is a set of services and modules that enable several features in VMware products \
+for better management of and seamless user interactions with guests.\
+"
SECTION = "vmware-tools"
LICENSE = "LGPL-2.0 & GPL-2.0 & BSD & CDDL-1.0"
@@ -26,7 +30,6 @@ SRC_URI = "git://github.com/vmware/open-vm-tools.git;protocol=https \
file://vmtoolsd.service \
file://vmtoolsd.init \
file://0001-configure.ac-don-t-use-dnet-config.patch;patchdir=.. \
- file://0002-add-include-sys-sysmacros.h.patch;patchdir=.. \
file://0003-Use-configure-test-for-struct-timespec.patch;patchdir=.. \
file://0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch;patchdir=.. \
file://0005-Use-configure-to-test-for-feature-instead-of-platfor.patch;patchdir=.. \
@@ -38,14 +41,16 @@ SRC_URI = "git://github.com/vmware/open-vm-tools.git;protocol=https \
file://0011-Use-uintmax_t-for-handling-rlim_t.patch;patchdir=.. \
file://0012-Use-off64_t-instead-of-__off64_t.patch;patchdir=.. \
file://0013-misc-Do-not-print-NULL-string-into-logs.patch;patchdir=.. \
- file://0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch;patchdir=.. \
file://0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch;patchdir=.. \
file://0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch;patchdir=.. \
- file://0001-utilBacktrace-Ignore-Warray-bounds.patch;patchdir=.. \
file://0001-hgfsmounter-Makefile.am-support-usrmerge.patch;patchdir=.. \
+ file://0001-pollGtk-Fix-volatile-qualifier-exposed-incorrectly.patch;patchdir=.. \
+"
+
+SRC_URI_append_libc-musl = " file://0001-Add-resolv_compat.h-for-musl-builds.patch;patchdir=.. \
"
-SRCREV = "d3edfd142a81096f9f58aff17d84219b457f4987"
+SRCREV = "7ae57c3c7c1f68c74637ad009673dae94ee52570"
S = "${WORKDIR}/git/open-vm-tools"
@@ -110,7 +115,6 @@ INITSCRIPT_NAME_${PN} = "vmtoolsd"
INITSCRIPT_PARAMS_${PN} = "start 90 2 3 4 5 . stop 60 0 1 6 ."
python() {
- if 'networking-layer' not in d.getVar('BBFILE_COLLECTIONS').split() or \
- 'filesystems-layer' not in d.getVar('BBFILE_COLLECTIONS').split():
- raise bb.parse.SkipRecipe('Requires meta-networking and meta-filesystems to be present.')
+ if 'filesystems-layer' not in d.getVar('BBFILE_COLLECTIONS').split():
+ raise bb.parse.SkipRecipe('Requires meta-filesystems to be present to provide fuse.')
}
diff --git a/meta-openembedded/meta-networking/recipes-support/spice/usbredir_0.8.0.bb b/meta-openembedded/meta-networking/recipes-support/spice/usbredir_0.9.0.bb
index 9ee43be1e..079f52f99 100644
--- a/meta-openembedded/meta-networking/recipes-support/spice/usbredir_0.8.0.bb
+++ b/meta-openembedded/meta-networking/recipes-support/spice/usbredir_0.9.0.bb
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
DEPENDS = "libusb1"
-SRCREV = "07b98b8e71f620dfdd57e92ddef6b677b259a092"
+SRCREV = "bca484fc6f206ab9da2f73e8a0118fad45374d4e"
SRC_URI = " \
git://anongit.freedesktop.org/spice/usbredir \
diff --git a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch
index 209b0dd40..aeb0bece9 100644
--- a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch
+++ b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch
@@ -11,7 +11,7 @@ diff --git a/src/common.h b/src/common.h
index f7d38b0..bf485af 100644
--- a/src/common.h
+++ b/src/common.h
-@@ -471,7 +471,9 @@ extern char *sys_errlist[];
+@@ -478,7 +478,9 @@ extern char *sys_errlist[];
#ifndef OPENSSL_NO_MD4
#include <openssl/md4.h>
#endif /* !defined(OPENSSL_NO_MD4) */
@@ -25,8 +25,8 @@ diff --git a/src/protocol.c b/src/protocol.c
index 587df09..8198eb6 100644
--- a/src/protocol.c
+++ b/src/protocol.c
-@@ -66,7 +66,7 @@ NOEXPORT char *imap_server(CLI *, SERVICE_OPTIONS *, const PHASE);
- NOEXPORT char *nntp_client(CLI *, SERVICE_OPTIONS *, const PHASE);
+@@ -67,7 +67,7 @@ NOEXPORT char *imap_server(CLI *, SERVICE_OPTIONS *, const PHASE);
+ NOEXPORT char *ldap_client(CLI *, SERVICE_OPTIONS *, const PHASE);
NOEXPORT char *connect_server(CLI *, SERVICE_OPTIONS *, const PHASE);
NOEXPORT char *connect_client(CLI *, SERVICE_OPTIONS *, const PHASE);
-#ifndef OPENSSL_NO_MD4
@@ -34,7 +34,7 @@ index 587df09..8198eb6 100644
NOEXPORT void ntlm(CLI *, SERVICE_OPTIONS *);
NOEXPORT char *ntlm1();
NOEXPORT char *ntlm3(char *, char *, char *, char *);
-@@ -1175,7 +1175,7 @@ NOEXPORT char *connect_client(CLI *c, SERVICE_OPTIONS *opt, const PHASE phase) {
+@@ -1332,7 +1332,7 @@ NOEXPORT char *connect_client(CLI *c, SERVICE_OPTIONS *opt, const PHASE phase) {
fd_printf(c, c->remote_fd.fd, "Host: %s", opt->protocol_host);
if(opt->protocol_username && opt->protocol_password) {
if(!strcasecmp(opt->protocol_authentication, "ntlm")) {
@@ -43,7 +43,7 @@ index 587df09..8198eb6 100644
ntlm(c, opt);
#else
s_log(LOG_ERR, "NTLM authentication is not available");
-@@ -1216,7 +1216,7 @@ NOEXPORT char *connect_client(CLI *c, SERVICE_OPTIONS *opt, const PHASE phase) {
+@@ -1376,7 +1376,7 @@ NOEXPORT char *connect_client(CLI *c, SERVICE_OPTIONS *opt, const PHASE phase) {
return NULL;
}
diff --git a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.58.bb b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.59.bb
index 1f1ca4e6b..e3704ae1d 100644
--- a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.58.bb
+++ b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.59.bb
@@ -14,7 +14,7 @@ SRC_URI = "ftp://ftp.stunnel.org/stunnel/archive/5.x/${BP}.tar.gz \
file://fix-openssl-no-des.patch \
"
-SRC_URI[sha256sum] = "d4c14cc096577edca3f6a2a59c2f51869e35350b3988018ddf808c88e5973b79"
+SRC_URI[sha256sum] = "137776df6be8f1701f1cd590b7779932e123479fb91e5192171c16798815ce9f"
inherit autotools
diff --git a/meta-openembedded/meta-networking/recipes-support/vnstat/vnstat_2.6.bb b/meta-openembedded/meta-networking/recipes-support/vnstat/vnstat_2.6.bb
index 9a650f409..ad8802f3a 100644
--- a/meta-openembedded/meta-networking/recipes-support/vnstat/vnstat_2.6.bb
+++ b/meta-openembedded/meta-networking/recipes-support/vnstat/vnstat_2.6.bb
@@ -17,4 +17,6 @@ do_install_append() {
install -Dm644 ${S}/examples/systemd/vnstat.service "${D}${systemd_system_unitdir}/vnstat.service"
}
+PARALLEL_MAKEINST = ""
+
SYSTEMD_SERVICE_${PN} = "vnstat.service"
diff --git a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.3.bb b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.4.bb
index e730b18a0..b75f41835 100644
--- a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.3.bb
+++ b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.4.bb
@@ -19,7 +19,7 @@ SRC_URI += " \
UPSTREAM_CHECK_URI = "https://1.as.dl.wireshark.org/src"
-SRC_URI[sha256sum] = "f467cc77f0fc73fce0b854cdbc292f132d4879fca69d417eccad5f967fbf262b"
+SRC_URI[sha256sum] = "729cd11e9715c600e5ad74ca472bacf8af32c20902192d5f2b271268511d4d29"
PE = "1"
diff --git a/meta-openembedded/meta-oe/classes/image_types_sparse.bbclass b/meta-openembedded/meta-oe/classes/image_types_sparse.bbclass
new file mode 100644
index 000000000..1459f800a
--- /dev/null
+++ b/meta-openembedded/meta-oe/classes/image_types_sparse.bbclass
@@ -0,0 +1,16 @@
+inherit image_types
+
+CONVERSIONTYPES += "sparse"
+CONVERSION_CMD_sparse() {
+ in="${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
+ out="${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sparse"
+ case "${type}" in
+ ext*)
+ ext2simg "$in" "$out"
+ ;;
+ *)
+ img2simg "$in" "$out"
+ ;;
+ esac
+}
+CONVERSION_DEPENDS_sparse = "android-tools-native"
diff --git a/meta-openembedded/meta-oe/conf/layer.conf b/meta-openembedded/meta-oe/conf/layer.conf
index 3de301550..d3aeaba3d 100644
--- a/meta-openembedded/meta-oe/conf/layer.conf
+++ b/meta-openembedded/meta-oe/conf/layer.conf
@@ -26,10 +26,14 @@ BBFILE_PRIORITY_openembedded-layer = "6"
# only activates content when identified layers are present,
# to ensure yocto compatibility check pass
BBFILES_DYNAMIC += " \
-meta-python:${LAYERDIR}/dynamic-layers/meta-python/recipes-*/*/*.bb \
-networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/recipes-*/*/*.bb \
-gnome-layer:${LAYERDIR}/dynamic-layers/gnome-layer/recipes-*/*/*.bb \
-perl-layer:${LAYERDIR}/dynamic-layers/perl-layer/recipes-*/*/*.bb \
+ meta-python:${LAYERDIR}/dynamic-layers/meta-python/recipes-*/*/*.bb \
+ meta-python:${LAYERDIR}/dynamic-layers/meta-python/recipes-*/*/*.bbappend \
+ networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/recipes-*/*/*.bb \
+ networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/recipes-*/*/*.bbappend \
+ gnome-layer:${LAYERDIR}/dynamic-layers/gnome-layer/recipes-*/*/*.bb \
+ gnome-layer:${LAYERDIR}/dynamic-layers/gnome-layer/recipes-*/*/*.bbappend \
+ perl-layer:${LAYERDIR}/dynamic-layers/perl-layer/recipes-*/*/*.bb \
+ perl-layer:${LAYERDIR}/dynamic-layers/perl-layer/recipes-*/*/*.bbappend \
"
# This should only be incremented on significant changes that will
@@ -38,7 +42,7 @@ LAYERVERSION_openembedded-layer = "1"
LAYERDEPENDS_openembedded-layer = "core"
-LAYERSERIES_COMPAT_openembedded-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_openembedded-layer = " hardknott"
LICENSE_PATH += "${LAYERDIR}/licenses"
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/disable_runtime_check.patch b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/disable_runtime_check.patch
new file mode 100644
index 000000000..78ebba8fb
--- /dev/null
+++ b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/disable_runtime_check.patch
@@ -0,0 +1,17 @@
+Lets use cached result for this otherwise runtime test, on qemuppc64
+when this test is run using gcc11, it returns 1, since we dont worry
+about older compilers here, we can cache the result and use it here
+
+Upstream-Status: Inappropriate [Cross-compile specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/SConstruct
++++ b/SConstruct
+@@ -3904,7 +3904,7 @@ def doConfigure(myenv):
+
+ conf.AddTest('CheckAltivecVbpermqOutput', CheckAltivecVbpermqOutput)
+
+- outputIndex = next((idx for idx in [0,1] if conf.CheckAltivecVbpermqOutput(idx)), None)
++ outputIndex = 1
+ if outputIndex is not None:
+ conf.env.SetConfigHeaderDefine("MONGO_CONFIG_ALTIVEC_VEC_VBPERMQ_OUTPUT_INDEX", outputIndex)
+ else:
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/ppc64_ARCH_BITS.patch b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/ppc64_ARCH_BITS.patch
new file mode 100644
index 000000000..471d5629a
--- /dev/null
+++ b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/ppc64_ARCH_BITS.patch
@@ -0,0 +1,18 @@
+Subject: [PATCH] stacktrace: Define ARCH_BITS for ppc64
+
+src/mongo/util/stacktrace_somap.cpp:89:2: error: #error Unknown target architecture.
+stacktrace_somap.cpp:92:33: error: 'ELFCLASSARCH_BITS' was not declared in this scope
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/src/mongo/util/stacktrace_somap.cpp
++++ b/src/mongo/util/stacktrace_somap.cpp
+@@ -81,7 +81,7 @@ void addUnameToSoMap(BSONObjBuilder* soM
+
+ #if defined(__ELF_NATIVE_CLASS) // determine ARCH_BITS
+ #define ARCH_BITS __ELF_NATIVE_CLASS
+-#elif defined(__x86_64__) || defined(__aarch64__)
++#elif defined(__x86_64__) || defined(__aarch64__) || defined(__powerpc64__)
+ #define ARCH_BITS 64
+ #elif defined(__i386__) || defined(__arm__)
+ #define ARCH_BITS 32
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb_git.bb b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb_git.bb
index d0c4eba7e..b78255a04 100644
--- a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb_git.bb
+++ b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb_git.bb
@@ -11,9 +11,9 @@ DEPENDS = "openssl libpcap zlib boost curl python3 \
inherit scons dos2unix siteinfo python3native systemd useradd
-PV = "4.4.1"
-#v4.4.1
-SRCREV = "ad91a93a5a31e175f5cbf8c69561e788bbc55ce1"
+PV = "4.4.4"
+#v4.4.4
+SRCREV = "8db30a63db1a9d84bdcad0c83369623f708e0397"
SRC_URI = "git://github.com/mongodb/mongo.git;branch=v4.4 \
file://0001-kms-message-bump-libmongocrypto-to-v1.0.4.patch \
file://0001-Tell-scons-to-use-build-settings-from-environment-va.patch \
@@ -28,6 +28,8 @@ SRC_URI = "git://github.com/mongodb/mongo.git;branch=v4.4 \
file://0001-Fix-compilation-with-fno-common.patch \
file://0001-stacktrace-Define-ARCH_BITS-for-x86.patch \
file://0001-include-needed-c-header.patch \
+ file://disable_runtime_check.patch \
+ file://ppc64_ARCH_BITS.patch \
"
SRC_URI_append_libc-musl ="\
file://0001-Mark-one-of-strerror_r-implementation-glibc-specific.patch \
@@ -56,12 +58,15 @@ PACKAGECONFIG[tcmalloc] = "--use-system-tcmalloc,--allocator=system,gperftools,"
PACKAGECONFIG[shell] = ",--js-engine=none,,"
PACKAGECONFIG[system-pcre] = "--use-system-pcre,,libpcre,"
+MONGO_ARCH ?= "${HOST_ARCH}"
+MONGO_ARCH_powerpc64le = "ppc64le"
+
EXTRA_OESCONS = "PREFIX=${prefix} \
DESTDIR=${D} \
LIBPATH=${STAGING_LIBDIR} \
LINKFLAGS='${LDFLAGS}' \
CXXFLAGS='${CXXFLAGS}' \
- TARGET_ARCH=${TARGET_ARCH} \
+ TARGET_ARCH=${MONGO_ARCH} \
MONGO_VERSION=${PV} \
OBJCOPY=${OBJCOPY} \
--ssl \
@@ -116,5 +121,3 @@ scons_do_install() {
CONFFILES_${PN} = "${sysconfdir}/mongod.conf"
SYSTEMD_SERVICE_${PN} = "mongod.service"
-
-
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-devtools/nanopb/nanopb_0.4.4.bb b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-devtools/nanopb/nanopb_0.4.5.bb
index 19db89bdc..b2f8db9c0 100644
--- a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-devtools/nanopb/nanopb_0.4.4.bb
+++ b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-devtools/nanopb/nanopb_0.4.5.bb
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=9db4b73a55a3994384112efcdb37c01f"
DEPENDS = "protobuf-native"
SRC_URI = "git://github.com/nanopb/nanopb.git"
-SRCREV = "2b48a361786dfb1f63d229840217a93aae064667"
+SRCREV = "c9124132a604047d0ef97a09c0e99cd9bed2c818"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-core/packagegroups/packagegroup-meta-oe.bbappend b/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-core/packagegroups/packagegroup-meta-oe.bbappend
index b39a4d68f..09c478eb1 100644
--- a/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-core/packagegroups/packagegroup-meta-oe.bbappend
+++ b/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-core/packagegroups/packagegroup-meta-oe.bbappend
@@ -1,3 +1,6 @@
RDEPENDS_packagegroup-meta-oe-devtools += "\
valijson \
"
+
+RDEPENDS_packagegroup-meta-oe-support_append_x86 = "${@bb.utils.contains('BBFILE_COLLECTIONS', 'filesystems-layer', ' open-vm-tools', '', d)}"
+RDEPENDS_packagegroup-meta-oe-support_append_x86-64 = "${@bb.utils.contains('BBFILE_COLLECTIONS', 'filesystems-layer', ' open-vm-tools', '', d)}"
diff --git a/meta-openembedded/meta-oe/lib/oeqa/selftest/cases/meta_oe_sources.py b/meta-openembedded/meta-oe/lib/oeqa/selftest/cases/meta_oe_sources.py
index b17c7950c..c5a9a2794 100644
--- a/meta-openembedded/meta-oe/lib/oeqa/selftest/cases/meta_oe_sources.py
+++ b/meta-openembedded/meta-oe/lib/oeqa/selftest/cases/meta_oe_sources.py
@@ -6,6 +6,7 @@ import tempfile
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars
+
class MetaOESourceMirroring(OESelftestTestCase):
# Can we download everything from the OpenEmbedded Sources Mirror over http only
def test_oe_source_mirror(self):
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.25.bb b/meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.26.bb
index 6ab7ab79d..6f2464e5e 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.25.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.26.bb
@@ -22,7 +22,7 @@ PACKAGECONFIG_NUMA_armeb = ""
PACKAGECONFIG ??= "${PACKAGECONFIG_NUMA}"
PACKAGECONFIG[numa] = ",--disable-numa,numactl"
-SRCREV = "fd80924b22fef6ce0d5580724d91490347445f90"
+SRCREV = "267b164c372d57145880f365bab8d8a52bf8baa7"
SRC_URI = "git://git.kernel.dk/fio.git \
"
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/0003-fix-precision-handling-bugs.patch b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/0003-fix-precision-handling-bugs.patch
deleted file mode 100644
index af88f6cd2..000000000
--- a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/0003-fix-precision-handling-bugs.patch
+++ /dev/null
@@ -1,138 +0,0 @@
-From 90e837ffd1ff5c9add1074d69de23e58a3a4810e Mon Sep 17 00:00:00 2001
-From: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
-Date: Wed, 11 Nov 2020 09:26:03 -0500
-Subject: [PATCH 1/3] terrain: Fix precision bug in light rendering
-
-Resulting in overly bright rendering when mediump is implemented as
-fp16.
-
-Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
----
- data/shaders/terrain.frag | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/data/shaders/terrain.frag b/data/shaders/terrain.frag
-index 84d085c..58f17ea 100644
---- a/data/shaders/terrain.frag
-+++ b/data/shaders/terrain.frag
-@@ -67,7 +67,12 @@ void main() {
- vec3 pointSpecular = vec3( 0.0 );
- for ( int i = 0; i < MAX_POINT_LIGHTS; i ++ ) {
- vec4 lPosition = viewMatrix * vec4( pointLightPosition[ i ], 1.0 );
-+#ifdef GL_FRAGMENT_PRECISION_HIGH
-+ // should be highp for correct behaviour if mediump is implemented as fp16
-+ highp vec3 lVector = lPosition.xyz + vViewPosition.xyz;
-+#else
- vec3 lVector = lPosition.xyz + vViewPosition.xyz;
-+#endif
- float lDistance = 1.0;
- if ( pointLightDistance[ i ] > 0.0 )
- lDistance = 1.0 - min( ( length( lVector ) / pointLightDistance[ i ] ), 1.0 );
-
-From 1edd76fda77edabd49d713912aee49b8360c86c3 Mon Sep 17 00:00:00 2001
-From: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
-Date: Wed, 11 Nov 2020 09:49:52 -0500
-Subject: [PATCH 2/3] terrain: Fix precision handling in noise shader
-
-Another overflow resulting in infinity in mediump. Note this bug is
-masked if the driver clamps infinity to MAX_FLOAT, but it's still our
-bug.
-
-Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
----
- data/shaders/terrain-noise.frag | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/data/shaders/terrain-noise.frag b/data/shaders/terrain-noise.frag
-index 7fea5c0..9535e58 100644
---- a/data/shaders/terrain-noise.frag
-+++ b/data/shaders/terrain-noise.frag
-@@ -17,7 +17,13 @@ uniform float time;
- uniform MEDIUMP vec2 uvScale;
- varying vec2 vUv;
-
-+#ifdef GL_FRAGMENT_PRECISION_HIGH
-+// x should be passed as highp since the intermediate multiplications can
-+// overflow with mediump
-+vec4 permute(highp vec4 x)
-+#else
- vec4 permute(vec4 x)
-+#endif
- {
- return mod(((x * 34.0) + 1.0) * x, 289.0);
- }
-
-From e866cc633ffc450e5358b2742f32ca360e4f3f12 Mon Sep 17 00:00:00 2001
-From: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
-Date: Wed, 11 Nov 2020 09:35:21 -0500
-Subject: [PATCH 3/3] loop,function,conditionals: Fix mediump overflow
-
-The multiplication can produce infinity.
-
-Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
----
- data/shaders/conditionals.frag | 9 ++++++++-
- data/shaders/function.frag | 9 ++++++++-
- data/shaders/loop.frag | 9 ++++++++-
- 3 files changed, 24 insertions(+), 3 deletions(-)
-
-diff --git a/data/shaders/conditionals.frag b/data/shaders/conditionals.frag
-index 3bd2507..e902263 100644
---- a/data/shaders/conditionals.frag
-+++ b/data/shaders/conditionals.frag
-@@ -2,7 +2,14 @@ varying vec4 dummy;
-
- void main(void)
- {
-- float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
-+#ifdef GL_FRAGMENT_PRECISION_HIGH
-+ // should be declared highp since the multiplication can overflow in
-+ // mediump, particularly if mediump is implemented as fp16
-+ highp vec2 FragCoord = gl_FragCoord.xy;
-+#else
-+ vec2 FragCoord = gl_FragCoord.xy;
-+#endif
-+ float d = fract(FragCoord.x * FragCoord.y * 0.0001);
-
- $MAIN$
-
-diff --git a/data/shaders/function.frag b/data/shaders/function.frag
-index 3e3c74f..9d0230e 100644
---- a/data/shaders/function.frag
-+++ b/data/shaders/function.frag
-@@ -8,7 +8,14 @@ $PROCESS$
-
- void main(void)
- {
-- float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
-+#ifdef GL_FRAGMENT_PRECISION_HIGH
-+ // should be declared highp since the multiplication can overflow in
-+ // mediump, particularly if mediump is implemented as fp16
-+ highp vec2 FragCoord = gl_FragCoord.xy;
-+#else
-+ vec2 FragCoord = gl_FragCoord.xy;
-+#endif
-+ float d = fract(FragCoord.x * FragCoord.y * 0.0001);
-
- $MAIN$
-
-diff --git a/data/shaders/loop.frag b/data/shaders/loop.frag
-index 31ae23e..9a6afd2 100644
---- a/data/shaders/loop.frag
-+++ b/data/shaders/loop.frag
-@@ -3,7 +3,14 @@ uniform int FragmentLoops;
-
- void main(void)
- {
-- float d = fract(gl_FragCoord.x * gl_FragCoord.y * 0.0001);
-+#ifdef GL_FRAGMENT_PRECISION_HIGH
-+ // should be declared highp since the multiplication can overflow in
-+ // mediump, particularly if mediump is implemented as fp16
-+ highp vec2 FragCoord = gl_FragCoord.xy;
-+#else
-+ vec2 FragCoord = gl_FragCoord.xy;
-+#endif
-+ float d = fract(FragCoord.x * FragCoord.y * 0.0001);
-
- $MAIN$
-
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
index a5872f435..f5e719a35 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
@@ -9,17 +9,16 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
file://COPYING.SGI;beginline=5;md5=269cdab4af6748677acce51d9aa13552"
DEPENDS = "libpng jpeg udev"
-DEPENDS_append = " ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland-native', '', d)}"
+DEPENDS_append = " ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland-native wayland-protocols', '', d)}"
-PV = "20201114+${SRCPV}"
+PV = "2021.02+${SRCPV}"
SRC_URI = " \
git://github.com/glmark2/glmark2.git;protocol=https \
file://0001-fix-dispmanx-build.patch \
file://0002-run-dispmanx-fullscreen.patch \
- file://0003-fix-precision-handling-bugs.patch \
"
-SRCREV = "784aca755a469b144acf3cae180b6e613b7b057a"
+SRCREV = "4b2bbe803576d48f08367aa5441740f9319c21e7"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb b/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb
index fa63316b0..aa9eb02b3 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb
@@ -39,7 +39,7 @@ LIBARGS = "LIB32=${baselib} LIB64=${baselib}"
LIBHUGETLBFS_ARCH = "${TARGET_ARCH}"
LIBHUGETLBFS_ARCH_powerpc = "ppc"
LIBHUGETLBFS_ARCH_powerpc64 = "ppc64"
-LIBHUGETLBFS_ARCH_powerpc64le = "ppc64"
+LIBHUGETLBFS_ARCH_powerpc64le = "ppc64le"
EXTRA_OEMAKE = "'ARCH=${LIBHUGETLBFS_ARCH}' 'OPT=${CFLAGS}' 'CC=${CC}' ${LIBARGS} BUILDTYPE=NATIVEONLY V=2"
PARALLEL_MAKE = ""
CFLAGS += "-fexpensive-optimizations -frename-registers -fomit-frame-pointer -g0"
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb b/meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb
index 2ce10f9c4..0607da834 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb
@@ -6,7 +6,7 @@ HOMEPAGE = "https://github.com/ssvb/tinymembench/wiki"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://main.c;endline=22;md5=879b9bbb60851454885b5fa47eb6b345"
-PV = "0.4.0+git${SRCPV}"
+PV = "0.4.9+git${SRCPV}"
SRCREV = "a2cf6d7e382e3aea1eb39173174d9fa28cad15f3"
SRC_URI = "git://github.com/ssvb/tinymembench.git \
diff --git a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-Makefile-Check-for-last-line-only-from-preprocessed-.patch b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-Makefile-Check-for-last-line-only-from-preprocessed-.patch
deleted file mode 100644
index 7a8be8374..000000000
--- a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-Makefile-Check-for-last-line-only-from-preprocessed-.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 3c078497e506bd6acb406da5cde7ce20e8896353 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 23 Jul 2020 14:13:59 -0700
-Subject: [PATCH] Makefile: Check for last line only from preprocessed output
-
-This started to fail with glibc 2.32 since glibc added additional
-attributes to functions in signal.h therefore existing regexp started to
-fail as it is not able to handle these functions e.g.
-
-extern int siginterrupt (int __sig, int __interrupt) __attribute__ ((__nothrow__ , __leaf__))
- __attribute__ ((__deprecated__ ("Use sigaction with SA_RESTART instead")));
-
-grep -v '^\#' | grep '"' | cut -f 2 -d'"'
-bit outside of fd_set selected
-Use sigaction with SA_RESTART instead
-arm
-
-So changing it to
-tail -1 | grep '"' | cut -f 2 -d'"'
-arm
-
-Produces the expected result, this was hidden until now
-
-Upstream-Status: Submitted [https://review.coreboot.org/c/flashrom/+/43770]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Change-Id: I123a046e142d54632f12d54e2aa09b0928c02b91
----
- Makefile | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 803529f..3795681 100644
---- a/Makefile
-+++ b/Makefile
-@@ -106,7 +106,7 @@ endif
- # IMPORTANT: The following line must be placed before TARGET_OS is ever used
- # (of course), but should come after any lines setting CC because the line
- # below uses CC itself.
--override TARGET_OS := $(strip $(call debug_shell,$(CC) $(CPPFLAGS) -E os.h 2>/dev/null | grep -v '^\#' | grep '"' | cut -f 2 -d'"'))
-+override TARGET_OS := $(strip $(call debug_shell,$(CC) $(CPPFLAGS) -E os.h 2>/dev/null | tail -1 | grep '"' | cut -f 2 -d'"'))
-
- ifeq ($(TARGET_OS), Darwin)
- override CPPFLAGS += -I/opt/local/include -I/usr/local/include
-@@ -460,8 +460,8 @@ endif
- # IMPORTANT: The following line must be placed before ARCH is ever used
- # (of course), but should come after any lines setting CC because the line
- # below uses CC itself.
--override ARCH := $(strip $(call debug_shell,$(CC) $(CPPFLAGS) -E archtest.c 2>/dev/null | grep -v '^\#' | grep '"' | cut -f 2 -d'"'))
--override ENDIAN := $(strip $(call debug_shell,$(CC) $(CPPFLAGS) -E endiantest.c 2>/dev/null | grep -v '^\#'))
-+override ARCH := $(strip $(call debug_shell,$(CC) $(CPPFLAGS) -E archtest.c 2>/dev/null | tail -1 | grep '"' | cut -f 2 -d'"'))
-+override ENDIAN := $(strip $(call debug_shell,$(CC) $(CPPFLAGS) -E endiantest.c 2>/dev/null | tail -1))
-
- # Disable the internal programmer on unsupported architectures (everything but x86 and mipsel)
- ifneq ($(ARCH)-little, $(filter $(ARCH),x86 mips)-$(ENDIAN))
---
-2.27.0
-
diff --git a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-flashrom-Mark-RISCV-as-non-memory-mapped-I-O-archite.patch b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-flashrom-Mark-RISCV-as-non-memory-mapped-I-O-archite.patch
new file mode 100644
index 000000000..e481c5a16
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-flashrom-Mark-RISCV-as-non-memory-mapped-I-O-archite.patch
@@ -0,0 +1,44 @@
+From 2c777126765b4095bf481d5cfe4a21470374d940 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 30 Mar 2021 15:12:09 -0700
+Subject: [PATCH] flashrom: Mark RISCV as non memory-mapped I/O architecture
+
+Upstream-Status: Submitted [https://review.coreboot.org/c/flashrom/+/51960]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Change-Id: I55c4e8529d36f0850dd56441c3fb8602c5d889fd
+---
+ Makefile | 2 +-
+ hwaccess.h | 4 ++++
+ 2 files changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 6d37d55..203e04b 100644
+--- a/Makefile
++++ b/Makefile
+@@ -559,7 +559,7 @@ endif
+ # Disable all drivers needing raw access (memory, PCI, port I/O) on
+ # architectures with unknown raw access properties.
+ # Right now those architectures are alpha hppa m68k sh s390
+-ifneq ($(ARCH),$(filter $(ARCH),x86 mips ppc arm sparc arc))
++ifneq ($(ARCH),$(filter $(ARCH),x86 mips ppc arm sparc arc riscv))
+ ifeq ($(CONFIG_RAYER_SPI), yes)
+ UNSUPPORTED_FEATURES += CONFIG_RAYER_SPI=yes
+ else
+diff --git a/hwaccess.h b/hwaccess.h
+index 5602c15..e79988a 100644
+--- a/hwaccess.h
++++ b/hwaccess.h
+@@ -295,6 +295,10 @@ int libpayload_wrmsr(int addr, msr_t msr);
+
+ /* Non memory mapped I/O is not supported on ARC. */
+
++#elif IS_RISCV
++
++/* Non memory mapped I/O is not supported on RISCV. */
++
+ #else
+
+ #error Unknown architecture, please check if it supports PCI port IO.
+--
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-typecast-enum-conversions-explicitly.patch b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-typecast-enum-conversions-explicitly.patch
index 7ac53650f..f2302dbcc 100644
--- a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-typecast-enum-conversions-explicitly.patch
+++ b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/0001-typecast-enum-conversions-explicitly.patch
@@ -1,69 +1,45 @@
-From 8a236330f2af56bde21e9f69208ea3e59f529f0c Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 15 Mar 2020 17:02:30 -0700
-Subject: [PATCH] typecast enum conversions explicitly
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
-clang complains like below
+From 3a0c1966e4c66f91e6e8551e906b6db38002acb4 Mon Sep 17 00:00:00 2001
+From: Angel Pons <th3fanbus@gmail.com>
+Date: Wed, 27 May 2020 12:15:51 +0200
+Subject: [PATCH] libflashrom.c: Use casts on enum conversions
-libflashrom.c:191:43: error: implicit conversion from enumeration type 'const enum test_state' to different enumeration type 'enum flashrom_test_state' [-Werror,-Wenum-conversion]
- supported_boards[i].working = binfo[i].working;
- ~ ~~~~~~~~~^~~~~~~
-libflashrom.c:229:46: error: implicit conversion from enumeration type 'const enum test_state' to different enumeration type 'enum flashrom_test_state' [-Werror,-Wenum-conversion]
- supported_chipsets[i].status = chipset[i].status;
- ~ ~~~~~~~~~~~^~~~~~
+This allows flashrom to build with GCC 10.
-However these enums are exactly same so they can be typecasted
-
-libflashrom.h
-
-/** @ingroup flashrom-query */
-enum flashrom_test_state {
- FLASHROM_TESTED_OK = 0,
- FLASHROM_TESTED_NT = 1,
- FLASHROM_TESTED_BAD = 2,
- FLASHROM_TESTED_DEP = 3,
- FLASHROM_TESTED_NA = 4,
-};
-
-flash.h
-
-enum test_state {
- OK = 0,
- NT = 1, /* Not tested */
- BAD, /* Known to not work */
- DEP, /* Support depends on configuration (e.g. Intel flash descriptor) */
- NA, /* Not applicable (e.g. write support on ROM chips) */
- };
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Change-Id: I2166cdf3681452631ef8e980face2924e9a6c81a
+Signed-off-by: Angel Pons <th3fanbus@gmail.com>
+Reviewed-on: https://review.coreboot.org/c/flashrom/+/41775
+Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
+Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr>
---
- libflashrom.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
+ libflashrom.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/libflashrom.c b/libflashrom.c
-index 0dec22e..7956685 100644
+index ab7e364..c20d9c7 100644
--- a/libflashrom.c
+++ b/libflashrom.c
-@@ -188,7 +188,7 @@ struct flashrom_board_info *flashrom_supported_boards(void)
+@@ -188,7 +188,8 @@ struct flashrom_board_info *flashrom_supported_boards(void)
for (; i < boards_known_size; ++i) {
supported_boards[i].vendor = binfo[i].vendor;
supported_boards[i].name = binfo[i].name;
- supported_boards[i].working = binfo[i].working;
-+ supported_boards[i].working = (enum flashrom_test_state)binfo[i].working;
++ supported_boards[i].working =
++ (enum flashrom_test_state) binfo[i].working;
}
} else {
msg_gerr("Memory allocation error!\n");
-@@ -226,7 +226,7 @@ struct flashrom_chipset_info *flashrom_supported_chipsets(void)
+@@ -226,7 +227,8 @@ struct flashrom_chipset_info *flashrom_supported_chipsets(void)
supported_chipsets[i].chipset = chipset[i].device_name;
supported_chipsets[i].vendor_id = chipset[i].vendor_id;
supported_chipsets[i].chipset_id = chipset[i].device_id;
- supported_chipsets[i].status = chipset[i].status;
-+ supported_chipsets[i].status = (enum flashrom_test_state)chipset[i].status;
++ supported_chipsets[i].status =
++ (enum flashrom_test_state) chipset[i].status;
}
} else {
msg_gerr("Memory allocation error!\n");
--
2.25.1
-
diff --git a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/meson-fixes.patch b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/meson-fixes.patch
new file mode 100644
index 000000000..e45236ee0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom/meson-fixes.patch
@@ -0,0 +1,68 @@
+Add a ftdi option alongside USB and PCI to control the external dependency, and
+ensure that the build is successful in all combinations of options.
+
+Upstream-Status: Pending
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+diff --git a/meson.build b/meson.build
+index 375089c..0df9d69 100644
+--- a/meson.build
++++ b/meson.build
+@@ -91,6 +91,8 @@ else
+ config_digilent_spi = false
+ config_developerbox_spi = false
+ config_pickit2_spi = false
++ config_stlinkv3_spi = false
++ config_usbblaster_spi = false
+ endif
+
+ # some programmers require libpci
+@@ -118,6 +120,21 @@ else
+ config_satasii = false
+ endif
+
++# some programmers require libftdi
++if get_option('ftdi')
++ deps += dependency('libftdi1')
++else
++ config_ft2232_spi = false
++ config_usbblaster_spi = false
++endif
++
++if not (target_machine.cpu_family() == 'x86' or target_machine.cpu_family() == 'x86_64')
++ config_satamv = false
++ config_nic3com = false
++ config_rayer_spi = false
++ config_nicrealtek = false
++endif
++
+ # set defines for configured programmers
+ if config_atahpt
+ srcs += 'atahpt.c'
+@@ -163,7 +180,6 @@ endif
+ if config_ft2232_spi
+ srcs += 'ft2232_spi.c'
+ cargs += '-DCONFIG_FT2232_SPI=1'
+- deps += dependency('libftdi1')
+ cargs += '-DHAVE_FT232H=1'
+ endif
+ if config_gfxnvidia
+@@ -216,6 +232,7 @@ endif
+ if config_nicintel
+ srcs += 'nicintel.c'
+ cargs += '-DCONFIG_NICINTEL=1'
++ need_raw_access = true
+ endif
+ if config_nicintel_eeprom
+ srcs += 'nicintel_eeprom.c'
+diff --git a/meson_options.txt b/meson_options.txt
+index ea87311..b6b842d 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,5 +1,6 @@
+ option('pciutils', type : 'boolean', value : true, description : 'use pciutils')
+ option('usb', type : 'boolean', value : true, description : 'use libusb1')
++option('ftdi', type : 'boolean', value : true, description : 'use libftdi')
+
+ option('config_atahpt', type : 'boolean', value : false, description : 'Highpoint (HPT) ATA/RAID controllers')
+ option('config_atapromise', type : 'boolean', value : false, description : 'Promise ATA controller')
diff --git a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom_1.2.bb b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom_1.2.bb
index 66ae34af9..145a3cad0 100644
--- a/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom_1.2.bb
+++ b/meta-openembedded/meta-oe/recipes-bsp/flashrom/flashrom_1.2.bb
@@ -1,21 +1,21 @@
DESCRIPTION = "flashrom is a utility for identifying, reading, writing, verifying and erasing flash chips"
-LICENSE = "GPLv2"
+LICENSE = "GPLv2+"
HOMEPAGE = "http://flashrom.org"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-DEPENDS = "pciutils libusb libusb-compat"
-
SRC_URI = "https://download.flashrom.org/releases/flashrom-v${PV}.tar.bz2 \
file://0001-typecast-enum-conversions-explicitly.patch \
- file://0001-Makefile-Check-for-last-line-only-from-preprocessed-.patch \
+ file://meson-fixes.patch \
+ file://0001-flashrom-Mark-RISCV-as-non-memory-mapped-I-O-archite.patch \
"
SRC_URI[md5sum] = "7f8e4b87087eb12ecee0fcc5445b4956"
SRC_URI[sha256sum] = "e1f8d95881f5a4365dfe58776ce821dfcee0f138f75d0f44f8a3cd032d9ea42b"
S = "${WORKDIR}/flashrom-v${PV}"
-inherit pkgconfig
+inherit meson pkgconfig
-do_install() {
- oe_runmake PREFIX=${prefix} DESTDIR=${D} install
-}
+PACKAGECONFIG ??= "pci usb ftdi"
+PACKAGECONFIG[pci] = "-Dpciutils=true,-Dpciutils=false,pciutils"
+PACKAGECONFIG[usb] = "-Dusb=true,-Dusb=false,libusb"
+PACKAGECONFIG[ftdi] = "-Dftdi=true,-Dftdi=false,libftdi"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2019-5061.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2019-5061.patch
new file mode 100644
index 000000000..9214615d1
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2019-5061.patch
@@ -0,0 +1,854 @@
+From 018edec9b2bd3db20605117c32ff79c1e625c432 Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <j@w1.fi>
+Date: Wed, 11 Sep 2019 12:34:28 +0300
+Subject: [PATCH] Remove IAPP functionality from hostapd
+
+IEEE Std 802.11F-2003 was withdrawn in 2006 and as such it has not been
+maintained nor is there any expectation of the withdrawn trial-use
+recommended practice to be maintained in the future. Furthermore,
+implementation of IAPP in hostapd was not complete, i.e., only parts of
+the recommended practice were included. The main item of some real use
+long time ago was the Layer 2 Update frame to update bridges when a STA
+roams within an ESS, but that functionality has, in practice, been moved
+to kernel drivers to provide better integration with the networking
+stack.
+
+CVE: CVE-2019-5061
+
+Upstream-Status: Backport
+
+Signed-off-by: Jouni Malinen <j@w1.fi>
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ hostapd/Android.mk | 5 -
+ hostapd/Makefile | 5 -
+ hostapd/android.config | 3 -
+ hostapd/config_file.c | 3 +-
+ hostapd/defconfig | 3 -
+ hostapd/hostapd.conf | 6 -
+ hostapd/main.c | 3 -
+ src/ap/Makefile | 2 -
+ src/ap/ap_config.h | 4 -
+ src/ap/hostapd.c | 14 -
+ src/ap/hostapd.h | 2 -
+ src/ap/iapp.c | 542 ----------------------
+ src/ap/iapp.h | 39 --
+ src/utils/wpa_debug.h | 1 -
+ 14 files changed, 1 insertion(+), 633 deletions(-)
+ delete mode 100644 src/ap/iapp.c
+ delete mode 100644 src/ap/iapp.h
+
+diff --git a/hostapd/Android.mk b/hostapd/Android.mk
+index 3183323ef..a87ac8144 100644
+--- a/hostapd/Android.mk
++++ b/hostapd/Android.mk
+@@ -205,11 +205,6 @@ endif
+
+ L_CFLAGS += -DCONFIG_CTRL_IFACE -DCONFIG_CTRL_IFACE_UNIX
+
+-ifdef CONFIG_IAPP
+-L_CFLAGS += -DCONFIG_IAPP
+-OBJS += src/ap/iapp.c
+-endif
+-
+ ifdef CONFIG_RSN_PREAUTH
+ L_CFLAGS += -DCONFIG_RSN_PREAUTH
+ CONFIG_L2_PACKET=y
+diff --git a/hostapd/Makefile b/hostapd/Makefile
+index f7f4c785b..42bb9e4c8 100644
+--- a/hostapd/Makefile
++++ b/hostapd/Makefile
+@@ -248,11 +248,6 @@ ifndef CONFIG_NO_CTRL_IFACE
+ CFLAGS += -DCONFIG_CTRL_IFACE
+ endif
+
+-ifdef CONFIG_IAPP
+-CFLAGS += -DCONFIG_IAPP
+-OBJS += ../src/ap/iapp.o
+-endif
+-
+ ifdef CONFIG_RSN_PREAUTH
+ CFLAGS += -DCONFIG_RSN_PREAUTH
+ CONFIG_L2_PACKET=y
+diff --git a/hostapd/android.config b/hostapd/android.config
+index efe252332..e2e6c7821 100644
+--- a/hostapd/android.config
++++ b/hostapd/android.config
+@@ -38,9 +38,6 @@ CONFIG_DRIVER_NL80211_QCA=y
+ # Driver interface for no driver (e.g., RADIUS server only)
+ #CONFIG_DRIVER_NONE=y
+
+-# IEEE 802.11F/IAPP
+-#CONFIG_IAPP=y
+-
+ # WPA2/IEEE 802.11i RSN pre-authentication
+ #CONFIG_RSN_PREAUTH=y
+
+diff --git a/hostapd/config_file.c b/hostapd/config_file.c
+index 680f17ee0..0d340d252 100644
+--- a/hostapd/config_file.c
++++ b/hostapd/config_file.c
+@@ -2712,8 +2712,7 @@ static int hostapd_config_fill(struct hostapd_config *conf,
+ bss->eapol_key_index_workaround = atoi(pos);
+ #ifdef CONFIG_IAPP
+ } else if (os_strcmp(buf, "iapp_interface") == 0) {
+- bss->ieee802_11f = 1;
+- os_strlcpy(bss->iapp_iface, pos, sizeof(bss->iapp_iface));
++ wpa_printf(MSG_INFO, "DEPRECATED: iapp_interface not used");
+ #endif /* CONFIG_IAPP */
+ } else if (os_strcmp(buf, "own_ip_addr") == 0) {
+ if (hostapd_parse_ip_addr(pos, &bss->own_ip_addr)) {
+diff --git a/hostapd/defconfig b/hostapd/defconfig
+index b1fb56c3b..1a3d9f9ba 100644
+--- a/hostapd/defconfig
++++ b/hostapd/defconfig
+@@ -44,9 +44,6 @@ CONFIG_LIBNL32=y
+ # Driver interface for no driver (e.g., RADIUS server only)
+ #CONFIG_DRIVER_NONE=y
+
+-# IEEE 802.11F/IAPP
+-CONFIG_IAPP=y
+-
+ # WPA2/IEEE 802.11i RSN pre-authentication
+ CONFIG_RSN_PREAUTH=y
+
+diff --git a/hostapd/hostapd.conf b/hostapd/hostapd.conf
+index 6c96a760a..a3c698480 100644
+--- a/hostapd/hostapd.conf
++++ b/hostapd/hostapd.conf
+@@ -41,7 +41,6 @@ interface=wlan0
+ # bit 2 (4) = RADIUS
+ # bit 3 (8) = WPA
+ # bit 4 (16) = driver interface
+-# bit 5 (32) = IAPP
+ # bit 6 (64) = MLME
+ #
+ # Levels (minimum value for logged events):
+@@ -1243,11 +1242,6 @@ eap_server=0
+ # Whether to enable ERP on the EAP server.
+ #eap_server_erp=1
+
+-##### IEEE 802.11f - Inter-Access Point Protocol (IAPP) #######################
+-
+-# Interface to be used for IAPP broadcast packets
+-#iapp_interface=eth0
+-
+
+ ##### RADIUS client configuration #############################################
+ # for IEEE 802.1X with external Authentication Server, IEEE 802.11
+diff --git a/hostapd/main.c b/hostapd/main.c
+index 08896ffe2..8bfe24281 100644
+--- a/hostapd/main.c
++++ b/hostapd/main.c
+@@ -81,9 +81,6 @@ static void hostapd_logger_cb(void *ctx, const u8 *addr, unsigned int module,
+ case HOSTAPD_MODULE_DRIVER:
+ module_str = "DRIVER";
+ break;
+- case HOSTAPD_MODULE_IAPP:
+- module_str = "IAPP";
+- break;
+ case HOSTAPD_MODULE_MLME:
+ module_str = "MLME";
+ break;
+diff --git a/src/ap/Makefile b/src/ap/Makefile
+index bd3f33b77..54e48a0dd 100644
+--- a/src/ap/Makefile
++++ b/src/ap/Makefile
+@@ -18,7 +18,6 @@ CFLAGS += -DCONFIG_IEEE80211R_AP
+ CFLAGS += -DCONFIG_WPS
+ CFLAGS += -DCONFIG_PROXYARP
+ CFLAGS += -DCONFIG_IPV6
+-CFLAGS += -DCONFIG_IAPP
+ CFLAGS += -DCONFIG_AIRTIME_POLICY
+
+ LIB_OBJS= \
+@@ -41,7 +40,6 @@ LIB_OBJS= \
+ hostapd.o \
+ hs20.o \
+ hw_features.o \
+- iapp.o \
+ ieee802_11_auth.o \
+ ieee802_11.o \
+ ieee802_11_ht.o \
+diff --git a/src/ap/ap_config.h b/src/ap/ap_config.h
+index e219160b0..17eb0682b 100644
+--- a/src/ap/ap_config.h
++++ b/src/ap/ap_config.h
+@@ -325,10 +325,6 @@ struct hostapd_bss_config {
+ int erp_send_reauth_start;
+ char *erp_domain;
+
+- int ieee802_11f; /* use IEEE 802.11f (IAPP) */
+- char iapp_iface[IFNAMSIZ + 1]; /* interface used with IAPP broadcast
+- * frames */
+-
+ enum macaddr_acl {
+ ACCEPT_UNLESS_DENIED = 0,
+ DENY_UNLESS_ACCEPTED = 1,
+diff --git a/src/ap/hostapd.c b/src/ap/hostapd.c
+index ef988b634..bf7b1f89e 100644
+--- a/src/ap/hostapd.c
++++ b/src/ap/hostapd.c
+@@ -28,7 +28,6 @@
+ #include "accounting.h"
+ #include "ap_list.h"
+ #include "beacon.h"
+-#include "iapp.h"
+ #include "ieee802_1x.h"
+ #include "ieee802_11_auth.h"
+ #include "vlan_init.h"
+@@ -361,8 +360,6 @@ static void hostapd_free_hapd_data(struct hostapd_data *hapd)
+ hapd->beacon_set_done = 0;
+
+ wpa_printf(MSG_DEBUG, "%s(%s)", __func__, hapd->conf->iface);
+- iapp_deinit(hapd->iapp);
+- hapd->iapp = NULL;
+ accounting_deinit(hapd);
+ hostapd_deinit_wpa(hapd);
+ vlan_deinit(hapd);
+@@ -1296,13 +1293,6 @@ static int hostapd_setup_bss(struct hostapd_data *hapd, int first)
+ return -1;
+ }
+
+- if (conf->ieee802_11f &&
+- (hapd->iapp = iapp_init(hapd, conf->iapp_iface)) == NULL) {
+- wpa_printf(MSG_ERROR, "IEEE 802.11F (IAPP) initialization "
+- "failed.");
+- return -1;
+- }
+-
+ #ifdef CONFIG_INTERWORKING
+ if (gas_serv_init(hapd)) {
+ wpa_printf(MSG_ERROR, "GAS server initialization failed");
+@@ -3056,10 +3046,6 @@ void hostapd_new_assoc_sta(struct hostapd_data *hapd, struct sta_info *sta,
+ hostapd_prune_associations(hapd, sta->addr);
+ ap_sta_clear_disconnect_timeouts(hapd, sta);
+
+- /* IEEE 802.11F (IAPP) */
+- if (hapd->conf->ieee802_11f)
+- iapp_new_station(hapd->iapp, sta);
+-
+ #ifdef CONFIG_P2P
+ if (sta->p2p_ie == NULL && !sta->no_p2p_set) {
+ sta->no_p2p_set = 1;
+diff --git a/src/ap/hostapd.h b/src/ap/hostapd.h
+index 5b859b8a9..2358d1664 100644
+--- a/src/ap/hostapd.h
++++ b/src/ap/hostapd.h
+@@ -179,8 +179,6 @@ struct hostapd_data {
+ u64 acct_session_id;
+ struct radius_das_data *radius_das;
+
+- struct iapp_data *iapp;
+-
+ struct hostapd_cached_radius_acl *acl_cache;
+ struct hostapd_acl_query_data *acl_queries;
+
+diff --git a/src/ap/iapp.c b/src/ap/iapp.c
+deleted file mode 100644
+index 2556da30c..000000000
+--- a/src/ap/iapp.c
++++ /dev/null
+@@ -1,542 +0,0 @@
+-/*
+- * hostapd / IEEE 802.11F-2003 Inter-Access Point Protocol (IAPP)
+- * Copyright (c) 2002-2007, Jouni Malinen <j@w1.fi>
+- *
+- * This software may be distributed under the terms of the BSD license.
+- * See README for more details.
+- *
+- * Note: IEEE 802.11F-2003 was a experimental use specification. It has expired
+- * and IEEE has withdrawn it. In other words, it is likely better to look at
+- * using some other mechanism for AP-to-AP communication than extending the
+- * implementation here.
+- */
+-
+-/* TODO:
+- * Level 1: no administrative or security support
+- * (e.g., static BSSID to IP address mapping in each AP)
+- * Level 2: support for dynamic mapping of BSSID to IP address
+- * Level 3: support for encryption and authentication of IAPP messages
+- * - add support for MOVE-notify and MOVE-response (this requires support for
+- * finding out IP address for previous AP using RADIUS)
+- * - add support for Send- and ACK-Security-Block to speedup IEEE 802.1X during
+- * reassociation to another AP
+- * - implement counters etc. for IAPP MIB
+- * - verify endianness of fields in IAPP messages; are they big-endian as
+- * used here?
+- * - RADIUS connection for AP registration and BSSID to IP address mapping
+- * - TCP connection for IAPP MOVE, CACHE
+- * - broadcast ESP for IAPP ADD-notify
+- * - ESP for IAPP MOVE messages
+- * - security block sending/processing
+- * - IEEE 802.11 context transfer
+- */
+-
+-#include "utils/includes.h"
+-#include <net/if.h>
+-#include <sys/ioctl.h>
+-#include <netpacket/packet.h>
+-
+-#include "utils/common.h"
+-#include "utils/eloop.h"
+-#include "common/ieee802_11_defs.h"
+-#include "hostapd.h"
+-#include "ap_config.h"
+-#include "ieee802_11.h"
+-#include "sta_info.h"
+-#include "iapp.h"
+-
+-
+-#define IAPP_MULTICAST "224.0.1.178"
+-#define IAPP_UDP_PORT 3517
+-#define IAPP_TCP_PORT 3517
+-
+-struct iapp_hdr {
+- u8 version;
+- u8 command;
+- be16 identifier;
+- be16 length;
+- /* followed by length-6 octets of data */
+-} __attribute__ ((packed));
+-
+-#define IAPP_VERSION 0
+-
+-enum IAPP_COMMAND {
+- IAPP_CMD_ADD_notify = 0,
+- IAPP_CMD_MOVE_notify = 1,
+- IAPP_CMD_MOVE_response = 2,
+- IAPP_CMD_Send_Security_Block = 3,
+- IAPP_CMD_ACK_Security_Block = 4,
+- IAPP_CMD_CACHE_notify = 5,
+- IAPP_CMD_CACHE_response = 6,
+-};
+-
+-
+-/* ADD-notify - multicast UDP on the local LAN */
+-struct iapp_add_notify {
+- u8 addr_len; /* ETH_ALEN */
+- u8 reserved;
+- u8 mac_addr[ETH_ALEN];
+- be16 seq_num;
+-} __attribute__ ((packed));
+-
+-
+-/* Layer 2 Update frame (802.2 Type 1 LLC XID Update response) */
+-struct iapp_layer2_update {
+- u8 da[ETH_ALEN]; /* broadcast */
+- u8 sa[ETH_ALEN]; /* STA addr */
+- be16 len; /* 6 */
+- u8 dsap; /* null DSAP address */
+- u8 ssap; /* null SSAP address, CR=Response */
+- u8 control;
+- u8 xid_info[3];
+-} __attribute__ ((packed));
+-
+-
+-/* MOVE-notify - unicast TCP */
+-struct iapp_move_notify {
+- u8 addr_len; /* ETH_ALEN */
+- u8 reserved;
+- u8 mac_addr[ETH_ALEN];
+- u16 seq_num;
+- u16 ctx_block_len;
+- /* followed by ctx_block_len bytes */
+-} __attribute__ ((packed));
+-
+-
+-/* MOVE-response - unicast TCP */
+-struct iapp_move_response {
+- u8 addr_len; /* ETH_ALEN */
+- u8 status;
+- u8 mac_addr[ETH_ALEN];
+- u16 seq_num;
+- u16 ctx_block_len;
+- /* followed by ctx_block_len bytes */
+-} __attribute__ ((packed));
+-
+-enum {
+- IAPP_MOVE_SUCCESSFUL = 0,
+- IAPP_MOVE_DENIED = 1,
+- IAPP_MOVE_STALE_MOVE = 2,
+-};
+-
+-
+-/* CACHE-notify */
+-struct iapp_cache_notify {
+- u8 addr_len; /* ETH_ALEN */
+- u8 reserved;
+- u8 mac_addr[ETH_ALEN];
+- u16 seq_num;
+- u8 current_ap[ETH_ALEN];
+- u16 ctx_block_len;
+- /* ctx_block_len bytes of context block followed by 16-bit context
+- * timeout */
+-} __attribute__ ((packed));
+-
+-
+-/* CACHE-response - unicast TCP */
+-struct iapp_cache_response {
+- u8 addr_len; /* ETH_ALEN */
+- u8 status;
+- u8 mac_addr[ETH_ALEN];
+- u16 seq_num;
+-} __attribute__ ((packed));
+-
+-enum {
+- IAPP_CACHE_SUCCESSFUL = 0,
+- IAPP_CACHE_STALE_CACHE = 1,
+-};
+-
+-
+-/* Send-Security-Block - unicast TCP */
+-struct iapp_send_security_block {
+- u8 iv[8];
+- u16 sec_block_len;
+- /* followed by sec_block_len bytes of security block */
+-} __attribute__ ((packed));
+-
+-
+-/* ACK-Security-Block - unicast TCP */
+-struct iapp_ack_security_block {
+- u8 iv[8];
+- u8 new_ap_ack_authenticator[48];
+-} __attribute__ ((packed));
+-
+-
+-struct iapp_data {
+- struct hostapd_data *hapd;
+- u16 identifier; /* next IAPP identifier */
+- struct in_addr own, multicast;
+- int udp_sock;
+- int packet_sock;
+-};
+-
+-
+-static void iapp_send_add(struct iapp_data *iapp, u8 *mac_addr, u16 seq_num)
+-{
+- char buf[128];
+- struct iapp_hdr *hdr;
+- struct iapp_add_notify *add;
+- struct sockaddr_in addr;
+-
+- /* Send IAPP ADD-notify to remove possible association from other APs
+- */
+-
+- hdr = (struct iapp_hdr *) buf;
+- hdr->version = IAPP_VERSION;
+- hdr->command = IAPP_CMD_ADD_notify;
+- hdr->identifier = host_to_be16(iapp->identifier++);
+- hdr->length = host_to_be16(sizeof(*hdr) + sizeof(*add));
+-
+- add = (struct iapp_add_notify *) (hdr + 1);
+- add->addr_len = ETH_ALEN;
+- add->reserved = 0;
+- os_memcpy(add->mac_addr, mac_addr, ETH_ALEN);
+-
+- add->seq_num = host_to_be16(seq_num);
+-
+- os_memset(&addr, 0, sizeof(addr));
+- addr.sin_family = AF_INET;
+- addr.sin_addr.s_addr = iapp->multicast.s_addr;
+- addr.sin_port = htons(IAPP_UDP_PORT);
+- if (sendto(iapp->udp_sock, buf, (char *) (add + 1) - buf, 0,
+- (struct sockaddr *) &addr, sizeof(addr)) < 0)
+- wpa_printf(MSG_INFO, "sendto[IAPP-ADD]: %s", strerror(errno));
+-}
+-
+-
+-static void iapp_send_layer2_update(struct iapp_data *iapp, u8 *addr)
+-{
+- struct iapp_layer2_update msg;
+-
+- /* Send Level 2 Update Frame to update forwarding tables in layer 2
+- * bridge devices */
+-
+- /* 802.2 Type 1 Logical Link Control (LLC) Exchange Identifier (XID)
+- * Update response frame; IEEE Std 802.2-1998, 5.4.1.2.1 */
+-
+- os_memset(msg.da, 0xff, ETH_ALEN);
+- os_memcpy(msg.sa, addr, ETH_ALEN);
+- msg.len = host_to_be16(6);
+- msg.dsap = 0; /* NULL DSAP address */
+- msg.ssap = 0x01; /* NULL SSAP address, CR Bit: Response */
+- msg.control = 0xaf; /* XID response lsb.1111F101.
+- * F=0 (no poll command; unsolicited frame) */
+- msg.xid_info[0] = 0x81; /* XID format identifier */
+- msg.xid_info[1] = 1; /* LLC types/classes: Type 1 LLC */
+- msg.xid_info[2] = 1 << 1; /* XID sender's receive window size (RW)
+- * FIX: what is correct RW with 802.11? */
+-
+- if (send(iapp->packet_sock, &msg, sizeof(msg), 0) < 0)
+- wpa_printf(MSG_INFO, "send[L2 Update]: %s", strerror(errno));
+-}
+-
+-
+-/**
+- * iapp_new_station - IAPP processing for a new STA
+- * @iapp: IAPP data
+- * @sta: The associated station
+- */
+-void iapp_new_station(struct iapp_data *iapp, struct sta_info *sta)
+-{
+- u16 seq = 0; /* TODO */
+-
+- if (iapp == NULL)
+- return;
+-
+- /* IAPP-ADD.request(MAC Address, Sequence Number, Timeout) */
+- hostapd_logger(iapp->hapd, sta->addr, HOSTAPD_MODULE_IAPP,
+- HOSTAPD_LEVEL_DEBUG, "IAPP-ADD.request(seq=%d)", seq);
+- iapp_send_layer2_update(iapp, sta->addr);
+- iapp_send_add(iapp, sta->addr, seq);
+-
+- /* TODO: If this was reassociation:
+- * IAPP-MOVE.request(MAC Address, Sequence Number, Old AP,
+- * Context Block, Timeout)
+- * TODO: Send IAPP-MOVE to the old AP; Map Old AP BSSID to
+- * IP address */
+-}
+-
+-
+-static void iapp_process_add_notify(struct iapp_data *iapp,
+- struct sockaddr_in *from,
+- struct iapp_hdr *hdr, int len)
+-{
+- struct iapp_add_notify *add = (struct iapp_add_notify *) (hdr + 1);
+- struct sta_info *sta;
+-
+- if (len != sizeof(*add)) {
+- wpa_printf(MSG_INFO, "Invalid IAPP-ADD packet length %d (expected %lu)",
+- len, (unsigned long) sizeof(*add));
+- return;
+- }
+-
+- sta = ap_get_sta(iapp->hapd, add->mac_addr);
+-
+- /* IAPP-ADD.indication(MAC Address, Sequence Number) */
+- hostapd_logger(iapp->hapd, add->mac_addr, HOSTAPD_MODULE_IAPP,
+- HOSTAPD_LEVEL_INFO,
+- "Received IAPP ADD-notify (seq# %d) from %s:%d%s",
+- be_to_host16(add->seq_num),
+- inet_ntoa(from->sin_addr), ntohs(from->sin_port),
+- sta ? "" : " (STA not found)");
+-
+- if (!sta)
+- return;
+-
+- /* TODO: could use seq_num to try to determine whether last association
+- * to this AP is newer than the one advertised in IAPP-ADD. Although,
+- * this is not really a reliable verification. */
+-
+- hostapd_logger(iapp->hapd, add->mac_addr, HOSTAPD_MODULE_IAPP,
+- HOSTAPD_LEVEL_DEBUG,
+- "Removing STA due to IAPP ADD-notify");
+- ap_sta_disconnect(iapp->hapd, sta, NULL, 0);
+-}
+-
+-
+-/**
+- * iapp_receive_udp - Process IAPP UDP frames
+- * @sock: File descriptor for the socket
+- * @eloop_ctx: IAPP data (struct iapp_data *)
+- * @sock_ctx: Not used
+- */
+-static void iapp_receive_udp(int sock, void *eloop_ctx, void *sock_ctx)
+-{
+- struct iapp_data *iapp = eloop_ctx;
+- int len, hlen;
+- unsigned char buf[128];
+- struct sockaddr_in from;
+- socklen_t fromlen;
+- struct iapp_hdr *hdr;
+-
+- /* Handle incoming IAPP frames (over UDP/IP) */
+-
+- fromlen = sizeof(from);
+- len = recvfrom(iapp->udp_sock, buf, sizeof(buf), 0,
+- (struct sockaddr *) &from, &fromlen);
+- if (len < 0) {
+- wpa_printf(MSG_INFO, "iapp_receive_udp - recvfrom: %s",
+- strerror(errno));
+- return;
+- }
+-
+- if (from.sin_addr.s_addr == iapp->own.s_addr)
+- return; /* ignore own IAPP messages */
+-
+- hostapd_logger(iapp->hapd, NULL, HOSTAPD_MODULE_IAPP,
+- HOSTAPD_LEVEL_DEBUG,
+- "Received %d byte IAPP frame from %s%s\n",
+- len, inet_ntoa(from.sin_addr),
+- len < (int) sizeof(*hdr) ? " (too short)" : "");
+-
+- if (len < (int) sizeof(*hdr))
+- return;
+-
+- hdr = (struct iapp_hdr *) buf;
+- hlen = be_to_host16(hdr->length);
+- hostapd_logger(iapp->hapd, NULL, HOSTAPD_MODULE_IAPP,
+- HOSTAPD_LEVEL_DEBUG,
+- "RX: version=%d command=%d id=%d len=%d\n",
+- hdr->version, hdr->command,
+- be_to_host16(hdr->identifier), hlen);
+- if (hdr->version != IAPP_VERSION) {
+- wpa_printf(MSG_INFO, "Dropping IAPP frame with unknown version %d",
+- hdr->version);
+- return;
+- }
+- if (hlen > len) {
+- wpa_printf(MSG_INFO, "Underflow IAPP frame (hlen=%d len=%d)",
+- hlen, len);
+- return;
+- }
+- if (hlen < len) {
+- wpa_printf(MSG_INFO, "Ignoring %d extra bytes from IAPP frame",
+- len - hlen);
+- len = hlen;
+- }
+-
+- switch (hdr->command) {
+- case IAPP_CMD_ADD_notify:
+- iapp_process_add_notify(iapp, &from, hdr, len - sizeof(*hdr));
+- break;
+- case IAPP_CMD_MOVE_notify:
+- /* TODO: MOVE is using TCP; so move this to TCP handler once it
+- * is implemented.. */
+- /* IAPP-MOVE.indication(MAC Address, New BSSID,
+- * Sequence Number, AP Address, Context Block) */
+- /* TODO: process */
+- break;
+- default:
+- wpa_printf(MSG_INFO, "Unknown IAPP command %d", hdr->command);
+- break;
+- }
+-}
+-
+-
+-struct iapp_data * iapp_init(struct hostapd_data *hapd, const char *iface)
+-{
+- struct ifreq ifr;
+- struct sockaddr_ll addr;
+- int ifindex;
+- struct sockaddr_in *paddr, uaddr;
+- struct iapp_data *iapp;
+- struct ip_mreqn mreq;
+- int reuseaddr = 1;
+-
+- iapp = os_zalloc(sizeof(*iapp));
+- if (iapp == NULL)
+- return NULL;
+- iapp->hapd = hapd;
+- iapp->udp_sock = iapp->packet_sock = -1;
+-
+- /* TODO:
+- * open socket for sending and receiving IAPP frames over TCP
+- */
+-
+- iapp->udp_sock = socket(PF_INET, SOCK_DGRAM, 0);
+- if (iapp->udp_sock < 0) {
+- wpa_printf(MSG_INFO, "iapp_init - socket[PF_INET,SOCK_DGRAM]: %s",
+- strerror(errno));
+- iapp_deinit(iapp);
+- return NULL;
+- }
+-
+- os_memset(&ifr, 0, sizeof(ifr));
+- os_strlcpy(ifr.ifr_name, iface, sizeof(ifr.ifr_name));
+- if (ioctl(iapp->udp_sock, SIOCGIFINDEX, &ifr) != 0) {
+- wpa_printf(MSG_INFO, "iapp_init - ioctl(SIOCGIFINDEX): %s",
+- strerror(errno));
+- iapp_deinit(iapp);
+- return NULL;
+- }
+- ifindex = ifr.ifr_ifindex;
+-
+- if (ioctl(iapp->udp_sock, SIOCGIFADDR, &ifr) != 0) {
+- wpa_printf(MSG_INFO, "iapp_init - ioctl(SIOCGIFADDR): %s",
+- strerror(errno));
+- iapp_deinit(iapp);
+- return NULL;
+- }
+- paddr = (struct sockaddr_in *) &ifr.ifr_addr;
+- if (paddr->sin_family != AF_INET) {
+- wpa_printf(MSG_INFO, "IAPP: Invalid address family %i (SIOCGIFADDR)",
+- paddr->sin_family);
+- iapp_deinit(iapp);
+- return NULL;
+- }
+- iapp->own.s_addr = paddr->sin_addr.s_addr;
+-
+- if (ioctl(iapp->udp_sock, SIOCGIFBRDADDR, &ifr) != 0) {
+- wpa_printf(MSG_INFO, "iapp_init - ioctl(SIOCGIFBRDADDR): %s",
+- strerror(errno));
+- iapp_deinit(iapp);
+- return NULL;
+- }
+- paddr = (struct sockaddr_in *) &ifr.ifr_addr;
+- if (paddr->sin_family != AF_INET) {
+- wpa_printf(MSG_INFO, "Invalid address family %i (SIOCGIFBRDADDR)",
+- paddr->sin_family);
+- iapp_deinit(iapp);
+- return NULL;
+- }
+- inet_aton(IAPP_MULTICAST, &iapp->multicast);
+-
+- os_memset(&uaddr, 0, sizeof(uaddr));
+- uaddr.sin_family = AF_INET;
+- uaddr.sin_port = htons(IAPP_UDP_PORT);
+-
+- if (setsockopt(iapp->udp_sock, SOL_SOCKET, SO_REUSEADDR, &reuseaddr,
+- sizeof(reuseaddr)) < 0) {
+- wpa_printf(MSG_INFO,
+- "iapp_init - setsockopt[UDP,SO_REUSEADDR]: %s",
+- strerror(errno));
+- /*
+- * Ignore this and try to continue. This is fine for single
+- * BSS cases, but may fail if multiple BSSes enable IAPP.
+- */
+- }
+-
+- if (bind(iapp->udp_sock, (struct sockaddr *) &uaddr,
+- sizeof(uaddr)) < 0) {
+- wpa_printf(MSG_INFO, "iapp_init - bind[UDP]: %s",
+- strerror(errno));
+- iapp_deinit(iapp);
+- return NULL;
+- }
+-
+- os_memset(&mreq, 0, sizeof(mreq));
+- mreq.imr_multiaddr = iapp->multicast;
+- mreq.imr_address.s_addr = INADDR_ANY;
+- mreq.imr_ifindex = 0;
+- if (setsockopt(iapp->udp_sock, SOL_IP, IP_ADD_MEMBERSHIP, &mreq,
+- sizeof(mreq)) < 0) {
+- wpa_printf(MSG_INFO, "iapp_init - setsockopt[UDP,IP_ADD_MEMBERSHIP]: %s",
+- strerror(errno));
+- iapp_deinit(iapp);
+- return NULL;
+- }
+-
+- iapp->packet_sock = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL));
+- if (iapp->packet_sock < 0) {
+- wpa_printf(MSG_INFO, "iapp_init - socket[PF_PACKET,SOCK_RAW]: %s",
+- strerror(errno));
+- iapp_deinit(iapp);
+- return NULL;
+- }
+-
+- os_memset(&addr, 0, sizeof(addr));
+- addr.sll_family = AF_PACKET;
+- addr.sll_ifindex = ifindex;
+- if (bind(iapp->packet_sock, (struct sockaddr *) &addr,
+- sizeof(addr)) < 0) {
+- wpa_printf(MSG_INFO, "iapp_init - bind[PACKET]: %s",
+- strerror(errno));
+- iapp_deinit(iapp);
+- return NULL;
+- }
+-
+- if (eloop_register_read_sock(iapp->udp_sock, iapp_receive_udp,
+- iapp, NULL)) {
+- wpa_printf(MSG_INFO, "Could not register read socket for IAPP");
+- iapp_deinit(iapp);
+- return NULL;
+- }
+-
+- wpa_printf(MSG_INFO, "IEEE 802.11F (IAPP) using interface %s", iface);
+-
+- /* TODO: For levels 2 and 3: send RADIUS Initiate-Request, receive
+- * RADIUS Initiate-Accept or Initiate-Reject. IAPP port should actually
+- * be openned only after receiving Initiate-Accept. If Initiate-Reject
+- * is received, IAPP is not started. */
+-
+- return iapp;
+-}
+-
+-
+-void iapp_deinit(struct iapp_data *iapp)
+-{
+- struct ip_mreqn mreq;
+-
+- if (iapp == NULL)
+- return;
+-
+- if (iapp->udp_sock >= 0) {
+- os_memset(&mreq, 0, sizeof(mreq));
+- mreq.imr_multiaddr = iapp->multicast;
+- mreq.imr_address.s_addr = INADDR_ANY;
+- mreq.imr_ifindex = 0;
+- if (setsockopt(iapp->udp_sock, SOL_IP, IP_DROP_MEMBERSHIP,
+- &mreq, sizeof(mreq)) < 0) {
+- wpa_printf(MSG_INFO, "iapp_deinit - setsockopt[UDP,IP_DEL_MEMBERSHIP]: %s",
+- strerror(errno));
+- }
+-
+- eloop_unregister_read_sock(iapp->udp_sock);
+- close(iapp->udp_sock);
+- }
+- if (iapp->packet_sock >= 0) {
+- eloop_unregister_read_sock(iapp->packet_sock);
+- close(iapp->packet_sock);
+- }
+- os_free(iapp);
+-}
+diff --git a/src/ap/iapp.h b/src/ap/iapp.h
+deleted file mode 100644
+index c22118342..000000000
+--- a/src/ap/iapp.h
++++ /dev/null
+@@ -1,39 +0,0 @@
+-/*
+- * hostapd / IEEE 802.11F-2003 Inter-Access Point Protocol (IAPP)
+- * Copyright (c) 2002-2005, Jouni Malinen <j@w1.fi>
+- *
+- * This software may be distributed under the terms of the BSD license.
+- * See README for more details.
+- */
+-
+-#ifndef IAPP_H
+-#define IAPP_H
+-
+-struct iapp_data;
+-
+-#ifdef CONFIG_IAPP
+-
+-void iapp_new_station(struct iapp_data *iapp, struct sta_info *sta);
+-struct iapp_data * iapp_init(struct hostapd_data *hapd, const char *iface);
+-void iapp_deinit(struct iapp_data *iapp);
+-
+-#else /* CONFIG_IAPP */
+-
+-static inline void iapp_new_station(struct iapp_data *iapp,
+- struct sta_info *sta)
+-{
+-}
+-
+-static inline struct iapp_data * iapp_init(struct hostapd_data *hapd,
+- const char *iface)
+-{
+- return NULL;
+-}
+-
+-static inline void iapp_deinit(struct iapp_data *iapp)
+-{
+-}
+-
+-#endif /* CONFIG_IAPP */
+-
+-#endif /* IAPP_H */
+diff --git a/src/utils/wpa_debug.h b/src/utils/wpa_debug.h
+index 1fe0b7db7..c94c4391f 100644
+--- a/src/utils/wpa_debug.h
++++ b/src/utils/wpa_debug.h
+@@ -305,7 +305,6 @@ void hostapd_logger_register_cb(hostapd_logger_cb_func func);
+ #define HOSTAPD_MODULE_RADIUS 0x00000004
+ #define HOSTAPD_MODULE_WPA 0x00000008
+ #define HOSTAPD_MODULE_DRIVER 0x00000010
+-#define HOSTAPD_MODULE_IAPP 0x00000020
+ #define HOSTAPD_MODULE_MLME 0x00000040
+
+ enum hostapd_logger_level {
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-0326.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-0326.patch
new file mode 100644
index 000000000..54c405b53
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-0326.patch
@@ -0,0 +1,43 @@
+From 947272febe24a8f0ea828b5b2f35f13c3821901e Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <jouni@codeaurora.org>
+Date: Mon, 9 Nov 2020 11:43:12 +0200
+Subject: [PATCH] P2P: Fix copying of secondary device types for P2P group
+ client
+
+Parsing and copying of WPS secondary device types list was verifying
+that the contents is not too long for the internal maximum in the case
+of WPS messages, but similar validation was missing from the case of P2P
+group information which encodes this information in a different
+attribute. This could result in writing beyond the memory area assigned
+for these entries and corrupting memory within an instance of struct
+p2p_device. This could result in invalid operations and unexpected
+behavior when trying to free pointers from that corrupted memory.
+
+CVE: CVE-2021-0326
+
+Upstream-Status: Backport
+
+Credit to OSS-Fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=27269
+Fixes: e57ae6e19edf ("P2P: Keep track of secondary device types for peers")
+Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ src/p2p/p2p.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/p2p/p2p.c b/src/p2p/p2p.c
+index 74b7b52ae..5cbfc217f 100644
+--- a/src/p2p/p2p.c
++++ b/src/p2p/p2p.c
+@@ -453,6 +453,8 @@ static void p2p_copy_client_info(struct p2p_device *dev,
+ dev->info.config_methods = cli->config_methods;
+ os_memcpy(dev->info.pri_dev_type, cli->pri_dev_type, 8);
+ dev->info.wps_sec_dev_type_list_len = 8 * cli->num_sec_dev_types;
++ if (dev->info.wps_sec_dev_type_list_len > WPS_SEC_DEV_TYPE_MAX_LEN)
++ dev->info.wps_sec_dev_type_list_len = WPS_SEC_DEV_TYPE_MAX_LEN;
+ os_memcpy(dev->info.wps_sec_dev_type_list, cli->sec_dev_types,
+ dev->info.wps_sec_dev_type_list_len);
+ }
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-27803.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-27803.patch
new file mode 100644
index 000000000..fedff76b1
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-27803.patch
@@ -0,0 +1,54 @@
+From 8460e3230988ef2ec13ce6b69b687e941f6cdb32 Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <jouni@codeaurora.org>
+Date: Tue, 8 Dec 2020 23:52:50 +0200
+Subject: [PATCH] P2P: Fix a corner case in peer addition based on PD Request
+
+p2p_add_device() may remove the oldest entry if there is no room in the
+peer table for a new peer. This would result in any pointer to that
+removed entry becoming stale. A corner case with an invalid PD Request
+frame could result in such a case ending up using (read+write) freed
+memory. This could only by triggered when the peer table has reached its
+maximum size and the PD Request frame is received from the P2P Device
+Address of the oldest remaining entry and the frame has incorrect P2P
+Device Address in the payload.
+
+Fix this by fetching the dev pointer again after having called
+p2p_add_device() so that the stale pointer cannot be used.
+
+CVE: CVE-2021-27803
+
+Upstream-Status: Backport
+
+Fixes: 17bef1e97a50 ("P2P: Add peer entry based on Provision Discovery Request")
+Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
+---
+ src/p2p/p2p_pd.c | 12 +++++-------
+ 1 file changed, 5 insertions(+), 7 deletions(-)
+
+diff --git a/src/p2p/p2p_pd.c b/src/p2p/p2p_pd.c
+index 3994ec03f..05fd59349 100644
+--- a/src/p2p/p2p_pd.c
++++ b/src/p2p/p2p_pd.c
+@@ -595,14 +595,12 @@ void p2p_process_prov_disc_req(struct p2p_data *p2p, const u8 *sa,
+ goto out;
+ }
+
++ dev = p2p_get_device(p2p, sa);
+ if (!dev) {
+- dev = p2p_get_device(p2p, sa);
+- if (!dev) {
+- p2p_dbg(p2p,
+- "Provision Discovery device not found "
+- MACSTR, MAC2STR(sa));
+- goto out;
+- }
++ p2p_dbg(p2p,
++ "Provision Discovery device not found "
++ MACSTR, MAC2STR(sa));
++ goto out;
+ }
+ } else if (msg.wfd_subelems) {
+ wpabuf_free(dev->info.wfd_subelems);
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-30004.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-30004.patch
new file mode 100644
index 000000000..e2540fc26
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/CVE-2021-30004.patch
@@ -0,0 +1,123 @@
+From a0541334a6394f8237a4393b7372693cd7e96f15 Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <j@w1.fi>
+Date: Sat, 13 Mar 2021 18:19:31 +0200
+Subject: [PATCH] ASN.1: Validate DigestAlgorithmIdentifier parameters
+
+The supported hash algorithms do not use AlgorithmIdentifier parameters.
+However, there are implementations that include NULL parameters in
+addition to ones that omit the parameters. Previous implementation did
+not check the parameters value at all which supported both these cases,
+but did not reject any other unexpected information.
+
+Use strict validation of digest algorithm parameters and reject any
+unexpected value when validating a signature. This is needed to prevent
+potential forging attacks.
+
+Signed-off-by: Jouni Malinen <j@w1.fi>
+
+Upstream-Status: Backport
+CVE: CVE-2021-30004
+
+Reference to upstream patch:
+[https://w1.fi/cgit/hostap/commit/?id=a0541334a6394f8237a4393b7372693cd7e96f15]
+
+Signed-off-by: Stefan Ghinea <stefan.ghinea@windriver.com>
+---
+ src/tls/pkcs1.c | 21 +++++++++++++++++++++
+ src/tls/x509v3.c | 20 ++++++++++++++++++++
+ 2 files changed, 41 insertions(+)
+
+diff --git a/src/tls/pkcs1.c b/src/tls/pkcs1.c
+index 141ac50..e09db07 100644
+--- a/src/tls/pkcs1.c
++++ b/src/tls/pkcs1.c
+@@ -240,6 +240,8 @@ int pkcs1_v15_sig_ver(struct crypto_public_key *pk,
+ os_free(decrypted);
+ return -1;
+ }
++ wpa_hexdump(MSG_MSGDUMP, "PKCS #1: DigestInfo",
++ hdr.payload, hdr.length);
+
+ pos = hdr.payload;
+ end = pos + hdr.length;
+@@ -261,6 +263,8 @@ int pkcs1_v15_sig_ver(struct crypto_public_key *pk,
+ os_free(decrypted);
+ return -1;
+ }
++ wpa_hexdump(MSG_MSGDUMP, "PKCS #1: DigestAlgorithmIdentifier",
++ hdr.payload, hdr.length);
+ da_end = hdr.payload + hdr.length;
+
+ if (asn1_get_oid(hdr.payload, hdr.length, &oid, &next)) {
+@@ -269,6 +273,23 @@ int pkcs1_v15_sig_ver(struct crypto_public_key *pk,
+ os_free(decrypted);
+ return -1;
+ }
++ wpa_hexdump(MSG_MSGDUMP, "PKCS #1: Digest algorithm parameters",
++ next, da_end - next);
++
++ /*
++ * RFC 5754: The correct encoding for the SHA2 algorithms would be to
++ * omit the parameters, but there are implementation that encode these
++ * as a NULL element. Allow these two cases and reject anything else.
++ */
++ if (da_end > next &&
++ (asn1_get_next(next, da_end - next, &hdr) < 0 ||
++ !asn1_is_null(&hdr) ||
++ hdr.payload + hdr.length != da_end)) {
++ wpa_printf(MSG_DEBUG,
++ "PKCS #1: Unexpected digest algorithm parameters");
++ os_free(decrypted);
++ return -1;
++ }
+
+ if (!asn1_oid_equal(&oid, hash_alg)) {
+ char txt[100], txt2[100];
+diff --git a/src/tls/x509v3.c b/src/tls/x509v3.c
+index 1bd5aa0..bf2289f 100644
+--- a/src/tls/x509v3.c
++++ b/src/tls/x509v3.c
+@@ -1834,6 +1834,7 @@ int x509_check_signature(struct x509_certificate *issuer,
+ os_free(data);
+ return -1;
+ }
++ wpa_hexdump(MSG_MSGDUMP, "X509: DigestInfo", hdr.payload, hdr.length);
+
+ pos = hdr.payload;
+ end = pos + hdr.length;
+@@ -1855,6 +1856,8 @@ int x509_check_signature(struct x509_certificate *issuer,
+ os_free(data);
+ return -1;
+ }
++ wpa_hexdump(MSG_MSGDUMP, "X509: DigestAlgorithmIdentifier",
++ hdr.payload, hdr.length);
+ da_end = hdr.payload + hdr.length;
+
+ if (asn1_get_oid(hdr.payload, hdr.length, &oid, &next)) {
+@@ -1862,6 +1865,23 @@ int x509_check_signature(struct x509_certificate *issuer,
+ os_free(data);
+ return -1;
+ }
++ wpa_hexdump(MSG_MSGDUMP, "X509: Digest algorithm parameters",
++ next, da_end - next);
++
++ /*
++ * RFC 5754: The correct encoding for the SHA2 algorithms would be to
++ * omit the parameters, but there are implementation that encode these
++ * as a NULL element. Allow these two cases and reject anything else.
++ */
++ if (da_end > next &&
++ (asn1_get_next(next, da_end - next, &hdr) < 0 ||
++ !asn1_is_null(&hdr) ||
++ hdr.payload + hdr.length != da_end)) {
++ wpa_printf(MSG_DEBUG,
++ "X509: Unexpected digest algorithm parameters");
++ os_free(data);
++ return -1;
++ }
+
+ if (x509_sha1_oid(&oid)) {
+ if (signature->oid.oid[6] != 5 /* sha-1WithRSAEncryption */) {
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb
index 68dc12370..e58601868 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb
@@ -12,6 +12,10 @@ SRC_URI = " \
file://init \
file://hostapd.service \
file://CVE-2019-16275.patch \
+ file://CVE-2019-5061.patch \
+ file://CVE-2021-0326.patch \
+ file://CVE-2021-27803.patch \
+ file://CVE-2021-30004.patch \
"
SRC_URI[md5sum] = "f188fc53a495fe7af3b6d77d3c31dee8"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.26.6.bb b/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.28.2.bb
index 6d60a6702..9be48b75f 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.26.6.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.28.2.bb
@@ -14,7 +14,7 @@ inherit autotools pkgconfig bash-completion gobject-introspection
SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BPN}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "a71963bb1097a42665287e40a9a36f95b8f9d6d6a4b7a5de22d660328af97cb9"
+SRC_URI[sha256sum] = "8c8c3ee719874d2529bce9b35b028fe435b36f003979a360d3ad0938449db783"
PACKAGECONFIG ??= "udev mbim"
PACKAGECONFIG[udev] = ",--without-udev,libgudev"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.14.10.bb b/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.16.2.bb
index 2045e2a86..d1ba8e43e 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.14.10.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.16.2.bb
@@ -12,7 +12,7 @@ inherit gnomebase gettext systemd vala gobject-introspection bash-completion
DEPENDS = "glib-2.0 libgudev intltool-native libxslt-native"
SRC_URI = "http://www.freedesktop.org/software/ModemManager/ModemManager-${PV}.tar.xz"
-SRC_URI[sha256sum] = "4ea60b375a761e17e7bb095bca894579ed0e8e33b273dc698b5cbe03947f357f"
+SRC_URI[sha256sum] = "efa9a963499e0885f3f163096d433334143c4937545134ecd682e0157fa591e3"
S = "${WORKDIR}/ModemManager-${PV}"
PACKAGECONFIG ??= "mbim qmi \
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils/0001-Include-limits.h-for-PATH_MAX.patch b/meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils/0001-Include-limits.h-for-PATH_MAX.patch
deleted file mode 100644
index 8bb7e5a18..000000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils/0001-Include-limits.h-for-PATH_MAX.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From f7ad9a4471cee2324f216a0d82ba8097ec746c56 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 15 Jul 2017 11:48:12 -0700
-Subject: [PATCH] Include limits.h for PATH_MAX
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/pnstat.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/pnstat.c b/src/pnstat.c
-index 661a5bc..76068e6 100644
---- a/src/pnstat.c
-+++ b/src/pnstat.c
-@@ -35,6 +35,7 @@
- #include <dirent.h>
- #include <unistd.h>
- #include <netinet/tcp.h>
-+#include <limits.h>
-
- struct fd
- {
---
-2.13.3
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb b/meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb
deleted file mode 100644
index 3c599950f..000000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-SUMMARY = "This small package provides a few command line tools for Linux Phonet"
-HOMEPAGE = ""
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-SRC_URI = "git://gitorious.org/meego-cellular/phonet-utils.git;branch=master \
- file://0001-Include-limits.h-for-PATH_MAX.patch \
- "
-PR = "r2"
-S = "${WORKDIR}/git"
-SRCREV = "4acfa720fd37d178a048fc2be17180137d4a70ea"
-PV = "0.0.0+gitr${SRCPV}"
-
-inherit autotools-brokensep
-
-FILES_${PN} += "${base_libdir}/udev/rules.d/85-phonet-utils.rules"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/rabbitmq-c/rabbitmq-c_0.10.0.bb b/meta-openembedded/meta-oe/recipes-connectivity/rabbitmq-c/rabbitmq-c_0.11.0.bb
index 2ef6b187e..0cfd225cf 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/rabbitmq-c/rabbitmq-c_0.10.0.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/rabbitmq-c/rabbitmq-c_0.11.0.bb
@@ -4,8 +4,8 @@ LIC_FILES_CHKSUM = "file://LICENSE-MIT;md5=6b7424f9db80cfb11fdd5c980b583f53"
LICENSE = "MIT"
SRC_URI = "git://github.com/alanxz/rabbitmq-c.git"
-# v0.10.0-master
-SRCREV = "ffe918a5fcef72038a88054dca3c56762b1953d4"
+# v0.11.0-master
+SRCREV = "a64c08c68aff34d49a2ac152f04988cd921084f9"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb b/meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb
index 2b05c61a0..4d4e841f6 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb
@@ -12,7 +12,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=e413d83db6ee8f2c8e6055719096a48e"
inherit autotools pkgconfig gettext gobject-introspection vala
-EXTRA_OECONF = "--enable-vala-bindings"
+# Respect GI_DATA_ENABLED value when enabling vala-bindings:
+# configure: error: GObject-Introspection must be enabled for Vala bindings
+EXTRA_OECONF = "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '--enable-vala-bindings', '--disable-vala-bindings', d)}"
FILES_${PN} += "${datadir}/telepathy \
${datadir}/dbus-1"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/0001-Fix-configure.ac.patch b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/0001-Fix-configure.ac.patch
index af14a1a56..97339d3ff 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/0001-Fix-configure.ac.patch
+++ b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/0001-Fix-configure.ac.patch
@@ -1,5 +1,7 @@
uname can not get version of kernel correctly while cross compile
+Upstream-Status: Inappropriate [configuration]
+
Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
---
configure.ac | 2 +-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/CVE-2020-15803.patch b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/CVE-2020-15803.patch
deleted file mode 100644
index 2eec4bf32..000000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix/CVE-2020-15803.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 4943334fd9bf7dffd49f9e86251ad40b3efe2135 Mon Sep 17 00:00:00 2001
-From: Wang Mingyu <wangmy@cn.fujitsu.com>
-Date: Fri, 11 Dec 2020 17:02:20 +0900
-Subject: [PATCH] Fix bug for CVE-2020-15803
-
-Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com>
----
- frontends/php/include/classes/html/CIFrame.php | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/frontends/php/include/classes/html/CIFrame.php b/frontends/php/include/classes/html/CIFrame.php
-index 32220cd..70f2ab5 100644
---- a/frontends/php/include/classes/html/CIFrame.php
-+++ b/frontends/php/include/classes/html/CIFrame.php
-@@ -29,6 +29,7 @@ class CIFrame extends CTag {
- $this->setHeight($height);
- $this->setScrolling($scrolling);
- $this->setId($id);
-+ $this->setSandbox();
- }
-
- public function setSrc($value = null) {
-@@ -69,4 +70,10 @@ class CIFrame extends CTag {
- $this->setAttribute('scrolling', $value);
- return $this;
- }
-+
-+ private function setSandbox() {
-+ if (ZBX_IFRAME_SANDBOX !== false) {
-+ $this->setAttribute('sandbox', ZBX_IFRAME_SANDBOX);
-+ }
-+ }
- }
---
-2.25.1
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_4.4.6.bb b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.6.bb
index 98a31879c..37bb9a282 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_4.4.6.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.6.bb
@@ -23,14 +23,13 @@ DEPENDS = "libevent libpcre openldap virtual/libiconv zlib"
PACKAGE_ARCH = "${MACHINE_ARCH}"
-SRC_URI = "http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/${PV}/${BPN}-${PV}.tar.gz \
+SRC_URI = "https://cdn.zabbix.com/zabbix/sources/stable/5.2/${BPN}-${PV}.tar.gz \
file://0001-Fix-configure.ac.patch \
file://zabbix-agent.service \
- file://CVE-2020-15803.patch \
"
-SRC_URI[md5sum] = "e666539220be93b1af38e40f5fbb1f79"
-SRC_URI[sha256sum] = "22bb28e667424ad4688f47732853f4241df0e78a7607727b043d704ba726ae0e"
+SRC_URI[md5sum] = "31dab3535a1fa212f5724902727f6d4d"
+SRC_URI[sha256sum] = "76cb704f2a04fbc87bb3eff44fa71339c355d467f7bbd8fb53f8927c760e1680"
inherit autotools-brokensep linux-kernel-base pkgconfig systemd useradd
@@ -58,7 +57,8 @@ EXTRA_OECONF = " \
--with-zlib \
--with-libpthread \
--with-libevent \
- --with-libpcre \
+ --with-libpcre=${STAGING_EXECPREFIXDIR} \
+ --with-iconv=${STAGING_EXECPREFIXDIR} \
"
CFLAGS_append = " -lldap -llber -pthread"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/zeromq/czmq_4.2.1.bb b/meta-openembedded/meta-oe/recipes-connectivity/zeromq/czmq_4.2.1.bb
index e742d2a1c..e6a4bc4c4 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/zeromq/czmq_4.2.1.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/zeromq/czmq_4.2.1.bb
@@ -30,3 +30,7 @@ PACKAGECONFIG[systemd] = ",-DCMAKE_DISABLE_FIND_PACKAGE_systemd=TRUE,systemd"
BBCLASSEXTEND = "nativesdk"
+do_install_append() {
+ mkdir -p ${D}/${includedir}/${BPN}
+ mv ${D}/${includedir}/sha1.h ${D}/${includedir}/${BPN}/.
+}
diff --git a/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_26.bb b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_28.bb
index 5517883df..a35f5c64c 100644
--- a/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_26.bb
+++ b/meta-openembedded/meta-oe/recipes-core/dbus/dbus-broker_28.bb
@@ -7,7 +7,7 @@ LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=7b486c2338d225a1405d979ed2c15ce8"
SRC_URI = "https://github.com/bus1/dbus-broker/releases/download/v${PV}/dbus-broker-${PV}.tar.xz"
-SRC_URI[sha256sum] = "6a6ab82fc398d4bc31b315f4e1c08f17509e4a1969f1cc77a5706db8923c74e1"
+SRC_URI[sha256sum] = "abb8b54434faeeb6bf59a70ebf0732e851a50bd922995ba5928e8c28c18b05ea"
UPSTREAM_CHECK_URI = "https://github.com/bus1/${BPN}/releases"
diff --git a/meta-openembedded/meta-oe/recipes-core/musl-rpmatch/musl-rpmatch_git.bb b/meta-openembedded/meta-oe/recipes-core/musl-rpmatch/musl-rpmatch_git.bb
new file mode 100644
index 000000000..553003f7f
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-core/musl-rpmatch/musl-rpmatch_git.bb
@@ -0,0 +1,12 @@
+SUMMARY = "Implementation of rpmatch(3) for musl libc."
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=81a81bf31abecc50c20862fc8a716329"
+
+SRC_URI = "gitsm://github.com/pullmoll/musl-rpmatch.git;protocol=https"
+
+PV = "1.0+git${SRCPV}"
+SRCREV = "46267b154987d3e1f25d3a75423faa62bb5ee342"
+
+inherit autotools
+
+S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-core/opencl/ocl-icd_git.bb b/meta-openembedded/meta-oe/recipes-core/opencl/ocl-icd_2.3.0.bb
index 2e43939b9..d94e4c2f0 100644
--- a/meta-openembedded/meta-oe/recipes-core/opencl/ocl-icd_git.bb
+++ b/meta-openembedded/meta-oe/recipes-core/opencl/ocl-icd_2.3.0.bb
@@ -7,8 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=1238d5bccbb6bda30654e48dcc0a554b"
SRC_URI = "git://github.com/OCL-dev/ocl-icd.git;protocol=https"
-PV = "2.2.14+git${SRCPV}"
-SRCREV = "109694ef2686fe25538c05f3c856912f8ef571a9"
+SRCREV = "59c098b6b1f97a339e3e5308499aee6538ecea40"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
index 94830e297..59908e2c0 100644
--- a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
+++ b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
@@ -8,12 +8,15 @@ PACKAGES = "\
packagegroup-meta-oe \
packagegroup-meta-oe-benchmarks \
packagegroup-meta-oe-connectivity \
+ packagegroup-meta-oe-connectivity-python2 \
packagegroup-meta-oe-core \
packagegroup-meta-oe-crypto \
packagegroup-meta-oe-bsp \
packagegroup-meta-oe-dbs \
+ packagegroup-meta-oe-dbs-python2 \
packagegroup-meta-oe-devtools \
packagegroup-meta-oe-extended \
+ packagegroup-meta-oe-extended-python2 \
packagegroup-meta-oe-kernel \
packagegroup-meta-oe-multimedia \
packagegroup-meta-oe-navigation \
@@ -21,6 +24,7 @@ PACKAGES = "\
packagegroup-meta-oe-shells \
packagegroup-meta-oe-security \
packagegroup-meta-oe-support \
+ packagegroup-meta-oe-support-python2 \
packagegroup-meta-oe-test \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "packagegroup-meta-oe-gnome", "", d)} \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "packagegroup-meta-oe-graphics", "", d)} \
@@ -32,11 +36,14 @@ RDEPENDS_packagegroup-meta-oe = "\
packagegroup-meta-oe-benchmarks \
packagegroup-meta-oe-bsp \
packagegroup-meta-oe-connectivity \
+ ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "packagegroup-meta-oe-connectivity-python2", "", d)} \
packagegroup-meta-oe-core \
packagegroup-meta-oe-crypto \
packagegroup-meta-oe-dbs \
+ ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "packagegroup-meta-oe-dbs-python2", "", d)} \
packagegroup-meta-oe-devtools \
packagegroup-meta-oe-extended \
+ ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "packagegroup-meta-oe-extended-python2", "", d)} \
packagegroup-meta-oe-kernel \
packagegroup-meta-oe-multimedia \
packagegroup-meta-oe-navigation \
@@ -44,6 +51,7 @@ RDEPENDS_packagegroup-meta-oe = "\
packagegroup-meta-oe-security \
packagegroup-meta-oe-shells \
packagegroup-meta-oe-support \
+ ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "packagegroup-meta-oe-support-python2", "", d)} \
packagegroup-meta-oe-test \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "packagegroup-meta-oe-gnome", "", d)} \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "packagegroup-meta-oe-graphics", "", d)} \
@@ -138,14 +146,12 @@ RDEPENDS_packagegroup-meta-oe-connectivity ="\
obexftp \
packagegroup-tools-bluetooth \
paho-mqtt-c \
- phonet-utils \
rabbitmq-c \
rfkill \
rtorrent \
ser2net \
smstools3 \
telepathy-glib \
- ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "telepathy-idle", "", d)} \
thrift \
usbmuxd \
wifi-test-suite \
@@ -156,6 +162,10 @@ RDEPENDS_packagegroup-meta-oe-connectivity ="\
RDEPENDS_packagegroup-meta-oe-connectivity_append_libc-glibc = " wvstreams wvdial"
+RDEPENDS_packagegroup-meta-oe-connectivity-python2 = "\
+ ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "telepathy-idle", "", d)} \
+"
+
# dracut needs dracut
RDEPENDS_packagegroup-meta-oe-core = "\
${@bb.utils.contains("DISTRO_FEATURES", "systemd", "dbus-broker", "", d)} \
@@ -181,7 +191,7 @@ RDEPENDS_packagegroup-meta-oe-core = "\
usleep \
dbus-cxx \
"
-RDEPENDS_packagegroup-meta-oe-core_append_libc-glibc = " glfw"
+RDEPENDS_packagegroup-meta-oe-core_append_libc-glibc = " ${@bb.utils.contains("DISTRO_FEATURES", "x11 opengl", "glfw", "", d)}"
RDEPENDS_packagegroup-meta-oe-core_remove_riscv64 = "safec"
RDEPENDS_packagegroup-meta-oe-core_remove_riscv32 = "safec"
@@ -201,7 +211,6 @@ RDEPENDS_packagegroup-meta-oe-dbs ="\
leveldb \
libdbi \
mariadb \
- ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "mysql-python", "", d)} \
postgresql \
psqlodbc \
rocksdb \
@@ -209,6 +218,10 @@ RDEPENDS_packagegroup-meta-oe-dbs ="\
sqlite \
"
+RDEPENDS_packagegroup-meta-oe-dbs-python2 ="\
+ ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', 'mysql-python', '', d), "", d)} \
+"
+
RDEPENDS_packagegroup-meta-oe-devtools ="\
abseil-cpp \
apitrace \
@@ -263,7 +276,7 @@ RDEPENDS_packagegroup-meta-oe-devtools ="\
mpich \
msgpack-c \
mercurial \
- ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "nodejs", "", d)} \
+ nodejs \
openocd \
pax-utils \
ipc-run \
@@ -300,117 +313,117 @@ RDEPENDS_packagegroup-meta-oe-devtools_remove_mipsarch = "concurrencykit lshw pl
RDEPENDS_packagegroup-meta-oe-devtools_remove_mips64 = "luajit nodejs"
RDEPENDS_packagegroup-meta-oe-devtools_remove_mips64el = "luajit nodejs"
RDEPENDS_packagegroup-meta-oe-devtools_remove_powerpc = "android-tools breakpad lshw luajit uftrace"
-RDEPENDS_packagegroup-meta-oe-devtools_remove_powerpc64 = "android-tools lshw luajit uftrace"
-RDEPENDS_packagegroup-meta-oe-devtools_remove_powerpc64le = "android-tools lshw luajit uftrace"
+RDEPENDS_packagegroup-meta-oe-devtools_remove_powerpc64 = "android-tools breakpad lshw luajit ply uftrace"
+RDEPENDS_packagegroup-meta-oe-devtools_remove_powerpc64le = "android-tools breakpad lshw luajit ply uftrace"
RDEPENDS_packagegroup-meta-oe-devtools_remove_riscv64 = "breakpad concurrencykit heaptrack lshw ltrace luajit nodejs ply uftrace"
RDEPENDS_packagegroup-meta-oe-devtools_remove_riscv32 = "breakpad concurrencykit heaptrack lshw ltrace luajit nodejs ply uftrace"
-RDEPENDS_packagegroup-meta-oe-devtools_remove_aarch64 = "${@bb.utils.contains("TUNE_FEATURES", "crypto", "", "abseil-cpp", d)} concurrencykit"
-RDEPENDS_packagegroup-meta-oe-devtools_remove_x86-64 = "${@bb.utils.contains("TUNE_FEATURES", "corei7", "", "abseil-cpp", d)}"
+RDEPENDS_packagegroup-meta-oe-devtools_remove_aarch64 = "concurrencykit"
RDEPENDS_packagegroup-meta-oe-devtools_remove_x86 = "ply"
RDEPENDS_packagegroup-meta-oe-extended ="\
- bitwise \
+ bitwise \
${@bb.utils.contains("DISTRO_FEATURES", "x11 wayland opengl", "boinc-client", "", d)} \
- brotli \
- byacc \
- cmpi-bindings \
- collectd \
- cfengine-masterfiles \
- cfengine \
- ddrescue \
- dialog \
- enscript \
- ${@bb.utils.contains("DISTRO_FEATURES", "x11", "gnuplot", "", d)} \
- dlt-daemon \
- docopt.cpp \
- iotop \
- dumb-init \
- konkretcmpi \
- figlet \
- libcec \
- libdivecomputer \
- fluentbit \
- ${@bb.utils.contains("DISTRO_FEATURES", "x11", "libgxim", "", d)} \
- liblognorm \
- libmodbus \
- haveged \
- hexedit \
- hiredis \
- hplip \
- hwloc \
- libuio \
- ${@bb.utils.contains("DISTRO_FEATURES", "x11", "libwmf", "", d)} \
- lprng \
- icewm \
- md5deep \
- indent \
- jansson \
- nana \
- nicstat \
- ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "openlmi-tools", "", d)} \
- ${@bb.utils.contains("DISTRO_FEATURES", "pam", "openwsman", "", d)} \
- p7zip \
- isomd5sum \
- jpnevulator \
- ${@bb.utils.contains("DISTRO_FEATURES", "polkit", "polkit-group-rule-datetime polkit-group-rule-network polkit", "", d)} \
- rarpd \
- redis \
- libfastjson \
- librelp \
- sblim-cmpi-devel \
- sblim-sfc-common \
- ${@bb.utils.contains("DISTRO_FEATURES", "pam", "sblim-sfcb ", "", d)} \
- sblim-sfcc \
- libblockdev \
- sgpio \
- smartmontools \
- can-utils \
- canutils \
- libsocketcan \
- libconfig \
- linuxconsole \
- uml-utilities \
- libidn \
- libqb \
- wipe \
- libzip \
- zram \
- libplist \
- libusbmuxd \
- liblockfile \
- liblogging \
- libnss-nisplus \
- libpwquality \
- ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "libreport", "", d)} \
- libserialport \
- libstatgrab \
- lockfile-progs \
- logwatch \
- mailx \
- mraa \
- ostree \
- ${@bb.utils.contains("DISTRO_FEATURES", "pam", "pam-plugin-ccreds pam-plugin-ldapdb pam-ssh-agent-auth", "", d)} \
- pegtl \
- libfile-fnmatch-perl \
- rrdtool \
- sanlock \
- scsirastools \
- sedutil \
- libsigrok \
- libsigrokdecode \
- sigrok-cli \
- snappy \
- tipcutils \
- tiptop \
- tmux \
- triggerhappy \
- upm \
- vlock \
- volume-key \
- wxwidgets \
- zlog \
- zstd \
- redis-plus-plus \
+ brotli \
+ byacc \
+ cmpi-bindings \
+ collectd \
+ cfengine-masterfiles \
+ cfengine \
+ ddrescue \
+ dialog \
+ enscript \
+ ${@bb.utils.contains("DISTRO_FEATURES", "x11", "gnuplot", "", d)} \
+ dlt-daemon \
+ docopt.cpp \
+ iotop \
+ dumb-init \
+ konkretcmpi \
+ figlet \
+ libcec \
+ libdivecomputer \
+ fluentbit \
+ ${@bb.utils.contains("DISTRO_FEATURES", "x11", "libgxim", "", d)} \
+ liblognorm \
+ libmodbus \
+ haveged \
+ hexedit \
+ hiredis \
+ hplip \
+ hwloc \
+ libleak \
+ libuio \
+ ${@bb.utils.contains("DISTRO_FEATURES", "x11", "libwmf", "", d)} \
+ lprng \
+ ${@bb.utils.contains("DISTRO_FEATURES", "x11", "icewm", "", d)} \
+ md5deep \
+ indent \
+ jansson \
+ nana \
+ nicstat \
+ ${@bb.utils.contains("DISTRO_FEATURES", "pam", "openwsman", "", d)} \
+ p7zip \
+ isomd5sum \
+ jpnevulator \
+ ${@bb.utils.contains("DISTRO_FEATURES", "polkit", "polkit-group-rule-datetime polkit-group-rule-network polkit", "", d)} \
+ rarpd \
+ redis \
+ libfastjson \
+ librelp \
+ sblim-cmpi-devel \
+ sblim-sfc-common \
+ ${@bb.utils.contains("DISTRO_FEATURES", "pam", "sblim-sfcb ", "", d)} \
+ sblim-sfcc \
+ libblockdev \
+ sgpio \
+ smartmontools \
+ can-utils \
+ canutils \
+ libsocketcan \
+ libconfig \
+ linuxconsole \
+ uml-utilities \
+ libidn \
+ libqb \
+ wipe \
+ libzip \
+ zram \
+ libplist \
+ libusbmuxd \
+ liblockfile \
+ liblogging \
+ libnss-nisplus \
+ libpwquality \
+ ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "libreport", "", d)} \
+ libserialport \
+ libstatgrab \
+ lockfile-progs \
+ logwatch \
+ mailx \
+ mraa \
+ ostree \
+ ${@bb.utils.contains("DISTRO_FEATURES", "pam", "pam-plugin-ccreds pam-plugin-ldapdb pam-ssh-agent-auth", "", d)} \
+ pegtl \
+ libfile-fnmatch-perl \
+ rrdtool \
+ sanlock \
+ scsirastools \
+ sedutil \
+ libsigrok \
+ libsigrokdecode \
+ sigrok-cli \
+ snappy \
+ tipcutils \
+ tiptop \
+ tmate \
+ tmux \
+ triggerhappy \
+ upm \
+ vlock \
+ volume-key \
+ wxwidgets \
+ zlog \
+ zstd \
+ redis-plus-plus \
"
RDEPENDS_packagegroup-meta-oe-extended_append_libc-musl = " libexecinfo"
RDEPENDS_packagegroup-meta-oe-extended_append_x86-64 = " pmdk libx86-1"
@@ -422,8 +435,12 @@ RDEPENDS_packagegroup-meta-oe-extended_remove_mips = "sysdig"
RDEPENDS_packagegroup-meta-oe-extended_remove_powerpc = "upm mraa minifi-cpp"
RDEPENDS_packagegroup-meta-oe-extended_remove_powerpc64 = "upm mraa minifi-cpp"
RDEPENDS_packagegroup-meta-oe-extended_remove_powerpc64le = "upm mraa"
-RDEPENDS_packagegroup-meta-oe-extended_remove_riscv64 = "upm mraa sysdig tiptop"
-RDEPENDS_packagegroup-meta-oe-extended_remove_riscv32 = "upm mraa sysdig tiptop"
+RDEPENDS_packagegroup-meta-oe-extended_remove_riscv64 = "upm libleak mraa sysdig tiptop"
+RDEPENDS_packagegroup-meta-oe-extended_remove_riscv32 = "upm libleak mraa sysdig tiptop"
+
+RDEPENDS_packagegroup-meta-oe-extended-python2 ="\
+ ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', 'openlmi-tools', '', d), "", d)} \
+"
RDEPENDS_packagegroup-meta-oe-gnome ="\
atkmm \
@@ -607,12 +624,12 @@ RDEPENDS_packagegroup-meta-oe-kernel ="\
trace-cmd \
"
RDEPENDS_packagegroup-meta-oe-kernel_append_x86 = " intel-speed-select ipmiutil pm-graph turbostat"
-RDEPENDS_packagegroup-meta-oe-kernel_append_x86-64 = " intel-speed-select ipmiutil kpatch pm-graph turbostat"
+RDEPENDS_packagegroup-meta-oe-kernel_append_x86-64 = " intel-speed-select ipmiutil kpatch pm-graph turbostat bpftool"
RDEPENDS_packagegroup-meta-oe-kernel_append_poerpc64 = " libpfm4"
# Kernel-selftest does not build with 5.8 and its exluded from build too so until its fixed remove it
RDEPENDS_packagegroup-meta-oe-kernel_remove = "kernel-selftest"
-RDEPENDS_packagegroup-meta-oe-kernel_remove_libc-musl = "crash intel-speed-select kernel-selftest minicoredumper turbostat"
+RDEPENDS_packagegroup-meta-oe-kernel_remove_libc-musl = "bpftool crash intel-speed-select kernel-selftest minicoredumper turbostat"
RDEPENDS_packagegroup-meta-oe-kernel_remove_mipsarch = "makedumpfile"
RDEPENDS_packagegroup-meta-oe-kernel_remove_mips64 = "crash"
@@ -653,7 +670,6 @@ RDEPENDS_packagegroup-meta-oe-multimedia ="\
libvpx \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "xsp", "", d)} \
${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "mpv", "", d)} \
- pipewire \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "pavucontrol", "", d)} \
libopusenc \
"
@@ -695,7 +711,6 @@ RDEPENDS_packagegroup-meta-oe-support ="\
ace-cloud-editor \
frame \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "geis", "", d)} \
- geis \
grail \
asio \
augeas \
@@ -745,7 +760,7 @@ RDEPENDS_packagegroup-meta-oe-support ="\
ccid \
zchunk \
libgpiod \
- libgpiod \
+ libmanette \
ckermit \
libcereal \
daemontools \
@@ -803,7 +818,6 @@ RDEPENDS_packagegroup-meta-oe-support ="\
libusbg \
libutempter \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "links-x11", "links", d)} \
- ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "lio-utils", "", d)} \
log4c \
log4cpp \
nspr \
@@ -879,7 +893,6 @@ RDEPENDS_packagegroup-meta-oe-support ="\
unixodbc \
daemonize \
upower \
- xxhash \
unicode-ucd \
xdelta3 \
uriparser \
@@ -897,13 +910,19 @@ RDEPENDS_packagegroup-meta-oe-support ="\
RDEPENDS_packagegroup-meta-oe-support_append_armv7a = " ne10"
RDEPENDS_packagegroup-meta-oe-support_append_armv7ve = " ne10"
RDEPENDS_packagegroup-meta-oe-support_append_aarch64 = " ne10"
-RDEPENDS_packagegroup-meta-oe-support_append_x86 = " mcelog mce-inject mce-test open-vm-tools vboxguestdrivers"
-RDEPENDS_packagegroup-meta-oe-support_append_x86-64 = " mcelog mce-inject mce-test open-vm-tools vboxguestdrivers"
+RDEPENDS_packagegroup-meta-oe-support_append_x86 = " mcelog mce-inject mce-test vboxguestdrivers"
+RDEPENDS_packagegroup-meta-oe-support_append_x86-64 = " mcelog mce-inject mce-test vboxguestdrivers"
+
+RDEPENDS_packagegroup-meta-oe-support-python2 ="\
+ ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', 'lio-utils', '', d), "", d)} \
+"
+
RDEPENDS_packagegroup-meta-oe-support_remove_arm ="numactl"
RDEPENDS_packagegroup-meta-oe-support_remove_mipsarch = "gperftools"
RDEPENDS_packagegroup-meta-oe-support_remove_riscv64 = "gperftools uim"
RDEPENDS_packagegroup-meta-oe-support_remove_riscv32 = "gperftools uim"
RDEPENDS_packagegroup-meta-oe-support_remove_powerpc = "ssiapi"
+RDEPENDS_packagegroup-meta-oe-support_remove_powerpc64le = "ssiapi"
RDEPENDS_packagegroup-meta-oe-test ="\
bats \
diff --git a/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.5.bb b/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.5.bb
index 04106fcc9..11fb30d48 100644
--- a/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.5.bb
+++ b/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.5.bb
@@ -13,6 +13,7 @@ LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
DEPENDS = "libcap libpng cairo dbus udev"
+DEPENDS_append_libc-musl = " musl-rpmatch"
PROVIDES = "virtual/psplash"
RPROVIDES_${PN} = "virtual-psplash virtual-psplash-support"
@@ -42,6 +43,8 @@ LOGO ??= "${datadir}/plymouth/bizcom.png"
inherit autotools pkgconfig systemd gettext
+LDFLAGS_append_libc-musl = " -lrpmatch"
+
do_install_append() {
# Remove /var/run from package as plymouth will populate it on startup
rm -fr "${D}${localstatedir}/run"
diff --git a/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.3.4.bb b/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.3.5.bb
index b9a6b7179..0da9a26e8 100644
--- a/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.3.4.bb
+++ b/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.3.5.bb
@@ -13,7 +13,7 @@ DEPENDS = " \
json-c \
libdevmapper \
popt \
- util-linux \
+ util-linux-libuuid \
"
RDEPENDS_${PN} = " \
@@ -21,8 +21,8 @@ RDEPENDS_${PN} = " \
"
SRC_URI = "${KERNELORG_MIRROR}/linux/utils/${BPN}/v${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}/${BP}.tar.xz"
-SRC_URI[md5sum] = "911272e73181fdc850bb4d25103a9f83"
-SRC_URI[sha256sum] = "9d16eebb96b53b514778e813019b8dd15fea9fec5aafde9fae5febf59df83773"
+SRC_URI[md5sum] = "408620e0df577ec04108ec0bc2b91dee"
+SRC_URI[sha256sum] = "ced9946f444d132536daf92fc8aca4277638a3c2d96e20540b2bae4d36fd70c1"
inherit autotools gettext pkgconfig
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.8.bb b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.9.bb
index 73b2a0980..73b2a0980 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.8.bb
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.9.bb
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
index 27eede6c3..9833b2885 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
@@ -20,9 +20,12 @@ SRC_URI = "https://downloads.mariadb.org/interstitial/${BP}/source/${BP}.tar.gz
file://fix-arm-atomic.patch \
file://0001-Fix-library-LZ4-lookup.patch \
file://0001-innobase-Define-__NR_futex-if-it-does-not-exist.patch \
- file://0001-stacktrace-t.c-make-the-test-conditional.patch \
+ file://0001-aio_linux-Check-if-syscall-exists-before-using-it.patch \
+ file://sys_futex.patch \
"
-SRC_URI[sha256sum] = "eb4824f6f2c532cd3fc6a6bce7bf78ea7c6b949f8bdd07656b2c84344e757be8"
+SRC_URI_append_libc-musl = " file://ppc-remove-glibc-dep.patch"
+
+SRC_URI[sha256sum] = "40ab19aeb8de141fdc188cf2251213c9e7351bee4d0cd29db704fae68d1068cf"
UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/releases"
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-aio_linux-Check-if-syscall-exists-before-using-it.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-aio_linux-Check-if-syscall-exists-before-using-it.patch
new file mode 100644
index 000000000..a2f7812c5
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-aio_linux-Check-if-syscall-exists-before-using-it.patch
@@ -0,0 +1,43 @@
+From 5d9a869a72420cf0bb08b6aa93e980df90bdcf2e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 3 Apr 2021 12:02:36 -0700
+Subject: [PATCH] aio_linux: Check if syscall exists before using it
+
+Return -ENOSYS if not implememented, fixes build on arches like RISCV32
+Fixes
+tpool/aio_linux.cc:63:20: error: '__NR_io_getevents' was not declared in this scope; did you mean 'io_getevents'?
+ 63 | int ret= syscall(__NR_io_getevents, reinterpret_cast<long>(ctx),
+ | ^~~~~~~~~~~~~~~~~
+ | io_getevents
+
+Upstream-Staus: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tpool/aio_linux.cc | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/tpool/aio_linux.cc b/tpool/aio_linux.cc
+index d9aa8be2..d8a87a8f 100644
+--- a/tpool/aio_linux.cc
++++ b/tpool/aio_linux.cc
+@@ -59,6 +59,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111 - 1301 USA*/
+ */
+ static int my_getevents(io_context_t ctx, long min_nr, long nr, io_event *ev)
+ {
++#ifdef __NR_io_getevents
+ int saved_errno= errno;
+ int ret= syscall(__NR_io_getevents, reinterpret_cast<long>(ctx),
+ min_nr, nr, ev, 0);
+@@ -68,6 +69,9 @@ static int my_getevents(io_context_t ctx, long min_nr, long nr, io_event *ev)
+ errno= saved_errno;
+ }
+ return ret;
++#else
++ return -ENOSYS;
++#endif
+ }
+ #endif
+
+--
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-stacktrace-t.c-make-the-test-conditional.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-stacktrace-t.c-make-the-test-conditional.patch
deleted file mode 100644
index d8f672d74..000000000
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-stacktrace-t.c-make-the-test-conditional.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 966cbeb309f867ff4ac8e7f4462be4780e421700 Mon Sep 17 00:00:00 2001
-From: Mingli Yu <mingli.yu@windriver.com>
-Date: Mon, 25 Jan 2021 19:01:06 -0800
-Subject: [PATCH] stacktrace-t.c: make the test conditional
-
-Fixes:
-/prj/tmp/work/cortexa57-poky-linux-musl/mariadb/10.5.8-r0/recipe-sysroot-native/usr/bin/aarch64-poky-linux-musl/../../libexec/aarch64-poky-linux-musl/gcc/aarch64-poky-linux-musl/10.2.0/ld.bfd: /usr/src/debug/mariadb/10.5.8-r0/mariadb-10.5.8/unittest/mysys/stacktrace-t.c:36: undefined reference to `my_safe_print_str'
-
-Upstream-Status: Submitted [https://jira.mariadb.org/browse/MDEV-24131]
-
-Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
----
- unittest/mysys/stacktrace-t.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/unittest/mysys/stacktrace-t.c b/unittest/mysys/stacktrace-t.c
-index 8fa0db15b36..d8408f80d76 100644
---- a/unittest/mysys/stacktrace-t.c
-+++ b/unittest/mysys/stacktrace-t.c
-@@ -29,6 +29,7 @@ void test_my_safe_print_str()
- memcpy(b_stack, "LEGAL", 6);
- memcpy(b_bss, "LEGAL", 6);
-
-+#ifdef HAVE_STACKTRACE
- #ifndef __SANITIZE_ADDRESS__
- fprintf(stderr, "\n===== stack =====\n");
- my_safe_print_str(b_stack, 65535);
-@@ -48,6 +49,7 @@ void test_my_safe_print_str()
- fprintf(stderr, "\n===== (const char*) 1 =====\n");
- my_safe_print_str((const char*)1, 5);
- #endif /*__SANITIZE_ADDRESS__*/
-+#endif /*HAVE_STACKTRACE*/
-
- free(b_heap);
-
---
-2.17.1
-
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch
index 32c9818ab..1c76ab391 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch
@@ -17,10 +17,10 @@ Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
3 files changed, 27 insertions(+), 1 deletion(-)
diff --git a/configure.cmake b/configure.cmake
-index bb3ad43..2ff4f19 100644
+index 4fc324a9..23a2ea91 100644
--- a/configure.cmake
+++ b/configure.cmake
-@@ -861,7 +861,25 @@ int main()
+@@ -862,7 +862,25 @@ int main()
long long int *ptr= &var;
return (int)__atomic_load_n(ptr, __ATOMIC_SEQ_CST);
}"
@@ -48,10 +48,10 @@ index bb3ad43..2ff4f19 100644
IF(WITH_VALGRIND)
SET(HAVE_valgrind 1)
diff --git a/mysys/CMakeLists.txt b/mysys/CMakeLists.txt
-index 6a3a1ef..e306ae7 100644
+index 6aab788f..91b9c393 100644
--- a/mysys/CMakeLists.txt
+++ b/mysys/CMakeLists.txt
-@@ -140,6 +140,10 @@ TARGET_LINK_LIBRARIES(mysys dbug strings ${ZLIB_LIBRARY}
+@@ -154,6 +154,10 @@ TARGET_LINK_LIBRARIES(mysys dbug strings ${ZLIB_LIBRARY}
${LIBNSL} ${LIBM} ${LIBRT} ${CMAKE_DL_LIBS} ${LIBSOCKET} ${LIBEXECINFO})
DTRACE_INSTRUMENT(mysys)
@@ -63,10 +63,10 @@ index 6a3a1ef..e306ae7 100644
TARGET_LINK_LIBRARIES(mysys bfd)
ENDIF(HAVE_BFD_H)
diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt
-index 4978d01..883a930 100644
+index b9cd418f..d42e5017 100644
--- a/sql/CMakeLists.txt
+++ b/sql/CMakeLists.txt
-@@ -220,6 +220,10 @@ ELSE()
+@@ -222,6 +222,10 @@ ELSE()
SET(MYSQLD_SOURCE main.cc ${DTRACE_PROBES_ALL})
ENDIF()
@@ -74,9 +74,9 @@ index 4978d01..883a930 100644
+ TARGET_LINK_LIBRARIES(sql atomic)
+ENDIF()
+
- IF(MSVC)
+ IF(MSVC OR CMAKE_SYSTEM_NAME MATCHES AIX)
SET(libs_to_export_symbols sql mysys dbug strings)
# Create shared library of already compiled object
--
-2.17.1
+2.25.1
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ppc-remove-glibc-dep.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ppc-remove-glibc-dep.patch
new file mode 100644
index 000000000..1ca86bcca
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ppc-remove-glibc-dep.patch
@@ -0,0 +1,50 @@
+Remove glibc specific function dependencies
+
+Sourced from: https://git.alpinelinux.org/aports/tree/main/mariadb/ppc-remove-glibc-dep.patch
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/include/my_cpu.h
++++ b/include/my_cpu.h
+@@ -24,17 +24,16 @@
+ */
+
+ #ifdef _ARCH_PWR8
+-#include <sys/platform/ppc.h>
+ /* Very low priority */
+-#define HMT_very_low() __ppc_set_ppr_very_low()
++#define HMT_very_low() asm volatile("or 31,31,31")
+ /* Low priority */
+-#define HMT_low() __ppc_set_ppr_low()
++#define HMT_low() asm volatile ("or 1,1,1")
+ /* Medium low priority */
+-#define HMT_medium_low() __ppc_set_ppr_med_low()
++#define HMT_medium_low() asm volatile ("or 6,6,6")
+ /* Medium priority */
+-#define HMT_medium() __ppc_set_ppr_med()
++#define HMT_medium() asm volatile ("or 2,2,2")
+ /* Medium high priority */
+-#define HMT_medium_high() __ppc_set_ppr_med_high()
++#define HMT_medium_high() asm volatile("or 5,5,5")
+ /* High priority */
+ #define HMT_high() asm volatile("or 3,3,3")
+ #else
+@@ -81,7 +80,7 @@ static inline void MY_RELAX_CPU(void)
+ __asm__ __volatile__ ("pause");
+ #endif
+ #elif defined(_ARCH_PWR8)
+- __ppc_get_timebase();
++ __builtin_ppc_get_timebase();
+ #elif defined __GNUC__ && (defined __arm__ || defined __aarch64__)
+ /* Mainly, prevent the compiler from optimizing away delay loops */
+ __asm__ __volatile__ ("":::"memory");
+--- a/storage/tokudb/PerconaFT/portability/toku_time.h
++++ b/storage/tokudb/PerconaFT/portability/toku_time.h
+@@ -124,7 +124,7 @@ static inline tokutime_t toku_time_now(v
+ __asm __volatile__ ("mrs %[rt], cntvct_el0" : [rt] "=r" (result));
+ return result;
+ #elif defined(__powerpc__)
+- return __ppc_get_timebase();
++ return __builtin_ppc_get_timebase();
+ #else
+ #error No timer implementation for this platform
+ #endif
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch
new file mode 100644
index 000000000..3277a3eee
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/sys_futex.patch
@@ -0,0 +1,22 @@
+ Use SYS_futex for syscall
+
+glibc defines SYS_futex and on newer 32bit CPUs like RISCV-32, arc there
+is no 32bit time_t therefore define SYS_futex in terms of SYS_futex_time64
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/storage/innobase/include/ib0mutex.h
++++ b/storage/innobase/include/ib0mutex.h
+@@ -150,6 +150,12 @@ private:
+ #include <linux/futex.h>
+ #include <sys/syscall.h>
+
++/** Newer 32bit CPUs eg. RISCV-32 are defaulting to 64bit time_t from get go and
++ therefore do not define __NR_futex */
++#if !defined(SYS_futex) && defined(SYS_futex_time64)
++# define SYS_futex SYS_futex_time64
++#endif
++
+ /** Mutex implementation that used the Linux futex. */
+ template <template <typename> class Policy>
+ struct TTASFutexMutex {
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.8.bb b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.9.bb
index e6743fe97..e6743fe97 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.8.bb
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.9.bb
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb b/meta-openembedded/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb
index 4617da8e1..43fc69073 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb
@@ -16,6 +16,8 @@ SRC_URI[sha256sum] = "811040b647e5d5686f84db415efd697e6250008b112b6909ba77ac059e
S = "${WORKDIR}/${SRCNAME}-${PV}"
+PNBLACKLIST[mysql-python] ?= "${@bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', '', 'python2 is out of support for long time, read https://www.python.org/doc/sunset-python-2/ https://python3statement.org/ and if you really have to temporarily use this, then set I_SWEAR_TO_MIGRATE_TO_PYTHON3 to "yes"', d)}"
+
inherit ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "setuptools", "", d)}
python() {
diff --git a/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/abseil-ppc-fixes.patch b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/abseil-ppc-fixes.patch
new file mode 100644
index 000000000..ee0c25473
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/abseil-ppc-fixes.patch
@@ -0,0 +1,94 @@
+An all-in-one patch that fixes several issues:
+
+1) UnscaledCycleClock not fully implemented for ppc*-musl (disabled on musl)
+2) powerpc stacktrace implementation only works on glibc (disabled on musl)
+3) powerpc stacktrace implementation has ppc64 assumptions (fixed)
+4) examine_stack.cpp makes glibc assumptions on powerpc (fixed)
+
+Sourced from void linux
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/absl/base/internal/unscaledcycleclock.cc
++++ b/absl/base/internal/unscaledcycleclock.cc
+@@ -20,7 +20,7 @@
+ #include <intrin.h>
+ #endif
+
+-#if defined(__powerpc__) || defined(__ppc__)
++#if (defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)
+ #ifdef __GLIBC__
+ #include <sys/platform/ppc.h>
+ #elif defined(__FreeBSD__)
+@@ -59,7 +59,7 @@ double UnscaledCycleClock::Frequency() {
+ return base_internal::NominalCPUFrequency();
+ }
+
+-#elif defined(__powerpc__) || defined(__ppc__)
++#elif (defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)
+
+ int64_t UnscaledCycleClock::Now() {
+ #ifdef __GLIBC__
+--- a/absl/base/internal/unscaledcycleclock.h
++++ b/absl/base/internal/unscaledcycleclock.h
+@@ -46,7 +46,7 @@
+
+ // The following platforms have an implementation of a hardware counter.
+ #if defined(__i386__) || defined(__x86_64__) || defined(__aarch64__) || \
+- defined(__powerpc__) || defined(__ppc__) || \
++ ((defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)) || \
+ defined(_M_IX86) || defined(_M_X64)
+ #define ABSL_HAVE_UNSCALED_CYCLECLOCK_IMPLEMENTATION 1
+ #else
+--- a/absl/debugging/internal/examine_stack.cc
++++ b/absl/debugging/internal/examine_stack.cc
+@@ -27,6 +27,10 @@
+ #include <csignal>
+ #include <cstdio>
+
++#if defined(__powerpc__)
++#include <asm/ptrace.h>
++#endif
++
+ #include "absl/base/attributes.h"
+ #include "absl/base/internal/raw_logging.h"
+ #include "absl/base/macros.h"
+@@ -55,8 +59,10 @@ void* GetProgramCounter(void* vuc) {
+ return reinterpret_cast<void*>(context->uc_mcontext.pc);
+ #elif defined(__powerpc64__)
+ return reinterpret_cast<void*>(context->uc_mcontext.gp_regs[32]);
+-#elif defined(__powerpc__)
++#elif defined(__powerpc__) && defined(__GLIBC__)
+ return reinterpret_cast<void*>(context->uc_mcontext.regs->nip);
++#elif defined(__powerpc__)
++ return reinterpret_cast<void*>(((struct pt_regs *)context->uc_regs)->nip);
+ #elif defined(__riscv)
+ return reinterpret_cast<void*>(context->uc_mcontext.__gregs[REG_PC]);
+ #elif defined(__s390__) && !defined(__s390x__)
+--- a/absl/debugging/internal/stacktrace_config.h
++++ b/absl/debugging/internal/stacktrace_config.h
+@@ -64,7 +64,7 @@
+ #elif defined(__i386__) || defined(__x86_64__)
+ #define ABSL_STACKTRACE_INL_HEADER \
+ "absl/debugging/internal/stacktrace_x86-inl.inc"
+-#elif defined(__ppc__) || defined(__PPC__)
++#elif (defined(__ppc__) || defined(__PPC__)) && defined(__GLIBC__)
+ #define ABSL_STACKTRACE_INL_HEADER \
+ "absl/debugging/internal/stacktrace_powerpc-inl.inc"
+ #elif defined(__aarch64__)
+--- a/absl/debugging/internal/stacktrace_powerpc-inl.inc
++++ b/absl/debugging/internal/stacktrace_powerpc-inl.inc
+@@ -130,8 +130,13 @@ static void **NextStackFrame(void **old_
+ StacktracePowerPCGetLR(new_sp) == kernel_sigtramp_rt64_address) {
+ const ucontext_t* signal_context =
+ reinterpret_cast<const ucontext_t*>(uc);
++#if defined(__powerpc64__)
+ void **const sp_before_signal =
+ reinterpret_cast<void**>(signal_context->uc_mcontext.gp_regs[PT_R1]);
++#else
++ void **const sp_before_signal =
++ reinterpret_cast<void**>(signal_context->uc_mcontext.uc_regs->gregs[PT_R1]);
++#endif
+ // Check that alleged sp before signal is nonnull and is reasonably
+ // aligned.
+ if (sp_before_signal != nullptr &&
diff --git a/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
index 9557c9345..903b7b4b8 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
@@ -13,6 +13,7 @@ BRANCH = "lts_2020_09_23"
SRC_URI = "git://github.com/abseil/abseil-cpp;branch=${BRANCH} \
file://0001-absl-always-use-asm-sgidefs.h.patch \
file://0002-Remove-maes-option-from-cross-compilation.patch \
+ file://abseil-ppc-fixes.patch \
"
S = "${WORKDIR}/git"
@@ -28,7 +29,6 @@ EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \
"
BBCLASSEXTEND = "native nativesdk"
-ALLOW_EMPTY_${PN} = "1"
-FILES_${PN} = "${libdir}/libabsl_*.so ${libdir}/cmake"
-FILES_${PN}-dev = "${includedir}"
+FILES_${PN} = "${libdir}/libabsl_*.so"
+FILES_${PN}-dev = "${includedir} ${libdir}/cmake"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb b/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb
index d93a7f723..e8992346b 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb
@@ -160,8 +160,8 @@ do_install() {
PACKAGES =+ "${PN}-fstools ${PN}-adbd"
-RDEPENDS_${BPN}-adbd = "${BPN}-conf"
-RDEPENDS_${BPN}-fstools = "bash"
+RDEPENDS_${PN}-adbd = "${PN}-conf"
+RDEPENDS_${PN}-fstools = "bash"
FILES_${PN}-adbd = "\
${bindir}/adbd \
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch
new file mode 100644
index 000000000..d7a5c0675
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch
@@ -0,0 +1,54 @@
+From 70441611d4e8200d9d16dfed493873b8c1bb57c5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 15 Mar 2021 11:33:38 -0700
+Subject: [PATCH] Remove HAVE_GETCONTEXT check to add local implementation
+
+On musl getcontext/setcontext APIs are implemented in libucontext which
+can be used
+
+Upstream-Status: Inappropriate [Musl Specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile.am | 12 ------------
+ 1 file changed, 12 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index ee7454e4..69700192 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -187,10 +187,6 @@ src_client_linux_libbreakpad_client_a_SOURCES = \
+ src/common/linux/linux_libc_support.cc \
+ src/common/linux/memory_mapped_file.cc \
+ src/common/linux/safe_readlink.cc
+-if !HAVE_GETCONTEXT
+-src_client_linux_libbreakpad_client_a_SOURCES += \
+- src/common/linux/breakpad_getcontext.S
+-endif
+ endif LINUX_HOST
+
+ if !DISABLE_PROCESSOR
+@@ -508,10 +504,6 @@ src_client_linux_linux_client_unittest_shlib_SOURCES = \
+ src/processor/minidump.cc \
+ src/processor/pathname_stripper.cc \
+ src/processor/proc_maps_linux.cc
+-if !HAVE_GETCONTEXT
+-src_client_linux_linux_client_unittest_shlib_SOURCES += \
+- src/common/linux/breakpad_getcontext.S
+-endif
+
+ src_client_linux_linux_client_unittest_shlib_CPPFLAGS = \
+ $(AM_CPPFLAGS) $(TEST_CFLAGS)
+@@ -541,10 +533,6 @@ src_client_linux_linux_client_unittest_shlib_LDADD = \
+ src/common/string_conversion.o \
+ $(TEST_LIBS) \
+ $(PTHREAD_CFLAGS) $(PTHREAD_LIBS)
+-if !HAVE_GETCONTEXT
+-src_client_linux_linux_client_unittest_shlib_SOURCES += \
+- src/common/linux/breakpad_getcontext_unittest.cc
+-endif
+ if ANDROID_HOST
+ src_client_linux_linux_client_unittest_shlib_LDFLAGS += \
+ -llog -lm
+--
+2.30.2
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-libc.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-libc.patch
index 33bae1a37..6b8d011d8 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-libc.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-libc.patch
@@ -13,11 +13,9 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
src/client/linux/crash_generation/crash_generation_server.cc | 10 ++++++++++
1 file changed, 10 insertions(+)
-diff --git a/src/client/linux/crash_generation/crash_generation_server.cc b/src/client/linux/crash_generation/crash_generation_server.cc
-index 2596afde..2faeb9e5 100644
--- a/src/client/linux/crash_generation/crash_generation_server.cc
+++ b/src/client/linux/crash_generation/crash_generation_server.cc
-@@ -230,8 +230,18 @@ CrashGenerationServer::ClientEvent(short revents)
+@@ -230,8 +230,18 @@ CrashGenerationServer::ClientEvent(short
// Walk the control payload and extract the file descriptor and validated pid.
pid_t crashing_pid = -1;
int signal_fd = -1;
@@ -28,7 +26,7 @@ index 2596afde..2faeb9e5 100644
+ #pragma clang diagnostic push
+ #pragma clang diagnostic ignored "-Wsign-compare"
+#endif
- for (struct cmsghdr *hdr = CMSG_FIRSTHDR(&msg); hdr;
+ for (struct cmsghdr* hdr = CMSG_FIRSTHDR(&msg); hdr;
hdr = CMSG_NXTHDR(&msg, hdr)) {
+#ifndef __GLIBC__
+ #pragma clang diagnostic pop
@@ -36,6 +34,3 @@ index 2596afde..2faeb9e5 100644
if (hdr->cmsg_level != SOL_SOCKET)
continue;
if (hdr->cmsg_type == SCM_RIGHTS) {
---
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-disable-calls-to-getcontext-with-musl.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-disable-calls-to-getcontext-with-musl.patch
deleted file mode 100644
index 466abe5f8..000000000
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-disable-calls-to-getcontext-with-musl.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 57ecf7205feedd23f901e1bb9d193787e559e433 Mon Sep 17 00:00:00 2001
-From: Andre McCurdy <armccurdy@gmail.com>
-Date: Tue, 23 Jan 2018 15:13:26 -0800
-Subject: [PATCH] disable calls to getcontext() with musl
-
-Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
----
- src/client/linux/handler/exception_handler.cc | 17 +++++++++++++++++
- 1 file changed, 17 insertions(+)
-
---- a/src/client/linux/handler/exception_handler.cc
-+++ b/src/client/linux/handler/exception_handler.cc
-@@ -490,7 +490,19 @@ bool ExceptionHandler::SimulateSignalDel
- siginfo.si_code = SI_USER;
- siginfo.si_pid = getpid();
- ucontext_t context;
-+#if defined(__GLIBC__)
- getcontext(&context);
-+#else
-+ // Extreme hack: Allow musl builds to compile - but don't expect them to work.
-+ // Although musl provides a definition for getcontext() in ucontext.h (which
-+ // enough to build libbreakpad_client) musl does not provide a corresponding
-+ // getcontext() function, so builds will fail when attempting to link anything
-+ // with libbreakpad_client. Disabling calls to getcontext() is a temporary
-+ // hack. The real fix is probably to enable Breakpad's own implementation of
-+ // getcontext() when building for musl (it's currently only enabled when
-+ // building for Android).
-+ memset (&context, 0, sizeof(context));
-+#endif
- return HandleSignal(sig, &siginfo, &context);
- }
-
-@@ -675,9 +687,14 @@ bool ExceptionHandler::WriteMinidump() {
- sys_prctl(PR_SET_DUMPABLE, 1, 0, 0, 0);
-
- CrashContext context;
-+#if defined(__GLIBC__)
- int getcontext_result = getcontext(&context.context);
- if (getcontext_result)
- return false;
-+#else
-+ // Extreme hack - see comments above.
-+ memset (&context.context, 0, sizeof(context.context));
-+#endif
-
- #if defined(__i386__)
- // In CPUFillFromUContext in minidumpwriter.cc the stack pointer is retrieved
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch
index 4583d601a..3dc55cf1f 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch
@@ -7,22 +7,20 @@ Subject: [PATCH 1/3] include <sys/reg.h> to get __WORDSIZE on musl libc
src/common/linux/elf_core_dump.h | 1 +
1 file changed, 1 insertion(+)
-Index: git/src/common/linux/elf_core_dump.h
-===================================================================
---- git.orig/src/common/linux/elf_core_dump.h
-+++ git/src/common/linux/elf_core_dump.h
-@@ -33,10 +33,13 @@
+--- a/src/common/linux/elf_core_dump.h
++++ b/src/common/linux/elf_core_dump.h
+@@ -33,10 +33,14 @@
#ifndef COMMON_LINUX_ELF_CORE_DUMP_H_
#define COMMON_LINUX_ELF_CORE_DUMP_H_
+#include <config.h>
#include <elf.h>
+ #include <limits.h>
#include <link.h>
#include <stddef.h>
--
+#ifdef HAVE_SYS_REG_H
+#include <sys/reg.h>
+#endif
+
#include "common/memory_range.h"
- namespace google_breakpad {
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-Use-_fpstate-instead-of-_libc_fpstate-on-linux.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-Use-_fpstate-instead-of-_libc_fpstate-on-linux.patch
deleted file mode 100644
index 6c097cd22..000000000
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-Use-_fpstate-instead-of-_libc_fpstate-on-linux.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 0ba1b3e35e7c743b670bedc3e90001dfb868df10 Mon Sep 17 00:00:00 2001
-From: Felix Janda <felix.janda@posteo.de>
-Date: Sun, 1 Feb 2015 13:45:51 +0100
-Subject: [PATCH 2/6] Use _fpstate instead of _libc_fpstate on linux
-
-glibc defines both. musl libc only the former.
----
- src/client/linux/dump_writer_common/ucontext_reader.cc | 4 ++--
- src/client/linux/dump_writer_common/ucontext_reader.h | 2 +-
- src/client/linux/minidump_writer/minidump_writer.h | 2 +-
- 3 files changed, 4 insertions(+), 4 deletions(-)
-
-Index: git/src/client/linux/dump_writer_common/ucontext_reader.cc
-===================================================================
---- git.orig/src/client/linux/dump_writer_common/ucontext_reader.cc
-+++ git/src/client/linux/dump_writer_common/ucontext_reader.cc
-@@ -49,7 +49,7 @@ uintptr_t UContextReader::GetInstruction
- }
-
- void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
-- const struct _libc_fpstate* fp) {
-+ const struct _fpstate* fp) {
- const greg_t* regs = uc->uc_mcontext.gregs;
-
- out->context_flags = MD_CONTEXT_X86_FULL |
-@@ -97,7 +97,7 @@ uintptr_t UContextReader::GetInstruction
- }
-
- void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
-- const struct _libc_fpstate* fpregs) {
-+ const struct _fpstate* fpregs) {
- const greg_t* regs = uc->uc_mcontext.gregs;
-
- out->context_flags = MD_CONTEXT_AMD64_FULL;
-Index: git/src/client/linux/dump_writer_common/ucontext_reader.h
-===================================================================
---- git.orig/src/client/linux/dump_writer_common/ucontext_reader.h
-+++ git/src/client/linux/dump_writer_common/ucontext_reader.h
-@@ -50,7 +50,7 @@ struct UContextReader {
- // info: the collection of register structures.
- #if defined(__i386__) || defined(__x86_64)
- static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
-- const struct _libc_fpstate* fp);
-+ const struct _fpstate* fp);
- #elif defined(__aarch64__)
- static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
- const struct fpsimd_context* fpregs);
-Index: git/src/client/linux/minidump_writer/minidump_writer.h
-===================================================================
---- git.orig/src/client/linux/minidump_writer/minidump_writer.h
-+++ git/src/client/linux/minidump_writer/minidump_writer.h
-@@ -48,7 +48,7 @@ class ExceptionHandler;
- #if defined(__aarch64__)
- typedef struct fpsimd_context fpstate_t;
- #elif !defined(__ARM_EABI__) && !defined(__mips__)
--typedef struct _libc_fpstate fpstate_t;
-+typedef struct _fpstate fpstate_t;
- #endif
-
- // These entries store a list of memory regions that the client wants included
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-sys-signal.h-is-a-nonportable-alias-for-signal.h.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-sys-signal.h-is-a-nonportable-alias-for-signal.h.patch
deleted file mode 100644
index cfd9a9b34..000000000
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-sys-signal.h-is-a-nonportable-alias-for-signal.h.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 15582e19c2545d5ffe8ff07f957d0ed602aeca74 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 14 Sep 2017 23:15:09 -0700
-Subject: [PATCH 2/5] <sys/signal.h> is a nonportable alias for <signal.h>
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/client/linux/handler/exception_handler.cc | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/client/linux/handler/exception_handler.cc b/src/client/linux/handler/exception_handler.cc
-index 05936d28..cca023fd 100644
---- a/src/client/linux/handler/exception_handler.cc
-+++ b/src/client/linux/handler/exception_handler.cc
-@@ -78,7 +78,7 @@
- #include <sys/wait.h>
- #include <unistd.h>
-
--#include <sys/signal.h>
-+#include <signal.h>
- #include <sys/ucontext.h>
- #include <sys/user.h>
- #include <ucontext.h>
---
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0003-Dont-include-stab.h.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0003-Dont-include-stab.h.patch
index 2593ea93e..76b2088b0 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0003-Dont-include-stab.h.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0003-Dont-include-stab.h.patch
@@ -10,10 +10,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
src/common/stabs_reader_unittest.cc | 1 -
3 files changed, 11 insertions(+), 3 deletions(-)
-Index: git/src/common/stabs_reader.cc
-===================================================================
---- git.orig/src/common/stabs_reader.cc
-+++ git/src/common/stabs_reader.cc
+--- a/src/common/stabs_reader.cc
++++ b/src/common/stabs_reader.cc
@@ -34,7 +34,9 @@
#include "common/stabs_reader.h"
@@ -24,10 +22,8 @@ Index: git/src/common/stabs_reader.cc
#include <string.h>
#include <string>
-Index: git/src/common/stabs_reader.h
-===================================================================
---- git.orig/src/common/stabs_reader.h
-+++ git/src/common/stabs_reader.h
+--- a/src/common/stabs_reader.h
++++ b/src/common/stabs_reader.h
@@ -58,6 +58,30 @@
#elif defined(HAVE_A_OUT_H)
#include <a.out.h>
@@ -59,10 +55,8 @@ Index: git/src/common/stabs_reader.h
#include <string>
#include <vector>
-Index: git/src/common/stabs_reader_unittest.cc
-===================================================================
---- git.orig/src/common/stabs_reader_unittest.cc
-+++ git/src/common/stabs_reader_unittest.cc
+--- a/src/common/stabs_reader_unittest.cc
++++ b/src/common/stabs_reader_unittest.cc
@@ -33,7 +33,9 @@
#include <assert.h>
@@ -73,16 +67,14 @@ Index: git/src/common/stabs_reader_unittest.cc
#include <stdarg.h>
#include <stdlib.h>
#include <string.h>
-Index: git/configure.ac
-===================================================================
---- git.orig/configure.ac
-+++ git/configure.ac
+--- a/configure.ac
++++ b/configure.ac
@@ -72,7 +72,7 @@ AC_ARG_ENABLE(m32,
AC_HEADER_STDC
AC_SYS_LARGEFILE
AX_PTHREAD
--AC_CHECK_HEADERS([a.out.h sys/random.h])
-+AC_CHECK_HEADERS([a.out.h stab.h sys/random.h])
- AC_CHECK_FUNCS([arc4random getrandom])
-
- AX_CXX_COMPILE_STDCXX(11, noext, mandatory)
+-AC_CHECK_HEADERS([a.out.h sys/mman.h sys/random.h])
++AC_CHECK_HEADERS([a.out.h stab.h sys/mman.h sys/random.h])
+ AC_CHECK_FUNCS([arc4random getcontext getrandom memfd_create])
+ AM_CONDITIONAL([HAVE_GETCONTEXT], [test "x$ac_cv_func_getcontext" = xyes])
+ AM_CONDITIONAL([HAVE_MEMFD_CREATE], [test "x$ac_cv_func_memfd_create" = xyes])
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch
index 525a1555b..5892cfa7d 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch
@@ -9,35 +9,33 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
src/common/dwarf/elf_reader.cc | 1 +
1 file changed, 1 insertion(+)
-Index: git/src/common/dwarf/elf_reader.cc
-===================================================================
---- git.orig/src/common/dwarf/elf_reader.cc
-+++ git/src/common/dwarf/elf_reader.cc
-@@ -29,10 +29,13 @@
- #ifndef _GNU_SOURCE
+--- a/src/common/dwarf/elf_reader.cc
++++ b/src/common/dwarf/elf_reader.cc
+@@ -30,12 +30,16 @@
#define _GNU_SOURCE // needed for pread()
#endif
--
+
+#include <config.h>
- #include <sys/types.h>
- #include <sys/stat.h>
+ #include <fcntl.h>
+ #include <limits.h>
+ #include <string.h>
#include <sys/mman.h>
+ #include <sys/stat.h>
+ #include <sys/types.h>
+#ifdef HAVE_SYS_REG_H
+#include <sys/reg.h>
+#endif
#include <unistd.h>
- #include <fcntl.h>
- #include <string.h>
-Index: git/configure.ac
-===================================================================
---- git.orig/configure.ac
-+++ git/configure.ac
+
+ #include <algorithm>
+--- a/configure.ac
++++ b/configure.ac
@@ -72,7 +72,7 @@ AC_ARG_ENABLE(m32,
AC_HEADER_STDC
AC_SYS_LARGEFILE
AX_PTHREAD
--AC_CHECK_HEADERS([a.out.h stab.h sys/random.h])
-+AC_CHECK_HEADERS([a.out.h stab.h sys/random.h sys/reg.h])
- AC_CHECK_FUNCS([arc4random getrandom])
-
- AX_CXX_COMPILE_STDCXX(11, noext, mandatory)
+-AC_CHECK_HEADERS([a.out.h stab.h sys/mman.h sys/random.h])
++AC_CHECK_HEADERS([a.out.h stab.h sys/mman.h sys/random.h sys/reg.h])
+ AC_CHECK_FUNCS([arc4random getcontext getrandom memfd_create])
+ AM_CONDITIONAL([HAVE_GETCONTEXT], [test "x$ac_cv_func_getcontext" = xyes])
+ AM_CONDITIONAL([HAVE_MEMFD_CREATE], [test "x$ac_cv_func_memfd_create" = xyes])
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/mips_asm_sgidefs.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/mips_asm_sgidefs.patch
index 19bb56044..96f5f48cc 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/mips_asm_sgidefs.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/mips_asm_sgidefs.patch
@@ -1,12 +1,9 @@
-Index: lss/linux_syscall_support.h
-===================================================================
---- lss.orig/linux_syscall_support.h
-+++ lss/linux_syscall_support.h
-@@ -118,21 +118,13 @@ extern "C" {
- #include <endian.h>
+--- a/linux_syscall_support.h
++++ b/linux_syscall_support.h
+@@ -119,14 +119,7 @@ extern "C" {
#ifdef __mips__
--/* Include definitions of the ABI currently in use. */
+ /* Include definitions of the ABI currently in use. */
-#ifdef __ANDROID__
-/* Android doesn't have sgidefs.h, but does have asm/sgidefs.h,
- * which has the definitions we need.
@@ -18,10 +15,3 @@ Index: lss/linux_syscall_support.h
#endif
#endif
- /* The Android NDK's <sys/stat.h> #defines these macros as aliases
- * to their non-64 counterparts. To avoid naming conflict, remove them. */
--#ifdef __ANDROID__
-+#if defined(__ANDROID__) || (defined(__linux__) && !defined(__glibc__))
- /* These are restored by the corresponding #pragma pop_macro near
- * the end of this file. */
- # pragma push_macro("stat64")
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
index daf262ed6..81955f450 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
@@ -6,11 +6,13 @@ SUMMARY = "An open-source multi-platform crash reporting system"
DESCRIPTION = "Breakpad is a library and tool suite that allows you to distribute an application to users with compiler-provided debugging information removed, record crashes in compact \"minidump\" files, send them back to your server, and produce C and C++ stack traces from these minidumps. "
HOMEPAGE = "https://code.google.com/p/google-breakpad/"
LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=56c24a43c81c3af6fcf590851931489e"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=8bb274ebd1901085fd71a8d8afe8831b"
SECTION = "libs"
inherit autotools
+DEPENDS_append_libc-musl = " libucontext"
+
BBCLASSEXTEND = "native"
PE = "2"
@@ -19,27 +21,25 @@ PV = "1.0"
SRCREV_FORMAT = "breakpad_gtest_protobuf_lss_gyp"
-SRCREV_breakpad = "0c0e24f709288a129d665ec27d6f089189318385"
+SRCREV_breakpad = "8b22babdf894e5aa98b2dbbe103f7e3856a71944"
#v1.10.0
-SRCREV_gtest = "5ec7f0c4a113e2f18ac2c6cc7df51ad6afc24081"
+SRCREV_gtest = "4fe018038f87675c083d0cfb6a6b57c274fb1753"
SRCREV_protobuf = "cb6dd4ef5f82e41e06179dcd57d3b1d9246ad6ac"
-SRCREV_lss = "8048ece6c16c91acfe0d36d1d3cc0890ab6e945c"
+SRCREV_lss = "fd00dbbd0c06a309c657d89e9430143b179ff6db"
SRCREV_gyp = "324dd166b7c0b39d513026fa52d6280ac6d56770"
-SRC_URI = "git://github.com/google/breakpad;name=breakpad \
+SRC_URI = "git://github.com/google/breakpad;name=breakpad;branch=main \
git://github.com/google/googletest.git;destsuffix=git/src/testing/gtest;name=gtest \
- git://github.com/google/protobuf.git;destsuffix=git/src/third_party/protobuf/protobuf;name=protobuf \
- git://chromium.googlesource.com/linux-syscall-support;protocol=https;destsuffix=git/src/third_party/lss;name=lss \
+ git://github.com/protocolbuffers/protobuf.git;destsuffix=git/src/third_party/protobuf/protobuf;name=protobuf \
+ git://chromium.googlesource.com/linux-syscall-support;protocol=https;branch=main;destsuffix=git/src/third_party/lss;name=lss \
git://chromium.googlesource.com/external/gyp;protocol=https;destsuffix=git/src/tools/gyp;name=gyp \
file://0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch \
file://0003-Fix-conflict-between-musl-libc-dirent.h-and-lss.patch \
file://0001-Turn-off-sign-compare-for-musl-libc.patch \
- file://0002-sys-signal.h-is-a-nonportable-alias-for-signal.h.patch \
file://0003-Dont-include-stab.h.patch \
file://0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch \
- file://0002-Use-_fpstate-instead-of-_libc_fpstate-on-linux.patch \
file://mcontext.patch \
- file://0001-disable-calls-to-getcontext-with-musl.patch \
+ file://0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch \
file://0001-lss-Match-syscalls-to-match-musl.patch;patchdir=src/third_party/lss \
file://mips_asm_sgidefs.patch;patchdir=src/third_party/lss \
file://0001-Do-not-add-stack-pointer-to-clobber-list.patch;patchdir=src/third_party/lss \
@@ -47,8 +47,11 @@ SRC_URI = "git://github.com/google/breakpad;name=breakpad \
S = "${WORKDIR}/git"
CXXFLAGS += "-D_GNU_SOURCE"
+LDFLAGS_append_libc-musl = " -lucontext"
COMPATIBLE_HOST_powerpc = "null"
+COMPATIBLE_HOST_powerpc64 = "null"
+COMPATIBLE_HOST_powerpc64le = "null"
COMPATIBLE_HOST_riscv64 = "null"
COMPATIBLE_HOST_riscv32 = "null"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0001-support-to-override-usr-sbin-and-usr-share.patch b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0001-support-to-override-usr-sbin-and-usr-share.patch
new file mode 100644
index 000000000..12dd23810
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0001-support-to-override-usr-sbin-and-usr-share.patch
@@ -0,0 +1,41 @@
+From 87d0174e8d56e7458dc94f05f82ab7a67a5cf7d0 Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Thu, 8 Apr 2021 14:06:05 +0800
+Subject: [PATCH 1/2] support to override /usr/sbin and /usr/share
+
+Upstream-Status: Submitted [https://salsa.debian.org/installer-team/debootstrap/-/merge_requests/55]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ Makefile | 12 +++++++-----
+ 1 file changed, 7 insertions(+), 5 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 8516803..a2d8c00 100644
+--- a/Makefile
++++ b/Makefile
+@@ -5,14 +5,16 @@ all:
+
+ clean:
+
+-DSDIR=$(DESTDIR)/usr/share/debootstrap
++datadir ?= "/usr/share"
++sbindir ?= "/usr/sbin"
++DSDIR=$(DESTDIR)${datadir}/debootstrap
+ install:
+ mkdir -p $(DSDIR)/scripts
+- mkdir -p $(DESTDIR)/usr/sbin
++ mkdir -p $(DESTDIR)$(sbindir)
+
+ cp -a scripts/* $(DSDIR)/scripts/
+ install -o root -g root -m 0644 functions $(DSDIR)/
+
+- sed 's/@VERSION@/$(VERSION)/g' debootstrap >$(DESTDIR)/usr/sbin/debootstrap
+- chown root:root $(DESTDIR)/usr/sbin/debootstrap
+- chmod 0755 $(DESTDIR)/usr/sbin/debootstrap
++ sed 's/@VERSION@/$(VERSION)/g' debootstrap >$(DESTDIR)$(sbindir)/debootstrap
++ chown root:root $(DESTDIR)$(sbindir)/debootstrap
++ chmod 0755 $(DESTDIR)$(sbindir)/debootstrap
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0002-support-to-override-usr-bin-arch-test.patch b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0002-support-to-override-usr-bin-arch-test.patch
new file mode 100644
index 000000000..69329df4e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/0002-support-to-override-usr-bin-arch-test.patch
@@ -0,0 +1,47 @@
+From f0420b201f2fb5286ccf5657faa6b38cd2680e10 Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Thu, 8 Apr 2021 14:08:06 +0800
+Subject: [PATCH 2/2] support to override /usr/bin/arch-test
+
+Upstream-Status: Submitted [https://salsa.debian.org/installer-team/debootstrap/-/merge_requests/55]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ debootstrap | 12 ++++++++----
+ 1 file changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/debootstrap b/debootstrap
+index 9b9e58d..a3cf3af 100755
+--- a/debootstrap
++++ b/debootstrap
+@@ -51,6 +51,10 @@ INRELEASE_PATH=""
+ DEF_MIRROR="http://deb.debian.org/debian"
+ DEF_HTTPS_MIRROR="https://deb.debian.org/debian"
+
++if [ -z "$ARCH_TEST" ]; then
++ ARCH_TEST="/usr/bin/arch-test"
++fi
++
+ # set $CONTAINER
+ detect_container
+
+@@ -645,12 +649,12 @@ fi
+
+ ###########################################################################
+
+-if [ -x /usr/bin/arch-test ] && am_doing_phase second_stage; then
++if [ -x ${ARCH_TEST} ] && am_doing_phase second_stage; then
+ if doing_variant fakechroot; then
+- ret=0; arch-test "$ARCH" || ret=$?
++ ret=0; ${ARCH_TEST} "$ARCH" || ret=$?
+ # Avoid failure with old arch-test package
+- elif arch-test --version > /dev/null 2>&1; then
+- ret=0; arch-test -c "$TARGET" "$ARCH" || ret=$?
++ elif ${ARCH_TEST} --version > /dev/null 2>&1; then
++ ret=0; ${ARCH_TEST} -c "$TARGET" "$ARCH" || ret=$?
+ else
+ ret=3
+ fi
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/devices.tar.gz b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/devices.tar.gz
deleted file mode 100644
index 20eaba3ad..000000000
--- a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap/devices.tar.gz
+++ /dev/null
Binary files differ
diff --git a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.123.bb b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.123.bb
new file mode 100644
index 000000000..bb4345687
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.123.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Install a Debian system into a subdirectory"
+HOMEPAGE = "https://wiki.debian.org/Debootstrap"
+SECTION = "devel"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://debian/copyright;md5=1e68ced6e1689d4cd9dac75ff5225608"
+
+SRC_URI = "\
+ http://http.debian.net/debian/pool/main/d/debootstrap/debootstrap_${PV}.tar.gz \
+ file://0001-support-to-override-usr-sbin-and-usr-share.patch \
+ file://0002-support-to-override-usr-bin-arch-test.patch \
+"
+
+SRC_URI[md5sum] = "b959c7ac01839e9b96a733d27b19e59e"
+SRC_URI[sha256sum] = "5e5a8147ecdd6be0eea5ac4d6ed8192cc653e93f744dd3306c9b1cc51d6ca328"
+
+S = "${WORKDIR}/debootstrap"
+
+fakeroot do_install() {
+ oe_runmake 'DESTDIR=${D}' install
+ chown -R root:root ${D}${datadir}/debootstrap
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.67.bb b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.67.bb
deleted file mode 100644
index 8472aca6c..000000000
--- a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.67.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "Install a Debian system into a subdirectory"
-HOMEPAGE = "https://wiki.debian.org/Debootstrap"
-SECTION = "devel"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://debian/copyright;md5=1e68ced6e1689d4cd9dac75ff5225608"
-
-inherit pkgconfig
-
-SRC_URI = "\
- http://http.debian.net/debian/pool/main/d/debootstrap/debootstrap_1.0.67.tar.gz \
- file://devices.tar.gz;unpack=0 \
-"
-
-SRC_URI[md5sum] = "eacabfe2e45415af60b1d74c3a23418a"
-SRC_URI[sha256sum] = "0a12e0a2bbff185d47711a716b1f2734856100e8784361203e834fed0cffa51b"
-
-S = "${WORKDIR}/${BP}"
-
-# All Makefile does is creation of devices.tar.gz, which fails in OE build, we use
-# static devices.tar.gz as work around
-# | NOTE: make -j 8 -e MAKEFLAGS=
-# | rm -rf dev
-# | mkdir -p dev
-# | chown 0:0 dev
-# | chown: changing ownership of `dev': Operation not permitted
-# | make: *** [devices.tar.gz] Error 1
-# | WARNING: exit code 1 from a shell command.
-do_compile_prepend() {
- cp ${WORKDIR}/devices.tar.gz ${B}
-}
-
-do_install() {
- oe_runmake 'DESTDIR=${D}' install
- chown -R root:root ${D}${datadir}/debootstrap
-}
diff --git a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-build-don-t-look-for-Iconv.patch b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-build-don-t-look-for-Iconv.patch
index c86dc1691..6906efd1c 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-build-don-t-look-for-Iconv.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-build-don-t-look-for-Iconv.patch
@@ -8,6 +8,7 @@ native build but all modern systems supply it as part of the standard
C library. We don't need this check in meta-openembedded.
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Upstream-status: Inappropriate
- upstream doxygen must build on many architectures, this change is
@@ -17,10 +18,10 @@ Upstream-status: Inappropriate
1 file changed, 4 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 45c2f2c1..22cf0144 100644
+index 06b9696f..f30b46b8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -92,10 +92,6 @@ if (sqlite3)
+@@ -117,10 +117,6 @@ if (sqlite3)
endif()
endif()
@@ -28,9 +29,9 @@ index 45c2f2c1..22cf0144 100644
-include_directories(${ICONV_INCLUDE_DIR})
-
-
- #set(DOXYDOCS ${CMAKE_SOURCE_DIR}/doc CACHE INTERNAL "Path to doxygen docs")
+ #set(DOXYDOCS ${PROJECT_SOURCE_DIR}/doc CACHE INTERNAL "Path to doxygen docs")
set(DOXYDOCS ${PROJECT_BINARY_DIR}/doc)
set(ENV{DOXYGEN_DOCDIR} ${DOXYDOCS})
--
-2.17.1
+2.27.0
diff --git a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/doxygen-native-only-check-python3.patch b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/doxygen-native-only-check-python3.patch
index 53f88885f..9d1a5a93d 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/doxygen-native-only-check-python3.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/doxygen-native-only-check-python3.patch
@@ -1,4 +1,4 @@
-From aa833cf56c5cc2e87a1d91881eb2286beb34e417 Mon Sep 17 00:00:00 2001
+From 7aeee92c752f8a4b2524ed6a41d60c1a3ca8bf2d Mon Sep 17 00:00:00 2001
From: Leon Anavi <leon.anavi@konsulko.com>
Date: Wed, 26 Aug 2020 10:52:10 +0300
Subject: [PATCH] doxygen: Fix Python issues for doxygen-native
@@ -32,25 +32,28 @@ result variable PYTHON_EXECUTABLE with Python3_EXECUTABLE.
This patch is only needded by doxygen-native.
+Updated to apply to release 1.9.1.
+
Upstream-Status: Inappropriate[oe specific]
Co-Authored-By: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
---
CMakeLists.txt | 2 +-
addon/doxywizard/CMakeLists.txt | 6 +++---
doc/CMakeLists.txt | 6 +++---
examples/CMakeLists.txt | 4 ++--
libmscgen/CMakeLists.txt | 2 +-
- src/CMakeLists.txt | 12 ++++++------
+ src/CMakeLists.txt | 10 +++++-----
testing/CMakeLists.txt | 4 ++--
- 7 files changed, 18 insertions(+), 18 deletions(-)
+ 7 files changed, 17 insertions(+), 17 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 35e6a0c2..9aaebbdf 100644
+index f30b46b8..50f211c8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -100,7 +100,7 @@ else ()
+@@ -101,7 +101,7 @@ else ()
endif ()
find_program(DOT NAMES dot)
@@ -60,50 +63,50 @@ index 35e6a0c2..9aaebbdf 100644
find_package(BISON REQUIRED)
if (BISON_VERSION VERSION_LESS 2.7)
diff --git a/addon/doxywizard/CMakeLists.txt b/addon/doxywizard/CMakeLists.txt
-index 6aacd8b6..fa197e9e 100644
+index a6f65f8d..d163aa5b 100644
--- a/addon/doxywizard/CMakeLists.txt
+++ b/addon/doxywizard/CMakeLists.txt
@@ -58,7 +58,7 @@ set_source_files_properties(${GENERATED_SRC_WIZARD}/settings.h PROPERTIES GENERA
# generate version.cpp
add_custom_command(
-- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/version.py ${VERSION} > ${GENERATED_SRC_WIZARD}/version.cpp
-+ COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/version.py ${VERSION} > ${GENERATED_SRC_WIZARD}/version.cpp
- DEPENDS ${CMAKE_SOURCE_DIR}/VERSION ${CMAKE_SOURCE_DIR}/src/version.py
+- COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/version.py ${VERSION} > ${GENERATED_SRC_WIZARD}/version.cpp
++ COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/version.py ${VERSION} > ${GENERATED_SRC_WIZARD}/version.cpp
+ DEPENDS ${PROJECT_SOURCE_DIR}/VERSION ${PROJECT_SOURCE_DIR}/src/version.py
OUTPUT ${GENERATED_SRC_WIZARD}/version.cpp
)
@@ -66,7 +66,7 @@ set_source_files_properties(${GENERATED_SRC_WIZARD}/version.cpp PROPERTIES GENER
# generate configdoc.cpp
add_custom_command(
--COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/configgen.py -wiz ${CMAKE_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC_WIZARD}/configdoc.cpp
-+COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/configgen.py -wiz ${CMAKE_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC_WIZARD}/configdoc.cpp
- OUTPUT ${GENERATED_SRC_WIZARD}/configdoc.cpp
+- COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/configgen.py -wiz ${PROJECT_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC_WIZARD}/configdoc.cpp
++ COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/configgen.py -wiz ${PROJECT_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC_WIZARD}/configdoc.cpp
+ DEPENDS ${PROJECT_SOURCE_DIR}/src/configgen.py ${PROJECT_SOURCE_DIR}/src/config.xml
+ OUTPUT ${GENERATED_SRC_WIZARD}/configdoc.cpp
)
- set_source_files_properties(${GENERATED_SRC_WIZARD}/configdoc.cpp PROPERTIES GENERATED 1)
-@@ -74,7 +74,7 @@ set_source_files_properties(${GENERATED_SRC_WIZARD}/configdoc.cpp PROPERTIES GEN
- set(LEX_FILES config_doxyw)
+@@ -75,7 +75,7 @@ set_source_files_properties(${GENERATED_SRC_WIZARD}/configdoc.cpp PROPERTIES GEN
+ set(LEX_FILES config_doxyw)
foreach(lex_file ${LEX_FILES})
add_custom_command(
-- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/addon/doxywizard/${lex_file}.l > ${GENERATED_SRC_WIZARD}/${lex_file}.l.h
-+ COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/addon/doxywizard/${lex_file}.l > ${GENERATED_SRC_WIZARD}/${lex_file}.l.h
- DEPENDS ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/addon/doxywizard/${lex_file}.l
- OUTPUT ${GENERATED_SRC_WIZARD}/${lex_file}.l.h
+- COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/scan_states.py ${PROJECT_SOURCE_DIR}/addon/doxywizard/${lex_file}.l > ${GENERATED_SRC_WIZARD}/${lex_file}.l.h
++ COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/scan_states.py ${PROJECT_SOURCE_DIR}/addon/doxywizard/${lex_file}.l > ${GENERATED_SRC_WIZARD}/${lex_file}.l.h
+ DEPENDS ${PROJECT_SOURCE_DIR}/src/scan_states.py ${PROJECT_SOURCE_DIR}/addon/doxywizard/${lex_file}.l
+ OUTPUT ${GENERATED_SRC_WIZARD}/${lex_file}.l.h
)
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
-index a094c570..8a757c20 100644
+index f2d177ed..22a4d602 100644
--- a/doc/CMakeLists.txt
+++ b/doc/CMakeLists.txt
-@@ -132,7 +132,7 @@ configure_file(${CMAKE_SOURCE_DIR}/doc/doxyindexer.1 ${PROJECT_BINARY_DIR}/
+@@ -163,7 +163,7 @@ configure_file(${PROJECT_SOURCE_DIR}/doc/doxyindexer.1 ${PROJECT_BINARY_DIR
# doc/language.doc (see tag Doxyfile:INPUT)
add_custom_command(
-- COMMAND ${PYTHON_EXECUTABLE} translator.py ${CMAKE_SOURCE_DIR}
-+ COMMAND ${Python3_EXECUTABLE} translator.py ${CMAKE_SOURCE_DIR}
- DEPENDS ${CMAKE_SOURCE_DIR}/doc/maintainers.txt ${CMAKE_SOURCE_DIR}/doc/language.tpl ${PROJECT_BINARY_DIR}/doc/translator.py ${LANG_FILES}
+- COMMAND ${PYTHON_EXECUTABLE} translator.py ${PROJECT_SOURCE_DIR}
++ COMMAND ${Python3_EXECUTABLE} translator.py ${PROJECT_SOURCE_DIR}
+ DEPENDS ${PROJECT_SOURCE_DIR}/doc/maintainers.txt ${PROJECT_SOURCE_DIR}/doc/language.tpl ${PROJECT_BINARY_DIR}/doc/translator.py ${LANG_FILES}
OUTPUT language.doc
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/doc
-@@ -141,7 +141,7 @@ set_source_files_properties(language.doc PROPERTIES GENERATED 1)
+@@ -172,7 +172,7 @@ set_source_files_properties(language.doc PROPERTIES GENERATED 1)
# doc/config.doc (see tag Doxyfile:INPUT)
add_custom_command(
@@ -112,7 +115,7 @@ index a094c570..8a757c20 100644
DEPENDS ${TOP}/src/config.xml ${TOP}/src/configgen.py
OUTPUT config.doc
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/doc/
-@@ -192,7 +192,7 @@ add_custom_target(docs_chm
+@@ -223,7 +223,7 @@ add_custom_target(docs_chm
COMMAND ${CMAKE_COMMAND} -E echo " for file in files:" >> ${PROJECT_BINARY_DIR}/chm/doxygen_manual_examples_chm.py
COMMAND ${CMAKE_COMMAND} -E echo " if file.endswith('.html') or file.endswith('.png') or file.endswith('.css') or file.endswith('.gif'):" >> ${PROJECT_BINARY_DIR}/chm/doxygen_manual_examples_chm.py
COMMAND ${CMAKE_COMMAND} -E echo " print(os.path.join(root, file))" >> ${PROJECT_BINARY_DIR}/chm/doxygen_manual_examples_chm.py
@@ -122,42 +125,42 @@ index a094c570..8a757c20 100644
COMMAND ${CMAKE_COMMAND} -E rename ${PROJECT_BINARY_DIR}/chm/index.chm ${PROJECT_BINARY_DIR}/chm/doxygen_manual.chm
DEPENDS ${PROJECT_BINARY_DIR}/doc/language.doc ${PROJECT_BINARY_DIR}/doc/config.doc
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
-index 3f1c79b8..d5866ee1 100644
+index 194b4271..248b8076 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
-@@ -51,7 +51,7 @@ foreach (f_inp ${BASIC_EXAMPLES})
- string(REGEX REPLACE ":.*" "" f ${f_inp})
- add_custom_command(
+@@ -54,7 +54,7 @@ foreach (f_inp ${BASIC_EXAMPLES})
+ COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_BINARY_DIR}/html/examples/${f}
+ COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_BINARY_DIR}/latex/examples/${f}
COMMAND ${EXECUTABLE_OUTPUT_PATH}/doxygen ${f}.cfg
-- COMMAND ${PYTHON_EXECUTABLE} ${TOP}/examples/strip_example.py < ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman.tex > ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman_doc.tex
-+ COMMAND ${Python3_EXECUTABLE} ${TOP}/examples/strip_example.py < ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman.tex > ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman_doc.tex
+- COMMAND ${PYTHON_EXECUTABLE} ${TOP}/examples/strip_example.py < ${PROJECT_BINARY_DIR}/latex/examples/${f}/latex/refman.tex > ${PROJECT_BINARY_DIR}/latex/examples/${f}/latex/refman_doc.tex
++ COMMAND ${Python3_EXECUTABLE} ${TOP}/examples/strip_example.py < ${PROJECT_BINARY_DIR}/latex/examples/${f}/latex/refman.tex > ${PROJECT_BINARY_DIR}/latex/examples/${f}/latex/refman_doc.tex
DEPENDS doxygen ${f}.${f_ext} ${f}.cfg ${TOP}/examples/strip_example.py
- OUTPUT ${PROJECT_BINARY_DIR}/html/examples/${f}/html/index.html ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman_doc.tex
+ OUTPUT ${PROJECT_BINARY_DIR}/html/examples/${f}/html/index.html ${PROJECT_BINARY_DIR}/latex/examples/${f}/latex/refman_doc.tex
)
-@@ -68,7 +68,7 @@ add_custom_target(examples
- if (DOT)
- add_custom_command(
+@@ -73,7 +73,7 @@ if (DOT)
+ COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_BINARY_DIR}/html/examples/diagrams
+ COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_BINARY_DIR}/latex/examples/diagrams
COMMAND ${EXECUTABLE_OUTPUT_PATH}/doxygen diagrams.cfg
-- COMMAND ${PYTHON_EXECUTABLE} ${TOP}/examples/strip_example.py < ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman.tex > ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman_doc.tex
+- COMMAND ${PYTHON_EXECUTABLE} ${TOP}/examples/strip_example.py < ${PROJECT_BINARY_DIR}/latex/examples/diagrams/latex/refman.tex > ${PROJECT_BINARY_DIR}/latex/examples/diagrams/latex/refman_doc.tex
+ COMMAND ${Python3_EXECUTABLE} ${TOP}/examples/strip_example.py < ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman.tex > ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman_doc.tex
DEPENDS doxygen diagrams_a.h diagrams_b.h diagrams_c.h diagrams_d.h diagrams_e.h diagrams.cfg ${TOP}/examples/strip_example.py
- OUTPUT ${PROJECT_BINARY_DIR}/html/examples/diagrams/html/index.html ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman_doc.tex
+ OUTPUT ${PROJECT_BINARY_DIR}/html/examples/diagrams/html/index.html ${PROJECT_BINARY_DIR}/latex/examples/diagrams/latex/refman_doc.tex
)
diff --git a/libmscgen/CMakeLists.txt b/libmscgen/CMakeLists.txt
-index 079fcfc8..e6d86f61 100644
+index 0a239008..09849e2d 100644
--- a/libmscgen/CMakeLists.txt
+++ b/libmscgen/CMakeLists.txt
@@ -7,7 +7,7 @@ include_directories(
set(LEX_FILES mscgen_lexer)
foreach(lex_file ${LEX_FILES})
add_custom_command(
-- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/libmscgen/${lex_file}.l > ${GENERATED_SRC}/${lex_file}.l.h
-+ COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/libmscgen/${lex_file}.l > ${GENERATED_SRC}/${lex_file}.l.h
- DEPENDS ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/libmscgen/${lex_file}.l
+- COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/scan_states.py ${PROJECT_SOURCE_DIR}/libmscgen/${lex_file}.l > ${GENERATED_SRC}/${lex_file}.l.h
++ COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/src/scan_states.py ${PROJECT_SOURCE_DIR}/libmscgen/${lex_file}.l > ${GENERATED_SRC}/${lex_file}.l.h
+ DEPENDS ${PROJECT_SOURCE_DIR}/src/scan_states.py ${PROJECT_SOURCE_DIR}/libmscgen/${lex_file}.l
OUTPUT ${GENERATED_SRC}/${lex_file}.l.h
)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index cb289116..356741ff 100644
+index 5004a957..68e803f2 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -39,7 +39,7 @@ set_source_files_properties(${GENERATED_SRC}/settings.h PROPERTIES GENERATED 1)
@@ -191,21 +194,12 @@ index cb289116..356741ff 100644
# resources.cpp
add_custom_command(
COMMENT "Generating ${GENERATED_SRC}/resources.cpp"
-- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/res2cc_cmd.py ${CMAKE_SOURCE_DIR}/templates ${GENERATED_SRC}/resources.cpp
-+ COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/res2cc_cmd.py ${CMAKE_SOURCE_DIR}/templates ${GENERATED_SRC}/resources.cpp
+- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/res2cc_cmd.py ${PROJECT_SOURCE_DIR}/templates ${GENERATED_SRC}/resources.cpp
++ COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/res2cc_cmd.py ${PROJECT_SOURCE_DIR}/templates ${GENERATED_SRC}/resources.cpp
DEPENDS ${RESOURCES} ${CMAKE_CURRENT_LIST_DIR}/res2cc_cmd.py
OUTPUT ${GENERATED_SRC}/resources.cpp
)
-@@ -102,7 +102,7 @@ set_source_files_properties(${GENERATED_SRC}/resources.cpp PROPERTIES GENERATED
-
- # layout_default.xml
- add_custom_command(
-- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/to_c_cmd.py < ${CMAKE_CURRENT_LIST_DIR}/layout_default.xml > ${GENERATED_SRC}/layout_default.xml.h
-+ COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/to_c_cmd.py < ${CMAKE_CURRENT_LIST_DIR}/layout_default.xml > ${GENERATED_SRC}/layout_default.xml.h
- DEPENDS ${CMAKE_CURRENT_LIST_DIR}/layout_default.xml ${CMAKE_CURRENT_LIST_DIR}/to_c_cmd.py
- OUTPUT ${GENERATED_SRC}/layout_default.xml.h
- )
-@@ -131,7 +131,7 @@ foreach(lex_file ${LEX_FILES})
+@@ -124,7 +124,7 @@ foreach(lex_file ${LEX_FILES})
set(LEX_FILES_H ${LEX_FILES_H} " " ${GENERATED_SRC}/${lex_file}.l.h CACHE INTERNAL "Stores generated files")
set(LEX_FILES_CPP ${LEX_FILES_CPP} " " ${GENERATED_SRC}/${lex_file}.cpp CACHE INTERNAL "Stores generated files")
add_custom_command(
@@ -215,15 +209,15 @@ index cb289116..356741ff 100644
OUTPUT ${GENERATED_SRC}/${lex_file}.l.h
)
diff --git a/testing/CMakeLists.txt b/testing/CMakeLists.txt
-index b354e78f..28d45e11 100644
+index fd6912e9..0af1865b 100644
--- a/testing/CMakeLists.txt
+++ b/testing/CMakeLists.txt
@@ -1,7 +1,7 @@
# run all tests sequentially (keep for backward compatibility)
add_custom_target(tests
COMMENT "Running doxygen tests..."
-- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/testing/runtests.py --doxygen ${PROJECT_BINARY_DIR}/bin/doxygen --inputdir ${CMAKE_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
-+ COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/testing/runtests.py --doxygen ${PROJECT_BINARY_DIR}/bin/doxygen --inputdir ${CMAKE_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
+- COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/testing/runtests.py --doxygen ${PROJECT_BINARY_DIR}/bin/doxygen --inputdir ${PROJECT_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
++ COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/testing/runtests.py --doxygen ${PROJECT_BINARY_DIR}/bin/doxygen --inputdir ${PROJECT_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
DEPENDS doxygen
)
@@ -231,10 +225,10 @@ index b354e78f..28d45e11 100644
string(REGEX REPLACE "^.*/([0-9][0-9][0-9]*).*$" "\\1" TEST_ID "${TEST_FILE}")
# add a test target for each test
add_test(NAME ${TEST_NAME}
-- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/testing/runtests.py --id ${TEST_ID} --doxygen $<TARGET_FILE:doxygen> --inputdir ${CMAKE_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
-+ COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/testing/runtests.py --id ${TEST_ID} --doxygen $<TARGET_FILE:doxygen> --inputdir ${CMAKE_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
+- COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/testing/runtests.py --id ${TEST_ID} --doxygen $<TARGET_FILE:doxygen> --inputdir ${PROJECT_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
++ COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/testing/runtests.py --id ${TEST_ID} --doxygen $<TARGET_FILE:doxygen> --inputdir ${PROJECT_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing
)
endforeach()
--
-2.17.1
+2.27.0
diff --git a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.20.bb b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.9.1.bb
index d4ac3b720..3370a1313 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.20.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.9.1.bb
@@ -10,8 +10,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.src.tar.gz \
file://0001-build-don-t-look-for-Iconv.patch \
"
SRC_URI_append_class-native = " file://doxygen-native-only-check-python3.patch"
-SRC_URI[md5sum] = "8729936a843232a66fe970ef65f3c3e4"
-SRC_URI[sha256sum] = "e0db6979286fd7ccd3a99af9f97397f2bae50532e4ecb312aa18862f8401ddec"
+SRC_URI[sha256sum] = "67aeae1be4e1565519898f46f1f7092f1973cce8a767e93101ee0111717091d1"
inherit cmake python3native
diff --git a/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.1.bb b/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.4.bb
index 358ec80e8..03de4997b 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.1.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.4.bb
@@ -10,8 +10,13 @@ DEPENDS = "c-ares protobuf protobuf-native protobuf-c protobuf-c-native openssl
DEPENDS_append_class-target = " googletest grpc-native "
DEPENDS_append_class-nativesdk = " grpc-native "
+PACKAGE_BEFORE_PN = "${PN}-compiler"
+
+RDEPENDS_${PN}-compiler = "${PN}"
+RDEPENDS_${PN}-dev += "${PN}-compiler"
+
S = "${WORKDIR}/git"
-SRCREV_grpc = "3b7f86e3516746c5f0db1947e0d65e94159bcb12"
+SRCREV_grpc = "3e53dbe8213137d2c731ecd4d88ebd2948941d75"
BRANCH = "v1.36.x"
SRC_URI = "git://github.com/grpc/grpc.git;protocol=https;name=grpc;branch=${BRANCH} \
"
@@ -72,4 +77,4 @@ BBCLASSEXTEND = "native nativesdk"
SYSROOT_DIRS_BLACKLIST_append_class-target = " ${baselib}/cmake/grpc"
-FILES_${PN}-dev += "${bindir}"
+FILES_${PN}-compiler += "${bindir}"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.7.bb b/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.8.bb
index 88fad936b..6277c41b4 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.7.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.8.bb
@@ -1,4 +1,4 @@
-SUMMARY = "runtime performance analyzer"
+SUMMARY = "performance analyzer"
HOMEPAGE = "https://github.com/iipeace/guider"
BUGTRACKER = "https://github.com/iipeace/guider/issues"
AUTHOR = "Peace Lee <ipeace5@gmail.com>"
@@ -6,10 +6,10 @@ AUTHOR = "Peace Lee <ipeace5@gmail.com>"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://LICENSE;md5=2c1c00f9d3ed9e24fa69b932b7e7aff2"
-PV = "3.9.7+git${SRCPV}"
+PV = "3.9.8+git${SRCPV}"
SRC_URI = "git://github.com/iipeace/${BPN}"
-SRCREV = "459b5189a46023fc98e19888b196bdc2674022fd"
+SRCREV = "a502cd93b13235b7539557a91328de00b7c51bc3"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.3.bb b/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.4.bb
index e41907de4..a02ff4a4d 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.3.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.4.bb
@@ -13,13 +13,13 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=fa2a23dd1dc6c139f35105379d76df2b"
PE = "1"
-SRCREV = "6aba23f4a8628d599a9ef7fa4811c4ff6e4070e2"
+SRCREV = "9059f5cad030ba11d37818847443a53918c327b1"
SRC_URI = "git://github.com/open-source-parsers/jsoncpp"
S = "${WORKDIR}/git"
inherit cmake
-EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON -DJSONCPP_WITH_TESTS=OFF"
+EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON -DBUILD_OBJECT_LIBS=OFF -DJSONCPP_WITH_TESTS=OFF"
BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.3.bb b/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.4.bb
index 576eff6d5..832254a00 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.3.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.4.bb
@@ -18,5 +18,5 @@ do_configure_prepend() {
done
}
-SRC_URI[archive.md5sum] = "e574b3952b93d219b5ec7c74c5892c33"
-SRC_URI[archive.sha256sum] = "d0b5edefc88cbca5f1709d19fa62aef490922c6577a14ac4e7b085507911a5de"
+SRC_URI[archive.md5sum] = "4d7d6f1f8054f1b3466c752ac2e50946"
+SRC_URI[archive.sha256sum] = "524c1bf390f9cdda4fbd9a47b269980dc64ab5280f0801b53bc69d782c72de0e"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/add_ppc64le.patch b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/add_ppc64le.patch
new file mode 100644
index 000000000..dff61b150
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/add_ppc64le.patch
@@ -0,0 +1,39 @@
+--- a/sysdeps/linux-gnu/ppc/ptrace.h
++++ b/sysdeps/linux-gnu/ppc/ptrace.h
+@@ -18,4 +18,5 @@
+ * 02110-1301 USA
+ */
+
++#include <asm/ptrace.h>
+ #include <sys/ptrace.h>
+--- a/sysdeps/linux-gnu/ppc/regs.c
++++ b/sysdeps/linux-gnu/ppc/regs.c
+@@ -23,11 +23,14 @@
+
+ #include "config.h"
+
++#include <string.h>
+ #include <sys/types.h>
+ #include <sys/ptrace.h>
+ #include <asm/ptrace.h>
+ #include <errno.h>
++#ifdef HAVE_ERROR_H
+ #include <error.h>
++#endif
+
+ #include "proc.h"
+ #include "common.h"
+@@ -49,8 +52,11 @@ get_instruction_pointer(struct process *
+ void
+ set_instruction_pointer(struct process *proc, void *addr)
+ {
+- if (ptrace(PTRACE_POKEUSER, proc->pid, sizeof(long)*PT_NIP, addr) != 0)
+- error(0, errno, "set_instruction_pointer");
++ if (ptrace(PTRACE_POKEUSER, proc->pid, sizeof(long)*PT_NIP, addr) != 0){
++ report_global_error("%s: set_instruction_pointer",
++ strerror(errno));
++ exit(1);
++ }
+ }
+
+ void *
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
index 5710943d7..17264cef5 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
@@ -30,6 +30,8 @@ SRC_URI = "git://github.com/sparkleholic/ltrace.git;branch=master;protocol=http
file://0001-Bug-fix-for-data-type-length-judgment.patch \
file://0001-ensure-the-struct-pointers-are-null-initilized.patch \
"
+SRC_URI_append_libc-musl = " file://add_ppc64le.patch"
+
S = "${WORKDIR}/git"
inherit autotools
diff --git a/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd/0001-nsswitch.y-Replace-empty-bison-extension.patch b/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd/0001-nsswitch.y-Replace-empty-bison-extension.patch
new file mode 100644
index 000000000..67c8b1bcf
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd/0001-nsswitch.y-Replace-empty-bison-extension.patch
@@ -0,0 +1,50 @@
+From 82e51fb8ba2640b318826ef4e17b0f5c09c8dded Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 8 Mar 2021 20:10:18 -0800
+Subject: [PATCH] nsswitch.y: Replace %empty bison extension
+
+POSIX compliant yacc do not understand %empty therefore replace it with
+/* empty */
+
+https://github.com/pikhq/musl-nscd/issues/13
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/nsswitch.y | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/nsswitch.y b/src/nsswitch.y
+index 107073b..0b7c71e 100644
+--- a/src/nsswitch.y
++++ b/src/nsswitch.y
+@@ -38,7 +38,7 @@ top:
+ ;
+
+ file:
+- %empty {
++ /* empty */ {
+ list_init(&$$);
+ }
+ | file line {
+@@ -88,7 +88,7 @@ modifier:
+ ;
+
+ modifiers:
+- %empty {
++ /* empty */ {
+ memcpy($$, default_actions, sizeof($$));
+ }
+ | modifiers modifier {
+@@ -112,7 +112,7 @@ item:
+ ;
+
+ list:
+- %empty {
++ /* empty */ {
+ list_init(&$$);
+ }
+ | list item {
+--
+2.30.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd_git.bb b/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd_git.bb
index 83125a1ba..6af7ab9cd 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd_git.bb
@@ -15,6 +15,7 @@ SRCREV = "af581482a3e1059458f3c8b20a56f82807ca3bd4"
SRC_URI = "git://github.com/pikhq/musl-nscd \
file://0001-Fix-build-under-GCC-fno-common.patch \
file://0001-configure-Check-for-flex-if-lex-is-not-found.patch \
+ file://0001-nsswitch.y-Replace-empty-bison-extension.patch \
"
UPSTREAM_CHECK_COMMITS = "1"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.20.2.bb b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.21.0.bb
index 6acc36b4f..9b86bf337 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.20.2.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.21.0.bb
@@ -26,7 +26,7 @@ SRC_URI = "http://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz \
SRC_URI_append_class-target = " \
file://0002-Using-native-binaries.patch \
"
-SRC_URI[sha256sum] = "961ad600f0706c396390ebc7767fb01d5e3792a5022dc2e7774796756eec6d3c"
+SRC_URI[sha256sum] = "052f37ace6f569b513b5a1154b2a45d3c4d8b07d7d7c807b79f1566db61e979d"
S = "${WORKDIR}/node-v${PV}"
@@ -39,7 +39,7 @@ def map_nodejs_arch(a, d):
if re.match('i.86$', a): return 'ia32'
elif re.match('x86_64$', a): return 'x64'
elif re.match('aarch64$', a): return 'arm64'
- elif re.match('(powerpc64|ppc64le)$', a): return 'ppc64'
+ elif re.match('(powerpc64|powerpc64le|ppc64le)$', a): return 'ppc64'
elif re.match('powerpc$', a): return 'ppc'
return a
diff --git a/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb b/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb
index 05e06a25d..85add50b6 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb
@@ -12,12 +12,12 @@ SRC_URI = " \
"
SRCREV_FORMAT = "openocd"
-SRCREV_openocd = "d46f28c2ea2611f5fbbc679a5eed253d3dcd2fe3"
+SRCREV_openocd = "f342aac0845a69d591ad39a025d74e9c765f6420"
SRCREV_git2cl = "8373c9f74993e218a08819cbcdbab3f3564bbeba"
SRCREV_jimtcl = "0aa0fb4e3a38d38a49de9eb585d93d63a370dcf6"
SRCREV_libjaylink = "9aa7a5957c07bb6e862fc1a6d3153d109c7407e4"
-PV = "0.10+gitr${SRCPV}"
+PV = "0.11+gitr${SRCPV}"
S = "${WORKDIR}/git"
inherit pkgconfig autotools-brokensep gettext
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb
index f8a8755b9..e19d5dd21 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb
@@ -214,6 +214,8 @@ RDEPENDS_${PN}-cli = "${PN}"
RDEPENDS_${PN}-modphp = "${PN} apache2"
RDEPENDS_${PN}-opcache = "${PN}"
+ALLOW_EMPTY_${PN} = "1"
+
INITSCRIPT_PACKAGES = "${PN}-fpm"
inherit update-rc.d
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ply/ply_git.bb b/meta-openembedded/meta-oe/recipes-devtools/ply/ply_git.bb
index 7d693b36d..b1327efeb 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/ply/ply_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/ply/ply_git.bb
@@ -5,11 +5,13 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
DEPENDS += "bison-native"
+PV = "2.1.1+git${SRCPV}"
+
SRC_URI = "git://github.com/iovisor/ply"
-SRCREV = "aa5b9ac31307ec1acece818be334ef801c802a12"
+SRCREV = "e25c9134b856cc7ffe9f562ff95caf9487d16b59"
S = "${WORKDIR}/git"
inherit autotools-brokensep
-COMPATIBLE_HOST = "(x86_64.*|aarch64.*|arm.*|powerpc.*)-linux"
+COMPATIBLE_HOST = "(x86_64.*|aarch64.*|arm.*|powerpc)-linux"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tclap/files/0001-tclap-add-pkg-config-file.patch b/meta-openembedded/meta-oe/recipes-devtools/tclap/files/0001-tclap-add-pkg-config-file.patch
new file mode 100644
index 000000000..58c9aec08
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/tclap/files/0001-tclap-add-pkg-config-file.patch
@@ -0,0 +1,50 @@
+From 9d47d2fd45c455339759dbfe9a0d6fd24b0a0fa1 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Wed, 24 Mar 2021 15:39:36 +0800
+Subject: [PATCH] tclap: add pkg-config file
+
+The tclap switched from autotools to CMake in 1.4.0 and drop the
+pkg-config file tclap.pc. Some projects (e.g. ima-inspect) still require
+it. So add it back.
+
+Upstream-Status: Pending
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ CMakeLists.txt | 5 +++++
+ tclap.pc.in | 7 +++++++
+ 2 files changed, 12 insertions(+)
+ create mode 100644 tclap.pc.in
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c2c9a26..b56eac7 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -25,6 +25,11 @@ install(FILES "${PROJECT_BINARY_DIR}/tclap/TCLAPConfig.h"
+ DESTINATION include/tclap
+ )
+
++configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tclap.pc.in
++ ${CMAKE_CURRENT_BINARY_DIR}/tclap.pc @ONLY)
++install(FILES ${CMAKE_CURRENT_BINARY_DIR}/tclap.pc
++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
++
+ add_subdirectory(docs)
+ add_subdirectory(examples)
+ add_subdirectory(tests)
+diff --git a/tclap.pc.in b/tclap.pc.in
+new file mode 100644
+index 0000000..ef51c94
+--- /dev/null
++++ b/tclap.pc.in
+@@ -0,0 +1,7 @@
++prefix=@CMAKE_INSTALL_PREFIX@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
++
++Name: tclap
++Description: Templatized C++ Command Line Parser
++Version: @PROJECT_VERSION@
++Cflags: -I${includedir}
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap/Makefile.am-disable-docs.patch b/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap/Makefile.am-disable-docs.patch
deleted file mode 100644
index 358cbefdd..000000000
--- a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap/Makefile.am-disable-docs.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From c209ed0e7ffca32fe3714bad9cc54bdb00c286bb Mon Sep 17 00:00:00 2001
-From: Ting Liu <b28495@freescale.com>
-Date: Mon, 15 Apr 2013 16:28:37 +0800
-Subject: [PATCH] Makefile.am: disable docs
-
-Upstream-Status: Inappropriate [OE specific]
-
-docs need some generating tool (for example, doxygen) from host which may
-be not available. Disable it to avoid build issue.
-
-Signed-off-by: Ting Liu <b28495@freescale.com>
----
- Makefile.am | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 0a6ebc9..6b42f41 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,7 +1,7 @@
-
- ACLOCAL_AMFLAGS = -I config
-
--SUBDIRS = include examples docs tests msc config
-+SUBDIRS = include examples tests msc config
-
- pkgconfigdir = $(libdir)/pkgconfig
- pkgconfig_DATA = $(PACKAGE).pc
---
-1.7.5
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.2.2.bb b/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.2.2.bb
deleted file mode 100644
index bba8d5c21..000000000
--- a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.2.2.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "Templatized C++ Command Line Parser"
-HOMEPAGE = "http://tclap.sourceforge.net/"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=0ca8b9c5c5445cfa7af7e78fd27e60ed"
-
-SRCREV = "ec3ddcfe41b0544a4551a57439b6b3682fe31479"
-SRC_URI = "git://git.code.sf.net/p/tclap/code;branch=1.2 \
- file://Makefile.am-disable-docs.patch \
-"
-
-S = "${WORKDIR}/git"
-inherit autotools
-
-ALLOW_EMPTY_${PN} = "1"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.4.0.bb b/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.4.0.bb
new file mode 100644
index 000000000..7c8224b57
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.4.0.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Templatized C++ Command Line Parser"
+HOMEPAGE = "http://tclap.sourceforge.net/"
+DESCRIPTION = "TCLAP is a small, flexible library that provides a simple interface \
+for defining and accessing command line arguments. It was intially inspired by the \
+user friendly CLAP libary. The difference is that this library is templatized, so \
+the argument class is type independent. Type independence avoids identical-except-for-type \
+objects, such as IntArg, FloatArg, and StringArg. While the library is not strictly \
+compliant with the GNU or POSIX standards, it is close. \
+"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5c64b2e8cc50917b2744a90950faa7cd"
+
+SRCREV = "799a8b1f99818e39fee19d0601030770af1221e1"
+SRC_URI = "git://git.code.sf.net/p/tclap/code;branch=1.4 \
+ file://0001-tclap-add-pkg-config-file.patch \
+"
+
+S = "${WORKDIR}/git"
+inherit cmake
+
+ALLOW_EMPTY_${PN} = "1"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace/0001-Fix-error-on-aarch64-with-binutils2.35.1.patch b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace/0001-Fix-error-on-aarch64-with-binutils2.35.1.patch
new file mode 100644
index 000000000..ac17cf433
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace/0001-Fix-error-on-aarch64-with-binutils2.35.1.patch
@@ -0,0 +1,27 @@
+From 0bc502989822506af308a559ac1cd52af82cac03 Mon Sep 17 00:00:00 2001
+From: Lei Maohui <leimaohui@cn.fujitsu.com>
+Date: Wed, 14 Apr 2021 09:35:35 +0900
+Subject: [PATCH] Fix error on aarch64 with binutils2.35.1.
+
+WARN: child terminated by signal: 11: Segmentation fault
+
+Upstream-status: Pending
+
+Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
+---
+ arch/aarch64/mcount-arch.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/aarch64/mcount-arch.h b/arch/aarch64/mcount-arch.h
+index 69efe521..60c2c1ba 100644
+--- a/arch/aarch64/mcount-arch.h
++++ b/arch/aarch64/mcount-arch.h
+@@ -31,7 +31,7 @@ struct mcount_arch_context {
+ double d[ARCH_MAX_FLOAT_REGS];
+ };
+
+-#define ARCH_PLT0_SIZE 32
++#define ARCH_PLT0_SIZE 16
+ #define ARCH_PLTHOOK_ADDR_OFFSET 0
+
+ struct mcount_disasm_engine;
diff --git a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.4.bb b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.4.bb
index a3d060218..4b4fc831c 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.4.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.4.bb
@@ -13,6 +13,7 @@ inherit autotools
PV .= "+git${SRCPV}"
SRCREV = "d648bbffedef529220896283fb59e35531c13804"
SRC_URI = "git://github.com/namhyung/${BPN} \
+ file://0001-Fix-error-on-aarch64-with-binutils2.35.1.patch \
"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210117.bb b/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210319.bb
index 4f49fb906..5f165617c 100644
--- a/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210117.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210319.bb
@@ -10,8 +10,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343"
SRC_URI = "ftp://ftp.invisible-island.net/${BPN}/${BP}.tgz \
"
-SRC_URI[md5sum] = "c27db8bb67f71ee32ab1b54a3b3cebc3"
-SRC_URI[sha256sum] = "3c1ed08f44bcf6f159f2aa6fde765db94e8997b3eefb49d8b4c86691693c43e1"
+SRC_URI[md5sum] = "45a28836769d52c00c800fa3226c530d"
+SRC_URI[sha256sum] = "42c6c2b35dd6d1c6cf231238e3bd6d3b7af53fc279a1af547ab9890044d46652"
# hardcoded here for use in dialog-static recipe
S = "${WORKDIR}/dialog-${PV}"
diff --git a/meta-openembedded/meta-oe/recipes-extended/libbacktrace/libbacktrace_git.bb b/meta-openembedded/meta-oe/recipes-extended/libbacktrace/libbacktrace_git.bb
new file mode 100644
index 000000000..1f3cb97c1
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/libbacktrace/libbacktrace_git.bb
@@ -0,0 +1,30 @@
+# Copyright (C) 2021 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+SUMMARY = "A C library that may be linked into a C/C++ program to produce symbolic backtraces"
+HOMEPAGE = "https://github.com/ianlancetaylor/libbacktrace"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=24b5b3feec63c4be0975e1fea5100440"
+
+DEPENDS += "libunwind"
+
+SRC_URI = "git://github.com/ianlancetaylor/libbacktrace;protocol=https"
+
+PV = "1.0+git${SRCPV}"
+SRCREV = "4f57c999716847e45505b3df170150876b545088"
+
+S = "${WORKDIR}/git"
+
+inherit autotools
+
+EXTR_OECONF += "--with-system-libunwind"
+
+CFLAGS += "-fPIC"
+
+do_configure() {
+ oe_runconf
+}
+
+# libunwind does not support RISCV yet
+COMPATIBLE_HOST_riscv64 = "null"
+COMPATIBLE_HOST_riscv32 = "null"
diff --git a/meta-openembedded/meta-oe/recipes-extended/libleak/libleak/0001-respect-environment-variables.patch b/meta-openembedded/meta-oe/recipes-extended/libleak/libleak/0001-respect-environment-variables.patch
new file mode 100644
index 000000000..bbdfa3c96
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/libleak/libleak/0001-respect-environment-variables.patch
@@ -0,0 +1,25 @@
+From ea3f11a7846ad27926c6eacc0534914f4873504f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 5 Mar 2021 19:30:09 -0800
+Subject: [PATCH] respect environment variables
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 1d70f17..c7e726e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,5 +1,5 @@
+-CFLAGS = -g -O2 -Wall -fPIC -Ilibwuya
+-LDFLAGS = -Llibwuya
++CFLAGS += -g -O2 -Wall -fPIC -Ilibwuya
++LDFLAGS += -Llibwuya
+
+ libleak.so: libleak.o
+ CFLAGS='-fPIC' make -C libwuya
+--
+2.30.1
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/libleak/libleak_git.bb b/meta-openembedded/meta-oe/recipes-extended/libleak/libleak_git.bb
new file mode 100644
index 000000000..309553c90
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/libleak/libleak_git.bb
@@ -0,0 +1,38 @@
+# Copyright (C) 2021 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+SUMMARY = "libleak detects memory leak by hooking memory functions (e.g. malloc) by LD_PRELOAD"
+HOMEPAGE = "https://github.com/WuBingzheng/libleak"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://README.md;beginline=18;endline=21;md5=de4f705f12cdedbe452b2c3524572b03"
+
+DEPENDS += "libbacktrace"
+
+SRC_URI = "gitsm://github.com/WuBingzheng/libleak;protocol=https \
+ file://0001-respect-environment-variables.patch \
+ "
+
+PV = "1.0+git${SRCPV}"
+SRCREV = "ea2bb608ae25701692269a37d39d77e966b887ac"
+
+S = "${WORKDIR}/git"
+
+do_configure () {
+ :
+}
+
+do_compile () {
+ oe_runmake
+}
+
+do_install () {
+ install -Dm 0755 ${B}/libleak.so ${D}${libdir}/libleak.so
+}
+
+FILES_SOLIBSDEV = ""
+
+FILES_${PN} += "${libdir}/libleak.so"
+
+# libunwind does not support RISCV yet
+COMPATIBLE_HOST_riscv64 = "null"
+COMPATIBLE_HOST_riscv32 = "null"
diff --git a/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-tools_0.10.5.bb b/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-tools_0.10.5.bb
index 04f82d2bc..6009cd030 100644
--- a/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-tools_0.10.5.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-tools_0.10.5.bb
@@ -7,6 +7,8 @@ SECTION = "System/Management"
inherit ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "setuptools", "", d)}
+PNBLACKLIST[openlmi-tools] ?= "${@bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', '', 'python2 is out of support for long time, read https://www.python.org/doc/sunset-python-2/ https://python3statement.org/ and if you really have to temporarily use this, then set I_SWEAR_TO_MIGRATE_TO_PYTHON3 to "yes"', d)}"
+
DEPENDS = "python-native python-pywbem-native python-m2crypto python-pywbem"
SRC_URI = "http://fedorahosted.org/released/${BPN}/${BP}.tar.gz \
diff --git a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2020.8.bb b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2021.1.bb
index 4f0f719fb..c382ad87f 100644
--- a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2020.8.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2021.1.bb
@@ -25,7 +25,7 @@ SRC_URI = " \
gitsm://github.com/ostreedev/ostree \
file://run-ptest \
"
-SRCREV = "3e289b19345e30d2da193cd208e109f7d7aaa2a1"
+SRCREV = "e9e4b9112083228b8c385ad26924b6c4623f4179"
UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+\.\d+)"
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis/riscv32.patch b/meta-openembedded/meta-oe/recipes-extended/redis/redis/0006-Define-correct-gregs-for-RISCV32.patch
index 79ec7423d..b2d1a32ed 100644
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis/riscv32.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/redis/redis/0006-Define-correct-gregs-for-RISCV32.patch
@@ -1,21 +1,33 @@
-Define correct gregs for RISCV32
+From 6134b471c35df826ccb41aab9a47e5c89e15a0c4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 26 Oct 2020 21:32:22 -0700
+Subject: [PATCH] Define correct gregs for RISCV32
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Updated patch for 6.2.1
+Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
+---
+ src/debug.c | 26 ++++++++++++++++++++++++--
+ 1 file changed, 24 insertions(+), 2 deletions(-)
+
+diff --git a/src/debug.c b/src/debug.c
+index e7fec29..5abb404 100644
--- a/src/debug.c
+++ b/src/debug.c
-@@ -942,7 +942,9 @@ static void *getMcontextEip(ucontext_t *
+@@ -1039,7 +1039,9 @@ static void *getMcontextEip(ucontext_t *uc) {
#endif
#elif defined(__linux__)
/* Linux */
-- #if defined(__i386__) || defined(__ILP32__)
+- #if defined(__i386__) || ((defined(__X86_64__) || defined(__x86_64__)) && defined(__ILP32__))
+ #if defined(__riscv) && __riscv_xlen == 32
+ return (void*) uc->uc_mcontext.__gregs[REG_PC];
-+ #elif defined(__i386__) || defined(__ILP32__)
++ #elif defined(__i386__) || ((defined(__X86_64__) || defined(__x86_64__)) && defined(__ILP32__))
return (void*) uc->uc_mcontext.gregs[14]; /* Linux 32 */
#elif defined(__X86_64__) || defined(__x86_64__)
return (void*) uc->uc_mcontext.gregs[16]; /* Linux 64 */
-@@ -1102,8 +1104,28 @@ void logRegisters(ucontext_t *uc) {
+@@ -1206,8 +1208,28 @@ void logRegisters(ucontext_t *uc) {
#endif
/* Linux */
#elif defined(__linux__)
@@ -40,8 +52,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
+ );
+ logStackContent((void**)uc->uc_mcontext.__gregs[REG_SP]);
/* Linux x86 */
-- #if defined(__i386__) || defined(__ILP32__)
-+ #elif defined(__i386__) || defined(__ILP32__)
+- #if defined(__i386__) || ((defined(__X86_64__) || defined(__x86_64__)) && defined(__ILP32__))
++ #elif defined(__i386__) || ((defined(__X86_64__) || defined(__x86_64__)) && defined(__ILP32__))
serverLog(LL_WARNING,
"\n"
"EAX:%08lx EBX:%08lx ECX:%08lx EDX:%08lx\n"
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis/ilp32.patch b/meta-openembedded/meta-oe/recipes-extended/redis/redis/ilp32.patch
deleted file mode 100644
index 48d01a1d6..000000000
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis/ilp32.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-__ILP32__ is defined for all 32bit architectures with clang e.g.
-which is right but it is causing issues on non-x86 architectures
-where this condition becomes true and wrongly starts using this
-code, this issue is hidden with gcc becuase gcc does not define
-__ILP32__ for all 32bit architectures but for selected 64bit arches
-who choose to use 32bit ABI e.g. x32
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
---- a/src/debug.c
-+++ b/src/debug.c
-@@ -944,7 +944,7 @@ static void *getMcontextEip(ucontext_t *
- /* Linux */
- #if defined(__riscv) && __riscv_xlen == 32
- return (void*) uc->uc_mcontext.__gregs[REG_PC];
-- #elif defined(__i386__) || defined(__ILP32__)
-+ #elif defined(__i386__) || (defined(__X86_64__) && defined(__ILP32__))
- return (void*) uc->uc_mcontext.gregs[14]; /* Linux 32 */
- #elif defined(__X86_64__) || defined(__x86_64__)
- return (void*) uc->uc_mcontext.gregs[16]; /* Linux 64 */
-@@ -1125,7 +1125,7 @@ void logRegisters(ucontext_t *uc) {
- );
- logStackContent((void**)uc->uc_mcontext.__gregs[REG_SP]);
- /* Linux x86 */
-- #elif defined(__i386__) || defined(__ILP32__)
-+ #elif defined(__i386__) || ( defined(__X86_64__) && defined(__ILP32__))
- serverLog(LL_WARNING,
- "\n"
- "EAX:%08lx EBX:%08lx ECX:%08lx EDX:%08lx\n"
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis/lua-update-Makefile-to-use-environment-build-setting.patch b/meta-openembedded/meta-oe/recipes-extended/redis/redis/lua-update-Makefile-to-use-environment-build-setting.patch
index 7e62ae131..1619e9db3 100644
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis/lua-update-Makefile-to-use-environment-build-setting.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/redis/redis/lua-update-Makefile-to-use-environment-build-setting.patch
@@ -1,4 +1,4 @@
-From 394108035d350ae662a431c80131f812b5f72dff Mon Sep 17 00:00:00 2001
+From 097a2b259cb266c2c861dc74fa6f80712d6138c5 Mon Sep 17 00:00:00 2001
From: Venture Research <tech@ventureresearch.com>
Date: Fri, 8 Feb 2013 20:22:19 -0600
Subject: [PATCH] lua: update Makefile to use environment build settings
@@ -12,14 +12,42 @@ Updated to work with 3.0.x
Signed-off-by: Armin Kuster <akust808@gmail.com>
+updated to work wtih 6.2.1
+Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
---
- deps/lua/src/Makefile | 18 +++++++-----------
- 1 file changed, 7 insertions(+), 11 deletions(-)
+ deps/Makefile | 1 -
+ deps/lua/Makefile | 1 -
+ deps/lua/src/Makefile | 16 ++++++----------
+ 3 files changed, 6 insertions(+), 12 deletions(-)
-Index: redis-3.0.2/deps/lua/src/Makefile
-===================================================================
---- redis-3.0.2.orig/deps/lua/src/Makefile
-+++ redis-3.0.2/deps/lua/src/Makefile
+diff --git a/deps/Makefile b/deps/Makefile
+index ff16ee9..d8d64aa 100644
+--- a/deps/Makefile
++++ b/deps/Makefile
+@@ -74,7 +74,6 @@ LUA_LDFLAGS+= $(LDFLAGS)
+ # lua's Makefile defines AR="ar rcu", which is unusual, and makes it more
+ # challenging to cross-compile lua (and redis). These defines make it easier
+ # to fit redis into cross-compilation environments, which typically set AR.
+-AR=ar
+ ARFLAGS=rc
+
+ lua: .make-prerequisites
+diff --git a/deps/lua/Makefile b/deps/lua/Makefile
+index 209a132..72f4b2b 100644
+--- a/deps/lua/Makefile
++++ b/deps/lua/Makefile
+@@ -33,7 +33,6 @@ INSTALL_DATA= $(INSTALL) -m 0644
+
+ # Utilities.
+ MKDIR= mkdir -p
+-RANLIB= ranlib
+
+ # == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE =========
+
+diff --git a/deps/lua/src/Makefile b/deps/lua/src/Makefile
+index f3bba2f..1555ec0 100644
+--- a/deps/lua/src/Makefile
++++ b/deps/lua/src/Makefile
@@ -5,18 +5,14 @@
# == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT =======================
@@ -45,27 +73,3 @@ Index: redis-3.0.2/deps/lua/src/Makefile
# == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE =========
-Index: redis-3.0.2/deps/Makefile
-===================================================================
---- redis-3.0.2.orig/deps/Makefile
-+++ redis-3.0.2/deps/Makefile
-@@ -63,7 +63,6 @@ LUA_LDFLAGS+= $(LDFLAGS)
- # lua's Makefile defines AR="ar rcu", which is unusual, and makes it more
- # challenging to cross-compile lua (and redis). These defines make it easier
- # to fit redis into cross-compilation environments, which typically set AR.
--AR=ar
- ARFLAGS=rcu
-
- lua: .make-prerequisites
-Index: redis-3.0.2/deps/lua/Makefile
-===================================================================
---- redis-3.0.2.orig/deps/lua/Makefile
-+++ redis-3.0.2/deps/lua/Makefile
-@@ -33,7 +33,6 @@ INSTALL_DATA= $(INSTALL) -m 0644
-
- # Utilities.
- MKDIR= mkdir -p
--RANLIB= ranlib
-
- # == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE =========
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis/oe-use-libc-malloc.patch b/meta-openembedded/meta-oe/recipes-extended/redis/redis/oe-use-libc-malloc.patch
index 6745f3d0e..a0f66b845 100644
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis/oe-use-libc-malloc.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/redis/redis/oe-use-libc-malloc.patch
@@ -1,4 +1,4 @@
-From f8861d2129b9e18bba137705bfa38c6bd9be1790 Mon Sep 17 00:00:00 2001
+From 1fa047162983d4a7e0576f0837a73a6027a783bd Mon Sep 17 00:00:00 2001
From: Venture Research <tech@ventureresearch.com>
Date: Wed, 6 Feb 2013 20:51:02 -0600
Subject: [PATCH] hack to force use of libc malloc
@@ -6,7 +6,7 @@ Subject: [PATCH] hack to force use of libc malloc
Hack to force libc usage as it seems the option to pass it in has been
removed in favor of magic.
-Note that this of course doesn't allow tcmalloc and jemalloc, however
+Note that this of course doesn't allow tcmalloc and jemalloc, however
jemalloc wasn't building correctly.
Signed-off-by: Venture Research <tech@ventureresearch.com>
@@ -15,11 +15,11 @@ Update to work with 4.0.8
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
---
- src/Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
+ src/Makefile | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/Makefile b/src/Makefile
-index 86e0b3fe..a810180b 100644
+index ecd6929..c7f43c5 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -13,7 +13,8 @@
@@ -31,4 +31,4 @@ index 86e0b3fe..a810180b 100644
+uname_S := "USE_LIBC_MALLOC"
uname_M := $(shell sh -c 'uname -m 2>/dev/null || echo not')
OPTIMIZATION?=-O2
- DEPENDENCY_TARGETS=hiredis linenoise lua
+ DEPENDENCY_TARGETS=hiredis linenoise lua hdr_histogram
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis_6.0.9.bb b/meta-openembedded/meta-oe/recipes-extended/redis/redis_6.2.1.bb
index 50571ed55..89990df3d 100644
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis_6.0.9.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/redis/redis_6.2.1.bb
@@ -15,10 +15,9 @@ SRC_URI = "http://download.redis.io/releases/${BP}.tar.gz \
file://oe-use-libc-malloc.patch \
file://0001-src-Do-not-reset-FINAL_LIBS.patch \
file://GNU_SOURCE.patch \
- file://riscv32.patch \
- file://ilp32.patch \
+ file://0006-Define-correct-gregs-for-RISCV32.patch \
"
-SRC_URI[sha256sum] = "dc2bdcf81c620e9f09cfd12e85d3bc631c897b2db7a55218fd8a65eaa37f86dd"
+SRC_URI[sha256sum] = "cd222505012cce20b25682fca931ec93bd21ae92cb4abfe742cf7b76aa907520"
inherit autotools-brokensep update-rc.d systemd useradd
diff --git a/meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.6.0.bb b/meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.10.0.bb
index f3933f930..6a1f88093 100644
--- a/meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.6.0.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.10.0.bb
@@ -6,10 +6,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=1fb9c10ed9fd6826757615455ca893a9"
DEPENDS = "gmp nettle libidn zlib gnutls openssl"
-SRC_URI = "git://github.com/rsyslog/librelp.git;protocol=https \
+SRC_URI = "git://github.com/rsyslog/librelp.git;protocol=https;branch=stable \
"
-SRCREV = "fe366f3770320cbe76bac7e84b26a48491d14531"
+SRCREV = "9e749453d51d602d8159717f8a7c27971dcb4c6c"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-disable-the-check-for-inotify.patch b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-disable-the-check-for-inotify.patch
new file mode 100644
index 000000000..552172d39
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-disable-the-check-for-inotify.patch
@@ -0,0 +1,46 @@
+From 194e199ce08acc2192f6a63420ff24d9064666e5 Mon Sep 17 00:00:00 2001
+From: Yi Fan Yu <yifan.yu@windriver.com>
+Date: Sat, 27 Mar 2021 19:18:25 -0400
+Subject: [PATCH] tests: disable the check for inotify
+
+We don't need to check inotify.h.
+Assume it is present since it is part of the linux kernel
+since 2.6.13 [1].
+
+[1](https://kernelnewbies.org/Linux_2_6_13)
+
+(it would require installing the libc headers otherwise,
+ for the test to detect /usr/include/sys/inotify.h.)
+
+Upstream-Status: Inappropriate[OE-specific]
+
+Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
+---
+ tests/diag.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tests/diag.sh b/tests/diag.sh
+index 6cd60ea88..7424f48c5 100755
+--- a/tests/diag.sh
++++ b/tests/diag.sh
+@@ -2672,7 +2672,7 @@ case $1 in
+ fi
+ ;;
+ 'check-inotify') # Check for inotify/fen support
+- if [ -n "$(find /usr/include -name 'inotify.h' -print -quit)" ]; then
++ if true; then
+ echo [inotify mode]
+ elif [ -n "$(find /usr/include/sys/ -name 'port.h' -print -quit)" ]; then
+ grep -qF "PORT_SOURCE_FILE" < /usr/include/sys/port.h
+@@ -2687,7 +2687,7 @@ case $1 in
+ fi
+ ;;
+ 'check-inotify-only') # Check for ONLY inotify support
+- if [ -n "$(find /usr/include -name 'inotify.h' -print -quit)" ]; then
++ if true; then
+ echo [inotify mode]
+ else
+ echo [inotify not supported, skipping...]
+--
+2.29.2
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/run-ptest b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/run-ptest
index aa698d85c..efa9ba3ed 100644
--- a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/run-ptest
+++ b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/run-ptest
@@ -5,4 +5,8 @@ set -o pipefail
SCRIPTPATH="$( cd "$(dirname "$0")" ; pwd -P )"
cd ${SCRIPTPATH}
-make -C tests -k check-TESTS
+useradd tester || echo "user already exists"
+ln -sf /usr/sbin/logrotate /usr/bin/logrotate
+su tester -c "make -C tests -k check-TESTS"
+userdel tester
+rm -f /usr/bin/logrotate
diff --git a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.2102.0.bb b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.2102.0.bb
index 22059d140..921124024 100644
--- a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.2102.0.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.2102.0.bb
@@ -24,6 +24,7 @@ SRC_URI = "http://www.rsyslog.com/download/files/download/rsyslog/${BPN}-${PV}.t
file://rsyslog.service \
file://use-pkgconfig-to-check-libgcrypt.patch \
file://run-ptest \
+ file://0001-tests-disable-the-check-for-inotify.patch \
"
SRC_URI_append_libc-musl = " \
@@ -80,11 +81,6 @@ PACKAGECONFIG[mail] = "--enable-mail,--disable-mail,,"
PACKAGECONFIG[valgrind] = ",--without-valgrind-testbench,valgrind,"
PACKAGECONFIG[imhttp] = "--enable-imhttp,--disable-imhttp,civetweb,"
-do_configure_prepend() {
- sed -i -e 's|python |python3 |g' ${S}/tests/*.sh
- sed -i -e 's|/usr/bin/env python|/usr/bin/env python3|g' ${S}/tests/*.py
- sed -i -e 's|/usr/bin/env python|/usr/bin/env python3|g' ${S}/tests/testsuites/*.py
-}
TESTDIR = "tests"
do_compile_ptest() {
@@ -97,6 +93,10 @@ do_install_ptest() {
cp -rf ${S}/${TESTDIR} ${D}${PTEST_PATH}
cp -rf ${B}/${TESTDIR} ${D}${PTEST_PATH}
+ # give permissions to all users
+ # some tests need to write to this directory as user 'daemon'
+ chmod 777 -R ${D}${PTEST_PATH}/tests
+
# do NOT need to rebuild Makefile itself
sed -i 's/^Makefile:.*$/Makefile:/' ${D}${PTEST_PATH}/${TESTDIR}/Makefile
# do NOT need to rebuild $(check_PROGRAMS)
@@ -195,8 +195,11 @@ VALGRIND_libc-musl_powerpc64le = ''
VALGRIND_riscv64 = ""
VALGRIND_riscv32 = ""
+# util-linux: logger needs the -d option
RDEPENDS_${PN}-ptest += "\
make diffutils gzip bash gawk coreutils procps \
- libgcc python3-core python3-io \
+ libgcc python3-core python3-io python3-json \
+ curl util-linux shadow \
"
+
RRECOMMENDS_${PN}-ptest += "${TCLIBC}-dbg ${VALGRIND}"
diff --git a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/0001-Fix-build-with-musl-backtrace-APIs-are-glibc-specifi.patch b/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/0001-Fix-build-with-musl-backtrace-APIs-are-glibc-specifi.patch
deleted file mode 100644
index cb8061157..000000000
--- a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/0001-Fix-build-with-musl-backtrace-APIs-are-glibc-specifi.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 290703a5d21f34ea5ec23efc815a9f4df241e7e8 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 23 Oct 2015 00:33:32 -0700
-Subject: [PATCH] Fix build with musl, backtrace() APIs are glibc specific
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- userspace/libsinsp/utils.cpp | 4 +++-
- userspace/libsinsp/utils.h | 2 +-
- 2 files changed, 4 insertions(+), 2 deletions(-)
-
---- a/userspace/libsinsp/utils.cpp
-+++ b/userspace/libsinsp/utils.cpp
-@@ -22,7 +22,7 @@ limitations under the License.
- #include <limits.h>
- #include <stdlib.h>
- #include <sys/time.h>
--#ifndef CYGWING_AGENT
-+#if !defined(CYGWING_AGENT) || defined(__GLIBC__)
- #include <execinfo.h>
- #endif
- #include <unistd.h>
-@@ -780,6 +780,7 @@ bool sinsp_utils::glob_match(const char
-
- #ifndef CYGWING_AGENT
- #ifndef _WIN32
-+#ifdef __GLIBC__
- void sinsp_utils::bt(void)
- {
- static const char start[] = "BACKTRACE ------------";
-@@ -801,6 +802,7 @@ void sinsp_utils::bt(void)
-
- free(bt_syms);
- }
-+#endif // Glibc
- #endif // _WIN32
- #endif // CYGWING_AGENT
-
---- a/userspace/libsinsp/utils.h
-+++ b/userspace/libsinsp/utils.h
-@@ -104,7 +104,7 @@ public:
-
- static bool glob_match(const char *pattern, const char *string);
-
--#ifndef _WIN32
-+#if not defined(_WIN32) && defined(__GLIBC__)
- //
- // Print the call stack
- //
diff --git a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/fix-uint64-const.patch b/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/fix-uint64-const.patch
deleted file mode 100644
index 5c756294b..000000000
--- a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig/fix-uint64-const.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Fix x86 build
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
---- a/userspace/libsinsp/cgroup_limits.cpp
-+++ b/userspace/libsinsp/cgroup_limits.cpp
-@@ -9,7 +9,7 @@ namespace {
- // This reports extremely large values (e.g. almost-but-not-quite 9EiB as set by k8s) as unlimited.
- // Note: we use the same maximum value for cpu shares/quotas as well; the typical values are much lower
- // and so should never exceed CGROUP_VAL_MAX either
--constexpr const int64_t CGROUP_VAL_MAX = (1UL << 42u) - 1;
-+constexpr const int64_t CGROUP_VAL_MAX = (1ULL << 42u) - 1;
-
- /**
- * \brief Read a single int64_t value from cgroupfs
diff --git a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig_git.bb b/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig_git.bb
index 04a022af4..d9da19057 100644
--- a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig_git.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig_git.bb
@@ -15,24 +15,21 @@ JIT_mipsarchn64 = ""
JIT_riscv64 = ""
JIT_riscv32 = ""
-DEPENDS += "lua${JIT} zlib c-ares grpc-native grpc curl ncurses jsoncpp tbb jq openssl elfutils protobuf protobuf-native jq-native"
+DEPENDS += "libb64 lua${JIT} zlib c-ares grpc-native grpc curl ncurses jsoncpp tbb jq openssl elfutils protobuf protobuf-native jq-native"
RDEPENDS_${PN} = "bash"
SRC_URI = "git://github.com/draios/sysdig.git;branch=dev \
file://0001-fix-build-with-LuaJIT-2.1-betas.patch \
- file://0001-Fix-build-with-musl-backtrace-APIs-are-glibc-specifi.patch \
- file://fix-uint64-const.patch \
file://aarch64.patch \
"
-SRCREV = "8daeef8da752c5f07f439391bc20c5948eb11470"
-PV = "0.26.6"
+SRCREV = "67833b2aca06bd9d11cff7cb29f04fbf4ef96cad"
+PV = "0.27.1"
S = "${WORKDIR}/git"
EXTRA_OECMAKE = "\
-DBUILD_DRIVER=OFF \
-DUSE_BUNDLED_DEPS=OFF \
- -DUSE_BUNDLED_B64=ON \
-DCREATE_TEST_TARGETS=OFF \
-DDIR_ETC=${sysconfdir} \
-DLUA_INCLUDE_DIR=${STAGING_INCDIR}/luajit-2.1 \
diff --git a/meta-openembedded/meta-oe/recipes-extended/tmate/tmate_2.4.0.bb b/meta-openembedded/meta-oe/recipes-extended/tmate/tmate_2.4.0.bb
new file mode 100644
index 000000000..df534ddda
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/tmate/tmate_2.4.0.bb
@@ -0,0 +1,17 @@
+SUMMARY = "Instant terminal sharing"
+DESCRIPTION = "Tmate is a fork of tmux. It provides an instant pairing solution."
+AUTHOR = "Marius Kriegerowski <marius.kriegerowski@gmail.com>"
+HOMEPAGE = "https://tmate.io/"
+LICENSE = "ISC"
+LIC_FILES_CHKSUM = "file://COPYING;md5=f7d9aab84ec6567139a4755c48d147fb"
+
+DEPENDS_append = " libevent libssh msgpack-c ncurses"
+SRC_URI = "\
+ git://github.com/tmate-io/tmate.git;protocol=https \
+"
+
+SRCREV = "5e00bfa5e137e76c81888727712ced2b3fd99f5b"
+
+S = "${WORKDIR}/git"
+
+inherit pkgconfig autotools
diff --git a/meta-openembedded/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb b/meta-openembedded/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb
index 8e00cb3ea..f86b2b912 100644
--- a/meta-openembedded/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb
@@ -18,15 +18,14 @@ S = "${WORKDIR}/tools"
inherit update-alternatives
do_compile() {
- oe_runmake
+ oe_runmake LIB_DIR=${libdir}/uml
}
do_install() {
oe_runmake install DESTDIR=${D}
}
-FILES_${PN} += "${exec_prefix}${nonarch_base_libdir}"
-FILES_${PN}-dbg += "${exec_prefix}${nonarch_base_libdir}/uml/.debug"
+FILES_${PN} += "${libdir}/uml"
ALTERNATIVE_${PN} = "tunctl"
ALTERNATIVE_LINK_NAME[tunctl] = "${bindir}/tunctl"
diff --git a/meta-openembedded/meta-oe/recipes-extended/zstd/zstd/0001-Fix-legacy-build-after-2103.patch b/meta-openembedded/meta-oe/recipes-extended/zstd/zstd/0001-Fix-legacy-build-after-2103.patch
deleted file mode 100644
index c701554b8..000000000
--- a/meta-openembedded/meta-oe/recipes-extended/zstd/zstd/0001-Fix-legacy-build-after-2103.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 93cec0c1d6d0be8dd3a9d01d3e7f2099f1728df7 Mon Sep 17 00:00:00 2001
-From: Orivej Desh <orivej@gmx.fr>
-Date: Fri, 22 May 2020 12:48:02 +0000
-Subject: [PATCH] Fix legacy build after #2103
-
-Upstream-Status: Backport
-Signed-of-by: Alex Kiernan <alex.kiernan@gmail.com>
----
- lib/legacy/zstd_v04.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/legacy/zstd_v04.c b/lib/legacy/zstd_v04.c
-index 56bf45222498..19fda8980abf 100644
---- a/lib/legacy/zstd_v04.c
-+++ b/lib/legacy/zstd_v04.c
-@@ -74,7 +74,7 @@ extern "C" {
- /*-*************************************
- * Debug
- ***************************************/
--#include "debug.h"
-+#include "../common/debug.h"
- #ifndef assert
- # define assert(condition) ((void)0)
- #endif
---
-2.17.1
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/zstd/zstd_1.4.5.bb b/meta-openembedded/meta-oe/recipes-extended/zstd/zstd_1.4.5.bb
deleted file mode 100644
index d0cc625aa..000000000
--- a/meta-openembedded/meta-oe/recipes-extended/zstd/zstd_1.4.5.bb
+++ /dev/null
@@ -1,39 +0,0 @@
-SUMMARY = "Zstandard - Fast real-time compression algorithm"
-DESCRIPTION = "Zstandard is a fast lossless compression algorithm, targeting \
-real-time compression scenarios at zlib-level and better compression ratios. \
-It's backed by a very fast entropy stage, provided by Huff0 and FSE library."
-HOMEPAGE = "http://www.zstd.net/"
-SECTION = "console/utils"
-
-LICENSE = "BSD-3-Clause & GPLv2"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=c7f0b161edbe52f5f345a3d1311d0b32 \
- file://COPYING;md5=39bba7d2cf0ba1036f2a6e2be52fe3f0"
-
-inherit lib_package
-
-SRC_URI = "git://github.com/facebook/zstd.git;nobranch=1 \
- file://0001-Fix-legacy-build-after-2103.patch \
- "
-
-SRCREV = "b706286adbba780006a47ef92df0ad7a785666b6"
-UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
-
-S = "${WORKDIR}/git"
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[lz4] = "HAVE_LZ4=1,HAVE_LZ4=0,lz4"
-PACKAGECONFIG[lzma] = "HAVE_LZMA=1,HAVE_LZMA=0,xz"
-PACKAGECONFIG[zlib] = "HAVE_ZLIB=1,HAVE_ZLIB=0,zlib"
-
-# See programs/README.md for how to use this
-ZSTD_LEGACY_SUPPORT ??= "4"
-
-do_compile () {
- oe_runmake ${PACKAGECONFIG_CONFARGS} ZSTD_LEGACY_SUPPORT=${ZSTD_LEGACY_SUPPORT}
-}
-
-do_install () {
- oe_runmake install 'DESTDIR=${D}'
-}
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.1.15.bb b/meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.3.0.bb
index c54599317..d677d2436 100644
--- a/meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.1.15.bb
+++ b/meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.3.0.bb
@@ -6,7 +6,7 @@ SRC_URI = "\
git://github.com/hughsie/libxmlb.git \
file://run-ptest \
"
-SRCREV = "ee4aafdd97844f1c73021a4978a43460f0835d5c"
+SRCREV = "8f2f28eda419dbe31cb1a9aa022f0ca9d30ecb6a"
S = "${WORKDIR}/git"
inherit gobject-introspection gtk-doc meson ptest-gnome
diff --git a/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.4.bb b/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.5.bb
index a1294b98a..419881d5c 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.4.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.5.bb
@@ -6,7 +6,7 @@ SECTION = "console/utils"
DEPENDS = "libpng zlib"
SRC_URI = "git://github.com/GunnarMonell/fbgrab.git;protocol=https"
-SRCREV = "74373aafc0b496e67642562d86eac6b858a31f24"
+SRCREV = "f43ce6d5ce48fb01360eaa7c4a92c2573a1d02f8"
S = "${WORKDIR}/git"
inherit autotools-brokensep
diff --git a/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.104.bb b/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.108.bb
index 6c22f0e04..d9b6886ec 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.104.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.108.bb
@@ -7,8 +7,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=75859989545e37968a99b631ef42722e"
SRC_URI = "http://gtkwave.sourceforge.net/${BP}.tar.gz"
-SRC_URI[md5sum] = "23879689ecf7e2cdd2cd5a91c5c601da"
-SRC_URI[sha256sum] = "d20dd1a9307b908439c68122a9f81d3ff434a6bfa5439f0cb01398fec650894f"
+SRC_URI[md5sum] = "dd40f09f44d7aed937e63c29b63cd3af"
+SRC_URI[sha256sum] = "ece447340442e7ad029713789552e8392b75dd3808c882ac5193d42fce55eb3b"
inherit pkgconfig autotools gettext texinfo mime mime-xdg
DEPENDS += "tcl tk gperf-native bzip2 xz pango zlib gtk+ gdk-pixbuf glib-2.0"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_2.0.25.bb b/meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_2.0.26.bb
index 0bad670df..de28af8ba 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_2.0.25.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_2.0.26.bb
@@ -4,7 +4,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=a80440d1d8f17d041c71c7271d6e06eb"
SRC_URI = "git://github.com/jasper-software/jasper.git;protocol=https"
-SRCREV = "9092dcb7f7680204ef523c73eb6132162b4358e3"
+SRCREV = "5083b949f0caa5bc6257cd81162a33c15bf8a1d1"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui-ncurses_4.0.0.bb b/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui-ncurses_4.1.1.bb
index a3a4a1506..fdf01618a 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui-ncurses_4.0.0.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui-ncurses_4.1.1.bb
@@ -1,17 +1,16 @@
SUMMARY = "Character Based User Interface for libyui"
LICENSE = "LGPLv3"
-LIC_FILES_CHKSUM = "file://COPYING.lgpl-3;md5=e6a600fd5e1d9cbde2d983680233ad02 \
- file://COPYING.lgpl-2.1;md5=4fbd65380cdd255951079008b364516c \
+LIC_FILES_CHKSUM = "file://../COPYING.lgpl-3;md5=e6a600fd5e1d9cbde2d983680233ad02 \
+ file://../COPYING.lgpl-2.1;md5=4fbd65380cdd255951079008b364516c \
"
-SRC_URI = "git://github.com/libyui/libyui-ncurses.git \
- "
+SRC_URI = "git://github.com/libyui/libyui.git"
SRC_URI_append_class-target = " file://0001-Fix-the-error-of-can-t-find-header-file.patch"
-SRCREV = "37d3a1e815a47f536b4f694f139f279cc93a3854"
+SRCREV = "718ac672374a2b0f50cbc7d637d90e6471babc3d"
-S = "${WORKDIR}/git"
+S = "${WORKDIR}/git/libyui-ncurses"
inherit cmake gettext pkgconfig
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui_4.0.0.bb b/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui_4.1.1.bb
index bba17962e..acab7d456 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui_4.0.0.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/libyui/libyui_4.1.1.bb
@@ -1,8 +1,8 @@
SUMMARY = "Libyui is a widget abstraction library providing Qt, GTK and ncurses frontends."
LICENSE = "LGPLv3"
-LIC_FILES_CHKSUM = "file://COPYING.gpl-3;md5=d32239bcb673463ab874e80d47fae504 \
- file://COPYING.lgpl-2.1;md5=4fbd65380cdd255951079008b364516c \
- file://COPYING.lgpl-3;md5=e6a600fd5e1d9cbde2d983680233ad02 \
+LIC_FILES_CHKSUM = "file://../COPYING.gpl-3;md5=d32239bcb673463ab874e80d47fae504 \
+ file://../COPYING.lgpl-2.1;md5=4fbd65380cdd255951079008b364516c \
+ file://../COPYING.lgpl-3;md5=e6a600fd5e1d9cbde2d983680233ad02 \
"
SRC_URI = "git://github.com/libyui/libyui.git \
@@ -10,9 +10,9 @@ SRC_URI = "git://github.com/libyui/libyui.git \
file://0001-Use-relative-install-paths-for-CMake.patch \
"
-SRCREV = "af06143017fc5f18c4b6488ba4aed26bcc43ff6e"
+SRCREV = "718ac672374a2b0f50cbc7d637d90e6471babc3d"
-S = "${WORKDIR}/git"
+S = "${WORKDIR}/git/libyui"
inherit cmake gettext pkgconfig
diff --git a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.4.0.bb b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.4.0.bb
index 8e264bf71..62aa4b43d 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.4.0.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.4.0.bb
@@ -19,3 +19,5 @@ inherit cmake
EXTRA_OECMAKE += "-DOPENJPEG_INSTALL_LIB_DIR=${@d.getVar('baselib').replace('/', '')}"
FILES_${PN} += "${libdir}/openjpeg*"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm/0001-Add-configure-time-check-for-setsid.patch b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm/0001-Add-configure-time-check-for-setsid.patch
index d3beea8be..92ecdac22 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm/0001-Add-configure-time-check-for-setsid.patch
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm/0001-Add-configure-time-check-for-setsid.patch
@@ -18,7 +18,7 @@ diff --git a/configure b/configure
index 0aafefc..03e8df0 100755
--- a/configure
+++ b/configure
-@@ -5411,6 +5411,7 @@ for ac_func in \
+@@ -5605,6 +5605,7 @@ for ac_func in \
unsetenv \
sched_yield \
setpgid \
@@ -42,7 +42,7 @@ diff --git a/main.c b/main.c
index 5e60589..b81d2be 100644
--- a/main.c
+++ b/main.c
-@@ -2868,7 +2868,7 @@ main(int argc, char *argv[]ENVP_ARG)
+@@ -2903,7 +2903,7 @@ main(int argc, char *argv[]ENVP_ARG)
}
}
@@ -51,7 +51,7 @@ index 5e60589..b81d2be 100644
#define USE_OPENPTY 1
static int opened_tty = -1;
#endif
-@@ -4040,7 +4040,7 @@ spawnXTerm(XtermWidget xw, unsigned line_speed)
+@@ -4074,7 +4074,7 @@ spawnXTerm(XtermWidget xw, unsigned line_speed)
/*
* now in child process
*/
@@ -64,14 +64,14 @@ diff --git a/xtermcfg.hin b/xtermcfg.hin
index 1dbc3b8..4f3ff5b 100644
--- a/xtermcfg.hin
+++ b/xtermcfg.hin
-@@ -96,6 +96,7 @@
+@@ -95,6 +95,7 @@
#undef HAVE_PUTENV /* AC_CHECK_FUNCS(putenv) */
#undef HAVE_SCHED_YIELD /* AC_CHECK_FUNCS(sched_yield) */
#undef HAVE_SETPGID /* AC_CHECK_FUNCS(setpgid) */
+#undef HAVE_SETSID /* AC_CHECK_FUNCS(setsid) */
#undef HAVE_STDINT_H /* AC_PROG_CC_STDC */
#undef HAVE_STDLIB_H /* AC_CHECK_HEADERS(stdlib.h) */
- #undef HAVE_STRFTIME /* AC_CHECK_FUNCS(strftime) */
+ #undef HAVE_STDNORETURN_H /* CF_C11_NORETURN */
--
2.24.1
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_362.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_367.bb
index 2bbcd9211..e0d3dcec1 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_362.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_367.bb
@@ -2,14 +2,14 @@ require recipes-graphics/xorg-app/xorg-app-common.inc
SUMMARY = "xterm is the standard terminal emulator for the X Window System"
DEPENDS = "libxaw xorgproto libxext libxau libxinerama libxpm ncurses desktop-file-utils-native"
-LIC_FILES_CHKSUM = "file://xterm.h;beginline=3;endline=31;md5=996b1ce0584c0747b17b57654cc81e8e"
+LIC_FILES_CHKSUM = "file://xterm.h;beginline=3;endline=31;md5=987de9787175385203a1ea2482246a17"
SRC_URI = "http://invisible-mirror.net/archives/${BPN}/${BP}.tgz \
file://0001-Add-configure-time-check-for-setsid.patch \
"
-SRC_URI[md5sum] = "ee6710bbbe18000236c6e6d7b55b54d5"
-SRC_URI[sha256sum] = "1d4ffe226fa8f021859bbc3007788ff63a46a31242d9bd9a7bd7ebe24e81aca2"
+SRC_URI[sha256sum] = "27f1a8b1c756e269fd5684e60802b545f0be9b36b8b5d6bdbc840c6b000dc51f"
+
PACKAGECONFIG ?= ""
PACKAGECONFIG[xft] = "--enable-freetype,--disable-freetype,libxft fontconfig freetype-native"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.13.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.14.bb
index cb1ffcd8c..15f52d8d4 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.13.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.14.bb
@@ -5,10 +5,9 @@ DEPENDS += "xorgproto virtual/libx11 libxext libxt libxmu libxpm libxau xmlto-na
LIC_FILES_CHKSUM = "file://COPYING;md5=1c65719d42900bb81b83e8293c20a364"
PE = "1"
-PR = "r2"
-SRC_URI[md5sum] = "e5e06eb14a608b58746bdd1c0bd7b8e3"
-SRC_URI[sha256sum] = "8ef8067312571292ccc2bbe94c41109dcf022ea5a4ec71656a83d8cce9edb0cd"
+SRC_URI[md5sum] = "c1ce21c296bbf3da3e30cf651649563e"
+SRC_URI[sha256sum] = "76aef98ea3df92615faec28004b5ce4e5c6855e716fa16de40c32030722a6f8e"
do_install_append () {
ln -sf libXaw6.so.6 ${D}${libdir}/libXaw.so.6
diff --git a/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb b/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb
index 1758430bc..f0696db59 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb
@@ -9,12 +9,22 @@ inherit bash-completion kernelsrc kernel-arch
do_populate_lic[depends] += "virtual/kernel:do_patch"
-EXTRA_OEMAKE = "V=1 -C ${S}/tools/bpf/bpftool O=${B} CROSS=${TARGET_PREFIX} CC="${CC}" LD="${LD}" AR=${AR} ARCH=${ARCH}"
+EXTRA_OEMAKE = "\
+ V=1 \
+ -C ${S}/tools/bpf/bpftool \
+ O=${B} \
+ CROSS=${TARGET_PREFIX} \
+ CC="${CC} ${DEBUG_PREFIX_MAP} -fdebug-prefix-map=${STAGING_KERNEL_DIR}=${KERNEL_SRC_PATH}" \
+ LD="${LD}" \
+ AR=${AR} \
+ ARCH=${ARCH} \
+"
SECURITY_CFLAGS = ""
do_configure[depends] += "virtual/kernel:do_shared_workdir"
+COMPATIBLE_HOST = "(x86_64).*-linux"
COMPATIBLE_HOST_libc-musl = 'null'
do_compile() {
@@ -32,4 +42,3 @@ python do_package_prepend() {
}
B = "${WORKDIR}/${BPN}-${PV}"
-PNBLACKLIST[bpftool] ?= "Needs forward porting to kernel 5.2+"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/libbpf/libbpf_0.3.bb b/meta-openembedded/meta-oe/recipes-kernel/libbpf/libbpf_0.3.bb
index 5714ddb61..57e8376b5 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/libbpf/libbpf_0.3.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/libbpf/libbpf_0.3.bb
@@ -10,6 +10,8 @@ LIC_FILES_CHKSUM = "file://../LICENSE.LPGL-2.1;md5=b370887980db5dd40659b50909238
DEPENDS = "zlib elfutils"
+do_compile[depends] += "virtual/kernel:do_shared_workdir"
+
SRC_URI = "git://github.com/libbpf/libbpf.git;protocol=https"
SRCREV = "051a4009f94d5633a8f734ca4235f0a78ee90469"
@@ -23,6 +25,8 @@ S = "${WORKDIR}/git/src"
EXTRA_OEMAKE += "DESTDIR=${D} LIBDIR=${libdir}"
+inherit pkgconfig
+
do_compile() {
if grep -q "CONFIG_BPF_SYSCALL=y" ${STAGING_KERNEL_BUILDDIR}/.config
then
@@ -40,5 +44,3 @@ do_install() {
bbnote "no files to install"
fi
}
-
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Fix-build-with-musl.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Fix-build-with-musl.patch
new file mode 100644
index 000000000..61191220e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Fix-build-with-musl.patch
@@ -0,0 +1,55 @@
+From 5ed9bda8baf7465172a99ff86ed7f46397b06c7f Mon Sep 17 00:00:00 2001
+From: Andrew Savchenko <bircoph@gmail.com>
+Date: Sat, 5 Sep 2020 14:41:30 +0300
+Subject: [PATCH 01/10] Fix build with musl
+
+--Signature=_Sat__5_Sep_2020_14_41_30_+0300_B.qpPPwu83bbA.32
+Content-Type: text/plain; charset=US-ASCII
+Content-Disposition: inline
+Content-Transfer-Encoding: quoted-printable
+
+When musl is used instead of glibc, oprofile build fails because it
+uses glibc-specific FTW extension: FTW_ACTIONRETVAL for custom
+__delete_old_previous_sample_data return codes and FTW_STOP,
+FTW_CONTINUE for such return codes. Musl supports only POSIX ftw, so
+build fails.
+
+However, this extension is not really needed by oprofile, because
+FTW_SKIP_* are not used and {FTW_STOP,FTW_CONTINUE} can be handled
+by standard return codes {1,0} (more precisely standard defines
+{!0,0}, but in glibc FTW_STOP = 1, so I keep this value).
+
+Upstream-Status: Backport [https://sourceforge.net/p/oprofile/oprofile/ci/5ed9bda8baf7465172a99ff86ed7f46397b06c7f/]
+Signed-off-by: Andrew Savchenko <bircoph@gmail.com>
+---
+ pe_profiling/operf.cpp | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/pe_profiling/operf.cpp b/pe_profiling/operf.cpp
+index 06a0ea3c..00834409 100644
+--- a/pe_profiling/operf.cpp
++++ b/pe_profiling/operf.cpp
+@@ -860,9 +860,9 @@ static int __delete_old_previous_sample_data(const char *fpath,
+ {
+ if (remove(fpath)) {
+ perror("sample data removal error");
+- return FTW_STOP;
++ return 1;
+ } else {
+- return FTW_CONTINUE;
++ return 0;
+ }
+ }
+
+@@ -897,7 +897,7 @@ static void convert_sample_data(void)
+ return;
+
+ if (!operf_options::append) {
+- int flags = FTW_DEPTH | FTW_ACTIONRETVAL;
++ int flags = FTW_DEPTH;
+ errno = 0;
+ if (nftw(previous_sampledir.c_str(), __delete_old_previous_sample_data, 32, flags) !=0 &&
+ errno != ENOENT) {
+--
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Use-new-bfd-APIs-from-2.34.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Use-new-bfd-APIs-from-2.34.patch
deleted file mode 100644
index faf56d116..000000000
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Use-new-bfd-APIs-from-2.34.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-From 34745fb066a266ae6bbb15d08466d4d2cb6a2110 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 20 Feb 2020 08:11:04 -0800
-Subject: [PATCH] Use new bfd APIs from 2.34+
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- libutil++/bfd_support.cpp | 10 +++++-----
- opjitconv/create_bfd.c | 6 +++---
- 2 files changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/libutil++/bfd_support.cpp b/libutil++/bfd_support.cpp
-index fa904839..e53a1530 100644
---- a/libutil++/bfd_support.cpp
-+++ b/libutil++/bfd_support.cpp
-@@ -137,7 +137,7 @@ static bool get_build_id(bfd * ibfd, unsigned char * build_id)
- }
- }
-
-- bfd_size_type buildid_sect_size = bfd_section_size(ibfd, sect);
-+ bfd_size_type buildid_sect_size = bfd_section_size(sect);
- char * contents = (char *) xmalloc(buildid_sect_size);
- errno = 0;
- if (!bfd_get_section_contents(ibfd, sect,
-@@ -188,7 +188,7 @@ bool get_debug_link_info(bfd * ibfd, string & filename, unsigned long & crc32)
- if (sect == NULL)
- return false;
-
-- bfd_size_type debuglink_size = bfd_section_size(ibfd, sect);
-+ bfd_size_type debuglink_size = bfd_section_size(sect);
- char * contents = (char *) xmalloc(debuglink_size);
- cverb << vbfd
- << ".gnu_debuglink section has size " << debuglink_size << endl;
-@@ -346,7 +346,7 @@ void fixup_linenr(bfd * abfd, asection * section, asymbol ** syms,
- // first restrict the search on a sensible range of vma, 16 is
- // an intuitive value based on epilog code look
- size_t max_search = 16;
-- size_t section_size = bfd_section_size(abfd, section);
-+ size_t section_size = bfd_section_size(section);
- if (pc + max_search > section_size)
- max_search = section_size - pc;
-
-@@ -819,10 +819,10 @@ find_nearest_line(bfd_info const & b, op_bfd_symbol const & sym,
- else
- pc = (sym.value() + offset) - sym.filepos();
-
-- if ((bfd_get_section_flags(abfd, section) & SEC_ALLOC) == 0)
-+ if ((bfd_section_flags(section) & SEC_ALLOC) == 0)
- goto fail;
-
-- if (pc >= bfd_section_size(abfd, section))
-+ if (pc >= bfd_section_size(section))
- goto fail;
-
- ret = bfd_find_nearest_line(abfd, section, syms, pc, &cfilename,
-diff --git a/opjitconv/create_bfd.c b/opjitconv/create_bfd.c
-index 48db143b..5c0e9152 100644
---- a/opjitconv/create_bfd.c
-+++ b/opjitconv/create_bfd.c
-@@ -86,12 +86,12 @@ asection * create_section(bfd * abfd, char const * section_name,
- bfd_perror("bfd_make_section");
- goto error;
- }
-- bfd_set_section_vma(abfd, section, vma);
-- if (bfd_set_section_size(abfd, section, size) == FALSE) {
-+ bfd_set_section_vma(section, vma);
-+ if (bfd_set_section_size(section, size) == FALSE) {
- bfd_perror("bfd_set_section_size");
- goto error;
- }
-- if (bfd_set_section_flags(abfd, section, flags) == FALSE) {
-+ if (bfd_set_section_flags(section, flags) == FALSE) {
- bfd_perror("bfd_set_section_flags");
- goto error;
- }
---
-2.25.1
-
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0002-Fix-configure-when-bin-sh-is-not-bash.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0002-Fix-configure-when-bin-sh-is-not-bash.patch
new file mode 100644
index 000000000..2ffdc8ae5
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0002-Fix-configure-when-bin-sh-is-not-bash.patch
@@ -0,0 +1,40 @@
+From 91bedd280b8a3fb4665db627559abba960be4212 Mon Sep 17 00:00:00 2001
+From: Andrew Savchenko <bircoph@gmail.com>
+Date: Sat, 5 Sep 2020 14:40:07 +0300
+Subject: [PATCH 02/10] Fix configure when /bin/sh is not bash
+
+--Signature=_Sat__5_Sep_2020_14_40_08_+0300_w+XY/NnD8_G.Kd1s
+Content-Type: text/plain; charset=US-ASCII
+Content-Disposition: inline
+Content-Transfer-Encoding: quoted-printable
+
+When /bin/sh used by autoconf is not bash, e.g. dash, configure
+fails because it uses bash-specific equality operator "==".
+
+Fix this problem by replacing "==" with POSIX "=" which is
+sufficient for test where it is being used.
+
+Upstream-Status: Backport [https://sourceforge.net/p/oprofile/oprofile/ci/91bedd280b8a3fb4665db627559abba960be4212/]
+Signed-off-by: Andrew Savchenko <bircoph@gmail.com>
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 05609f6e..f5fcd17d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -466,8 +466,8 @@ AX_COPY_IF_CHANGE(doc/xsl/catalog-1.xml, doc/xsl/catalog.xml)
+
+ if ! test "x$enable_account_check" = "xyes"; then
+ :
+-elif test "`getent passwd oprofile 2>/dev/null`" == "" || \
+- test "`getent group oprofile 2>/dev/null`" == ""; then
++elif test "`getent passwd oprofile 2>/dev/null`" = "" || \
++ test "`getent group oprofile 2>/dev/null`" = ""; then
+ if test `id -u` != "0"; then
+ echo "Warning: The user account 'oprofile:oprofile' does not exist on the system."
+ echo " To profile JITed code, this special user account must exist."
+--
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0003-Define-the-C-preprocessor-variable-to-improve-reprod.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0003-Define-the-C-preprocessor-variable-to-improve-reprod.patch
new file mode 100644
index 000000000..923c39ae1
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0003-Define-the-C-preprocessor-variable-to-improve-reprod.patch
@@ -0,0 +1,30 @@
+From 864e02eab12cdc523b2dcd3f7b87a27abc16eefc Mon Sep 17 00:00:00 2001
+From: Viktor Kleinik <vkleinik@cisco.com>
+Date: Sun, 7 Mar 2021 17:07:44 +0000
+Subject: [PATCH 03/10] Define the C preprocessor variable to improve reproducibility
+
+Define the C preprocessor variable BUILD_DATE, which can be used
+as source for reproducible build date in case when
+SOURCE_DATE_EPOCH environment variable is set.
+
+Upstream-Status: Backport [https://sourceforge.net/p/oprofile/oprofile/ci/864e02eab12cdc523b2dcd3f7b87a27abc16eefc/]
+Signed-off-by: Viktor Kleinik <vkleinik@cisco.com>
+---
+ configure.ac | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/configure.ac b/configure.ac
+index f5fcd17d..dc447f89 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -31,6 +31,7 @@ if test -n "$SOURCE_DATE_EPOCH" ; then
+ fi
+ dnl for the man page
+ DATE="`date $dateopt '+%a %d %B %Y'`"
++AC_DEFINE_UNQUOTED([BUILD_DATE], ["$DATE"], [Use reproducible build date])
+ AC_SUBST(DATE)
+
+ # Since we should not permanently alter user environment variables, we'll
+--
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0004-Use-BUILD_DATE-to-improve-reproducibility.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0004-Use-BUILD_DATE-to-improve-reproducibility.patch
new file mode 100644
index 000000000..0fcca2b68
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0004-Use-BUILD_DATE-to-improve-reproducibility.patch
@@ -0,0 +1,63 @@
+From 7bef5b905abe36adfd4e4cc16bc830376f50e8f6 Mon Sep 17 00:00:00 2001
+From: Viktor Kleinik <vkleinik@cisco.com>
+Date: Sun, 7 Mar 2021 17:22:26 +0000
+Subject: [PATCH 04/10] Use BUILD_DATE to improve reproducibility
+
+The C preprocessor variable BUILD_DATE contains the actual
+build date or some reproducible value. It depends on whether
+SOURCE_DATE_EPOCH environment variable was set previously or not.
+In this way, reproducibility can be improved when needed.
+
+Upstream-Status: Backport [https://sourceforge.net/p/oprofile/oprofile/ci/864e02eab12cdc523b2dcd3f7b87a27abc16eefc/]
+Signed-off-by: Viktor Kleinik <vkleinik@cisco.com>
+---
+ libutil/op_version.c | 2 +-
+ pe_counting/ocount.cpp | 4 ++--
+ pe_profiling/operf.cpp | 4 ++--
+ 3 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/libutil/op_version.c b/libutil/op_version.c
+index 99a844e4..a257e9c4 100644
+--- a/libutil/op_version.c
++++ b/libutil/op_version.c
+@@ -19,6 +19,6 @@ void show_version(char const * app_name)
+ {
+ /* Do not change the version format: it is documented in html doc */
+ printf("%s: " PACKAGE " " VERSION " compiled on "
+- __DATE__ " " __TIME__ "\n", app_name);
++ BUILD_DATE "\n", app_name);
+ exit(EXIT_SUCCESS);
+ }
+diff --git a/pe_counting/ocount.cpp b/pe_counting/ocount.cpp
+index 2470745d..ae89fe61 100644
+--- a/pe_counting/ocount.cpp
++++ b/pe_counting/ocount.cpp
+@@ -660,8 +660,8 @@ static int _process_ocount_and_app_args(int argc, char * const argv[])
+ __print_usage_and_exit(NULL);
+ break;
+ case 'v':
+- cout << argv[0] << ": " << PACKAGE << " " << VERSION << " compiled on " << __DATE__
+- << " " << __TIME__ << endl;
++ cout << argv[0] << ": " << PACKAGE << " " << VERSION << " compiled on "
++ << BUILD_DATE << endl;
+ exit(EXIT_SUCCESS);
+ break;
+ default:
+diff --git a/pe_profiling/operf.cpp b/pe_profiling/operf.cpp
+index 00834409..f0f9c209 100644
+--- a/pe_profiling/operf.cpp
++++ b/pe_profiling/operf.cpp
+@@ -1342,8 +1342,8 @@ static int _process_operf_and_app_args(int argc, char * const argv[])
+ __print_usage_and_exit(NULL);
+ break;
+ case 'v':
+- cout << argv[0] << ": " << PACKAGE << " " << VERSION << " compiled on " << __DATE__
+- << " " << __TIME__ << endl;
++ cout << argv[0] << ": " << PACKAGE << " " << VERSION << " compiled on "
++ << BUILD_DATE << endl;
+ exit(EXIT_SUCCESS);
+ break;
+ default:
+--
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-NIOS2-architecture.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0005-Add-rmb-definition-for-NIOS2-architecture.patch
index ae8562a23..0fd850ff2 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-NIOS2-architecture.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0005-Add-rmb-definition-for-NIOS2-architecture.patch
@@ -1,19 +1,20 @@
-From 34b0d9b1a32fb404a30327a7ae8931c7c75583bf Mon Sep 17 00:00:00 2001
+From 3539d2ab392d3a3eecffeddac989016063b23713 Mon Sep 17 00:00:00 2001
From: Marek Vasut <marex@denx.de>
Date: Tue, 9 Feb 2016 02:00:29 +0100
-Subject: [PATCH] Add rmb() definition for NIOS2 architecture
+Subject: [PATCH 05/10] Add rmb() definition for NIOS2 architecture
Signed-off-by: Marek Vasut <marex@denx.de>
Upstream-Status: Submitted [ http://marc.info/?l=oprofile-list&m=145501915931874&w=2 ]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
libperf_events/operf_utils.h | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/libperf_events/operf_utils.h b/libperf_events/operf_utils.h
-index 32954cc..8270e53 100644
+index 8afdbc22..8e17213e 100644
--- a/libperf_events/operf_utils.h
+++ b/libperf_events/operf_utils.h
-@@ -178,6 +178,11 @@ void op_release_resources(void);
+@@ -173,6 +173,11 @@ void op_release_resources(void);
#define cpu_relax() asm volatile("" ::: "memory")
#endif
@@ -26,5 +27,5 @@ index 32954cc..8270e53 100644
#include <asm/unistd.h>
#define rmb() __insn_mf()
--
-2.7.0
+2.31.0
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-replace-sym_iterator-0-with-sym_iterator.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0006-replace-sym_iterator-0-with-sym_iterator.patch
index 5fd23f809..a8371f0af 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-replace-sym_iterator-0-with-sym_iterator.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0006-replace-sym_iterator-0-with-sym_iterator.patch
@@ -1,7 +1,7 @@
-From b7c1a2e2b0f4657fe291324ca409224f3321c9ff Mon Sep 17 00:00:00 2001
+From b126134f68f4a5bd826141be68337ac15a7c2c04 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 12 Feb 2019 11:58:34 -0800
-Subject: [PATCH] replace (sym_iterator)0 with sym_iterator()
+Subject: [PATCH 06/10] replace (sym_iterator)0 with sym_iterator()
clang/libc++ find this error
@@ -20,7 +20,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/libpp/xml_utils.cpp b/libpp/xml_utils.cpp
-index 3de41e5..f45d3ae 100644
+index 3de41e58..f45d3ae2 100644
--- a/libpp/xml_utils.cpp
+++ b/libpp/xml_utils.cpp
@@ -73,7 +73,7 @@ void dump_symbol(string const & prefix, sym_iterator it, bool want_nl = true)
@@ -127,5 +127,5 @@ index 3de41e5..f45d3ae 100644
string module = get_image_name((*it)->image_name,
image_name_storage::int_filename, extra_found_images);
--
-2.20.1
+2.31.0
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0007-oprofile-doesn-t-want-GNU-levels-of-automake-strictn.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0007-oprofile-doesn-t-want-GNU-levels-of-automake-strictn.patch
new file mode 100644
index 000000000..5f9ff1b96
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0007-oprofile-doesn-t-want-GNU-levels-of-automake-strictn.patch
@@ -0,0 +1,23 @@
+From fd35c343e67ca47f76d0769fce2881d5f7a027a9 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 18 Mar 2021 00:48:34 -0700
+Subject: [PATCH 07/10] oprofile doesn't want GNU-levels of automake strictness
+ so tell it to be "foreign".
+
+Upstream-Status: Pending
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -13,7 +13,7 @@ AC_PREREQ(2.13)
+
+ AC_INIT([OProfile], [1.4.0])
+ AC_CONFIG_SRCDIR([libop/op_config.h])
+-AM_INIT_AUTOMAKE
++AM_INIT_AUTOMAKE([foreign])
+ AC_CONFIG_HEADERS(config.h)
+
+ AC_CHECK_DECLS([basename], [], [], [[#include <libgen.h>]])
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0008-include-linux-limits.h-for-MAX_INPUT.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0008-include-linux-limits.h-for-MAX_INPUT.patch
new file mode 100644
index 000000000..32e79a0a4
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0008-include-linux-limits.h-for-MAX_INPUT.patch
@@ -0,0 +1,30 @@
+From 33e945f31fee2d74a392eb79025c9477e12b590d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 18 Mar 2021 00:49:48 -0700
+Subject: [PATCH 08/10] include linux/limits.h for MAX_INPUT
+
+Fixes
+op_pe_utils.cpp:533:19: error: 'MAX_INPUT' was not declared in this scope
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libpe_utils/op_pe_utils.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/libpe_utils/op_pe_utils.cpp b/libpe_utils/op_pe_utils.cpp
+index 1ca4ce3a..c5d16a56 100644
+--- a/libpe_utils/op_pe_utils.cpp
++++ b/libpe_utils/op_pe_utils.cpp
+@@ -11,6 +11,7 @@
+ *
+ */
+
++#include <linux/limits.h>
+ #include <linux/perf_event.h>
+ #include <dirent.h>
+ #include <stdio.h>
+--
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/oprofile-cross-compile-tests.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0009-Prevent-running-check-tests-on-host-if-cross-compili.patch
index aefa9548e..e47882c9f 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/oprofile-cross-compile-tests.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0009-Prevent-running-check-tests-on-host-if-cross-compili.patch
@@ -1,4 +1,7 @@
-Prevent running check tests on host if cross compiling
+From 3a942cfd7d2e92667313e189930f7d1733cf40d4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 18 Mar 2021 00:59:20 -0700
+Subject: [PATCH 09/10] Prevent running check tests on host if cross compiling
This patch enables running the 'make check' tests on the target
in a cross-compiled environment. If not cross-compiling, then 'make
@@ -18,12 +21,21 @@ from an expression based on the host path 'topdir'.
Upstream-Status: Pending
Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 1 +
+ libdb/tests/Makefile.am | 2 ++
+ libop/tests/Makefile.am | 2 ++
+ libregex/tests/Makefile.am | 2 ++
+ libutil++/tests/Makefile.am | 4 ++++
+ libutil/tests/Makefile.am | 2 ++
+ 6 files changed, 13 insertions(+)
diff --git a/configure.ac b/configure.ac
-index 41ece64..ce5a16f 100644
+index 520b18ed..108a84e4 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -392,6 +392,7 @@ AC_ARG_ENABLE(account-check,
+@@ -386,6 +386,7 @@ AC_ARG_ENABLE(account-check,
enable_account_check=$enableval, enable_account_check=yes)
AM_CONDITIONAL(CHECK_ACCOUNT, test "x$enable_account_check" = "xyes")
@@ -32,7 +44,7 @@ index 41ece64..ce5a16f 100644
AC_SUBST(OP_CFLAGS)
AC_SUBST(OP_CXXFLAGS)
diff --git a/libdb/tests/Makefile.am b/libdb/tests/Makefile.am
-index 8a69003..d820090 100644
+index 8a69003f..c933baf6 100644
--- a/libdb/tests/Makefile.am
+++ b/libdb/tests/Makefile.am
@@ -13,4 +13,6 @@ check_PROGRAMS = db_test
@@ -43,7 +55,7 @@ index 8a69003..d820090 100644
TESTS = ${check_PROGRAMS}
+endif
diff --git a/libop/tests/Makefile.am b/libop/tests/Makefile.am
-index 8a79eb5..6d417c4 100644
+index 8a79eb5d..6b90e997 100644
--- a/libop/tests/Makefile.am
+++ b/libop/tests/Makefile.am
@@ -33,4 +33,6 @@ load_events_files_tests_LDADD = ${COMMON_LIBS}
@@ -54,7 +66,7 @@ index 8a79eb5..6d417c4 100644
TESTS = ${check_PROGRAMS} utf8_checker.sh
+endif
diff --git a/libregex/tests/Makefile.am b/libregex/tests/Makefile.am
-index 6f19838..1d176f9 100644
+index 6f19838f..43e84946 100644
--- a/libregex/tests/Makefile.am
+++ b/libregex/tests/Makefile.am
@@ -18,4 +18,6 @@ java_test_LDADD = \
@@ -65,7 +77,7 @@ index 6f19838..1d176f9 100644
TESTS = ${check_PROGRAMS}
+endif
diff --git a/libutil++/tests/Makefile.am b/libutil++/tests/Makefile.am
-index 51af031..a01ea2d 100644
+index 51af0313..dd63fbe2 100644
--- a/libutil++/tests/Makefile.am
+++ b/libutil++/tests/Makefile.am
@@ -1,7 +1,9 @@
@@ -86,7 +98,7 @@ index 51af031..a01ea2d 100644
TESTS = ${check_PROGRAMS}
+endif
diff --git a/libutil/tests/Makefile.am b/libutil/tests/Makefile.am
-index dfcd6ec..e8831b5 100644
+index dfcd6eca..d8b51892 100644
--- a/libutil/tests/Makefile.am
+++ b/libutil/tests/Makefile.am
@@ -12,4 +12,6 @@ file_tests_LDADD = ../libutil.a
@@ -96,3 +108,6 @@ index dfcd6ec..e8831b5 100644
+if ! CROSS_COMPILE
TESTS = ${check_PROGRAMS}
+endif
+--
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/root-home-dir.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0010-oprofile-Determine-the-root-home-directory-dynamical.patch
index 3eaf6a794..03ee5155c 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/root-home-dir.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0010-oprofile-Determine-the-root-home-directory-dynamical.patch
@@ -1,4 +1,7 @@
-oprofile: Determine the root home directory dynamically
+From 60fb7579bac738809b1776dbcd95ccacf7413c57 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 18 Mar 2021 01:02:49 -0700
+Subject: [PATCH 10/10] oprofile: Determine the root home directory dynamically
This commit detects the root home directory dynamically with changes to
the oprofile gui app source.
@@ -11,27 +14,13 @@ path to ~root, not the build time path.
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
+---
+ doc/oprofile.xml | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
-Index: oprofile-1.0.0/doc/oprofile.html
-===================================================================
---- oprofile-1.0.0.orig/doc/oprofile.html 2014-11-03 17:55:31.511034857 +0000
-+++ oprofile-1.0.0/doc/oprofile.html 2014-11-03 17:57:26.415037988 +0000
-@@ -1563,8 +1563,8 @@
- <span class="emphasis"><em>must</em></span> stop it in a controlled manner in order to process
- the profile data it has collected. Use <code class="code">kill -SIGINT &lt;operf-PID&gt;</code>
- for this purpose. It is recommended that when running <span class="command"><strong>operf</strong></span>
-- with this option, your current working directory should be <code class="filename">/root</code> or a subdirectory
-- of <code class="filename">/root</code> to avoid storing sample data files in locations accessible by regular users.
-+ with this option, your current working directory should be <code class="filename">~root</code> or a subdirectory
-+ of <code class="filename">~root</code> to avoid storing sample data files in locations accessible by regular users.
- </p>
- </dd>
- <dt>
-Index: oprofile-1.0.0/doc/oprofile.xml
-===================================================================
---- oprofile-1.0.0.orig/doc/oprofile.xml 2014-11-03 17:55:31.515034857 +0000
-+++ oprofile-1.0.0/doc/oprofile.xml 2014-11-03 17:58:03.719039005 +0000
-@@ -654,8 +654,8 @@
+--- a/doc/oprofile.xml
++++ b/doc/oprofile.xml
+@@ -647,8 +647,8 @@ Following is a description of the <comma
<emphasis>must</emphasis> stop it in a controlled manner in order to process
the profile data it has collected. Use <code>kill -SIGINT &lt;operf-PID&gt;</code>
for this purpose. It is recommended that when running <command>operf</command>
@@ -42,3 +31,16 @@ Index: oprofile-1.0.0/doc/oprofile.xml
</para></listitem>
</varlistentry>
<varlistentry>
+--- a/doc/oprofile.html
++++ b/doc/oprofile.html
+@@ -1552,8 +1552,8 @@ Following is a description of the <span
+ <span class="emphasis"><em>must</em></span> stop it in a controlled manner in order to process
+ the profile data it has collected. Use <code class="code">kill -SIGINT &lt;operf-PID&gt;</code>
+ for this purpose. It is recommended that when running <span class="command"><strong>operf</strong></span>
+- with this option, your current working directory should be <code class="filename">/root</code> or a subdirectory
+- of <code class="filename">/root</code> to avoid storing sample data files in locations accessible by regular users.
++ with this option, your current working directory should be <code class="filename">~root</code> or a subdirectory
++ of <code class="filename">~root</code> to avoid storing sample data files in locations accessible by regular users.
+ </p>
+ </dd>
+ <dt>
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/automake-foreign.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/automake-foreign.patch
deleted file mode 100644
index b9bb6c577..000000000
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/automake-foreign.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-oprofile doesn't want GNU-levels of automake strictness so tell it to be "foreign".
-
-Upstream-Status: Pending
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-diff --git a/configure.ac b/configure.ac
-index 5740585..cf6c316 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -16 +16 @@ AC_CONFIG_SRCDIR([libop/op_config.h])
--AM_INIT_AUTOMAKE
-+AM_INIT_AUTOMAKE([foreign])
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/musl.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/musl.patch
deleted file mode 100644
index 51db40845..000000000
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/musl.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-Fix glibc-isms so that oprofile builds with musl.
-
-Patch taken from openwrt (https://github.com/openwrt-mirror/openwrt/blob/master/package/devel/oprofile/patches/100-musl.patch)
-
-Upstream-Status: Pending
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
---- a/pe_profiling/operf.cpp
-+++ b/pe_profiling/operf.cpp
-@@ -857,11 +857,14 @@ static int __delete_old_previous_sample_
- int tflag __attribute__((unused)),
- struct FTW *ftwbuf __attribute__((unused)))
- {
-+ int err;
-+
- if (remove(fpath)) {
-+ err = errno;
- perror("sample data removal error");
-- return FTW_STOP;
-+ return err;
- } else {
-- return FTW_CONTINUE;
-+ return 0;
- }
- }
-
-@@ -896,7 +899,7 @@ static void convert_sample_data(void)
- return;
-
- if (!operf_options::append) {
-- int flags = FTW_DEPTH | FTW_ACTIONRETVAL;
-+ int flags = FTW_DEPTH;
- errno = 0;
- if (nftw(previous_sampledir.c_str(), __delete_old_previous_sample_data, 32, flags) !=0 &&
- errno != ENOENT) {
---- a/libop/op_events.c
-+++ b/libop/op_events.c
-@@ -83,7 +83,7 @@ static int parse_hex(char const * str)
- static u64 parse_long_hex(char const * str)
- {
- u64 value;
-- if (sscanf(str, "%Lx", &value) != 1)
-+ if (sscanf(str, "0x%llx", &value) != 1)
- parse_error("expected long hexadecimal value");
-
- fflush(stderr);
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.3.0.bb b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.3.0.bb
deleted file mode 100644
index 8242a835f..000000000
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.3.0.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-require oprofile.inc
-
-COMPATIBLE_HOST_riscv64 = "null"
-COMPATIBLE_HOST_riscv32 = "null"
-
-DEPENDS_append_powerpc64 = " libpfm4"
-DEPENDS_append_powerpc64le = " libpfm4"
-
-SRC_URI[md5sum] = "bd998df5521ebedae31e71cd3fb6200b"
-SRC_URI[sha256sum] = "95ded8bde1ec39922f0af015981a67aec63e025a501e4dc04cd65d38f73647e6"
-
-S = "${WORKDIR}/oprofile-${PV}"
-
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile.inc b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.4.0.bb
index 0e1e2ed8c..7a1844682 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile.inc
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.4.0.bb
@@ -11,28 +11,31 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
SECTION = "devel"
DEPENDS = "popt binutils"
-RDEPENDS_${PN} = "binutils-symlinks"
+DEPENDS_append_powerpc64 = " libpfm4"
+DEPENDS_append_powerpc64le = " libpfm4"
-FILES_${PN} = "${bindir} ${libdir}/${BPN}/lib*${SOLIBS} ${datadir}/${BPN}"
-FILES_${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/lib*.la"
-FILES_${PN}-staticdev += "${libdir}/${BPN}/lib*.a"
+COMPATIBLE_HOST_riscv64 = "null"
+COMPATIBLE_HOST_riscv32 = "null"
SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
file://acinclude.m4 \
- file://automake-foreign.patch \
- file://oprofile-cross-compile-tests.patch \
file://run-ptest \
- file://root-home-dir.patch \
- file://0001-Add-rmb-definition-for-NIOS2-architecture.patch \
- file://0001-replace-sym_iterator-0-with-sym_iterator.patch \
- file://0001-Use-new-bfd-APIs-from-2.34.patch \
+ file://0001-Fix-build-with-musl.patch \
+ file://0002-Fix-configure-when-bin-sh-is-not-bash.patch \
+ file://0003-Define-the-C-preprocessor-variable-to-improve-reprod.patch \
+ file://0004-Use-BUILD_DATE-to-improve-reproducibility.patch \
+ file://0005-Add-rmb-definition-for-NIOS2-architecture.patch \
+ file://0006-replace-sym_iterator-0-with-sym_iterator.patch \
+ file://0007-oprofile-doesn-t-want-GNU-levels-of-automake-strictn.patch \
+ file://0008-include-linux-limits.h-for-MAX_INPUT.patch \
+ file://0009-Prevent-running-check-tests-on-host-if-cross-compili.patch \
+ file://0010-oprofile-Determine-the-root-home-directory-dynamical.patch \
"
+SRC_URI[sha256sum] = "7ba06f99d7c188389d20d1d5e53ee690c7733f87aa9af62bd664fa0ca235a412"
+
UPSTREAM_CHECK_REGEX = "oprofile-(?P<pver>\d+(\.\d+)+)/"
UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/oprofile/files/oprofile/"
-SRC_URI_append_libc-musl = " file://musl.patch \
-"
-
inherit autotools pkgconfig ptest
EXTRA_OECONF = "--with-kernel=${STAGING_DIR_HOST}${prefix} --without-x ac_cv_prog_XSLTPROC="
@@ -64,3 +67,9 @@ do_install_ptest() {
cp ${S}/libutil++/tests/file_manip_tests.cpp \
libutil++/tests/file_manip_tests.o ${D}${PTEST_PATH}/libutil++/tests
}
+
+RDEPENDS_${PN} = "binutils-symlinks"
+
+FILES_${PN} = "${bindir} ${libdir}/${BPN}/lib*${SOLIBS} ${datadir}/${BPN}"
+FILES_${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/lib*.la"
+FILES_${PN}-staticdev += "${libdir}/${BPN}/lib*.a"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210129.bb b/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210406.bb
index 1e7a674f4..cc138adb6 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210129.bb
+++ b/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20210406.bb
@@ -16,7 +16,7 @@ SRC_URI = "https://download.videolan.org/pub/contrib/live555/live.${URLV}.tar.gz
# only latest live version stays on http://www.live555.com/liveMedia/public/, add mirror for older
MIRRORS += "http://www.live555.com/liveMedia/public/ http://download.videolan.org/contrib/live555/ \n"
-SRC_URI[sha256sum] = "85ab8d4337d414482586089b6f64fc39af64ff4be5b51976b54b0e10dceb333b"
+SRC_URI[sha256sum] = "0bd182fac7d6297d924af4405ce840515a38fa5438cb1a4b90fcb6bc737b36d6"
S = "${WORKDIR}/live"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb b/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
index 973a978b1..171eef7b7 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
+++ b/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
@@ -12,9 +12,6 @@ DEPENDS += " \
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=91f1cb870c1cc2d31351a4d2595441cb"
-# While this item does not require it, it depends on ffmpeg which does
-LICENSE_FLAGS = "commercial"
-
SRCREV_mpv = "70b991749df389bcc0a4e145b5687233a03b4ed7"
SRC_URI = " \
git://github.com/mpv-player/mpv;name=mpv \
@@ -26,6 +23,8 @@ S = "${WORKDIR}/git"
inherit waf pkgconfig mime-xdg
+LDFLAGS_append_riscv64 = " -latomic"
+
LUA ?= "lua"
LUA_mips64 = ""
LUA_aarch64 = ""
@@ -112,3 +111,4 @@ FILES_${PN} += " \
${datadir}/zsh \
${datadir}/bash-completion \
"
+EXCLUDE_FROM_WORLD = "${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "0", "1", d)}"
diff --git a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd/0001-gpsd-dbusexport.c-Fix-broken-d-bus-message-time.patch b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd/0001-gpsd-dbusexport.c-Fix-broken-d-bus-message-time.patch
new file mode 100644
index 000000000..659865efe
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd/0001-gpsd-dbusexport.c-Fix-broken-d-bus-message-time.patch
@@ -0,0 +1,36 @@
+From c9cec2a888d4fea8534be78a0f46d920155ceae6 Mon Sep 17 00:00:00 2001
+From: Paul Fertser <fercerpav@gmail.com>
+Date: Wed, 4 Nov 2020 12:40:50 -0800
+Subject: [PATCH] gpsd/dbusexport.c: Fix broken d-bus message time.
+
+Change-Id: I4b9990ce4517a8feb29fc9e090c62f5a0c56ddd5
+---
+ dbusexport.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/dbusexport.c b/dbusexport.c
+index 40b35739e..5d08a8702 100644
+--- a/dbusexport.c
++++ b/dbusexport.c
+@@ -38,6 +38,7 @@ void send_dbus_fix(struct gps_device_t *channel)
+ /*DBusMessageIter iter; */
+ dbus_uint32_t serial; /* collected, but not used */
+ char *gpsd_devname;
++ double dtime; // time as a double, loss of precision!
+
+ /* if the connection is non existent, return without doing anything */
+ if (connection == NULL)
+@@ -51,8 +52,9 @@ void send_dbus_fix(struct gps_device_t *channel)
+ /* the dbus/locationd doc fails to specify altitude as WGS84 or MSL.
+ * assume altMSL */
+ message = dbus_message_new_signal("/org/gpsd", "org.gpsd", "fix");
++ dtime = TSTONS(&gpsfix->time);
+ dbus_message_append_args(message,
+- DBUS_TYPE_DOUBLE, &(gpsfix->time),
++ DBUS_TYPE_DOUBLE, &dtime,
+ DBUS_TYPE_INT32, &(gpsfix->mode),
+ DBUS_TYPE_DOUBLE, &(gpsfix->ept),
+ DBUS_TYPE_DOUBLE, &(gpsfix->latitude),
+--
+2.20.1
+
diff --git a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.20.bb b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.20.bb
index 3888ad8fa..0989cc139 100644
--- a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.20.bb
+++ b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.20.bb
@@ -8,6 +8,7 @@ PROVIDES = "virtual/gpsd"
SRC_URI = "${SAVANNAH_GNU_MIRROR}/${BPN}/${BP}.tar.gz \
file://0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch \
file://0001-Revert-SConstruct-Add-test-for-sizeof-time_t-result-.patch \
+ file://0001-gpsd-dbusexport.c-Fix-broken-d-bus-message-time.patch \
file://gpsd.init \
"
SRC_URI[md5sum] = "cf7fdec7ce7221d20bee1a7246362b05"
diff --git a/meta-openembedded/meta-oe/recipes-support/ceres-solver/ceres-solver_2.0.0.bb b/meta-openembedded/meta-oe/recipes-support/ceres-solver/ceres-solver_2.0.0.bb
index 28d0868c4..7feba4a5a 100644
--- a/meta-openembedded/meta-oe/recipes-support/ceres-solver/ceres-solver_2.0.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/ceres-solver/ceres-solver_2.0.0.bb
@@ -13,6 +13,14 @@ S = "${WORKDIR}/git"
inherit cmake
+do_configure_prepend() {
+ # otherwise https://github.com/ceres-solver/ceres-solver/blob/0b748597889f460764f6c980a00c6f502caa3875/cmake/AddGerritCommitHook.cmake#L68
+ # will try to fetch https://ceres-solver-review.googlesource.com/tools/hooks/commit-msg durind do_configure
+ # which sometimes gets stuck (as there is no TIMEOUT set in DOWNLOAD)
+ # and we really don't need Gerrit's Change-Id tags when just building this
+ touch ${S}/.git/hooks/commit-msg
+}
+
# We don't want path to eigen3 in ceres-solver RSS to be
# used by components which use CeresConfig.cmake from their
# own RSS
diff --git a/meta-openembedded/meta-oe/recipes-support/emacs/emacs_27.1.bb b/meta-openembedded/meta-oe/recipes-support/emacs/emacs_27.2.bb
index cfc089b3b..e3157ec42 100644
--- a/meta-openembedded/meta-oe/recipes-support/emacs/emacs_27.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/emacs/emacs_27.2.bb
@@ -8,7 +8,7 @@ SRC_URI = "https://ftp.gnu.org/pub/gnu/emacs/emacs-${PV}.tar.xz"
SRC_URI_append_class-target = " file://usemake-docfile-native.patch"
-SRC_URI[sha256sum] = "4a4c128f915fc937d61edfc273c98106711b540c9be3cd5d2e2b9b5b2f172e41"
+SRC_URI[sha256sum] = "b4a7cc4e78e63f378624e0919215b910af5bb2a0afc819fad298272e9f40c1b9"
PACKAGECONFIG[gnutls] = "--with-gnutls=yes,--with-gnutls=no,gnutls"
PACKAGECONFIG[kerberos] = "--with-kerberos=yes,--with-kerberos=no,krb5"
diff --git a/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.16.bb b/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.18.bb
index 7bd6478d4..f3e7b8bac 100644
--- a/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.16.bb
+++ b/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.18.bb
@@ -9,18 +9,21 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=9c42325015702feda4f4d2f19a55b767 \
"
SRC_URI = "http://nice.freedesktop.org/releases/libnice-${PV}.tar.gz"
-SRC_URI[md5sum] = "5ad936c43d3c6d33117b2c64982f2fd9"
-SRC_URI[sha256sum] = "06b678066f94dde595a4291588ed27acd085ee73775b8c4e8399e28c01eeefdf"
+SRC_URI[sha256sum] = "5eabd25ba2b54e817699832826269241abaa1cf78f9b240d1435f936569273f4"
DEPENDS = "glib-2.0 gnutls"
-PACKAGECONFIG ??= "gstreamer1.0"
-PACKAGECONFIG[gupnp] = "--enable-gupnp,--disable-gupnp,gupnp-igd"
-PACKAGECONFIG[gstreamer1.0] = "--with-gstreamer,--without-gstreamer,gstreamer1.0 gstreamer1.0-plugins-base"
+PACKAGECONFIG[gupnp] = "-Dgupnp=enabled,-Dgupnp=disabled,gupnp"
+PACKAGECONFIG[gstreamer] = "-Dgstreamer=enabled,-Dgstreamer=disabled,gstreamer1.0"
+PACKAGECONFIG[introspection] = "-Dintrospection=enabled,-Dintrospection=disabled,"
-inherit autotools pkgconfig gtk-doc gobject-introspection
+EXTRA_OEMESON = "-Dgstreamer=disabled"
-EXTRA_OECONF += "--without-gstreamer-0.10"
+GTKDOC_MESON_OPTION = "gtk_doc"
+GTKDOC_MESON_ENABLE_FLAG = "enabled"
+GTKDOC_MESON_DISABLE_FLAG = "disabled"
+
+inherit meson gtk-doc gobject-introspection
FILES_${PN} += "${libdir}/gstreamer-1.0/*.so"
FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.la"
diff --git a/meta-openembedded/meta-oe/recipes-support/fftw/fftw/club-libtool.patch b/meta-openembedded/meta-oe/recipes-support/fftw/fftw/club-libtool.patch
new file mode 100644
index 000000000..d4a1ef8d0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/fftw/fftw/club-libtool.patch
@@ -0,0 +1,9 @@
+--- ./tests/Makefile.am.orig 2021-03-23 11:45:12.756371739 -0400
++++ ./tests/Makefile.am 2021-03-23 11:46:43.224132851 -0400
+@@ -1,5 +1,5 @@
+ AM_CPPFLAGS = -I $(top_srcdir)
+-noinst_PROGRAMS = bench
++bin_PROGRAMS = bench@PREC_SUFFIX@
+ EXTRA_DIST = check.pl README
+
+ if THREADS
diff --git a/meta-openembedded/meta-oe/recipes-support/fftw/fftw/install-bench.patch b/meta-openembedded/meta-oe/recipes-support/fftw/fftw/install-bench.patch
new file mode 100644
index 000000000..ef570b19d
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/fftw/fftw/install-bench.patch
@@ -0,0 +1,41 @@
+--- ./tests/Makefile.am.orig 2021-03-23 11:45:12.756371739 -0400
++++ ./tests/Makefile.am 2021-03-23 19:29:19.692180793 -0400
+@@ -1,21 +1,21 @@
+ AM_CPPFLAGS = -I $(top_srcdir)
+-noinst_PROGRAMS = bench
++bin_PROGRAMS = bench@PREC_SUFFIX@
+ EXTRA_DIST = check.pl README
+
+ if THREADS
+-bench_CFLAGS = $(PTHREAD_CFLAGS)
++bench@PREC_SUFFIX@_CFLAGS = $(PTHREAD_CFLAGS)
+ if !COMBINED_THREADS
+ LIBFFTWTHREADS = $(top_builddir)/threads/libfftw3@PREC_SUFFIX@_threads.la
+ endif
+ else
+ if OPENMP
+-bench_CFLAGS = $(OPENMP_CFLAGS)
++bench@PREC_SUFFIX@_CFLAGS = $(OPENMP_CFLAGS)
+ LIBFFTWTHREADS = $(top_builddir)/threads/libfftw3@PREC_SUFFIX@_omp.la
+ endif
+ endif
+
+-bench_SOURCES = bench.c hook.c fftw-bench.c fftw-bench.h
+-bench_LDADD = $(LIBFFTWTHREADS) \
++bench@PREC_SUFFIX@_SOURCES = bench.c hook.c fftw-bench.c fftw-bench.h
++bench@PREC_SUFFIX@_LDADD = $(LIBFFTWTHREADS) \
+ $(top_builddir)/libfftw3@PREC_SUFFIX@.la \
+ $(top_builddir)/libbench2/libbench2.a $(THREADLIBS)
+
+--- ./tools/Makefile.am.orig 2021-03-24 08:22:31.845581620 -0400
++++ ./tools/Makefile.am 2021-03-24 08:24:26.454053573 -0400
+@@ -24,7 +24,7 @@
+ endif
+
+ fftw@PREC_SUFFIX@_wisdom_SOURCES = fftw-wisdom.c
+-fftw@PREC_SUFFIX@_wisdom_LDADD = $(top_builddir)/tests/bench-bench.o \
+-$(top_builddir)/tests/bench-fftw-bench.o $(LIBFFTWTHREADS) \
++fftw@PREC_SUFFIX@_wisdom_LDADD = $(top_builddir)/tests/bench@PREC_SUFFIX@-bench.o \
++$(top_builddir)/tests/bench@PREC_SUFFIX@-fftw-bench.o $(LIBFFTWTHREADS) \
+ $(top_builddir)/libfftw3@PREC_SUFFIX@.la \
+ $(top_builddir)/libbench2/libbench2.a $(THREADLIBS)
diff --git a/meta-openembedded/meta-oe/recipes-support/fftw/fftw/run-ptest b/meta-openembedded/meta-oe/recipes-support/fftw/fftw/run-ptest
new file mode 100644
index 000000000..6d8dd96f0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/fftw/fftw/run-ptest
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+cd fftw
+/usr/bin/perl -w ./check.pl -r -c=30 -v `pwd`/bench
+fftw_result=$?
+cd ../fftwf
+/usr/bin/perl -w ./check.pl -r -c=30 -v `pwd`/benchf
+fftwf_result=$?
+cd ../fftwl
+/usr/bin/perl -w ./check.pl -r -c=30 -v `pwd`/benchl
+fftwl_result=$?
+
+echo -n "fftw test result:"
+if [ $fftw_result = "0" ]; then
+ echo PASSED
+else
+ echo FAILED
+fi
+echo -n "fftwf test result:"
+if [ $fftwf_result = "0" ]; then
+ echo PASSED
+else
+ echo FAILED
+fi
+echo -n "fftwl test result:"
+if [ $fftwl_result = "0" ]; then
+ echo PASSED
+else
+ echo FAILED
+fi
diff --git a/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.8.bb b/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.8.bb
index d9e0ea340..de175d629 100644
--- a/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.8.bb
+++ b/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.8.bb
@@ -6,11 +6,13 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
SRC_URI = " \
http://www.fftw.org/fftw-${PV}.tar.gz \
file://0001-NEON-autodetection-segfaults-assume-neon-present.patch \
+ file://install-bench.patch \
+ file://run-ptest \
"
SRC_URI[md5sum] = "8aac833c943d8e90d51b697b27d4384d"
SRC_URI[sha256sum] = "6113262f6e92c5bd474f2875fa1b01054c4ad5040f6b0da7c03c98821d9ae303"
-inherit autotools pkgconfig
+inherit autotools pkgconfig ptest
# we had multiple recipes in the past
PROVIDES = "fftwl fftwf"
@@ -65,6 +67,22 @@ do_install() {
done
}
+do_install_ptest() {
+ for lib in fftw fftwl fftwf; do
+ install -d ${D}${PTEST_PATH}/$lib
+ install -m 0755 ${S}/tests/check.pl ${D}${PTEST_PATH}/$lib
+ cd ${WORKDIR}/build-$lib
+ if [ $lib = "fftw" ]; then
+ mv ${D}${bindir}/bench ${D}${PTEST_PATH}/$lib
+ fi
+ if [ $lib = "fftwl" ]; then
+ mv ${D}${bindir}/benchl ${D}${PTEST_PATH}/$lib
+ fi
+ if [ $lib = "fftwf" ]; then
+ mv ${D}${bindir}/benchf ${D}${PTEST_PATH}/$lib
+ fi
+ done
+}
PACKAGES =+ "libfftw libfftwl libfftwf"
FILES_libfftw = "${libdir}/libfftw3.so.* ${libdir}/libfftw3_*.so.*"
@@ -79,5 +97,7 @@ FILES_fftw-wisdom-to-conf = "${bindir}/fftw-wisdom-to-conf"
FILES_${PN}-dev += "${libdir}/cmake"
RDEPENDS_${PN}-dev = "libfftw libfftwl libfftwf"
+RDEPENDS_${PN}-ptest += "perl"
+RDEPENDS_${PN}-ptest_remove = "fftw"
BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-support/gd/gd_2.3.1.bb b/meta-openembedded/meta-oe/recipes-support/gd/gd_2.3.2.bb
index 60abe73a1..37896415e 100644
--- a/meta-openembedded/meta-oe/recipes-support/gd/gd_2.3.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/gd/gd_2.3.2.bb
@@ -16,7 +16,7 @@ DEPENDS = "freetype libpng jpeg zlib tiff"
SRC_URI = "git://github.com/libgd/libgd.git;branch=master \
"
-SRCREV = "75ef79c9b013fb5eafd92710b3867827682fd52d"
+SRCREV = "2e40f55bfb460fc9d8cbcd290a0c9eb908d5af7e"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-support/glog/glog/0001-Find-Libunwind-during-configure.patch b/meta-openembedded/meta-oe/recipes-support/glog/glog/0001-Find-Libunwind-during-configure.patch
index 577007a62..4c0861cca 100644
--- a/meta-openembedded/meta-oe/recipes-support/glog/glog/0001-Find-Libunwind-during-configure.patch
+++ b/meta-openembedded/meta-oe/recipes-support/glog/glog/0001-Find-Libunwind-during-configure.patch
@@ -109,10 +109,11 @@
install (EXPORT glog-targets NAMESPACE glog:: DESTINATION
--- a/glog-config.cmake.in
+++ b/glog-config.cmake.in
-@@ -8,4 +8,6 @@ include (CMakeFindDependencyMacro)
+@@ -8,4 +8,7 @@ include (CMakeFindDependencyMacro)
@gflags_DEPENDENCY@
++list (APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
+find_dependency (Libunwind)
+
include ("${CMAKE_CURRENT_LIST_DIR}/glog-targets.cmake")
diff --git a/meta-openembedded/meta-oe/recipes-support/glog/glog/libexecinfo.patch b/meta-openembedded/meta-oe/recipes-support/glog/glog/libexecinfo.patch
new file mode 100644
index 000000000..ae46d3274
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/glog/glog/libexecinfo.patch
@@ -0,0 +1,29 @@
+Link libexecinfo if its found, this is needed for musl based systems
+
+Fixes
+ld: libglog.so.0.4.0: undefined reference to `backtrace'
+| collect2: error: ld returned 1 exit status
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -115,6 +115,7 @@ check_cxx_compiler_flag (-Wunnamed-type-
+ check_symbol_exists (snprintf stdio.h HAVE_SNPRINTF)
+
+ check_library_exists (dbghelp UnDecorateSymbolName "" HAVE_DBGHELP)
++check_library_exists (execinfo backtrace "" HAVE_EXECINFO)
+
+ find_package(Libunwind)
+
+@@ -471,6 +472,10 @@ if (Libunwind_FOUND)
+ target_link_libraries (glog PUBLIC unwind)
+ endif (Libunwind_FOUND)
+
++if (HAVE_EXECINFO)
++ target_link_libraries (glog PUBLIC execinfo)
++endif (HAVE_EXECINFO)
++
+ if (HAVE_DBGHELP)
+ target_link_libraries (glog PUBLIC dbghelp)
+ endif (HAVE_DBGHELP)
diff --git a/meta-openembedded/meta-oe/recipes-support/glog/glog_0.4.0.bb b/meta-openembedded/meta-oe/recipes-support/glog/glog_0.4.0.bb
index 8dc84e412..6b101ef67 100644
--- a/meta-openembedded/meta-oe/recipes-support/glog/glog_0.4.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/glog/glog_0.4.0.bb
@@ -9,6 +9,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=dc9db360e0bbd4e46672f3fd91dd6c4b"
SRC_URI = " \
git://github.com/google/glog.git;nobranch=1 \
file://0001-Find-Libunwind-during-configure.patch \
+ file://libexecinfo.patch \
"
SRCREV = "96a2f23dca4cc7180821ca5f32e526314395d26a"
@@ -20,8 +21,11 @@ inherit cmake
PACKAGECONFIG ?= "shared unwind"
PACKAGECONFIG_remove_riscv64 = "unwind"
PACKAGECONFIG_remove_riscv32 = "unwind"
+PACKAGECONFIG_append_libc-musl_riscv64 = " execinfo"
+PACKAGECONFIG_append_libc-musl_riscv32 = " execinfo"
PACKAGECONFIG[unwind] = "-DWITH_UNWIND=ON,-DWITH_UNWIND=OFF,libunwind,libunwind"
+PACKAGECONFIG[execinfo] = ",,libexecinfo"
PACKAGECONFIG[shared] = "-DBUILD_SHARED_LIBS=ON,-DBUILD_SHARED_LIBS=OFF,,"
do_configure_append() {
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch
index ab3ceb964..e3e857f0c 100644
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch
@@ -11,11 +11,9 @@ Upstream-Status: Pending
configure.ac | 2 ++
1 file changed, 2 insertions(+)
-diff --git a/configure.ac b/configure.ac
-index 70b49a3..8154c5c 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -51,6 +51,8 @@ case "$host" in
+@@ -53,6 +53,8 @@ case "$host" in
*-cygwin*) default_enable_heap_checker=no; default_enable_cpu_profiler=no;;
*-freebsd*) default_enable_heap_checker=no;;
*-darwin*) default_enable_heap_checker=no;;
@@ -23,4 +21,4 @@ index 70b49a3..8154c5c 100644
+ default_enable_debugalloc=no; default_enable_libunwind=no;
esac
- # Currently only backtrace works on s390.
+ # Currently only backtrace works on s390 and OSX.
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-fix-build-with-musl-libc.patch b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-fix-build-with-musl-libc.patch
index cb4ead317..baaaa4b53 100644
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-fix-build-with-musl-libc.patch
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-fix-build-with-musl-libc.patch
@@ -10,13 +10,11 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
src/malloc_hook_mmap_linux.h | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
-diff --git a/src/malloc_hook_mmap_linux.h b/src/malloc_hook_mmap_linux.h
-index e2efb05..66b3110 100644
--- a/src/malloc_hook_mmap_linux.h
+++ b/src/malloc_hook_mmap_linux.h
-@@ -46,6 +46,10 @@
- #include <errno.h>
- #include "base/linux_syscall_support.h"
+@@ -45,6 +45,10 @@
+ #include <sys/syscall.h>
+ #include <unistd.h>
+#ifndef __GLIBC__
+typedef off64_t __off64_t;
@@ -25,7 +23,7 @@ index e2efb05..66b3110 100644
// The x86-32 case and the x86-64 case differ:
// 32b has a mmap2() syscall, 64b does not.
// 64b and 32b have different calling conventions for mmap().
-@@ -175,7 +179,7 @@ extern "C" void* mmap64(void *start, size_t length, int prot, int flags,
+@@ -175,7 +179,7 @@ extern "C" void* mmap64(void *start, siz
return result;
}
@@ -34,6 +32,3 @@ index e2efb05..66b3110 100644
extern "C" void* mmap(void *start, size_t length, int prot, int flags,
int fd, off_t offset) __THROW {
---
-2.17.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-profile-handler-Specify-libc-specific-thread_id.patch b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-profile-handler-Specify-libc-specific-thread_id.patch
deleted file mode 100644
index 4029a69c5..000000000
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-profile-handler-Specify-libc-specific-thread_id.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 0a504852ed6e56620d1df26b503c4aa2b5b74760 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 31 Oct 2020 16:12:36 -0700
-Subject: [PATCH] profile-handler: Specify libc specific thread_id
-
-We need to know internal _sigev_un is glibc specific, add an else for
-musl case
-
-Fixes build issue
-../git/src/profile-handler.cc:275:8: error: no member named '_sigev_un' in 'sigevent'
- sevp._sigev_un._tid = sys_gettid();
- ~~~~ ^
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/profile-handler.cc | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/src/profile-handler.cc b/src/profile-handler.cc
-index 7fdcb69..5867118 100644
---- a/src/profile-handler.cc
-+++ b/src/profile-handler.cc
-@@ -272,7 +272,11 @@ static void StartLinuxThreadTimer(int timer_type, int signal_number,
- struct itimerspec its;
- memset(&sevp, 0, sizeof(sevp));
- sevp.sigev_notify = SIGEV_THREAD_ID;
-+#ifdef __GLIBC__
- sevp._sigev_un._tid = sys_gettid();
-+#else
-+ sevp.sigev_notify_thread_id = sys_gettid();
-+#endif
- sevp.sigev_signo = signal_number;
- clockid_t clock = CLOCK_THREAD_CPUTIME_ID;
- if (timer_type == ITIMER_REAL) {
---
-2.29.2
-
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/disable_libunwind_aarch64.patch b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/disable_libunwind_aarch64.patch
index c3c578418..15eacc899 100644
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/disable_libunwind_aarch64.patch
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/disable_libunwind_aarch64.patch
@@ -12,11 +12,9 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
configure.ac | 5 +++++
1 file changed, 5 insertions(+)
-diff --git a/configure.ac b/configure.ac
-index 8154c5c..063b260 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -69,6 +69,11 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM(, [return __PPC64__])],
+@@ -76,6 +76,11 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM(, [re
[default_enable_libunwind=yes
default_tcmalloc_pagesize=8])
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/ppc-musl.patch b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/ppc-musl.patch
new file mode 100644
index 000000000..4cf182ad6
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/ppc-musl.patch
@@ -0,0 +1,66 @@
+Compatibility fixes for musl.
+
+--- a/m4/pc_from_ucontext.m4
++++ b/m4/pc_from_ucontext.m4
+@@ -34,6 +34,7 @@ AC_DEFUN([AC_PC_FROM_UCONTEXT],
+ pc_fields="$pc_fields uc_mcontext.arm_pc" # Linux (arm arch 5)
+ pc_fields="$pc_fields uc_mcontext.cr0_hi" # Linux (e2k)
+ pc_fields="$pc_fields uc_mcontext.gp_regs[[PT_NIP]]" # Suse SLES 11 (ppc64)
++ pc_fields="$pc_fields uc_mcontext.gregs[[PT_NIP]]"
+ pc_fields="$pc_fields uc_mcontext.mc_eip" # FreeBSD (i386)
+ pc_fields="$pc_fields uc_mcontext.mc_srr0" # FreeBSD (powerpc, powerpc64)
+ pc_fields="$pc_fields uc_mcontext.mc_rip" # FreeBSD (x86_64 [untested])
+@@ -77,7 +78,8 @@ AC_DEFUN([AC_PC_FROM_UCONTEXT],
+ pc_field_found=true)
+ elif test "x$ac_cv_header_ucontext_h" = xyes; then
+ AC_TRY_COMPILE([#define _GNU_SOURCE 1
+- #include <ucontext.h>],
++ #include <ucontext.h>
++ #include <asm/ptrace.h>],
+ [ucontext_t u; return u.$pc_field == 0;],
+ AC_DEFINE_UNQUOTED(PC_FROM_UCONTEXT, $pc_field,
+ How to access the PC from a struct ucontext)
+--- a/src/getpc.h
++++ b/src/getpc.h
+@@ -68,6 +68,9 @@
+ typedef ucontext ucontext_t;
+ #endif
+
++#if defined(__powerpc__) && !defined(PT_NIP)
++#define PT_NIP 32
++#endif
+
+ // Take the example where function Foo() calls function Bar(). For
+ // many architectures, Bar() is responsible for setting up and tearing
+--- a/src/stacktrace_powerpc-linux-inl.h
++++ b/src/stacktrace_powerpc-linux-inl.h
+@@ -186,7 +186,7 @@ static int GET_STACK_TRACE_OR_FRAMES {
+ ucontext_t uc;
+ // We don't care about the rest, since the IP value is at 'uc' field.
+ } *sigframe = reinterpret_cast<signal_frame_64*>(current);
+- result[n] = (void*) sigframe->uc.uc_mcontext.gp_regs[PT_NIP];
++ result[n] = (void*) sigframe->uc.uc_mcontext.gp_regs[32];
+ }
+ #else
+ if (sigtramp32_vdso && (sigtramp32_vdso == current->return_addr)) {
+@@ -196,7 +196,7 @@ static int GET_STACK_TRACE_OR_FRAMES {
+ mcontext_t mctx;
+ // We don't care about the rest, since IP value is at 'mctx' field.
+ } *sigframe = reinterpret_cast<signal_frame_32*>(current);
+- result[n] = (void*) sigframe->mctx.gregs[PT_NIP];
++ result[n] = (void*) sigframe->mctx.gregs[32];
+ } else if (sigtramp32_rt_vdso && (sigtramp32_rt_vdso == current->return_addr)) {
+ struct rt_signal_frame_32 {
+ char dummy[64 + 16];
+@@ -204,7 +204,11 @@ static int GET_STACK_TRACE_OR_FRAMES {
+ ucontext_t uc;
+ // We don't care about the rest, since IP value is at 'uc' field.A
+ } *sigframe = reinterpret_cast<rt_signal_frame_32*>(current);
++#if defined(__GLIBC__)
+ result[n] = (void*) sigframe->uc.uc_mcontext.uc_regs->gregs[PT_NIP];
++#else
++ result[n] = (void*) sigframe->uc.uc_mcontext.gregs[32];
++#endif
+ }
+ #endif
+
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/sgidef.patch b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/sgidef.patch
index 10274a6de..b01cba39c 100644
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/sgidef.patch
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/sgidef.patch
@@ -10,8 +10,6 @@ Upstream-Status: Pending
src/base/linux_syscall_support.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/src/base/linux_syscall_support.h b/src/base/linux_syscall_support.h
-index 70431ca..b23ca59 100644
--- a/src/base/linux_syscall_support.h
+++ b/src/base/linux_syscall_support.h
@@ -164,7 +164,7 @@ extern "C" {
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.8.1.bb b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.9.1.bb
index 2a386086f..bf8cb9017 100644
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.8.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.9.1.bb
@@ -1,18 +1,26 @@
SUMMARY = "Fast, multi-threaded malloc() and nifty performance analysis tools"
HOMEPAGE = "https://github.com/gperftools/gperftools"
+DESCRIPTION = "The gperftools, previously called google-perftools, package contains some \
+utilities to improve and analyze the performance of C++ programs. \
+Included are an optimized thread-caching malloc() and cpu and heap profiling utilities. \
+"
+
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=762732742c73dc6c7fbe8632f06c059a"
-SRCREV = "d8eb315fb18f6fb0d6efa923401f166343727bc6"
+DEPENDS_append_libc-musl = " libucontext"
+
+SRCREV = "f7c6fb6c8e99d6b1b725e5994373bcd19ffdf8fd"
SRC_URI = "git://github.com/gperftools/gperftools \
file://0001-Support-Atomic-ops-on-clang.patch \
file://0001-fix-build-with-musl-libc.patch \
file://0001-disbale-heap-checkers-and-debug-allocator-on-musl.patch \
file://disable_libunwind_aarch64.patch \
file://sgidef.patch \
- file://0001-profile-handler-Specify-libc-specific-thread_id.patch \
"
+SRC_URI_append_libc-musl = " file://ppc-musl.patch"
+
inherit autotools
S = "${WORKDIR}/git"
@@ -31,6 +39,7 @@ COMPATIBLE_HOST_riscv32 = "null"
ARM_INSTRUCTION_SET_armv5 = "arm"
ARM_INSTRUCTION_SET_toolchain-clang_arm = "arm"
+EXTRA_OECONF_append_libc-musl_powerpc64le = " --disable-cpu-profiler --disable-heap-profiler --disable-heap-checker"
PACKAGECONFIG ?= "libunwind static"
PACKAGECONFIG_remove_arm_libc-musl = "libunwind"
PACKAGECONFIG_remove_riscv64 = "libunwind"
@@ -44,7 +53,14 @@ FILES_libtcmalloc-minimal = "${libdir}/libtcmalloc_minimal*${SOLIBS} ${libdir}/l
# pprof tool requires Getopt::long and POSIX perl5 modules.
# Also runs `objdump` on each cpuprofile data file
-RDEPENDS_${PN} += "binutils perl-module-getopt-long perl-module-posix"
+RDEPENDS_${PN} += " \
+ binutils \
+ curl \
+ perl-module-carp \
+ perl-module-cwd \
+ perl-module-getopt-long \
+ perl-module-overloading \
+ perl-module-posix \
+"
RDEPENDS_${PN} += "libtcmalloc-minimal (= ${EXTENDPKGV})"
-
diff --git a/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb b/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
index 56d814db8..738c32d63 100644
--- a/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
@@ -5,8 +5,8 @@ SECTION = "System/Base"
LICENSE = "GPL-2.0+"
LIC_FILES_CHKSUM = "file://LICENSE;md5=1556547711e8246992b999edd9445a57"
-PV = "0.345"
-SRCREV = "5d7d97bae533401f60ce9a5a036ff7152c8aca8c"
+PV = "0.346"
+SRCREV = "a2bff16032a68b089eeb169f09dea08094891c9c"
SRC_URI = "git://github.com/vcrhonek/${BPN}.git"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0001-example-Do-not-run-the-tests.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0001-example-Do-not-run-the-tests.patch
new file mode 100644
index 000000000..ea3ddfb64
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0001-example-Do-not-run-the-tests.patch
@@ -0,0 +1,27 @@
+From 68f66d1583be670eb8d5f3f38dbd5dd1d63b733c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 21:41:04 -0700
+Subject: [PATCH] example: Do not run the tests
+
+Upstream-Status: Inappropritate [Cross-compile specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ examples/Makefile | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/examples/Makefile b/examples/Makefile
+index d9667a5..554b346 100644
+--- a/examples/Makefile
++++ b/examples/Makefile
+@@ -33,11 +33,8 @@ depend: $(SOURCES)
+ makedepend -f- $(CFLAGS) $(SOURCES) 2> /dev/null 1> depend
+
+ test-c-example1: c-example1
+- ./c-example1
+
+ test-c-example2: c-example2
+- ./c-example2 loremgibson.txt encoded.txt decoded.txt
+- diff -q loremgibson.txt decoded.txt
+
+ test: test-c-example1 test-c-example2
+
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0002-use-BUFSIZ-as-buffer-size.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0002-use-BUFSIZ-as-buffer-size.patch
new file mode 100644
index 000000000..10ec8e14a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0002-use-BUFSIZ-as-buffer-size.patch
@@ -0,0 +1,57 @@
+From ee03e265804a07a0da5028b86960031bd7ab86b2 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 22:01:13 -0700
+Subject: [PATCH] use BUFSIZ as buffer size
+
+Author: Jakub Wilk <jwilk@debian.org>
+Bug: http://sourceforge.net/tracker/?func=detail&atid=785907&aid=3591336&group_id=152942
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ include/b64/decode.h | 3 ++-
+ include/b64/encode.h | 3 ++-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/include/b64/decode.h b/include/b64/decode.h
+index 12b16ea..e9019f3 100644
+--- a/include/b64/decode.h
++++ b/include/b64/decode.h
+@@ -8,6 +8,7 @@ For details, see http://sourceforge.net/projects/libb64
+ #ifndef BASE64_DECODE_H
+ #define BASE64_DECODE_H
+
++#include <cstdio>
+ #include <iostream>
+
+ namespace base64
+@@ -22,7 +23,7 @@ namespace base64
+ base64_decodestate _state;
+ int _buffersize;
+
+- decoder(int buffersize_in = BUFFERSIZE)
++ decoder(int buffersize_in = BUFSIZ)
+ : _buffersize(buffersize_in)
+ {}
+
+diff --git a/include/b64/encode.h b/include/b64/encode.h
+index 5d807d9..e7a7035 100644
+--- a/include/b64/encode.h
++++ b/include/b64/encode.h
+@@ -8,6 +8,7 @@ For details, see http://sourceforge.net/projects/libb64
+ #ifndef BASE64_ENCODE_H
+ #define BASE64_ENCODE_H
+
++#include <cstdio>
+ #include <iostream>
+
+ namespace base64
+@@ -22,7 +23,7 @@ namespace base64
+ base64_encodestate _state;
+ int _buffersize;
+
+- encoder(int buffersize_in = BUFFERSIZE)
++ encoder(int buffersize_in = BUFSIZ)
+ : _buffersize(buffersize_in)
+ {}
+
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0003-fix-integer-overflows.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0003-fix-integer-overflows.patch
new file mode 100644
index 000000000..8854bb6af
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0003-fix-integer-overflows.patch
@@ -0,0 +1,77 @@
+From 7b30fbc3d47dfaf38d8ce8b8949a69d2984dac76 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 22:06:03 -0700
+Subject: [PATCH] fix integer overflows
+
+Author: Jakub Wilk <jwilk@debian.org>
+Bug: http://sourceforge.net/tracker/?func=detail&aid=3591129&group_id=152942&atid=785907
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/cdecode.c | 15 ++++++++-------
+ 1 file changed, 8 insertions(+), 7 deletions(-)
+
+diff --git a/src/cdecode.c b/src/cdecode.c
+index a6c0a42..4e47e9f 100644
+--- a/src/cdecode.c
++++ b/src/cdecode.c
+@@ -9,10 +9,11 @@ For details, see http://sourceforge.net/projects/libb64
+
+ int base64_decode_value(char value_in)
+ {
+- static const char decoding[] = {62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-2,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51};
++ static const signed char decoding[] = {62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-2,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51};
+ static const char decoding_size = sizeof(decoding);
++ if (value_in < 43) return -1;
+ value_in -= 43;
+- if (value_in < 0 || value_in >= decoding_size) return -1;
++ if (value_in > decoding_size) return -1;
+ return decoding[(int)value_in];
+ }
+
+@@ -26,7 +27,7 @@ int base64_decode_block(const char* code_in, const int length_in, char* plaintex
+ {
+ const char* codechar = code_in;
+ char* plainchar = plaintext_out;
+- char fragment;
++ int fragment;
+
+ *plainchar = state_in->plainchar;
+
+@@ -42,7 +43,7 @@ int base64_decode_block(const char* code_in, const int length_in, char* plaintex
+ state_in->plainchar = *plainchar;
+ return plainchar - plaintext_out;
+ }
+- fragment = (char)base64_decode_value(*codechar++);
++ fragment = base64_decode_value(*codechar++);
+ } while (fragment < 0);
+ *plainchar = (fragment & 0x03f) << 2;
+ case step_b:
+@@ -53,7 +54,7 @@ int base64_decode_block(const char* code_in, const int length_in, char* plaintex
+ state_in->plainchar = *plainchar;
+ return plainchar - plaintext_out;
+ }
+- fragment = (char)base64_decode_value(*codechar++);
++ fragment = base64_decode_value(*codechar++);
+ } while (fragment < 0);
+ *plainchar++ |= (fragment & 0x030) >> 4;
+ *plainchar = (fragment & 0x00f) << 4;
+@@ -65,7 +66,7 @@ int base64_decode_block(const char* code_in, const int length_in, char* plaintex
+ state_in->plainchar = *plainchar;
+ return plainchar - plaintext_out;
+ }
+- fragment = (char)base64_decode_value(*codechar++);
++ fragment = base64_decode_value(*codechar++);
+ } while (fragment < 0);
+ *plainchar++ |= (fragment & 0x03c) >> 2;
+ *plainchar = (fragment & 0x003) << 6;
+@@ -77,7 +78,7 @@ int base64_decode_block(const char* code_in, const int length_in, char* plaintex
+ state_in->plainchar = *plainchar;
+ return plainchar - plaintext_out;
+ }
+- fragment = (char)base64_decode_value(*codechar++);
++ fragment = base64_decode_value(*codechar++);
+ } while (fragment < 0);
+ *plainchar++ |= (fragment & 0x03f);
+ }
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0004-Fix-off-by-one-error.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0004-Fix-off-by-one-error.patch
new file mode 100644
index 000000000..e19dbad08
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0004-Fix-off-by-one-error.patch
@@ -0,0 +1,26 @@
+From 8144fd9e02bd5ccd1e080297b19a1e9eb4d3ff96 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 22:07:15 -0700
+Subject: [PATCH] Fix off by one error
+
+Launchpad bug #1501176 reported by William McCall on 2015-09-30
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/cdecode.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/cdecode.c b/src/cdecode.c
+index 4e47e9f..45da4e1 100644
+--- a/src/cdecode.c
++++ b/src/cdecode.c
+@@ -13,7 +13,7 @@ int base64_decode_value(char value_in)
+ static const char decoding_size = sizeof(decoding);
+ if (value_in < 43) return -1;
+ value_in -= 43;
+- if (value_in > decoding_size) return -1;
++ if (value_in >= decoding_size) return -1;
+ return decoding[(int)value_in];
+ }
+
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0005-make-overriding-CFLAGS-possible.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0005-make-overriding-CFLAGS-possible.patch
new file mode 100644
index 000000000..e93015ee4
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0005-make-overriding-CFLAGS-possible.patch
@@ -0,0 +1,40 @@
+From a7914d5ffee6ffdfb3f2b8ebcc22c8367d078301 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 22:08:43 -0700
+Subject: [PATCH] make overriding CFLAGS possible
+
+Author: Jakub Wilk <jwilk@debian.org>
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ base64/Makefile | 2 +-
+ src/Makefile | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/base64/Makefile b/base64/Makefile
+index 30a2c5c..783a248 100644
+--- a/base64/Makefile
++++ b/base64/Makefile
+@@ -3,7 +3,7 @@ BINARIES = base64
+ # Build flags (uncomment one)
+ #############################
+ # Release build flags
+-CFLAGS += -O3
++CFLAGS ?= -O3
+ #############################
+ # Debug build flags
+ #CFLAGS += -g
+diff --git a/src/Makefile b/src/Makefile
+index 28b2382..48801fc 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -3,7 +3,7 @@ LIBRARIES = libb64.a
+ # Build flags (uncomment one)
+ #############################
+ # Release build flags
+-CFLAGS += -O3
++CFLAGS ?= -O3
+ #############################
+ # Debug build flags
+ #CFLAGS += -g
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0006-do-not-export-the-CHARS_PER_LINE-variable.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0006-do-not-export-the-CHARS_PER_LINE-variable.patch
new file mode 100644
index 000000000..9ba08c87e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0006-do-not-export-the-CHARS_PER_LINE-variable.patch
@@ -0,0 +1,27 @@
+From a1b9bb4af819ed389675f16e4a521efeda4cc3f3 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 22:10:48 -0700
+Subject: [PATCH] do not export the CHARS_PER_LINE variable
+
+The library exports a variable named "CHARS_PER_LINE". This is a generic name that could conflict with a name in user's code.
+Please either rename the variable or make it static.
+
+Upstream-Status: Submitted [http://sourceforge.net/tracker/?func=detail&aid=3591420&group_id=152942&atid=785907]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/cencode.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/cencode.c b/src/cencode.c
+index 03ba5b6..3df62a8 100644
+--- a/src/cencode.c
++++ b/src/cencode.c
+@@ -7,7 +7,7 @@ For details, see http://sourceforge.net/projects/libb64
+
+ #include <b64/cencode.h>
+
+-const int CHARS_PER_LINE = 72;
++static const int CHARS_PER_LINE = 72;
+
+ void base64_init_encodestate(base64_encodestate* state_in)
+ {
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0007-initialize-encoder-decoder-state-in-the-constructors.patch b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0007-initialize-encoder-decoder-state-in-the-constructors.patch
new file mode 100644
index 000000000..fdf8339be
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64/0007-initialize-encoder-decoder-state-in-the-constructors.patch
@@ -0,0 +1,44 @@
+From c1ba44d83cc7d9d756cfb063717852eae9d03328 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Mar 2021 22:12:41 -0700
+Subject: [PATCH] initialize encoder/decoder state in the constructors
+
+Author: Jakub Wilk <jwilk@debian.org>
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ include/b64/decode.h | 4 +++-
+ include/b64/encode.h | 4 +++-
+ 2 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/include/b64/decode.h b/include/b64/decode.h
+index e9019f3..aefb7bc 100644
+--- a/include/b64/decode.h
++++ b/include/b64/decode.h
+@@ -25,7 +25,9 @@ namespace base64
+
+ decoder(int buffersize_in = BUFSIZ)
+ : _buffersize(buffersize_in)
+- {}
++ {
++ base64_init_decodestate(&_state);
++ }
+
+ int decode(char value_in)
+ {
+diff --git a/include/b64/encode.h b/include/b64/encode.h
+index e7a7035..33848b3 100644
+--- a/include/b64/encode.h
++++ b/include/b64/encode.h
+@@ -25,7 +25,9 @@ namespace base64
+
+ encoder(int buffersize_in = BUFSIZ)
+ : _buffersize(buffersize_in)
+- {}
++ {
++ base64_init_encodestate(&_state);
++ }
+
+ int encode(char value_in)
+ {
diff --git a/meta-openembedded/meta-oe/recipes-support/libb64/libb64_1.2.1.bb b/meta-openembedded/meta-oe/recipes-support/libb64/libb64_1.2.1.bb
new file mode 100644
index 000000000..64a34fece
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libb64/libb64_1.2.1.bb
@@ -0,0 +1,39 @@
+SUMMARY = "Base64 Encoding/Decoding Routines"
+DESCRIPTION = "base64 encoding/decoding library - runtime library \
+libb64 is a library of ANSI C routines for fast encoding/decoding data into \
+and from a base64-encoded format"
+HOMEPAGE = "http://libb64.sourceforge.net/"
+LICENSE = "PD"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=ce551aad762074c7ab618a0e07a8dca3"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}/${BP}.zip \
+ file://0001-example-Do-not-run-the-tests.patch \
+ file://0002-use-BUFSIZ-as-buffer-size.patch \
+ file://0003-fix-integer-overflows.patch \
+ file://0004-Fix-off-by-one-error.patch \
+ file://0005-make-overriding-CFLAGS-possible.patch \
+ file://0006-do-not-export-the-CHARS_PER_LINE-variable.patch \
+ file://0007-initialize-encoder-decoder-state-in-the-constructors.patch \
+ "
+SRC_URI[sha256sum] = "20106f0ba95cfd9c35a13c71206643e3fb3e46512df3e2efb2fdbf87116314b2"
+
+PARALLEL_MAKE = ""
+
+CFLAGS += "-fPIC"
+
+do_configure () {
+ :
+}
+
+do_compile () {
+ oe_runmake
+ ${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,${BPN}.so.0 src/*.o -o src/${BPN}.so.0
+}
+
+do_install () {
+ install -d ${D}${includedir}/b64
+ install -Dm 0644 ${B}/src/libb64.a ${D}${libdir}/libb64.a
+ install -Dm 0644 ${B}/src/libb64.so.0 ${D}${libdir}/libb64.so.0
+ ln -s libb64.so.0 ${D}${libdir}/libb64.so
+ install -Dm 0644 ${S}/include/b64/*.h ${D}${includedir}/b64/
+}
diff --git a/meta-openembedded/meta-oe/recipes-support/libcppkafka/libcppkafka_git.bb b/meta-openembedded/meta-oe/recipes-support/libcppkafka/libcppkafka_git.bb
new file mode 100644
index 000000000..6237638d3
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libcppkafka/libcppkafka_git.bb
@@ -0,0 +1,22 @@
+SUMMARY = "high level C++ wrapper for rdkafka"
+DESCRIPTION = "cppkafka allows C++ applications to consume and produce messages using the Apache Kafka protocol."
+HOMEPAGE = "https://github.com/mfontanini/cppkafka"
+SECTION = "lib"
+LICENSE = "BSD-2-Clause"
+
+LIC_FILES_CHKSUM = " \
+file://LICENSE;md5=d8b4ca15d239dc1485ef495c8f1bcc72 \
+"
+
+SRC_URI = "git://github.com/mfontanini/cppkafka;protocol=https"
+SRCREV = "5e4b350806d561473138ce7a982e8f6cf2e77733"
+
+DEPENDS = "librdkafka boost chrpath-replacement-native"
+
+inherit cmake
+
+S = "${WORKDIR}/git"
+
+do_install_append(){
+ chrpath -d ${D}${libdir}/libcppkafka.so.0.3.1
+}
diff --git a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.6.2.bb b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.6.3.bb
index c6c262b70..d9c251705 100644
--- a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.6.2.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.6.3.bb
@@ -8,8 +8,8 @@ SRC_URI = "https://www.kernel.org/pub/software/libs/${BPN}/${BP}.tar.xz \
file://run-ptest \
"
-SRC_URI[md5sum] = "4765470becb619fead3cdaeac61b9a77"
-SRC_URI[sha256sum] = "c601e71846f5ab140c83bc757fdd62a4fda24a9cee39cc5e99c96ec2bf1b06a9"
+SRC_URI[md5sum] = "28e79f6f70fee1da9079558d8b7b3736"
+SRC_URI[sha256sum] = "841be9d788f00bab08ef22c4be5c39866f0e46cb100a3ae49ed816ac9c5dddc7"
inherit autotools pkgconfig python3native ptest
diff --git a/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb b/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb
index b308bde17..00c016db4 100644
--- a/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb
@@ -12,13 +12,15 @@ UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
S = "${WORKDIR}/git"
-inherit cmake python3native systemd
+DISTUTILS_SETUP_PATH ?= "${B}/bindings/python/"
DEPENDS = " \
flex-native bison-native libaio \
${@bb.utils.contains('DISTRO_FEATURES', 'zeroconf', 'avahi', '', d)} \
"
+inherit cmake python3native systemd setuptools3
+
EXTRA_OECMAKE = " \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DUDEV_RULES_INSTALL_DIR=${nonarch_base_libdir}/udev/rules.d \
@@ -31,8 +33,6 @@ PACKAGECONFIG[usb_backend] = "-DWITH_USB_BACKEND=ON,-DWITH_USB_BACKEND=OFF,libus
PACKAGECONFIG[network_backend] = "-DWITH_NETWORK_BACKEND=ON,-DWITH_NETWORK_BACKEND=OFF,libxml2"
PACKAGECONFIG[libiio-python3] = "-DPYTHON_BINDINGS=ON,-DPYTHON_BINDINGS=OFF"
-inherit ${@bb.utils.contains('PACKAGECONFIG', 'libiio-python3', 'distutils3-base', '', d)}
-
PACKAGES =+ "${PN}-iiod ${PN}-tests ${PN}-${PYTHON_PN}"
RDEPENDS_${PN}-${PYTHON_PN} = "${PN} ${PYTHON_PN}-ctypes ${PYTHON_PN}-stringold"
@@ -46,3 +46,23 @@ FILES_${PN}-${PYTHON_PN} = "${PYTHON_SITEPACKAGES_DIR}"
SYSTEMD_PACKAGES = "${PN}-iiod"
SYSTEMD_SERVICE_${PN}-iiod = "iiod.service"
+
+# Explicitly define do_configure, do_compile and do_install because both cmake and setuptools3 have
+# EXPORT_FUNCTIONS do_configure do_compile do_install
+do_configure() {
+ cmake_do_configure
+}
+
+do_compile() {
+ if ${@bb.utils.contains('PACKAGECONFIG', 'libiio-python3', 'true', 'false', d)}; then
+ distutils3_do_compile
+ fi
+ cmake_do_compile
+}
+
+do_install() {
+ if ${@bb.utils.contains('PACKAGECONFIG', 'libiio-python3', 'true', 'false', d)}; then
+ distutils3_do_install
+ fi
+ cmake_do_install
+}
diff --git a/meta-openembedded/meta-oe/recipes-support/libmanette/libmanette_0.2.6.bb b/meta-openembedded/meta-oe/recipes-support/libmanette/libmanette_0.2.6.bb
new file mode 100644
index 000000000..23ab348dc
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libmanette/libmanette_0.2.6.bb
@@ -0,0 +1,16 @@
+# Copyright (C) 2021 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+SUMMARY = "The simple GObject game controller library"
+HOMEPAGE = "https://gnome.pages.gitlab.gnome.org/libmanette/"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+DEPENDS = "libevdev libgudev"
+
+SRC_URI = "https://download.gnome.org/sources/libmanette/0.2/libmanette-${PV}.tar.xz"
+SRC_URI[sha256sum] = "63653259a821ec7d90d681e52e757e2219d462828c9d74b056a5f53267636bac"
+
+inherit meson pkgconfig gobject-introspection ptest vala
+
+FILES_${PN}-ptest =+ "${bindir}/manette-test"
+FILES_${PN}-dev =+ "${libdir}/girepository-1.0"
diff --git a/meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka/0001_fix_absolute_path_usage.patch b/meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka/0001_fix_absolute_path_usage.patch
new file mode 100644
index 000000000..d60978661
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka/0001_fix_absolute_path_usage.patch
@@ -0,0 +1,83 @@
+From dd06894a786edf4bea11dace50d7380b89dfaba5 Mon Sep 17 00:00:00 2001
+From: hasan.men <hasan.men@bosphorusiss.com>
+Date: Sun, 4 Apr 2021 17:20:32 +0200
+Subject: [PATCH] fix absolute path problem
+
+---
+ src/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index c6c05e06..e6c47374 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -176,7 +176,7 @@ if(MINGW)
+ endif(MINGW)
+
+ # Support '#include <rdkafka.h>'
+-target_include_directories(rdkafka PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}>")
++target_include_directories(rdkafka PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}> $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
+ target_compile_definitions(rdkafka PUBLIC ${rdkafka_compile_definitions})
+ if(RDKAFKA_BUILD_STATIC)
+ target_compile_definitions(rdkafka PUBLIC LIBRDKAFKA_STATICLIB)
+@@ -188,7 +188,7 @@ if(MINGW)
+ target_link_libraries(rdkafka PUBLIC crypt32 ws2_32 secur32)
+ endif(MINGW)
+
+-if(WIN32)
++if(WIN32)
+ if(RDKAFKA_BUILD_STATIC)
+ target_link_libraries(rdkafka PUBLIC crypt32)
+ else()
+@@ -207,13 +207,13 @@ endif()
+
+ if(WITH_ZLIB)
+ find_package(ZLIB REQUIRED)
+- target_include_directories(rdkafka PUBLIC ${ZLIB_INCLUDE_DIRS})
++ target_include_directories(rdkafka PRIVATE ${ZLIB_INCLUDE_DIRS})
+ target_link_libraries(rdkafka PUBLIC ZLIB::ZLIB)
+ endif()
+
+ if(WITH_ZSTD)
+- target_link_libraries(rdkafka PUBLIC ${ZSTD_LIBRARY})
+- target_include_directories(rdkafka PUBLIC ${ZSTD_INCLUDE_DIR})
++ target_link_libraries(rdkafka PRIVATE ${ZSTD_LIBRARY})
++ target_include_directories(rdkafka PRIVATE ${ZSTD_INCLUDE_DIR})
+ message(STATUS "Found ZSTD: ${ZSTD_LIBRARY}")
+ endif()
+
+@@ -222,12 +222,12 @@ if(WITH_SSL)
+ if(NOT TARGET bundled-ssl)
+ message(FATAL_ERROR "bundled-ssl target not exist")
+ endif()
+- target_include_directories(rdkafka BEFORE PUBLIC ${BUNDLED_SSL_INCLUDE_DIR})
++ target_include_directories(rdkafka BEFORE PRIVATE ${BUNDLED_SSL_INCLUDE_DIR})
+ target_link_libraries(rdkafka PUBLIC ${BUNDLED_SSL_LIBRARIES})
+ add_dependencies(rdkafka bundled-ssl)
+ else()
+ find_package(OpenSSL REQUIRED)
+- target_include_directories(rdkafka PUBLIC ${OPENSSL_INCLUDE_DIR})
++ target_include_directories(rdkafka PRIVATE ${OPENSSL_INCLUDE_DIR})
+ target_link_libraries(rdkafka PUBLIC OpenSSL::SSL OpenSSL::Crypto)
+ get_target_property(OPENSSL_TARGET_TYPE OpenSSL::SSL TYPE)
+ if(OPENSSL_CRYPTO_LIBRARY MATCHES "\\.a$")
+@@ -244,7 +244,7 @@ find_package(Threads REQUIRED)
+ target_link_libraries(rdkafka PUBLIC Threads::Threads)
+
+ if(WITH_SASL_CYRUS)
+- target_include_directories(rdkafka PUBLIC ${SASL_INCLUDE_DIRS})
++ target_include_directories(rdkafka PRIVATE ${SASL_INCLUDE_DIRS})
+ target_link_libraries(rdkafka PUBLIC ${SASL_LIBRARIES})
+ endif()
+
+@@ -253,7 +253,7 @@ if(WITH_LIBDL)
+ endif()
+
+ if(WITH_LZ4_EXT)
+- target_include_directories(rdkafka PUBLIC ${LZ4_INCLUDE_DIRS})
++ target_include_directories(rdkafka PRIVATE ${LZ4_INCLUDE_DIRS})
+ target_link_libraries(rdkafka PUBLIC LZ4::LZ4)
+ endif()
+
+--
+2.17.1 \ No newline at end of file
diff --git a/meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka_1.6.1.bb b/meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka_1.6.1.bb
new file mode 100644
index 000000000..5314f4a48
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/librdkafka/librdkafka_1.6.1.bb
@@ -0,0 +1,23 @@
+SUMMARY = "the Apache Kafka C/C++ client library"
+DESCRIPTION = "librdkafka is a C library implementation of the Apache Kafka protocol, providing Producer, Consumer and Admin clients."
+HOMEPAGE = "https://github.com/edenhill/librdkafka"
+SECTION = "libs"
+LICENSE = "BSD-2-Clause"
+
+LIC_FILES_CHKSUM = " \
+file://LICENSE;md5=2be8675acbfdac48935e73897af5f646 \
+"
+
+SRC_URI = "git://github.com/edenhill/librdkafka;protocol=https \
+ file://0001_fix_absolute_path_usage.patch"
+SRCREV = "1a722553638bba85dbda5050455f7b9a5ef302de"
+
+DEPENDS = "zlib openssl zstd"
+
+inherit cmake
+
+S = "${WORKDIR}/git"
+
+FILES_${PN} += "${datadir}"
+
+EXTRA_OECMAKE += "-DRDKAFKA_BUILD_EXAMPLES=OFF -DRDKAFKA_BUILD_TESTS=OFF" \ No newline at end of file
diff --git a/meta-openembedded/meta-oe/recipes-support/libsmi/libsmi_0.5.0.bb b/meta-openembedded/meta-oe/recipes-support/libsmi/libsmi_0.5.0.bb
index 212b1e797..ae76fade7 100644
--- a/meta-openembedded/meta-oe/recipes-support/libsmi/libsmi_0.5.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libsmi/libsmi_0.5.0.bb
@@ -16,7 +16,7 @@ RDEPENDS_${PN} += "wget"
inherit autotools
-EXTRA_OECONF = "ac_cv_path_SH=${base_bindir}/sh ac_cv_path_WGET=${bindir}/wget ac_cv_path_AWK=${bindir}/awk"
+EXTRA_OECONF = "ac_cv_path_SH=/bin/sh ac_cv_path_WGET=${bindir}/wget ac_cv_path_AWK=${bindir}/awk"
do_install_append () {
install -d ${D}${sysconfdir}
diff --git a/meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.8.9.bb b/meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.8.9.bb
index 39ed8a8fb..2aff2c878 100644
--- a/meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.8.9.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.8.9.bb
@@ -4,7 +4,7 @@ SECTION = "libs"
LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=dabb4958b830e5df11d2b0ed8ea255a0"
-DEPENDS = "zlib openssl libgcrypt"
+DEPENDS = "zlib openssl"
SRC_URI = "git://git.libssh.org/projects/libssh.git;branch=stable-0.8"
SRCREV = "04685a74df9ce1db1bc116a83a0da78b4f4fa1f8"
@@ -13,13 +13,13 @@ S = "${WORKDIR}/git"
inherit cmake
-PACKAGECONFIG ??=""
+PACKAGECONFIG ??= "gcrypt"
PACKAGECONFIG[gssapi] = "-DWITH_GSSAPI=1, -DWITH_GSSAPI=0, krb5, "
+PACKAGECONFIG[gcrypt] = "-DWITH_GCRYPT=1, -DWITH_GCRYPT=0, libgcrypt, "
ARM_INSTRUCTION_SET_armv5 = "arm"
EXTRA_OECMAKE = " \
- -DWITH_GCRYPT=1 \
-DWITH_PCAP=1 \
-DWITH_SFTP=1 \
-DWITH_ZLIB=1 \
diff --git a/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.20.2.bb b/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.20.2.bb
deleted file mode 100644
index 645fe3b26..000000000
--- a/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.20.2.bb
+++ /dev/null
@@ -1,53 +0,0 @@
-# FIXME: the LIC_FILES_CHKSUM values have been updated by 'devtool upgrade'.
-# The following is the difference between the old and the new license text.
-# Please update the LICENSE value if needed, and summarize the changes in
-# the commit message via 'License-Update:' tag.
-# (example: 'License-Update: copyright years updated.')
-#
-# The changes:
-#
-# --- COPYING
-# +++ COPYING
-# @@ -293,7 +293,7 @@
-# <one line to give the program's name and a brief idea of what it does.>
-# Copyright (C) <year> <name of author>
-#
-# - on, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USAThis program is free software; you can redistribute it and/or modify
-# + This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-#
-
-require links.inc
-
-DEPENDS += "virtual/libx11"
-RCONFLICTS_${PN} = "links"
-
-inherit features_check
-# depends on virtual/libx11
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI += " file://links2.desktop \
- http://www.xora.org.uk/oe/links2.png;name=icon"
-
-S = "${WORKDIR}/links-${PV}"
-
-EXTRA_OECONF = "--enable-graphics \
- --with-ssl=${STAGING_LIBDIR}/.. --with-libjpeg \
- --without-libtiff --without-svgalib --without-fb \
- --without-directfb --without-pmshell --without-atheos \
- --with-x --without-gpm"
-
-do_install_append() {
- install -d ${D}/${datadir}/applications
- install -m 0644 ${WORKDIR}/links2.desktop ${D}/${datadir}/applications
- install -d ${D}/${datadir}/pixmaps
- install -m 0644 ${WORKDIR}/links2.png ${D}/${datadir}/pixmaps
-}
-
-SRC_URI[md5sum] = "ee39e612249440d0497535d0dafc3c0e"
-SRC_URI[sha256sum] = "4b4f07d0e6261118d1365a5a5bfa31e1eafdbd280cfae6f0e9eedfea51a2f424"
-SRC_URI[icon.md5sum] = "477e8787927c634614bac01b44355a33"
-SRC_URI[icon.sha256sum] = "eddcd8b8c8698aa621d1a453943892d77b72ed492e0d14e0dbac5c6a57e52f47"
diff --git a/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.22.bb b/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.22.bb
new file mode 100644
index 000000000..563984c0e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/links/links-x11_2.22.bb
@@ -0,0 +1,29 @@
+require links.inc
+
+DEPENDS += "virtual/libx11"
+RCONFLICTS_${PN} = "links"
+
+inherit features_check
+# depends on virtual/libx11
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI += " file://links2.desktop \
+ http://www.xora.org.uk/oe/links2.png;name=icon"
+
+SRC_URI[sha256sum] = "0364986b3a7f1e8e3171bea362b53f71e1dd3360a8842d66fdc65580ebc2084d"
+SRC_URI[icon.sha256sum] = "eddcd8b8c8698aa621d1a453943892d77b72ed492e0d14e0dbac5c6a57e52f47"
+
+S = "${WORKDIR}/links-${PV}"
+
+EXTRA_OECONF = "--enable-graphics \
+ --with-ssl=${STAGING_LIBDIR}/.. --with-libjpeg \
+ --without-libtiff --without-svgalib --without-fb \
+ --without-directfb --without-pmshell --without-atheos \
+ --with-x --without-gpm"
+
+do_install_append() {
+ install -d ${D}/${datadir}/applications
+ install -m 0644 ${WORKDIR}/links2.desktop ${D}/${datadir}/applications
+ install -d ${D}/${datadir}/pixmaps
+ install -m 0644 ${WORKDIR}/links2.png ${D}/${datadir}/pixmaps
+}
diff --git a/meta-openembedded/meta-oe/recipes-support/links/links_2.21.bb b/meta-openembedded/meta-oe/recipes-support/links/links_2.22.bb
index b6048c1d3..2bfc9ae07 100644
--- a/meta-openembedded/meta-oe/recipes-support/links/links_2.21.bb
+++ b/meta-openembedded/meta-oe/recipes-support/links/links_2.22.bb
@@ -8,8 +8,5 @@ EXTRA_OECONF = "--enable-graphics \
--without-libtiff --without-svgalib --with-fb \
--without-directfb --without-pmshell --without-atheos \
--without-x"
-
-SRC_URI[md5sum] = "b88a46733d6932442ed8a6b751aac6b4"
-SRC_URI[sha256sum] = "285eed8591c7781ec26213df82786665aaa1b9286782e8a7a1a7e2a6e1630d63"
-SRC_URI[icon.md5sum] = "477e8787927c634614bac01b44355a33"
+SRC_URI[sha256sum] = "0364986b3a7f1e8e3171bea362b53f71e1dd3360a8842d66fdc65580ebc2084d"
SRC_URI[icon.sha256sum] = "eddcd8b8c8698aa621d1a453943892d77b72ed492e0d14e0dbac5c6a57e52f47"
diff --git a/meta-openembedded/meta-oe/recipes-support/lio-utils/lio-utils_4.1.bb b/meta-openembedded/meta-oe/recipes-support/lio-utils/lio-utils_4.1.bb
index 0fb4a6e51..4891fd187 100644
--- a/meta-openembedded/meta-oe/recipes-support/lio-utils/lio-utils_4.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/lio-utils/lio-utils_4.1.bb
@@ -55,6 +55,8 @@ do_install() {
install -m 755 ${S}/conf/lio_start.default ${D}/etc/target/lio_start.sh
}
+PNBLACKLIST[lio-utils] ?= "${@bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', '', 'python2 is out of support for long time, read https://www.python.org/doc/sunset-python-2/ https://python3statement.org/ and if you really have to temporarily use this, then set I_SWEAR_TO_MIGRATE_TO_PYTHON3 to "yes"', d)}"
+
RDEPENDS_${PN} += "python-stringold python-subprocess python-shell \
python-datetime python-textutils python-crypt python-netclient python-email \
bash"
diff --git a/meta-openembedded/meta-oe/recipes-support/mg/mg_20200723.bb b/meta-openembedded/meta-oe/recipes-support/mg/mg_20210314.bb
index b73f93756..9275dd233 100644
--- a/meta-openembedded/meta-oe/recipes-support/mg/mg_20200723.bb
+++ b/meta-openembedded/meta-oe/recipes-support/mg/mg_20210314.bb
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://version.c;md5=1895eb37bf6bd79cdc5c89d8166fabfb"
DEPENDS = "ncurses libbsd"
SECTION = "console/editors"
-SRCREV = "60fa3582f5f735b9d43825f5bdcc4ea5f0740f91"
+SRCREV = "598f7a028f01f85f0dee0e798753bccf93233add"
SRC_URI = "git://github.com/hboetes/mg \
file://0001-fileio-Include-sys-param.h-for-MAXNAMLEN.patch \
file://0002-fileio-Define-DEFFILEMODE-if-platform-is-missing.patch \
diff --git a/meta-openembedded/meta-oe/recipes-support/neon/neon/fix-package-check-for-libxml2.patch b/meta-openembedded/meta-oe/recipes-support/neon/neon/fix-package-check-for-libxml2.patch
new file mode 100644
index 000000000..92a05c0ef
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/neon/neon/fix-package-check-for-libxml2.patch
@@ -0,0 +1,50 @@
+neon: Change the neon configure to use pkg-config instead of xml2-config
+
+xml2-config is broken for neon
+if packageconfig libxml2, webdav, zlib is enabled for neon
+we get the following configure error in the yocto build
+
+| configure: WebDAV support is enabled
+| checking for xml2-config... xml2-config
+| ERROR: /usr/bin/xml2-config should not be used, use an alternative such as pkg-config
+| ERROR: /usr/bin/xml2-config should not be used, use an alternative such as pkg-config
+| ERROR: /usr/bin/xml2-config should not be used, use an alternative such as pkg-config
+| checking libxml/xmlversion.h usability... no
+| checking libxml/xmlversion.h presence... no
+| checking for libxml/xmlversion.h... no
+| configure: error: could not find parser.h, libxml installation problem?
+| WARNING: exit code 1 from a shell command.
+
+The patch lets configure use pkg-config
+
+Upstream-Status: inappropriate
+(Upstream suggests to use latest 0.31 as per the discussion
+https://github.com/notroj/neon/discussions/47)
+
+Signed-off-by: Nisha Parrakat <Nisha.Parrakat@kpit.com>
+--- a/macros/neon-xml-parser.m4 2008-07-19 23:52:35.000000000 +0200
++++ b/macros/neon-xml-parser.m4 2021-02-15 23:56:59.202751257 +0100
+@@ -44,17 +44,17 @@
+
+ dnl Find libxml2: run $1 if found, else $2
+ AC_DEFUN([NE_XML_LIBXML2], [
+-AC_CHECK_PROG(XML2_CONFIG, xml2-config, xml2-config)
++AC_CHECK_PROG(XML2_CONFIG, pkg-config, pkg-config)
+ if test -n "$XML2_CONFIG"; then
+- neon_xml_parser_message="libxml `$XML2_CONFIG --version`"
+ AC_DEFINE(HAVE_LIBXML, 1, [Define if you have libxml])
+- # xml2-config in some versions erroneously includes -I/include
+- # in the --cflags output.
+- CPPFLAGS="$CPPFLAGS `$XML2_CONFIG --cflags | sed 's| -I/include||g'`"
+- NEON_LIBS="$NEON_LIBS `$XML2_CONFIG --libs | sed 's|-L/usr/lib ||g'`"
++ PKG_CHECK_MODULES(XML, libxml-2.0 >= 2.4)
++ AC_MSG_NOTICE([libxmlfound CFlags : , ${XML_CFLAGS}])
++ CPPFLAGS="$CPPFLAGS ${XML_CFLAGS}"
++ NEON_LIBS="$NEON_LIBS ${XML_LIBS}"
+ AC_CHECK_HEADERS(libxml/xmlversion.h libxml/parser.h,,[
+ AC_MSG_ERROR([could not find parser.h, libxml installation problem?])])
+ neon_xml_parser=libxml2
++ neon_xml_parser_message="libxml2"
+ else
+ $1
+ fi
diff --git a/meta-openembedded/meta-oe/recipes-support/neon/neon/run-ptest b/meta-openembedded/meta-oe/recipes-support/neon/neon/run-ptest
new file mode 100644
index 000000000..602084a52
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/neon/neon/run-ptest
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+set -eux
+
+rm -f debug.log child.log
+
+ulimit -c unlimited
+ulimit -t 120
+
+cd test
+echo foobar > foobar.txt
+
+BASIC_TESTS="auth basic redirect request session socket string-tests \
+ stubs uri-tests util-tests"
+DAV_TESTS="acl3744 lock oldacl props xml xmlreq"
+for t in $BASIC_TESTS $DAV_TESTS
+do
+ echo "Running $t..."
+ if "./$t"
+ then
+ echo "PASS:$t"
+ else
+ echo "FAIL:$t"
+ fi
+done
diff --git a/meta-openembedded/meta-oe/recipes-support/neon/neon_0.30.2.bb b/meta-openembedded/meta-oe/recipes-support/neon/neon_0.30.2.bb
index 00b79f633..2639c9229 100644
--- a/meta-openembedded/meta-oe/recipes-support/neon/neon_0.30.2.bb
+++ b/meta-openembedded/meta-oe/recipes-support/neon/neon_0.30.2.bb
@@ -7,12 +7,14 @@ LIC_FILES_CHKSUM = "file://src/COPYING.LIB;md5=f30a9716ef3762e3467a2f62bf790f0a
SRC_URI = "${DEBIAN_MIRROR}/main/n/neon27/neon27_${PV}.orig.tar.gz \
file://pkgconfig.patch \
+ file://fix-package-check-for-libxml2.patch \
+ file://run-ptest \
"
SRC_URI[md5sum] = "e28d77bf14032d7f5046b3930704ef41"
SRC_URI[sha256sum] = "db0bd8cdec329b48f53a6f00199c92d5ba40b0f015b153718d1b15d3d967fbca"
-inherit autotools binconfig-disabled lib_package pkgconfig
+inherit autotools binconfig-disabled lib_package pkgconfig ptest
# Enable gnutls or openssl, not both
PACKAGECONFIG ?= "expat gnutls libproxy webdav zlib"
@@ -33,6 +35,18 @@ do_compile_append() {
oe_runmake -C test
}
+do_install_ptest(){
+ BASIC_TESTS="auth basic redirect request session socket string-tests \
+ stubs uri-tests util-tests"
+ DAV_TESTS="acl3744 lock oldacl props xml xmlreq"
+ mkdir "${D}${PTEST_PATH}/test"
+ for i in ${BASIC_TESTS} ${DAV_TESTS}
+ do
+ install -m 0755 "${B}/test/${i}" \
+ "${D}${PTEST_PATH}/test"
+ done
+}
+
BINCONFIG = "${bindir}/neon-config"
BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-support/nss/nss/nss-fix-nsinstall-build.patch b/meta-openembedded/meta-oe/recipes-support/nss/nss/nss-fix-nsinstall-build.patch
index fbfa828b2..224a5d236 100644
--- a/meta-openembedded/meta-oe/recipes-support/nss/nss/nss-fix-nsinstall-build.patch
+++ b/meta-openembedded/meta-oe/recipes-support/nss/nss/nss-fix-nsinstall-build.patch
@@ -15,7 +15,7 @@ on host to install built files, it doesn't need any cross-compling or
multilib build options. Just clean the ARCHFLAG and LDFLAGS to fix this
error.
-Upstream-Status: Pending
+Upstream-Status: Inappropriate [configuration]
Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
===================================================
diff --git a/meta-openembedded/meta-oe/recipes-support/nss/nss_3.60.1.bb b/meta-openembedded/meta-oe/recipes-support/nss/nss_3.63.bb
index 0d668ba06..ab2c43d01 100644
--- a/meta-openembedded/meta-oe/recipes-support/nss/nss_3.60.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/nss/nss_3.63.bb
@@ -32,7 +32,7 @@ SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/${VERSIO
file://nss-fix-nsinstall-build.patch \
file://0001-freebl-add-a-configure-option-to-disable-ARM-HW-cryp.patch \
"
-SRC_URI[sha256sum] = "2051c20b61112df24bad533ac37f6c66c1bc0d6ea70bb9d9cad102d20324279d"
+SRC_URI[sha256sum] = "182d2fef629102ae9423aabf2c192242b565cf5098e82c5a26cf70c5e4ea2221"
UPSTREAM_CHECK_URI = "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_Releases"
UPSTREAM_CHECK_REGEX = "NSS_(?P<pver>.+)_release_notes"
@@ -121,7 +121,8 @@ do_compile() {
fi
export NSS_DISABLE_GTESTS=1
-
+ # see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99420
+ export NSS_ENABLE_WERROR=0
# We can modify CC in the environment, but if we set it via an
# argument to make, nsinstall, a host program, will also build with it!
#
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch b/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch
deleted file mode 100644
index 6cb5dfccc..000000000
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-From 6fb28085e867d7c3ef46577d9ff193a185693bcb Mon Sep 17 00:00:00 2001
-From: Oliver Kurth <okurth@vmware.com>
-Date: Mon, 30 Sep 2019 16:24:27 -0700
-Subject: [PATCH] GitHub Issue #367. Remove references to deprecated G_INLINE_FUNC.
-
-G_INLINE_FUNC was a work-around for compilers that didn't support
-static inline. Change uses of it to static inline.
-
-Upstream-Status: Backport
-[https://github.com/vmware/open-vm-tools/commit/89c0d444567eb525e8d083fb564c46d68e96660c]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- open-vm-tools/lib/include/vmware/tools/plugin.h | 2 +-
- open-vm-tools/lib/include/vmware/tools/threadPool.h | 8 ++++----
- open-vm-tools/lib/include/vmware/tools/utils.h | 9 ---------
- 3 files changed, 5 insertions(+), 14 deletions(-)
-
-diff --git a/open-vm-tools/lib/include/vmware/tools/plugin.h b/open-vm-tools/lib/include/vmware/tools/plugin.h
-index f9acc6a2..deefd1f3 100644
---- a/open-vm-tools/lib/include/vmware/tools/plugin.h
-+++ b/open-vm-tools/lib/include/vmware/tools/plugin.h
-@@ -290,7 +290,7 @@ typedef struct ToolsAppCtx {
- *
- * @return TRUE if COM is initialized when the function returns.
- */
--G_INLINE_FUNC gboolean
-+static inline gboolean
- ToolsCore_InitializeCOM(ToolsAppCtx *ctx)
- {
- if (!ctx->comInitialized) {
-diff --git a/open-vm-tools/lib/include/vmware/tools/threadPool.h b/open-vm-tools/lib/include/vmware/tools/threadPool.h
-index 3f2082b3..5880fbcf 100644
---- a/open-vm-tools/lib/include/vmware/tools/threadPool.h
-+++ b/open-vm-tools/lib/include/vmware/tools/threadPool.h
-@@ -91,7 +91,7 @@ typedef struct ToolsCorePool {
- *******************************************************************************
- */
-
--G_INLINE_FUNC ToolsCorePool *
-+static inline ToolsCorePool *
- ToolsCorePool_GetPool(ToolsAppCtx *ctx)
- {
- ToolsCorePool *pool = NULL;
-@@ -123,7 +123,7 @@ ToolsCorePool_GetPool(ToolsAppCtx *ctx)
- *******************************************************************************
- */
-
--G_INLINE_FUNC guint
-+static inline guint
- ToolsCorePool_SubmitTask(ToolsAppCtx *ctx,
- ToolsCorePoolCb cb,
- gpointer data,
-@@ -153,7 +153,7 @@ ToolsCorePool_SubmitTask(ToolsAppCtx *ctx,
- *******************************************************************************
- */
-
--G_INLINE_FUNC void
-+static inline void
- ToolsCorePool_CancelTask(ToolsAppCtx *ctx,
- guint taskId)
- {
-@@ -197,7 +197,7 @@ ToolsCorePool_CancelTask(ToolsAppCtx *ctx,
- *******************************************************************************
- */
-
--G_INLINE_FUNC gboolean
-+static inline gboolean
- ToolsCorePool_StartThread(ToolsAppCtx *ctx,
- const gchar *threadName,
- ToolsCorePoolCb cb,
-diff --git a/open-vm-tools/lib/include/vmware/tools/utils.h b/open-vm-tools/lib/include/vmware/tools/utils.h
-index f6574590..a3292d5c 100644
---- a/open-vm-tools/lib/include/vmware/tools/utils.h
-+++ b/open-vm-tools/lib/include/vmware/tools/utils.h
-@@ -51,15 +51,6 @@
- # include <sys/time.h>
- #endif
-
--
--/* Work around a glib limitation: it doesn't set G_INLINE_FUNC on Win32. */
--#if defined(G_PLATFORM_WIN32)
--# if defined(G_INLINE_FUNC)
--# undef G_INLINE_FUNC
--# endif
--# define G_INLINE_FUNC static __inline
--#endif
--
- #ifndef ABS
- # define ABS(x) (((x) >= 0) ? (x) : -(x))
- #endif
---
-2.23.0
-
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-utilBacktrace-Ignore-Warray-bounds.patch b/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-utilBacktrace-Ignore-Warray-bounds.patch
deleted file mode 100644
index 95664e855..000000000
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-utilBacktrace-Ignore-Warray-bounds.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From ac3f93ea087d3a5461fe57fe021d0fe9a959e13c Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 25 Dec 2019 15:25:02 -0800
-Subject: [PATCH] utilBacktrace: Ignore -Warray-bounds
-
-This is new warning with gcc10, until its fixed ignore it like gcc<10
-did
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- open-vm-tools/lib/user/utilBacktrace.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/open-vm-tools/lib/user/utilBacktrace.c b/open-vm-tools/lib/user/utilBacktrace.c
-index b72340ad..97ca53f2 100644
---- a/open-vm-tools/lib/user/utilBacktrace.c
-+++ b/open-vm-tools/lib/user/utilBacktrace.c
-@@ -517,6 +517,11 @@ Util_BacktraceWithFunc(int bugNr, // IN:
- } else {
- outFunc(outFuncData, "Backtrace for bugNr=%d\n",bugNr);
- }
-+#pragma GCC diagnostic push
-+#pragma GCC diagnostic ignored "-Warray-bounds"
-+
- Util_BacktraceFromPointerWithFunc(&x[-2], outFunc, outFuncData);
-+#pragma GCC diagnostic pop
- #endif
- }
-+
---
-2.24.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-add-include-sys-sysmacros.h.patch b/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-add-include-sys-sysmacros.h.patch
deleted file mode 100644
index 34628ffbe..000000000
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-add-include-sys-sysmacros.h.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 3fa237b3afabc293e563292b8d89265a871626ad Mon Sep 17 00:00:00 2001
-From: Martin Kelly <mkelly@xevo.com>
-Date: Mon, 22 May 2017 17:00:05 -0700
-Subject: [PATCH] add #include <sys/sysmacros.h>
-
-In newer glibc versions, the definition for major() has been moved to
-sys/sysmacros.h, and using the older version in <sys/types.h> has been
-deprecated. So, add an include for <sys/sysmacros.h>.
-
-Upstream-Status: Pending
-
-Signed-off-by: Martin Kelly <mkelly@xevo.com>
----
- open-vm-tools/lib/wiper/wiperPosix.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/open-vm-tools/lib/wiper/wiperPosix.c b/open-vm-tools/lib/wiper/wiperPosix.c
-index bd542410..ccf06293 100644
---- a/open-vm-tools/lib/wiper/wiperPosix.c
-+++ b/open-vm-tools/lib/wiper/wiperPosix.c
-@@ -43,6 +43,9 @@
- # include <libgen.h>
- # endif /* __FreeBSD_version >= 500000 */
- #endif
-+#if defined(__linux__)
-+#include <sys/sysmacros.h>
-+#endif
- #include <unistd.h>
-
- #include "vmware.h"
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch b/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch
deleted file mode 100644
index 0f64eabc9..000000000
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From fe56b67a2915a8632ea30604c14241f335dd3c15 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 12 Nov 2019 10:49:46 -0800
-Subject: [PATCH] hgfsServerLinux: Consider 64bit time_t possibility
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- .../lib/hgfsServer/hgfsServerLinux.c | 19 +++++--------------
- 1 file changed, 5 insertions(+), 14 deletions(-)
-
-diff --git a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
-index 03175623..554da67f 100644
---- a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
-+++ b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
-@@ -2561,20 +2561,11 @@ HgfsStatToFileAttr(struct stat *stats, // IN: stat information
- LOG(4, ("%s: done, permissions %o%o%o%o, size %"FMT64"u\n", __FUNCTION__,
- attr->specialPerms, attr->ownerPerms, attr->groupPerms,
- attr->otherPerms, attr->size));
--#ifdef __FreeBSD__
--# if !defined(VM_X86_64) && __FreeBSD_version >= 500043
--# define FMTTIMET ""
--# else
--# define FMTTIMET "l"
--# endif
--#else
--# define FMTTIMET "l"
--#endif
-- LOG(4, ("access: %"FMTTIMET"d/%"FMT64"u \nwrite: %"FMTTIMET"d/%"FMT64"u \n"
-- "attr: %"FMTTIMET"d/%"FMT64"u\n",
-- stats->st_atime, attr->accessTime, stats->st_mtime, attr->writeTime,
-- stats->st_ctime, attr->attrChangeTime));
--#undef FMTTIMET
-+ LOG(4, ("access: %jd/%"FMT64"u \nwrite: %jd/%"FMT64"u \n"
-+ "attr: %jd/%"FMT64"u\n",
-+ (intmax_t)stats->st_atime, attr->accessTime,
-+ (intmax_t)stats->st_mtime, attr->writeTime,
-+ (intmax_t)stats->st_ctime, attr->attrChangeTime));
-
- attr->userId = stats->st_uid;
- attr->groupId = stats->st_gid;
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch b/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch
deleted file mode 100644
index 9cf54f6f4..000000000
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch
+++ /dev/null
@@ -1,742 +0,0 @@
-From 8793466326dd10b0d2dbb83c64beff5cc8c0fc7d Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 13 Jun 2018 23:11:58 -0700
-Subject: [PATCH] Rename poll.h to vm_poll.h
-
-musl libc's system headers pulls in open-vm-tools' poll.h. To avoid this
-we rename poll.h to vm_poll.h.
-
-Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- open-vm-tools/lib/asyncsocket/asyncsocket.c | 2 +-
- open-vm-tools/lib/hgfsServer/hgfsServer.c | 2 +-
- open-vm-tools/lib/include/asyncsocket.h | 2 +-
- open-vm-tools/lib/include/pollImpl.h | 2 +-
- open-vm-tools/lib/include/{poll.h => vm_poll.h} | 2 +-
- open-vm-tools/lib/rpcIn/rpcin.c | 2 +-
- .../services/plugins/grabbitmqProxy/grabbitmqProxyPlugin.c | 2 +-
- 7 files changed, 7 insertions(+), 7 deletions(-)
- rename open-vm-tools/lib/include/{poll.h => vm_poll.h} (99%)
-
---- a/open-vm-tools/lib/asyncsocket/asyncsocket.c
-+++ b/open-vm-tools/lib/asyncsocket/asyncsocket.c
-@@ -86,7 +86,7 @@
- #include "random.h"
- #include "asyncsocket.h"
- #include "asyncSocketBase.h"
--#include "poll.h"
-+#include "vm_poll.h"
- #include "log.h"
- #include "err.h"
- #include "hostinfo.h"
---- a/open-vm-tools/lib/hgfsServer/hgfsServer.c
-+++ b/open-vm-tools/lib/hgfsServer/hgfsServer.c
-@@ -48,7 +48,7 @@
- #include "hgfsServerOplock.h"
- #include "hgfsDirNotify.h"
- #include "userlock.h"
--#include "poll.h"
-+#include "vm_poll.h"
- #include "mutexRankLib.h"
- #include "vm_basic_asm.h"
- #include "unicodeOperations.h"
---- a/open-vm-tools/lib/include/asyncsocket.h
-+++ b/open-vm-tools/lib/include/asyncsocket.h
-@@ -164,7 +164,7 @@ typedef struct AsyncSocket AsyncSocket;
- * Or the client can specify its favorite poll class and locking behavior.
- * Use of IVmdbPoll is only supported for regular sockets and for Attach.
- */
--#include "poll.h"
-+#include "vm_poll.h"
- struct IVmdbPoll;
- typedef struct AsyncSocketPollParams {
- int flags; /* Default 0, only POLL_FLAG_NO_BULL is valid */
---- a/open-vm-tools/lib/include/pollImpl.h
-+++ b/open-vm-tools/lib/include/pollImpl.h
-@@ -44,7 +44,7 @@
- #define INCLUDE_ALLOW_USERLEVEL
- #include "includeCheck.h"
-
--#include "poll.h"
-+#include "vm_poll.h"
- #include "vm_basic_asm.h"
-
- #if defined(__cplusplus)
---- a/open-vm-tools/lib/include/poll.h
-+++ /dev/null
-@@ -1,330 +0,0 @@
--/*********************************************************
-- * Copyright (C) 1998-2018 VMware, Inc. All rights reserved.
-- *
-- * This program is free software; you can redistribute it and/or modify it
-- * under the terms of the GNU Lesser General Public License as published
-- * by the Free Software Foundation version 2.1 and no later version.
-- *
-- * This program is distributed in the hope that it will be useful, but
-- * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-- * or FITNESS FOR A PARTICULAR PURPOSE. See the Lesser GNU General Public
-- * License for more details.
-- *
-- * You should have received a copy of the GNU Lesser General Public License
-- * along with this program; if not, write to the Free Software Foundation, Inc.,
-- * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-- *
-- *********************************************************/
--
--/*********************************************************
-- * The contents of this file are subject to the terms of the Common
-- * Development and Distribution License (the "License") version 1.0
-- * and no later version. You may not use this file except in
-- * compliance with the License.
-- *
-- * You can obtain a copy of the License at
-- * http://www.opensource.org/licenses/cddl1.php
-- *
-- * See the License for the specific language governing permissions
-- * and limitations under the License.
-- *
-- *********************************************************/
--
--
--#ifndef _POLL_H_
--#define _POLL_H_
--
--#define INCLUDE_ALLOW_USERLEVEL
--#define INCLUDE_ALLOW_VMCORE
--#include "includeCheck.h"
--
--#include "vm_basic_types.h"
--#include "vm_basic_defs.h"
--#include "vmware.h"
--#include "userlock.h"
--
--#if defined(__cplusplus)
--extern "C" {
--#endif
--
--#ifdef _WIN32
--#define HZ 100
--#elif defined linux
--#include <asm/param.h>
--#elif __APPLE__
--#include <TargetConditionals.h>
--/*
-- * Old SDKs don't define TARGET_OS_IPHONE at all.
-- * New ones define it to 0 on Mac OS X, 1 on iOS.
-- */
--#if !defined(TARGET_OS_IPHONE) || TARGET_OS_IPHONE == 0
--#include <sys/kernel.h>
--#endif
--#include <sys/poll.h>
--#define HZ 100
--#endif
--#ifdef __ANDROID__
--/*
-- * <poll.h> of android should be included, but its name is same
-- * with this file. So its content is put here to avoid conflict.
-- */
--#include <asm/poll.h>
--#define HZ 100
--typedef unsigned int nfds_t;
--int poll(struct pollfd *, nfds_t, long);
--#endif
--
--
--/*
-- * Poll event types: each type has a different reason for firing,
-- * or condition that must be met before firing.
-- */
--
--typedef enum {
-- /*
-- * Actual Poll queue types against which you can register callbacks.
-- */
-- POLL_VIRTUALREALTIME = -1, /* Negative because it doesn't have its own Q */
-- POLL_VTIME = 0,
-- POLL_REALTIME,
-- POLL_DEVICE,
-- POLL_MAIN_LOOP,
-- POLL_NUM_QUEUES
--} PollEventType;
--
--
--/*
-- * Classes of events
-- *
-- * These are the predefined classes. More can be declared
-- * with Poll_AllocClass().
-- */
--
--typedef enum PollClass {
-- POLL_CLASS_MAIN,
-- POLL_CLASS_PAUSE,
-- POLL_CLASS_IPC,
-- POLL_CLASS_CPT,
-- POLL_CLASS_MKS,
-- POLL_FIXED_CLASSES,
-- POLL_DEFAULT_FIXED_CLASSES,
-- /* Size enum to maximum */
-- POLL_MAX_CLASSES = 31,
--} PollClass;
--
--/*
-- * Do not use; Special pseudo private poll class supported by
-- * PollDefault only
-- */
--#define POLL_DEFAULT_CLASS_NET POLL_FIXED_CLASSES
--#define POLL_DEFAULT_CS_NET PollClassSet_Singleton(POLL_DEFAULT_CLASS_NET)
--
--/*
-- * Each callback is registered in a set of classes
-- */
--
--typedef struct PollClassSet {
-- uintptr_t bits;
--} PollClassSet;
--
--/* An empty PollClassSet. */
--static INLINE PollClassSet
--PollClassSet_Empty(void)
--{
-- PollClassSet set = { 0 };
-- return set;
--}
--
--/* A PollClassSet with the single member. */
--static INLINE PollClassSet
--PollClassSet_Singleton(PollClass c)
--{
-- PollClassSet s = PollClassSet_Empty();
--
-- ASSERT_ON_COMPILE(POLL_MAX_CLASSES < sizeof s.bits * 8);
-- ASSERT(c < POLL_MAX_CLASSES);
--
-- s.bits = CONST3264U(1) << c;
-- return s;
--}
--
--/* Combine two PollClassSets. */
--static INLINE PollClassSet
--PollClassSet_Union(PollClassSet lhs, PollClassSet rhs)
--{
-- PollClassSet set;
-- set.bits = lhs.bits | rhs.bits;
-- return set;
--}
--
--/* Add single class to PollClassSet. */
--static INLINE PollClassSet
--PollClassSet_Include(PollClassSet set, PollClass c)
--{
-- return PollClassSet_Union(set, PollClassSet_Singleton(c));
--}
--
--
--#define POLL_CS_MAIN PollClassSet_Singleton(POLL_CLASS_MAIN)
--#define POLL_CS_PAUSE PollClassSet_Union(POLL_CS_MAIN, \
-- PollClassSet_Singleton(POLL_CLASS_PAUSE))
--#define POLL_CS_CPT PollClassSet_Union(POLL_CS_PAUSE, \
-- PollClassSet_Singleton(POLL_CLASS_CPT))
--#define POLL_CS_IPC PollClassSet_Union(POLL_CS_CPT, \
-- PollClassSet_Singleton(POLL_CLASS_IPC))
--#define POLL_CS_VMDB POLL_CS_PAUSE /* POLL_CLASS_VMDB is retired */
--#define POLL_CS_MKS PollClassSet_Singleton(POLL_CLASS_MKS)
--/*
-- * DANGER. You don't need POLL_CS_ALWAYS. Really. So don't use it.
-- */
--#define POLL_CS_ALWAYS PollClassSet_Union(POLL_CS_CPT, POLL_CS_IPC)
--
--/*
-- * Poll class-set taxonomy:
-- * POLL_CS_MAIN
-- * - Unless you NEED another class, use POLL_CS_MAIN.
-- * POLL_CS_PAUSE
-- * - For callbacks that must occur even if the guest is paused.
-- * Most VMDB or Foundry commands are in this category.
-- * POLL_CS_CPT
-- * - Only for callbacks which can trigger intermediate Checkpoint
-- * transitions.
-- * The ONLY such callback is Migrate.
-- * POLL_CS_IPC
-- * - Only for callbacks which can contain Msg_(Post|Hint|Question)
-- * responses, and for signal handlers (why)?
-- * Vigor, VMDB, and Foundry can contain Msg_* responses.
-- * POLL_CS_MKS
-- * - Callback runs in MKS thread.
-- * POLL_CS_ALWAYS
-- * - Only for events that must be processed immediately.
-- * The ONLY such callback is OvhdMemVmxSizeCheck.
-- */
--
--
--/*
-- * Poll_Callback flags
-- */
--
--#define POLL_FLAG_PERIODIC 0x01 // keep after firing
--#define POLL_FLAG_REMOVE_AT_POWEROFF 0x02 // self-explanatory
--#define POLL_FLAG_READ 0x04 // device is ready for reading
--#define POLL_FLAG_WRITE 0x08 // device is ready for writing
--#define POLL_FLAG_SOCKET 0x10 // device is a Windows socket
--#define POLL_FLAG_NO_BULL 0x20 // callback does its own locking
--#define POLL_FLAG_WINSOCK 0x40 // Winsock style write events
--#define POLL_FLAG_FD 0x80 // device is a Windows file descriptor.
--#define POLL_FLAG_ACCEPT_INVALID_FDS 0x100 // For broken 3rd party libs, e.g. curl
--#define POLL_FLAG_THUNK_TO_WND 0x200 // thunk callback to window message loop
--
--
--typedef void (*PollerFunction)(void *clientData);
--typedef void (*PollerFireWrapper)(PollerFunction func,
-- void *funcData,
-- void *wrapperData);
--typedef Bool (*PollerErrorFn)(const char *errorStr);
--
--/*
-- * Initialisers:
-- *
-- * For the sake of convenience, we declare the initialisers
-- * for custom implmentations here, even though the actual
-- * implementations are distinct from the core poll code.
-- */
--
--typedef struct PollOptions {
-- Bool locked; // Use internal MXUser for locking
-- Bool allowFullQueue; // Don't assert when device event queue is full.
-- VThreadID windowsMsgThread; // thread that processes Windows messages
-- PollerFireWrapper fireWrapperFn; // optional; may be useful for stats
-- void *fireWrapperData; // optional
-- PollerErrorFn errorFn; // optional; called upon unrecoverable error
--} PollOptions;
--
--
--void Poll_InitDefault(void);
--void Poll_InitDefaultEx(const PollOptions *opts);
--void Poll_InitGtk(void); // On top of glib for Linux
--void Poll_InitCF(void); // On top of CoreFoundation for OSX
--
--
--/*
-- * Functions
-- */
--int Poll_SocketPair(Bool vmci, Bool stream, int fds[2]);
--void Poll_Loop(Bool loop, Bool *exit, PollClass c);
--void Poll_LoopTimeout(Bool loop, Bool *exit, PollClass c, int timeout);
--Bool Poll_LockingEnabled(void);
--void Poll_Exit(void);
--
--
--/*
-- * Poll_Callback adds a callback regardless of whether an identical one exists.
-- * The exception to this rule is POLL_DEVICE callbacks: there is a maximum of
-- * one read and one write callback per fd.
-- *
-- * Poll_CallbackRemove removes one callback. If there are multiple identical
-- * callbacks, which one is removed is an implementation detail. Note that in
-- * the case of POLL_DEVICE and POLL_REALTIME callbacks, the fd/delay used to
-- * create the callback is not specified when removing, so all callbacks
-- * of those types with the same flags, function, and clientData are considered
-- * "identical" even if their fd/delay differed.
-- */
--
--VMwareStatus Poll_Callback(PollClassSet classSet,
-- int flags,
-- PollerFunction f,
-- void *clientData,
-- PollEventType type,
-- PollDevHandle info, // fd/microsec delay
-- MXUserRecLock *lck);
--Bool Poll_CallbackRemove(PollClassSet classSet,
-- int flags,
-- PollerFunction f,
-- void *clientData,
-- PollEventType type);
--Bool Poll_CallbackRemoveOneByCB(PollClassSet classSet,
-- int flags,
-- PollerFunction f,
-- PollEventType type,
-- void **clientData);
--
--void Poll_NotifyChange(PollClassSet classSet);
--
--/*
-- * Wrappers for Poll_Callback and Poll_CallbackRemove that present
-- * simpler subsets of those interfaces.
-- */
--
--VMwareStatus Poll_CB_Device(PollerFunction f,
-- void *clientData,
-- PollDevHandle device,
-- Bool periodic);
--
--Bool Poll_CB_DeviceRemove(PollerFunction f,
-- void *clientData,
-- Bool periodic);
--
--
--VMwareStatus Poll_CB_RTime(PollerFunction f,
-- void *clientData,
-- int64 delay, // microseconds
-- Bool periodic,
-- MXUserRecLock *lock);
--
--Bool Poll_CB_RTimeRemove(PollerFunction f,
-- void *clientData,
-- Bool periodic);
--
--
--#ifdef _WIN32
--void Poll_SetPumpsWindowsMessages(Bool pumps);
--void Poll_SetWindowMessageRecipient(HWND hWnd, UINT msg, Bool alwaysThunk);
--Bool Poll_FireWndCallback(void *lparam);
--#endif
--
--#if defined(__cplusplus)
--} // extern "C"
--#endif
--
--#endif // _POLL_H_
---- /dev/null
-+++ b/open-vm-tools/lib/include/vm_poll.h
-@@ -0,0 +1,330 @@
-+/*********************************************************
-+ * Copyright (C) 1998-2018 VMware, Inc. All rights reserved.
-+ *
-+ * This program is free software; you can redistribute it and/or modify it
-+ * under the terms of the GNU Lesser General Public License as published
-+ * by the Free Software Foundation version 2.1 and no later version.
-+ *
-+ * This program is distributed in the hope that it will be useful, but
-+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-+ * or FITNESS FOR A PARTICULAR PURPOSE. See the Lesser GNU General Public
-+ * License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * along with this program; if not, write to the Free Software Foundation, Inc.,
-+ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-+ *
-+ *********************************************************/
-+
-+/*********************************************************
-+ * The contents of this file are subject to the terms of the Common
-+ * Development and Distribution License (the "License") version 1.0
-+ * and no later version. You may not use this file except in
-+ * compliance with the License.
-+ *
-+ * You can obtain a copy of the License at
-+ * http://www.opensource.org/licenses/cddl1.php
-+ *
-+ * See the License for the specific language governing permissions
-+ * and limitations under the License.
-+ *
-+ *********************************************************/
-+
-+
-+#ifndef _POLL_H_
-+#define _POLL_H_
-+
-+#define INCLUDE_ALLOW_USERLEVEL
-+#define INCLUDE_ALLOW_VMCORE
-+#include "includeCheck.h"
-+
-+#include "vm_basic_types.h"
-+#include "vm_basic_defs.h"
-+#include "vmware.h"
-+#include "userlock.h"
-+
-+#if defined(__cplusplus)
-+extern "C" {
-+#endif
-+
-+#ifdef _WIN32
-+#define HZ 100
-+#elif defined linux
-+#include <asm/param.h>
-+#elif __APPLE__
-+#include <TargetConditionals.h>
-+/*
-+ * Old SDKs don't define TARGET_OS_IPHONE at all.
-+ * New ones define it to 0 on Mac OS X, 1 on iOS.
-+ */
-+#if !defined(TARGET_OS_IPHONE) || TARGET_OS_IPHONE == 0
-+#include <sys/kernel.h>
-+#endif
-+#include <poll.h>
-+#define HZ 100
-+#endif
-+#ifdef __ANDROID__
-+/*
-+ * <poll.h> of android should be included, but its name is same
-+ * with this file. So its content is put here to avoid conflict.
-+ */
-+#include <asm/poll.h>
-+#define HZ 100
-+typedef unsigned int nfds_t;
-+int poll(struct pollfd *, nfds_t, long);
-+#endif
-+
-+
-+/*
-+ * Poll event types: each type has a different reason for firing,
-+ * or condition that must be met before firing.
-+ */
-+
-+typedef enum {
-+ /*
-+ * Actual Poll queue types against which you can register callbacks.
-+ */
-+ POLL_VIRTUALREALTIME = -1, /* Negative because it doesn't have its own Q */
-+ POLL_VTIME = 0,
-+ POLL_REALTIME,
-+ POLL_DEVICE,
-+ POLL_MAIN_LOOP,
-+ POLL_NUM_QUEUES
-+} PollEventType;
-+
-+
-+/*
-+ * Classes of events
-+ *
-+ * These are the predefined classes. More can be declared
-+ * with Poll_AllocClass().
-+ */
-+
-+typedef enum PollClass {
-+ POLL_CLASS_MAIN,
-+ POLL_CLASS_PAUSE,
-+ POLL_CLASS_IPC,
-+ POLL_CLASS_CPT,
-+ POLL_CLASS_MKS,
-+ POLL_FIXED_CLASSES,
-+ POLL_DEFAULT_FIXED_CLASSES,
-+ /* Size enum to maximum */
-+ POLL_MAX_CLASSES = 31,
-+} PollClass;
-+
-+/*
-+ * Do not use; Special pseudo private poll class supported by
-+ * PollDefault only
-+ */
-+#define POLL_DEFAULT_CLASS_NET POLL_FIXED_CLASSES
-+#define POLL_DEFAULT_CS_NET PollClassSet_Singleton(POLL_DEFAULT_CLASS_NET)
-+
-+/*
-+ * Each callback is registered in a set of classes
-+ */
-+
-+typedef struct PollClassSet {
-+ uintptr_t bits;
-+} PollClassSet;
-+
-+/* An empty PollClassSet. */
-+static INLINE PollClassSet
-+PollClassSet_Empty(void)
-+{
-+ PollClassSet set = { 0 };
-+ return set;
-+}
-+
-+/* A PollClassSet with the single member. */
-+static INLINE PollClassSet
-+PollClassSet_Singleton(PollClass c)
-+{
-+ PollClassSet s = PollClassSet_Empty();
-+
-+ ASSERT_ON_COMPILE(POLL_MAX_CLASSES < sizeof s.bits * 8);
-+ ASSERT(c < POLL_MAX_CLASSES);
-+
-+ s.bits = CONST3264U(1) << c;
-+ return s;
-+}
-+
-+/* Combine two PollClassSets. */
-+static INLINE PollClassSet
-+PollClassSet_Union(PollClassSet lhs, PollClassSet rhs)
-+{
-+ PollClassSet set;
-+ set.bits = lhs.bits | rhs.bits;
-+ return set;
-+}
-+
-+/* Add single class to PollClassSet. */
-+static INLINE PollClassSet
-+PollClassSet_Include(PollClassSet set, PollClass c)
-+{
-+ return PollClassSet_Union(set, PollClassSet_Singleton(c));
-+}
-+
-+
-+#define POLL_CS_MAIN PollClassSet_Singleton(POLL_CLASS_MAIN)
-+#define POLL_CS_PAUSE PollClassSet_Union(POLL_CS_MAIN, \
-+ PollClassSet_Singleton(POLL_CLASS_PAUSE))
-+#define POLL_CS_CPT PollClassSet_Union(POLL_CS_PAUSE, \
-+ PollClassSet_Singleton(POLL_CLASS_CPT))
-+#define POLL_CS_IPC PollClassSet_Union(POLL_CS_CPT, \
-+ PollClassSet_Singleton(POLL_CLASS_IPC))
-+#define POLL_CS_VMDB POLL_CS_PAUSE /* POLL_CLASS_VMDB is retired */
-+#define POLL_CS_MKS PollClassSet_Singleton(POLL_CLASS_MKS)
-+/*
-+ * DANGER. You don't need POLL_CS_ALWAYS. Really. So don't use it.
-+ */
-+#define POLL_CS_ALWAYS PollClassSet_Union(POLL_CS_CPT, POLL_CS_IPC)
-+
-+/*
-+ * Poll class-set taxonomy:
-+ * POLL_CS_MAIN
-+ * - Unless you NEED another class, use POLL_CS_MAIN.
-+ * POLL_CS_PAUSE
-+ * - For callbacks that must occur even if the guest is paused.
-+ * Most VMDB or Foundry commands are in this category.
-+ * POLL_CS_CPT
-+ * - Only for callbacks which can trigger intermediate Checkpoint
-+ * transitions.
-+ * The ONLY such callback is Migrate.
-+ * POLL_CS_IPC
-+ * - Only for callbacks which can contain Msg_(Post|Hint|Question)
-+ * responses, and for signal handlers (why)?
-+ * Vigor, VMDB, and Foundry can contain Msg_* responses.
-+ * POLL_CS_MKS
-+ * - Callback runs in MKS thread.
-+ * POLL_CS_ALWAYS
-+ * - Only for events that must be processed immediately.
-+ * The ONLY such callback is OvhdMemVmxSizeCheck.
-+ */
-+
-+
-+/*
-+ * Poll_Callback flags
-+ */
-+
-+#define POLL_FLAG_PERIODIC 0x01 // keep after firing
-+#define POLL_FLAG_REMOVE_AT_POWEROFF 0x02 // self-explanatory
-+#define POLL_FLAG_READ 0x04 // device is ready for reading
-+#define POLL_FLAG_WRITE 0x08 // device is ready for writing
-+#define POLL_FLAG_SOCKET 0x10 // device is a Windows socket
-+#define POLL_FLAG_NO_BULL 0x20 // callback does its own locking
-+#define POLL_FLAG_WINSOCK 0x40 // Winsock style write events
-+#define POLL_FLAG_FD 0x80 // device is a Windows file descriptor.
-+#define POLL_FLAG_ACCEPT_INVALID_FDS 0x100 // For broken 3rd party libs, e.g. curl
-+#define POLL_FLAG_THUNK_TO_WND 0x200 // thunk callback to window message loop
-+
-+
-+typedef void (*PollerFunction)(void *clientData);
-+typedef void (*PollerFireWrapper)(PollerFunction func,
-+ void *funcData,
-+ void *wrapperData);
-+typedef Bool (*PollerErrorFn)(const char *errorStr);
-+
-+/*
-+ * Initialisers:
-+ *
-+ * For the sake of convenience, we declare the initialisers
-+ * for custom implmentations here, even though the actual
-+ * implementations are distinct from the core poll code.
-+ */
-+
-+typedef struct PollOptions {
-+ Bool locked; // Use internal MXUser for locking
-+ Bool allowFullQueue; // Don't assert when device event queue is full.
-+ VThreadID windowsMsgThread; // thread that processes Windows messages
-+ PollerFireWrapper fireWrapperFn; // optional; may be useful for stats
-+ void *fireWrapperData; // optional
-+ PollerErrorFn errorFn; // optional; called upon unrecoverable error
-+} PollOptions;
-+
-+
-+void Poll_InitDefault(void);
-+void Poll_InitDefaultEx(const PollOptions *opts);
-+void Poll_InitGtk(void); // On top of glib for Linux
-+void Poll_InitCF(void); // On top of CoreFoundation for OSX
-+
-+
-+/*
-+ * Functions
-+ */
-+int Poll_SocketPair(Bool vmci, Bool stream, int fds[2]);
-+void Poll_Loop(Bool loop, Bool *exit, PollClass c);
-+void Poll_LoopTimeout(Bool loop, Bool *exit, PollClass c, int timeout);
-+Bool Poll_LockingEnabled(void);
-+void Poll_Exit(void);
-+
-+
-+/*
-+ * Poll_Callback adds a callback regardless of whether an identical one exists.
-+ * The exception to this rule is POLL_DEVICE callbacks: there is a maximum of
-+ * one read and one write callback per fd.
-+ *
-+ * Poll_CallbackRemove removes one callback. If there are multiple identical
-+ * callbacks, which one is removed is an implementation detail. Note that in
-+ * the case of POLL_DEVICE and POLL_REALTIME callbacks, the fd/delay used to
-+ * create the callback is not specified when removing, so all callbacks
-+ * of those types with the same flags, function, and clientData are considered
-+ * "identical" even if their fd/delay differed.
-+ */
-+
-+VMwareStatus Poll_Callback(PollClassSet classSet,
-+ int flags,
-+ PollerFunction f,
-+ void *clientData,
-+ PollEventType type,
-+ PollDevHandle info, // fd/microsec delay
-+ MXUserRecLock *lck);
-+Bool Poll_CallbackRemove(PollClassSet classSet,
-+ int flags,
-+ PollerFunction f,
-+ void *clientData,
-+ PollEventType type);
-+Bool Poll_CallbackRemoveOneByCB(PollClassSet classSet,
-+ int flags,
-+ PollerFunction f,
-+ PollEventType type,
-+ void **clientData);
-+
-+void Poll_NotifyChange(PollClassSet classSet);
-+
-+/*
-+ * Wrappers for Poll_Callback and Poll_CallbackRemove that present
-+ * simpler subsets of those interfaces.
-+ */
-+
-+VMwareStatus Poll_CB_Device(PollerFunction f,
-+ void *clientData,
-+ PollDevHandle device,
-+ Bool periodic);
-+
-+Bool Poll_CB_DeviceRemove(PollerFunction f,
-+ void *clientData,
-+ Bool periodic);
-+
-+
-+VMwareStatus Poll_CB_RTime(PollerFunction f,
-+ void *clientData,
-+ int64 delay, // microseconds
-+ Bool periodic,
-+ MXUserRecLock *lock);
-+
-+Bool Poll_CB_RTimeRemove(PollerFunction f,
-+ void *clientData,
-+ Bool periodic);
-+
-+
-+#ifdef _WIN32
-+void Poll_SetPumpsWindowsMessages(Bool pumps);
-+void Poll_SetWindowMessageRecipient(HWND hWnd, UINT msg, Bool alwaysThunk);
-+Bool Poll_FireWndCallback(void *lparam);
-+#endif
-+
-+#if defined(__cplusplus)
-+} // extern "C"
-+#endif
-+
-+#endif // _POLL_H_
---- a/open-vm-tools/lib/rpcIn/rpcin.c
-+++ b/open-vm-tools/lib/rpcIn/rpcin.c
-@@ -57,7 +57,7 @@
-
- #if defined(VMTOOLS_USE_VSOCKET)
- # include <glib.h>
--# include "poll.h"
-+# include "vm_poll.h"
- # include "asyncsocket.h"
- # include "vmci_defs.h"
- #include "dataMap.h"
diff --git a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch b/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch
deleted file mode 100644
index 0a1d00873..000000000
--- a/meta-openembedded/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 18eea61a7a768c6c3b57c6683c7bef7049f0f6ab Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 13 Jun 2018 23:37:09 -0700
-Subject: [PATCH] Use uintmax_t for handling rlim_t
-
-rlimit types are not representable with long or long long
-formats, therefore use uintmax_t to typecast rlim_t types
-and use %j to print it
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- open-vm-tools/lib/hgfsServer/hgfsServerLinux.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
-index 0e6351a9..a2ee1740 100644
---- a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
-+++ b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
-@@ -5294,8 +5294,8 @@ HgfsWriteCheckIORange(off_t offset, // IN:
- goto exit;
- }
-
-- LOG(6, ("%s: File Size limits: 0x%"FMT64"x 0x%"FMT64"x\n",
-- __FUNCTION__, fileSize.rlim_cur, fileSize.rlim_max));
-+ LOG(6, ("%s: File Size limits: 0x%jx 0x%jx\n",
-+ __FUNCTION__, (uintmax_t)fileSize.rlim_cur, (uintmax_t)fileSize.rlim_max));
-
- /*
- * Check the offset is within the file size range.
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Fix-building-opencv-using-gcc-11.x-19244.patch b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Fix-building-opencv-using-gcc-11.x-19244.patch
deleted file mode 100644
index ce6499bfc..000000000
--- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Fix-building-opencv-using-gcc-11.x-19244.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 67e1a5400383543b28fc69eb09c9429cb9d8c026 Mon Sep 17 00:00:00 2001
-From: Your Name <you@example.com>
-Date: Sat, 2 Jan 2021 17:43:11 +0000
-Subject: [PATCH] Fix building opencv using gcc 11.x #19244
-
-Add missing `#include <thread>` in modules/gapi/test/test_precomp.hpp
-
-Upstream-Status: Backport [https://github.com/opencv/opencv/pull/19247]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- modules/gapi/test/test_precomp.hpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/modules/gapi/test/test_precomp.hpp b/modules/gapi/test/test_precomp.hpp
-index 7b3c695443..e92b1d03bf 100644
---- a/modules/gapi/test/test_precomp.hpp
-+++ b/modules/gapi/test/test_precomp.hpp
-@@ -11,6 +11,7 @@
- #define __OPENCV_GAPI_TEST_PRECOMP_HPP__
-
- #include <cstdint>
-+#include <thread>
- #include <vector>
-
- #include <opencv2/ts.hpp>
---
-2.30.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch
new file mode 100644
index 000000000..7b2c4100a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch
@@ -0,0 +1,44 @@
+From ffe20fc4ec46c6b491eff29a38f90686d4d035f6 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Mon, 12 Apr 2021 20:37:40 +0000
+Subject: [PATCH] sfm: link with Glog_LIBS
+
+* in 4.5.0 there was explicit linkage with GLOG_LIBRARY, but since 4.5.1 with:
+ https://github.com/opencv/opencv_contrib/commit/23ee62a19b7a3e50d6dbf295359d8b1aff2e03fd
+
+ it's gone, probably because Glog_FOUND is already set from Ceres,
+ but then GLOG_LIBRARIES is empty in LIBMV_LIGHT_LIBS and build with gold fails:
+
+FAILED: bin/example_tutorial_perspective_correction
+: && TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot-native/usr/bin/x86_64-oe-linux/x86_64-oe-linux-g++ -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -ITOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/git/include -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0=/usr/src/debug/opencv/4.5.2-r0 -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0=/usr/src/debug/opencv/4.5.2-r0 -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot= -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot-native= -fvisibility-inlines-hidden -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -ITOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/git/include -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections -msse -msse2 -msse3 -mssse3 -DNDEBUG -DNDEBUG -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -ITOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/git/include -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0=/usr/src/debug/opencv/4.5.2-r0 -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0=/usr/src/debug/opencv/4.5.2-r0 -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot= -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot-native= -fvisibility-inlines-hidden -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -ITOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/git/include -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now -Wl,--gc-sections -Wl,--as-needed samples/cpp/CMakeFiles/example_tutorial_perspective_correction.dir/tutorial_code/features2D/Homography/perspective_correction.cpp.o -o bin/example_tutorial_perspective_correction -ldl -lm -lpthread -lrt lib/libopencv_gapi.so.4.5.2 lib/libopencv_stitching.so.4.5.2 lib/libopencv_ts.so.4.5.2 lib/libopencv_alphamat.so.4.5.2 lib/libopencv_aruco.so.4.5.2 lib/libopencv_bgsegm.so.4.5.2 lib/libopencv_bioinspired.so.4.5.2 lib/libopencv_ccalib.so.4.5.2 lib/libopencv_dnn_objdetect.so.4.5.2 lib/libopencv_dnn_superres.so.4.5.2 lib/libopencv_dpm.so.4.5.2 lib/libopencv_face.so.4.5.2 lib/libopencv_fuzzy.so.4.5.2 lib/libopencv_hfs.so.4.5.2 lib/libopencv_img_hash.so.4.5.2 lib/libopencv_intensity_transform.so.4.5.2 lib/libopencv_line_descriptor.so.4.5.2 lib/libopencv_mcc.so.4.5.2 lib/libopencv_quality.so.4.5.2 lib/libopencv_rapid.so.4.5.2 lib/libopencv_reg.so.4.5.2 lib/libopencv_rgbd.so.4.5.2 lib/libopencv_saliency.so.4.5.2 lib/libopencv_sfm.so.4.5.2 lib/libopencv_stereo.so.4.5.2 lib/libopencv_structured_light.so.4.5.2 lib/libopencv_superres.so.4.5.2 lib/libopencv_surface_matching.so.4.5.2 lib/libopencv_tracking.so.4.5.2 lib/libopencv_videostab.so.4.5.2 lib/libopencv_wechat_qrcode.so.4.5.2 lib/libopencv_xfeatures2d.so.4.5.2 lib/libopencv_xobjdetect.so.4.5.2 lib/libopencv_xphoto.so.4.5.2 lib/libopencv_shape.so.4.5.2 lib/libopencv_highgui.so.4.5.2 lib/libopencv_datasets.so.4.5.2 lib/libopencv_ml.so.4.5.2 lib/libopencv_plot.so.4.5.2 lib/libopencv_phase_unwrapping.so.4.5.2 lib/libopencv_optflow.so.4.5.2 lib/libopencv_ximgproc.so.4.5.2 lib/libopencv_videoio.so.4.5.2 lib/libopencv_video.so.4.5.2 lib/libopencv_dnn.so.4.5.2 lib/libopencv_imgcodecs.so.4.5.2 lib/libopencv_objdetect.so.4.5.2 lib/libopencv_calib3d.so.4.5.2 lib/libopencv_features2d.so.4.5.2 lib/libopencv_flann.so.4.5.2 lib/libopencv_photo.so.4.5.2 lib/libopencv_imgproc.so.4.5.2 lib/libopencv_core.so.4.5.2 -Wl,-rpath-link,TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/build/lib && :
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessage::LogMessage(char const*, int)'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessage::stream()'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessage::~LogMessage()'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::kLogSiteUninitialized'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'fLI::FLAGS_v'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::InitVLOG3__(int**, int*, char const*, int)'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessageFatal::LogMessageFatal(char const*, int)'
+lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessageFatal::~LogMessageFatal()'
+collect2: error: ld returned 1 exit status
+
+ Add Glog_LIBS which is set to the same value as GLOG_LIBRARIES used to be.
+
+Upstream-Status: Submitted [https://github.com/opencv/opencv_contrib/pull/2923]
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ modules/sfm/CMakeLists.txt | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/modules/sfm/CMakeLists.txt b/modules/sfm/CMakeLists.txt
+index 045a1fe6e..ee7cecdac 100644
+--- a/modules/sfm/CMakeLists.txt
++++ b/modules/sfm/CMakeLists.txt
+@@ -84,6 +84,7 @@ set(LIBMV_LIGHT_LIBS
+ multiview
+ numeric
+ ${GLOG_LIBRARIES}
++ ${Glog_LIBS}
+ ${GFLAGS_LIBRARIES}
+ )
+
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.1.bb b/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb
index d87e140ba..311355bd7 100644
--- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb
@@ -10,12 +10,13 @@ ARM_INSTRUCTION_SET_armv5 = "arm"
DEPENDS = "libtool swig-native bzip2 zlib glib-2.0 libwebp"
-SRCREV_opencv = "1363496c1106606684d40447f5d1149b2c66a9f8"
-SRCREV_contrib = "b91a781cbc1285d441aa682926d93d8c23678b0b"
+SRCREV_opencv = "69357b1e88680658a07cffde7678a4d697469f03"
+SRCREV_contrib = "f5d7f6712d4ff229ba4f45cf79dfd11c557d56fd"
SRCREV_ipp = "a56b6ac6f030c312b2dce17430eef13aed9af274"
SRCREV_boostdesc = "34e4206aef44d50e6bbcd0ab06354b52e7466d26"
SRCREV_vgg = "fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d"
SRCREV_face = "8afa57abc8229d611c4937165d20e2a2d9fc5a12"
+SRCREV_wechat-qrcode = "a8b69ccc738421293254aec5ddb38bd523503252"
def ipp_filename(d):
import re
@@ -43,13 +44,14 @@ SRC_URI = "git://github.com/opencv/opencv.git;name=opencv \
git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_boostdesc_20161012;destsuffix=boostdesc;name=boostdesc \
git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_vgg_20160317;destsuffix=vgg;name=vgg \
git://github.com/opencv/opencv_3rdparty.git;branch=contrib_face_alignment_20170818;destsuffix=face;name=face \
+ git://github.com/WeChatCV/opencv_3rdparty.git;branch=wechat_qrcode;destsuffix=wechat_qrcode;name=wechat-qrcode \
file://0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch \
file://0003-To-fix-errors-as-following.patch \
file://0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch \
file://0001-Dont-use-isystem.patch \
file://download.patch \
file://0001-Make-ts-module-external.patch \
- file://0001-Fix-building-opencv-using-gcc-11.x-19244.patch \
+ file://0001-sfm-link-with-Glog_LIBS.patch;patchdir=../contrib \
"
SRC_URI_append_riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib"
@@ -78,6 +80,8 @@ do_unpack_extra() {
cache xfeatures2d/boostdesc ${WORKDIR}/boostdesc/*.i
cache xfeatures2d/vgg ${WORKDIR}/vgg/*.i
cache data ${WORKDIR}/face/*.dat
+ cache wechat_qrcode ${WORKDIR}/wechat_qrcode/*.caffemodel
+ cache wechat_qrcode ${WORKDIR}/wechat_qrcode/*.prototxt
}
addtask unpack_extra after do_unpack before do_patch
diff --git a/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.57.bb b/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.58.bb
index 7c0460067..c5274aa39 100644
--- a/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.57.bb
+++ b/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.58.bb
@@ -25,8 +25,8 @@ SRC_URI = "http://www.openldap.org/software/download/OpenLDAP/openldap-release/$
file://remove-user-host-pwd-from-version.patch \
"
-SRC_URI[md5sum] = "e3349456c3a66e5e6155be7ddc3f042c"
-SRC_URI[sha256sum] = "c7ba47e1e6ecb5b436f3d43281df57abeffa99262141aec822628bc220f6b45a"
+SRC_URI[md5sum] = "c203d735ba69976e5b28dc39006f29b5"
+SRC_URI[sha256sum] = "57b59254be15d0bf6a9ab3d514c1c05777b02123291533134a87c94468f8f47b"
DEPENDS = "util-linux groff-native"
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Migrate-to-use-g_memdup2.patch b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Migrate-to-use-g_memdup2.patch
new file mode 100644
index 000000000..ceb48d21f
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe/0001-Migrate-to-use-g_memdup2.patch
@@ -0,0 +1,192 @@
+From 51c95a23bff3a024dc19e3127ca751e1458be0f0 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 5 Apr 2021 11:36:50 -0700
+Subject: [PATCH] Migrate to use g_memdup2
+
+g_memdup has been deprecated for long and latest glib-2.0 2.68+ has
+turned it int an error to use old function.
+
+The fall-back to g_memdup isn't needed because pidgin provides g_memdup2
+in pidgin-sipe/1.25.0-r0/recipe-sysroot/usr/include/libpurple/glibcompat.h
+based on glib-2.0 version:
+ /* Backport the static inline version of g_memdup2 if we don't have g_memdup2.
+ * see https://mail.gnome.org/archives/desktop-devel-list/2021-February/msg00000.html
+ * for more information.
+ */
+ #if !GLIB_CHECK_VERSION(2, 67, 3)
+ static inline gpointer
+ g_memdup2(gconstpointer mem, gsize byte_size) {
+ gpointer new_mem = NULL;
+
+ if(mem && byte_size != 0) {
+ new_mem = g_malloc (byte_size);
+ memcpy (new_mem, mem, byte_size);
+ }
+
+ return new_mem;
+ }
+ #endif /* !GLIB_CHECK_VERSION(2, 67, 3) */
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/api/sipe-common.h | 3 +++
+ src/core/sip-sec-gssapi.c | 4 ++--
+ src/core/sip-sec-ntlm.c | 12 ++++++------
+ src/core/sip-sec-tls-dsk.c | 4 ++--
+ src/core/sipe-media.c | 2 +-
+ src/core/sipe-tls-tester.c | 2 +-
+ src/core/sipe-tls.c | 4 ++--
+ src/telepathy/telepathy-protocol.c | 2 +-
+ 8 files changed, 18 insertions(+), 15 deletions(-)
+
+diff --git a/src/api/sipe-common.h b/src/api/sipe-common.h
+index c964f15..cab81e0 100644
+--- a/src/api/sipe-common.h
++++ b/src/api/sipe-common.h
+@@ -51,3 +51,6 @@
+ #ifdef _MSC_VER
+ typedef long ssize_t;
+ #endif
++
++// for g_memdup2
++#include <libpurple/glibcompat.h>
+diff --git a/src/core/sip-sec-gssapi.c b/src/core/sip-sec-gssapi.c
+index 873080f..4c63868 100644
+--- a/src/core/sip-sec-gssapi.c
++++ b/src/core/sip-sec-gssapi.c
+@@ -602,7 +602,7 @@ sip_sec_init_sec_context__gssapi(SipSecContext context,
+
+ out_buff->length = output_token.length;
+ if (out_buff->length)
+- out_buff->value = g_memdup(output_token.value, output_token.length);
++ out_buff->value = g_memdup2(output_token.value, output_token.length);
+ else
+ /* Special case: empty token */
+ out_buff->value = (guint8 *) g_strdup("");
+@@ -653,7 +653,7 @@ sip_sec_make_signature__gssapi(SipSecContext context,
+ return FALSE;
+ } else {
+ signature->length = output_token.length;
+- signature->value = g_memdup(output_token.value,
++ signature->value = g_memdup2(output_token.value,
+ output_token.length);
+ gss_release_buffer(&minor, &output_token);
+ return TRUE;
+diff --git a/src/core/sip-sec-ntlm.c b/src/core/sip-sec-ntlm.c
+index 2e2354f..1fa4daa 100644
+--- a/src/core/sip-sec-ntlm.c
++++ b/src/core/sip-sec-ntlm.c
+@@ -951,7 +951,7 @@ sip_sec_ntlm_parse_challenge(SipSecBuffer in_buff,
+
+ /* server challenge (nonce) */
+ if (server_challenge) {
+- *server_challenge = g_memdup(cmsg->nonce, 8);
++ *server_challenge = g_memdup2(cmsg->nonce, 8);
+ }
+
+ /* flags */
+@@ -984,7 +984,7 @@ sip_sec_ntlm_parse_challenge(SipSecBuffer in_buff,
+ *target_info_len = len;
+ }
+ if (target_info) {
+- *target_info = g_memdup(content, len);
++ *target_info = g_memdup2(content, len);
+ }
+ }
+ }
+@@ -1117,13 +1117,13 @@ sip_sec_ntlm_gen_authenticate(guchar **client_sign_key,
+ Set ServerSigningKey to SIGNKEY(ExportedSessionKey, "Server")
+ */
+ SIGNKEY(exported_session_key, TRUE, key);
+- *client_sign_key = g_memdup(key, 16);
++ *client_sign_key = g_memdup2(key, 16);
+ SIGNKEY(exported_session_key, FALSE, key);
+- *server_sign_key = g_memdup(key, 16);
++ *server_sign_key = g_memdup2(key, 16);
+ SEALKEY(neg_flags, exported_session_key, TRUE, key);
+- *client_seal_key = g_memdup(key, 16);
++ *client_seal_key = g_memdup2(key, 16);
+ SEALKEY(neg_flags, exported_session_key, FALSE, key);
+- *server_seal_key = g_memdup(key, 16);
++ *server_seal_key = g_memdup2(key, 16);
+ }
+
+ /* @TODO: */
+diff --git a/src/core/sip-sec-tls-dsk.c b/src/core/sip-sec-tls-dsk.c
+index 70433ea..2d3f2db 100644
+--- a/src/core/sip-sec-tls-dsk.c
++++ b/src/core/sip-sec-tls-dsk.c
+@@ -88,9 +88,9 @@ sip_sec_init_sec_context__tls_dsk(SipSecContext context,
+ /* copy key pair */
+ ctx->algorithm = state->algorithm;
+ ctx->key_length = state->key_length;
+- ctx->client_key = g_memdup(state->client_key,
++ ctx->client_key = g_memdup2(state->client_key,
+ state->key_length);
+- ctx->server_key = g_memdup(state->server_key,
++ ctx->server_key = g_memdup2(state->server_key,
+ state->key_length);
+
+ /* extract certicate expiration time */
+diff --git a/src/core/sipe-media.c b/src/core/sipe-media.c
+index e9c4b8a..936e31c 100644
+--- a/src/core/sipe-media.c
++++ b/src/core/sipe-media.c
+@@ -578,7 +578,7 @@ media_stream_to_sdpmedia(struct sipe_media_call_private *call_private,
+ // Set our key if encryption is enabled.
+ if (stream_private->encryption_key &&
+ encryption_policy != SIPE_ENCRYPTION_POLICY_REJECTED) {
+- sdpmedia->encryption_key = g_memdup(stream_private->encryption_key,
++ sdpmedia->encryption_key = g_memdup2(stream_private->encryption_key,
+ SIPE_SRTP_KEY_LEN);
+ sdpmedia->encryption_key_id = stream_private->encryption_key_id;
+ }
+diff --git a/src/core/sipe-tls-tester.c b/src/core/sipe-tls-tester.c
+index e80d715..5fbb5f8 100644
+--- a/src/core/sipe-tls-tester.c
++++ b/src/core/sipe-tls-tester.c
+@@ -155,7 +155,7 @@ static guchar *read_tls_record(int fd,
+ printf("received %d bytes from server\n", result);
+ record = g_new0(struct record, 1);
+ record->length = result;
+- record->msg = g_memdup(buffer, result);
++ record->msg = g_memdup2(buffer, result);
+ length += result;
+ fragments = g_slist_append(fragments, record);
+ }
+diff --git a/src/core/sipe-tls.c b/src/core/sipe-tls.c
+index b0235d5..020aedb 100644
+--- a/src/core/sipe-tls.c
++++ b/src/core/sipe-tls.c
+@@ -427,7 +427,7 @@ static guchar *sipe_tls_prf(SIPE_UNUSED_PARAMETER struct tls_internal_state *sta
+ gsize half = (secret_length + 1) / 2;
+ gsize newseed_length = label_length + seed_length;
+ /* secret: used as S1; secret2: last half of original secret (S2) */
+- guchar *secret2 = g_memdup(secret + secret_length - half, half);
++ guchar *secret2 = g_memdup2(secret + secret_length - half, half);
+ guchar *newseed = g_malloc(newseed_length);
+ guchar *md5, *dest;
+ guchar *sha1, *src;
+@@ -1525,7 +1525,7 @@ static struct tls_compiled_message *tls_client_key_exchange(struct tls_internal_
+
+ /* found all the required fields */
+ state->server_random.length = server_random->length;
+- state->server_random.buffer = g_memdup(server_random->data,
++ state->server_random.buffer = g_memdup2(server_random->data,
+ server_random->length);
+ tls_calculate_secrets(state);
+
+diff --git a/src/telepathy/telepathy-protocol.c b/src/telepathy/telepathy-protocol.c
+index f6e5337..1dde579 100644
+--- a/src/telepathy/telepathy-protocol.c
++++ b/src/telepathy/telepathy-protocol.c
+@@ -237,7 +237,7 @@ static void get_connection_details(SIPE_UNUSED_PARAMETER TpBaseProtocol *self,
+ SIPE_TYPE_SEARCH_MANAGER,
+ G_TYPE_INVALID
+ };
+- *channel_managers = g_memdup(types, sizeof(types));
++ *channel_managers = g_memdup2(types, sizeof(types));
+ }
+ if (icon_name)
+ *icon_name = g_strdup("im-" SIPE_TELEPATHY_DOMAIN);
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb
index f6b4c7cee..5a96bec90 100644
--- a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-sipe_1.25.0.bb
@@ -11,6 +11,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/sipe/pidgin-sipe-${PV}.tar.xz \
file://0001-sipe-consider-64bit-time_t-when-printing.patch \
file://0001-Align-structs-casts-with-time_t-elements-to-8byte-bo.patch \
file://0001-configure-Do-not-add-native-paths-to-pkgconfig-searc.patch \
+ file://0001-Migrate-to-use-g_memdup2.patch \
"
SRC_URI[md5sum] = "0e742f021dc8c3f17435aea05c3e0314"
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0001-configure.ac-fix-build-with-autoconf-2.71.patch b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0001-configure.ac-fix-build-with-autoconf-2.71.patch
deleted file mode 100644
index cfb0290f9..000000000
--- a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0001-configure.ac-fix-build-with-autoconf-2.71.patch
+++ /dev/null
@@ -1,229 +0,0 @@
-From e03d3ef5aadd582ebf7102b7d5785fed177a0cb1 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa@gmail.com>
-Date: Sun, 7 Feb 2021 13:25:29 +0100
-Subject: [PATCH] configure.ac: fix build with autoconf-2.71
-
-* fixes:
- | autoreconf: running: intltoolize --copy --force
- | ERROR: 'IT_PROG_INTLTOOL' must appear in configure.ac for intltool to work.
- | autoreconf: error: intltoolize failed with exit status: 1
-
-* replace AM_GLIB_GNU_GETTEXT with AM_GNU_GETTEXT as suggested in:
- https://wiki.gnome.org/Initiatives/GnomeGoals/GettextMigration
- https://blogs.gnome.org/jjardon/2010/10/08/use-upstream-gettext-instead-the-glib-one/
- because the former is causing issues with autoconf-2.71:
-
- -m4trace:configure.ac:266: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
- -You should run autoupdate.], [../autoconf-2.71/lib/autoconf/general.m4:2920: AC_TRY_LINK is expanded from...
- -../autoconf-2.71/lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
- -../autoconf-2.71/lib/autoconf/headers.m4:89: _AC_CHECK_HEADER_COMPILE is expanded from...
- -../autoconf-2.71/lib/autoconf/headers.m4:56: AC_CHECK_HEADER is expanded from...
- -pidgin/2.14.1-r0/recipe-sysroot-native/usr/share/aclocal/glib-gettext.m4:150: GLIB_WITH_NLS is expanded from...
- -pidgin/2.14.1-r0/recipe-sysroot-native/usr/share/aclocal/glib-gettext.m4:370: GLIB_GNU_GETTEXT is expanded from...
- -pidgin/2.14.1-r0/recipe-sysroot-native/usr/share/aclocal/glib-gettext.m4:470: AM_GLIB_GNU_GETTEXT is expanded from...
- -configure.ac:266: the top level])
- -m4trace:configure.ac:266: -1- m4_pattern_allow([^ENABLE_NLS$])
- -m4trace:configure.ac:266: -1- _m4_warn([obsolete], [The macro `AC_OUTPUT_COMMANDS' is obsolete.
- -You should run autoupdate.], [../autoconf-2.71/lib/autoconf/status.m4:1025: AC_OUTPUT_COMMANDS is expanded from...
- -pidgin/2.14.1-r0/recipe-sysroot-native/usr/share/aclocal/glib-gettext.m4:150: GLIB_WITH_NLS is expanded from...
- -pidgin/2.14.1-r0/recipe-sysroot-native/usr/share/aclocal/glib-gettext.m4:370: GLIB_GNU_GETTEXT is expanded from...
- -pidgin/2.14.1-r0/recipe-sysroot-native/usr/share/aclocal/glib-gettext.m4:470: AM_GLIB_GNU_GETTEXT is expanded from...
- -configure.ac:266: the top level])
-
- and then configure fails with:
-
- configure.ac:2621: error: `po/stamp-it' is already registered with AC_CONFIG_COMMANDS.
- autoconf-2.71/lib/autoconf/status.m4:1008: AC_CONFIG_COMMANDS is expanded from...
- configure.ac:2621: the top level
-
-* add AM_GNU_GETTEXT_VERSION as well to resolve warning with autoconf-2.71
- configure.ac: warning: AM_GNU_GETTEXT is used, but not AM_GNU_GETTEXT_VERSION or AM_GNU_GETTEXT_REQUIRE_VERSION
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
----
- ABOUT-NLS | 1 +
- Makefile.am | 6 +---
- configure.ac | 6 ++--
- pidgin/Makefile.am | 7 ++--
- po/Makevars | 82 ++++++++++++++++++++++++++++++++++++++++++++++
- po/POTFILES.in | 1 -
- 6 files changed, 92 insertions(+), 11 deletions(-)
- create mode 100644 ABOUT-NLS
- create mode 100644 po/Makevars
-
-diff --git a/ABOUT-NLS b/ABOUT-NLS
-new file mode 100644
-index 0000000..0a9d56d
---- /dev/null
-+++ b/ABOUT-NLS
-@@ -0,0 +1 @@
-+<https://www.gnu.org/software/gettext/manual/html_node/Users.html>
-diff --git a/Makefile.am b/Makefile.am
-index f8e2bc9..a74145f 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -13,9 +13,6 @@ EXTRA_DIST = \
- fix-casts.sh \
- gaim.pc.in \
- gaim-uninstalled.pc.in \
-- intltool-extract.in \
-- intltool-merge.in \
-- intltool-update.in \
- package_revision.h \
- pidgin.apspec.in \
- pidgin.spec.in \
-@@ -139,5 +136,4 @@ endif
- distuninstallcheck_listfiles = \
- find . -type f -print | grep -v perl | grep -v Purple.3pm | grep -v Pidgin.3pm
-
--DISTCLEANFILES= intltool-extract intltool-merge intltool-update \
-- package_revision_raw.txt
-+DISTCLEANFILES=package_revision_raw.txt
-diff --git a/configure.ac b/configure.ac
-index 81d8592..e2280cd 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -43,7 +43,7 @@ fi
-
- AC_CANONICAL_HOST
- AC_CONFIG_HEADERS([config.h])
--AM_INIT_AUTOMAKE([1.9 -Wno-portability dist-bzip2])
-+AM_INIT_AUTOMAKE([1.9 -Wno-portability dist-bzip2 foreign])
- dnl TODO: Always use AM_SILENT_RULES when we depend on automake >= 1.11
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
-
-@@ -257,12 +257,12 @@ dnl #######################################################################
- AC_ARG_ENABLE(nls, AC_HELP_STRING([--disable-nls], [disable installation of translation files]), enable_i18n="$enableval", enable_i18n=yes)
-
- if test x$enable_i18n = xyes; then
-- AC_PROG_INTLTOOL
- GETTEXT_PACKAGE=pidgin
- AC_SUBST(GETTEXT_PACKAGE)
-
- ALL_LINGUAS="af am ar ar_SA as ast az be@latin bg bn_IN bn br brx bs ca ca@valencia cs da de dz el en_AU en_CA en_GB eo es_AR es et eu fa fi fr ga gl gu he hi hr hu id it ja ka kk km kn ko ks ku_IQ ku lt lv mai mhr mk ml mn mr ms_MY my_MM nb ne nl nn oc or pa pl ps pt_BR pt ro ru sd si sk sl sq sr@latin sr sv sw ta te th tr tt uk ur uz vi xh zh_CN zh_HK zh_TW"
-- AM_GLIB_GNU_GETTEXT
-+ AM_GNU_GETTEXT([external])
-+ AM_GNU_GETTEXT_VERSION([0.21])
-
- dnl If we don't have msgfmt, then po/ is going to fail -- ensure that
- dnl AM_GLIB_GNU_GETTEXT found it.
-diff --git a/pidgin/Makefile.am b/pidgin/Makefile.am
-index 2278b88..4d32c53 100644
---- a/pidgin/Makefile.am
-+++ b/pidgin/Makefile.am
-@@ -192,13 +192,16 @@ DESKTOP_FILE=data/pidgin.desktop
- appsdir = $(datadir)/applications
- apps_in_files = data/pidgin.desktop.in
- apps_DATA = $(apps_in_files:.desktop.in=.desktop)
--@INTLTOOL_DESKTOP_RULE@
-+
-+data/pidgin.desktop: data/pidgin.desktop.in
-+ $(AM_V_GEN)$(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@
-
- appdatadir = $(datarootdir)/appdata
- appdata_DATA = $(appdata_in_files:.xml.in=.xml)
- appdata_in_files = data/pidgin.appdata.xml.in
-
--@INTLTOOL_XML_RULE@
-+data/pidgin.appdata.xml: data/pidgin.appdata.xml.in
-+ $(AM_V_GEN)$(MSGFMT) --xml --template $< -d $(top_srcdir)/po -o $@ || cp $< $@
-
- endif # INSTALL_I18N
-
-diff --git a/po/Makevars b/po/Makevars
-new file mode 100644
-index 0000000..970237a
---- /dev/null
-+++ b/po/Makevars
-@@ -0,0 +1,82 @@
-+# Makefile variables for PO directory in any package using GNU gettext.
-+#
-+# Copyright (C) 2003-2019 Free Software Foundation, Inc.
-+# This file is free software; the Free Software Foundation gives
-+# unlimited permission to use, copy, distribute, and modify it.
-+
-+# Usually the message domain is the same as the package name.
-+DOMAIN = $(PACKAGE)
-+
-+# These two variables depend on the location of this directory.
-+subdir = po
-+top_builddir = ..
-+
-+# These options get passed to xgettext.
-+XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ --from-code=UTF-8
-+
-+# This is the copyright holder that gets inserted into the header of the
-+# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding
-+# package. (Note that the msgstr strings, extracted from the package's
-+# sources, belong to the copyright holder of the package.) Translators are
-+# expected to transfer the copyright for their translations to this person
-+# or entity, or to disclaim their copyright. The empty string stands for
-+# the public domain; in this case the translators are expected to disclaim
-+# their copyright.
-+COPYRIGHT_HOLDER = Free Software Foundation, Inc.
-+
-+# This tells whether or not to prepend "GNU " prefix to the package
-+# name that gets inserted into the header of the $(DOMAIN).pot file.
-+# Possible values are "yes", "no", or empty. If it is empty, try to
-+# detect it automatically by scanning the files in $(top_srcdir) for
-+# "GNU packagename" string.
-+PACKAGE_GNU =
-+
-+# This is the email address or URL to which the translators shall report
-+# bugs in the untranslated strings:
-+# - Strings which are not entire sentences, see the maintainer guidelines
-+# in the GNU gettext documentation, section 'Preparing Strings'.
-+# - Strings which use unclear terms or require additional context to be
-+# understood.
-+# - Strings which make invalid assumptions about notation of date, time or
-+# money.
-+# - Pluralisation problems.
-+# - Incorrect English spelling.
-+# - Incorrect formatting.
-+# It can be your email address, or a mailing list address where translators
-+# can write to without being subscribed, or the URL of a web page through
-+# which the translators can contact you.
-+MSGID_BUGS_ADDRESS =
-+
-+# This is the list of locale categories, beyond LC_MESSAGES, for which the
-+# message catalogs shall be used. It is usually empty.
-+EXTRA_LOCALE_CATEGORIES =
-+
-+# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt'
-+# context. Possible values are "yes" and "no". Set this to yes if the
-+# package uses functions taking also a message context, like pgettext(), or
-+# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument.
-+USE_MSGCTXT = no
-+
-+# These options get passed to msgmerge.
-+# Useful options are in particular:
-+# --previous to keep previous msgids of translated messages,
-+# --quiet to reduce the verbosity.
-+MSGMERGE_OPTIONS =
-+
-+# These options get passed to msginit.
-+# If you want to disable line wrapping when writing PO files, add
-+# --no-wrap to MSGMERGE_OPTIONS, XGETTEXT_OPTIONS, and
-+# MSGINIT_OPTIONS.
-+MSGINIT_OPTIONS =
-+
-+# This tells whether or not to regenerate a PO file when $(DOMAIN).pot
-+# has changed. Possible values are "yes" and "no". Set this to no if
-+# the POT file is checked in the repository and the version control
-+# program ignores timestamps.
-+PO_DEPENDS_ON_POT = no
-+
-+# This tells whether or not to forcibly update $(DOMAIN).pot and
-+# regenerate PO files on "make dist". Possible values are "yes" and
-+# "no". Set this to no if the POT file and PO files are maintained
-+# externally.
-+DIST_DEPENDS_ON_UPDATE_PO = no
-diff --git a/po/POTFILES.in b/po/POTFILES.in
-index a5691a1..b494bf3 100644
---- a/po/POTFILES.in
-+++ b/po/POTFILES.in
-@@ -1,4 +1,3 @@
--[encoding: UTF-8]
- finch/finch.c
- finch/gntaccount.c
- finch/gntblist.c
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0002-configure.ac-disable-few-languages-not-compatible-wi.patch b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0002-configure.ac-disable-few-languages-not-compatible-wi.patch
deleted file mode 100644
index 99c523d5d..000000000
--- a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin/0002-configure.ac-disable-few-languages-not-compatible-wi.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 861c8a63c36f9ee7d46238c9bc13a2c1f14372c3 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa@gmail.com>
-Date: Sun, 7 Feb 2021 14:35:14 +0000
-Subject: [PATCH] configure.ac: disable few languages not compatible with
- modern gettext
-
-* as pidgin-3 development is moving to meson and probably
- most of these changes won't be applicable there, lets just
- disable them until someone interested steps-up to maintain it
-
-* these 3 fail with:
-cd ../../pidgin-2.14.1/po && rm -f brx.gmo && pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgmerge --for-msgfmt -o brx.1po brx.po pidgin.pot && pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgfmt -c --statistics --verbose -o brx.gmo brx.1po && rm -f brx.1po
-cd ../../pidgin-2.14.1/po && rm -f zh_HK.gmo && pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgmerge --for-msgfmt -o zh_HK.1po zh_HK.po pidgin.pot && pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgfmt -c --statistics --verbose -o zh_HK.gmo zh_HK.1po && rm -f zh_HK.1po
-cd ../../pidgin-2.14.1/po && rm -f zh_TW.gmo && pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgmerge --for-msgfmt -o zh_TW.1po zh_TW.po pidgin.pot && pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgfmt -c --statistics --verbose -o zh_TW.gmo zh_TW.1po && rm -f zh_TW.1po
-zh_HK.1po:2790: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: The string refers to arguments both through absolute argument numbers and through unnumbered argument specifications.
-pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgfmt: found 1 fatal error
-zh_TW.1po:2790: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: The string refers to arguments both through absolute argument numbers and through unnumbered argument specifications.
-pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgfmt: found 1 fatal error
-zh_HK.1po: 3234 translated messages.
-make[3]: *** [Makefile:415: ../../pidgin-2.14.1/po/zh_HK.gmo] Error 1
-make[3]: *** Waiting for unfinished jobs....
-zh_TW.1po: 3234 translated messages.
-make[3]: *** [Makefile:415: ../../pidgin-2.14.1/po/zh_TW.gmo] Error 1
-brx.1po:778: number of format specifications in 'msgid' and 'msgstr' does not match
-brx.1po:3179: number of format specifications in 'msgid' and 'msgstr' does not match
-brx.1po:5175: format specifications in 'msgid_plural' and 'msgstr[0]' for argument 1 are not the same
-brx.1po:5184: format specifications in 'msgid_plural' and 'msgstr[0]' for argument 1 are not the same
-brx.1po:7754: format specifications in 'msgid_plural' and 'msgstr[0]' for argument 1 are not the same
-pidgin/2.14.1-r0/recipe-sysroot-native/usr/bin/msgfmt: found 8 fatal errors
-brx.1po: 3246 translated messages.
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index e2280cd..9332932 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -260,7 +260,7 @@ if test x$enable_i18n = xyes; then
- GETTEXT_PACKAGE=pidgin
- AC_SUBST(GETTEXT_PACKAGE)
-
-- ALL_LINGUAS="af am ar ar_SA as ast az be@latin bg bn_IN bn br brx bs ca ca@valencia cs da de dz el en_AU en_CA en_GB eo es_AR es et eu fa fi fr ga gl gu he hi hr hu id it ja ka kk km kn ko ks ku_IQ ku lt lv mai mhr mk ml mn mr ms_MY my_MM nb ne nl nn oc or pa pl ps pt_BR pt ro ru sd si sk sl sq sr@latin sr sv sw ta te th tr tt uk ur uz vi xh zh_CN zh_HK zh_TW"
-+ ALL_LINGUAS="af am ar ar_SA as ast az be@latin bg bn_IN bn br bs ca ca@valencia cs da de dz el en_AU en_CA en_GB eo es_AR es et eu fa fi fr ga gl gu he hi hr hu id it ja ka kk km kn ko ks ku_IQ ku lt lv mai mhr mk ml mn mr ms_MY my_MM nb ne nl nn oc or pa pl ps pt_BR pt ro ru sd si sk sl sq sr@latin sr sv sw ta te th tr tt uk ur uz vi xh zh_CN"
- AM_GNU_GETTEXT([external])
- AM_GNU_GETTEXT_VERSION([0.21])
-
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.14.1.bb b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.14.2.bb
index d22380eb0..ba0dca233 100644
--- a/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.14.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.14.2.bb
@@ -11,11 +11,9 @@ SRC_URI = "\
${SOURCEFORGE_MIRROR}/pidgin/pidgin-${PV}.tar.bz2 \
file://sanitize-configure.ac.patch \
file://purple-OE-branding-25.patch \
- file://0001-configure.ac-fix-build-with-autoconf-2.71.patch \
- file://0002-configure.ac-disable-few-languages-not-compatible-wi.patch \
"
-SRC_URI[sha256sum] = "f132e18d551117d9e46acce29ba4f40892a86746c366999166a3862b51060780"
+SRC_URI[sha256sum] = "19654ad276b149646371fbdac21bc7620742f2975f7399fed0ffc1a18fbaf603"
PACKAGECONFIG ??= "gnutls consoleui avahi dbus idn nss \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 gtk startup-notification', '', d)} \
@@ -39,9 +37,9 @@ PACKAGECONFIG[gnutls] = "--enable-gnutls --with-gnutls-includes=${STAGING_INCDIR
PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus dbus-glib"
PACKAGECONFIG[avahi] = "--enable-avahi,--disable-avahi,avahi"
PACKAGECONFIG[nss] = "--enable-nss,--disable-nss,nss nspr,libpurple-plugin-ssl-nss"
+PACKAGECONFIG[cyrus-sasl] = "--enable-cyrus-sasl,--disable-cyrus-sasl,cyrus-sasl"
EXTRA_OECONF = " \
- --with-python=python3 \
--disable-perl \
--disable-tcl \
--disable-gevolution \
diff --git a/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.02.0.bb b/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.04.0.bb
index c85fbf2af..de5f38036 100644
--- a/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.02.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.04.0.bb
@@ -7,7 +7,7 @@ SRC_URI = "http://poppler.freedesktop.org/${BP}.tar.xz \
file://0001-Do-not-overwrite-all-our-build-flags.patch \
file://basename-include.patch \
"
-SRC_URI[sha256sum] = "5c14759c99891e6e472aced6d5f0ff1dacf85d80cd9026d365c55c653edf792c"
+SRC_URI[sha256sum] = "5e2219656c6bbd36154133fef2e12b7d0938464518827098b29a10b1697ea79c"
DEPENDS = "fontconfig zlib cairo lcms glib-2.0"
diff --git a/meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.36.bb b/meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.37.bb
index b6988baa7..4630eb021 100644
--- a/meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.36.bb
+++ b/meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.37.bb
@@ -10,7 +10,7 @@ inherit autotools-brokensep python3native pkgconfig
SRC_URI = "git://github.com/abrt/satyr.git \
file://0002-fix-compile-failure-against-musl-C-library.patch \
"
-SRCREV = "a1f232b7dbca7ff787076fcfb63ce7d7fb15b753"
+SRCREV = "4a7d0a31cdeee23bb13739f57926188a795bdf25"
S = "${WORKDIR}/git"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
diff --git a/meta-openembedded/meta-oe/recipes-support/ssiapi/ssiapi_1.3.0.bb b/meta-openembedded/meta-oe/recipes-support/ssiapi/ssiapi_1.3.0.bb
index ce46cf589..9a0da831b 100644
--- a/meta-openembedded/meta-oe/recipes-support/ssiapi/ssiapi_1.3.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/ssiapi/ssiapi_1.3.0.bb
@@ -36,3 +36,4 @@ do_configure_prepend(){
RDEPENDS_${PN} += "mdadm"
COMPATIBLE_HOST_powerpc = 'null'
+COMPATIBLE_HOST_powerpc64le = 'null'
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-CMakeLists.txt-exclude-riscv64-riscv32.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-CMakeLists.txt-exclude-riscv64-riscv32.patch
new file mode 100644
index 000000000..ff6154808
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-CMakeLists.txt-exclude-riscv64-riscv32.patch
@@ -0,0 +1,42 @@
+From cb9e9b5b1ad05dd9de07a65ee7147cdb3433746a Mon Sep 17 00:00:00 2001
+From: Naveen Saini <naveen.kumar.saini@intel.com>
+Date: Fri, 9 Apr 2021 15:41:35 +0800
+Subject: [PATCH] CMakeLists.txt: exclude riscv64 & riscv32
+
+Upstream-Status: Pending
+
+Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
+---
+ src/tbb/CMakeLists.txt | 2 +-
+ src/tbbmalloc/CMakeLists.txt | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/tbb/CMakeLists.txt b/src/tbb/CMakeLists.txt
+index a6edb6ad..4f261813 100644
+--- a/src/tbb/CMakeLists.txt
++++ b/src/tbb/CMakeLists.txt
+@@ -55,7 +55,7 @@ target_compile_definitions(tbb
+ PRIVATE
+ __TBB_BUILD)
+
+-if (NOT ("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "(armv7-a|aarch64|mips|arm64)" OR
++if (NOT ("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "(armv7-a|aarch64|mips|arm64|riscv64|riscv32)" OR
+ "${CMAKE_OSX_ARCHITECTURES}" MATCHES "arm64" OR
+ WINDOWS_STORE OR
+ TBB_WINDOWS_DRIVER))
+diff --git a/src/tbbmalloc/CMakeLists.txt b/src/tbbmalloc/CMakeLists.txt
+index de7ca7ea..31e854fe 100644
+--- a/src/tbbmalloc/CMakeLists.txt
++++ b/src/tbbmalloc/CMakeLists.txt
+@@ -28,7 +28,7 @@ target_compile_definitions(tbbmalloc
+ PRIVATE
+ __TBBMALLOC_BUILD)
+
+-if (NOT ("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "(armv7-a|aarch64|mips|arm64)" OR
++if (NOT ("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "(armv7-a|aarch64|mips|arm64|riscv64|riscv32)" OR
+ "${CMAKE_OSX_ARCHITECTURES}" MATCHES "arm64" OR
+ WINDOWS_STORE OR
+ TBB_WINDOWS_DRIVER))
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-Disable-use-of-_tpause-instruction.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-Disable-use-of-_tpause-instruction.patch
new file mode 100644
index 000000000..7a4cc3e4e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-Disable-use-of-_tpause-instruction.patch
@@ -0,0 +1,34 @@
+From 26bc87fdad9f29c00a5e37d6d9aed7f6dc7ff416 Mon Sep 17 00:00:00 2001
+From: Anuj Mittal <anuj.mittal@intel.com>
+Date: Mon, 12 Apr 2021 14:15:53 +0800
+Subject: [PATCH] Disable use of _tpause instruction
+
+It is assuming right now that WAITPKG instructions are available when using
+gcc 11 or clang 12. It's possible that we are building for a
+CPU where it's not available - in this case anything older than Alder Lake.
+
+Disable for now until the detection isn't fixed upstream.
+
+Upstream-Status: Inappropriate
+
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ src/tbb/scheduler_common.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/tbb/scheduler_common.h b/src/tbb/scheduler_common.h
+index ee13dbf9..49052001 100644
+--- a/src/tbb/scheduler_common.h
++++ b/src/tbb/scheduler_common.h
+@@ -219,7 +219,7 @@ inline void prolonged_pause_impl() {
+ #endif
+
+ inline void prolonged_pause() {
+-#if __TBB_WAITPKG_INTRINSICS_PRESENT && (_WIN32 || _WIN64 || __linux__) && (__TBB_x86_32 || __TBB_x86_64)
++#if 0
+ if (governor::wait_package_enabled()) {
+ std::uint64_t time_stamp = machine_time_stamp();
+ // _tpause function directs the processor to enter an implementation-dependent optimized state
+--
+2.29.0
+
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-mallinfo-is-glibc-specific-API-mark-it-so.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-mallinfo-is-glibc-specific-API-mark-it-so.patch
index 7e66945fa..49325447e 100644
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-mallinfo-is-glibc-specific-API-mark-it-so.patch
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-mallinfo-is-glibc-specific-API-mark-it-so.patch
@@ -1,22 +1,23 @@
-From 6b2b136caa68912d77ffe26143cd3da768b9ef80 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 3 Jun 2017 08:39:37 -0700
+From 52c1586bff0ecb418ac21d6678f8963d70959f04 Mon Sep 17 00:00:00 2001
+From: Naveen Saini <naveen.kumar.saini@intel.com>
+Date: Wed, 7 Apr 2021 11:14:13 +0800
Subject: [PATCH] mallinfo() is glibc specific API mark it so
Helps compiling with musl
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
Upstream-Status: Pending
- src/tbbmalloc/proxy.cpp | 2 ++
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
+---
+ src/tbbmalloc_proxy/proxy.cpp | 2 ++
1 file changed, 2 insertions(+)
-diff --git a/src/tbbmalloc/proxy.cpp b/src/tbbmalloc/proxy.cpp
-index 5ef279d..06c4872 100644
---- a/src/tbbmalloc/proxy.cpp
-+++ b/src/tbbmalloc/proxy.cpp
-@@ -185,6 +185,7 @@ int mallopt(int /*param*/, int /*value*/) __THROW
+diff --git a/src/tbbmalloc_proxy/proxy.cpp b/src/tbbmalloc_proxy/proxy.cpp
+index f9942bf1..fe0dad89 100644
+--- a/src/tbbmalloc_proxy/proxy.cpp
++++ b/src/tbbmalloc_proxy/proxy.cpp
+@@ -253,6 +253,7 @@ int mallopt(int /*param*/, int /*value*/) __THROW
return 1;
}
@@ -24,7 +25,7 @@ index 5ef279d..06c4872 100644
struct mallinfo mallinfo() __THROW
{
struct mallinfo m;
-@@ -192,6 +193,7 @@ struct mallinfo mallinfo() __THROW
+@@ -260,6 +261,7 @@ struct mallinfo mallinfo() __THROW
return m;
}
@@ -33,5 +34,5 @@ index 5ef279d..06c4872 100644
#if __ANDROID__
// Android doesn't have malloc_usable_size, provide it to be compatible
--
-2.13.0
+2.17.1
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/GLIBC-PREREQ-is-not-defined-on-musl.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/GLIBC-PREREQ-is-not-defined-on-musl.patch
index 6f28f6f3a..fb10684cd 100644
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/GLIBC-PREREQ-is-not-defined-on-musl.patch
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/GLIBC-PREREQ-is-not-defined-on-musl.patch
@@ -1,7 +1,7 @@
-From 27956d4c5fb615098231cebfb8eef11057639d3c Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Sun, 8 Dec 2019 18:14:38 +0100
-Subject: [PATCH] src/tbbmalloc/proxy.cpp: __GLIBC_PREREQ is not defined on
+From 5cac8b5fffa4ebf5f0090456c9e0cbf43827242a Mon Sep 17 00:00:00 2001
+From: Naveen Saini <naveen.kumar.saini@intel.com>
+Date: Wed, 7 Apr 2021 11:32:52 +0800
+Subject: [PATCH] src/tbbmalloc/proxy.cpp: __GLIBC_PREREQ is not defined on
musl
Do not call __GLIBC_PREREQ if it is not defined otherwise build will
@@ -12,14 +12,15 @@ Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Upstream-Status: Submitted [https://github.com/oneapi-src/oneTBB/pull/203]
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
---
- src/tbbmalloc/proxy.cpp | 6 ++++--
+ src/tbbmalloc_proxy/proxy.cpp | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
-diff --git a/src/tbbmalloc/proxy.cpp b/src/tbbmalloc/proxy.cpp
-index d96ae7a0..709ae839 100644
---- a/src/tbbmalloc/proxy.cpp
-+++ b/src/tbbmalloc/proxy.cpp
+diff --git a/src/tbbmalloc_proxy/proxy.cpp b/src/tbbmalloc_proxy/proxy.cpp
+index fe0dad89..93e68049 100644
+--- a/src/tbbmalloc_proxy/proxy.cpp
++++ b/src/tbbmalloc_proxy/proxy.cpp
@@ -24,7 +24,8 @@
// of aligned_alloc as required by new C++ standard, this makes it hard to
// redefine aligned_alloc here. However, running on systems with new libc
@@ -40,3 +41,6 @@ index d96ae7a0..709ae839 100644
#endif // __linux__ && !__ANDROID__
#include "proxy.h"
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/cross-compile.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/cross-compile.patch
deleted file mode 100644
index 36578543f..000000000
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/cross-compile.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-Author: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
-
-Upstream-Status: unsuitable
----
-
-diff --git a/build/linux.clang.inc b/build/linux.clang.inc
-index fe9b5c98..b0dcd68b 100644
---- a/build/linux.clang.inc
-+++ b/build/linux.clang.inc
-@@ -12,8 +12,8 @@
- # See the License for the specific language governing permissions and
- # limitations under the License.
-
--CPLUS ?= clang++
--CONLY ?= clang
-+CPLUS ?= $(CXX)
-+CONLY ?= $(CC)
- COMPILE_ONLY = -c -MMD
- PREPROC_ONLY = -E -x c++
- INCLUDE_KEY = -I
-diff --git a/build/linux.gcc.inc b/build/linux.gcc.inc
-index d820c15d..62c76afd 100644
---- a/build/linux.gcc.inc
-+++ b/build/linux.gcc.inc
-@@ -12,8 +12,8 @@
- # See the License for the specific language governing permissions and
- # limitations under the License.
-
--CPLUS ?= g++
--CONLY ?= gcc
-+CPLUS ?= $(CXX)
-+CONLY ?= $(CC)
- COMPILE_ONLY = -c -MMD
- PREPROC_ONLY = -E -x c++
- INCLUDE_KEY = -I
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/improve-reproducibility.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/improve-reproducibility.patch
deleted file mode 100644
index 91d10cb7a..000000000
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/improve-reproducibility.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From f56eeb18a07df139864a99e1967d450cc5c8c0bb Mon Sep 17 00:00:00 2001
-From: Lee Chee Yang <chee.yang.lee@intel.com>
-Date: Wed, 30 Sep 2020 16:18:35 +0800
-Subject: [PATCH] improve reproducibility
-
-remove the WORKDIR info from BUILD_COMMAND to improve reproducibility.
-also use SOURCE_DATE_EPOCH as DATETIME wherever possible.
-
-Upstream-Status: Inappropriate [sed WORKDIR does not applies to upstream]
-Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
----
- build/version_info_linux.sh | 4 +-
- 1 file changed, 2 insertion(+), 2 deletion(-)
-
-diff --git a/build/version_info_linux.sh b/build/version_info_linux.sh
-index 793cad11..ed6f4b2a 100644
---- a/build/version_info_linux.sh
-+++ b/build/version_info_linux.sh
-@@ -25,6 +25,6 @@ echo '#N": BUILD_GCC'"\t\t"`g++ --version </dev/null 2>&1 | grep 'g++'`'" ENDL \
- echo '#N": BUILD_LIBC'"\t"`getconf GNU_LIBC_VERSION | grep glibc | sed -e 's/^glibc //'`'" ENDL \'
- echo '#N": BUILD_LD'"\t\t"`ld -v 2>&1 | grep 'version'`'" ENDL \'
- echo '#N": BUILD_TARGET'"\t$arch on $runtime"'" ENDL \'
--echo '#N": BUILD_COMMAND'"\t"$*'" ENDL \'
-+echo '#N": BUILD_COMMAND'"\t"$(echo $* | sed 's#'$WORKDIR'#/workdir#g')'" ENDL \'
- echo ""
--echo "#define __TBB_DATETIME \""`date -u`"\""
-+echo "#define __TBB_DATETIME \""`$(date -u -d "@$SOURCE_DATE_EPOCH" 2>/dev/null || date -u -r "$SOURCE_DATE_EPOCH" 2>/dev/null || date -u )`"\""
---
-2.25.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/tbb.pc b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/tbb.pc
deleted file mode 100644
index 4f9da1140..000000000
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/tbb.pc
+++ /dev/null
@@ -1,11 +0,0 @@
-prefix=/usr
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: Threading Building Blocks
-Description: Intel's parallelism library for C++
-URL: https://software.intel.com/en-us/tbb
-Version: 2020.2
-Libs: -L${libdir} -ltbb
-Cflags: -I${includedir}
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2020.3.bb b/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb
index 8e0094b31..b05a59dc7 100644
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2020.3.bb
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb
@@ -5,37 +5,29 @@ DESCRIPTION = "Parallelism library for C++ - runtime files \
and threading mechanism for performance and scalability."
HOMEPAGE = "https://software.intel.com/en-us/tbb"
LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
-BRANCH = "tbb_2020"
-SRCREV = "eca91f16d7490a8abfdee652dadf457ec820cc37"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=86d3f3a95c324c9479bd8986968f4327"
+
+DEPENDS_append_libc-musl = " libucontext"
+
+BRANCH = "onetbb_2021"
+SRCREV = "2dba2072869a189b9fdab3ffa431d3ea49059a19"
SRC_URI = "git://github.com/oneapi-src/oneTBB.git;protocol=https;branch=${BRANCH} \
- file://cross-compile.patch \
- file://0001-mallinfo-is-glibc-specific-API-mark-it-so.patch \
- file://GLIBC-PREREQ-is-not-defined-on-musl.patch \
- file://tbb.pc \
- file://improve-reproducibility.patch \
+ file://0001-mallinfo-is-glibc-specific-API-mark-it-so.patch \
+ file://GLIBC-PREREQ-is-not-defined-on-musl.patch \
+ file://0001-CMakeLists.txt-exclude-riscv64-riscv32.patch \
+ file://0001-Disable-use-of-_tpause-instruction.patch \
"
S = "${WORKDIR}/git"
-PE = "1"
-
-COMPILER ?= "gcc"
-COMPILER_toolchain-clang = "clang"
-
-do_compile() {
- oe_runmake compiler=${COMPILER} arch=${HOST_ARCH}
-}
-
-do_install() {
- install -d ${D}${includedir} ${D}${libdir}
- rm ${S}/include/tbb/index.html -f
- cp -R --no-dereference --preserve=mode,links -v ${S}/include/tbb ${D}${includedir}
- for f in ${B}/build/linux_*_release/lib*.so*
- do
- install -Dm 0755 $f ${D}${libdir}/
- done
- install -Dm 0644 ${WORKDIR}/tbb.pc ${D}${libdir}/pkgconfig/tbb.pc
-}
+
+inherit cmake
+
+# test build fails, error: 'mallinfo mallinfo()' is deprecated
+EXTRA_OECMAKE += " \
+ -DTBB_TEST=OFF \
+ -DCMAKE_BUILD_TYPE=Release \
+ "
+
# fails with thumb enabled:
# | arm-oe-linux-gnueabi-g++ -march=armv7-a -mthumb -mthumb-interwork -mfloat-abi=softfp -mfpu=neon -mtune=cortex-a9 -mcpu=cortex-a9 -D__ARM__ -D__LINUX_ARM_ARCH__=7 -funwind-tables -mvectorize-with-neon-quad -rdynamic --sysroot=/OE/sysroots/m14tv -c -MMD -DTBB_USE_DEBUG -g -O0 -DUSE_PTHREAD -fPIC -D__TBB_BUILD=1 -Wall -Wno-parentheses -Wno-non-virtual-dtor -O2 -pipe -g -feliminate-unused-debug-types -fpermissive -fvisibility-inlines-hidden -I../../src -I../../src/rml/include -I../../include ../../src/tbb/concurrent_queue.cpp
@@ -44,3 +36,10 @@ do_install() {
# ...
# | make[1]: *** [concurrent_queue.o] Error 1
ARM_INSTRUCTION_SET = "arm"
+
+ASNEEDED = ""
+
+LDFLAGS_append_mips = " -latomic"
+LDFLAGS_append_mipsel = " -latomic"
+
+LDFLAGS_append_libc-musl = " -lucontext"
diff --git a/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_git.bb b/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.9.2.bb
index 196198c52..f9e127438 100644
--- a/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.9.2.bb
@@ -17,11 +17,8 @@ DEPENDS += "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
RDEPENDS_${PN} = "acl"
-SRC_URI = " \
- git://github.com/storaged-project/udisks.git;branch=master \
-"
-PV = "2.9.1"
-SRCREV = "95444ab6bf2b8d8c205b540dded4029fcb15f91b"
+SRC_URI = "git://github.com/storaged-project/udisks.git;branch=master"
+SRCREV = "da6d9480fefeb0ffdf8a84626b5096827d8d7030"
S = "${WORKDIR}/git"
CVE_PRODUCT = "udisks"
diff --git a/meta-openembedded/meta-oe/recipes-support/uriparser/uriparser_0.9.4.bb b/meta-openembedded/meta-oe/recipes-support/uriparser/uriparser_0.9.5.bb
index d02cf5de8..f50622358 100644
--- a/meta-openembedded/meta-oe/recipes-support/uriparser/uriparser_0.9.4.bb
+++ b/meta-openembedded/meta-oe/recipes-support/uriparser/uriparser_0.9.5.bb
@@ -5,7 +5,7 @@ LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=fcc5a53146c2401f4b4f6a3bdf3f0168"
SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${BP}/${BP}.tar.gz"
-SRC_URI[sha256sum] = "095e8a358a9ccbbef9d1f10d40495ca0fcb3d4490a948ba6449b213a66e08ef0"
+SRC_URI[sha256sum] = "1987466a798becb5441a491d29e762ab1a4817a525f82ef239e3d38f85605a77"
UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
diff --git a/meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.2.0.bb b/meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.3.0.bb
index 4ec7bc2f5..ca8a3c0bb 100644
--- a/meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.2.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.3.0.bb
@@ -8,8 +8,8 @@ DESCRIPTION = " uthash-dev provides a hash table implementation using C preproce
HOMEPAGE = "https://troydhanson.github.io/uthash/"
SECTION = "base"
LICENSE = "BSD-1-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=6891c324eb59289db33bac74d4cbb0d4"
-SRCREV = "66e2668795d0aaf4977523f828e548470a680c33"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=736712b5904dd42f8678df7172bc5f2b"
+SRCREV = "e493aa90a2833b4655927598f169c31cfcdf7861"
SRC_URI = "\
git://github.com/troydhanson/${BPN}.git \
diff --git a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/add__divmoddi4.patch b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/add__divmoddi4.patch
new file mode 100644
index 000000000..8dd30a20e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/add__divmoddi4.patch
@@ -0,0 +1,36 @@
+add __divmoddi4 builtin
+
+GCC 11 will generate it in code
+
+void foo(unsigned char *u8Second, unsigned int *u32Nanosecond, long long timeSpec)
+{
+ long long i64Div;
+ int i32Div;
+ int i32Rem;
+ i64Div = timeSpec;
+ i32Rem = (int)(i64Div % 1000000000);
+ i64Div /= 1000000000;
+ *u32Nanosecond = i32Rem;
+ i32Rem = (int)(i64Div % 60);
+ *u8Second = i32Rem;
+}
+
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/src/VBox/Runtime/common/math/gcc/divdi3.c
++++ b/src/VBox/Runtime/common/math/gcc/divdi3.c
+@@ -68,3 +68,12 @@ __divdi3(a, b)
+ uq = - uq;
+ return uq;
+ }
++
++quad_t
++__divmoddi4(quad_t a, quad_t b, quad_t* rem)
++{
++ quad_t d = __divdi3(a,b);
++ *rem = a - (d*b);
++ return d;
++}
++
diff --git a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.18.bb b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.18.bb
index d620e9893..1def1a311 100644
--- a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.18.bb
+++ b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.18.bb
@@ -14,6 +14,7 @@ VBOX_NAME = "VirtualBox-${PV}"
SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 \
file://Makefile.utils \
file://kernel-5.10.patch \
+ file://add__divmoddi4.patch \
"
SRC_URI[md5sum] = "c61001386eb3822ab8f06d688a82e84b"
SRC_URI[sha256sum] = "108d42b9b391b7a332a33df1662cf7b0e9d9a80f3079d16288d8b9487f427d40"
diff --git a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-Fixed-compiler-warnings-about-snprintf-truncations.patch b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-Fixed-compiler-warnings-about-snprintf-truncations.patch
deleted file mode 100644
index 5b9315cfb..000000000
--- a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-Fixed-compiler-warnings-about-snprintf-truncations.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 9de23a9199d26e64ab6b5be2bb74f260200b2dc5 Mon Sep 17 00:00:00 2001
-From: matt335672 <30179339+matt335672@users.noreply.github.com>
-Date: Fri, 21 Aug 2020 12:20:31 +0100
-Subject: [PATCH] Fixed compiler warnings about snprintf truncations
-
-Upstream-Status: Backport [https://github.com/neutrinolabs/xrdp/pull/1659]
----
- common/log.c | 4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
-diff --git a/common/log.c b/common/log.c
-index 4a0bd2f3..8686789d 100644
---- a/common/log.c
-+++ b/common/log.c
-@@ -555,9 +555,7 @@ log_message(const enum logLevels lvl, const char *msg, ...)
- now_t = time(&now_t);
- now = localtime(&now_t);
-
-- snprintf(buff, 21, "[%.4d%.2d%.2d-%.2d:%.2d:%.2d] ", now->tm_year + 1900,
-- now->tm_mon + 1, now->tm_mday, now->tm_hour, now->tm_min,
-- now->tm_sec);
-+ strftime(buff, 21, "[%Y%m%d-%H:%M:%S] ", now);
-
- internal_log_lvl2str(lvl, buff + 20);
-
---
-2.29.2
-
diff --git a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch
new file mode 100644
index 000000000..c06aa7b6c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch
@@ -0,0 +1,22 @@
+From 5958db649855bfb2ada7c0ed22a00f839b9a1161 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 12 Mar 2021 21:40:35 -0800
+Subject: [PATCH] arch: Define NO_NEED_ALIGN on ppc64
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ common/arch.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/common/arch.h
++++ b/common/arch.h
+@@ -84,7 +84,7 @@ typedef int bool_t;
+ #define NEED_ALIGN
+ #elif defined(__x86__) || defined(__x86_64__) || \
+ defined(__AMD64__) || defined(_M_IX86) || defined (_M_AMD64) || \
+- defined(__i386__) || defined(__aarch64__) || \
++ defined(__i386__) || defined(__aarch64__) || defined(__powerpc64__) || \
+ defined(__riscv)
+ #define NO_NEED_ALIGN
+ #else
diff --git a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-correct-the-location-of-errno.h.patch b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-correct-the-location-of-errno.h.patch
deleted file mode 100644
index b06077bf0..000000000
--- a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-correct-the-location-of-errno.h.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From c8d3df40ece7d659ccc8212b18de916d28f4398a Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 22 Dec 2020 23:10:52 -0800
-Subject: [PATCH] correct the location of errno.h
-
-Fixes build on musl
-
-Upstream-Status: Submitted [https://github.com/neutrinolabs/xrdp/pull/1761]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- sesman/chansrv/sound.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/sesman/chansrv/sound.c b/sesman/chansrv/sound.c
-index b0480d33..45e17307 100644
---- a/sesman/chansrv/sound.c
-+++ b/sesman/chansrv/sound.c
-@@ -23,7 +23,7 @@
- #include <stdio.h>
- #include <sys/types.h>
- #include <sys/socket.h>
--#include <sys/errno.h>
-+#include <errno.h>
- #include <signal.h>
- #include <sys/un.h>
-
---
-2.29.2
-
diff --git a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-riscv-doesn-t-require-pointers-to-be-aligned.patch b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-riscv-doesn-t-require-pointers-to-be-aligned.patch
deleted file mode 100644
index 4cd26df04..000000000
--- a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-riscv-doesn-t-require-pointers-to-be-aligned.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 229206aa5e55a6e26a074a54a1b50139ab794b36 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 22 Dec 2020 23:01:13 -0800
-Subject: [PATCH] riscv doesn't require pointers to be aligned
-
-Upstream-Status: Submitted [https://github.com/neutrinolabs/xrdp/pull/1761]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- common/arch.h | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/common/arch.h b/common/arch.h
-index ccccfa5a..8c2ac1a4 100644
---- a/common/arch.h
-+++ b/common/arch.h
-@@ -84,7 +84,8 @@ typedef int bool_t;
- #define NEED_ALIGN
- #elif defined(__x86__) || defined(__x86_64__) || \
- defined(__AMD64__) || defined(_M_IX86) || defined (_M_AMD64) || \
-- defined(__i386__) || defined(__aarch64__)
-+ defined(__i386__) || defined(__aarch64__) || \
-+ defined(__riscv)
- #define NO_NEED_ALIGN
- #else
- #warning unknown arch
---
-2.29.2
-
diff --git a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.14.bb b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb
index 078e23c6e..039ba1a76 100644
--- a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.14.bb
+++ b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb
@@ -14,11 +14,9 @@ SRC_URI = "git://github.com/neutrinolabs/xrdp.git;branch=devel \
file://xrdp.sysconfig \
file://0001-Added-req_distinguished_name-in-etc-xrdp-openssl.con.patch \
file://0001-Fix-the-compile-error.patch \
- file://0001-riscv-doesn-t-require-pointers-to-be-aligned.patch \
- file://0001-correct-the-location-of-errno.h.patch \
- file://0001-Fixed-compiler-warnings-about-snprintf-truncations.patch \
+ file://0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch \
"
-SRCREV = "1469d659dbccd6d042ac44f0afc4e1309788dc9d"
+SRCREV = "f24b7b7988140b18202908654db3289659303772"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-test/bats/bats_1.1.0.bb b/meta-openembedded/meta-oe/recipes-test/bats/bats_1.3.0.bb
index a8179744a..8190a5e3a 100644
--- a/meta-openembedded/meta-oe/recipes-test/bats/bats_1.1.0.bb
+++ b/meta-openembedded/meta-oe/recipes-test/bats/bats_1.3.0.bb
@@ -8,8 +8,8 @@ LIC_FILES_CHKSUM = "file://LICENSE.md;md5=2970203aedf9e829edb96a137a4fe81b"
SRC_URI = "git://github.com/bats-core/bats-core.git \
"
-# v1.1.0
-SRCREV = "c706d1470dd1376687776bbe985ac22d09780327"
+# v1.3.0
+SRCREV = "9086c47854652f2731861b40385689c85f12103f"
S = "${WORKDIR}/git"
@@ -18,4 +18,8 @@ do_install() {
${S}/install.sh ${D}${prefix}
}
-RDEPENDS_bats = "bash"
+RDEPENDS_${PN} = "bash"
+FILES_${PN} += "${libdir}/bats-core/*"
+
+PACKAGECONFIG ??= "pretty"
+PACKAGECONFIG[pretty] = ",,,ncurses"
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Add-correct-printf-qualifier-for-off_t.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Add-correct-printf-qualifier-for-off_t.patch
index c2d679aab..0d73d7310 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Add-correct-printf-qualifier-for-off_t.patch
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Add-correct-printf-qualifier-for-off_t.patch
@@ -1,16 +1,15 @@
-From 613e5cfe7751068062cc92f83870e436669fc0a8 Mon Sep 17 00:00:00 2001
+From ee787b53d734cd952c170c9303d213d3dd18a86f Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 8 Jun 2017 16:49:50 -0700
-Subject: [PATCH] Add correct printf qualifier for off_t
+Subject: [PATCH 1/6] Add correct printf qualifier for off_t
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
---
- src/bios/ebda_region/ebda_region.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
+ src/bios/ebda_region/ebda_region.c | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/bios/ebda_region/ebda_region.c b/src/bios/ebda_region/ebda_region.c
-index 16c39357..ad6d635c 100644
+index b70ced10..947a24bd 100644
--- a/src/bios/ebda_region/ebda_region.c
+++ b/src/bios/ebda_region/ebda_region.c
@@ -83,9 +83,9 @@ static int ebda_test1(fwts_framework *fw)
@@ -25,14 +24,19 @@ index 16c39357..ad6d635c 100644
(entry->end_address - entry->start_address) / 1024,
memory_map_name,
entry->start_address,
-@@ -93,8 +93,8 @@ static int ebda_test1(fwts_framework *fw)
+@@ -93,9 +93,9 @@ static int ebda_test1(fwts_framework *fw)
} else
fwts_failed(fw, LOG_LEVEL_MEDIUM,
"EBDAMappedNotReserved",
- "EBDA region mapped at 0x%lx but not reserved in the %s table.",
- ebda_addr, memory_map_name);
+-
+ "EBDA region mapped at 0x%jdx but not reserved in the %s table.",
+ (intmax_t)ebda_addr, memory_map_name);
-
++
return FWTS_OK;
}
+
+--
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Include-poll.h-instead-of-deprecated-sys-poll.h.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0002-Include-poll.h-instead-of-deprecated-sys-poll.h.patch
index 4baefe4a4..82379331e 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Include-poll.h-instead-of-deprecated-sys-poll.h.patch
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0002-Include-poll.h-instead-of-deprecated-sys-poll.h.patch
@@ -1,19 +1,18 @@
-From ed988c27efde5355c3ba9d0de8a14a4a40f798cc Mon Sep 17 00:00:00 2001
+From 1575b5ce3ecb8709806908061f689315553b40c7 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 6 Jun 2017 07:25:09 -0700
-Subject: [PATCH] Include poll.h instead of deprecated sys/poll.h
+Subject: [PATCH 2/6] Include poll.h instead of deprecated sys/poll.h
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
---
src/lib/src/fwts_ipmi.c | 3 ++-
src/lib/src/fwts_pipeio.c | 2 +-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/lib/src/fwts_ipmi.c b/src/lib/src/fwts_ipmi.c
-index a4c8a511..e298969e 100644
+index ca7c55bb..0b16bec3 100644
--- a/src/lib/src/fwts_ipmi.c
+++ b/src/lib/src/fwts_ipmi.c
@@ -18,10 +18,11 @@
@@ -30,7 +29,7 @@ index a4c8a511..e298969e 100644
#include <linux/ipmi.h>
diff --git a/src/lib/src/fwts_pipeio.c b/src/lib/src/fwts_pipeio.c
-index 3b3cfaff..289564d1 100644
+index 716297c4..37752297 100644
--- a/src/lib/src/fwts_pipeio.c
+++ b/src/lib/src/fwts_pipeio.c
@@ -30,9 +30,9 @@
@@ -44,3 +43,6 @@ index 3b3cfaff..289564d1 100644
#include <sys/types.h>
#include <sys/wait.h>
#include <errno.h>
+--
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Remove-Werror-from-build.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-Remove-Werror-from-build.patch
index 93a42213b..906ec99a9 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Remove-Werror-from-build.patch
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-Remove-Werror-from-build.patch
@@ -1,16 +1,17 @@
-From 475979cf5c1af978f4e8409666365ec75b3320ea Mon Sep 17 00:00:00 2001
+From 7317aba872f2bcf052a7db9fa3c7a7ce3c55dc6b Mon Sep 17 00:00:00 2001
From: Benjamin Berg <bberg@redhat.com>
Date: Mon, 21 Aug 2017 10:34:40 +0200
-Subject: [PATCH] Remove -Werror from build
+Subject: [PATCH 3/6] Remove -Werror from build
Upstream-Status: Pending
-
---
src/Makefile.am | 2 +-
src/lib/src/Makefile.am | 2 +-
src/utilities/Makefile.am | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
+diff --git a/src/Makefile.am b/src/Makefile.am
+index a26a197b..70a28174 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -14,7 +14,7 @@ AM_CPPFLAGS = \
@@ -22,6 +23,8 @@ Upstream-Status: Pending
-Wno-address-of-packed-member \
-Wfloat-equal -Wmissing-declarations \
-Wno-long-long -Wredundant-decls -Wshadow \
+diff --git a/src/lib/src/Makefile.am b/src/lib/src/Makefile.am
+index 55c52b41..b85d0101 100644
--- a/src/lib/src/Makefile.am
+++ b/src/lib/src/Makefile.am
@@ -25,7 +25,7 @@ AM_CPPFLAGS = \
@@ -33,6 +36,8 @@ Upstream-Status: Pending
-Wno-address-of-packed-member
pkglib_LTLIBRARIES = libfwts.la
+diff --git a/src/utilities/Makefile.am b/src/utilities/Makefile.am
+index ecc25f0a..129c1036 100644
--- a/src/utilities/Makefile.am
+++ b/src/utilities/Makefile.am
@@ -16,7 +16,7 @@
@@ -42,5 +47,8 @@ Upstream-Status: Pending
-AM_CPPFLAGS = -Wall -Werror -Wextra -DDATAROOTDIR=\"$(datarootdir)\" \
+AM_CPPFLAGS = -Wall -Wextra -DDATAROOTDIR=\"$(datarootdir)\" \
`pkg-config --silence-errors --cflags json` \
- `pkg-config --silence-errors --cflags json-c`
-
+ `pkg-config --silence-errors --cflags json-c` \
+ -I../lib/include
+--
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0002-Define-__SWORD_TYPE-if-not-defined-by-libc.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0004-Define-__SWORD_TYPE-if-not-defined-by-libc.patch
index b45e46a3d..83d1cbbfe 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0002-Define-__SWORD_TYPE-if-not-defined-by-libc.patch
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0004-Define-__SWORD_TYPE-if-not-defined-by-libc.patch
@@ -1,7 +1,7 @@
-From 1112e51d240a206bdcf253878ef1f4963b92da8a Mon Sep 17 00:00:00 2001
+From 9456f2f779d3ed4a134d55571d8bec78ad3b28c1 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 6 Jun 2017 07:37:20 -0700
-Subject: [PATCH] Define __SWORD_TYPE if not defined by libc
+Subject: [PATCH 4/6] Define __SWORD_TYPE if not defined by libc
__SWORD_TYPE is internal to glibc, therefore
check and define it if needed e.g. on musl
@@ -9,16 +9,15 @@ check and define it if needed e.g. on musl
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
---
src/lib/src/fwts_uefi.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/lib/src/fwts_uefi.c b/src/lib/src/fwts_uefi.c
-index 544145fa..460b0b77 100644
+index 138f1164..13d9e36c 100644
--- a/src/lib/src/fwts_uefi.c
+++ b/src/lib/src/fwts_uefi.c
-@@ -59,6 +59,10 @@ typedef struct {
+@@ -63,6 +63,10 @@ typedef struct {
#define UEFI_IFACE_SYSFS (2) /* sysfs */
#define UEFI_IFACE_EFIVARS (3) /* efivar fs */
@@ -29,3 +28,6 @@ index 544145fa..460b0b77 100644
/* File system magic numbers */
#define PSTOREFS_MAGIC ((__SWORD_TYPE)0x6165676C)
#define EFIVARFS_MAGIC ((__SWORD_TYPE)0xde5e81e4)
+--
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-Undefine-PAGE_SIZE.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0005-Undefine-PAGE_SIZE.patch
index 1d8c620ef..319e0855c 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-Undefine-PAGE_SIZE.patch
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0005-Undefine-PAGE_SIZE.patch
@@ -1,7 +1,7 @@
-From 244e9551ab9bbc1dfa91d19cd472ef254a94ae41 Mon Sep 17 00:00:00 2001
+From 53b9f97fb7faed043134f2ab738347b20379d32f Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 6 Jun 2017 07:39:28 -0700
-Subject: [PATCH] Undefine PAGE_SIZE
+Subject: [PATCH 5/6] Undefine PAGE_SIZE
musl defines PAGE_SIZE and build complains
of multiple definitions
@@ -9,13 +9,12 @@ of multiple definitions
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
---
src/lib/src/fwts_acpi_tables.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/lib/src/fwts_acpi_tables.c b/src/lib/src/fwts_acpi_tables.c
-index bdd224aa..58e982a6 100644
+index dc42a8bd..4fa1246a 100644
--- a/src/lib/src/fwts_acpi_tables.c
+++ b/src/lib/src/fwts_acpi_tables.c
@@ -42,6 +42,7 @@
@@ -26,3 +25,6 @@ index bdd224aa..58e982a6 100644
#define PAGE_SIZE (4096)
static fwts_acpi_table_info tables[ACPI_MAX_TABLES];
+--
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0006-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch
index bebbfa4ad..eb8b0b78e 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0003-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0006-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch
@@ -1,25 +1,24 @@
-From 1848b8f8b9be500046ca5d632789a068d6151815 Mon Sep 17 00:00:00 2001
+From f723458eb649a9ad1d5d0e3dd6e801b284680fa7 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 8 Jun 2017 16:50:59 -0700
-Subject: [PATCH] use intptr_t to fix pointer-to-int-cast issues
+Subject: [PATCH 6/6] use intptr_t to fix pointer-to-int-cast issues
uintptr_t is guaranteed to be wide enough that
converting a void* to uintptr_t and back again
will yield the original pointer value
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
---
src/lib/src/fwts_acpi_tables.c | 4 ++--
src/lib/src/fwts_mmap.c | 2 +-
- src/lib/src/fwts_smbios.c | 4 ++--
- 3 files changed, 5 insertions(+), 5 deletions(-)
+ src/lib/src/fwts_smbios.c | 2 +-
+ 3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/lib/src/fwts_acpi_tables.c b/src/lib/src/fwts_acpi_tables.c
-index 58e982a6..6522032f 100644
+index 4fa1246a..7ef197cd 100644
--- a/src/lib/src/fwts_acpi_tables.c
+++ b/src/lib/src/fwts_acpi_tables.c
-@@ -156,7 +156,7 @@ static fwts_acpi_table_rsdp *fwts_acpi_get_rsdp(fwts_framework *fw, void *addr,
+@@ -173,7 +173,7 @@ static fwts_acpi_table_rsdp *fwts_acpi_get_rsdp(fwts_framework *fw, void *addr,
return NULL;
}
@@ -28,7 +27,7 @@ index 58e982a6..6522032f 100644
return NULL;
if (fwts_safe_memcpy(rsdp, mem, sizeof(fwts_acpi_table_rsdp)) != FWTS_OK) {
-@@ -455,7 +455,7 @@ static int fwts_acpi_load_tables_from_firmware(fwts_framework *fw)
+@@ -486,7 +486,7 @@ static int fwts_acpi_load_tables_from_firmware(fwts_framework *fw)
if ((rsdp = fwts_acpi_get_rsdp(fw, rsdp_addr, &rsdp_len)) == NULL)
return FWTS_ERROR;
@@ -38,10 +37,10 @@ index 58e982a6..6522032f 100644
/* Load any tables from XSDT if it's valid */
if (rsdp->xsdt_address) {
diff --git a/src/lib/src/fwts_mmap.c b/src/lib/src/fwts_mmap.c
-index e28abf87..2180b2cc 100644
+index 2f2514f1..fbd946f4 100644
--- a/src/lib/src/fwts_mmap.c
+++ b/src/lib/src/fwts_mmap.c
-@@ -81,7 +81,7 @@ int fwts_munmap(void *mem, const size_t size)
+@@ -82,7 +82,7 @@ int fwts_munmap(void *mem, const size_t size)
off_t offset;
page_size = fwts_page_size();
@@ -51,24 +50,18 @@ index e28abf87..2180b2cc 100644
if (munmap((void *)((uint8_t *)mem - offset), size + offset) < 0)
return FWTS_ERROR;
diff --git a/src/lib/src/fwts_smbios.c b/src/lib/src/fwts_smbios.c
-index e5b3c774..c8134926 100644
+index 8da572e9..04315bd3 100644
--- a/src/lib/src/fwts_smbios.c
+++ b/src/lib/src/fwts_smbios.c
-@@ -55,7 +55,7 @@ static void *fwts_smbios_find_entry_uefi(fwts_framework *fw, fwts_smbios_entry *
+@@ -78,7 +78,7 @@ static void *fwts_smbios_find_entry_uefi(
+ if ((addr = fwts_scan_efi_systab(smbios)) != NULL) {
fwts_smbios_entry *mapped_entry;
- const size_t size = sizeof(fwts_smbios_entry);
- if ((mapped_entry = fwts_mmap((off_t)addr, size)) != FWTS_MAP_FAILED) {
+ if ((mapped_entry = fwts_mmap((uintptr_t)addr, size)) != FWTS_MAP_FAILED) {
if (fwts_safe_memcpy(entry, mapped_entry, size) == FWTS_OK) {
(void)fwts_munmap(mapped_entry, size);
*type = FWTS_SMBIOS;
-@@ -91,7 +91,7 @@ static void *fwts_smbios30_find_entry_uefi(fwts_framework *fw, fwts_smbios30_ent
- fwts_smbios30_entry *mapped_entry;
- const size_t size = sizeof(fwts_smbios30_entry);
-
-- if ((mapped_entry = fwts_mmap((off_t)addr, size)) != FWTS_MAP_FAILED) {
-+ if ((mapped_entry = fwts_mmap((uintptr_t)addr, size)) != FWTS_MAP_FAILED) {
- if (fwts_safe_memread(mapped_entry, size) == FWTS_OK) {
- *entry = *mapped_entry;
- (void)fwts_munmap(mapped_entry, size);
+--
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts_20.07.00.bb b/meta-openembedded/meta-oe/recipes-test/fwts/fwts_21.03.00.bb
index 28565eb8c..aa7d422f7 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts_20.07.00.bb
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts_21.03.00.bb
@@ -6,27 +6,27 @@ LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://src/main.c;beginline=1;endline=16;md5=31da590f3e9f3bd34dcdb9e4db568519"
SRC_URI = "http://fwts.ubuntu.com/release/fwts-V${PV}.tar.gz;subdir=${BP} \
- file://0001-Include-poll.h-instead-of-deprecated-sys-poll.h.patch \
- file://0002-Define-__SWORD_TYPE-if-not-defined-by-libc.patch \
- file://0003-Undefine-PAGE_SIZE.patch \
file://0001-Add-correct-printf-qualifier-for-off_t.patch \
- file://0003-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch \
- file://0001-Remove-Werror-from-build.patch \
+ file://0002-Include-poll.h-instead-of-deprecated-sys-poll.h.patch \
+ file://0003-Remove-Werror-from-build.patch \
+ file://0004-Define-__SWORD_TYPE-if-not-defined-by-libc.patch \
+ file://0005-Undefine-PAGE_SIZE.patch \
+ file://0006-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch \
"
-SRC_URI[sha256sum] = "4a8e0211b388efbcfcb6530297e9a924d0afa2d6db58e9db2f031129eda6d66f"
+SRC_URI[sha256sum] = "c22dcba2572e4237bf2fe9ab579e195cf051d3a99b2c07ab58f757cae02d24fb"
COMPATIBLE_HOST = "(i.86|x86_64|aarch64|powerpc64).*-linux"
-DEPENDS = "libpcre json-c glib-2.0 dtc bison-native libbsd"
+DEPENDS = "libpcre glib-2.0 dtc bison-native libbsd"
DEPENDS_append_libc-musl = " libexecinfo"
+# Use brokensep for now (https://github.com/ColinIanKing/fwts/issues/2)
inherit autotools-brokensep bash-completion pkgconfig
-CFLAGS += "-I${STAGING_INCDIR}/json-c -Wno-error=unknown-pragmas"
LDFLAGS_append_libc-musl = " -lexecinfo"
FILES_${PN} += "${libdir}/fwts/lib*${SOLIBS}"
FILES_${PN}-dev += "${libdir}/fwts/lib*${SOLIBSDEV} ${libdir}/fwts/lib*.la"
FILES_${PN}-staticdev += "${libdir}/fwts/lib*a"
-FILES_${PN}-dbg += "${libdir}/fwts/.debug"
+RDEPENDS_${PN} += "dtc"
diff --git a/meta-openembedded/meta-perl/conf/layer.conf b/meta-openembedded/meta-perl/conf/layer.conf
index 2209d3d43..87bb91f61 100644
--- a/meta-openembedded/meta-perl/conf/layer.conf
+++ b/meta-openembedded/meta-perl/conf/layer.conf
@@ -15,4 +15,4 @@ LAYERVERSION_perl-layer = "1"
LAYERDEPENDS_perl-layer = "core openembedded-layer"
-LAYERSERIES_COMPAT_perl-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_perl-layer = " hardknott"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libcrypt/libcrypt-openssl-guess-perl_0.11.bb b/meta-openembedded/meta-perl/recipes-perl/libcrypt/libcrypt-openssl-guess-perl_0.12.bb
index 57df78b4e..6f35e39bf 100644
--- a/meta-openembedded/meta-perl/recipes-perl/libcrypt/libcrypt-openssl-guess-perl_0.11.bb
+++ b/meta-openembedded/meta-perl/recipes-perl/libcrypt/libcrypt-openssl-guess-perl_0.12.bb
@@ -5,8 +5,8 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=ea914cc2718e8d53bd7744d96e66c03c"
SRC_URI = "http://www.cpan.org/modules/by-module/Crypt/Crypt-OpenSSL-Guess-${PV}.tar.gz "
-SRC_URI[md5sum] = "e768fe2c07826b0ac9ea604c79f93032"
-SRC_URI[sha256sum] = "aa6b18e38cb852cbad80a58cd90c395b40819d4d01e0ab37e7703149094d7167"
+SRC_URI[md5sum] = "9e86baf96828a38c967003a5e66f0c39"
+SRC_URI[sha256sum] = "0a18d18768cf42b49b15c9dea626199dc74346bbbc76acd3d817b9c1d2bd471d"
DEPENDS += "openssl"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-ssleay-perl_1.85.bb b/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-ssleay-perl_1.85.bb
index 50ab5af3a..93a0687b2 100644
--- a/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-ssleay-perl_1.85.bb
+++ b/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-ssleay-perl_1.85.bb
@@ -19,6 +19,7 @@ RDEPENDS_${PN} += "\
perl-module-extutils-makemaker \
perl-module-mime-base64 \
perl-module-socket \
+ perl-module-autoloader \
zlib \
"
diff --git a/meta-openembedded/meta-python/conf/layer.conf b/meta-openembedded/meta-python/conf/layer.conf
index 321d0da5e..ab66ffd8e 100644
--- a/meta-openembedded/meta-python/conf/layer.conf
+++ b/meta-openembedded/meta-python/conf/layer.conf
@@ -14,6 +14,6 @@ LAYERVERSION_meta-python = "1"
LAYERDEPENDS_meta-python = "core (>= 12) openembedded-layer"
-LAYERSERIES_COMPAT_meta-python = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_meta-python = " hardknott"
LICENSE_PATH += "${LAYERDIR}/licenses"
diff --git a/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb b/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
index 635dee194..0418b5930 100644
--- a/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
+++ b/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
@@ -21,6 +21,7 @@ RDEPENDS_packagegroup-meta-python3 = "\
python3-aiofiles \
python3-aiohttp \
python3-aiohttp-jinja2 \
+ python3-aiohue \
python3-alembic \
python3-ansi2html \
python3-ansicolors \
@@ -103,6 +104,7 @@ RDEPENDS_packagegroup-meta-python3 = "\
python3-djangorestframework \
python3-dnspython \
python3-docopt \
+ python3-docutils \
python3-dominate \
python3-dt-schema \
python3-dynamic-dispatch \
@@ -143,6 +145,7 @@ RDEPENDS_packagegroup-meta-python3 = "\
python3-gmqtt \
python3-gnupg \
python3-google-api-python-client \
+ python3-gpsd-py3 \
python3-graphviz \
python3-greenlet \
python3-greenstalk \
@@ -150,6 +153,7 @@ RDEPENDS_packagegroup-meta-python3 = "\
python3-grpcio-tools \
python3-gsocketpool \
python3-gunicorn \
+ python3-h11 \
python3-h2 \
python3-h5py \
python3-haversine \
@@ -167,6 +171,7 @@ RDEPENDS_packagegroup-meta-python3 = "\
python3-idna \
python3-idna \
python3-idna-ssl \
+ python3-ifaddr \
python3-imageio \
python3-incremental \
python3-inflection \
@@ -185,6 +190,7 @@ RDEPENDS_packagegroup-meta-python3 = "\
python3-jdatetime \
python3-jdcal \
python3-jedi \
+ python3-jmespath \
python3-jsmin \
python3-jsonpatch \
python3-jsonpath-rw \
@@ -248,6 +254,7 @@ RDEPENDS_packagegroup-meta-python3 = "\
python3-parse-type \
python3-parso \
python3-passlib \
+ python3-pastedeploy \
python3-pathtools3 \
python3-pep8 \
python3-periphery \
@@ -320,6 +327,7 @@ RDEPENDS_packagegroup-meta-python3 = "\
python3-pyscaffold \
python3-pyserial \
python3-pysocks \
+ python3-pysonos \
python3-pystache \
python3-pystemd \
python3-pytest-asyncio \
@@ -329,6 +337,7 @@ RDEPENDS_packagegroup-meta-python3 = "\
python3-pytest-runner \
python3-pytest-tempdir \
python3-pytest-timeout \
+ python3-pythonping \
python3-python-vlc \
python3-pytoml \
python3-pytun \
@@ -361,6 +370,7 @@ RDEPENDS_packagegroup-meta-python3 = "\
python3-scrypt \
python3-sdnotify \
python3-semver \
+ python3-semantic-version \
python3-send2trash \
python3-sentry-sdk \
python3-serpent \
@@ -405,6 +415,7 @@ RDEPENDS_packagegroup-meta-python3 = "\
python3-twitter \
python3-twofish \
python3-txaio \
+ python3-txdbus \
python3-txws \
python3-typed-ast \
python3-typeguard \
@@ -444,6 +455,7 @@ RDEPENDS_packagegroup-meta-python3 = "\
python3-zopeinterface \
telepathy-python3 \
"
+RDEPENDS_packagegroup-meta-python3_remove_libc-musl_powerpc64le = "python3-grpcio python3-grpcio-tools"
RDEPENDS_packagegroup-meta-python3-ptest = "\
python3-cryptography-ptest \
@@ -507,6 +519,7 @@ RDEPENDS_packagegroup-meta-python3-ptest = "\
python3-uritemplate-ptest \
python3-webcolors-ptest \
python3-whoosh-ptest \
+ python3-wpa-supplicant \
python3-xlrd-ptest \
python3-xmltodict-ptest \
python3-xxhash-ptest \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-absl_0.10.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-absl_0.12.0.bb
index 5be00ccb4..2ecf10caa 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-absl_0.10.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-absl_0.12.0.bb
@@ -4,8 +4,8 @@ SECTION = "devel/python"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
-SRC_URI[md5sum] = "9cb38ddf7a2f000e2c92e5d9dfa36ffa"
-SRC_URI[sha256sum] = "b20f504a7871a580be5268a18fbad48af4203df5d33dbc9272426cb806245a45"
+SRC_URI[md5sum] = "cfc383e2c647698666a7c5d8ef83a675"
+SRC_URI[sha256sum] = "b44f68984a5ceb2607d135a615999b93924c771238a63920d17d3387b0d229d5"
PYPI_PACKAGE = "absl-py"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohttp_3.7.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohttp_3.7.4.post0.bb
index 63d678389..8bf129d30 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohttp_3.7.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohttp_3.7.4.post0.bb
@@ -4,7 +4,7 @@ HOMEPAGE = "https://github.com/aio-libs/aiohttp"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3bf3d48554bdca1ea7fdb48de378c2ca"
-SRC_URI[sha256sum] = "5d84ecc73141d0a0d61ece0742bb7ff5751b0657dab8405f899d3ceb104cc7de"
+SRC_URI[sha256sum] = "493d3299ebe5f5a7c66b9819eacdcfbbaaf1a8e84911ddffcdc48888497afecf"
PYPI_PACKAGE = "aiohttp"
inherit setuptools3 pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohue_2.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohue_2.2.0.bb
new file mode 100644
index 000000000..a2a7363f6
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohue_2.2.0.bb
@@ -0,0 +1,12 @@
+DESCRIPTION = "Asynchronous library to control Philips Hue"
+HOMEPAGE = "https://pypi.org/project/aiohue/"
+SECTION = "devel/python"
+LICENSE = "Apache-2.0"
+# No license file available but the license is specified in PKG-INFO and setup.py.
+LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=7145f7cdd263359b62d342a02f005515"
+
+SRC_URI[sha256sum] = "35696d04d6eb0328b7031ea3c0a3cfe5d83dfcf62f920522e4767d165c6bc529"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "${PYTHON_PN}-aiohttp"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.5.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.5.8.bb
index 92b691e17..fdf0d36b5 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.5.5.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.5.8.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=c4ece55266dcdd02ce165b1ee0e490bb"
inherit pypi setuptools3
-SRC_URI[sha256sum] = "df0028c19275a2cff137e39617a39cdcdbd1173733b87b6bfa257b7c0860213b"
+SRC_URI[sha256sum] = "e27fd67732c97a1c370c33169ef4578cf96436fa0e7dcfaeeef4a917d0737d56"
PYPI_PACKAGE = "alembic"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.5.3.bb
index f69d85015..f1d9c66af 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.5.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.5.3.bb
@@ -4,7 +4,7 @@ SECTION = "devel/python"
LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-SRC_URI[sha256sum] = "b31c92f545517dcc452f284bc9c044050862fbe6d93d2b3de4a215a6b384bf0d"
+SRC_URI[sha256sum] = "ad63b8552c70939568966811a088ef0bc880f99a24a00834abd0e3681b514f91"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_21.2.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_21.3.1.bb
index cc3773fc5..daa66ec1a 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_21.2.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_21.3.1.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "http://crossbar.io/autobahn"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=97c0bda20ad1d845c6369c0e47a1cd98"
-SRC_URI[sha256sum] = "bf7a9d302a34d0f719d43c57f65ca1f2f5c982dd6ea0c11e1e190ef6f43710fe"
+SRC_URI[sha256sum] = "e126c1f583e872fb59e79d36977cfa1f2d0a8a79f90ae31f406faae7664b8e03"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-backports-functools-lru-cache_1.6.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-backports-functools-lru-cache_1.6.4.bb
index e967958c0..c90ffa1b4 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-backports-functools-lru-cache_1.6.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-backports-functools-lru-cache_1.6.4.bb
@@ -2,12 +2,11 @@ SUMMARY = "Backport of functools.lru_cache from Python 3.3"
HOMEPAGE = "https://github.com/jaraco/backports.functools_lru_cache"
SECTION = "devel/python"
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=a33f38bbf47d48c70fe0d40e5f77498e"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=7a7126e068206290f3fe9f8d6c713ea6"
PYPI_PACKAGE = "backports.functools_lru_cache"
-SRC_URI[md5sum] = "103000b21a8e683647e2ce41929f2a9d"
-SRC_URI[sha256sum] = "8fde5f188da2d593bd5bc0be98d9abc46c95bb8a9dde93429570192ee6cc2d4a"
+SRC_URI[sha256sum] = "d5ed2169378b67d3c545e5600d363a923b09c456dab1593914935a68ad478271"
DEPENDS += "${PYTHON_PN}-setuptools-scm-native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_1.6.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_1.9.2.bb
index 16beab551..0716e8e1d 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_1.6.3.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_1.9.2.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/ilanschnell/bitarray"
LICENSE = "PSF"
LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=2ad702cdcd49e8d2ac01d7e7d0810d2d"
-SRC_URI[sha256sum] = "ae27ce4bef4f35b4cc2c0b0d9cf02ed49eee567c23d70cb5066ad215f9b62b3c"
+SRC_URI[sha256sum] = "d7a49d21ae04c5af195023b140800186ebf208e3a4fc5b21a1389531cb7a7170"
inherit setuptools3 pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.24.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.25.0.bb
index 562829028..a1941bf3c 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.24.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.25.0.bb
@@ -8,8 +8,7 @@ LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=2ee41112a44fe7014dce33e26468ba93"
SRCNAME = "cassandra-driver"
-SRC_URI[md5sum] = "c31bc29989d8b0c7524a38b0e38c8bfb"
-SRC_URI[sha256sum] = "83ec8d9a5827ee44bb1c0601a63696a8a9086beaf0151c8255556299246081bd"
+SRC_URI[sha256sum] = "8ad7d7c090eb1cac6110b3bfc1fd2d334ac62f415aac09350ebb8d241b7aa7ee"
DISTUTILS_BUILD_ARGS += " \
--no-libev \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-cerberus_1.3.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-cerberus_1.3.3.bb
index 61a76f5f6..fa0bbb0aa 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-cerberus_1.3.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-cerberus_1.3.3.bb
@@ -1,11 +1,11 @@
-# The PyPI package uses a capital letter so we have to specify this explicitly
-PYPI_PACKAGE = "Cerberus"
-
-inherit pypi setuptools3
-
SUMMARY = "Lightweight, extensible schema and data validation tool for Python dictionaries."
+HOMEPAGE = "http://docs.python-cerberus.org/"
+SECTION = "devel/python"
LICENSE = "ISC"
LIC_FILES_CHKSUM = "file://LICENSE;md5=48f8e9432d0dac5e0e7a18211a0bacdb"
-SRC_URI[md5sum] = "6e648b38b468617a06745d1e8a96c848"
-SRC_URI[sha256sum] = "302e6694f206dd85cb63f13fd5025b31ab6d38c99c50c6d769f8fa0b0f299589"
+# The PyPI package uses a capital letter so we have to specify this explicitly
+PYPI_PACKAGE = "Cerberus"
+inherit pypi setuptools3
+
+SRC_URI[sha256sum] = "eec10585c33044fb7c69650bc5b68018dac0443753337e2b07684ee0f3c83329"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-cheetah_3.2.6.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-cheetah_3.2.6.post1.bb
index a7e5443f2..8149d6cce 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-cheetah_3.2.6.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-cheetah_3.2.6.post1.bb
@@ -11,4 +11,4 @@ RDEPENDS_${PN}_class-native = ""
BBCLASSEXTEND = "native nativesdk"
-SRC_URI[sha256sum] = "f1c2b693cdcac2ded2823d363f8459ae785261e61c128d68464c8781dba0466b"
+SRC_URI[sha256sum] = "58b5d84e5fbff6cf8e117414b3ea49ef51654c02ee887d155113c5b91d761967"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-colorlog_4.7.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-colorlog_5.0.1.bb
index c9754ed88..61b8152a1 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-colorlog_4.7.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-colorlog_5.0.1.bb
@@ -1,10 +1,10 @@
DESCRIPTION = "A colored formatter for the python logging module"
HOMEPAGE = "https://github.com/borntyping/python-colorlog"
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=85a1d478cd35d62763a1419e948bdde4"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=5c3c6ebdec7792ae12df8d1c0a46b26a"
inherit pypi setuptools3
PYPI_PACKAGE = "colorlog"
-SRC_URI[sha256sum] = "18d05b616438a75762d7d214b9ec3b05d274466c9f3ddd92807e755840c88251"
+SRC_URI[sha256sum] = "f17c013a06962b02f4449ee07cfdbe6b287df29efc2c9a1515b4a376f4e588ea"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-configargparse_1.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-configargparse_1.4.bb
index aac58de37..393f13874 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-configargparse_1.3.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-configargparse_1.4.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/bw2/ConfigArgParse"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=da746463714cc35999ed9a42339f2943"
-SRC_URI[sha256sum] = "0428b975ab6c48bb101ccb732e1b5cb616296e28268e032aa806f32b647a1cc1"
+SRC_URI[sha256sum] = "abef9ff44fb0091f0e3bb2ee7e5b26a02b5b62d45408a5272a9bd461f5b59b4b"
PYPI_PACKAGE = "ConfigArgParse"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_5.0.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_5.0.2.bb
index b78de5844..87cdd09f7 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_5.0.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_5.0.2.bb
@@ -5,8 +5,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=10;endline=10;md5=23f9ad5cad3d8cc0336e2a5d8a87e1fa"
-SRC_URI[md5sum] = "5faf185693cd21d83f6a3bc01b5733fa"
-SRC_URI[sha256sum] = "005c3b102c96f4be9b8f40dafbd4997db003d07d1caa19f37808be8031475f2a"
+SRC_URI[sha256sum] = "85d5de102cfe6d14a5172676f09d19c465ce63d6019cf0a4ef13385fc535e828"
DEPENDS += "${PYTHON_PN}-setuptools-scm-native ${PYTHON_PN}-toml-native"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-configshell-fb_1.1.28.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-configshell-fb_1.1.29.bb
index 2d9ec079a..70e67a1a7 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-configshell-fb_1.1.28.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-configshell-fb_1.1.29.bb
@@ -7,7 +7,7 @@ LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://COPYING;md5=1dece7821bf3fd70fe1309eaa37d52a2"
SRC_URI = "git://github.com/open-iscsi/configshell-fb.git;protocol=https;branch=master"
-SRCREV = "da8f0cef114e7343a7ae96ff1db7c8c574f819be"
+SRCREV = "d74a33b69f688ed9b8b28033835303604639d4eb"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-contextlib2_0.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-contextlib2_0.6.0.post1.bb
index 6074efa73..2eac0ad27 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-contextlib2_0.6.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-contextlib2_0.6.0.post1.bb
@@ -4,8 +4,7 @@ SECTION = "devel/python"
LICENSE = "PSF"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=43d1c7827e8fad6454b553caf0e1d734"
-SRC_URI[md5sum] = "d03a631073b40073b5c41364ad8f5979"
-SRC_URI[sha256sum] = "7197aa736777caac513dbd800944c209a49765bf1979b12b037dce0277077ed3"
+SRC_URI[sha256sum] = "01f490098c18b19d2bd5bb5dc445b2054d2fa97f09a4280ba2c5f3c394c8162e"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_5.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_5.5.bb
index 4ea9b6a19..c780a63ae 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_5.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_5.5.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://coverage.readthedocs.io"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2ee41112a44fe7014dce33e26468ba93"
-SRC_URI[sha256sum] = "6d2e262e5e8da6fa56e774fb8e2643417351427604c2b177f8e8c5f75fc928ca"
+SRC_URI[sha256sum] = "ebe78fe9a0e874362175b02371bdfbee64d8edc42a044253ddf4ee7d3c15212c"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-croniter_1.0.6.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-croniter_1.0.12.bb
index d3b6fa1f4..fd7046895 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-croniter_1.0.6.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-croniter_1.0.12.bb
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://docs/LICENSE;md5=b8ee59850b882cbf623188489ea748e2"
PYPI_PACKAGE = "croniter"
-SRC_URI[sha256sum] = "e79bcc9681d2345e71360241aebe19ed6c5475fec40cc59a7998fe1a2ca568d0"
+SRC_URI[sha256sum] = "3603ef0d60fc6df98ce356c01529de90b06a002379b9f5e9eae981fb9c1fd936"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_4.4.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_5.0.7.bb
index 23d0cf218..3131b2bc0 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_4.4.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_5.0.7.bb
@@ -9,8 +9,7 @@ decorator, just because you can."
LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=be2fd2007972bf96c08af3293d728b22"
-SRC_URI[md5sum] = "d83c624cce93e6bdfab144821b526e1d"
-SRC_URI[sha256sum] = "e3a62f0520172440ca0dcc823749319382e377f37f140a0b99ef45fecb84bfe7"
+SRC_URI[sha256sum] = "6f201a6c4dac3d187352661f508b9364ec8091217442c9478f1f83c003a0f060"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-defusedxml_0.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-defusedxml_0.7.1.bb
index d041d0e6c..f48c429c4 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-defusedxml_0.6.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-defusedxml_0.7.1.bb
@@ -5,7 +5,6 @@ parsers that prevent any potentially malicious operation."
LICENSE = "PSF"
LIC_FILES_CHKSUM = "file://LICENSE;md5=056fea6a4b395a24d0d278bf5c80249e"
-SRC_URI[md5sum] = "a59741f675c4cba649de40a99f732897"
-SRC_URI[sha256sum] = "f684034d135af4c6cbb949b8a4d2ed61634515257a67299e5f940fbaa34377f5"
+SRC_URI[sha256sum] = "1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-django_3.1.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-django_3.2.bb
index ed6513d0c..e147e2f9d 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-django_3.1.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-django_3.2.bb
@@ -1,8 +1,7 @@
require python-django.inc
inherit setuptools3
-SRC_URI[md5sum] = "d5e894fb3c46064e84e9dc68a08a46d0"
-SRC_URI[sha256sum] = "59c8125ca873ed3bdae9c12b146fbbd6ed8d0f743e4cf5f5817af50c51f1fc2f"
+SRC_URI[sha256sum] = "21f0f9643722675976004eb683c55d33c05486f94506672df3d6a141546f389d"
RDEPENDS_${PN} += "\
${PYTHON_PN}-sqlparse \
@@ -10,5 +9,5 @@ RDEPENDS_${PN} += "\
# Set DEFAULT_PREFERENCE so that the LTS version of django is built by
# default. To build the 3.x branch,
-# PREFERRED_VERSION_python3-django = "3.1.1" can be added to local.conf
+# PREFERRED_VERSION_python3-django = "3.2" can be added to local.conf
DEFAULT_PREFERENCE = "-1"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-djangorestframework_3.12.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-djangorestframework_3.12.4.bb
index 6742b87b2..417e36721 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-djangorestframework_3.12.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-djangorestframework_3.12.4.bb
@@ -5,8 +5,8 @@ HOMEPAGE = "https://pypi.python.org/pypi/djangorestframework"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=7879a5a716147a784f7e524c9cf103c1"
-SRC_URI[md5sum] = "e70d58ee2f83f11d4efe33162bb8af3b"
-SRC_URI[sha256sum] = "0898182b4737a7b584a2c73735d89816343369f259fea932d90dc78e35d8ac33"
+SRC_URI[sha256sum] = "f747949a8ddac876e879190df194b925c177cdeb725a099db1460872f7c0a7f2"
+
PYPI_PACKAGE = "djangorestframework"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-docutils_0.17.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-docutils_0.17.bb
new file mode 100644
index 000000000..8605e93b5
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-docutils_0.17.bb
@@ -0,0 +1,9 @@
+SUMMARY = "Docutils is a modular system for processing documentation into useful formats"
+HOMEPAGE = "https://pypi.org/project/docutils/"
+SECTION = "devel/python"
+LICENSE = "BSD-2-Clause & GPL-2.0 & Python-2.0"
+LIC_FILES_CHKSUM = "file://COPYING.txt;md5=836a1950177996968a49ff477a4a61c4"
+
+SRC_URI[sha256sum] = "e2ffeea817964356ba4470efba7c2f42b6b0de0b04e66378507e3e2504bbff4c"
+
+inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-elementpath_2.1.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-elementpath_2.2.1.bb
index 10aa17d38..b0a733968 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-elementpath_2.1.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-elementpath_2.2.1.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/sissaschool/elementpath"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=5dbb7fb7d72da3921202dd7b995d3ecf"
-SRC_URI[sha256sum] = "326643aca7beff0864d022cd591736b8550a70fccafd67a89198166baed1c2c4"
+SRC_URI[sha256sum] = "c7b996c5624926f329f4379fbcffd5787629e08b2f8d7159d23525e9243ba637"
PYPI_PACKAGE = "elementpath"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-migrate_2.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-migrate_2.7.0.bb
index 810f0eb27..1bf0dfa80 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-migrate_2.6.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-migrate_2.7.0.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "SQLAlchemy database migrations for Flask applications using Alemb
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b69377f79f3f48c661701236d5a6a85"
-SRC_URI[sha256sum] = "8626af845e6071ef80c70b0dc16d373f761c981f0ad61bb143a529cab649e725"
+SRC_URI[sha256sum] = "ae2f05671588762dd83a21d8b18c51fe355e86783e24594995ff8d7380dffe38"
PYPI_PACKAGE = "Flask-Migrate"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-sqlalchemy_2.4.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-sqlalchemy_2.5.1.bb
index 2755c7d6b..3ca0227bd 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-sqlalchemy_2.4.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-sqlalchemy_2.5.1.bb
@@ -2,8 +2,7 @@ DESCRIPTION = "Adds SQLAlchemy support to your Flask application."
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=ffeffa59c90c9c4a033c7574f8f3fb75"
-SRC_URI[md5sum] = "63a522cb82a75292dc8bc77b6d26187a"
-SRC_URI[sha256sum] = "bfc7150eaf809b1c283879302f04c42791136060c6eeb12c0c6674fb1291fae5"
+SRC_URI[sha256sum] = "2bda44b43e7cacb15d4e05ff3cc1f8bc97936cc464623424102bfc2c35e95912"
PYPI_PACKAGE = "Flask-SQLAlchemy"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_1.12.8.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_2.2.0.bb
index 1774f962e..da7cae6c3 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_1.12.8.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_2.2.0.bb
@@ -1,8 +1,9 @@
-SUMMARY = "The Google API Client for Python is a client library for accessing the Plus, Moderator, and many other Google APIs."
+SUMMARY = "The Google API Client for Python is a client library for accessing the Plus, \
+Moderator, and many other Google APIs."
HOMEPAGE = "https://github.com/googleapis/google-api-python-client"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=94023d14f6b58272fd885e4e3f2f08b3"
-SRC_URI[sha256sum] = "f3b9684442eec2cfe9f9bb48e796ef919456b82142c7528c5fd527e5224f08bb"
+SRC_URI[sha256sum] = "29447c8e95c23ae76fcf9817432f5ed015495513abeac564905640a0ef7d1898"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-gpsd-py3_0.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-gpsd-py3_0.3.0.bb
new file mode 100644
index 000000000..35485ba7c
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-gpsd-py3_0.3.0.bb
@@ -0,0 +1,16 @@
+DESCRIPTION = "This is a library for polling gpsd in Python3"
+HOMEPAGE = "https://github.com/MartijnBraam/gpsd-py3"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://setup.py;beginline=10;endline=10;md5=c2d9994c57f0444e39f1dab19af50254"
+SRC_URI[md5sum] = "041ce56e8879e2104b4d54c8119cd529"
+SRC_URI[sha256sum] = "2908d3bd78dfb6720ecfe22f97e139b5a4a198f38df3a77215cf644a33513192"
+
+PYPI_PACKAGE = "gpsd-py3"
+
+inherit pypi setuptools3
+
+CLEANBROKEN = "1"
+
+RDEPENDS_${PN} += " \
+ python3 \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.35.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.37.0.bb
index 12b00cfa3..d1b934bd0 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.35.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.37.0.bb
@@ -11,8 +11,12 @@ DEPENDS += "${PYTHON_PN}-grpcio"
SRC_URI += "file://0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch"
-SRC_URI[sha256sum] = "9e2a41cba9c5a20ae299d0fdd377fe231434fa04cbfbfb3807293c6ec10b03cf"
+SRC_URI[sha256sum] = "3ec510c1b6bfc32effc639acf9a055e72dab7a7b6757bf72f2132790d6a7cf1c"
RDEPENDS_${PN} = "${PYTHON_PN}-grpcio"
BBCLASSEXTEND = "native nativesdk"
+
+# Needs abseil-cpp which does not build for ppc64le/musl
+COMPATIBLE_HOST_libc-musl_powerpc64le = "null"
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/0001-absl-always-use-asm-sgidefs.h.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/0001-absl-always-use-asm-sgidefs.h.patch
new file mode 100644
index 000000000..be516ca50
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/0001-absl-always-use-asm-sgidefs.h.patch
@@ -0,0 +1,33 @@
+From 8f21fdfb83b0fa844a9f1f03a86a9ca46642d85e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 9 Apr 2020 13:06:27 -0700
+Subject: [PATCH 1/2] absl: always use <asm/sgidefs.h>
+
+Fixes mips/musl build, since sgidefs.h is not present on all C libraries
+but on linux asm/sgidefs.h is there and contains same definitions, using
+that makes it portable.
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ third_party/abseil-cpp/absl/base/internal/direct_mmap.h | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+--- a/third_party/abseil-cpp/absl/base/internal/direct_mmap.h
++++ b/third_party/abseil-cpp/absl/base/internal/direct_mmap.h
+@@ -41,13 +41,9 @@
+
+ #ifdef __mips__
+ // Include definitions of the ABI currently in use.
+-#ifdef __BIONIC__
+-// Android doesn't have sgidefs.h, but does have asm/sgidefs.h, which has the
++// bionic/musl C libs don't have sgidefs.h, but do have asm/sgidefs.h, which has the
+ // definitions we need.
+ #include <asm/sgidefs.h>
+-#else
+-#include <sgidefs.h>
+-#endif // __BIONIC__
+ #endif // __mips__
+
+ // SYS_mmap and SYS_munmap are not defined in Android.
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/boring_ssl.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/boring_ssl.patch
index 65db4a6ed..d12e35a99 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/boring_ssl.patch
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/boring_ssl.patch
@@ -1,36 +1,50 @@
+From f71b32eb8a5c173fc5733847437b9485d75bb2e5 Mon Sep 17 00:00:00 2001
+From: Leon Anavi <leon.anavi@konsulko.com>
+Date: Fri, 9 Apr 2021 14:06:36 +0300
+Subject: [PATCH] setup.py: Fix determining target platform
+
Do not poke at the build machine to determine target platform or architecture
pass it from environment instead for cross compiling to work
Upstream-Status: Inappropriate [OE-Specific]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
+---
+ setup.py | 11 +++++++----
+ 1 file changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index c93d419f32..71a944a9d0 100644
--- a/setup.py
+++ b/setup.py
-@@ -109,6 +109,8 @@ CLASSIFIERS = [
- BUILD_WITH_BORING_SSL_ASM = os.environ.get('GRPC_BUILD_WITH_BORING_SSL_ASM',
- True)
+@@ -116,6 +116,9 @@ def _env_bool_value(env_name, default):
+ BUILD_WITH_BORING_SSL_ASM = _env_bool_value('GRPC_BUILD_WITH_BORING_SSL_ASM',
+ 'True')
+BORING_SSL_PLATFORM = os.environ.get('GRPC_BORING_SSL_PLATFORM',
-+ True)
- # Environment variable to determine whether or not the Cython extension should
- # *use* Cython or use the generated C files. Note that this requires the C files
- # to have been generated by building first *with* Cython support. Even if this
-@@ -306,15 +308,15 @@ asm_key = ''
- if BUILD_WITH_BORING_SSL_ASM and not BUILD_WITH_SYSTEM_OPENSSL:
++ 'True')
++
+ # Export this environment variable to override the platform variant that will
+ # be chosen for boringssl assembly optimizations. This option is useful when
+ # crosscompiling and the host platform as obtained by distutils.utils.get_platform()
+@@ -336,13 +339,13 @@ if BUILD_WITH_BORING_SSL_ASM and not BUILD_WITH_SYSTEM_OPENSSL:
LINUX_X86_64 = 'linux-x86_64'
LINUX_ARM = 'linux-arm'
-- if LINUX_X86_64 == util.get_platform():
+ LINUX_AARCH64 = 'linux-aarch64'
+- if LINUX_X86_64 == boringssl_asm_platform:
+ if LINUX_X86_64 == BORING_SSL_PLATFORM:
asm_key = 'crypto_linux_x86_64'
-- elif LINUX_ARM == util.get_platform():
+- elif LINUX_ARM == boringssl_asm_platform:
+ elif LINUX_ARM == BORING_SSL_PLATFORM:
asm_key = 'crypto_linux_arm'
-- elif "mac" in util.get_platform() and "x86_64" in util.get_platform():
-+ elif "mac" in BORING_SSL_PLATFORM and "x86_64" in BORING_SSL_PLATFORM:
+- elif LINUX_AARCH64 == boringssl_asm_platform:
++ elif LINUX_AARCH64 == BORING_SSL_PLATFORM:
+ asm_key = 'crypto_linux_aarch64'
+- elif "mac" in boringssl_asm_platform and "x86_64" in boringssl_asm_platform:
++ elif "mac" in boringssl_asm_platform and "x86_64" in BORING_SSL_PLATFORM:
asm_key = 'crypto_mac_x86_64'
else:
print("ASM Builds for BoringSSL currently not supported on:",
-- util.get_platform())
-+ BORING_SSL_PLATFORM)
- if asm_key:
- asm_files = grpc_core_dependencies.ASM_SOURCE_FILES[asm_key]
- else:
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/mips_bigendian.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/mips_bigendian.patch
new file mode 100644
index 000000000..343f25a46
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/mips_bigendian.patch
@@ -0,0 +1,15 @@
+--- a/third_party/boringssl-with-bazel/src/include/openssl/base.h
++++ b/third_party/boringssl-with-bazel/src/include/openssl/base.h
+@@ -102,10 +102,10 @@ extern "C" {
+ #elif (defined(__PPC__) || defined(__powerpc__))
+ #define OPENSSL_32_BIT
+ #define OPENSSL_PPC
+-#elif defined(__MIPSEL__) && !defined(__LP64__)
++#elif defined(__mips__) && !defined(__LP64__)
+ #define OPENSSL_32_BIT
+ #define OPENSSL_MIPS
+-#elif defined(__MIPSEL__) && defined(__LP64__)
++#elif defined(__mips__) && defined(__LP64__)
+ #define OPENSSL_64_BIT
+ #define OPENSSL_MIPS64
+ #elif defined(__riscv)
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/ppc-boringssl-support.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/ppc-boringssl-support.patch
index dadd3da85..5c9be443d 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/ppc-boringssl-support.patch
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/ppc-boringssl-support.patch
@@ -12,6 +12,6 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
+#elif (defined(__PPC__) || defined(__powerpc__))
+#define OPENSSL_32_BIT
+#define OPENSSL_PPC
- #elif defined(__mips__) && !defined(__LP64__)
+ #elif defined(__MIPSEL__) && !defined(__LP64__)
#define OPENSSL_32_BIT
#define OPENSSL_MIPS
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/riscv64_support.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/riscv64_support.patch
index 7e071ae1e..350c67dea 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/riscv64_support.patch
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio/riscv64_support.patch
@@ -5,7 +5,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
--- a/third_party/boringssl-with-bazel/src/include/openssl/base.h
+++ b/third_party/boringssl-with-bazel/src/include/openssl/base.h
@@ -108,6 +108,14 @@ extern "C" {
- #elif defined(__mips__) && defined(__LP64__)
+ #elif defined(__MIPSEL__) && defined(__LP64__)
#define OPENSSL_64_BIT
#define OPENSSL_MIPS64
+#elif defined(__riscv)
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio_1.35.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio_1.37.0.bb
index 2c137f6ce..47fb71120 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio_1.35.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio_1.37.0.bb
@@ -10,8 +10,10 @@ SRC_URI += "file://0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch"
SRC_URI_append_class-target = " file://ppc-boringssl-support.patch \
file://riscv64_support.patch \
file://boring_ssl.patch \
+ file://mips_bigendian.patch \
+ file://0001-absl-always-use-asm-sgidefs.h.patch \
"
-SRC_URI[sha256sum] = "7bd0ebbb14dde78bf66a1162efd29d3393e4e943952e2f339757aa48a184645c"
+SRC_URI[sha256sum] = "b3ce16aa91569760fdabd77ca901b2288152eb16941d28edd9a3a75a0c4a8a85"
RDEPENDS_${PN} = "${PYTHON_PN}-protobuf \
${PYTHON_PN}-setuptools \
@@ -41,3 +43,7 @@ CLEANBROKEN = "1"
BBCLASSEXTEND = "native nativesdk"
CCACHE_DISABLE = "1"
+
+# needs vdso support
+COMPATIBLE_HOST_libc-musl_powerpc64le = "null"
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-gunicorn_20.0.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-gunicorn_20.1.0.bb
index 23aafd67d..22fe495f4 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-gunicorn_20.0.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-gunicorn_20.1.0.bb
@@ -3,8 +3,7 @@ SUMMARY = "WSGI HTTP Server for UNIX"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=f75f3fb94cdeab1d607e2adaa6077752"
-SRC_URI[md5sum] = "543669fcbb5739ee2af77184c5e571a1"
-SRC_URI[sha256sum] = "1904bb2b8a43658807108d59c3f3d56c2b6121a701161de0ddf9ad140073c626"
+SRC_URI[sha256sum] = "e0a968b5ba15f8a328fdfd7ab1fcb5af4470c28aaf7e55df02a99bc13138e6e8"
inherit pypi setuptools3 ptest
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-h11_0.12.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-h11_0.12.0.bb
new file mode 100644
index 000000000..4cd0d4de7
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-h11_0.12.0.bb
@@ -0,0 +1,8 @@
+SUMMARY = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1"
+HOMEPAGE = "https://github.com/python-hyper/h11"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=f5501d19c3116f4aaeef89369f458693"
+
+inherit pypi setuptools3
+
+SRC_URI[sha256sum] = "47222cb6067e4a307d535814917cd98fd0a57b6788ce715755fa2b6c28b56042"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-h5py/0001-setup.py-Fix-numpy-version.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-h5py/0001-setup.py-Fix-numpy-version.patch
index 4881b023c..9b79cc539 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-h5py/0001-setup.py-Fix-numpy-version.patch
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-h5py/0001-setup.py-Fix-numpy-version.patch
@@ -1,4 +1,4 @@
-From e6c0d487fb5e6063305b8b3187896fbfe5720ed2 Mon Sep 17 00:00:00 2001
+From b1d4d171fd13624f3d8bb917f716b62494066501 Mon Sep 17 00:00:00 2001
From: Leon Anavi <leon.anavi@konsulko.com>
Date: Mon, 22 Feb 2021 18:42:43 +0200
Subject: [PATCH] setup.py: Fix numpy version
@@ -14,12 +14,12 @@ Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/setup.py b/setup.py
-index 7dbe583..6602c97 100755
+index 4b2890c..42ba21b 100755
--- a/setup.py
+++ b/setup.py
@@ -49,7 +49,7 @@ SETUP_REQUIRES = [
- f"Cython >=0.29; python_version<'3.8'",
- f"Cython >=0.29.14; python_version>='3.8'",
+ "Cython >=0.29.14; python_version=='3.8'",
+ "Cython >=0.29.15; python_version>='3.9'",
] + [
- f"numpy =={np_min}; python_version{py_condition}"
+ f"numpy >={np_min}; python_version{py_condition}"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-h5py/0001-setup_build.py-avoid-absolute-path.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-h5py/0001-setup_build.py-avoid-absolute-path.patch
index d0c2ece19..0b8555734 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-h5py/0001-setup_build.py-avoid-absolute-path.patch
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-h5py/0001-setup_build.py-avoid-absolute-path.patch
@@ -1,4 +1,4 @@
-From 1a46082d0889a784037952c4da0cde3822849032 Mon Sep 17 00:00:00 2001
+From 6f8cee826ef9309c174aa97cb6af2ba532ed9dba Mon Sep 17 00:00:00 2001
From: Mingli Yu <mingli.yu@windriver.com>
Date: Thu, 28 Jan 2021 18:44:10 -0800
Subject: [PATCH] setup_build.py: avoid absolute path
@@ -15,7 +15,7 @@ Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/setup_build.py b/setup_build.py
-index 3c7c7ad..d824bdd 100644
+index 78c6677..64db7f7 100644
--- a/setup_build.py
+++ b/setup_build.py
@@ -21,7 +21,7 @@ from setup_configure import BuildConfig
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-h5py_3.1.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-h5py_3.2.1.bb
index 03ae4c9db..5faa0b808 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-h5py_3.1.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-h5py_3.2.1.bb
@@ -4,7 +4,7 @@ SECTION = "devel/python"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=113251d71fb0384712c719b567261c5c"
-SRC_URI[sha256sum] = "1e2516f190652beedcb8c7acfa1c6fa92d99b42331cbef5e5c7ec2d65b0fc3c2"
+SRC_URI[sha256sum] = "89474be911bfcdb34cbf0d98b8ec48b578c27a89fdb1ae4ee7513f1ef8d9249e"
SRC_URI_append = " \
file://0001-setup_build.py-avoid-absolute-path.patch \
@@ -19,6 +19,7 @@ DEPENDS = "python3-pkgconfig-native \
python3-cython-native \
python3-numpy-native \
python3-six-native \
+ hdf5-native \
python3 \
hdf5 \
"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-hexdump_3.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-hexdump_3.3.bb
index cb04e17df..532504803 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-hexdump_3.3.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-hexdump_3.3.bb
@@ -19,9 +19,7 @@ S = "${WORKDIR}"
BBCLASSEXTEND = "native nativesdk"
-do_cleanup_hexfile() {
+do_install_append() {
rm ${D}${datadir}/data/hexfile.bin
rmdir ${D}${datadir}/data ${D}${datadir}
}
-
-addtask cleanup_hexfile before do_package after do_install
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-httplib2_0.19.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-httplib2_0.19.1.bb
index f720723a6..a16f8d9d2 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-httplib2_0.19.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-httplib2_0.19.1.bb
@@ -4,6 +4,6 @@ SECTION = "devel/python"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=56e5e931172b6164b62dc7c4aba6c8cf"
-SRC_URI[sha256sum] = "e0d428dad43c72dbce7d163b7753ffc7a39c097e6788ef10f4198db69b92f08e"
+SRC_URI[sha256sum] = "0b12617eeca7433d4c396a100eaecfa4b08ee99aa881e6df6e257a7aad5d533d"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.3.1.bb
index f70a349fd..d8141c8e8 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.3.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-huey_2.3.1.bb
@@ -5,8 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=5cac039fcc82f01141cc170b48f315d4"
PYPI_PACKAGE = "huey"
-SRC_URI[md5sum] = "aa9f2a8f54cb68c62690c5e28589f49c"
-SRC_URI[sha256sum] = "76978840a875607cd77c283c4ebf3ea5071b2ec06a1ac428d63be0d88f1e7070"
+SRC_URI[sha256sum] = "de9b6d0fd59794378fe05813d302be68038044ef3b68274b84ca8d285e20f803"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-humanize_3.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-humanize_3.4.1.bb
index 646e20f7d..5ffc2b593 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-humanize_3.2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-humanize_3.4.1.bb
@@ -1,10 +1,11 @@
SUMMARY = "Python humanize utilities"
HOMEPAGE = "http://github.com/jmoiron/humanize"
+SECTION = "devel/python"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENCE;md5=4ecc42519e84f6f3e23529464df7bd1d"
-SRC_URI[sha256sum] = "ab69004895689951b79f2ae4fdd6b8127ff0c180aff107856d5d98119a33f026"
+SRC_URI[sha256sum] = "6e04cdd75d66074c34ff93c30a2ad6d19d91202a65c1bd400b2edeedae399bda"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-ifaddr_0.1.7.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-ifaddr_0.1.7.bb
new file mode 100644
index 000000000..4fff7d1e5
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-ifaddr_0.1.7.bb
@@ -0,0 +1,10 @@
+DESCRIPTION = "Cross-platform network interface and IP address enumeration \
+library"
+HOMEPAGE = "https://pypi.org/project/ifaddr/"
+LICENSE = "MIT"
+
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=8debe8d42320ec0ff24665319b625a5e"
+
+SRC_URI[sha256sum] = "1f9e8a6ca6f16db5a37d3356f07b6e52344f6f9f7e806d618537731669eb1a94"
+
+inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-incremental_17.5.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-incremental_21.3.0.bb
index 568ba1989..ff8fab31f 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-incremental_17.5.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-incremental_21.3.0.bb
@@ -3,8 +3,7 @@ HOMEPAGE = "https://github.com/twisted/incremental"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=6ca9b07f08e2c72d48c74d363d1e0e15"
-SRC_URI[md5sum] = "602746e0d438e075a5a9e0678140bba2"
-SRC_URI[sha256sum] = "7b751696aaf36eebfab537e458929e194460051ccad279c72b755a167eebd4b3"
+SRC_URI[sha256sum] = "02f5de5aff48f6b9f665d99d48bfc7ec03b6e3943210de7cfc88856d755d6f57"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-ipython_7.20.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-ipython_7.22.0.bb
index 42795b9bf..7bc0d1d00 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-ipython_7.20.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-ipython_7.22.0.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://COPYING.rst;md5=59b20262b8663cdd094005bddf47af5f"
PYPI_PACKAGE = "ipython"
-SRC_URI[sha256sum] = "1923af00820a8cf58e91d56b89efc59780a6e81363b94464a0f17c039dffff9e"
+SRC_URI[sha256sum] = "9c900332d4c5a6de534b4befeeb7de44ad0cc42e8327fa41b7685abde58cec74"
RDEPENDS_${PN} = "\
${PYTHON_PN}-setuptools \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-isort_5.7.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-isort_5.8.0.bb
index 9f234ee46..36de825d2 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-isort_5.7.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-isort_5.8.0.bb
@@ -4,7 +4,7 @@ LICENSE = "MIT"
SECTION = "devel/python"
LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=6;endline=6;md5=8227180126797a0148f94f483f3e1489"
-SRC_URI[sha256sum] = "c729845434366216d320e936b8ad6f9d681aab72dc7cbc2d51bedc3582f3ad1e"
+SRC_URI[sha256sum] = "0a943902919f65c5684ac4e0154b1ad4fac6dcaa5d9f3426b732f1c8b5419be6"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-jmespath_0.10.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-jmespath_0.10.0.bb
new file mode 100644
index 000000000..46976d19b
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-jmespath_0.10.0.bb
@@ -0,0 +1,12 @@
+SUMMARY = "JMESPath (pronounced 'james path') allows you to declaratively specify how to extract elements from a JSON document."
+HOMEPAGE = "https://pypi.org/project/jmespath/"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2683790f5fabb41a3f75b70558799eb4"
+
+SRC_URI[md5sum] = "65bdcb5fa5bcf1cc710ffa508e78e408"
+SRC_URI[sha256sum] = "b85d0567b8666149a93172712e68920734333c0ce7e89b78b3e987f71e5ed4f9"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "python3-math python3-json python3-numbers"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.28.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.32.bb
index cef20495b..0c8624036 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.28.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.32.bb
@@ -5,6 +5,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=32b15c843b7a329130f4e266a281ebb3"
inherit pypi setuptools3
-SRC_URI[sha256sum] = "e930adc932e4d36087dbbf0f22e1ded32185dfb20662f2e3dd848677a5295a14"
+SRC_URI[sha256sum] = "b6ddfe6c3db30d81a96aaeceb6baf916094ffa23d7dd5fa2c13e13f8b6e600c2"
-RDEPENDS_${PN} += "${PYTHON_PN}-json ${PYTHON_PN}-jsonpointer ${PYTHON_PN}-netclient ${PYTHON_PN}-stringold"
+RDEPENDS_${PN} += " \
+ ${PYTHON_PN}-json \
+ ${PYTHON_PN}-jsonpointer \
+ ${PYTHON_PN}-netclient \
+ ${PYTHON_PN}-stringold \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpointer_2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpointer_2.1.bb
index 68bfe9716..a4cc05c94 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpointer_2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpointer_2.1.bb
@@ -5,8 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=32b15c843b7a329130f4e266a281ebb3"
inherit pypi ptest setuptools3
-SRC_URI[md5sum] = "741b98d0e693b08b5e44e0a9da5a7bb7"
-SRC_URI[sha256sum] = "c192ba86648e05fdae4f08a17ec25180a9aef5008d973407b581798a83975362"
+SRC_URI[sha256sum] = "5a34b698db1eb79ceac454159d3f7c12a451a91f6334a4f638454327b7a89962"
RDEPENDS_${PN} += " \
${PYTHON_PN}-json \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.5.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.6.0.bb
index 3ff7a126e..700c70e53 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.5.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.6.0.bb
@@ -6,6 +6,6 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=9c5c2c74370826468065c5702b8a1fcf"
DEPENDS += "${PYTHON_PN}-setuptools-scm-native"
-SRC_URI[sha256sum] = "5944a9b95e97de1980c65f03b79b356f30a43de48682b8bdd90aa5089f0ec1f4"
+SRC_URI[sha256sum] = "489000d368377571c6f982fba6497f2aa13c6d1facc40660963da62f5c379726"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-luma-core_2.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-luma-core_2.3.1.bb
index b181e0986..47efe8a72 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-luma-core_2.2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-luma-core_2.3.1.bb
@@ -2,11 +2,11 @@ SUMMARY = "A component library to support SBC display drivers"
DESCRIPTION = "A component library to support SBC display drivers"
HOMEPAGE = "https://github.com/rm-hull/luma.core"
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=db07e3d471938ea7d7fd2135f88ac9a1"
+LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=3b1d500f5911ec7522f1f790d616e0ee"
inherit pypi setuptools3
-SRC_URI[sha256sum] = "62a24518d3aa084d75206a19056eb8aa71b5a3d0c159d2e95b388cb3150a7b1c"
+SRC_URI[sha256sum] = "f293f5fff8946eea62af3a5d5d7da55c37d2b64aac6c9c90180a385da9f7d003"
CLEANBROKEN = "1"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.6.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.6.3.bb
index f7aed6d77..cefe1ba34 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.6.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.6.3.bb
@@ -18,7 +18,7 @@ LIC_FILES_CHKSUM = "file://LICENSES.txt;md5=e4c045ebad958ead4b48008f70838403 \
DEPENDS += "libxml2 libxslt"
-SRC_URI[sha256sum] = "cd11c7e8d21af997ee8079037fff88f16fda188a9776eb4b81c7e4c9c0a7d7fc"
+SRC_URI[sha256sum] = "39b78571b3b30645ac77b95f7c69d1bffc4cf8c3b157c435a34da72e78c82468"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib_3.3.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib_3.4.1.bb
index a4df9a6fe..21c29aa2c 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib_3.3.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib_3.4.1.bb
@@ -7,7 +7,7 @@ HOMEPAGE = "https://github.com/matplotlib/matplotlib"
SECTION = "devel/python"
LICENSE = "PSF"
LIC_FILES_CHKSUM = "\
- file://setup.py;beginline=273;endline=273;md5=e0ef37de7122ce842bcd1fb54482b353 \
+ file://setup.py;beginline=282;endline=282;md5=20e7ab4d2b2b1395a0e4ab800181eb96 \
file://LICENSE/LICENSE;md5=afec61498aa5f0c45936687da9a53d74 \
"
DEPENDS = "\
@@ -19,8 +19,7 @@ DEPENDS = "\
python3-certifi-native \
"
-SRC_URI[md5sum] = "0b48f34ec623e765a1bda15924ce0b56"
-SRC_URI[sha256sum] = "3e477db76c22929e4c6876c44f88d790aacdf3c3f8f3a90cb1975c0bf37825b0"
+SRC_URI[sha256sum] = "84d4c4f650f356678a5d658a43ca21a41fca13f9b8b00169c0b76e6a6a948908"
inherit pypi setuptools3 pkgconfig
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-mccabe_0.6.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-mccabe_0.6.1.bb
index 63a9e35ac..b366f0430 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-mccabe_0.6.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-mccabe_0.6.1.bb
@@ -1,5 +1,5 @@
DESCRIPTION = "McCabe checker, plugin for flake8"
-HOMEPAGE = "https://github.com/dreamhost/cliff"
+HOMEPAGE = "https://github.com/PyCQA/mccabe"
SECTION = "devel/python"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=a489dc62bacbdad3335c0f160a974f0f"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-monotonic_1.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-monotonic_1.6.bb
index 94b90524b..080c41e38 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-monotonic_1.5.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-monotonic_1.6.bb
@@ -1,9 +1,13 @@
SUMMARY = "This module provides a monotonic() function which returns the value (in fractional seconds) of a clock which never goes backwards."
HOMEPAGE = "https://github.com/atdt/monotonic"
+SECTION = "devel/python"
+
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=d2794c0df5b907fdace235a619d80314"
-SRC_URI[md5sum] = "9f81cb0e5966479754453dea2b6822f4"
-SRC_URI[sha256sum] = "23953d55076df038541e648a53676fb24980f7a1be290cdda21300b3bc21dfb0"
+SRCREV = "80681f6604e136e513550342f977edb98f5fc5ad"
+SRC_URI = "git://github.com/atdt/monotonic.git"
+
+S = "${WORKDIR}/git"
-inherit pypi setuptools3
+inherit setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-networkx_2.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-networkx_2.5.1.bb
index 70573828b..0b52cfd7e 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-networkx_2.5.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-networkx_2.5.1.bb
@@ -3,8 +3,7 @@ HOMEPAGE = "http://networkx.github.io/"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=a24ea029adac8935699bf69b2e38c728"
-SRC_URI[md5sum] = "21f25be1f4373e19153a9beca63346e7"
-SRC_URI[sha256sum] = "7978955423fbc9639c10498878be59caf99b44dc304c2286162fd24b458c1602"
+SRC_URI[sha256sum] = "109cd585cac41297f71103c3c42ac6ef7379f29788eb54cb751be5a663bb235a"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-openpyxl_3.0.6.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-openpyxl_3.0.7.bb
index d4781eeff..b32632119 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-openpyxl_3.0.6.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-openpyxl_3.0.7.bb
@@ -9,6 +9,6 @@ LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=8227180126797a0148
inherit pypi setuptools3
-SRC_URI[sha256sum] = "b229112b46e158b910a5d1b270b212c42773d39cab24e8db527f775b82afc041"
+SRC_URI[sha256sum] = "6456a3b472e1ef0facb1129f3c6ef00713cebf62e736cd7a75bcc3247432f251"
RDEPENDS_${PN} += "${PYTHON_PN}-compression ${PYTHON_PN}-io ${PYTHON_PN}-pprint ${PYTHON_PN}-shell ${PYTHON_PN}-jdcal ${PYTHON_PN}-et-xmlfile"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pako_0.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pako_0.3.1.bb
index 3eacd0bdd..1930d866e 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pako_0.3.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pako_0.3.1.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/MycroftAI/pako"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e23fadd6ceef8c618fc1c65191d846fa"
-SRC_URI[sha256sum] = "eabd1c121d6701069d1a10132f197ee2b5f4e75a3d68a93b07f69214ab0ff9c7"
+SRC_URI[sha256sum] = "c033a073bb818ca336ae1fccba2655bd60dfe77744f85d4517abd3160d72231f"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_1.2.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_1.2.4.bb
index 752923786..54fa910a9 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_1.2.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_1.2.4.bb
@@ -6,7 +6,7 @@ HOMEPAGE = "http://pandas.pydata.org/"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=c2a8f987b2ce77c368c6b3e1b5b10774"
-SRC_URI[sha256sum] = "14ed84b463e9b84c8ff9308a79b04bf591ae3122a376ee0f62c68a1bd917a773"
+SRC_URI[sha256sum] = "649ecab692fade3cbfcf967ff936496b0cfba0af00a55dfaacd82bdda5cb2279"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-parso_0.8.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-parso_0.8.2.bb
index 9e4ede529..afcfabb95 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-parso_0.8.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-parso_0.8.2.bb
@@ -6,6 +6,6 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=cbaa2675b2424d771451332a7a69503f"
PYPI_PACKAGE = "parso"
-SRC_URI[sha256sum] = "8519430ad07087d4c997fda3a7918f7cfa27cb58972a8c89c2a0295a1c940e9e"
+SRC_URI[sha256sum] = "12b83492c6239ce32ff5eed6d3639d6a536170723c6f3f1506869f1ace413398"
inherit setuptools3 pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pastedeploy_2.1.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pastedeploy_2.1.1.bb
new file mode 100644
index 000000000..47508e222
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pastedeploy_2.1.1.bb
@@ -0,0 +1,21 @@
+SUMMARY = "Load, configure, and compose WSGI applications and servers"
+HOMEPAGE = "https://pylonsproject.org/"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://license.txt;md5=1798f29d55080c60365e6283cb49779c"
+
+inherit pypi
+PYPI_PACKAGE = "PasteDeploy"
+
+SRC_URI[sha256sum] = "6dead6ab9823a85d585ef27f878bc647f787edb9ca8da0716aa9f1261b464817"
+
+S = "${WORKDIR}/PasteDeploy-${PV}"
+
+inherit setuptools3
+
+# Uncomment this line to enable all the optional features.
+#PACKAGECONFIG ?= "paste docs"
+PACKAGECONFIG[paste] = ",,,python3-paste"
+PACKAGECONFIG[docs] = ",,,python3-sphinx python3-pylons-sphinx-themes"
+
+DEPENDS= "python3 python3-setuptools-scm-native python3-pytest-runner-native"
+RDEPENDS_${PN} += "python3-core python3-misc python3-netclient python3-pkgutil python3-setuptools python3-threading python3-core"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pep8_1.7.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pep8_1.7.1.bb
index 8291281ca..e8587c832 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pep8_1.7.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pep8_1.7.1.bb
@@ -1,5 +1,5 @@
DESCRIPTION = "Python style guide checker"
-HOMEPAGE = "https://github.com/dreamhost/cliff"
+HOMEPAGE = "https://github.com/PyCQA/pycodestyle"
SECTION = "devel/python"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://README.rst;md5=d8ebbbe831259ce010179d2f310b0f3e"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_8.1.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_8.2.0.bb
index 63974590c..3241230d1 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_8.1.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_8.2.0.bb
@@ -5,11 +5,11 @@ HOMEPAGE = "https://pillow.readthedocs.io"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=0337b116233da4616ae9fdb130bf6f1a"
-SRC_URI = "git://github.com/python-pillow/Pillow.git;branch=8.1.x \
+SRC_URI = "git://github.com/python-pillow/Pillow.git;branch=8.2.x \
file://0001-support-cross-compiling.patch \
file://0001-explicitly-set-compile-options.patch \
"
-SRCREV ?= "fcc42e0d344146ee9d265d1f43c094ce5a0ec4cf"
+SRCREV ?= "e0e353c0ef7516979a9aedce3792596649ce4433"
inherit setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pint_0.16.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pint_0.17.bb
index d96659592..9a474901e 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pint_0.16.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pint_0.17.bb
@@ -10,8 +10,7 @@ PYPI_PACKAGE := "Pint"
inherit pypi ptest setuptools3
-SRC_URI[md5sum] = "d4a7bbdf505dee964eb1e5e6e7f80c34"
-SRC_URI[sha256sum] = "d43a2e9ae003164978b60fdf8cd920d8581e1a5991df8dded29b00f4850ec83a"
+SRC_URI[sha256sum] = "f4d0caa713239e6847a7c6eefe2427358566451fe56497d533f21fb590a3f313"
DEPENDS += "python3-setuptools-scm-native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-portion_2.1.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-portion_2.1.5.bb
index d08d3e725..0fa107c33 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-portion_2.1.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-portion_2.1.5.bb
@@ -7,6 +7,6 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=05f1e16a8e59ce3e9a979e881816c2ab"
inherit pypi setuptools3
-SRC_URI[sha256sum] = "58b2792e6e9837a2d55a97d459b940c90fb08b5fba774f524e9359727c80e7b4"
+SRC_URI[sha256sum] = "ed62fd1450336026f55c7d40b92b7159efd81d1420c778dd1b592bb634b14b4c"
BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-prettytable_2.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-prettytable_2.1.0.bb
index 3563bfa11..fe7206255 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-prettytable_2.0.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-prettytable_2.1.0.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "http://code.google.com/p/prettytable"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=c9a6829fcd174d9535b46211917c7671"
-SRC_URI[sha256sum] = "e37acd91976fe6119172771520e58d1742c8479703489321dc1d9c85e7259922"
+SRC_URI[sha256sum] = "5882ed9092b391bb8f6e91f59bcdbd748924ff556bb7c634089d5519be87baa0"
do_install_append() {
perm_files=`find "${D}${PYTHON_SITEPACKAGES_DIR}/" -name "*.txt" -o -name "PKG-INFO"`
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_3.0.16.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_3.0.18.bb
index 2a377d6e6..366287583 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_3.0.16.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_3.0.18.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://python-prompt-toolkit.readthedocs.io/"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=b2cde7da89f0c1f3e49bf968d00d554f"
-SRC_URI[sha256sum] = "0fa02fa80363844a4ab4b8d6891f62dd0645ba672723130423ca4037b80c1974"
+SRC_URI[sha256sum] = "e1b4f11b9336a28fa11810bc623c357420f69dfdb6d2dac41ca2c21a55c033bc"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pulsectl_21.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pulsectl_21.3.4.bb
index c99a5507f..a4455eeb1 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pulsectl_21.2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pulsectl_21.3.4.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/mk-fg/python-pulse-control"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=f1d10048469ff90123263eb5e214061d"
-SRC_URI[sha256sum] = "282be9ad1a9add961f0bbafa8e19723ac397a2eec5e14fb8cd6c51ff29962715"
+SRC_URI[sha256sum] = "faa8b9336237565990298f20870e13dd1678a4586847ca5a7ff2abf10752f356"
RDEPENDS_${PN} += "pulseaudio"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_8.1.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_9.1.2.bb
index 7b2b5142e..c392261ad 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_8.1.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_9.1.2.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/balloob/pychromecast"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=b1dbd4e85f47b389bdadee9c694669f5"
-SRC_URI[sha256sum] = "df0295f653cee752de38cf8ef09f13ad9782c53924dfbaa191ca62bd5e1dce14"
+SRC_URI[sha256sum] = "907656cea46d39d0e93ec815979578ef4fb6f655fd8bf4e88e6421fcd7824e85"
PYPI_PACKAGE = "PyChromecast"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.7.0.bb
index 4ad1f5493..611abca6b 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.6.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.7.0.bb
@@ -4,8 +4,7 @@ LICENSE = "MIT"
SECTION = "devel/python"
LIC_FILES_CHKSUM = "file://LICENSE;md5=a8546d0e77f416fb05a26acd89c8b3bd"
-SRC_URI[md5sum] = "e2fcdace728267d5fa3aa98e08ee40db"
-SRC_URI[sha256sum] = "c58a7d2815e0e8d7972bf1803331fb0152f867bd89adf8a01dfd55085434192e"
+SRC_URI[sha256sum] = "c389c1d06bf7904078ca03399a4816f974a1d590090fecea0c63ec26ebaf1cef"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyflakes_2.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyflakes_2.3.1.bb
index 911cf4ec3..69680ddcb 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyflakes_2.2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyflakes_2.3.1.bb
@@ -3,8 +3,7 @@ HOMEPAGE = "https://github.com/dreamhost/cliff"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=690c2d09203dc9e07c4083fc45ea981f"
-SRC_URI[md5sum] = "48b1c29732ca810a70cba0e6d0531169"
-SRC_URI[sha256sum] = "35b2d75ee967ea93b55750aa9edbbf72813e06a66ba54438df2cfac9e3c27fc8"
+SRC_URI[sha256sum] = "f5bc8ecabc05bb9d291eb5203d6810b49040f6ff446a756326104746cc00c1db"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.138.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.141.1.bb
index eb7bea834..df6f1c762 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.138.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.141.1.bb
@@ -4,7 +4,7 @@ LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=a3639cf5780f71b125d3e9d1dc127c20"
SRC_URI = "git://github.com/MISP/PyMISP.git;protocol=https;branch=main"
-SRCREV = "9316420dc028a1ffc541986fc08793e669f2165e"
+SRCREV = "62cd5173f087e88834e88472060181b681b0b4d2"
S = "${WORKDIR}/git"
inherit setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyperf_2.1.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyperf_2.2.0.bb
index b57ea16eb..70676b05f 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyperf_2.1.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyperf_2.2.0.bb
@@ -13,7 +13,7 @@ Features: \
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=78bc2e6e87c8c61272937b879e6dc2f8"
-SRC_URI[sha256sum] = "1257d673d89fdcdbaec8077afeb365e7a94739c1b263572b09403cac25708ad3"
+SRC_URI[sha256sum] = "498bb4d1fe21350c2b7c1aa8bb3eae9c9979358d0b66327954bc66839fcba8b6"
DEPENDS += "${PYTHON_PN}-six-native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.5.14.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.5.18.bb
index 84397b65b..439d383f8 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.5.14.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.5.18.bb
@@ -3,8 +3,7 @@ LICENSE = "GPLv2 & Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.GPL.v2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://LICENSE.Apache.v2;md5=34281e312165f843a2b7d1f114fe65ce"
-SRC_URI[md5sum] = "6bde3624a6f22bdfb630bb54243a0d1d"
-SRC_URI[sha256sum] = "774c5ecf05fe40f0f601a7ab33c19ca0b24f00bf4a094e58deaa5333b7ca49b5"
+SRC_URI[sha256sum] = "08ac40cad52c0bb2e0f20087520599aa91fcce0b221dd26e9042330428810bc5"
inherit setuptools3 pypi ptest
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyscaffold_3.3.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyscaffold_4.0.1.bb
index 9bebcedd3..b0f8f3e9f 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyscaffold_3.3.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyscaffold_4.0.1.bb
@@ -12,6 +12,6 @@ inherit pypi setuptools3
PYPI_PACKAGE = "PyScaffold"
-SRC_URI[sha256sum] = "1c3a2b76e60319b6ffc2a8b54e240382109c6241576bf0a47ea476c7194f6a69"
+SRC_URI[sha256sum] = "8fd7b2bdbfc7f7758a66d66cbf796af338e40d69fd4f7b4ddb9996c38add1dbe"
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pysonos_0.0.42.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pysonos_0.0.42.bb
new file mode 100644
index 000000000..25defabc5
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pysonos_0.0.42.bb
@@ -0,0 +1,15 @@
+DESCRIPTION = "A SoCo fork with fixes for Home Assistant "
+HOMEPAGE = "https://pypi.org/project/pysonos/"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=07b0e2ca9ac77cd65cd4edf2e13367ea"
+
+SRC_URI[sha256sum] = "20b45fa1779a01325e67822d243e1a3f7657d8b515308d84c1eb3c805cc3bdb5"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "\
+ ${PYTHON_PN}-ifaddr \
+ ${PYTHON_PN}-requests \
+ ${PYTHON_PN}-xmltodict \
+ "
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pystemd_0.8.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pystemd_0.8.0.bb
index e09b633f9..6f302fa52 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pystemd_0.8.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pystemd_0.8.0.bb
@@ -6,6 +6,7 @@ SRC_URI[md5sum] = "f993739eca645749f18d4ccfd4a0fbf3"
SRC_URI[sha256sum] = "cac2e42043ab28d43adf33dab493c6a3cf8a99794f824ae8af6d9cd6458b9972"
DEPENDS = "systemd"
+RDEPENDS_${PN} += "python3-xml python3-pprint"
REQUIRED_DISTRO_FEATURES = "systemd"
inherit pypi setuptools3 features_check
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-helpers-namespace_2019.1.8.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-helpers-namespace_2021.3.24.bb
index b3aced4f6..9211ac394 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-helpers-namespace_2019.1.8.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-helpers-namespace_2021.3.24.bb
@@ -2,13 +2,17 @@ DESCRIPTION = "This plugin does not provide any helpers to pytest, it does, howe
HOMEPAGE = "https://github.com/saltstack/pytest-helpers-namespace"
SECTION = "devel/python"
LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://PKG-INFO;md5=cc99508c43d9d14fd51c7fac622ffd23"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=440a4cdb311cd7ad181efb4cba06d562"
-SRC_URI[md5sum] = "04ec1d8750f9b154e782a47cf8b30736"
-SRC_URI[sha256sum] = "4eff23a19f92410c0166f6dffbfa8901d3e14a80e97d70cd08428b6d597771ce"
+SRC_URI[sha256sum] = "188df5a7c52390fa27d6cd2f18e74d64a2ef0b9fb6e12f15fdf5a95f4813d25f"
inherit pypi setuptools3
+DEPENDS += "\
+ ${PYTHON_PN}-wheel-native \
+ ${PYTHON_PN}-pip-native \
+"
+
RDEPENDS_${PN} += " \
${PYTHON_PN}-pytest \
"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-python-vlc_3.0.11115.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-python-vlc_3.0.12117.bb
index 014509d55..5d9dde9d2 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-python-vlc_3.0.11115.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-python-vlc_3.0.12117.bb
@@ -3,7 +3,6 @@ HOMEPAGE = "wiki.videolan.org/PythonBinding"
LICENSE = "LGPL-2.0"
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
-SRC_URI[md5sum] = "422fd025294af2e55dfdcf9bc7d7dbac"
-SRC_URI[sha256sum] = "a4d3bdddfce84a8fb1b2d5447193a0239c55c16ca246e5194d48efd59c4e236b"
+SRC_URI[sha256sum] = "dd512f8438c1bba032fe9d22a7f8f98423a537992141ce2d1b28e29aff30381d"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pythonping_1.0.16.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pythonping_1.0.16.bb
new file mode 100644
index 000000000..5affb934c
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pythonping_1.0.16.bb
@@ -0,0 +1,12 @@
+SUMMARY = "PythonPing is simple way to ping in Python."
+HOMEPAGE = "https://pypi.org/project/pythonping/"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://setup.py;beginline=12;endline=12;md5=2d33c00f47720c7e35e1fdb4b9fab027"
+
+SRC_URI[md5sum] = "9b505ad8a5b8a6a8e57ccf75098ea364"
+SRC_URI[sha256sum] = "d025c8b25952580dea47bc241421e17a5a97f97f50098e1096dd10d845d0f156"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "python3-io"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2020.11.13.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2021.4.4.bb
index b5f714397..177b06b97 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2020.11.13.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2021.4.4.bb
@@ -5,6 +5,6 @@ LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=f0a3e4a2554ebb89c0
inherit pypi setuptools3
-SRC_URI[sha256sum] = "83d6b356e116ca119db8e7c6fc2983289d87b27b3fac238cfe5dca529d884562"
+SRC_URI[sha256sum] = "52ba3d3f9b942c49d7e4bc105bb28551c44065f139a65062ab7912bef10c9afb"
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-requests/setup.py-Support-idna-version-3.1.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-requests/setup.py-Support-idna-version-3.1.patch
new file mode 100644
index 000000000..26332249d
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-requests/setup.py-Support-idna-version-3.1.patch
@@ -0,0 +1,40 @@
+From fc45beed40a86c8fc38fc430765c1c5d2c9961c2 Mon Sep 17 00:00:00 2001
+From: Fabio Berton <fabio.berton@ossystems.com.br>
+Date: Thu, 4 Mar 2021 09:26:48 -0300
+Subject: [PATCH] setup.py: Support idna version 3.1
+Organization: O.S. Systems Software LTDA.
+
+Change idna required version to use python3-idna recipe that currently
+is on version 3.1.
+
+Without this change python-request doesn't work as the idna version
+doesn't match the required versions. When bump python-request recipe,
+verify if the upstream project bumped the idna version and drop this
+patch.
+
+As this recipe was tested with python3-idna_3.1 don't allow higher
+versions.
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
+---
+ setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index 7ba4b2a2..9d3b973e 100755
+--- a/setup.py
++++ b/setup.py
+@@ -43,7 +43,7 @@ packages = ['requests']
+
+ requires = [
+ 'chardet>=3.0.2,<5',
+- 'idna>=2.5,<3',
++ 'idna>=2.5,<3.2',
+ 'urllib3>=1.21.1,<1.27',
+ 'certifi>=2017.4.17'
+
+--
+2.30.1
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.25.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.25.1.bb
index 6af836543..cea8fd517 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.25.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.25.1.bb
@@ -3,6 +3,8 @@ HOMEPAGE = "http://python-requests.org"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=34400b68072d710fecd0a2940a0d1658"
+SRC_URI += "file://setup.py-Support-idna-version-3.1.patch"
+
SRC_URI[sha256sum] = "27973dd4a904a4f13b263a19c866c13b92a39ed1c964655f025f3f8d3d75b804"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3339-validator_0.1.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3339-validator_0.1.3.bb
index e226e11b7..a07a09447 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3339-validator_0.1.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3339-validator_0.1.3.bb
@@ -5,8 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=a21b13b5a996f08f7e0b088aa38ce9c6"
FILESEXTRAPATHS_prepend := "${THISDIR}/python-rfc3339-validator:"
-SRC_URI[md5sum] = "2c233007189d5ef21046cb2afac51a96"
-SRC_URI[sha256sum] = "c9659c3183488a1875c4d327c9873d9e92c54cdcd69dfbfae7546ad8b27baf9a"
+SRC_URI[sha256sum] = "7a578aa0740e9ee2b48356fe1f347139190c4c72e27f303b3617054efd15df32"
PYPI_PACKAGE = "rfc3339_validator"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_3.2.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_4.0.1.bb
index 10f031c7b..3e5d67e0a 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_3.2.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-robotframework_4.0.1.bb
@@ -12,8 +12,8 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
inherit pypi setuptools3
PYPI_PACKAGE_EXT = "zip"
-SRC_URI[md5sum] = "ac6b77c223821856e8ac077acf5a7c1d"
-SRC_URI[sha256sum] = "a0786a916d0572bd9d6afe26e95c6021e3df5dcafa0ece6b302e36366e58c24e"
+
+SRC_URI[sha256sum] = "9fa609ceb78f67b1476edce8a7011b16bf3ab41c0fb8c211de6c99955eaf9fde"
RDEPENDS_${PN} += " \
${PYTHON_PN}-shell \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-ruamel-yaml_0.16.12.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-ruamel-yaml_0.17.4.bb
index 7593ce7f5..2543269fc 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-ruamel-yaml_0.16.12.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-ruamel-yaml_0.17.4.bb
@@ -2,7 +2,7 @@ SUMMARY = "YAML parser/emitter that supports roundtrip preservation of comments,
AUTHOR = "Anthon van der Neut"
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=60afc0a1bb0501c0c555cabe78bba022"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=fa0a51dfb461e2f803969e0f3fa71dfe"
PYPI_PACKAGE = "ruamel.yaml"
@@ -10,8 +10,7 @@ inherit pypi setuptools3
BBCLASSEXTEND = "native nativesdk"
-SRC_URI[md5sum] = "c7e4b216d9554d80be42011b448b7c61"
-SRC_URI[sha256sum] = "076cc0bc34f1966d920a49f18b52b6ad559fbe656a0748e3535cf7b3f29ebf9e"
+SRC_URI[sha256sum] = "44bc6b54fddd45e4bc0619059196679f9e8b79c027f4131bb072e6a22f4d5e28"
do_install_prepend() {
export RUAMEL_NO_PIP_INSTALL_CHECK=1
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.17.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.17.bb
new file mode 100644
index 000000000..bcd58914a
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.17.bb
@@ -0,0 +1,23 @@
+DESCRIPTION = "Bindings for the scrypt key derivation function library"
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=2ddf47d0ff1849bce3257ccbc1fd275c"
+HOMEPAGE="https://github.com/holgern/py-scrypt"
+
+SRC_URI += "file://0001-py-scrypt-remove-the-hard-coded-include-paths.patch"
+
+SRC_URI[sha256sum] = "25b5075f2238be93af1cd574540a5ea01b8547f9b678aa72d22fce22577475ec"
+
+inherit pypi ptest setuptools3 dos2unix
+
+SRC_URI += " \
+ file://run-ptest \
+"
+
+RDEPENDS_${PN}-ptest += " \
+ ${PYTHON_PN}-pytest \
+"
+
+do_install_ptest() {
+ install -d ${D}${PTEST_PATH}/tests
+ cp -rf ${S}/scrypt/tests/* ${D}${PTEST_PATH}/tests/
+}
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.6.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.6.bb
deleted file mode 100644
index 7588fc54b..000000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-scrypt_0.8.6.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-DESCRIPTION = "Bindings for the scrypt key derivation function library"
-LICENSE = "BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=168ff75417f75a83e63c8875292d44dc"
-HOMEPAGE="https://bitbucket.org/mhallin/py-scrypt/overview"
-
-SRC_URI += "file://0001-py-scrypt-remove-the-hard-coded-include-paths.patch"
-
-SRC_URI[md5sum] = "ae8e3263aa31b040c1f9c7f1e1843a56"
-SRC_URI[sha256sum] = "f8239b2d47fa1d40bc27efd231dc7083695d10c1c2ac51a99380360741e0362d"
-
-inherit pypi ptest setuptools3
-
-SRC_URI += " \
- file://run-ptest \
-"
-
-RDEPENDS_${PN}-ptest += " \
- ${PYTHON_PN}-pytest \
-"
-
-do_install_ptest() {
- install -d ${D}${PTEST_PATH}/tests
- cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
-}
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_0.20.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_1.0.0.bb
index 13ba1e6fa..22b9f55dd 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_0.20.3.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_1.0.0.bb
@@ -5,7 +5,8 @@ HOMEPAGE = "https://github.com/getsentry/sentry-python"
LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=0c79f8d3c91fc847350efd28bfe0a341"
-SRC_URI[sha256sum] = "4ae8d1ced6c67f1c8ea51d82a16721c166c489b76876c9f2c202b8a50334b237"
+SRC_URI[sha256sum] = "71de00c9711926816f750bc0f57ef2abbcb1bfbdf5378c601df7ec978f44857a"
PYPI_PACKAGE = "sentry-sdk"
+
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.0.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.1.0.bb
index 70db342cc..8cf6a96ba 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.0.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.1.0.bb
@@ -9,7 +9,7 @@ inherit pypi setuptools3
PYPI_PACKAGE = "python-socketio"
-SRC_URI[sha256sum] = "f53fd0d5bd9f75a70492062f4ae6195ab5d34d67a29024d740f25e468392893e"
+SRC_URI[sha256sum] = "338cc29abb6f3ca14c88f1f8d05ed27c690df4648f62062b299f92625bbf7093"
PACKAGECONFIG ?= "asyncio_client client"
PACKAGECONFIG[asyncio_client] = ",,,${PYTHON_PN}-aiohttp ${PYTHON_PN}-websockets"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-soupsieve_2.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-soupsieve_2.2.1.bb
index 9507f60d7..93ef04f14 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-soupsieve_2.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-soupsieve_2.2.1.bb
@@ -4,7 +4,7 @@ HOMEPAGE = "https://github.com/facelessuser/soupsieve"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=33c3a77def9b3ad83e01c65bdcc1af67"
-SRC_URI[sha256sum] = "407fa1e8eb3458d1b5614df51d9651a1180ea5fedf07feb46e45d7e25e6d6cdd"
+SRC_URI[sha256sum] = "052774848f448cf19c7e959adf5566904d525f33a3f8b6ba6f6f8f26ec7de0cc"
inherit pypi setuptools3 ptest
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-speedtest-cli_2.1.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-speedtest-cli_2.1.3.bb
index a901bbac8..2fbbed326 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-speedtest-cli_2.1.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-speedtest-cli_2.1.3.bb
@@ -3,8 +3,7 @@ HOMEPAGE = "https://github.com/sivel/speedtest-cli"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
-SRC_URI[md5sum] = "543d38f8939e1716641cc7c00169ca03"
-SRC_URI[sha256sum] = "cf1d386222f94c324e3125ba9a0d187e46d4a13dca08c023bdb9a23096be2e54"
+SRC_URI[sha256sum] = "5e2773233cedb5fa3d8120eb7f97bcc4974b5221b254d33ff16e2f1d413d90f0"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-spidev_3.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-spidev_3.2.bb
deleted file mode 100644
index 65679594d..000000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-spidev_3.2.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "Python bindings for Linux SPI access through spidev"
-DESCRIPTION = "This project contains a python module for interfacing with SPI\
-devices from user space via the spidev linux kernel driver.\
-This is a modified version of the code originally found\
-[here](http://elk.informatik.fh-augsburg.de/da/da-49/trees/pyap7k/lang/py-spi)\
-All code is GPLv2 licensed unless explicitly stated otherwise."
-HOMEPAGE = "http://github.com/doceme/py-spidev"
-SECTION = "devel/python"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://LICENSE.md;md5=54bdb9022ebb75ab68399cdaab97da60"
-SRCNAME = "spidev"
-
-SRC_URI[md5sum] = "f601676f1bb48b9aa3b3897f95216365"
-SRC_URI[sha256sum] = "09d2b5122f0dd79910713a11f9a0020f71537224bf829916def4fffc0ea59456"
-
-inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.3.23.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.4.7.bb
index d962ea7d9..883b2660b 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.3.23.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.4.7.bb
@@ -4,7 +4,7 @@ HOMEPAGE = "http://www.sqlalchemy.org/"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3359ed561ac16aaa25b6c6eff84df595"
-SRC_URI[sha256sum] = "6fca33672578666f657c131552c4ef8979c1606e494f78cd5199742dfb26918b"
+SRC_URI[sha256sum] = "84115f97d88c8ccf26db81b7997c5f5de9ae360e0785ef859d0987794495f0a9"
PYPI_PACKAGE = "SQLAlchemy"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-sympy_1.7.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-sympy_1.8.bb
index d4508689f..3c05c7639 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-sympy_1.7.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-sympy_1.8.bb
@@ -4,9 +4,9 @@
SUMMARY = "Computer algebra system (CAS) in Python"
HOMEPAGE = "https://pypi.org/project/sympy/"
LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=ebb06e9df8f57522b72d0edb0fcf83d4"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=2245824980a408ef1749391dfba32b3b"
-SRC_URI[sha256sum] = "a3de9261e97535b83bb8607b0da2c7d03126650fafea2b2789657b229c246b2e"
+SRC_URI[sha256sum] = "1ca588a9f6ce6a323c5592f9635159c2093572826668a1022c75c75bdf0297cb"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-tqdm_4.58.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-tqdm_4.60.0.bb
index 771016962..e20ba779a 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-tqdm_4.58.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-tqdm_4.60.0.bb
@@ -5,7 +5,7 @@ SECTION = "devel/python"
LICENSE = "MIT & MPL-2.0"
LIC_FILES_CHKSUM = "file://LICENCE;md5=59e4271a933d33edfe60237db377a14b"
-SRC_URI[sha256sum] = "c23ac707e8e8aabb825e4d91f8e17247f9cc14b0d64dd9e97be0781e9e525bba"
+SRC_URI[sha256sum] = "ebdebdb95e3477ceea267decfc0784859aa3df3e27e22d23b83e9b272bf157ae"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-transitions_0.8.7.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-transitions_0.8.8.bb
index 04a033742..2b82df581 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-transitions_0.8.7.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-transitions_0.8.8.bb
@@ -4,6 +4,6 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=baac7be1f4c17620df74188e23da6d47"
inherit pypi setuptools3
-SRC_URI[sha256sum] = "8c60ec0828cd037820726283cad5d4d77a5e31514e058b51250420e9873e9bc7"
+SRC_URI[sha256sum] = "e7a86b31a161a76133f189b3ae9dad2755a80ea4c1e0eee1805648d021fb677d"
RDEPENDS_${PN} += "python3-six"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-twine_3.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-twine_3.4.1.bb
index 0bc199992..111366dba 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-twine_3.3.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-twine_3.4.1.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://twine.readthedocs.io/"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=a3d1106b253a8d50dd82a4202a045b4c"
-SRC_URI[sha256sum] = "fcffa8fc37e8083a5be0728371f299598870ee1eccc94e9a25cef7b1dcfa8297"
+SRC_URI[sha256sum] = "a56c985264b991dc8a8f4234eb80c5af87fa8080d0c224ad8f2cd05a2c22e83b"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_20.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_21.2.0.bb
index 697725fd7..e0f1a8ca6 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_20.3.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_21.2.0.bb
@@ -5,13 +5,11 @@ HOMEPAGE = "http://www.twistedmatrix.com"
#twisted/topfiles/NEWS:655: - Relicensed: Now under the MIT license, rather than LGPL.
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=27ac6d9597237e7e76282edd7a40cd68"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e33c411c0b86b1f3ca299091ed51ca31"
-SRC_URI[sha256sum] = "d72c55b5d56e176563b91d11952d13b01af8725c623e498db5507b6614fc1e10"
-SRC_URI[md5sum] = "fc16d575730db7d0cddd09fc35af3eea"
+SRC_URI[sha256sum] = "77544a8945cf69b98d2946689bbe0c75de7d145cdf11f391dd487eae8fc95a12"
PYPI_PACKAGE = "Twisted"
-PYPI_PACKAGE_EXT = "tar.bz2"
inherit pypi setuptools3
@@ -201,6 +199,7 @@ ${libdir}/${PYTHON_DIR}/site-packages/Twisted*egg-info \
${libdir}/${PYTHON_DIR}/site-packages/twisted/logger/ \
${libdir}/${PYTHON_DIR}/site-packages/twisted/_threads/ \
${libdir}/${PYTHON_DIR}/site-packages/twisted/positioning/ \
+${libdir}/${PYTHON_DIR}/site-packages/twisted/py.typed \
"
FILES_${PN}-mail = " \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-txdbus_1.1.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-txdbus_1.1.2.bb
new file mode 100644
index 000000000..cf2c98bba
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-txdbus_1.1.2.bb
@@ -0,0 +1,13 @@
+SUMMARY = "A native Python implementation of the DBus protocol for Twisted applications."
+AUTHOR = "Tom Cocagne"
+HOMEPAGE = "https://pypi.org/project/txdbus/"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://README.rst;beginline=32;endline=32;md5=2141358b0bce85fc45216ba91735ad50"
+
+SRC_URI[md5sum] = "d397357dee78750385f92ca9c6c1f063"
+SRC_URI[sha256sum] = "8375a5fb68a12054f0def91af800c821fb2232949337756ed975f88d8ea2bc97"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "python3-six python3-twisted"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-typed-ast_1.4.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-typed-ast_1.4.3.bb
index 09f387ca6..c482251b8 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-typed-ast_1.4.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-typed-ast_1.4.3.bb
@@ -7,6 +7,6 @@ PYPI_PACKAGE = "typed_ast"
inherit pypi setuptools3
-SRC_URI[sha256sum] = "9fc0b3cb5d1720e7141d103cf4819aea239f7d136acf9ee4a69b047b7986175a"
+SRC_URI[sha256sum] = "fb1bbeac803adea29cedd70781399c99138358c26d05fcbd23c13016b7f5ec65"
BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-typeguard_2.11.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-typeguard_2.12.0.bb
index 640adf83b..148806e10 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-typeguard_2.11.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-typeguard_2.12.0.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://pypi.org/project/typeguard/"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=f0e423eea5c91e7aa21bdb70184b3e53"
-SRC_URI[sha256sum] = "33243c1cbfcb9736a06c6db22dd08876b5f297e6344aa272a2862c0f8e669f64"
+SRC_URI[sha256sum] = "fca77fd4ccba63465b421cdbbab5a1a8e3994e6d6f18b45da2bb475c09f147ef"
inherit pypi setuptools3 ptest
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.26.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.26.4.bb
index 739cf24f5..0a31fb1e2 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.26.3.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.26.4.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/shazow/urllib3"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=c2823cb995439c984fd62a973d79815c"
-SRC_URI[sha256sum] = "de3eedaad74a2683334e282005cd8d7f22f4d55fa690a2a1020a416cb0a47e73"
+SRC_URI[sha256sum] = "e7b021f7241115872f92f43c6508082facffbd1c048e3c6e2bb9c2a157e28937"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-waitress_1.4.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-waitress_2.0.0.bb
index 3e207de4f..490dcee6c 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-waitress_1.4.4.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-waitress_2.0.0.bb
@@ -6,7 +6,6 @@ SECTION = "devel/python"
LICENSE = "ZPL-2.1"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=78ccb3640dc841e1baecb3e27a6966b2"
-SRC_URI[md5sum] = "079c3c4902b1cb5d0a917276ee70f1df"
-SRC_URI[sha256sum] = "1bb436508a7487ac6cb097ae7a7fe5413aefca610550baf58f0940e51ecfb261"
+SRC_URI[sha256sum] = "69e1f242c7f80273490d3403c3976f3ac3b26e289856936d1f620ed48f321897"
inherit setuptools3 pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.57.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.58.0.bb
index aaa92f3cc..a5d7d901b 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.57.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.58.0.bb
@@ -4,13 +4,13 @@ websocket-client module is WebSocket client for python. \
This provide the low level APIs for WebSocket. All APIs \
are the synchronous functions."
HOMEPAGE = "https://github.com/websocket-client/websocket-client"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=c4c4a98fbc4836b81c8c64d6ecb01fc1"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c96ca6c1de8adc025adfada81d06fba5"
-SRC_URI[md5sum] = "8061820da5e1de26a6a1a6996d4eebd5"
-SRC_URI[sha256sum] = "d735b91d6d1692a6a181f2a8c9e0238e5f6373356f561bb9dc4c7af36f452010"
+SRC_URI[sha256sum] = "63509b41d158ae5b7f67eb4ad20fecbb4eee99434e73e140354dc3ff8e09716f"
PYPI_PACKAGE = "websocket_client"
+
inherit pypi setuptools3
RDEPENDS_${PN} = "\
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.0.bb
deleted file mode 100644
index 3e4374ed4..000000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.0.bb
+++ /dev/null
@@ -1,50 +0,0 @@
-SUMMARY = "The Swiss Army knife of Python web development"
-DESCRIPTION = "\
-Werkzeug started as simple collection of various utilities for WSGI \
-applications and has become one of the most advanced WSGI utility modules. \
-It includes a powerful debugger, full featured request and response objects, \
-HTTP utilities to handle entity tags, cache control headers, HTTP dates, \
-cookie handling, file uploads, a powerful URL routing system and a bunch \
-of community contributed addon modules."
-HOMEPAGE = "http://werkzeug.pocoo.org/"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=5dc88300786f1c214c1e9827a5229462"
-
-SRC_URI[md5sum] = "305f75c4a88c96dcdc5654bf2d01bc05"
-SRC_URI[sha256sum] = "169ba8a33788476292d04186ab33b01d6add475033dfc07215e6d219cc077096"
-
-PYPI_PACKAGE = "Werkzeug"
-
-inherit pypi setuptools3
-
-CLEANBROKEN = "1"
-
-PACKAGES =+ "${PN}-tests"
-FILES_${PN}-tests+= " \
- ${PYTHON_SITEPACKAGES_DIR}/werkzeug/test* \
- ${PYTHON_SITEPACKAGES_DIR}/werkzeug/__pycache__/test* \
- ${PYTHON_SITEPACKAGES_DIR}/werkzeug/contrib/test* \
- ${PYTHON_SITEPACKAGES_DIR}/werkzeug/contrib/__pycache__/test* \
-"
-
-RDEPENDS_${PN} += " \
- ${PYTHON_PN}-datetime \
- ${PYTHON_PN}-difflib \
- ${PYTHON_PN}-email \
- ${PYTHON_PN}-html \
- ${PYTHON_PN}-io \
- ${PYTHON_PN}-json \
- ${PYTHON_PN}-misc \
- ${PYTHON_PN}-netclient \
- ${PYTHON_PN}-netserver \
- ${PYTHON_PN}-numbers \
- ${PYTHON_PN}-pkgutil \
- ${PYTHON_PN}-pprint \
- ${PYTHON_PN}-threading \
- ${PYTHON_PN}-unixadmin \
-"
-
-RDEPENDS_${PN}-tests = " \
- ${PN} \
- ${PYTHON_PN}-unittest \
-"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.1.bb
index 58735c1c0..8af0fef60 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_1.0.1.bb
@@ -7,7 +7,7 @@ HTTP utilities to handle entity tags, cache control headers, HTTP dates, \
cookie handling, file uploads, a powerful URL routing system and a bunch \
of community contributed addon modules."
HOMEPAGE = "http://werkzeug.pocoo.org/"
-LICENSE = "BSD"
+LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=5dc88300786f1c214c1e9827a5229462"
PYPI_PACKAGE = "Werkzeug"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant/0001-cli-drop-the-second-argument-from-click.argument-dec.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant/0001-cli-drop-the-second-argument-from-click.argument-dec.patch
new file mode 100644
index 000000000..59aaa7ed8
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant/0001-cli-drop-the-second-argument-from-click.argument-dec.patch
@@ -0,0 +1,127 @@
+From 49b133d84e7a1471bf51d8d005b1ba8b78c37724 Mon Sep 17 00:00:00 2001
+From: Bartosz Golaszewski <brgl@bgdev.pl>
+Date: Sat, 20 Mar 2021 20:59:54 +0100
+Subject: [PATCH] cli: drop the second argument from @click.argument()
+ decorator
+
+@click.argument no longer takes two positional arguments.
+
+Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
+---
+Upstream-Status: Pending
+
+ wpa_supplicant/cli.py | 28 ++++++++++++++--------------
+ 1 file changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/wpa_supplicant/cli.py b/wpa_supplicant/cli.py
+index bad5b5b..1fb322d 100644
+--- a/wpa_supplicant/cli.py
++++ b/wpa_supplicant/cli.py
+@@ -81,7 +81,7 @@ def root(ctx, debug):
+
+
+ @root.group()
+-@click.argument('ifname', 'e.g. wlan0')
++@click.argument('ifname')
+ @click.pass_context
+ def interface(ctx, ifname):
+ """Access fi.w1.wpa_supplicant1.Interface object"""
+@@ -101,7 +101,7 @@ def interface_p2p_device():
+
+
+ @root.group()
+-@click.argument('ifname', 'e.g. wlan0')
++@click.argument('ifname')
+ @click.option('--ssid', default=None, help='Look at scan results for BSS examples')
+ @click.option('--bssid', default=None, help='Look at scan results for BSS examples')
+ @click.pass_context
+@@ -149,7 +149,7 @@ def persistent_group():
+ # fi.w1.wpa_supplicant1 API
+ #
+ @root.command()
+-@click.argument('ifname', 'e.g. wlan0')
++@click.argument('ifname')
+ @click.option('--bridge_if_name', default=None, help='Bridge to control, e.g., br0')
+ @click.option('--driver', default=None, help='e.g. nl80211')
+ @click.option('--config_file', default=None, help='Config file path')
+@@ -161,7 +161,7 @@ def create_interface(ifname, bridge_if_name, driver, config_file):
+
+
+ @root.command()
+-@click.argument('ifname', 'e.g. wlan0')
++@click.argument('ifname')
+ def remove_interface(ifname):
+ """Method: Deregisters a wireless interface from wpa_supplicant"""
+ with supplicant() as supp:
+@@ -170,7 +170,7 @@ def remove_interface(ifname):
+
+
+ @root.command()
+-@click.argument('ifname', 'e.g. wlan0')
++@click.argument('ifname')
+ def get_interface(ifname):
+ """Method: Returns a D-Bus path to an object related to an interface which wpa_supplicant already controls"""
+ with supplicant() as supp:
+@@ -178,7 +178,7 @@ def get_interface(ifname):
+
+
+ @root.command(name='get')
+-@click.argument('name', 'Name of property (case sensitive)')
++@click.argument('name')
+ def root_get(name):
+ """Method: Get Property (case sensitive)"""
+ with supplicant() as supp:
+@@ -186,8 +186,8 @@ def root_get(name):
+
+
+ @root.command(name='set')
+-@click.argument('name', 'Name of property (case sensitive)')
+-@click.argument('value', 'Value to be set')
++@click.argument('name')
++@click.argument('value')
+ def root_set(name, value):
+ """Method: Set Property (case sensitive)"""
+ with supplicant() as supp:
+@@ -217,7 +217,7 @@ def disconnect(ctx):
+
+
+ @interface.command(name='get')
+-@click.argument('name', 'Name of property (case sensitive)')
++@click.argument('name')
+ @click.pass_context
+ def interface_get(ctx, name):
+ """Method: Get Property (case sensitive)"""
+@@ -227,8 +227,8 @@ def interface_get(ctx, name):
+
+
+ @interface.command(name='set')
+-@click.argument('name', 'Name of property (case sensitive)')
+-@click.argument('value', 'Value to be set')
++@click.argument('name')
++@click.argument('value')
+ @click.pass_context
+ def interface_set(ctx, name, value):
+ """Method: Set Property (case sensitive)"""
+@@ -241,7 +241,7 @@ def interface_set(ctx, name, value):
+ # fi.w1.wpa_supplicant1.BSS API
+ #
+ @bss.command(name='get')
+-@click.argument('name', 'Name of property (case sensitive)')
++@click.argument('name')
+ @click.pass_context
+ def bss_get(ctx, name):
+ """Method: Get Property (case sensitive)"""
+@@ -261,8 +261,8 @@ def bss_get(ctx, name):
+
+
+ @bss.command(name='set')
+-@click.argument('name', 'Name of property (case sensitive)')
+-@click.argument('value', 'Value to be set')
++@click.argument('name')
++@click.argument('value')
+ @click.pass_context
+ def bss_set(ctx, name, value):
+ """Method: Set Property (case sensitive)"""
+--
+2.25.1
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant_0.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant_0.2.bb
new file mode 100644
index 000000000..2309bec5e
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-wpa-supplicant_0.2.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Python interface to the wpa_supplicant D-Bus interface"
+HOMEPAGE = "https://pypi.org/project/wpa_supplicant/"
+SECTION = "devel/python"
+LICENSE = "MPL-2.0"
+LIC_FILES_CHKSUM = "file://README.md;beginline=171;endline=199;md5=462586bcbebd12f5d0ac443be0ed3d91"
+
+SRC_URI[md5sum] = "c21c7841f5e03ff709a0564b2e094010"
+SRC_URI[sha256sum] = "3ad0f40a696763bb0f4d4dec5b51f6b53ccfeb7c16ebb5897349303045f94776"
+
+SRC_URI += "file://0001-cli-drop-the-second-argument-from-click.argument-dec.patch"
+
+PYPI_PACKAGE = "wpa_supplicant"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += "python3-twisted python3-click python3-txdbus"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-xlsxwriter_1.3.7.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-xlsxwriter_1.3.8.bb
index a8f013c58..e89221e5c 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-xlsxwriter_1.3.7.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-xlsxwriter_1.3.8.bb
@@ -2,13 +2,12 @@ SUMMARY = "Python 2 and 3 compatibility library"
HOMEPAGE = "https://xlsxwriter.readthedocs.io"
SECTION = "devel/python"
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=0960d52d61b0801760f39463288c2672"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=4e95e368cd6cb090815046688e92d11e"
inherit pypi setuptools3
PYPI_PACKAGE = "XlsxWriter"
-SRC_URI[md5sum] = "8c0595292fae76297eac03ae76507b7b"
-SRC_URI[sha256sum] = "9b1ade2d1ba5d9b40a6d1de1d55ded4394ab8002718092ae80a08532c2add2e6"
+SRC_URI[sha256sum] = "2b7e22b1268c2ed85d73e5629097c9a63357f2429667ada9863cd05ff8ee33aa"
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-xmlschema_1.5.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-xmlschema_1.6.1.bb
index bdb15971b..91697e39a 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-xmlschema_1.5.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-xmlschema_1.6.1.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/sissaschool/xmlschema"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=47489cb18c469474afeb259ed1d4832f"
-SRC_URI[sha256sum] = "c4c72b457865f46394bb23525b4e233d6537d9e97b8c6144a6cda2d5ef0d6688"
+SRC_URI[sha256sum] = "d02b82bb4fce3af09495b85e6ada5ce0cfdaa865b09b28ecc0f5ab81fad7e328"
PYPI_PACKAGE = "xmlschema"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-yamlloader_0.5.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-yamlloader_1.0.0.bb
index dbf84d413..a2483a6f4 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-yamlloader_0.5.5.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-yamlloader_1.0.0.bb
@@ -3,8 +3,7 @@ HOMEPAGE = "https://github.com/Phynix/yamlloader"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=6831ef36faa29329bce2420c5356f97e"
-SRC_URI[md5sum] = "2e0750ace81235f750c072833d79c4c3"
-SRC_URI[sha256sum] = "dcab5f16b39bb03d10dda4cd4f30c943675ec4c7771807fc67e7f1bb319bf4c8"
+SRC_URI[sha256sum] = "e96dc3dc6895d814c330c054c966d993fc81ef1dbf5a30a4bdafeb256359e058"
inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_5.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_5.3.0.bb
index 48bb80d57..5da5a88b9 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_5.2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_5.3.0.bb
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=e54fd776274c1b7423
PYPI_PACKAGE = "zope.interface"
inherit pypi setuptools3
-SRC_URI[sha256sum] = "8251f06a77985a2729a8bdbefbae79ee78567dddc3acbd499b87e705ca59fe24"
+SRC_URI[sha256sum] = "b18a855f8504743e0a2d8b75d008c7720d44e4c76687e13f959e35d9a13eb397"
PACKAGES =. "${PN}-test "
diff --git a/meta-openembedded/meta-webserver/conf/layer.conf b/meta-openembedded/meta-webserver/conf/layer.conf
index d95d32877..7bb497892 100644
--- a/meta-openembedded/meta-webserver/conf/layer.conf
+++ b/meta-openembedded/meta-webserver/conf/layer.conf
@@ -17,7 +17,7 @@ LAYERVERSION_webserver = "1"
LAYERDEPENDS_webserver = "core openembedded-layer"
-LAYERSERIES_COMPAT_webserver = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_webserver = " hardknott"
LICENSE_PATH += "${LAYERDIR}/licenses"
diff --git a/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.0.4.bb b/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.1.0.bb
index 43fed1081..cbb5bd971 100644
--- a/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.0.4.bb
+++ b/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.1.0.bb
@@ -4,15 +4,15 @@ HOMEPAGE = "http://www.phpmyadmin.net"
LICENSE = "GPLv2 & LGPLv3 & MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://vendor/tecnickcom/tcpdf/LICENSE.TXT;md5=dd6470bbcd3436ca317f82d34abaf688 \
- file://js/vendor/jquery/MIT-LICENSE.txt;md5=e43aa437a6a1ba421653bd5034333bf9 \
+ file://js/vendor/jquery/MIT-LICENSE.txt;md5=75308107741f7dcdc39127209c7e3fc8 \
"
SRC_URI = "https://files.phpmyadmin.net/phpMyAdmin/${PV}/phpMyAdmin-${PV}-all-languages.tar.xz \
file://apache.conf \
"
-SRC_URI[md5sum] = "38c6b9f38e4aeb68a2840d5903dd00c5"
-SRC_URI[sha256sum] = "1578c1a08e594da4f4f62e676ccbdbd17784c3de769b094ba42c35bf05c057db"
+SRC_URI[md5sum] = "4587343e706c5434adf91c396b418731"
+SRC_URI[sha256sum] = "aa8ccf357f672012384df34e1c2bc70147476761c8458a0dad6233497e142c68"
UPSTREAM_CHECK_URI = "https://www.phpmyadmin.net/downloads/"
UPSTREAM_CHECK_REGEX = "phpMyAdmin-(?P<pver>\d+(\.\d+)+)-all-languages.tar.xz"
diff --git a/meta-openembedded/meta-xfce/conf/layer.conf b/meta-openembedded/meta-xfce/conf/layer.conf
index 5674ab512..b1240b06e 100644
--- a/meta-openembedded/meta-xfce/conf/layer.conf
+++ b/meta-openembedded/meta-xfce/conf/layer.conf
@@ -19,7 +19,7 @@ LAYERDEPENDS_xfce-layer += "multimedia-layer"
LAYERDEPENDS_xfce-layer += "meta-python"
LAYERDEPENDS_xfce-layer += "networking-layer"
-LAYERSERIES_COMPAT_xfce-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_xfce-layer = " hardknott"
SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += "\
openzone->gdk-pixbuf \
diff --git a/meta-openembedded/meta-xfce/recipes-apps/catfish/catfish_4.16.0.bb b/meta-openembedded/meta-xfce/recipes-apps/catfish/catfish_4.16.0.bb
index f0391cb23..44a052488 100644
--- a/meta-openembedded/meta-xfce/recipes-apps/catfish/catfish_4.16.0.bb
+++ b/meta-openembedded/meta-xfce/recipes-apps/catfish/catfish_4.16.0.bb
@@ -11,4 +11,4 @@ SRC_URI[sha256sum] = "1f6facee57a659af560f06024ca6f98aa4d638bf57a8bcfb613b4dc70f
FILES_${PN} += "${datadir}/metainfo"
-RDEPENDS_${PN} += "python3-pygobject"
+RDEPENDS_${PN} += "python3-pygobject python3-dbus"
diff --git a/meta-openembedded/meta-xfce/recipes-apps/gigolo/gigolo_0.5.1.bb b/meta-openembedded/meta-xfce/recipes-apps/gigolo/gigolo_0.5.2.bb
index 1233fe069..517f1f4c5 100644
--- a/meta-openembedded/meta-xfce/recipes-apps/gigolo/gigolo_0.5.1.bb
+++ b/meta-openembedded/meta-xfce/recipes-apps/gigolo/gigolo_0.5.2.bb
@@ -7,5 +7,4 @@ DEPENDS = "gtk+3 intltool-native xfce4-dev-tools-native"
inherit xfce-app
-SRC_URI[md5sum] = "94e89ad3fabba7167760004b64062f4a"
-SRC_URI[sha256sum] = "ca87badb5871e4844579704704ea9e5ede444f710a3b264c12b60b2a0e48e14e"
+SRC_URI[sha256sum] = "e34a1aa0755f9f6c234c7d24b23a6cecd6ef50741d79da3bb6f698a2281dbbc3"
diff --git a/meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.2.bb b/meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.4.bb
index a7e96851a..7a2f12b1e 100644
--- a/meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.4.bb
@@ -3,11 +3,11 @@ SECTION = "x11/application"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-DEPENDS = "gtk+3 gtksourceview3 xfconf xfce4-dev-tools-native"
+DEPENDS = "gtk+3 gtksourceview4 xfconf xfce4-dev-tools-native"
inherit xfce-app gsettings mime-xdg
-SRC_URI[sha256sum] = "30adc5631a4e551df7b3e17ddc1d10e9980080f96518dedccc32170cb18efb8e"
+SRC_URI[sha256sum] = "d90f492e5d0cba5f5b3b0c1eb7fd7c1701aef57e3fa244d2c457e7f9b0a42aa1"
FILES_${PN} += " \
${datadir}/glib-2.0/schemas \
diff --git a/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles/0001-Makefile.in.in-remove-bashisms.patch b/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles/0001-Makefile.in.in-remove-bashisms.patch
deleted file mode 100644
index 9738f1a8c..000000000
--- a/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles/0001-Makefile.in.in-remove-bashisms.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-Makefile.in.in: remove bashisms
-
-The brace expansion is bash specific and fails with dash.
-
-Upstream-Status: Pending [No permission to folk repo and create pull request]
-
-https://gitlab.xfce.org/apps/xfce4-panel-profiles
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
----
- Makefile.in.in | 15 ++++++++++++----
- 1 file changed, 11 insertions(+), 4 deletions(-)
-
-diff --git a/Makefile.in.in b/Makefile.in.in
-index 73338f4..e08b218 100644
---- a/Makefile.in.in
-+++ b/Makefile.in.in
-@@ -73,8 +73,11 @@ install: all xfce4-panel-profiles.1
-
- install -d $(DESTDIR)/$(MANDIR)/man1
- install xfce4-panel-profiles.1 $(DESTDIR)/$(MANDIR)/man1
--
-- install -d $(DESTDIR)/$(PREFIX)/share/icons/hicolor/{128x128,48x48,16x16,scalable}/apps
-+
-+ install -d $(DESTDIR)/$(PREFIX)/share/icons/hicolor/128x128/apps
-+ install -d $(DESTDIR)/$(PREFIX)/share/icons/hicolor/48x48/apps
-+ install -d $(DESTDIR)/$(PREFIX)/share/icons/hicolor/16x16/apps
-+ install -d $(DESTDIR)/$(PREFIX)/share/icons/hicolor/scalable/apps
- install data/icons/128x128/org.xfce.PanelProfiles.png $(DESTDIR)/$(PREFIX)/share/icons/hicolor/128x128/apps
- install data/icons/48x48/org.xfce.PanelProfiles.png $(DESTDIR)/$(PREFIX)/share/icons/hicolor/48x48/apps
- install data/icons/16x16/org.xfce.PanelProfiles.png $(DESTDIR)/$(PREFIX)/share/icons/hicolor/16x16/apps
-@@ -86,7 +89,9 @@ uninstall:
- rm -rf $(DESTDIR)/$(DOCDIR)
- # FIXME: Uninstall locales
- rm -f $(DESTDIR)/$(PREFIX)/bin/$(APPNAME)
-- rm -rf $(DESTDIR)/$(PREFIX)/share/icons/hicolor/{128x128,48x48,16x16}/apps/org.xfce.PanelProfiles.png
-+ rm -rf $(DESTDIR)/$(PREFIX)/share/icons/hicolor/128x128/apps
-+ rm -rf $(DESTDIR)/$(PREFIX)/share/icons/hicolor/48x48/apps
-+ rm -rf $(DESTDIR)/$(PREFIX)/share/icons/hicolor/16x16/apps
- rm -rf $(DESTDIR)/$(PREFIX)/share/icons/hicolor/scalable/apps/org.xfce.PanelProfiles.svg
-
- distcheck: all
-@@ -106,7 +112,9 @@ clean:
- rm -f bin/$(APPNAME)
- rm -f data/metainfo/org.xfce.PanelProfiles.appdata.xml
- rm -f data/layouts/*.tar.bz2
-- rm -f data/icons/{128x128,48x48,16x16}/org.xfce.panelprofiles.png
-+ rm -f data/icons/128x128/org.xfce.panelprofiles.png
-+ rm -f data/icons/48x48/org.xfce.panelprofiles.png
-+ rm -f data/icons/16x16/org.xfce.panelprofiles.png
- rm -f data/icons/scalable/org.xfce.panelprofiles.svg
- rm -f org.xfce.PanelProfiles.desktop
- rm -f Makefile.in
---
-2.25.1
-
diff --git a/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles_1.0.12.bb b/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles_1.0.13.bb
index 34162d3cc..bb9e50e1e 100644
--- a/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles_1.0.12.bb
+++ b/meta-openembedded/meta-xfce/recipes-apps/xfce4-panel-profiles/xfce4-panel-profiles_1.0.13.bb
@@ -11,9 +11,8 @@ DEPENDS += "intltool-native"
SRC_URI = "http://archive.xfce.org/src/apps/${BPN}/1.0/${BP}.tar.bz2 \
file://not-create-link-to-locale.patch \
- file://0001-Makefile.in.in-remove-bashisms.patch \
"
-SRC_URI[sha256sum] = "246e459d2d2f3f524968440ed7fddb2a891567ebc05f10a800f7f5821b3452a7"
+SRC_URI[sha256sum] = "bc387c13f94109422dc72b0fcb919b0dc11619ba589d03e492252b0d2513b170"
do_configure() {
# special configure - no autotools...
diff --git a/meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.4.0.bb b/meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.4.0.bb
deleted file mode 100644
index d41ee894a..000000000
--- a/meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.4.0.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-SUMMARY = "Easy to use task manager"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-inherit xfce-app
-
-DEPENDS += "gtk+3 cairo libwnck libxmu xfce4-dev-tools-native"
-
-SRC_URI[sha256sum] = "655684ddfc15fc09071f78f9fce5439d20bbd2d80ecfc5ba0a08fb38313e7d43"
diff --git a/meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.5.2.bb b/meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.5.2.bb
new file mode 100644
index 000000000..e0da70dd0
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_1.5.2.bb
@@ -0,0 +1,9 @@
+SUMMARY = "Easy to use task manager"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+inherit xfce-app
+
+DEPENDS += "gtk+3 cairo libwnck libxfce4ui libxmu xfce4-dev-tools-native"
+
+SRC_URI[sha256sum] = "bd25143f47a29000b4148874863dffa521b1a37cb01dbc026f423ea3160f9a35"
diff --git a/meta-openembedded/meta-xfce/recipes-core/images/core-image-minimal-xfce.bb b/meta-openembedded/meta-xfce/recipes-core/images/core-image-minimal-xfce.bb
index 8009acdd9..9d997cf57 100644
--- a/meta-openembedded/meta-xfce/recipes-core/images/core-image-minimal-xfce.bb
+++ b/meta-openembedded/meta-xfce/recipes-core/images/core-image-minimal-xfce.bb
@@ -16,3 +16,5 @@ LICENSE = "MIT"
export IMAGE_BASENAME = "core-image-minimal-xfce"
inherit core-image
+
+SYSTEMD_DEFAULT_TARGET = "graphical.target"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/battery/xfce4-battery-plugin_1.1.3.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/battery/xfce4-battery-plugin_1.1.4.bb
index ecbdc265e..9e65cf688 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/battery/xfce4-battery-plugin_1.1.3.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/battery/xfce4-battery-plugin_1.1.4.bb
@@ -5,5 +5,4 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
inherit xfce-panel-plugin
-SRC_URI[md5sum] = "9f82c7e77de0a417716d68d33367973b"
-SRC_URI[sha256sum] = "12be0a44d16bd1e1618513ee64f946814925872db7d1c1188ab1454b00d040a3"
+SRC_URI[sha256sum] = "107df2a837156c010e1eab5430bab90c77f0a3dc699b5937678c8a9c5e64c222"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch
deleted file mode 100644
index ae8bc5279..000000000
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch
+++ /dev/null
@@ -1,121 +0,0 @@
-From f86486e128f62ed5a531163535d11f0aa0268928 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Sun, 5 May 2019 20:45:26 +0200
-Subject: [PATCH] Fix memory-leak and reduce cpu-load slightly
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-* when setting font remove old css provider befor setting new
- -> fix memory leak
-* do call cpufreq_label_set_font only on init and when font was changed
- -> reduce cpu-load
-
-Fixes https://bugzilla.xfce.org/show_bug.cgi?id=15218
-
-Upstream-Status: Submitted [1]
-
-[1] https://bugzilla.xfce.org/attachment.cgi?id=8492
-
-Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
-
----
- panel-plugin/xfce4-cpufreq-configure.c | 4 ++++
- panel-plugin/xfce4-cpufreq-plugin.c | 13 +++++++++++--
- panel-plugin/xfce4-cpufreq-plugin.h | 2 ++
- 3 files changed, 17 insertions(+), 2 deletions(-)
-
-diff --git a/panel-plugin/xfce4-cpufreq-configure.c b/panel-plugin/xfce4-cpufreq-configure.c
-index 1205fc9..48e72ff 100644
---- a/panel-plugin/xfce4-cpufreq-configure.c
-+++ b/panel-plugin/xfce4-cpufreq-configure.c
-@@ -85,7 +85,10 @@ button_fontname_update(GtkWidget *button, gboolean update_plugin)
- }
-
- if (update_plugin)
-+ {
-+ cpufreq_label_set_font ();
- cpufreq_update_plugin (TRUE);
-+ }
- }
-
-
-@@ -155,6 +158,7 @@ button_fontcolor_clicked (GtkWidget *button, void *data)
- gtk_color_chooser_get_rgba (GTK_COLOR_CHOOSER (button), color);
- cpuFreq->options->fontcolor = gdk_rgba_to_string (color);
- g_free (color);
-+ cpufreq_label_set_font ();
- cpufreq_update_plugin (TRUE);
- }
-
-diff --git a/panel-plugin/xfce4-cpufreq-plugin.c b/panel-plugin/xfce4-cpufreq-plugin.c
-index e886121..8d7c9e5 100644
---- a/panel-plugin/xfce4-cpufreq-plugin.c
-+++ b/panel-plugin/xfce4-cpufreq-plugin.c
-@@ -44,6 +44,7 @@ cpufreq_label_set_font (void)
- {
- gchar *css = NULL, *css_font = NULL, *css_color = NULL;
- GtkCssProvider *provider;
-+ GtkStyleContext *context;
- PangoFontDescription *font;
-
- if (G_UNLIKELY (cpuFreq->label == NULL))
-@@ -76,11 +77,17 @@ cpufreq_label_set_font (void)
- if (css)
- {
- provider = gtk_css_provider_new ();
-+ context = GTK_STYLE_CONTEXT (gtk_widget_get_style_context (GTK_WIDGET (cpuFreq->label)));
-+
-+ if (currentProvider)
-+ gtk_style_context_remove_provider (context, currentProvider);
-
- gtk_css_provider_load_from_data (provider, css, -1, NULL);
- gtk_style_context_add_provider (
-- GTK_STYLE_CONTEXT (gtk_widget_get_style_context (GTK_WIDGET (cpuFreq->label))),
-+ context,
- GTK_STYLE_PROVIDER (provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
-+
-+ currentProvider = provider;
- }
-
- g_free (css);
-@@ -420,7 +427,6 @@ cpufreq_update_plugin (gboolean reset_label_size)
-
- if (cpuFreq->layout_changed)
- {
-- cpufreq_label_set_font ();
- cpufreq_widgets_layout ();
- }
-
-@@ -601,6 +607,7 @@ cpufreq_widgets (void)
-
- gtk_widget_show_all (cpuFreq->button);
-
-+ cpufreq_label_set_font ();
- cpufreq_update_plugin (TRUE);
- }
-
-@@ -775,6 +782,8 @@ cpufreq_construct (XfcePanelPlugin *plugin)
- {
- xfce_textdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR, "UTF-8");
-
-+ currentProvider = NULL;
-+
- cpuFreq = g_new0 (CpuFreqPlugin, 1);
- cpuFreq->options = g_new0 (CpuFreqPluginOptions, 1);
- cpuFreq->plugin = plugin;
-diff --git a/panel-plugin/xfce4-cpufreq-plugin.h b/panel-plugin/xfce4-cpufreq-plugin.h
-index a6895e4..6338698 100644
---- a/panel-plugin/xfce4-cpufreq-plugin.h
-+++ b/panel-plugin/xfce4-cpufreq-plugin.h
-@@ -95,6 +95,8 @@ typedef struct
-
- extern CpuFreqPlugin *cpuFreq;
-
-+GtkCssProvider *currentProvider;
-+
- G_BEGIN_DECLS
-
- void
----
-2.20.1
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch
deleted file mode 100644
index 95605f83a..000000000
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-Fix build with -fno-common
-
-Part of Patch from https://src.fedoraproject.org/rpms/xfce4-cpufreq-plugin/raw/master/f/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Refresh for xfce4-cpufreq-plugin 1.2.2.
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
-
----
- panel-plugin/xfce4-cpufreq-plugin.c | 1 +
- panel-plugin/xfce4-cpufreq-plugin.h | 2 +-
- 2 files changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/panel-plugin/xfce4-cpufreq-plugin.c b/panel-plugin/xfce4-cpufreq-plugin.c
-index 1e33492..ce9e302 100644
---- a/panel-plugin/xfce4-cpufreq-plugin.c
-+++ b/panel-plugin/xfce4-cpufreq-plugin.c
-@@ -38,6 +38,7 @@
- #endif /* __linux__ */
-
- CpuFreqPlugin *cpuFreq;
-+GtkCssProvider *currentProvider;
-
- void
- cpufreq_label_set_font (void)
-diff --git a/panel-plugin/xfce4-cpufreq-plugin.h b/panel-plugin/xfce4-cpufreq-plugin.h
-index 8cd0d33..7dbccef 100644
---- a/panel-plugin/xfce4-cpufreq-plugin.h
-+++ b/panel-plugin/xfce4-cpufreq-plugin.h
-@@ -95,7 +95,7 @@ typedef struct
-
- extern CpuFreqPlugin *cpuFreq;
-
--GtkCssProvider *currentProvider;
-+extern GtkCssProvider *currentProvider;
-
- G_BEGIN_DECLS
-
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.2.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.5.bb
index 3b7b9ec5d..8fef52027 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.5.bb
@@ -5,8 +5,4 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=1f6f1c0be32491a0c8d2915607a28f36"
inherit xfce-panel-plugin
-SRC_URI[sha256sum] = "500f04b8d857c96da8c8c7a4eecba30a903d0fce6e35a05e674529e43b47e498"
-
-SRC_URI += "file://0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch \
- file://xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch \
- "
+SRC_URI[sha256sum] = "f8bd728de2d33e7ab30c682716b1cac4776b9884ce48b03fd7c32c9b24b13498"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.2.1.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.2.3.bb
index ebcdc2166..0895e7209 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.2.1.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.2.3.bb
@@ -5,4 +5,4 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=415654f59d8fa70fe4eac2c3f86c8f5e"
inherit xfce-panel-plugin
-SRC_URI[sha256sum] = "615adf9abd91417a44319d8e4dadc6012fa22a3778f2f379717512dcb7ef924a"
+SRC_URI[sha256sum] = "fb0cccd9a678136256edd0f04f945e611ab0aa912837f57413ef3bb0f515608c"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_4.1.0.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_4.1.1.bb
index a51c52f23..9a6d4b19c 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_4.1.0.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_4.1.1.bb
@@ -5,4 +5,4 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=68ad62c64cc6c620126241fd429e68fe"
inherit xfce-panel-plugin
-SRC_URI[sha256sum] = "d1256b4b47545c7bdb16842b21eaf3ac167be443e8f2f1093cf4209e65c84e7d"
+SRC_URI[sha256sum] = "b2119fd0ff19fa293b97ec97b0de8e241799e08b86218515167c568bd9b50135"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.3.2.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.4.0.bb
index 13e7b1db7..b30543b10 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.3.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.4.0.bb
@@ -6,5 +6,4 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=35a7203c41b86d15546dddc05995f97f"
inherit xfce-panel-plugin
SRC_URI = "http://archive.xfce.org/src/panel-plugins/${BPN}/${@'${PV}'[0:3]}/${BPN}-${PV}.tar.bz2"
-SRC_URI[md5sum] = "ae4652711812a77a58c3dc96650a74dc"
-SRC_URI[sha256sum] = "22e40425cfe1e07b01fe275b1afddc7c788af34d9c2c7e2842166963cb41215d"
+SRC_URI[sha256sum] = "6c76260e101790754dd93255ec979accd97d21a21da85d8edcd6c7b01ddcd70c"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.2.4.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.3.0.bb
index b966711bd..e6a5ec0b2 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.2.4.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.3.0.bb
@@ -7,4 +7,4 @@ inherit xfce-panel-plugin
DEPENDS += "upower"
-SRC_URI[sha256sum] = "0531b8df923cba3be8d064cb8b638b954df74915e5a447228999517847789835"
+SRC_URI[sha256sum] = "1148f8e90cc53cae9b3aa32e10df4bd9fdc2f06db09d8429f88fbdd874fc171d"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.1.1.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.1.2.bb
index f4ef3f626..185e9bca0 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.1.1.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.1.2.bb
@@ -6,5 +6,4 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
inherit xfce-panel-plugin
-SRC_URI[md5sum] = "3087b3248e427822613e5583784b0ac0"
-SRC_URI[sha256sum] = "194dbeb8751d8aaedf3850a7a9c770f09d32316a99683cde34d7d0fc5bdba31d"
+SRC_URI[sha256sum] = "3dd8eba694ff3ba5c25bd7f5cd70dc22175fb2c0a759213f05ab8f0e629d82d4"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.10.2.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.11.0.bb
index 404523019..45b43863a 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.10.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.11.0.bb
@@ -7,6 +7,6 @@ inherit xfce-panel-plugin
DEPENDS += "libsoup-2.4 dbus-glib upower"
-SRC_URI[sha256sum] = "9017790b92953090c849b17b357b42fa8c562bf0e25af2fd2e5f53cfebc662c6"
+SRC_URI[sha256sum] = "e3242ea951d51bc0fded1d02a4f1f662bec16a1fb10c855f71bda6541a1153fc"
FILES_${PN} += "${datadir}/xfce4/weather"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_4.16.0.bb b/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_4.16.1.bb
index 5b91b8b7e..a49b18c72 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_4.16.0.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_4.16.1.bb
@@ -14,7 +14,7 @@ SRC_URI += " \
file://configure.patch \
"
-SRC_URI[sha256sum] = "1975b00eed9a8aa1f899eab2efaea593731c19138b83fdff2f13bdca5275bacc"
+SRC_URI[sha256sum] = "528dac256315ffc2a4a53b3b421979327962121989886e3cf920aeff9912b53b"
# Note: python bindings did not work in oe-dev and are about to be moved to
# pyxfce see http://comments.gmane.org/gmane.comp.desktop.xfce.devel.version4/19560
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_4.16.2.bb b/meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_4.16.6.bb
index 6b1a6b482..128043d19 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_4.16.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_4.16.6.bb
@@ -8,7 +8,7 @@ inherit xfce gobject-introspection features_check mime-xdg
REQUIRED_DISTRO_FEATURES = "x11"
-SRC_URI[sha256sum] = "67a90b98c436192f9aa6cd18a22a089e713007864aebfa65f36f121c86ba7add"
+SRC_URI[sha256sum] = "cb531d3fe67196a43ca04979ef271ece7858bbc80c15b0ee4323c1252a1a02b7"
PACKAGECONFIG ??= ""
PACKAGECONFIG[pcre] = "--enable-pcre,--disable-pcre,libpcre"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.16.1.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.16.2.bb
index b92ebde00..7e54022ff 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.16.1.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.16.2.bb
@@ -8,7 +8,7 @@ inherit xfce gtk-doc gobject-introspection features_check remove-libtool mime-xd
REQUIRED_DISTRO_FEATURES = "x11"
-SRC_URI[sha256sum] = "fa099bc6be6592dbb828747a473c2e1b0e7f85afd945a98002b475bb6f975991"
+SRC_URI[sha256sum] = "8634166e6f14318daec363f7e2371d49b98986f9bce313a7dd1554f30b48b5cf"
SRC_URI += " \
file://0001-windowmenu-do-not-display-desktop-icon-when-no-windo.patch \
file://0002-use-lxdm-to-replace-dm-tool.patch \
diff --git a/meta-openpower/conf/layer.conf b/meta-openpower/conf/layer.conf
index 57e0925c1..6e7d5736d 100644
--- a/meta-openpower/conf/layer.conf
+++ b/meta-openpower/conf/layer.conf
@@ -9,4 +9,4 @@ BBFILE_COLLECTIONS += "openpower-layer"
BBFILE_PATTERN_openpower-layer := "^${LAYERDIR}/"
LAYERVERSION_openpower-layer = "1"
LAYERDEPENDS_openpower-layer = "core phosphor-layer aspeed-layer"
-LAYERSERIES_COMPAT_openpower-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_openpower-layer = "gatesgarth hardknott"
diff --git a/meta-openpower/recipes-phosphor/debug/openpower-debug-collector.inc b/meta-openpower/recipes-phosphor/debug/openpower-debug-collector.inc
index a00823587..b5f5f78fc 100644
--- a/meta-openpower/recipes-phosphor/debug/openpower-debug-collector.inc
+++ b/meta-openpower/recipes-phosphor/debug/openpower-debug-collector.inc
@@ -2,4 +2,4 @@ HOMEPAGE = "https://github.com/openbmc/openpower-debug-collector"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
SRC_URI += "git://github.com/openbmc/openpower-debug-collector"
-SRCREV = "b618ccbaa758fcc282669b2b5c90c50df1725a10"
+SRCREV = "96f3c8536ba9fae1a3b3050ade03cbd1af416b48"
diff --git a/meta-openpower/recipes-phosphor/flash/openpower-software-manager_git.bb b/meta-openpower/recipes-phosphor/flash/openpower-software-manager_git.bb
index 7c51ad8e8..051931c31 100644
--- a/meta-openpower/recipes-phosphor/flash/openpower-software-manager_git.bb
+++ b/meta-openpower/recipes-phosphor/flash/openpower-software-manager_git.bb
@@ -59,7 +59,7 @@ S = "${WORKDIR}/git"
SRC_URI += "git://github.com/openbmc/openpower-pnor-code-mgmt"
-SRCREV = "0529d284b008fa4b4ff9512da5f375decfd62740"
+SRCREV = "a7b1f4caa49390064d0b66de04764547f3aa41c9"
DBUS_SERVICE_${PN} += "org.open_power.Software.Host.Updater.service"
diff --git a/meta-openpower/recipes-phosphor/host/op-proc-control_git.bb b/meta-openpower/recipes-phosphor/host/op-proc-control_git.bb
index 75619f70a..33fe0025c 100644
--- a/meta-openpower/recipes-phosphor/host/op-proc-control_git.bb
+++ b/meta-openpower/recipes-phosphor/host/op-proc-control_git.bb
@@ -11,7 +11,7 @@ inherit autotools obmc-phosphor-utils pkgconfig
inherit systemd
SRC_URI += "git://github.com/openbmc/openpower-proc-control"
-SRCREV = "26c4d763d3dcddc3638a960973cefef506b3735b"
+SRCREV = "854d05ab9d42720b420154d09508778d8504ca20"
DEPENDS += " \
autoconf-archive-native \
diff --git a/meta-openpower/recipes-phosphor/ipmi/openpower-ipmi-oem.inc b/meta-openpower/recipes-phosphor/ipmi/openpower-ipmi-oem.inc
index c6f36cdd0..1210b55db 100644
--- a/meta-openpower/recipes-phosphor/ipmi/openpower-ipmi-oem.inc
+++ b/meta-openpower/recipes-phosphor/ipmi/openpower-ipmi-oem.inc
@@ -2,4 +2,4 @@ HOMEPAGE = "https://github.com/openbmc/openpower-host-ipmi-oem"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=fa818a259cbed7ce8bc2a22d35a464fc"
SRC_URI += "git://github.com/openbmc/openpower-host-ipmi-oem"
-SRCREV = "61950109c770fc65f7b5539974487a5a05c54bb5"
+SRCREV = "248255d2afd411ca05e2596fcb214b8968a08743"
diff --git a/meta-openpower/recipes-phosphor/logging/openpower-hw-diags_git.bb b/meta-openpower/recipes-phosphor/logging/openpower-hw-diags_git.bb
index dca85731b..4a6cc049f 100644
--- a/meta-openpower/recipes-phosphor/logging/openpower-hw-diags_git.bb
+++ b/meta-openpower/recipes-phosphor/logging/openpower-hw-diags_git.bb
@@ -1,22 +1,32 @@
-inherit meson systemd
+HOMEPAGE = "https://github.com/openbmc/openpower-hw-diags"
+SUMMARY = "Hardware Diagnostics for POWER Systems"
+
+DESCRIPTION = \
+ "In the event of a system fatal error reported by the internal system \
+ hardware (processor chips, memory chips, I/O chips, system memory, etc.), \
+ POWER Systems have the ability to diagnose the root cause of the failure \
+ and perform any service action needed to avoid repeated system failures."
-SUMMARY = "ATTN and HwDiags Support"
-DESCRIPTION = "Attention Handler and Hardware Diagnostics"
+PV = "0.1+git${SRCPV}"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
+inherit meson systemd
+
+S = "${WORKDIR}/git"
+
SRC_URI = "git://github.com/openbmc/openpower-hw-diags"
+SRCREV = "2d5c63d90c14793e333c4eee6d0b8002fdf0c7ba"
SYSTEMD_SERVICE_${PN} = "attn_handler.service"
-PV = "0.1+git${SRCPV}"
-SRCREV = "8af9e46f43d2ffa030275d17716571d4fcc8ad18"
-
-S = "${WORKDIR}/git"
DEPENDS = "boost libgpiod pdbg phosphor-logging sdbusplus openpower-libhei \
nlohmann-json"
-FILES_${PN} += "${UNITDIR}/attn_handler.service"
-
# This is required so that libhei is installed with the chip data files.
RDEPENDS_${PN} += "openpower-libhei"
+
+# Conditionally pull in PHAL APIs, if available.
+PACKAGECONFIG ??= "${@bb.utils.filter('OBMC_MACHINE_FEATURES', 'phal', d)}"
+PACKAGECONFIG[phal] = "-Dphal=enabled, -Dphal=disabled, pdata"
+
diff --git a/meta-openpower/recipes-phosphor/logging/openpower-libhei_git.bb b/meta-openpower/recipes-phosphor/logging/openpower-libhei_git.bb
index da964c034..645155558 100644
--- a/meta-openpower/recipes-phosphor/logging/openpower-libhei_git.bb
+++ b/meta-openpower/recipes-phosphor/logging/openpower-libhei_git.bb
@@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
SRC_URI = "git://github.com/openbmc/openpower-libhei"
PV = "0.1+git${SRCPV}"
-SRCREV = "995be6c72a49a5e4fd0d6fd8d4b9d080a245af85"
+SRCREV = "552992a66a275a046a93922dc14fa551da5a7f05"
S = "${WORKDIR}/git"
diff --git a/meta-openpower/recipes-phosphor/vpd/openpower-fru-vpd.inc b/meta-openpower/recipes-phosphor/vpd/openpower-fru-vpd.inc
index 4f7eafa28..58192eae1 100644
--- a/meta-openpower/recipes-phosphor/vpd/openpower-fru-vpd.inc
+++ b/meta-openpower/recipes-phosphor/vpd/openpower-fru-vpd.inc
@@ -2,4 +2,4 @@ HOMEPAGE = "https://github.com/openbmc/openpower-vpd-parser"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
SRC_URI += "git://github.com/openbmc/openpower-vpd-parser"
-SRCREV = "f272efc44f2c35f23d63bab8a983fa18c7f5aee4"
+SRCREV = "a504c3ee9e939a0c33d3c37c1cab59614c3ddb46"
diff --git a/meta-phosphor/MAINTAINERS b/meta-phosphor/MAINTAINERS
index 68f29a274..81dd7c5af 100644
--- a/meta-phosphor/MAINTAINERS
+++ b/meta-phosphor/MAINTAINERS
@@ -14,7 +14,7 @@ Description of section entries:
Section entries are structured according to the following scheme:
- X: NAME <EMAIL_USERNAME@DOMAIN> <IRC_USERNAME!>
+ X: NAME <EMAIL_USERNAME@DOMAIN> <DISCORD_USERNAME!>
X: ...
.
.
@@ -24,10 +24,10 @@ Description of section entries:
organization; FILE_PATH is a file path within the repository, possibly with
wildcards; X is a tag of one of the following types:
- M: Denotes maintainer; has fields NAME <EMAIL_USERNAME@DOMAIN> <IRC_USERNAME!>;
+ M: Denotes maintainer; has fields NAME <EMAIL_USERNAME@DOMAIN> <DISCORD_USERNAME!>;
if omitted from an entry, assume one of the maintainers from the
MAINTAINERS entry.
- R: Denotes reviewer; has fields NAME <EMAIL_USERNAME@DOMAIN> <IRC_USERNAME!>;
+ R: Denotes reviewer; has fields NAME <EMAIL_USERNAME@DOMAIN> <DISCORD_USERNAME!>;
these people are to be added as reviewers for a change matching the repo
path.
F: Denotes forked from an external repository; has fields URL.
diff --git a/meta-phosphor/aspeed-layer/recipes-kernel/linux/linux-aspeed/phosphor-vlan.cfg b/meta-phosphor/aspeed-layer/recipes-kernel/linux/linux-aspeed/phosphor-vlan.cfg
deleted file mode 100644
index 1ea3eed08..000000000
--- a/meta-phosphor/aspeed-layer/recipes-kernel/linux/linux-aspeed/phosphor-vlan.cfg
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_VLAN_8021Q=y
diff --git a/meta-phosphor/aspeed-layer/recipes-kernel/linux/linux-aspeed/phosphor-vlan.scc b/meta-phosphor/aspeed-layer/recipes-kernel/linux/linux-aspeed/phosphor-vlan.scc
deleted file mode 100644
index 46d3bcec8..000000000
--- a/meta-phosphor/aspeed-layer/recipes-kernel/linux/linux-aspeed/phosphor-vlan.scc
+++ /dev/null
@@ -1,2 +0,0 @@
-define KFEATURE_DESCRIPTION "Enable VLAN support"
-kconf non-hardware phosphor-vlan.cfg
diff --git a/meta-phosphor/aspeed-layer/recipes-kernel/linux/linux-aspeed_%.bbappend b/meta-phosphor/aspeed-layer/recipes-kernel/linux/linux-aspeed_%.bbappend
deleted file mode 100644
index d8bbccfac..000000000
--- a/meta-phosphor/aspeed-layer/recipes-kernel/linux/linux-aspeed_%.bbappend
+++ /dev/null
@@ -1,11 +0,0 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
-
-SRC_URI += "file://phosphor-vlan.scc"
-SRC_URI += "file://phosphor-vlan.cfg"
-
-KERNEL_FEATURES_append = " phosphor-vlan"
-KERNEL_FEATURES_remove_qemuall = " phosphor-vlan"
-
-# OpenBMC loads in kernel features via other mechanisms so this check
-# in the kernel-yocto.bbclass is not required
-KERNEL_DANGLING_FEATURES_WARN_ONLY="1"
diff --git a/meta-phosphor/classes/obmc-phosphor-image.bbclass b/meta-phosphor/classes/obmc-phosphor-image.bbclass
index 0a07fc6f4..c83dce32f 100644
--- a/meta-phosphor/classes/obmc-phosphor-image.bbclass
+++ b/meta-phosphor/classes/obmc-phosphor-image.bbclass
@@ -88,7 +88,9 @@ remove_etc_version() {
}
enable_ldap_nsswitch() {
- sed -i 's/\(\(passwd\|group\|shadow\):\s*\).*/\1files ldap/' \
+ sed -i 's/\(\(passwd\|group\):\s*\).*/\1files systemd ldap/' \
+ "${IMAGE_ROOTFS}${sysconfdir}/nsswitch.conf"
+ sed -i 's/\(shadow:\s*\).*/\1files ldap/' \
"${IMAGE_ROOTFS}${sysconfdir}/nsswitch.conf"
}
diff --git a/meta-phosphor/classes/phosphor-logging.bbclass b/meta-phosphor/classes/phosphor-logging.bbclass
index 48676f4ff..18f53d434 100644
--- a/meta-phosphor/classes/phosphor-logging.bbclass
+++ b/meta-phosphor/classes/phosphor-logging.bbclass
@@ -1,2 +1 @@
callouts_datadir="${datadir}/phosphor-logging/callouts"
-elog_dir = "${datadir}/phosphor-logging/elog"
diff --git a/meta-phosphor/classes/phosphor-networkd-rev.bbclass b/meta-phosphor/classes/phosphor-networkd-rev.bbclass
index eb4e915a0..94d599fa0 100644
--- a/meta-phosphor/classes/phosphor-networkd-rev.bbclass
+++ b/meta-phosphor/classes/phosphor-networkd-rev.bbclass
@@ -1,2 +1,2 @@
SRC_URI += "git://github.com/openbmc/phosphor-networkd"
-SRCREV = "a5a0944ccb8d925d6d83897b1e2397e85564ea1e"
+SRCREV = "a1b897e2a38b0ead01fb02cc647326c1d1035870"
diff --git a/meta-phosphor/conf/bblayers.conf.sample b/meta-phosphor/conf/bblayers.conf.sample
index aee74b650..4c0c52e8c 100644
--- a/meta-phosphor/conf/bblayers.conf.sample
+++ b/meta-phosphor/conf/bblayers.conf.sample
@@ -10,7 +10,9 @@ BBLAYERS ?= " \
##OEROOT##/meta-poky \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
"
BBLAYERS_NON_REMOVABLE ?= " \
@@ -18,5 +20,8 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-poky \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
+ ##OEROOT##/meta-phosphor \
"
diff --git a/meta-phosphor/conf/distro/include/phosphor-base.inc b/meta-phosphor/conf/distro/include/phosphor-base.inc
index af2e6ef76..5b114810f 100644
--- a/meta-phosphor/conf/distro/include/phosphor-base.inc
+++ b/meta-phosphor/conf/distro/include/phosphor-base.inc
@@ -120,7 +120,7 @@ include conf/distro/include/openbmc-phosphor/${MACHINE}.inc
IMAGE_CLASSES_append = " image_types_phosphor phosphor-rootfs-postcommands"
IMAGE_CLASSES_append_npcm7xx = " image_types_phosphor_nuvoton"
-IMAGE_INSTALL_append = " dbus-broker"
+IMAGE_INSTALL_append = " dbus-broker libnss-systemd"
# Skip the udev database by default. It adds around 2MB
# compressed to the root filesystem, and probably doesn't
diff --git a/meta-phosphor/conf/distro/include/phosphor-defaults.inc b/meta-phosphor/conf/distro/include/phosphor-defaults.inc
index d5e07e34e..b8f4c52e3 100644
--- a/meta-phosphor/conf/distro/include/phosphor-defaults.inc
+++ b/meta-phosphor/conf/distro/include/phosphor-defaults.inc
@@ -52,7 +52,7 @@ VIRTUAL-RUNTIME_obmc-inventory-manager ?= "phosphor-inventory-manager"
# obmc-led-manager
#
# Provides an implementation of the xyz.openbmc_project.ledmanager interface.
-VIRTUAL-RUNTIME_obmc-leds-manager ?= "phosphor-led-manager-ledmanager"
+VIRTUAL-RUNTIME_obmc-leds-manager ?= "phosphor-led-manager"
# obmc-led-monitor
#
diff --git a/meta-phosphor/conf/layer.conf b/meta-phosphor/conf/layer.conf
index 2292acce9..f651b2d1b 100644
--- a/meta-phosphor/conf/layer.conf
+++ b/meta-phosphor/conf/layer.conf
@@ -8,7 +8,7 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "phosphor-layer"
BBFILE_PATTERN_phosphor-layer := "^${LAYERDIR}/"
LAYERVERSION_phosphor-layer = "1"
-LAYERSERIES_COMPAT_phosphor-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_phosphor-layer = "gatesgarth hardknott"
IMAGE_FEATURES[validitems] += "tools-profile"
diff --git a/meta-phosphor/recipes-core/base-files/base-files_%.bbappend b/meta-phosphor/recipes-core/base-files/base-files_%.bbappend
index b6c4222b2..30e562325 100644
--- a/meta-phosphor/recipes-core/base-files/base-files_%.bbappend
+++ b/meta-phosphor/recipes-core/base-files/base-files_%.bbappend
@@ -10,6 +10,8 @@ SRC_URI += " \
"
do_install_append() {
+ sed -i 's/\(\(passwd\|group\):\s*\).*/\1files systemd/' \
+ "${D}${sysconfdir}/nsswitch.conf"
install -d ${D}/srv
diff --git a/meta-phosphor/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend b/meta-phosphor/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend
index e111a4d95..b8648cabf 100644
--- a/meta-phosphor/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend
+++ b/meta-phosphor/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend
@@ -2,5 +2,4 @@ RDEPENDS_${PN}_append = " \
nativesdk-autoconf-archive \
nativesdk-meson \
nativesdk-python3-sdbus++ \
- nativesdk-phosphor-logging-elog \
"
diff --git a/meta-phosphor/recipes-core/systemd/systemd_%.bbappend b/meta-phosphor/recipes-core/systemd/systemd_%.bbappend
index f1046de20..1f0b95e39 100644
--- a/meta-phosphor/recipes-core/systemd/systemd_%.bbappend
+++ b/meta-phosphor/recipes-core/systemd/systemd_%.bbappend
@@ -6,6 +6,7 @@ PACKAGECONFIG = "\
hostnamed \
kmod \
networkd \
+ nss \
pam \
randomseed \
resolved \
diff --git a/meta-phosphor/recipes-extended/gpioplus/gpioplus_git.bb b/meta-phosphor/recipes-extended/gpioplus/gpioplus_git.bb
index 8213fd7f4..00944f798 100644
--- a/meta-phosphor/recipes-extended/gpioplus/gpioplus_git.bb
+++ b/meta-phosphor/recipes-extended/gpioplus/gpioplus_git.bb
@@ -14,6 +14,6 @@ EXTRA_OEMESON = " \
"
SRC_URI += "git://github.com/openbmc/gpioplus"
-SRCREV = "6797f8a0f7862c3bb44b1629ba90811fb0f7ffd4"
+SRCREV = "71e795a279f1d30b6aca2509dd80c9b072f15efa"
S = "${WORKDIR}/git"
diff --git a/meta-phosphor/recipes-extended/sdbusplus/sdbusplus-rev.inc b/meta-phosphor/recipes-extended/sdbusplus/sdbusplus-rev.inc
index 89498893d..7978520e7 100644
--- a/meta-phosphor/recipes-extended/sdbusplus/sdbusplus-rev.inc
+++ b/meta-phosphor/recipes-extended/sdbusplus/sdbusplus-rev.inc
@@ -3,4 +3,4 @@ PR = "r1"
PV = "1.0+git${SRCPV}"
SRC_URI += "git://github.com/openbmc/sdbusplus"
-SRCREV = "95874d930f0bcc8390cd47ab3bb1e5e46db45278"
+SRCREV = "533218b426ce2b393248591c234e2bb734fd0c43"
diff --git a/meta-phosphor/recipes-extended/sdeventplus/sdeventplus_git.bb b/meta-phosphor/recipes-extended/sdeventplus/sdeventplus_git.bb
index 63bee1ea6..aa05a40c2 100644
--- a/meta-phosphor/recipes-extended/sdeventplus/sdeventplus_git.bb
+++ b/meta-phosphor/recipes-extended/sdeventplus/sdeventplus_git.bb
@@ -20,6 +20,6 @@ EXTRA_OEMESON = " \
"
SRC_URI += "git://github.com/openbmc/sdeventplus"
-SRCREV = "a6f7ed7ae56e0ee02a647a4eb42e1b26afe3fe55"
+SRCREV = "dce7381a71d1b62ed16f001a73824fd486243cf2"
S = "${WORKDIR}/git"
diff --git a/meta-phosphor/recipes-extended/stdplus/stdplus_git.bb b/meta-phosphor/recipes-extended/stdplus/stdplus_git.bb
index ee14d4491..81141abac 100644
--- a/meta-phosphor/recipes-extended/stdplus/stdplus_git.bb
+++ b/meta-phosphor/recipes-extended/stdplus/stdplus_git.bb
@@ -17,6 +17,6 @@ EXTRA_OEMESON = " \
"
SRC_URI += "git://github.com/openbmc/stdplus"
-SRCREV = "eac9d47a91770fa47b9f857ea38a484048bcb31a"
+SRCREV = "fd0f551cbdd26229dcdcfde2d6195bdf9f258197"
S = "${WORKDIR}/git"
diff --git a/meta-phosphor/recipes-phosphor/chassis/obmc-op-control-power/op-wait-power-off@.service b/meta-phosphor/recipes-phosphor/chassis/obmc-op-control-power/op-wait-power-off@.service
index c97b67bac..092409e40 100644
--- a/meta-phosphor/recipes-phosphor/chassis/obmc-op-control-power/op-wait-power-off@.service
+++ b/meta-phosphor/recipes-phosphor/chassis/obmc-op-control-power/op-wait-power-off@.service
@@ -14,8 +14,6 @@ Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/bin/env pgood_wait /org/openbmc/control/power%i off
SyslogIdentifier=pgood_wait
-ExecStart=/bin/rm -f /run/openbmc/chassis@%i-on
-ExecStart=/bin/rm -f /run/openbmc/host@%i-on
ExecStart=/bin/rm -f /run/openbmc/host@%i-request
ExecStart=/bin/rm -f /run/openbmc/mpreboot@%i
diff --git a/meta-phosphor/recipes-phosphor/configuration/entity-manager_git.bb b/meta-phosphor/recipes-phosphor/configuration/entity-manager_git.bb
index 9ce85a914..f6a6eae47 100644
--- a/meta-phosphor/recipes-phosphor/configuration/entity-manager_git.bb
+++ b/meta-phosphor/recipes-phosphor/configuration/entity-manager_git.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "Entity Manager provides d-bus configuration data \
and configures system sensors"
SRC_URI = "git://github.com/openbmc/entity-manager.git file://blocklist.json"
-SRCREV = "e789bf12a49a8993c7d9b7a161494b58dab2dcf0"
+SRCREV = "9fd87e54f5a65f3103b996114e052470dd1afd03"
PV = "0.1+git${SRCPV}"
LICENSE = "Apache-2.0"
diff --git a/meta-phosphor/recipes-phosphor/console/obmc-console_git.bb b/meta-phosphor/recipes-phosphor/console/obmc-console_git.bb
index 195b276df..4b6abb5a2 100644
--- a/meta-phosphor/recipes-phosphor/console/obmc-console_git.bb
+++ b/meta-phosphor/recipes-phosphor/console/obmc-console_git.bb
@@ -36,7 +36,7 @@ SYSTEMD_SERVICE_${PN} += "obmc-console-ssh@.service \
obmc-console@.service \
"
-FILES_${PN} += "/lib/systemd/system/obmc-console-ssh@.service.d/use-socket.conf"
+FILES_${PN} += "${systemd_system_unitdir}/obmc-console-ssh@.service.d/use-socket.conf"
do_install_append() {
# Install the server configuration
diff --git a/meta-phosphor/recipes-phosphor/datetime/phosphor-time-manager_git.bb b/meta-phosphor/recipes-phosphor/datetime/phosphor-time-manager_git.bb
index 252b2fab5..dbe32cc89 100644
--- a/meta-phosphor/recipes-phosphor/datetime/phosphor-time-manager_git.bb
+++ b/meta-phosphor/recipes-phosphor/datetime/phosphor-time-manager_git.bb
@@ -20,7 +20,7 @@ RDEPENDS_${PN} += "phosphor-network"
RDEPENDS_${PN} += "phosphor-mapper"
SRC_URI += "git://github.com/openbmc/phosphor-time-manager"
-SRCREV = "8af2a8940992c00417cf6629997c528f2500efbf"
+SRCREV = "7252bea64c7f3b03c4d80bb449f82f05a30baa71"
PV = "1.0+git${SRCPV}"
S = "${WORKDIR}/git"
diff --git a/meta-phosphor/recipes-phosphor/dbus/phosphor-dbus-interfaces_git.bb b/meta-phosphor/recipes-phosphor/dbus/phosphor-dbus-interfaces_git.bb
index 0efdc51a8..86467f6a1 100644
--- a/meta-phosphor/recipes-phosphor/dbus/phosphor-dbus-interfaces_git.bb
+++ b/meta-phosphor/recipes-phosphor/dbus/phosphor-dbus-interfaces_git.bb
@@ -18,7 +18,7 @@ DEPENDS += " \
"
SRC_URI = "git://github.com/openbmc/phosphor-dbus-interfaces"
-SRCREV = "ae956ad9efd2be24c5439a4ef6498fb5c8383719"
+SRCREV = "32fbd5df095c9b0262a013bedae8cef51f1d35fe"
# Process OBMC_ORG_YAML_SUBDIRS to create Meson config options.
# ex. xyz/openbmc_project -> -Ddata_xyz_openbmc_project=true
diff --git a/meta-phosphor/recipes-phosphor/dbus/phosphor-mapper_git.bb b/meta-phosphor/recipes-phosphor/dbus/phosphor-mapper_git.bb
index daa224141..01aa6b3f7 100644
--- a/meta-phosphor/recipes-phosphor/dbus/phosphor-mapper_git.bb
+++ b/meta-phosphor/recipes-phosphor/dbus/phosphor-mapper_git.bb
@@ -26,7 +26,7 @@ SYSTEMD_SERVICE_${PN} += " \
"
SRC_URI += "git://github.com/openbmc/phosphor-objmgr"
-SRCREV = "bb40bd36854dde1eb466a2bf093351496ce458bb"
+SRCREV = "2b7789c0180e9678909407df2c195dd3191dfc68"
S = "${WORKDIR}/git"
diff --git a/meta-phosphor/recipes-phosphor/dump/phosphor-debug-collector.inc b/meta-phosphor/recipes-phosphor/dump/phosphor-debug-collector.inc
index 98b4cf063..b9d04f800 100644
--- a/meta-phosphor/recipes-phosphor/dump/phosphor-debug-collector.inc
+++ b/meta-phosphor/recipes-phosphor/dump/phosphor-debug-collector.inc
@@ -2,4 +2,4 @@ HOMEPAGE = "https://github.com/openbmc/phosphor-debug-collector"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
SRC_URI += "git://github.com/openbmc/phosphor-debug-collector"
-SRCREV = "4c63ce5e2e507a0642e25d3e769ee8cb8638fbfe"
+SRCREV = "0af74a5e46bfc1b2014cfe54261b2a9926a7cecc"
diff --git a/meta-phosphor/recipes-phosphor/fans/phosphor-fan.inc b/meta-phosphor/recipes-phosphor/fans/phosphor-fan.inc
index 9f672d15d..135e0f6f8 100644
--- a/meta-phosphor/recipes-phosphor/fans/phosphor-fan.inc
+++ b/meta-phosphor/recipes-phosphor/fans/phosphor-fan.inc
@@ -2,4 +2,4 @@ HOMEPAGE = "https://github.com/openbmc/phosphor-fan-presence"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
SRC_URI += "git://github.com/openbmc/phosphor-fan-presence"
-SRCREV = "1d7379ea2264700ec4f9711ceac6ca113f9cb5d8"
+SRCREV = "a3584bd2559e291cf329ff6b4f179ad92b7aeaa0"
diff --git a/meta-phosphor/recipes-phosphor/fans/phosphor-pid-control_git.bb b/meta-phosphor/recipes-phosphor/fans/phosphor-pid-control_git.bb
index 7c977c513..f4ca8b075 100644
--- a/meta-phosphor/recipes-phosphor/fans/phosphor-pid-control_git.bb
+++ b/meta-phosphor/recipes-phosphor/fans/phosphor-pid-control_git.bb
@@ -13,7 +13,7 @@ inherit systemd
S = "${WORKDIR}/git"
SRC_URI = "git://github.com/openbmc/phosphor-pid-control"
-SRCREV = "7a8d5a170004c9256e00ab4a605ebba5437921dd"
+SRCREV = "e39bbe9f03177f1653b33d1ccaf8b2bd0a3f89c6"
# Each platform will need a service file that starts
# at an appropriate time per system. For instance, if
diff --git a/meta-phosphor/recipes-phosphor/flash/phosphor-software-manager.inc b/meta-phosphor/recipes-phosphor/flash/phosphor-software-manager.inc
index 7eb09472e..2f57adae7 100644
--- a/meta-phosphor/recipes-phosphor/flash/phosphor-software-manager.inc
+++ b/meta-phosphor/recipes-phosphor/flash/phosphor-software-manager.inc
@@ -2,4 +2,4 @@ HOMEPAGE = "https://github.com/openbmc/phosphor-bmc-code-mgmt"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
SRC_URI += "git://github.com/openbmc/phosphor-bmc-code-mgmt"
-SRCREV = "1fd6dddf7d8203b04a0ff9878f74bc07ffdc0a1e"
+SRCREV = "6e9fb1d6ec428d1cc05c78b9b394b214b46c0364"
diff --git a/meta-phosphor/recipes-phosphor/gpio/phosphor-gpio-monitor_git.bb b/meta-phosphor/recipes-phosphor/gpio/phosphor-gpio-monitor_git.bb
index 092f02a6d..5220431d5 100644
--- a/meta-phosphor/recipes-phosphor/gpio/phosphor-gpio-monitor_git.bb
+++ b/meta-phosphor/recipes-phosphor/gpio/phosphor-gpio-monitor_git.bb
@@ -44,5 +44,5 @@ FILES_${PN}-monitor += "${base_libdir}/udev/rules.d/99-gpio-keys.rules"
FILES_${PN}-presence += "${bindir}/phosphor-gpio-presence"
SRC_URI += "git://github.com/openbmc/phosphor-gpio-monitor"
-SRCREV = "3ce88a7b5a1c17ca53b63859a5dad840a995f42e"
+SRCREV = "b08a0f691740ef21e28547a57981b1043d46d8ce"
S = "${WORKDIR}/git"
diff --git a/meta-phosphor/recipes-phosphor/host/phosphor-host-postd_git.bb b/meta-phosphor/recipes-phosphor/host/phosphor-host-postd_git.bb
index 4ea8bdff4..77d36bbf1 100644
--- a/meta-phosphor/recipes-phosphor/host/phosphor-host-postd_git.bb
+++ b/meta-phosphor/recipes-phosphor/host/phosphor-host-postd_git.bb
@@ -20,7 +20,7 @@ DEPENDS += "systemd"
S = "${WORKDIR}/git"
SRC_URI = "git://github.com/openbmc/phosphor-host-postd"
-SRCREV = "ba5258f7158e8a0e61043290aff0873358509158"
+SRCREV = "2a744b2d70ce9de8519a7c716da5009cb049db17"
SNOOP_DEVICE ?= "aspeed-lpc-snoop0"
POST_CODE_BYTES ?= "1"
diff --git a/meta-phosphor/recipes-phosphor/interfaces/bmcweb/run-ptest b/meta-phosphor/recipes-phosphor/interfaces/bmcweb/run-ptest
new file mode 100644
index 000000000..f2a522a14
--- /dev/null
+++ b/meta-phosphor/recipes-phosphor/interfaces/bmcweb/run-ptest
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+for i in `ls test/*_test`; do
+ $i
+ if [ $? -eq 0 ]; then
+ echo "PASS: $i"
+ else
+ echo "FAIL: $i"
+ fi
+done
diff --git a/meta-phosphor/recipes-phosphor/interfaces/bmcweb_git.bb b/meta-phosphor/recipes-phosphor/interfaces/bmcweb_git.bb
index d13af80a4..0e0abb236 100644
--- a/meta-phosphor/recipes-phosphor/interfaces/bmcweb_git.bb
+++ b/meta-phosphor/recipes-phosphor/interfaces/bmcweb_git.bb
@@ -13,10 +13,16 @@ LIC_FILES_CHKSUM = "file://LICENCE;md5=a6a4edad4aed50f39a66d098d74b265b"
SRC_URI = "git://github.com/openbmc/bmcweb.git"
PV = "1.0+git${SRCPV}"
-SRCREV = "d8ef9915dda4d2e3b7aec885ebfa7debce61bff8"
+SRCREV = "1a6258dc985cde406d9098130e4a2d683e82beb2"
S = "${WORKDIR}/git"
+inherit meson ptest
+
+SRC_URI += " \
+ file://run-ptest \
+"
+
DEPENDS = " \
openssl \
zlib \
@@ -27,6 +33,8 @@ DEPENDS = " \
gtest \
nlohmann-json \
libtinyxml2 \
+ ${@bb.utils.contains('PTEST_ENABLED', '1', 'gtest', '', d)} \
+ ${@bb.utils.contains('PTEST_ENABLED', '1', 'gmock', '', d)} \
"
RDEPENDS_${PN} += " \
@@ -34,11 +42,19 @@ RDEPENDS_${PN} += " \
phosphor-mapper \
"
+do_install_ptest() {
+ install -d ${D}${PTEST_PATH}/test
+ cp -rf ${B}/*_test ${D}${PTEST_PATH}/test/
+}
+
FILES_${PN} += "${datadir}/** "
-inherit meson
-EXTRA_OEMESON = "--buildtype=minsize -Dtests=disabled -Dyocto-deps=enabled"
+EXTRA_OEMESON = " \
+ --buildtype=minsize \
+ -Dtests=${@bb.utils.contains('PTEST_ENABLED', '1', 'enabled', 'disabled', d)} \
+ -Dyocto-deps=enabled \
+"
SYSTEMD_SERVICE_${PN} += "bmcweb.service bmcweb.socket"
diff --git a/meta-phosphor/recipes-phosphor/inventory/phosphor-inventory-manager.inc b/meta-phosphor/recipes-phosphor/inventory/phosphor-inventory-manager.inc
index 6a8602758..79b0fd9fc 100644
--- a/meta-phosphor/recipes-phosphor/inventory/phosphor-inventory-manager.inc
+++ b/meta-phosphor/recipes-phosphor/inventory/phosphor-inventory-manager.inc
@@ -2,4 +2,4 @@ HOMEPAGE = "http://github.com/openbmc/phosphor-inventory-manager"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
SRC_URI = "git://github.com/openbmc/phosphor-inventory-manager"
-SRCREV = "59521e87de8d3d74065628393bbadc4389e09600"
+SRCREV = "ffa2b7ec19d7721295e8a05d202c7c0ca38a912f"
diff --git a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-blobs_git.bb b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-blobs_git.bb
index 227e8c897..bac96c456 100644
--- a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-blobs_git.bb
+++ b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-blobs_git.bb
@@ -16,7 +16,7 @@ DEPENDS += "ipmi-blob-tool"
S = "${WORKDIR}/git"
SRC_URI = "git://github.com/openbmc/phosphor-ipmi-blobs"
-SRCREV = "485e54aea3f7b084b4425d83d2f5eb9529c09ebe"
+SRCREV = "a533a3756f084ab6c5a80375074178440ba7c905"
FILES_${PN}_append = " ${libdir}/ipmid-providers/lib*${SOLIBS}"
FILES_${PN}_append = " ${libdir}/host-ipmid/lib*${SOLIBS}"
diff --git a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-flash_git.bb b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-flash_git.bb
index b523697fc..67a8aa45e 100644
--- a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-flash_git.bb
+++ b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-flash_git.bb
@@ -36,6 +36,8 @@ PACKAGECONFIG[host-bios] = "--enable-host-bios, --disable-host-bios"
PACKAGECONFIG[aspeed-p2a] = "--enable-aspeed-p2a, --disable-aspeed-p2a"
PACKAGECONFIG[aspeed-lpc] = "--enable-aspeed-lpc, --disable-aspeed-lpc"
PACKAGECONFIG[nuvoton-lpc] = "--enable-nuvoton-lpc, --disable-nuvoton-lpc"
+PACKAGECONFIG[nuvoton-p2a-vga] = "--enable-nuvoton-p2a-vga, --disable-nuvoton-p2a-vga"
+PACKAGECONFIG[nuvoton-p2a-mbox] = "--enable-nuvoton-p2a-mbox, --disable-nuvoton-p2a-mbox"
PACKAGECONFIG[net-bridge] = "--enable-net-bridge, --disable-net-bridge"
EXTRA_OECONF = "--disable-tests --disable-build-host-tool"
@@ -46,7 +48,7 @@ EXTRA_OECONF_append = " MAPPED_ADDRESS=${IPMI_FLASH_BMC_ADDRESS}"
S = "${WORKDIR}/git"
SRC_URI = "git://github.com/openbmc/phosphor-ipmi-flash"
-SRCREV = "c7fa2c2803065fcae3e9540e57d2a28a5bc83ecc"
+SRCREV = "a3f65698000d366b57d2916eae67518f89c1298b"
SYSTEMD_PACKAGES = "${PN}"
SYSTEMD_SERVICE_${PN} += "phosphor-ipmi-flash-bmc-prepare.target \
diff --git a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-fru.inc b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-fru.inc
index ef91bb9e9..fc26d1a7e 100644
--- a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-fru.inc
+++ b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-fru.inc
@@ -2,4 +2,4 @@ HOMEPAGE = "https://github.com/openbmc/ipmi-fru-parser"
LICENSE = "GPL-3.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=7702f203b58979ebbc31bfaeb44f219c"
SRC_URI += "git://github.com/openbmc/ipmi-fru-parser"
-SRCREV = "0968237b479d649ecaac7561cf07fbacf241d98c"
+SRCREV = "472d3e2fd7f2409cbe88e23128b46d6f4d982af3"
diff --git a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-host.inc b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-host.inc
index 9ea92101d..51d2da791 100644
--- a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-host.inc
+++ b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-host.inc
@@ -2,4 +2,4 @@ HOMEPAGE = "http://github.com/openbmc/phosphor-host-ipmid"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=fa818a259cbed7ce8bc2a22d35a464fc"
SRC_URI += "git://github.com/openbmc/phosphor-host-ipmid"
-SRCREV = "be0632321e2a0f4fbe7b0e9c1403121c4db37328"
+SRCREV = "916d4232a432b9f9ee5ddd3d0bbce05c1f3909f6"
diff --git a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-kcs_git.bb b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-kcs_git.bb
index a4d4b4bb2..a684c4807 100644
--- a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-kcs_git.bb
+++ b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-kcs_git.bb
@@ -12,8 +12,8 @@ PV = "1.0+git${SRCPV}"
KCS_DEVICE ?= "ipmi-kcs3"
-SYSTEMD_SERVICE_${PN} = " ${PN}@${KCS_DEVICE}.service "
-FILES_${PN} += " ${systemd_system_unitdir}/${PN}@.service "
+SYSTEMD_SERVICE_${PN} = "${PN}@${KCS_DEVICE}.service"
+FILES_${PN} += "${systemd_system_unitdir}/${PN}@.service"
PROVIDES += "virtual/obmc-host-ipmi-hw"
RPROVIDES_${PN} += "virtual-obmc-host-ipmi-hw"
diff --git a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-net_git.bb b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-net_git.bb
index b18ea0136..8db745ecc 100644
--- a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-net_git.bb
+++ b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-net_git.bb
@@ -18,7 +18,7 @@ DEPENDS += "phosphor-ipmi-host"
RRECOMMENDS_${PN} = "pam-ipmi"
SRC_URI += "git://github.com/openbmc/phosphor-net-ipmid"
-SRCREV = "07bb095158b39cedb49dae0972e489a6a2776faf"
+SRCREV = "d4a4bed525f79c39705fa526b20ab663bb2c2069"
S = "${WORKDIR}/git"
diff --git a/meta-phosphor/recipes-phosphor/leds/phosphor-led-manager.inc b/meta-phosphor/recipes-phosphor/leds/phosphor-led-manager.inc
index 3e94ccc35..d296166c1 100644
--- a/meta-phosphor/recipes-phosphor/leds/phosphor-led-manager.inc
+++ b/meta-phosphor/recipes-phosphor/leds/phosphor-led-manager.inc
@@ -2,4 +2,4 @@ HOMEPAGE = "http://github.com/openbmc/phosphor-led-manager"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
SRC_URI += "git://github.com/openbmc/phosphor-led-manager"
-SRCREV = "616a0716970203cb77dc92301f0763043c5b461c"
+SRCREV = "c105f279ebf2de11ca3941559c91c53e43bc646f"
diff --git a/meta-phosphor/recipes-phosphor/leds/phosphor-led-manager_git.bb b/meta-phosphor/recipes-phosphor/leds/phosphor-led-manager_git.bb
index 55171dbed..cce6fdef0 100644
--- a/meta-phosphor/recipes-phosphor/leds/phosphor-led-manager_git.bb
+++ b/meta-phosphor/recipes-phosphor/leds/phosphor-led-manager_git.bb
@@ -3,22 +3,19 @@ DESCRIPTION = "Daemon to cater to triggering actions on LED groups"
PR = "r1"
PV = "1.0+git${SRCPV}"
-require ${BPN}.inc
+require ${PN}.inc
-inherit autotools pkgconfig python3native
+inherit meson pkgconfig python3native
inherit obmc-phosphor-dbus-service obmc-phosphor-systemd
-LED_MGR_PACKAGES = " \
- ${PN}-ledmanager \
- ${PN}-faultmonitor \
-"
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[use-json] = "-Duse-json=enabled, -Duse-json=disabled"
+PACKAGECONFIG[use-lamp-test] = "-Duse-lamp-test=enabled, -Duse-lamp-test=disabled"
+PACKAGECONFIG[monitor-operational-status] = "-Dmonitor-operational-status=enabled, \
+ -Dmonitor-operational-status=disabled"
-PACKAGE_BEFORE_PN += "${LED_MGR_PACKAGES}"
-ALLOW_EMPTY_${PN} = "1"
-
-DBUS_PACKAGES = "${PN}-ledmanager"
-
-SYSTEMD_PACKAGES = "${LED_MGR_PACKAGES}"
+SYSTEMD_PACKAGES = "${PN} ${PN}-faultmonitor"
+PACKAGE_BEFORE_PN += "${PN}-faultmonitor"
DEPENDS += "${PYTHON_PN}-native"
DEPENDS += "${PYTHON_PN}-pyyaml-native"
@@ -31,28 +28,27 @@ DEPENDS += "nlohmann-json"
DEPENDS += "virtual/${PN}-config-native"
-RDEPENDS_${PN}-ledmanager += "bash"
+RDEPENDS_${PN} += "bash"
S = "${WORKDIR}/git"
-FILES_${PN}-ledmanager += "${bindir}/phosphor-ledmanager ${bindir}/led-set-all-groups-asserted.sh"
FILES_${PN}-faultmonitor += "${bindir}/phosphor-fru-fault-monitor"
-DBUS_SERVICE_${PN}-ledmanager += "xyz.openbmc_project.LED.GroupManager.service"
+DBUS_SERVICE_${PN} += "xyz.openbmc_project.LED.GroupManager.service"
-SYSTEMD_SERVICE_${PN}-ledmanager += "obmc-led-group-start@.service obmc-led-group-stop@.service"
+SYSTEMD_SERVICE_${PN} += "obmc-led-group-start@.service obmc-led-group-stop@.service"
SYSTEMD_SERVICE_${PN}-faultmonitor += "obmc-fru-fault-monitor.service"
-SYSTEMD_LINK_${PN}-ledmanager += "../obmc-led-group-start@.service:multi-user.target.wants/obmc-led-group-start@bmc_booted.service"
+SYSTEMD_LINK_${PN} += "../obmc-led-group-start@.service:multi-user.target.wants/obmc-led-group-start@bmc_booted.service"
STATES = "start stop"
TMPLFMT = "obmc-led-group-{0}@.service"
TGTFMT = "obmc-power-{0}@0.target"
INSTFMT = "obmc-led-group-{0}@power_on.service"
FMT = "../${TMPLFMT}:${TGTFMT}.wants/${INSTFMT}"
-SYSTEMD_LINK_${PN}-ledmanager += "${@compose_list(d, 'FMT', 'STATES')}"
+SYSTEMD_LINK_${PN} += "${@compose_list(d, 'FMT', 'STATES')}"
# Install the override to set up a Conflicts relation
-SYSTEMD_OVERRIDE_${PN}-ledmanager += "bmc_booted.conf:obmc-led-group-start@bmc_booted.service.d/bmc_booted.conf"
+SYSTEMD_OVERRIDE_${PN} += "bmc_booted.conf:obmc-led-group-start@bmc_booted.service.d/bmc_booted.conf"
EXTRA_OECONF = "YAML_PATH=${STAGING_DATADIR_NATIVE}/${PN}"
diff --git a/meta-phosphor/recipes-phosphor/leds/phosphor-led-sysfs_git.bb b/meta-phosphor/recipes-phosphor/leds/phosphor-led-sysfs_git.bb
index c3768c9d9..03cdb9636 100644
--- a/meta-phosphor/recipes-phosphor/leds/phosphor-led-sysfs_git.bb
+++ b/meta-phosphor/recipes-phosphor/leds/phosphor-led-sysfs_git.bb
@@ -19,7 +19,7 @@ DBUS_SERVICE_${PN} += "xyz.openbmc_project.led.controller@.service"
SRC_URI += "git://github.com/openbmc/phosphor-led-sysfs"
SRC_URI += "file://70-leds.rules"
-SRCREV = "61b906367119b794a9788725fad86a3174bd83c0"
+SRCREV = "a8a275f635ff876186ce5783308e93368f205898"
S = "${WORKDIR}/git"
do_install_append() {
diff --git a/meta-phosphor/recipes-phosphor/logging/phosphor-hostlogger_git.bb b/meta-phosphor/recipes-phosphor/logging/phosphor-hostlogger_git.bb
index 8816f1ab6..2ad8b50ef 100644
--- a/meta-phosphor/recipes-phosphor/logging/phosphor-hostlogger_git.bb
+++ b/meta-phosphor/recipes-phosphor/logging/phosphor-hostlogger_git.bb
@@ -22,7 +22,7 @@ RRECOMMENDS_${PN} += "phosphor-debug-collector"
# Source code repository
S = "${WORKDIR}/git"
SRC_URI = "git://github.com/openbmc/phosphor-hostlogger"
-SRCREV = "e9af83c6f5cc14a7493de5359b3c65b8832c99f0"
+SRCREV = "dfee0da0a855933a3d61df5d190d19d82a72bed7"
# Systemd service template
SYSTEMD_PACKAGES = "${PN}"
diff --git a/meta-phosphor/recipes-phosphor/logging/phosphor-logging_git.bb b/meta-phosphor/recipes-phosphor/logging/phosphor-logging_git.bb
index 2bc141bb5..5fa7f7a03 100644
--- a/meta-phosphor/recipes-phosphor/logging/phosphor-logging_git.bb
+++ b/meta-phosphor/recipes-phosphor/logging/phosphor-logging_git.bb
@@ -24,14 +24,11 @@ DEPENDS += "phosphor-dbus-interfaces"
DEPENDS += "virtual/phosphor-logging-callouts"
DEPENDS += "libcereal"
DEPENDS += "sdeventplus"
-DEPENDS_append_class-target = " packagegroup-obmc-yaml-providers"
+DEPENDS += "packagegroup-obmc-yaml-providers"
PACKAGE_BEFORE_PN = "${PN}-test"
FILES_${PN}-test = "${bindir}/*-test"
-PACKAGE_BEFORE_PN += "${PN}-elog"
-FILES_${PN}-elog += "${elog_dir}"
-
# Package configuration
LOGGING_PACKAGES = " \
${PN}-base \
@@ -55,61 +52,25 @@ FILES_phosphor-rsyslog-config += " \
"
SRC_URI += "git://github.com/openbmc/phosphor-logging"
-SRCREV = "25d986c1e7d749d3f78da5a5e507d1f2bcbc7874"
+SRCREV = "6b3f345b3f265036ec339d097f9d60d12998015d"
S = "${WORKDIR}/git"
-# Do not DEPEND on the specified packages for native build
-# as they will not be available in host machine
-DEPENDS_remove_class-native = " \
- virtual/phosphor-logging-callouts \
- sdbusplus \
- systemd \
- libcereal \
- sdeventplus \
- "
-
-# Do not DEPEND on the specified packages for native SDK build
-# as they will not be available in host machine
-DEPENDS_remove_class-nativesdk = " \
- virtual/phosphor-logging-callouts \
- sdbusplus \
- libcereal \
- systemd \
- phosphor-dbus-interfaces \
- sdeventplus \
- "
-
-PACKAGECONFIG ??= "metadata-processing install_scripts"
+PACKAGECONFIG ??= "metadata-processing"
PACKAGECONFIG[metadata-processing] = " \
--enable-metadata-processing, \
--disable-metadata-processing, , \
"
-# Provide a means to enable/disable install_scripts feature
-PACKAGECONFIG[install_scripts] = " \
- --enable-install_scripts, \
- --disable-install_scripts, ,\
- "
-
PACKAGECONFIG[openpower-pels] = " \
--enable-openpower-pel-extension, \
--disable-openpower-pel-extension, \
- nlohmann-json nlohmann-fifo cli11 pldm, \
+ nlohmann-json cli11 pldm, \
python3, \
"
-# Enable install_scripts during native and native SDK build
-PACKAGECONFIG_add_class-native = "install_scripts"
-PACKAGECONFIG_add_class-nativesdk = "install_scripts"
-
-# Disable install_scripts during target build
-PACKAGECONFIG_remove_class-target = "install_scripts"
-
EXTRA_OECONF = " \
YAML_DIR=${STAGING_DIR_TARGET}${yaml_dir} \
CALLOUTS_YAML=${STAGING_DIR_NATIVE}${callouts_datadir}/callouts.yaml \
"
-
-BBCLASSEXTEND += "native nativesdk"
diff --git a/meta-phosphor/recipes-phosphor/mctp/mctp_git.bb b/meta-phosphor/recipes-phosphor/mctp/mctp_git.bb
index 685e2369f..ff3c098a9 100644
--- a/meta-phosphor/recipes-phosphor/mctp/mctp_git.bb
+++ b/meta-phosphor/recipes-phosphor/mctp/mctp_git.bb
@@ -11,7 +11,7 @@ LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=0d30807bb7a4f16d36e96b78f9ed8fae"
SRC_URI = "git://github.com/openbmc/libmctp \
file://default"
-SRCREV = "e889b19f4b349cd5c4ff186ff3c3b604c8f9c7b6"
+SRCREV = "eba19a3b122a39ef2b5dbda49b418a202f78a48d"
CONFFILES_${PN} = "${sysconfdir}/default/mctp"
DEPENDS += "autoconf-archive-native \
diff --git a/meta-phosphor/recipes-phosphor/pldm/pldm.inc b/meta-phosphor/recipes-phosphor/pldm/pldm.inc
index f3c46b069..3f21adc20 100644
--- a/meta-phosphor/recipes-phosphor/pldm/pldm.inc
+++ b/meta-phosphor/recipes-phosphor/pldm/pldm.inc
@@ -2,4 +2,4 @@ HOMEPAGE = "https://github.com/openbmc/pldm"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
SRC_URI = "git://github.com/openbmc/pldm"
-SRCREV = "bcabadac18a072cecce76b0e7038f2978f9025b1"
+SRCREV = "a1d27606bc7da14081770ca310012768b933f6e7"
diff --git a/meta-phosphor/recipes-phosphor/power/phosphor-power.inc b/meta-phosphor/recipes-phosphor/power/phosphor-power.inc
index 47b5b467c..f0ab969aa 100644
--- a/meta-phosphor/recipes-phosphor/power/phosphor-power.inc
+++ b/meta-phosphor/recipes-phosphor/power/phosphor-power.inc
@@ -2,4 +2,4 @@ HOMEPAGE = "https://github.com/openbmc/phosphor-power"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
SRC_URI += "git://github.com/openbmc/phosphor-power"
-SRCREV = "81d6cde458c554c6cc71793eb0ed38edc58043a6"
+SRCREV = "e2f14a5748e2bedc926bdd7a855ff4fb368ae1a5"
diff --git a/meta-phosphor/recipes-phosphor/sel-logger/phosphor-sel-logger_git.bb b/meta-phosphor/recipes-phosphor/sel-logger/phosphor-sel-logger_git.bb
index c52e8e149..d1f37c275 100644
--- a/meta-phosphor/recipes-phosphor/sel-logger/phosphor-sel-logger_git.bb
+++ b/meta-phosphor/recipes-phosphor/sel-logger/phosphor-sel-logger_git.bb
@@ -18,7 +18,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
DEPENDS += "systemd sdbusplus boost phosphor-ipmi-host"
SRC_URI = "git://github.com/openbmc/phosphor-sel-logger.git;protocol=git"
-SRCREV = "aaffc124b6f49d9bc267e65565bdd5d4c1db1aaf"
+SRCREV = "486e42e9db215070d631b7ac1f8f32537cb3bfe7"
PV = "0.1+git${SRCPV}"
diff --git a/meta-phosphor/recipes-phosphor/sensors/dbus-sensors_git.bb b/meta-phosphor/recipes-phosphor/sensors/dbus-sensors_git.bb
index 8302675e8..e3ab1f339 100644
--- a/meta-phosphor/recipes-phosphor/sensors/dbus-sensors_git.bb
+++ b/meta-phosphor/recipes-phosphor/sensors/dbus-sensors_git.bb
@@ -2,7 +2,7 @@ SUMMARY = "dbus-sensors"
DESCRIPTION = "Dbus Sensor Services Configured from D-Bus"
SRC_URI = "git://github.com/openbmc/dbus-sensors.git"
-SRCREV = "d05867c0d32065d36b13bd452f7aff9dcb20ac2f"
+SRCREV = "eb0b84de9fd39a74a4a67990de6054b9d9f49833"
PV = "0.1+git${SRCPV}"
diff --git a/meta-phosphor/recipes-phosphor/sensors/phosphor-hwmon_git.bb b/meta-phosphor/recipes-phosphor/sensors/phosphor-hwmon_git.bb
index a5c1db49a..4e90977b4 100644
--- a/meta-phosphor/recipes-phosphor/sensors/phosphor-hwmon_git.bb
+++ b/meta-phosphor/recipes-phosphor/sensors/phosphor-hwmon_git.bb
@@ -5,14 +5,11 @@ PV = "1.0+git${SRCPV}"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=fa818a259cbed7ce8bc2a22d35a464fc"
-inherit autotools pkgconfig
+inherit meson pkgconfig
inherit obmc-phosphor-systemd
PACKAGECONFIG ??= ""
-# Autotools configure option to enable/disable max31785-msl
-PACKAGECONFIG[max31785-msl] = "--enable-max31785-msl, --disable-max31785-msl"
-# Meson configure option to enable/disable max31785-msl
-# PACKAGECONFIG[max31785-msl] = "-Denable-max31785-msl=true, -Denable-max31785-msl=false"
+PACKAGECONFIG[max31785-msl] = "-Denable-max31785-msl=true, -Denable-max31785-msl=false"
PACKAGE_BEFORE_PN = "max31785-msl"
SYSTEMD_PACKAGES = "${PN} max31785-msl"
@@ -39,14 +36,14 @@ RDEPENDS_${PN} += "\
RRECOMMENDS_${PN} += "${VIRTUAL-RUNTIME_phosphor-hwmon-config}"
FILES_max31785-msl = "${bindir}/max31785-msl"
-RDEPENDS_max31785-msl = "${VIRTUAL-RUNTIME_base-utils} i2c-tools"
+RDEPENDS_max31785-msl = "${VIRTUAL-RUNTIME_base-utils} i2c-tools bash"
SRC_URI += "git://github.com/openbmc/phosphor-hwmon"
SRC_URI += "file://70-hwmon.rules"
SRC_URI += "file://70-iio.rules"
SRC_URI += "file://start_hwmon.sh"
-SRCREV = "82921ae8e84b250e6436c8c005245bccd5c4706c"
+SRCREV = "73769099e215de68fbb6c82664eb682cacce9f56"
S = "${WORKDIR}/git"
diff --git a/meta-phosphor/recipes-phosphor/sensors/phosphor-nvme_git.bb b/meta-phosphor/recipes-phosphor/sensors/phosphor-nvme_git.bb
index 26c674c0a..fb4035406 100644
--- a/meta-phosphor/recipes-phosphor/sensors/phosphor-nvme_git.bb
+++ b/meta-phosphor/recipes-phosphor/sensors/phosphor-nvme_git.bb
@@ -15,7 +15,7 @@ DEPENDS += "phosphor-logging"
DEPENDS += "nlohmann-json"
SRC_URI = "git://github.com/openbmc/phosphor-nvme.git;protocol=git"
-SRCREV = "93455337cbf9b005e761c15bd90bdbe6b13484b8"
+SRCREV = "fdffe5c37f0d1feaa90558433f688c3757d2e79a"
S = "${WORKDIR}/git"
SYSTEMD_SERVICE_${PN} = "xyz.openbmc_project.nvme.manager.service"
diff --git a/meta-phosphor/recipes-phosphor/sensors/phosphor-virtual-sensor_git.bb b/meta-phosphor/recipes-phosphor/sensors/phosphor-virtual-sensor_git.bb
index 68c9f74d5..3eee4dbaa 100644
--- a/meta-phosphor/recipes-phosphor/sensors/phosphor-virtual-sensor_git.bb
+++ b/meta-phosphor/recipes-phosphor/sensors/phosphor-virtual-sensor_git.bb
@@ -16,7 +16,7 @@ DEPENDS += "nlohmann-json"
DEPENDS += "exprtk"
SRC_URI = "git://github.com/openbmc/phosphor-virtual-sensor.git;protocol=git"
-SRCREV = "2b56ddb38d7446281c18786b5e280ae30f5f7b35"
+SRCREV = "a55a907e7220bede5f4c76ca6d99fad2a0c1f00d"
S = "${WORKDIR}/git"
SYSTEMD_SERVICE_${PN} = "phosphor-virtual-sensor.service"
diff --git a/meta-phosphor/recipes-phosphor/state/phosphor-post-code-manager_git.bb b/meta-phosphor/recipes-phosphor/state/phosphor-post-code-manager_git.bb
index 699c3e1db..43de0fdb4 100644
--- a/meta-phosphor/recipes-phosphor/state/phosphor-post-code-manager_git.bb
+++ b/meta-phosphor/recipes-phosphor/state/phosphor-post-code-manager_git.bb
@@ -4,7 +4,7 @@ interface /xyz/openbmc_project/state/boot/raw by snoopd daemon and save them \
in a file under /var/lib for history."
SRC_URI = "git://github.com/openbmc/phosphor-post-code-manager.git"
-SRCREV = "84a4c19c48ad28b537cfcce15df39e841e1ed565"
+SRCREV = "0171dd6bce9004e187c957f160809b729322f37d"
S = "${WORKDIR}/git"
diff --git a/meta-phosphor/recipes-phosphor/state/phosphor-state-manager_git.bb b/meta-phosphor/recipes-phosphor/state/phosphor-state-manager_git.bb
index de7e5d894..e93f12f7b 100644
--- a/meta-phosphor/recipes-phosphor/state/phosphor-state-manager_git.bb
+++ b/meta-phosphor/recipes-phosphor/state/phosphor-state-manager_git.bb
@@ -55,6 +55,8 @@ DEPENDS += "libcereal"
DEPENDS += "nlohmann-json"
DEPENDS += "cli11"
+RDEPENDS_${PN}-chassis += "bash"
+
FILES_${PN}-host = "${bindir}/phosphor-host-state-manager"
DBUS_SERVICE_${PN}-host += "xyz.openbmc_project.State.Host.service"
DBUS_SERVICE_${PN}-host += "phosphor-reboot-host@.service"
@@ -180,6 +182,6 @@ SYSTEMD_LINK_${PN}-obmc-targets += "${@compose_list(d, 'FAN_LINK_FMT', 'OBMC_CHA
SYSTEMD_LINK_${PN}-obmc-targets += "${@compose_list(d, 'QUIESCE_FMT', 'HOST_ERROR_TARGETS', 'OBMC_HOST_INSTANCES')}"
SRC_URI += "git://github.com/openbmc/phosphor-state-manager"
-SRCREV = "35ca2e34cd04b7288a5b659e4e7dcd4590056b7d"
+SRCREV = "aaa2e11057d89feadba173a6fea70325102cce21"
S = "${WORKDIR}/git"
diff --git a/meta-phosphor/recipes-phosphor/telemetry/telemetry_git.bb b/meta-phosphor/recipes-phosphor/telemetry/telemetry_git.bb
index 5986cf052..d255f5731 100644
--- a/meta-phosphor/recipes-phosphor/telemetry/telemetry_git.bb
+++ b/meta-phosphor/recipes-phosphor/telemetry/telemetry_git.bb
@@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
SRC_URI = "git://github.com/openbmc/telemetry"
PV = "1.0+git${SRCPV}"
-SRCREV = "9f9ff90a39219ff3a2f1179f74fc9a6dc857e5ab"
+SRCREV = "f763c9e3bbe0f86a4a41e7bb0dc70bffde0af9b2"
S = "${WORKDIR}/git"
diff --git a/meta-phosphor/recipes-phosphor/users/phosphor-user-manager_git.bb b/meta-phosphor/recipes-phosphor/users/phosphor-user-manager_git.bb
index 903678f4f..3708e67ce 100644
--- a/meta-phosphor/recipes-phosphor/users/phosphor-user-manager_git.bb
+++ b/meta-phosphor/recipes-phosphor/users/phosphor-user-manager_git.bb
@@ -36,5 +36,5 @@ DBUS_SERVICE_phosphor-ldap = " \
xyz.openbmc_project.LDAP.PrivilegeMapper.service \
"
SRC_URI += "git://github.com/openbmc/phosphor-user-manager"
-SRCREV = "9638afb9aa848aa0e696c2447e0fbc70a0aa5eed"
+SRCREV = "18c1b42c1612e0e8d8f5cd9973bba09b447c7185"
S = "${WORKDIR}/git"
diff --git a/meta-phosphor/recipes-phosphor/watchdog/phosphor-watchdog_git.bb b/meta-phosphor/recipes-phosphor/watchdog/phosphor-watchdog_git.bb
index 6215f609b..7f327d152 100644
--- a/meta-phosphor/recipes-phosphor/watchdog/phosphor-watchdog_git.bb
+++ b/meta-phosphor/recipes-phosphor/watchdog/phosphor-watchdog_git.bb
@@ -20,7 +20,7 @@ DEPENDS += "phosphor-logging"
DEPENDS += "systemd"
SRC_URI += "git://github.com/openbmc/phosphor-watchdog"
-SRCREV = "086837596cdaffd27b399a863775e68cf8f2f344"
+SRCREV = "18d3e6525cf412af8b940ad1f8e70afd7e907980"
S = "${WORKDIR}/git"
EXTRA_OEMESON = " \
diff --git a/meta-phosphor/recipes-phosphor/webui/webui-vue_git.bb b/meta-phosphor/recipes-phosphor/webui/webui-vue_git.bb
index f03efc473..481f7b6cc 100644
--- a/meta-phosphor/recipes-phosphor/webui/webui-vue_git.bb
+++ b/meta-phosphor/recipes-phosphor/webui/webui-vue_git.bb
@@ -6,7 +6,7 @@ LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
SRC_URI = "git://github.com/openbmc/webui-vue.git"
-SRCREV = "7006806d21cf8d13666524a8124b8395f2f1e156"
+SRCREV = "5ed21f2d1e8b82be699a623bfdef550dfd598dbb"
S = "${WORKDIR}/git"
DEPENDS_prepend = "nodejs-native "
diff --git a/meta-phosphor/recipes-support/nss-pam-ldapd/nss-pam-ldapd_0.9.8.bb b/meta-phosphor/recipes-support/nss-pam-ldapd/nss-pam-ldapd_0.9.8.bb
index 5fcfeea17..596c1824f 100644
--- a/meta-phosphor/recipes-support/nss-pam-ldapd/nss-pam-ldapd_0.9.8.bb
+++ b/meta-phosphor/recipes-support/nss-pam-ldapd/nss-pam-ldapd_0.9.8.bb
@@ -49,8 +49,8 @@ do_install_append() {
sed -i -e 's/^gid nslcd/# gid nslcd/;' ${D}${sysconfdir}/nslcd.conf
sed -i -e 's/^base dc=example,dc=com/base ${LDAP_DN}/;' ${D}${sysconfdir}/nslcd.conf
- install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${WORKDIR}/nslcd.service ${D}${systemd_unitdir}/system
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/nslcd.service ${D}${systemd_system_unitdir}
}
inherit update-rc.d systemd
diff --git a/meta-phosphor/recipes-support/rng-tools/rng-tools_%.bbappend b/meta-phosphor/recipes-support/rng-tools/rng-tools_%.bbappend
index ce5d7994b..e9577eb5d 100644
--- a/meta-phosphor/recipes-support/rng-tools/rng-tools_%.bbappend
+++ b/meta-phosphor/recipes-support/rng-tools/rng-tools_%.bbappend
@@ -8,7 +8,7 @@ PACKAGECONFIG_remove = "\
inherit systemd
-FILES_${PN} += "${systemd_unitdir}/system/rngd.service.d"
+FILES_${PN} += "${systemd_system_unitdir}/rngd.service.d"
do_install_append() {
@@ -18,9 +18,9 @@ do_install_append() {
# go slower.
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
if ${@bb.utils.contains('PACKAGECONFIG', 'libjitterentropy', 'true', 'false', d)}; then
- install -d ${D}${systemd_unitdir}/system/rngd.service.d
+ install -d ${D}${systemd_system_unitdir}/rngd.service.d
install -m 644 ${WORKDIR}/10-nice.conf \
- ${D}${systemd_unitdir}/system/rngd.service.d
+ ${D}${systemd_system_unitdir}/rngd.service.d
fi
fi
}
diff --git a/meta-phosphor/recipes-x86/chassis/x86-power-control_git.bb b/meta-phosphor/recipes-x86/chassis/x86-power-control_git.bb
index c5788d00e..8765dd573 100755
--- a/meta-phosphor/recipes-x86/chassis/x86-power-control_git.bb
+++ b/meta-phosphor/recipes-x86/chassis/x86-power-control_git.bb
@@ -2,7 +2,7 @@ SUMMARY = "Chassis Power Control service for Intel based platforms"
DESCRIPTION = "Chassis Power Control service for Intel based platforms"
SRC_URI = "git://github.com/openbmc/x86-power-control.git;protocol=ssh"
-SRCREV = "22e0bec01e283819c13310640918c89f4a74fb56"
+SRCREV = "92caa4c639903ef076e2f09e985291781edd927d"
PV = "1.0+git${SRCPV}"
diff --git a/meta-phosphor/recipes-x86/peci-pcie/peci-pcie_git.bb b/meta-phosphor/recipes-x86/peci-pcie/peci-pcie_git.bb
index af643b743..937a9c6fe 100644
--- a/meta-phosphor/recipes-x86/peci-pcie/peci-pcie_git.bb
+++ b/meta-phosphor/recipes-x86/peci-pcie/peci-pcie_git.bb
@@ -11,7 +11,7 @@ SRC_URI = "git://github.com/openbmc/peci-pcie"
DEPENDS = "boost sdbusplus libpeci"
PV = "0.1+git${SRCPV}"
-SRCREV = "0b79f3e485554957a4b24d5f0cefc5bc577ad301"
+SRCREV = "d570dfd4f3a7c38b029f74a8194eeb3911b5f6a5"
S = "${WORKDIR}/git"
diff --git a/meta-portwell/meta-neptune/conf/bblayers.conf.sample b/meta-portwell/meta-neptune/conf/bblayers.conf.sample
index e60ce8031..042e6dd0a 100644
--- a/meta-portwell/meta-neptune/conf/bblayers.conf.sample
+++ b/meta-portwell/meta-neptune/conf/bblayers.conf.sample
@@ -13,6 +13,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-portwell/meta-neptune \
diff --git a/meta-portwell/meta-neptune/conf/layer.conf b/meta-portwell/meta-neptune/conf/layer.conf
index 4addb78a5..3ca3cac68 100644
--- a/meta-portwell/meta-neptune/conf/layer.conf
+++ b/meta-portwell/meta-neptune/conf/layer.conf
@@ -8,4 +8,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "neptune"
BBFILE_PATTERN_neptune = ""
-LAYERSERIES_COMPAT_neptune = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_neptune = "gatesgarth hardknott"
diff --git a/meta-qualcomm/conf/layer.conf b/meta-qualcomm/conf/layer.conf
index 6b1ea7831..e4c872117 100644
--- a/meta-qualcomm/conf/layer.conf
+++ b/meta-qualcomm/conf/layer.conf
@@ -4,4 +4,4 @@ BBPATH .= ":${LAYERDIR}"
BBFILE_COLLECTIONS += "qualcomm"
BBFILE_PATTERN_qualcomm = ""
-LAYERSERIES_COMPAT_qualcomm = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_qualcomm = "gatesgarth hardknott"
diff --git a/meta-qualcomm/meta-centriq2400-rep/conf/bblayers.conf.sample b/meta-qualcomm/meta-centriq2400-rep/conf/bblayers.conf.sample
index c0c67d7ef..6ae2e4d6c 100644
--- a/meta-qualcomm/meta-centriq2400-rep/conf/bblayers.conf.sample
+++ b/meta-qualcomm/meta-centriq2400-rep/conf/bblayers.conf.sample
@@ -13,6 +13,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-arm \
@@ -27,6 +28,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-arm \
diff --git a/meta-quanta/conf/layer.conf b/meta-quanta/conf/layer.conf
index 8db4bd2e8..5ab3e2684 100644
--- a/meta-quanta/conf/layer.conf
+++ b/meta-quanta/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/meta-common/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "quanta-layer"
BBFILE_PATTERN_quanta-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_quanta-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_quanta-layer = "gatesgarth hardknott"
diff --git a/meta-quanta/meta-common/recipes-quanta/fans/read-margin-temp_git.bb b/meta-quanta/meta-common/recipes-quanta/fans/read-margin-temp_git.bb
index fd5819d42..63551ef99 100644
--- a/meta-quanta/meta-common/recipes-quanta/fans/read-margin-temp_git.bb
+++ b/meta-quanta/meta-common/recipes-quanta/fans/read-margin-temp_git.bb
@@ -4,7 +4,7 @@ LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
SRC_URI = "git://github.com/quanta-bmc/read-margin-temp.git"
-SRCREV = "ca2dc1bf7f34d517f0edc59dd3596c3a76c3d7a1"
+SRCREV = "cadbe4801db76799e21b7bc9c405e5df9988dee0"
S = "${WORKDIR}/git"
inherit autotools pkgconfig
diff --git a/meta-quanta/meta-f0b/conf/bblayers.conf.sample b/meta-quanta/meta-f0b/conf/bblayers.conf.sample
index 28b258258..db7f86a0d 100644
--- a/meta-quanta/meta-f0b/conf/bblayers.conf.sample
+++ b/meta-quanta/meta-f0b/conf/bblayers.conf.sample
@@ -9,7 +9,9 @@ BBLAYERS ?= " \
##OEROOT##/meta \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-quanta \
@@ -19,7 +21,9 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-quanta \
diff --git a/meta-quanta/meta-f0b/conf/layer.conf b/meta-quanta/meta-f0b/conf/layer.conf
index 05b405f93..fc0a1a720 100644
--- a/meta-quanta/meta-f0b/conf/layer.conf
+++ b/meta-quanta/meta-f0b/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "f0b-layer"
BBFILE_PATTERN_f0b-layer = ""
-LAYERSERIES_COMPAT_f0b-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_f0b-layer = "gatesgarth hardknott"
diff --git a/meta-quanta/meta-f0b/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend b/meta-quanta/meta-f0b/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
index e41607a71..9d0fbe264 100644
--- a/meta-quanta/meta-f0b/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
+++ b/meta-quanta/meta-f0b/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
@@ -1,6 +1,6 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
-EXTRA_OECONF_append_f0b = " --enable-negative-errno-on-fail"
+EXTRA_OEMESON_append_f0b = " -Dnegative-errno-on-fail=true"
NAME = " \
bus@1e78a000/i2c-bus@80/tmp421@4c \
diff --git a/meta-quanta/meta-gbs/conf/bblayers.conf.sample b/meta-quanta/meta-gbs/conf/bblayers.conf.sample
index 541036d81..903833258 100644
--- a/meta-quanta/meta-gbs/conf/bblayers.conf.sample
+++ b/meta-quanta/meta-gbs/conf/bblayers.conf.sample
@@ -9,7 +9,9 @@ BBLAYERS ?= " \
##OEROOT##/meta \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-nuvoton \
##OEROOT##/meta-google \
@@ -20,7 +22,9 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-nuvoton \
##OEROOT##/meta-google \
diff --git a/meta-quanta/meta-gbs/conf/layer.conf b/meta-quanta/meta-gbs/conf/layer.conf
index 139259636..ec03a3ad6 100644
--- a/meta-quanta/meta-gbs/conf/layer.conf
+++ b/meta-quanta/meta-gbs/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "gbs-layer"
BBFILE_PATTERN_gbs-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_gbs-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_gbs-layer = "gatesgarth hardknott"
diff --git a/meta-quanta/meta-gbs/conf/machine/gbs.conf b/meta-quanta/meta-gbs/conf/machine/gbs.conf
index 241905262..e9456b5ec 100644
--- a/meta-quanta/meta-gbs/conf/machine/gbs.conf
+++ b/meta-quanta/meta-gbs/conf/machine/gbs.conf
@@ -11,6 +11,7 @@ require conf/machine/include/npcm7xx.inc
require conf/machine/include/obmc-bsp-common.inc
GBMC_NCSI_IF_NAME = "eth0"
+GBMC_KCS_DEV = "ipmi-kcs1"
# Overwrite flash offsets
FLASH_ROFS_OFFSET = "7296"
@@ -34,7 +35,7 @@ VIRTUAL-RUNTIME_obmc-discover-system-state = "x86-power-control"
PREFERRED_PROVIDER_virtual/obmc-chassis-mgmt = "packagegroup-gbs-apps"
PREFERRED_PROVIDER_virtual/obmc-fan-mgmt = "packagegroup-gbs-apps"
PREFERRED_PROVIDER_virtual/obmc-flash-mgmt = "packagegroup-gbs-apps"
-PREFERRED_PROVIDER_virtual/obmc-host-ipmi-hw = "phosphor-ipmi-kcs"
+PREFERRED_PROVIDER_virtual/obmc-host-ipmi-hw = "gbmc-kcs-config"
PREFERRED_PROVIDER_virtual/phosphor-led-manager-config-native = "gbs-led-manager-config-native"
# Remove unneeded binaries from image
diff --git a/meta-quanta/meta-gbs/recipes-gbs/boot-status-led/files/boot-status-led.service b/meta-quanta/meta-gbs/recipes-gbs/boot-status-led/files/boot-status-led.service
index ea44dda2d..ab4622efa 100644
--- a/meta-quanta/meta-gbs/recipes-gbs/boot-status-led/files/boot-status-led.service
+++ b/meta-quanta/meta-gbs/recipes-gbs/boot-status-led/files/boot-status-led.service
@@ -7,7 +7,7 @@ Wants=xyz.openbmc_project.LED.GroupManager.service
ExecStart=/usr/bin/boot-status-led.sh
StandardOutput=syslog
Type=simple
-Restart=yes
+Restart=on-failure
[Install]
WantedBy=multi-user.target
diff --git a/meta-quanta/meta-gbs/recipes-gbs/gbs-detect-fan-fail/files/gbs-detect-fan-fail.service b/meta-quanta/meta-gbs/recipes-gbs/gbs-detect-fan-fail/files/gbs-detect-fan-fail.service
deleted file mode 100644
index ecdc95399..000000000
--- a/meta-quanta/meta-gbs/recipes-gbs/gbs-detect-fan-fail/files/gbs-detect-fan-fail.service
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=Detect Fan Fail Manager
-After=phosphor-pid-control.service
-
-[Service]
-ExecStart=/usr/bin/gbs-detect-fan-fail.sh
-Restart=always
-StandardOutput=syslog
-
-[Install]
-WantedBy=multi-user.target
diff --git a/meta-quanta/meta-gbs/recipes-gbs/gbs-detect-fan-fail/files/gbs-detect-fan-fail.sh b/meta-quanta/meta-gbs/recipes-gbs/gbs-detect-fan-fail/files/gbs-detect-fan-fail.sh
deleted file mode 100644
index 56ae7bbc5..000000000
--- a/meta-quanta/meta-gbs/recipes-gbs/gbs-detect-fan-fail/files/gbs-detect-fan-fail.sh
+++ /dev/null
@@ -1,70 +0,0 @@
-#!/bin/bash
-
-##
- # This script is to handle fan fail condition which is described below.
- # Fan fail means one fan RPM is under its CriticalLow. If BMC encounters
- # such situation, then sets other fans to full speed.
- #
-
-# get fan state
-function get_fan_state() {
- get_property_path='xyz.openbmc_project.Sensor.Threshold.Critical CriticalAlarmLow'
- fan_state="$(busctl get-property $1 $2 $get_property_path | awk '{print $2}')"
- echo "$fan_state"
-}
-
-# check fan fail
-function is_fan_fail() {
- fan_state=("$@")
-
- for i in "${fan_state[@]}"
- do
- if [ ! -z "$i" ]
- then
- if [ $i == "true" ]
- then
- echo 1
- return
- fi
- fi
- done
- echo 0
-}
-
-fan_tach_path=( '/xyz/openbmc_project/sensors/fan_tach/fan0'
- '/xyz/openbmc_project/sensors/fan_tach/fan1'
- '/xyz/openbmc_project/sensors/fan_tach/fb_fan0'
- '/xyz/openbmc_project/sensors/fan_tach/fb_fan1'
- '/xyz/openbmc_project/sensors/fan_tach/fb_fan2'
- )
-
-check_fail_flag=0
-is_fan_fail_flag=0
-current_fan_state=()
-
-while true
-do
- for i in ${!fan_tach_path[@]}
- do
- mapper wait ${fan_tach_path[$i]}
- hwmon_path="$(mapper get-service ${fan_tach_path[0]})"
- current_fan_state[$i]=$(get_fan_state $hwmon_path ${fan_tach_path[$i]})
- done
-
- is_fan_fail_flag=$(is_fan_fail "${current_fan_state[@]}")
-
- # if fan fails then set all fans to full speed
- if [ $is_fan_fail_flag -eq 1 ] && [ $check_fail_flag -eq 0 ]
- then
- check_fail_flag=1
- systemctl stop phosphor-pid-control.service
-
- # fans recover to normal state
- elif [ $is_fan_fail_flag -eq 0 ] && [ $check_fail_flag -eq 1 ]
- then
- check_fail_flag=0
- systemctl restart phosphor-pid-control.service
- fi
-
- sleep 2
-done
diff --git a/meta-quanta/meta-gbs/recipes-gbs/gbs-detect-fan-fail/gbs-detect-fan-fail.bb b/meta-quanta/meta-gbs/recipes-gbs/gbs-detect-fan-fail/gbs-detect-fan-fail.bb
deleted file mode 100644
index 5befec8d6..000000000
--- a/meta-quanta/meta-gbs/recipes-gbs/gbs-detect-fan-fail/gbs-detect-fan-fail.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-SUMMARY = "OpenBMC Quanta Detect Fan Fail Service"
-DESCRIPTION = "OpenBMC Quanta Detect Fan Fail Daemon."
-PR = "r1"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
-
-inherit systemd
-
-DEPENDS += "systemd"
-RDEPENDS_${PN} += "bash"
-
-SRC_URI = " file://gbs-detect-fan-fail.sh \
- file://gbs-detect-fan-fail.service \
- "
-
-do_install() {
- install -d ${D}${bindir}
- install -m 0755 ${WORKDIR}/gbs-detect-fan-fail.sh ${D}${bindir}/
-
- install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/gbs-detect-fan-fail.service ${D}${systemd_system_unitdir}
-}
-
-SYSTEMD_PACKAGES = "${PN}"
-SYSTEMD_SERVICE_${PN} = "gbs-detect-fan-fail.service"
diff --git a/meta-quanta/meta-gbs/recipes-gbs/gbs-detect-gpio-present/files/detect-gpio-present.sh b/meta-quanta/meta-gbs/recipes-gbs/gbs-detect-gpio-present/files/detect-gpio-present.sh
index 2bbe46e84..dd5852a70 100644
--- a/meta-quanta/meta-gbs/recipes-gbs/gbs-detect-gpio-present/files/detect-gpio-present.sh
+++ b/meta-quanta/meta-gbs/recipes-gbs/gbs-detect-gpio-present/files/detect-gpio-present.sh
@@ -10,7 +10,8 @@ PRESENT_OBJPATH=("/xyz/openbmc_project/inventory/system/chassis/cable/ss_cab0_pr
"/xyz/openbmc_project/inventory/system/chassis/cable/bp12v_cab_prsnt"
"/xyz/openbmc_project/inventory/system/chassis/entity/sata0_prsnt"
"/xyz/openbmc_project/inventory/system/chassis/entity/pe_slot0_prsnt"
-"/xyz/openbmc_project/inventory/system/chassis/entity/pe_slot1_prsnt")
+"/xyz/openbmc_project/inventory/system/chassis/entity/pe_slot1_prsnt"
+"/xyz/openbmc_project/inventory/system/chassis/entity/fans_efuse_pg")
INTERFACE_NAME="xyz.openbmc_project.Inventory.Item"
IPMI_LOG_SERVICE="xyz.openbmc_project.Logging.IPMI"
@@ -23,12 +24,16 @@ LOG_EVENT_DATA="3 0x01 0xff 0xfe"
LOG_ASSERT_FLAG="true"
LOG_DEASSERT_FLAG="false"
LOG_GENID_FLAG="0x0020"
-present_state=("true" "true" "true" "true" "true" "true" "true" "true" "true" "true")
+present_state=("true" "true" "true" "true" "true" "true" "true" "true" "true" "true" "true")
+
+for i in ${!PRESENT_OBJPATH[@]}
+do
+ mapper wait ${PRESENT_OBJPATH[$i]}
+done
while true; do
for i in ${!PRESENT_OBJPATH[@]}
do
- mapper wait ${PRESENT_OBJPATH[$i]}
boot_status="$(busctl get-property $SERVICE_NAME ${PRESENT_OBJPATH[$i]} $INTERFACE_NAME Present | awk '{print $2}')"
if [ $boot_status == "false" ] && [ ${present_state[$i]} == "true" ];then
diff --git a/meta-quanta/meta-gbs/recipes-gbs/gbs-ipmi-entity-association-map/files/entity_association_map.json b/meta-quanta/meta-gbs/recipes-gbs/gbs-ipmi-entity-association-map/files/entity_association_map.json
index f4e453a9a..f430dcf00 100644
--- a/meta-quanta/meta-gbs/recipes-gbs/gbs-ipmi-entity-association-map/files/entity_association_map.json
+++ b/meta-quanta/meta-gbs/recipes-gbs/gbs-ipmi-entity-association-map/files/entity_association_map.json
@@ -24,6 +24,7 @@
],
"cooling_unit": [
{"instance": 0, "name": "/ZONE0"},
- {"instance": 1, "name": "/ZONE1"}
+ {"instance": 1, "name": "/ZONE1"},
+ {"instance": 2, "name": "/ZONE2"}
]
}
diff --git a/meta-quanta/meta-gbs/recipes-gbs/gbs-sysinit/files/gbs-sysinit.service b/meta-quanta/meta-gbs/recipes-gbs/gbs-sysinit/files/gbs-sysinit.service
index 645136b85..7fd74377c 100644
--- a/meta-quanta/meta-gbs/recipes-gbs/gbs-sysinit/files/gbs-sysinit.service
+++ b/meta-quanta/meta-gbs/recipes-gbs/gbs-sysinit/files/gbs-sysinit.service
@@ -1,5 +1,7 @@
[Unit]
Description = Initialization for GBS boot up
+Requires=gbs-host-ready.target
+After=gbs-host-ready.target
Wants=mapper-wait@-xyz-openbmc_project-inventory.service
After=mapper-wait@-xyz-openbmc_project-inventory.service
Wants=mapper-wait@-xyz-openbmc_project-control-nvme.service
diff --git a/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-check-host-state.service b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-check-host-state.service
new file mode 100644
index 000000000..032fabca5
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-check-host-state.service
@@ -0,0 +1,10 @@
+[Unit]
+Description = Check Host State to set fan failsafe speed
+
+[Service]
+Type=simple
+Restart=on-failure
+ExecStart=/usr/bin/gbs-check-host-state.sh
+
+[Install]
+WantedBy=multi-user.target \ No newline at end of file
diff --git a/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-check-host-state.sh b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-check-host-state.sh
new file mode 100644
index 000000000..1bff18d08
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-check-host-state.sh
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+state="xyz.openbmc_project.State.Chassis.PowerState.Off"
+
+dbus-monitor --system type='signal',interface='org.freedesktop.DBus.Properties',\
+member='PropertiesChanged',arg0namespace='xyz.openbmc_project.State.Chassis' | \
+while read -r line; do
+ grep -q member <<< $line && continue
+ if grep -q $state <<< $line; then
+ echo "Setting failsafe assuming host is off" >&2
+ systemctl start --no-block gbs-host-s5-set-failsafe
+ fi
+done
diff --git a/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-ready.target b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-ready.target
new file mode 100644
index 000000000..7f806cdb8
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-ready.target
@@ -0,0 +1,8 @@
+[Unit]
+Description=Host is ready to be powered on
+Wants=phosphor-ipmi-host.service
+After=phosphor-ipmi-host.service
+Wants=obmc-console@ttyS1.service
+After=obmc-console@ttyS1.service
+After=postcode-7seg@seven_seg_disp_val.service
+RefuseManualStop=yes \ No newline at end of file
diff --git a/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-s0-set-failsafe.service b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-s0-set-failsafe.service
new file mode 100644
index 000000000..263cafaa2
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-s0-set-failsafe.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=Increase GBS fan failsafe speed on host kernel entrance
+PartOf=host-s0-state.target
+Requires=phosphor-pid-control.service
+After=phosphor-pid-control.service
+Wants=mapper-wait@-xyz-openbmc_project-settings-fanctrl.service
+After=mapper-wait@-xyz-openbmc_project-settings-fanctrl.service
+
+[Service]
+Type=oneshot
+# 230: 90% duty cycle
+ExecStart=/usr/bin/gbs-set-failsafe.sh 230
+
+[Install]
+WantedBy=host-s0-state.target
diff --git a/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-s5-set-failsafe.service b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-s5-set-failsafe.service
new file mode 100644
index 000000000..2c0f3bccc
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-s5-set-failsafe.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=Decrease GBS fan failsafe speed on host shutdown
+PartOf=host-s5-state.target
+Requires=phosphor-pid-control.service
+After=phosphor-pid-control.service
+Wants=mapper-wait@-xyz-openbmc_project-settings-fanctrl.service
+After=mapper-wait@-xyz-openbmc_project-settings-fanctrl.service
+
+[Service]
+Type=oneshot
+# 102: 40% duty cycle
+ExecStart=/usr/bin/gbs-set-failsafe.sh 102
+
+[Install]
+WantedBy=host-s5-state.target
diff --git a/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-set-boot-failsafe@.service b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-set-boot-failsafe@.service
new file mode 100644
index 000000000..c1e28383a
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-host-set-boot-failsafe@.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Set gBMC boot time failsafe
+Wants=mapper-wait@-xyz-openbmc_project-state-chassis%i.service
+After=mapper-wait@-xyz-openbmc_project-state-chassis%i.service
+After=acpi-power-state.service
+Before=gbs-sysinit.service
+
+[Service]
+Type=exec
+ExecStart=/usr/bin/gbs-set-boot-failsafe.sh
+RemainAfterExit=yes
+
+[Install]
+WantedBy=gbs-host-ready.target
diff --git a/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-set-boot-failsafe.sh b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-set-boot-failsafe.sh
new file mode 100644
index 000000000..6580fbe91
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-set-boot-failsafe.sh
@@ -0,0 +1,35 @@
+#!/bin/bash
+# Copyright 2021 Google LLC
+# Copyright 2021 Quanta Computer Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+main() {
+ local pgd_val
+ pgd_val="$(busctl get-property -j xyz.openbmc_project.State.Chassis \
+ /xyz/openbmc_project/state/chassis0 xyz.openbmc_project.State.Chassis \
+ CurrentPowerState | jq -r '.["data"]')"
+
+ if [[ $pgd_val != 'xyz.openbmc_project.State.Chassis.PowerState.On' ]]; then
+ echo "Setting failsafe assuming host is off" >&2
+ systemctl start --no-block gbs-host-s5-set-failsafe
+ else
+ echo "Setting failsafe assuming host is running" >&2
+ systemctl start --no-block gbs-host-s0-set-failsafe
+ fi
+}
+
+# Exit without running main() if sourced
+return 0 2>/dev/null
+
+main "$@"
diff --git a/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-set-failsafe.sh b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-set-failsafe.sh
new file mode 100644
index 000000000..bcd1d2cc2
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-set-failsafe.sh
@@ -0,0 +1,53 @@
+#!/bin/bash
+# Copyright 2021 Google LLC
+# Copyright 2021 Quanta Computer Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+target_pwm="$1"
+
+if [ -z "$target_pwm" ]; then
+ echo "Target_pwm is not set" >&2
+ exit 1
+fi
+
+zone_num="$(busctl tree xyz.openbmc_project.State.FanCtrl | grep zone | wc -l)"
+result=0
+
+for (( i = 0; i < ${zone_num}; i++ )); do
+ retries=4
+ busctl_error=-1
+
+ while (( retries > 0 )) && (( busctl_error != 0 )); do
+ busctl set-property xyz.openbmc_project.State.FanCtrl /xyz/openbmc_project/settings/fanctrl/zone${i} xyz.openbmc_project.Control.FanSpeed Target t "${target_pwm}"
+ busctl_error=$?
+
+ if (( busctl_error != 0 )); then
+ #Retry setting failsafe. Swampd may be running but zone aren't yet built
+ #so sleep a second to let them be built
+ sleep 1
+ fi
+
+ let retries-=1
+ done
+
+ if (( busctl_error != 0 )); then
+ echo "Failure setting zone${i} fan failsafe to ${target_pwm}" >&2
+ result=$busctl_error
+ else
+ echo "Setting zone${i} fan failsafe to ${target_pwm}"
+ fi
+done
+
+exit $result
diff --git a/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon_%.bbappend b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon_%.bbappend
new file mode 100644
index 000000000..f833b5577
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon_%.bbappend
@@ -0,0 +1,43 @@
+FILESEXTRAPATHS_prepend_gbs := "${THISDIR}/${PN}:"
+
+SRC_URI_append_gbs = " \
+ file://gbs-host-s0-set-failsafe.service \
+ file://gbs-host-s5-set-failsafe.service \
+ file://gbs-host-set-boot-failsafe@.service \
+ file://gbs-check-host-state.service \
+ file://gbs-set-boot-failsafe.sh \
+ file://gbs-set-failsafe.sh \
+ file://gbs-check-host-state.sh \
+ file://gbs-host-ready.target \
+ "
+
+RDEPENDS_${PN}_append_gbs = "bash"
+
+CHASSIS_INSTANCE="0"
+
+SYSTEMD_SERVICE_${PN}_append_gbs = " \
+ gbs-host-s0-set-failsafe.service \
+ gbs-host-s5-set-failsafe.service \
+ gbs-host-set-boot-failsafe@${CHASSIS_INSTANCE}.service \
+ gbs-check-host-state.service \
+ gbs-host-ready.target \
+ "
+
+FILES_${PN}_append_gbs = " \
+ ${systemd_system_unitdir}/gbs-host-set-boot-failsafe@.service \
+ "
+
+do_install_append_gbs() {
+ install -d ${D}${bindir}
+
+ install -m 0755 ${WORKDIR}/gbs-set-failsafe.sh ${D}${bindir}/.
+ install -m 0755 ${WORKDIR}/gbs-set-boot-failsafe.sh ${D}${bindir}/.
+ install -m 0755 ${WORKDIR}/gbs-check-host-state.sh ${D}${bindir}/.
+
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/gbs-host-s0-set-failsafe.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/gbs-host-s5-set-failsafe.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/gbs-host-set-boot-failsafe@.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/gbs-check-host-state.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/gbs-host-ready.target ${D}${systemd_system_unitdir}
+}
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/configuration/gbs-yaml-config/gbs-ipmi-sensors.yaml b/meta-quanta/meta-gbs/recipes-phosphor/configuration/gbs-yaml-config/gbs-ipmi-sensors.yaml
index e0eb0e192..043136b5e 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/configuration/gbs-yaml-config/gbs-ipmi-sensors.yaml
+++ b/meta-quanta/meta-gbs/recipes-phosphor/configuration/gbs-yaml-config/gbs-ipmi-sensors.yaml
@@ -1258,3 +1258,24 @@
sensorReadingType: 0x6F
sensorType: 0x23
serviceInterface: org.freedesktop.DBus.Properties
+
+0xFC:
+ entityID: 0x1E
+ entityInstance: 0
+ interfaces:
+ xyz.openbmc_project.Inventory.Item:
+ Present:
+ Offsets:
+ 0x00:
+ assert: true
+ type: bool
+ 0x01:
+ assert: false
+ type: bool
+ mutability: Mutability::Write|Mutability::Read
+ path: /xyz/openbmc_project/inventory/system/chassis/entity/fans_efuse_pg
+ readingType: assertion
+ sensorNamePattern: nameLeaf
+ sensorReadingType: 0x6f
+ sensorType: 0x25
+ serviceInterface: org.freedesktop.DBus.Properties
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/0001-Advertise-failSafePercent-on-dbus.patch b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/0001-Advertise-failSafePercent-on-dbus.patch
new file mode 100644
index 000000000..050c8b43c
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/0001-Advertise-failSafePercent-on-dbus.patch
@@ -0,0 +1,117 @@
+From c9b6d4589620275a625121b0ea9f4cc4c93b608a Mon Sep 17 00:00:00 2001
+From: Ian Goegebuer <goegebuer@google.com>
+Date: Tue, 10 Nov 2020 14:20:47 -0800
+Subject: [PATCH] pid/zone: Add the ability to dynamically set the failSafe
+ percent
+
+This change advertises the failSafe percent as a FanSpeed interface
+added to the the FanCtrl object generated by the config.json file.
+
+The target method added in this case sets the failSafePerecent
+out of 255 with 255 being 100% and 0 being 0%.
+
+Example:
+`busctl set-property xyz.openbmc_project.State.FanCtrl /xyz/openbmc_project/settings/fanctrl/zone1 xyz.openbmc_project.Control.FanSpeed Target t 178`
+Sets the failSafePercent to 69.8% or ~70%
+`busctl set-property xyz.openbmc_project.State.FanCtrl /xyz/openbmc_project/settings/fanctrl/zone1 xyz.openbmc_project.Control.FanSpeed Target t 250`
+Sets the failSafePercent to 98%
+
+Signed-off-by: Ian Goegebuer <goegebuer@google.com>
+Change-Id: Ief538d865dc1c654427ed9792496ab368e8803e2
+---
+ pid/zone.cpp | 11 +++++++++++
+ pid/zone.hpp | 11 +++++++++--
+ pid/zone_interface.hpp | 1 +
+ 3 files changed, 21 insertions(+), 2 deletions(-)
+
+diff --git a/pid/zone.cpp b/pid/zone.cpp
+index 441031a..24f6e84 100644
+--- a/pid/zone.cpp
++++ b/pid/zone.cpp
+@@ -120,6 +120,11 @@ double DbusPidZone::getFailSafePercent(void) const
+ return _failSafePercent;
+ }
+
++void DbusPidZone::setFailSafePercent(double newFailSafe)
++{
++ _failSafePercent = newFailSafe;
++}
++
+ double DbusPidZone::getMinThermalSetpoint(void) const
+ {
+ return _minThermalOutputSetPt;
+@@ -459,4 +464,10 @@ bool DbusPidZone::failSafe() const
+ return getFailSafeMode();
+ }
+
++uint64_t DbusPidZone::target(uint64_t value)
++{
++ setFailSafePercent(((double)value / 255) * 100.0);
++ return ModeObject::target(value);
++}
++
+ } // namespace pid_control
+diff --git a/pid/zone.hpp b/pid/zone.hpp
+index 3bea9c2..c0d1d22 100644
+--- a/pid/zone.hpp
++++ b/pid/zone.hpp
+@@ -10,6 +10,7 @@
+
+ #include <sdbusplus/bus.hpp>
+ #include <sdbusplus/server.hpp>
++#include <xyz/openbmc_project/Control/FanSpeed/server.hpp>
+ #include <xyz/openbmc_project/Control/Mode/server.hpp>
+
+ #include <fstream>
+@@ -22,7 +23,9 @@
+ template <typename... T>
+ using ServerObject = typename sdbusplus::server::object::object<T...>;
+ using ModeInterface = sdbusplus::xyz::openbmc_project::Control::server::Mode;
+-using ModeObject = ServerObject<ModeInterface>;
++using FanSpeedInterface =
++ sdbusplus::xyz::openbmc_project::Control::server::FanSpeed;
++using ModeObject = ServerObject<ModeInterface, FanSpeedInterface>;
+
+ namespace pid_control
+ {
+@@ -63,6 +66,7 @@ class DbusPidZone : public ZoneInterface, public ModeObject
+ void clearSetPoints(void) override;
+ void clearRPMCeilings(void) override;
+ double getFailSafePercent(void) const override;
++ void setFailSafePercent(double) override;
+ double getMinThermalSetpoint(void) const;
+
+ Sensor* getSensor(const std::string& name) override;
+@@ -88,6 +92,9 @@ class DbusPidZone : public ZoneInterface, public ModeObject
+ /* Method for reading whether in fail-safe mode over dbus */
+ bool failSafe() const override;
+
++ /* Method for setting the failSafePercent over dbus */
++ uint64_t target(uint64_t value) override;
++
+ private:
+ std::ofstream _log;
+
+@@ -95,7 +102,7 @@ class DbusPidZone : public ZoneInterface, public ModeObject
+ double _maximumSetPoint = 0;
+ bool _manualMode = false;
+ const double _minThermalOutputSetPt;
+- const double _failSafePercent;
++ double _failSafePercent;
+
+ std::set<std::string> _failSafeSensors;
+
+diff --git a/pid/zone_interface.hpp b/pid/zone_interface.hpp
+index a024c0e..9ea89c1 100644
+--- a/pid/zone_interface.hpp
++++ b/pid/zone_interface.hpp
+@@ -70,6 +70,7 @@ class ZoneInterface
+ * fail safe.
+ */
+ virtual double getFailSafePercent() const = 0;
++ virtual void setFailSafePercent(double newFailSafe) = 0;
+
+ /** Return if the zone is set to manual mode. false equates to automatic
+ * mode (the default).
+--
+2.29.2.222.g5d2a92d10f8-goog
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/config-sku.json b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/config.json.in
index e5040ca1c..21ba368df 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/config-sku.json
+++ b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/config.json.in
@@ -1,11 +1,11 @@
{
- "version": "R04",
+ "version": "R05",
"sensors": [
{
"name": "fan0",
"type": "fan",
"readPath": "/xyz/openbmc_project/sensors/fan_tach/fan0",
- "writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/Fan_0_To_4_Hwmon/pwm1",
+ "writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/@Fan_0_To_4_Hwmon@/pwm1",
"min": 0,
"max": 255
},
@@ -13,7 +13,7 @@
"name": "fan1",
"type": "fan",
"readPath": "/xyz/openbmc_project/sensors/fan_tach/fan1",
- "writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/Fan_0_To_4_Hwmon/pwm2",
+ "writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/@Fan_0_To_4_Hwmon@/pwm2",
"min": 0,
"max": 255
},
@@ -21,7 +21,7 @@
"name": "fb_fan0",
"type": "fan",
"readPath": "/xyz/openbmc_project/sensors/fan_tach/fb_fan0",
- "writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/Fan_0_To_4_Hwmon/pwm3",
+ "writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/@Fan_0_To_4_Hwmon@/pwm3",
"min": 0,
"max": 255
},
@@ -29,7 +29,7 @@
"name": "fb_fan1",
"type": "fan",
"readPath": "/xyz/openbmc_project/sensors/fan_tach/fb_fan1",
- "writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/Fan_0_To_4_Hwmon/pwm4",
+ "writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/@Fan_0_To_4_Hwmon@/pwm4",
"min": 0,
"max": 255
},
@@ -37,7 +37,7 @@
"name": "fb_fan2",
"type": "fan",
"readPath": "/xyz/openbmc_project/sensors/fan_tach/fb_fan2",
- "writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/Fan_0_To_4_Hwmon/pwm5",
+ "writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/@Fan_0_To_4_Hwmon@/pwm5",
"min": 0,
"max": 255
},
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-default-speed.sh b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-default-speed.sh
deleted file mode 100644
index 22cfab582..000000000
--- a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-default-speed.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/bash
-
-for i in {1..5};
-do
- echo 255 > /sys/class/hwmon/*/pwm${i}
-done
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-reboot-control.service b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-reboot-control.service
deleted file mode 100644
index 681bdbe00..000000000
--- a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-reboot-control.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=Set Fan to Default Duty as Rebooting
-DefaultDependencies=no
-After=shutdown.target
-
-[Service]
-Type=oneshot
-RemainAfterExit=true
-ExecStart=/usr/bin/fan-default-speed.sh
-
-[Install]
-WantedBy=shutdown.target
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-table-init.sh b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-table-init.sh
index 68b699e0f..9617d0da4 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-table-init.sh
+++ b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-table-init.sh
@@ -1,10 +1,8 @@
#!/bin/bash
-FAN_TABLE_SKU_FILE="/usr/share/swampd/config-sku.json"
-FAN_TABLE_FILE="/usr/share/swampd/config.json"
-
-# determine sku
-cp $FAN_TABLE_SKU_FILE $FAN_TABLE_FILE
+FAN_TABLE_FILE_IN="/usr/share/swampd/config.json.in"
+TEMP_FILE="$(mktemp)"
+cp "$FAN_TABLE_FILE_IN" "$TEMP_FILE"
# wait for fan dbus
mapper wait /xyz/openbmc_project/sensors/fan_tach/fan0
@@ -13,15 +11,16 @@ mapper wait /xyz/openbmc_project/sensors/fan_tach/fb_fan0
mapper wait /xyz/openbmc_project/sensors/fan_tach/fb_fan1
mapper wait /xyz/openbmc_project/sensors/fan_tach/fb_fan2
-/usr/bin/fan-default-speed.sh
-
# generate fan table writePath
-Fan_0_To_4_Hwmon="$(ls -la /sys/class/hwmon |grep pwm | head -n 1| tail -n +1|cut -d '/' -f 9)"
+Fan_0_To_4_Hwmon="$(ls /sys/devices/platform/ahb/ahb\:*/*pwm-fan-controller/hwmon/)"
if [[ "$Fan_0_To_4_Hwmon" != "" ]]; then
- sed -i "s/Fan_0_To_4_Hwmon/$Fan_0_To_4_Hwmon/g" $FAN_TABLE_FILE
+ sed -i "s/@Fan_0_To_4_Hwmon@/$Fan_0_To_4_Hwmon/g" $TEMP_FILE
fi
+# Use shell parameter expansion to trim the ".in" suffix
+mv "$TEMP_FILE" "${FAN_TABLE_FILE_IN%".in"}"
+
# start read margin temp wait
/usr/bin/read-margin-temp-wait.sh &
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service
index 33a441928..1c47761f1 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service
+++ b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service
@@ -1,6 +1,7 @@
[Unit]
Description=Swampd Margin-based Fan Control Daemon
After=xyz.openbmc_project.Hwmon@-ahb-apb-pwm\x2dfan\x2dcontroller\x40103000.service
+After=xyz.openbmc_project.nvme.manager.service
[Service]
Type=simple
@@ -9,7 +10,6 @@ ExecStart=/usr/bin/swampd
Restart=always
RestartSec=5
StartLimitInterval=0
-ExecStopPost=/usr/bin/fan-default-speed.sh
[Install]
WantedBy=basic.target
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control_%.bbappend b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control_%.bbappend
index 4f21d3bcf..7acd44c70 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control_%.bbappend
+++ b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control_%.bbappend
@@ -1,31 +1,26 @@
FILESEXTRAPATHS_prepend_gbs := "${THISDIR}/${PN}:"
-SRC_URI_append_gbs = " file://config-sku.json"
-SRC_URI_append_gbs = " file://fan-table-init.sh"
-SRC_URI_append_gbs = " file://fan-default-speed.sh"
-SRC_URI_append_gbs = " file://phosphor-pid-control.service"
-SRC_URI_append_gbs = " file://fan-reboot-control.service"
+SRC_URI_append_gbs = " file://config.json.in \
+ file://fan-table-init.sh \
+ file://phosphor-pid-control.service \
+ file://0001-Advertise-failSafePercent-on-dbus.patch \
+ "
-FILES_${PN}_append_gbs = " ${datadir}/swampd/config-sku.json"
-FILES_${PN}_append_gbs = " ${bindir}/fan-default-speed.sh"
+FILES_${PN}_append_gbs = " ${datadir}/swampd/config.json.in"
FILES_${PN}_append_gbs = " ${bindir}/fan-table-init.sh"
RDEPENDS_${PN} += "bash"
SYSTEMD_SERVICE_${PN}_append_gbs = " phosphor-pid-control.service"
-SYSTEMD_SERVICE_${PN}_append_gbs = " fan-reboot-control.service"
do_install_append_gbs() {
install -d ${D}/${bindir}
- install -m 0755 ${WORKDIR}/fan-default-speed.sh ${D}/${bindir}
install -m 0755 ${WORKDIR}/fan-table-init.sh ${D}/${bindir}
install -d ${D}${datadir}/swampd
- install -m 0644 -D ${WORKDIR}/config-sku.json \
- ${D}${datadir}/swampd/config-sku.json
+ install -m 0644 -D ${WORKDIR}/config.json.in \
+ ${D}${datadir}/swampd/
install -d ${D}${systemd_system_unitdir}
install -m 0644 ${WORKDIR}/phosphor-pid-control.service \
${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/fan-reboot-control.service \
- ${D}${systemd_system_unitdir}
}
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/gpio/phosphor-gpio-monitor/obmc/gpio/gpios-10.conf b/meta-quanta/meta-gbs/recipes-phosphor/gpio/phosphor-gpio-monitor/obmc/gpio/gpios-10.conf
new file mode 100644
index 000000000..c1c05e369
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-phosphor/gpio/phosphor-gpio-monitor/obmc/gpio/gpios-10.conf
@@ -0,0 +1,6 @@
+#The gpio 146 is a real gpio, which is used to
+#store the PWRGD_P12V_ALL_FANS signal
+INVENTORY=/system/chassis/entity/fans_efuse_pg
+DEVPATH=/dev/input/event0
+KEY=146
+NAME=fans_efuse_pg
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend b/meta-quanta/meta-gbs/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend
index d45636609..4b9a84100 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend
+++ b/meta-quanta/meta-gbs/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend
@@ -18,7 +18,8 @@ SYSTEMD_ENVIRONMENT_FILE_${PN}_append_gbs +="obmc/gpio/gpios-6.conf"
SYSTEMD_ENVIRONMENT_FILE_${PN}_append_gbs +="obmc/gpio/gpios-7.conf"
SYSTEMD_ENVIRONMENT_FILE_${PN}_append_gbs +="obmc/gpio/gpios-8.conf"
SYSTEMD_ENVIRONMENT_FILE_${PN}_append_gbs +="obmc/gpio/gpios-9.conf"
-GBS_OBMC_PRESENT_INSTANCES = "0 1 2 3 4 5 6 7 8 9"
+SYSTEMD_ENVIRONMENT_FILE_${PN}_append_gbs +="obmc/gpio/gpios-10.conf"
+GBS_OBMC_PRESENT_INSTANCES = "0 1 2 3 4 5 6 7 8 9 10"
SYSTEMD_LINK_${PN}-presence_append_gbs = " ${@compose_list(d, 'FMT_PRESENT', 'GBS_OBMC_PRESENT_INSTANCES')}"
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/images/obmc-phosphor-image.bbappend b/meta-quanta/meta-gbs/recipes-phosphor/images/obmc-phosphor-image.bbappend
index 27c3c9fdd..9cea5db15 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/images/obmc-phosphor-image.bbappend
+++ b/meta-quanta/meta-gbs/recipes-phosphor/images/obmc-phosphor-image.bbappend
@@ -13,7 +13,6 @@ OBMC_IMAGE_EXTRA_INSTALL_append_gbs = " gbs-detect-gpio-present"
OBMC_IMAGE_EXTRA_INSTALL_append_gbs = " phosphor-ecc"
OBMC_IMAGE_EXTRA_INSTALL_append_gbs = " gbs-sysinit"
OBMC_IMAGE_EXTRA_INSTALL_append_gbs = " gbs-ipmi-entity-association-map"
-OBMC_IMAGE_EXTRA_INSTALL_append_gbs = " gbs-detect-fan-fail"
OBMC_IMAGE_EXTRA_INSTALL_append_gbs = " usb-network"
OBMC_IMAGE_EXTRA_INSTALL_append_gbs = " mac-address"
OBMC_IMAGE_EXTRA_INSTALL_append_gbs = " phosphor-image-signing"
@@ -22,3 +21,4 @@ OBMC_IMAGE_EXTRA_INSTALL_append_gbs = " phosphor-ipmi-blobs-binarystore"
OBMC_IMAGE_EXTRA_INSTALL_append_gbs = " gbs-nvme-pwr-ctrl"
OBMC_IMAGE_EXTRA_INSTALL_append_gbs = " read-margin-temp"
OBMC_IMAGE_EXTRA_INSTALL_append_gbs = " phosphor-virtual-sensor"
+OBMC_IMAGE_EXTRA_INSTALL_append_gbs = " acpi-power-state-daemon"
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/inventory/inventory-cleanup.bb b/meta-quanta/meta-gbs/recipes-phosphor/inventory/gbs-inventory-cleanup.bb
index 0c4b56f72..0c4b56f72 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/inventory/inventory-cleanup.bb
+++ b/meta-quanta/meta-gbs/recipes-phosphor/inventory/gbs-inventory-cleanup.bb
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/inventory/inventory-cleanup/inventory-cleanup.yaml b/meta-quanta/meta-gbs/recipes-phosphor/inventory/gbs-inventory-cleanup/inventory-cleanup.yaml
index 78e03fee0..78e03fee0 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/inventory/inventory-cleanup/inventory-cleanup.yaml
+++ b/meta-quanta/meta-gbs/recipes-phosphor/inventory/gbs-inventory-cleanup/inventory-cleanup.yaml
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/inventory/phosphor-inventory-manager_%.bbappend b/meta-quanta/meta-gbs/recipes-phosphor/inventory/phosphor-inventory-manager_%.bbappend
index 205822cb9..38825835d 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/inventory/phosphor-inventory-manager_%.bbappend
+++ b/meta-quanta/meta-gbs/recipes-phosphor/inventory/phosphor-inventory-manager_%.bbappend
@@ -1,7 +1,7 @@
FILESEXTRAPATHS_prepend_gbs := "${THISDIR}/${PN}:"
PACKAGECONFIG_append_gbs = " associations"
SRC_URI_append_gbs = " file://associations.json"
-DEPENDS_append_gbs = " inventory-cleanup"
+DEPENDS_append_gbs = " gbs-inventory-cleanup"
do_install_append_gbs() {
install -d ${D}${base_datadir}
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/ipmi/phosphor-ipmi-kcs/99-ipmi-kcs.rules b/meta-quanta/meta-gbs/recipes-phosphor/ipmi/phosphor-ipmi-kcs/99-ipmi-kcs.rules
deleted file mode 100644
index 1de5562c3..000000000
--- a/meta-quanta/meta-gbs/recipes-phosphor/ipmi/phosphor-ipmi-kcs/99-ipmi-kcs.rules
+++ /dev/null
@@ -1 +0,0 @@
-KERNEL=="ipmi-kcs1", SYMLINK+="ipmi_kcs1"
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/ipmi/phosphor-ipmi-kcs_%.bbappend b/meta-quanta/meta-gbs/recipes-phosphor/ipmi/phosphor-ipmi-kcs_%.bbappend
deleted file mode 100644
index a7f60d4cc..000000000
--- a/meta-quanta/meta-gbs/recipes-phosphor/ipmi/phosphor-ipmi-kcs_%.bbappend
+++ /dev/null
@@ -1,9 +0,0 @@
-KCS_DEVICE_gbs = "ipmi_kcs1"
-
-FILESEXTRAPATHS_prepend_gbs := "${THISDIR}/${PN}:"
-SRC_URI_append_gbs = " file://99-ipmi-kcs.rules"
-
-do_install_append_gbs() {
- install -d ${D}/lib/udev/rules.d
- install -m 0644 ${WORKDIR}/99-ipmi-kcs.rules ${D}/lib/udev/rules.d
-}
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/leds/phosphor-led-manager/service-override.conf b/meta-quanta/meta-gbs/recipes-phosphor/leds/phosphor-led-manager/service-override.conf
new file mode 100644
index 000000000..0f4083416
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-phosphor/leds/phosphor-led-manager/service-override.conf
@@ -0,0 +1,2 @@
+[Unit]
+StartLimitBurst=10
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/leds/phosphor-led-manager_%.bbappend b/meta-quanta/meta-gbs/recipes-phosphor/leds/phosphor-led-manager_%.bbappend
new file mode 100644
index 000000000..a7ec24f41
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-phosphor/leds/phosphor-led-manager_%.bbappend
@@ -0,0 +1,5 @@
+FILESEXTRAPATHS_prepend_gbs := "${THISDIR}/${PN}:"
+SRC_URI_append_gbs = " file://service-override.conf"
+
+SYSTEMD_OVERRIDE_${PN}-ledmanager_append_gbs = " \
+ service-override.conf:xyz.openbmc_project.LED.GroupManager.service.d/service-override.conf"
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-hwmon/obmc/hwmon/ahb/apb/pwm-fan-controller@103000.conf b/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-hwmon/obmc/hwmon/ahb/apb/pwm-fan-controller@103000.conf
index bcca9a636..34caf4a43 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-hwmon/obmc/hwmon/ahb/apb/pwm-fan-controller@103000.conf
+++ b/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-hwmon/obmc/hwmon/ahb/apb/pwm-fan-controller@103000.conf
@@ -25,7 +25,7 @@ MINVALUE_fan3 = "0"
MAXVALUE_fan3 = "20775"
PWM_TARGET_fan3 = 3
-LABEL_fan4= "fb_fan2"
+LABEL_fan4= "fb_fan1"
WARNHI_fan4= "19800"
WARNLO_fan4= "3330"
CRITHI_fan4= "19800"
@@ -34,7 +34,7 @@ MINVALUE_fan4 = "0"
MAXVALUE_fan4 = "20775"
PWM_TARGET_fan4 = 4
-LABEL_fan5= "fb_fan1"
+LABEL_fan5= "fb_fan2"
WARNHI_fan5= "19800"
WARNLO_fan5= "3330"
CRITHI_fan5= "19800"
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend b/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
index c779b85e0..5f0517a30 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
+++ b/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
@@ -32,4 +32,4 @@ FENVS = "obmc/hwmon/ahb/apb/{0}"
SYSTEMD_ENVIRONMENT_FILE_${PN}_append_gbs = " ${@compose_list(d, 'FENVS', 'FITEMS')}"
-EXTRA_OECONF_append_gbs = " --enable-update-functional-on-fail"
+EXTRA_OEMESON_append_gbs = " -Dupdate-functional-on-fail=true"
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor/phosphor-virtual-sensor.service.replace b/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor/phosphor-virtual-sensor.service.replace
index 8068d3bd2..eae38b23d 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor/phosphor-virtual-sensor.service.replace
+++ b/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor/phosphor-virtual-sensor.service.replace
@@ -8,6 +8,7 @@ ExecStartPre=mapper wait /xyz/openbmc_project/sensors/temperature/inlet
ExecStartPre=mapper wait /xyz/openbmc_project/sensors/temperature/outlet_0
ExecStartPre=mapper wait /xyz/openbmc_project/sensors/temperature/outlet_1
ExecStart=/usr/bin/virtual-sensor
+ExecStartPost=/usr/bin/setMaxMinValue.sh
Type=dbus
BusName=xyz.openbmc_project.VirtualSensor
SyslogIdentifier=phosphor-virtual-sensor
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor/setMaxMinValue.sh b/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor/setMaxMinValue.sh
new file mode 100644
index 000000000..604eafccc
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor/setMaxMinValue.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+
+serviceName="xyz.openbmc_project.VirtualSensor"
+interfaceName="xyz.openbmc_project.Sensor.Value"
+objectPath="/xyz/openbmc_project/sensors/temperature/"
+
+# set MaxValue, MinValue to sensor dbus property
+for i in {0..2}; do
+ sensorPath="${objectPath}i2cool_${i}"
+ mapper wait $sensorPath
+ busctl set-property $serviceName $sensorPath $interfaceName MaxValue d 127
+ busctl set-property $serviceName $sensorPath $interfaceName MinValue d -- -128
+done
+
+exit 0
diff --git a/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend b/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend
index aadafeb2d..77546694e 100644
--- a/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend
+++ b/meta-quanta/meta-gbs/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend
@@ -2,9 +2,15 @@ FILESEXTRAPATHS_prepend_gbs := "${THISDIR}/${PN}:"
SRC_URI_append_gbs = " file://config-virtual-sensor.json \
file://phosphor-virtual-sensor.service.replace \
+ file://setMaxMinValue.sh \
"
+RDEPENDS_${PN}_append_gbs = "bash"
+
do_install_append_gbs() {
+ install -d ${D}${bindir}
+ install -m 0755 ${WORKDIR}/setMaxMinValue.sh ${D}${bindir}/
+
install -d ${D}${datadir}/${PN}
install -m 0644 -D ${WORKDIR}/config-virtual-sensor.json \
${D}${datadir}/${PN}/virtual_sensor_config.json
diff --git a/meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp/config-margin.json b/meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp/config-margin.json.in
index e28c0be0f..a5ff4979b 100644
--- a/meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp/config-margin.json
+++ b/meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp/config-margin.json.in
@@ -2,7 +2,7 @@
"sensors" : [
{
"name": "cputemp",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/cputemp",
"parameters": {
@@ -17,12 +17,12 @@
},
{
"name": "nvme0",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme0",
"parameters": {
"type": "",
- "maxTemp": WCTemp00,
+ "maxTemp": @WCTemp00@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -32,12 +32,12 @@
},
{
"name": "nvme1",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme1",
"parameters": {
"type": "",
- "maxTemp": WCTemp01,
+ "maxTemp": @WCTemp01@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -47,12 +47,12 @@
},
{
"name": "nvme2",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme2",
"parameters": {
"type": "",
- "maxTemp": WCTemp02,
+ "maxTemp": @WCTemp02@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -62,12 +62,12 @@
},
{
"name": "nvme3",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme3",
"parameters": {
"type": "",
- "maxTemp": WCTemp03,
+ "maxTemp": @WCTemp03@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -77,12 +77,12 @@
},
{
"name": "nvme4",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme4",
"parameters": {
"type": "",
- "maxTemp": WCTemp04,
+ "maxTemp": @WCTemp04@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -92,12 +92,12 @@
},
{
"name": "nvme5",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme5",
"parameters": {
"type": "",
- "maxTemp": WCTemp05,
+ "maxTemp": @WCTemp05@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -107,12 +107,12 @@
},
{
"name": "nvme6",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme6",
"parameters": {
"type": "",
- "maxTemp": WCTemp06,
+ "maxTemp": @WCTemp06@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -122,12 +122,12 @@
},
{
"name": "nvme7",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme7",
"parameters": {
"type": "",
- "maxTemp": WCTemp07,
+ "maxTemp": @WCTemp07@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -137,12 +137,12 @@
},
{
"name": "nvme8",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme8",
"parameters": {
"type": "",
- "maxTemp": WCTemp08,
+ "maxTemp": @WCTemp08@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -152,12 +152,12 @@
},
{
"name": "nvme9",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme9",
"parameters": {
"type": "",
- "maxTemp": WCTemp09,
+ "maxTemp": @WCTemp09@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -167,12 +167,12 @@
},
{
"name": "nvme10",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme10",
"parameters": {
"type": "",
- "maxTemp": WCTemp10,
+ "maxTemp": @WCTemp10@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -182,12 +182,12 @@
},
{
"name": "nvme11",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme11",
"parameters": {
"type": "",
- "maxTemp": WCTemp11,
+ "maxTemp": @WCTemp11@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -197,12 +197,12 @@
},
{
"name": "nvme12",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme12",
"parameters": {
"type": "",
- "maxTemp": WCTemp12,
+ "maxTemp": @WCTemp12@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -212,12 +212,12 @@
},
{
"name": "nvme13",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme13",
"parameters": {
"type": "",
- "maxTemp": WCTemp13,
+ "maxTemp": @WCTemp13@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -227,12 +227,12 @@
},
{
"name": "nvme14",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme14",
"parameters": {
"type": "",
- "maxTemp": WCTemp14,
+ "maxTemp": @WCTemp14@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -242,12 +242,12 @@
},
{
"name": "nvme15",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/nvme15",
"parameters": {
"type": "",
- "maxTemp": WCTemp15,
+ "maxTemp": @WCTemp15@,
"path": "",
"sysLabel": "",
"targetTemp": -1,
@@ -257,7 +257,7 @@
},
{
"name": "vddcr_cpu",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/vddcr_cpu",
"parameters": {
@@ -272,7 +272,7 @@
},
{
"name": "vddcr_soc",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/vddcr_soc",
"parameters": {
@@ -287,7 +287,7 @@
},
{
"name": "vddio_abcd",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/vddio_abcd",
"parameters": {
@@ -302,7 +302,7 @@
},
{
"name": "vddio_efgh",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/vddio_efgh",
"parameters": {
@@ -317,7 +317,7 @@
},
{
"name": "p12v_mobo",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/p12v_mobo",
"parameters": {
@@ -332,7 +332,7 @@
},
{
"name": "powerseq_temp",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/powerseq_temp",
"parameters": {
@@ -347,7 +347,7 @@
},
{
"name": "p12v_fan",
- "unit": "millidegree",
+ "unit": "degree",
"type": "dbus",
"path": "/xyz/openbmc_project/sensors/temperature/p12v_fan",
"parameters": {
@@ -391,22 +391,7 @@
"zoneSetpoint": 10000,
"target": "/xyz/openbmc_project/extsensors/margin/nvme",
"components": [
- "nvme0",
- "nvme1",
- "nvme2",
- "nvme3",
- "nvme4",
- "nvme5",
- "nvme6",
- "nvme7",
- "nvme8",
- "nvme9",
- "nvme10",
- "nvme11",
- "nvme12",
- "nvme13",
- "nvme14",
- "nvme15"
+ @nvmeList@
]
},
{
diff --git a/meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp/read-margin-temp-wait.sh b/meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp/read-margin-temp-wait.sh
index d0cb2f632..0937a9fb8 100644
--- a/meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp/read-margin-temp-wait.sh
+++ b/meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp/read-margin-temp-wait.sh
@@ -1,50 +1,69 @@
#!/bin/bash
-MARGIN_TABLE_FILE="/usr/share/read-margin-temp/config-margin.json"
+MARGIN_TABLE_FILE_IN="/usr/share/read-margin-temp/config-margin.json.in"
+TEMP_FILE="$(mktemp)"
+cp "$MARGIN_TABLE_FILE_IN" "$TEMP_FILE"
-target_num="$(cat $MARGIN_TABLE_FILE | grep '"target"' | wc -l)"
-
-cpu_hwmon="$(ls -la /sys/class/hwmon | grep f0082000 | head -n 1 | tail -n +1 | cut -d '/' -f 11)"
-
-# replace by the real cpu temperature hwmon path in runtime
-if [[ "$cpu_hwmon" != "" ]]
-then
- sed -i "s/cpu_hwmon/$cpu_hwmon/g" $MARGIN_TABLE_FILE
-fi
+target_num="$(cat $TEMP_FILE | grep '"target"' | wc -l)"
# wait target dbus
-for ((i=0; i<$target_num; i++))
-do
+for ((i = 0; i < ${target_num}; i++)); do
line_num=$((i+1))
- path="$(cat $MARGIN_TABLE_FILE | grep '"target"' | head -n ${line_num} | tail -n +${line_num} | cut -d '"' -f 4)"
+ path="$(cat $TEMP_FILE | grep '"target"' | head -n ${line_num} | tail -n +${line_num} | cut -d '"' -f 4)"
mapper wait $path
done
nvmePath="/xyz/openbmc_project/sensors/temperature/nvme"
nvmeInventoryPath="/xyz/openbmc_project/inventory/system/chassis/motherboard/nvme"
+nvmeList=""
# Get and Set WCTEMP
for ((i = 0; i < 16; i++)); do
- name=WCTemp$(printf "%02d" $i)
+ name="@WCTemp$(printf "%02d" $i)@"
wcTemp=72000
- presentState=$(busctl get-property \
+ presentState="$(busctl get-property \
xyz.openbmc_project.Inventory.Manager \
${nvmeInventoryPath}${i} \
xyz.openbmc_project.Inventory.Item \
- Present | awk '{print $2}')
-
- if [[ $presentState == "true" ]]; then
- wcTemp=$(
- busctl get-property xyz.openbmc_project.nvme.manager \
- ${nvmePath}${i} \
- xyz.openbmc_project.Sensor.Threshold.Critical \
- CriticalHigh | awk '{print $2}'
- )
- wcTemp=$((wcTemp * 1000))
+ Present | awk '{print $2}')"
+
+ if [[ "$presentState" == "true" ]]; then
+ actualWCTemp=0
+ for ((j = 0; j < 3; j++)); do
+ actualWCTemp="$(
+ busctl get-property xyz.openbmc_project.nvme.manager \
+ ${nvmePath}${i} \
+ xyz.openbmc_project.Sensor.Threshold.Critical \
+ CriticalHigh | awk '{print $2}'
+ )"
+ if [[ "${actualWCTemp}" -ne 0 ]]; then
+ break
+ fi
+
+ echo "${nvmePath}${i} WCTemp was read to be 0, retrying after 1 sec sleep"
+ sleep 1
+ done
+
+ if [[ "${actualWCTemp}" -ne 0 ]]; then
+ wcTemp="$((actualWCTemp * 1000))"
+ else
+ echo "${nvmePath}${i} WCTemp was read to be 0, using default WCTemp: ${wcTemp}"
+ fi
+
+ if [[ -z "$nvmeList" ]]; then
+ nvmeList="\"nvme"${i}"\""
+ else
+ nvmeList="${nvmeList}"", \"nvme"${i}"\""
+ fi
fi
- sed -i "s/$name/${wcTemp}/g" $MARGIN_TABLE_FILE
+ sed -i "s/$name/${wcTemp}/g" "$TEMP_FILE"
done
+sed -i "s/@nvmeList@/${nvmeList}/g" "$TEMP_FILE"
+
+# Use shell parameter expansion to trim the ".in" suffix
+mv "$TEMP_FILE" "${MARGIN_TABLE_FILE_IN%".in"}"
+
# start read margin temp
/usr/bin/read-margin-temp &
diff --git a/meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp_%.bbappend b/meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp_%.bbappend
index b3fc4d221..981c0d2ca 100644
--- a/meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp_%.bbappend
+++ b/meta-quanta/meta-gbs/recipes-quanta/fans/read-margin-temp_%.bbappend
@@ -1,16 +1,17 @@
FILESEXTRAPATHS_prepend_gbs := "${THISDIR}/${PN}:"
-SRC_URI_append_gbs = " file://config-margin.json \
+
+SRC_URI_append_gbs = " file://config-margin.json.in \
file://read-margin-temp-wait.sh \
"
FILES_${PN}_append_gbs = " ${bindir}/read-margin-temp-wait.sh"
-FILES_${PN}_append_gbs = " ${datadir}/read-margin-temp/config-margin.json"
+FILES_${PN}_append_gbs = " ${datadir}/read-margin-temp/config-margin.json.in"
do_install_append_gbs() {
install -d ${D}${bindir}
install -m 0755 ${WORKDIR}/read-margin-temp-wait.sh ${D}${bindir}
install -d ${D}${datadir}/read-margin-temp
- install -m 0644 -D ${WORKDIR}/config-margin.json \
- ${D}${datadir}/read-margin-temp/config-margin.json
+ install -m 0644 -D ${WORKDIR}/config-margin.json.in \
+ ${D}${datadir}/${PN}/
}
diff --git a/meta-quanta/meta-gbs/recipes-x86/chassis/x86-power-control/chassis-system-reset.service b/meta-quanta/meta-gbs/recipes-x86/chassis/x86-power-control/chassis-system-reset.service
new file mode 100644
index 000000000..668195482
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-x86/chassis/x86-power-control/chassis-system-reset.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=System unit to hard reset or system reset chassis
+
+[Service]
+Type=oneshot
+RemainAfterExit=no
+ExecStart=/usr/bin/tray_powercycle.sh
+
+[Install]
+WantedBy=chassis-system-reset.target
diff --git a/meta-quanta/meta-gbs/recipes-x86/chassis/x86-power-control/power-config-host0.json b/meta-quanta/meta-gbs/recipes-x86/chassis/x86-power-control/power-config-host0.json
new file mode 100644
index 000000000..d9d3ed109
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-x86/chassis/x86-power-control/power-config-host0.json
@@ -0,0 +1,8 @@
+{
+ "PostComplete": "POST_COMPLETE",
+ "PwrButton": "POWER_BUTTON",
+ "PwrOK": "PS_PWROK",
+ "PwrOut": "POWER_OUT",
+ "RstButton": "RESET_BUTTON",
+ "RstOut": "RESET_OUT"
+}
diff --git a/meta-quanta/meta-gbs/recipes-x86/chassis/x86-power-control_%.bbappend b/meta-quanta/meta-gbs/recipes-x86/chassis/x86-power-control_%.bbappend
index 804fcb022..33cc6d4e0 100644
--- a/meta-quanta/meta-gbs/recipes-x86/chassis/x86-power-control_%.bbappend
+++ b/meta-quanta/meta-gbs/recipes-x86/chassis/x86-power-control_%.bbappend
@@ -1,4 +1,14 @@
-SRC_URI_gbs = "git://github.com/quanta-bmc/x86-power-control.git"
-SRCREV_gbs = "70389494989e438af6b8b1d3b4db602a68f2f9da"
+FILESEXTRAPATHS_prepend_gbs := "${THISDIR}/${PN}:"
+SRC_URI_append_gbs = " file://power-config-host0.json \
+ file://chassis-system-reset.service \
+ "
-SYSTEMD_SERVICE_${PN}_gbs = "xyz.openbmc_project.Chassis.Control.Power.service"
+EXTRA_OECMAKE_append_gbs = " -DCHASSIS_SYSTEM_RESET=ON"
+
+RDEPENDS_${PN}_append_gbs = " bash"
+RDEPENDS_${PN}_append_gbs = " gbs-hotswap-power-cycle"
+
+do_install_append_gbs() {
+ install -d ${D}${datadir}/${PN}
+ install -m 0644 ${WORKDIR}/power-config-host0.json ${D}${datadir}/${PN}
+}
diff --git a/meta-quanta/meta-gsj/conf/bblayers.conf.sample b/meta-quanta/meta-gsj/conf/bblayers.conf.sample
index be7a73873..1c895ea00 100644
--- a/meta-quanta/meta-gsj/conf/bblayers.conf.sample
+++ b/meta-quanta/meta-gsj/conf/bblayers.conf.sample
@@ -9,7 +9,9 @@ BBLAYERS ?= " \
##OEROOT##/meta \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-nuvoton \
##OEROOT##/meta-google \
@@ -20,7 +22,9 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-nuvoton \
##OEROOT##/meta-google \
diff --git a/meta-quanta/meta-gsj/conf/layer.conf b/meta-quanta/meta-gsj/conf/layer.conf
index 7935f6b74..9bb671876 100644
--- a/meta-quanta/meta-gsj/conf/layer.conf
+++ b/meta-quanta/meta-gsj/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "gsj-layer"
BBFILE_PATTERN_gsj-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_gsj-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_gsj-layer = "gatesgarth hardknott"
diff --git a/meta-quanta/meta-gsj/conf/machine/gsj.conf b/meta-quanta/meta-gsj/conf/machine/gsj.conf
index 4db114585..b0d508e44 100644
--- a/meta-quanta/meta-gsj/conf/machine/gsj.conf
+++ b/meta-quanta/meta-gsj/conf/machine/gsj.conf
@@ -26,6 +26,7 @@ PREFERRED_PROVIDER_virtual/obmc-chassis-mgmt = "packagegroup-gsj-apps"
PREFERRED_PROVIDER_virtual/obmc-fan-mgmt = "packagegroup-gsj-apps"
PREFERRED_PROVIDER_virtual/obmc-flash-mgmt = "packagegroup-gsj-apps"
PREFERRED_PROVIDER_virtual/phosphor-ipmi-fru-inventory = "gsj-ipmi-inventory-map-native"
+PREFERRED_PROVIDER_virtual/phosphor-ipmi-fru-properties = "gsj-ipmi-fru-properties-native"
PREFERRED_PROVIDER_virtual/phosphor-ipmi-fru-read-inventory = "gsj-ipmi-fru-read-inventory-native"
PREFERRED_PROVIDER_virtual/phosphor-ipmi-sensor-inventory = "gsj-ipmi-sensor-map-native"
PREFERRED_PROVIDER_virtual/phosphor-led-manager-config-native = "gsj-led-manager-config-native"
diff --git a/meta-quanta/meta-gsj/recipes-kernel/linux/linux-nuvoton/gsj.cfg b/meta-quanta/meta-gsj/recipes-kernel/linux/linux-nuvoton/gsj.cfg
index b95eddfec..5ac68df46 100644
--- a/meta-quanta/meta-gsj/recipes-kernel/linux/linux-nuvoton/gsj.cfg
+++ b/meta-quanta/meta-gsj/recipes-kernel/linux/linux-nuvoton/gsj.cfg
@@ -46,6 +46,8 @@ CONFIG_USB_CONFIGFS_RNDIS=y
CONFIG_USB_CONFIGFS_EEM=y
CONFIG_USB_CONFIGFS_MASS_STORAGE=y
CONFIG_USB_CONFIGFS_F_HID=y
+CONFIG_USB_GADGET_NPCM_USB2=y
+CONFIG_USB_NPCM_UDC=y
CONFIG_MEDIA_SUPPORT=y
CONFIG_FORCE_MAX_ZONEORDER=12
diff --git a/meta-quanta/meta-gsj/recipes-phosphor/ipmi/gsj-ipmi-fru-properties-native.bb b/meta-quanta/meta-gsj/recipes-phosphor/ipmi/gsj-ipmi-fru-properties-native.bb
new file mode 100644
index 000000000..656fcb969
--- /dev/null
+++ b/meta-quanta/meta-gsj/recipes-phosphor/ipmi/gsj-ipmi-fru-properties-native.bb
@@ -0,0 +1,19 @@
+SUMMARY = "FRU properties config for ipmi-fru-parser"
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+inherit native
+inherit phosphor-ipmi-fru
+
+SRC_URI += "file://extra-properties.yaml"
+
+PROVIDES += "virtual/phosphor-ipmi-fru-properties"
+
+S = "${WORKDIR}"
+
+do_install() {
+ DEST=${D}${properties_datadir}
+ install -d ${DEST}
+ install extra-properties.yaml ${DEST}
+}
diff --git a/meta-quanta/meta-gsj/recipes-phosphor/ipmi/gsj-ipmi-fru-properties/extra-properties.yaml b/meta-quanta/meta-gsj/recipes-phosphor/ipmi/gsj-ipmi-fru-properties/extra-properties.yaml
new file mode 100644
index 000000000..8a5668295
--- /dev/null
+++ b/meta-quanta/meta-gsj/recipes-phosphor/ipmi/gsj-ipmi-fru-properties/extra-properties.yaml
@@ -0,0 +1,7 @@
+/system/chassis/bmc:
+ xyz.openbmc_project.Inventory.Item:
+ Present: 'true'
+
+/system/chassis/hsbp:
+ xyz.openbmc_project.Inventory.Item:
+ Present: 'true'
diff --git a/meta-quanta/meta-olympus-nuvoton/conf/bblayers.conf.sample b/meta-quanta/meta-olympus-nuvoton/conf/bblayers.conf.sample
index c79cda288..f7b4c2210 100644
--- a/meta-quanta/meta-olympus-nuvoton/conf/bblayers.conf.sample
+++ b/meta-quanta/meta-olympus-nuvoton/conf/bblayers.conf.sample
@@ -9,7 +9,9 @@ BBLAYERS ?= " \
##OEROOT##/meta \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-nuvoton \
##OEROOT##/meta-google \
@@ -20,7 +22,9 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta \
##OEROOT##/meta-openembedded/meta-oe \
##OEROOT##/meta-openembedded/meta-networking \
+ ##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-nuvoton \
##OEROOT##/meta-google \
diff --git a/meta-quanta/meta-olympus-nuvoton/conf/layer.conf b/meta-quanta/meta-olympus-nuvoton/conf/layer.conf
index 6d8da09f8..0c2366e53 100644
--- a/meta-quanta/meta-olympus-nuvoton/conf/layer.conf
+++ b/meta-quanta/meta-olympus-nuvoton/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "olympus-nuvoton-layer"
BBFILE_PATTERN_olympus-nuvoton-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_olympus-nuvoton-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_olympus-nuvoton-layer = "gatesgarth hardknott"
diff --git a/meta-quanta/meta-olympus-nuvoton/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend b/meta-quanta/meta-olympus-nuvoton/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
index 938bfb60f..9b2fe3aa5 100644
--- a/meta-quanta/meta-olympus-nuvoton/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
+++ b/meta-quanta/meta-olympus-nuvoton/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
@@ -37,4 +37,4 @@ PECIITEMS = "${@compose_list(d, 'PECIITEMSFMT', 'PECINAMES')}"
PECIENVS = "obmc/hwmon/{0}"
SYSTEMD_ENVIRONMENT_FILE_${PN}_append_olympus-nuvoton = " ${@compose_list(d, 'PECIENVS', 'PECIITEMS')}"
-EXTRA_OECONF_append_olympus-nuvoton = " --enable-update-functional-on-fail"
+EXTRA_OEMESON_append_olympus-nuvoton = " -Dupdate-functional-on-fail=true"
diff --git a/meta-quanta/meta-q71l/conf/bblayers.conf.sample b/meta-quanta/meta-q71l/conf/bblayers.conf.sample
index d59a6c4c6..880ce33b1 100644
--- a/meta-quanta/meta-q71l/conf/bblayers.conf.sample
+++ b/meta-quanta/meta-q71l/conf/bblayers.conf.sample
@@ -12,6 +12,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-x86 \
@@ -25,6 +26,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-x86 \
diff --git a/meta-quanta/meta-q71l/conf/layer.conf b/meta-quanta/meta-q71l/conf/layer.conf
index 80bae52e9..9e5616029 100644
--- a/meta-quanta/meta-q71l/conf/layer.conf
+++ b/meta-quanta/meta-q71l/conf/layer.conf
@@ -7,3 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "q71l"
BBFILE_PATTERN_q71l = ""
+LAYERSERIES_COMPAT_q71l = "gatesgarth hardknott"
diff --git a/meta-quanta/meta-q71l/conf/machine/quanta-q71l.conf b/meta-quanta/meta-q71l/conf/machine/quanta-q71l.conf
index 05ebc8262..2bcaeaaa1 100644
--- a/meta-quanta/meta-q71l/conf/machine/quanta-q71l.conf
+++ b/meta-quanta/meta-q71l/conf/machine/quanta-q71l.conf
@@ -4,7 +4,7 @@ KERNEL_DEVICETREE = "${KMACHINE}-bmc-${MACHINE}.dtb"
require conf/machine/include/ast2400.inc
require conf/machine/include/obmc-bsp-common.inc
-UBOOT_MACHINE_palmetto = "ast_g4_ncsi_config"
+UBOOT_MACHINE = "ast_g4_ncsi_config"
UBOOT_ENTRYPOINT = "0x40008000"
UBOOT_LOADADDRESS = "0x40008000"
diff --git a/meta-quanta/meta-q71l/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend b/meta-quanta/meta-q71l/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
index cc05c010a..89a0b7442 100644
--- a/meta-quanta/meta-q71l/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
+++ b/meta-quanta/meta-q71l/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
@@ -23,4 +23,4 @@ Q71L_ITEMS += "${@compose_list(d, 'Q71L_PSUBASE', 'Q71L_PSUS')}"
ENVS = "obmc/hwmon/{0}"
SYSTEMD_ENVIRONMENT_FILE_${PN}_append_quanta-q71l := " ${@compose_list(d, 'ENVS', 'Q71L_ITEMS')}"
-EXTRA_OECONF_append_quanta-q71l = " --enable-negative-errno-on-fail"
+EXTRA_OEMESON_append_quanta-q71l = " -Dnegative-errno-on-fail=true"
diff --git a/meta-raspberrypi/.gitignore b/meta-raspberrypi/.gitignore
index 073cf0615..d8d50e0e7 100644
--- a/meta-raspberrypi/.gitignore
+++ b/meta-raspberrypi/.gitignore
@@ -6,3 +6,4 @@ build*
*.log
docs/_build
/layers
+*.pyc
diff --git a/meta-raspberrypi/conf/layer.conf b/meta-raspberrypi/conf/layer.conf
index aa3174a38..0f081960b 100644
--- a/meta-raspberrypi/conf/layer.conf
+++ b/meta-raspberrypi/conf/layer.conf
@@ -9,7 +9,7 @@ BBFILE_COLLECTIONS += "raspberrypi"
BBFILE_PATTERN_raspberrypi := "^${LAYERDIR}/"
BBFILE_PRIORITY_raspberrypi = "9"
-LAYERSERIES_COMPAT_raspberrypi = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_raspberrypi = "hardknott honister"
# Additional license directories.
LICENSE_PATH += "${LAYERDIR}/files/custom-licenses"
diff --git a/meta-raspberrypi/conf/machine/include/rpi-base.inc b/meta-raspberrypi/conf/machine/include/rpi-base.inc
index 8b33a0fb7..572fe2241 100644
--- a/meta-raspberrypi/conf/machine/include/rpi-base.inc
+++ b/meta-raspberrypi/conf/machine/include/rpi-base.inc
@@ -15,6 +15,7 @@ XSERVER = " \
"
RPI_KERNEL_DEVICETREE_OVERLAYS ?= " \
+ overlays/overlay_map.dtb \
overlays/at86rf233.dtbo \
overlays/disable-bt.dtbo \
overlays/dwc2.dtbo \
@@ -44,6 +45,7 @@ RPI_KERNEL_DEVICETREE_OVERLAYS ?= " \
overlays/rpi-poe.dtbo \
overlays/vc4-fkms-v3d.dtbo \
overlays/vc4-kms-v3d.dtbo \
+ overlays/vc4-kms-v3d-pi4.dtbo \
overlays/vc4-kms-dsi-7inch.dtbo \
overlays/w1-gpio.dtbo \
overlays/w1-gpio-pullup.dtbo \
@@ -110,17 +112,17 @@ def make_dtb_boot_files(d):
def transform(dtb):
base = os.path.basename(dtb)
- if dtb.endswith('dtb'):
- # eg: whatever/bcm2708-rpi-b.dtb has:
- # DEPLOYDIR file: bcm2708-rpi-b.dtb
- # destination: bcm2708-rpi-b.dtb
- return base
- elif dtb.endswith('dtbo'):
+ if dtb.endswith('dtbo') or base == 'overlay_map.dtb':
# overlay dtb:
# eg: overlays/hifiberry-amp.dtbo has:
# DEPLOYDIR file: hifiberry-amp.dtbo
# destination: overlays/hifiberry-amp.dtbo
return '{};{}'.format(base, dtb)
+ elif dtb.endswith('dtb'):
+ # eg: whatever/bcm2708-rpi-b.dtb has:
+ # DEPLOYDIR file: bcm2708-rpi-b.dtb
+ # destination: bcm2708-rpi-b.dtb
+ return base
return ' '.join([transform(dtb) for dtb in alldtbs.split(' ') if dtb])
diff --git a/meta-raspberrypi/conf/machine/include/tune-arm1176jzf-s.inc b/meta-raspberrypi/conf/machine/include/tune-arm1176jzf-s.inc
index b6fcc59cc..b9e0377fd 100644
--- a/meta-raspberrypi/conf/machine/include/tune-arm1176jzf-s.inc
+++ b/meta-raspberrypi/conf/machine/include/tune-arm1176jzf-s.inc
@@ -1,15 +1,17 @@
-DEFAULTTUNE ?= "armv6"
+DEFAULTTUNE ?= "arm1176jzfshf"
require conf/machine/include/arm/arch-armv6.inc
TUNEVALID[arm1176jzfs] = "Enable arm1176jzfs specific processor optimizations"
-TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "arm1176jzfs", "-mtune=arm1176jzf-s", "", d)}"
-TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "vfp", "-mfpu=vfp", "", d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'arm1176jzfs', ' -mcpu=arm1176jzf-s', '', d)}"
+MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'arm1176jzfs', 'armv6:', '', d)}"
-AVAILTUNES += "arm1176jzfs arm1176jzfshf"
+AVAILTUNES += "arm1176jzfs"
ARMPKGARCH_tune-arm1176jzfs = "arm1176jzfs"
-ARMPKGARCH_tune-arm1176jzfshf = "arm1176jzfs"
-TUNE_FEATURES_tune-arm1176jzfs = "${TUNE_FEATURES_tune-armv6} arm1176jzfs"
+TUNE_FEATURES_tune-arm1176jzfs = "arm thumb vfp arm1176jzfs"
+PACKAGE_EXTRA_ARCHS_tune-arm1176jzfs = "${PACKAGE_EXTRA_ARCHS_tune-armv6} arm1176jzfs"
+
+AVAILTUNES += "arm1176jzfshf"
+ARMPKGARCH_tune-arm1176jzfshf = "${ARMPKGARCH_tune-arm1176jzfs}"
TUNE_FEATURES_tune-arm1176jzfshf = "${TUNE_FEATURES_tune-arm1176jzfs} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-arm1176jzfs = "${PACKAGE_EXTRA_ARCHS_tune-armv6}"
-PACKAGE_EXTRA_ARCHS_tune-arm1176jzfshf = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf} arm1176jzfshf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-arm1176jzfshf = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} arm1176jzfshf-vfp"
diff --git a/meta-raspberrypi/recipes-bsp/common/raspberrypi-firmware.inc b/meta-raspberrypi/recipes-bsp/common/raspberrypi-firmware.inc
index 591c6157f..8bd93dda7 100644
--- a/meta-raspberrypi/recipes-bsp/common/raspberrypi-firmware.inc
+++ b/meta-raspberrypi/recipes-bsp/common/raspberrypi-firmware.inc
@@ -1,9 +1,9 @@
-RPIFW_DATE ?= "20210205"
-SRCREV ?= "7d91570f20378afc9414107dccdad70705a8a342"
+RPIFW_DATE ?= "20210326"
+SRCREV ?= "20081d8e86119e95e516526700be62049850c01a"
RPIFW_SRC_URI ?= "https://github.com/raspberrypi/firmware/archive/${SRCREV}.tar.gz;downloadfilename=raspberrypi-firmware-${SRCREV}.tar.gz"
RPIFW_S ?= "${WORKDIR}/firmware-${SRCREV}"
SRC_URI = "${RPIFW_SRC_URI}"
-SRC_URI[sha256sum] = "2cc9bf2cbcab8283db2eb53ed2a49372b70fe76538994c32f6d261e2da3e9ff4"
+SRC_URI[sha256sum] = "00bd758a1242f069682e1a98250362b45a8887aed98ee61dd50439e9a78fe463"
PV = "${RPIFW_DATE}"
diff --git a/meta-raspberrypi/recipes-graphics/mesa/mesa-gl_%.bbappend b/meta-raspberrypi/recipes-graphics/mesa/mesa-gl_%.bbappend
index 84cd479af..e561a1b02 100644
--- a/meta-raspberrypi/recipes-graphics/mesa/mesa-gl_%.bbappend
+++ b/meta-raspberrypi/recipes-graphics/mesa/mesa-gl_%.bbappend
@@ -1,7 +1,7 @@
PACKAGECONFIG_append_rpi = " gbm"
PROVIDES_append_rpi = " virtual/libgbm"
-DRIDRIVERS_append_rpi = ",swrast"
+GALLIUMDRIVERS_append_rpi = ",swrast"
do_install_append_rpi() {
rm -rf ${D}${includedir}/KHR/khrplatform.h
diff --git a/meta-raspberrypi/recipes-graphics/userland/userland_git.bb b/meta-raspberrypi/recipes-graphics/userland/userland_git.bb
index 6dfc8a373..ead81f078 100644
--- a/meta-raspberrypi/recipes-graphics/userland/userland_git.bb
+++ b/meta-raspberrypi/recipes-graphics/userland/userland_git.bb
@@ -13,11 +13,11 @@ COMPATIBLE_MACHINE = "^rpi$"
SRCBRANCH = "master"
SRCFORK = "raspberrypi"
-SRCREV = "9f3f9054a692e53b60fca54221a402414e030335"
+SRCREV = "3fd8527eefd8790b4e8393458efc5f94eb21a615"
# Use the date of the above commit as the package version. Update this when
# SRCREV is changed.
-PV = "20201027"
+PV = "20210319"
SRC_URI = "\
git://github.com/${SRCFORK}/userland.git;protocol=git;branch=${SRCBRANCH} \
diff --git a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.10.bb b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.10.bb
index 6af434e07..9fef701e2 100644
--- a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.10.bb
+++ b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.10.bb
@@ -1,7 +1,7 @@
-LINUX_VERSION ?= "5.10.13"
+LINUX_VERSION ?= "5.10.25"
LINUX_RPI_BRANCH ?= "rpi-5.10.y"
-SRCREV_machine = "34263dc81a12862c66e2593bb26c09d5fd20f46d"
+SRCREV_machine = "d1fd8a5727908bb677c003d2ae977e9d935a6f94"
SRCREV_meta = "5833ca701711d487c9094bd1efc671e8ef7d001e"
KMETA = "kernel-meta"
diff --git a/meta-security/.gitlab-ci.yml b/meta-security/.gitlab-ci.yml
index 1442239b2..f673ef698 100644
--- a/meta-security/.gitlab-ci.yml
+++ b/meta-security/.gitlab-ci.yml
@@ -26,128 +26,104 @@ stages:
qemux86:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME-parsec.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME-comp.yml
+ - kas build --target harden-image-minimal kas/$CI_JOB_NAME-harden.yml
+ - kas build --target integrity-image-minimal kas/$CI_JOB_NAME-ima.yml
qemux86-64:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME-parsec.yml
+ - kas build --target dm-verity-image-initramfs kas/$CI_JOB_NAME-dm-verify.yml
+ - kas build --target integrity-image-minimal kas/$CI_JOB_NAME-ima.yml
qemuarm:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME-parsec.yml
qemuarm64:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME-parsec.yml
+ - kas build --target integrity-image-minimal kas/$CI_JOB_NAME-ima.yml
qemuppc:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME-parsec.yml
qemumips64:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
qemuriscv64:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
qemux86-64-tpm:
extends: .build
script:
- - kas build --target security-tpm-image kas/$CI_JOB_NAME.yml
-
-qemux86-64-tpm2:
- extends: .build
- script:
- - kas build --target security-tpm2-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-tpm-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-tpm2-image kas/$CI_JOB_NAME2.yml
qemuarm64-tpm2:
extends: .build
script:
- - kas build --target security-tpm2-image kas/$CI_JOB_NAME.yml
-
-qemux86-ima:
- extends: .build
- script:
- - kas build --target integrity-image-minimal kas/$CI_JOB_NAME.yml
-
-qemux86-64-ima:
- extends: .build
- script:
- - kas build --target integrity-image-minimal kas/$CI_JOB_NAME.yml
-
-qemuarm64-ima:
- extends: .build
- script:
- - kas build --target integrity-image-minimal kas/$CI_JOB_NAME.yml
-
-qemux86-64-dm-verify:
- extends: .build
- script:
- - kas build --target core-image-minimal kas/qemux86-64.yml
- - kas build --target dm-verity-image-initramfs kas/$CI_JOB_NAME.yml
-
+ - kas build --target security-tpm2-image kas/$CI_JOB_NAME.yml
qemuarm64-alt:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
qemuarm64-multi:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
qemumips64-alt:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
qemumips64-multi:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
qemux86-64-alt:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
qemux86-64-multi:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
qemux86-musl:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
qemuarm64-musl:
extends: .build
script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
-
-qemux86-harden:
- extends: .build
- script:
- - kas build --target harden-image-minimal kas/$CI_JOB_NAME.yml
-
-qemux86-comp:
- extends: .build
- script:
- - kas build --target security-build-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-build-image kas/$CI_JOB_NAME.yml
qemux86-test:
extends: .build
allow_failure: true
script:
- - kas build --target security-test-image kas/$CI_JOB_NAME.yml
- - kas build -c testimage --target security-test-image kas/$CI_JOB_NAME.yml
+ - kas build --target security-test-image kas/$CI_JOB_NAME.yml
+ - kas build -c testimage --target security-test-image kas/$CI_JOB_NAME.yml
+
diff --git a/meta-security/README b/meta-security/README
index f223feef0..eb1536675 100644
--- a/meta-security/README
+++ b/meta-security/README
@@ -11,28 +11,19 @@ This layer depends on:
URI: git://git.openembedded.org/openembedded-core
branch: master
- revision: HEAD
- prio: default
URI: git://git.openembedded.org/meta-openembedded/meta-oe
branch: master
- revision: HEAD
- prio: default
URI: git://git.openembedded.org/meta-openembedded/meta-perl
branch: master
- revision: HEAD
- prio: default
URI: git://git.openembedded.org/meta-openembedded/meta-python
branch: master
- revision: HEAD
- prio: default
URI: git://git.openembedded.org/meta-openembedded/meta-networking
branch: master
- revision: HEAD
- prio: default
+
Adding the security layer to your build
========================================
@@ -51,11 +42,23 @@ other layers needed. e.g.:
/path/to/meta-openembedded/meta-perl \
/path/to/meta-openembedded/meta-python \
/path/to/meta-openembedded/meta-networking \
- /path/to/layer/meta-security \
+ /path/to/layer/meta-security "
+
+Optional Rust dependancy
+======================================
+If you want to use the latest Suricata that needs rust, you will need to clone
+
+ URI: https://github.com/meta-rust/meta-rust.git
+ branch: master
+
+ BBLAYERS += "/path/to/layer/meta-rust"
+
+This will activate the dynamic-layer mechanism and pull in the newer suricata
+
Maintenance
------------
+======================================
Send pull requests, patches, comments or questions to yocto@lists.yoctoproject.org
diff --git a/meta-security/conf/layer.conf b/meta-security/conf/layer.conf
index 8c0254b82..906e02440 100644
--- a/meta-security/conf/layer.conf
+++ b/meta-security/conf/layer.conf
@@ -9,6 +9,10 @@ BBFILE_COLLECTIONS += "security"
BBFILE_PATTERN_security = "^${LAYERDIR}/"
BBFILE_PRIORITY_security = "8"
-LAYERSERIES_COMPAT_security = "gatesgarth"
+LAYERSERIES_COMPAT_security = "hardknott"
LAYERDEPENDS_security = "core openembedded-layer perl-layer networking-layer meta-python"
+
+BBFILES_DYNAMIC += " \
+rust-layer:${LAYERDIR}/dynamic-layers/meta-rust/recipes-*/*/*.bb \
+"
diff --git a/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/fixup.patch b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/fixup.patch
new file mode 100644
index 000000000..fc44ce68f
--- /dev/null
+++ b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/fixup.patch
@@ -0,0 +1,32 @@
+Skip pkg Makefile from using its own rust steps
+
+Upstream-Status: OE Specific
+
+Signed-off-by: Armin Kuster <akuster808@gmail.com>
+
+Index: suricata-6.0.2/Makefile.am
+===================================================================
+--- suricata-6.0.2.orig/Makefile.am
++++ suricata-6.0.2/Makefile.am
+@@ -7,7 +7,7 @@ EXTRA_DIST = ChangeLog COPYING LICENSE s
+ $(SURICATA_UPDATE_DIR) \
+ lua \
+ acsite.m4
+-SUBDIRS = $(HTP_DIR) rust src qa rules doc contrib etc python ebpf \
++SUBDIRS = $(HTP_DIR) src qa rules doc contrib etc python ebpf \
+ $(SURICATA_UPDATE_DIR)
+
+ CLEANFILES = stamp-h[0-9]*
+Index: suricata-6.0.2/Makefile.in
+===================================================================
+--- suricata-6.0.2.orig/Makefile.in
++++ suricata-6.0.2/Makefile.in
+@@ -426,7 +426,7 @@ EXTRA_DIST = ChangeLog COPYING LICENSE s
+ lua \
+ acsite.m4
+
+-SUBDIRS = $(HTP_DIR) rust src qa rules doc contrib etc python ebpf \
++SUBDIRS = $(HTP_DIR) src qa rules doc contrib etc python ebpf \
+ $(SURICATA_UPDATE_DIR)
+
+ CLEANFILES = stamp-h[0-9]*
diff --git a/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/run-ptest b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/run-ptest
new file mode 100644
index 000000000..666ba9c95
--- /dev/null
+++ b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/run-ptest
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+suricata -u
diff --git a/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/suricata.service b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/suricata.service
new file mode 100644
index 000000000..a99a76ef8
--- /dev/null
+++ b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/suricata.service
@@ -0,0 +1,20 @@
+[Unit]
+Description=Suricata IDS/IDP daemon
+After=network.target
+Requires=network.target
+Documentation=man:suricata(8) man:suricatasc(8)
+Documentation=https://redmine.openinfosecfoundation.org/projects/suricata/wiki
+
+[Service]
+Type=simple
+CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_RAW
+RestrictAddressFamilies=
+ExecStart=/usr/bin/suricata -c /etc/suricata/suricata.yaml eth0
+ExecReload=/bin/kill -HUP $MAINPID
+PrivateTmp=yes
+ProtectHome=yes
+ProtectSystem=yes
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/suricata.yaml b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/suricata.yaml
new file mode 100644
index 000000000..8d06a2744
--- /dev/null
+++ b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/suricata.yaml
@@ -0,0 +1,1326 @@
+%YAML 1.1
+---
+
+# Suricata configuration file. In addition to the comments describing all
+# options in this file, full documentation can be found at:
+# https://redmine.openinfosecfoundation.org/projects/suricata/wiki/Suricatayaml
+
+
+# Number of packets allowed to be processed simultaneously. Default is a
+# conservative 1024. A higher number will make sure CPU's/CPU cores will be
+# more easily kept busy, but may negatively impact caching.
+#
+# If you are using the CUDA pattern matcher (mpm-algo: ac-cuda), different rules
+# apply. In that case try something like 60000 or more. This is because the CUDA
+# pattern matcher buffers and scans as many packets as possible in parallel.
+#max-pending-packets: 1024
+
+# Runmode the engine should use. Please check --list-runmodes to get the available
+# runmodes for each packet acquisition method. Defaults to "autofp" (auto flow pinned
+# load balancing).
+#runmode: autofp
+
+# Specifies the kind of flow load balancer used by the flow pinned autofp mode.
+#
+# Supported schedulers are:
+#
+# round-robin - Flows assigned to threads in a round robin fashion.
+# active-packets - Flows assigned to threads that have the lowest number of
+# unprocessed packets (default).
+# hash - Flow alloted usihng the address hash. More of a random
+# technique. Was the default in Suricata 1.2.1 and older.
+#
+#autofp-scheduler: active-packets
+
+# If suricata box is a router for the sniffed networks, set it to 'router'. If
+# it is a pure sniffing setup, set it to 'sniffer-only'.
+# If set to auto, the variable is internally switch to 'router' in IPS mode
+# and 'sniffer-only' in IDS mode.
+# This feature is currently only used by the reject* keywords.
+host-mode: auto
+
+# Run suricata as user and group.
+#run-as:
+# user: suri
+# group: suri
+
+# Default pid file.
+# Will use this file if no --pidfile in command options.
+#pid-file: /var/run/suricata.pid
+
+# Daemon working directory
+# Suricata will change directory to this one if provided
+# Default: "/"
+#daemon-directory: "/"
+
+# Preallocated size for packet. Default is 1514 which is the classical
+# size for pcap on ethernet. You should adjust this value to the highest
+# packet size (MTU + hardware header) on your system.
+#default-packet-size: 1514
+
+# The default logging directory. Any log or output file will be
+# placed here if its not specified with a full path name. This can be
+# overridden with the -l command line parameter.
+default-log-dir: /var/log/suricata/
+
+# Unix command socket can be used to pass commands to suricata.
+# An external tool can then connect to get information from suricata
+# or trigger some modifications of the engine. Set enabled to yes
+# to activate the feature. You can use the filename variable to set
+# the file name of the socket.
+unix-command:
+ enabled: no
+ #filename: custom.socket
+
+# Configure the type of alert (and other) logging you would like.
+outputs:
+
+ # a line based alerts log similar to Snort's fast.log
+ - fast:
+ enabled: yes
+ filename: fast.log
+ append: yes
+ #filetype: regular # 'regular', 'unix_stream' or 'unix_dgram'
+
+ # Extensible Event Format (nicknamed EVE) event log in JSON format
+ - eve-log:
+ enabled: yes
+ type: file #file|syslog|unix_dgram|unix_stream
+ filename: eve.json
+ # the following are valid when type: syslog above
+ #identity: "suricata"
+ #facility: local5
+ #level: Info ## possible levels: Emergency, Alert, Critical,
+ ## Error, Warning, Notice, Info, Debug
+ types:
+ - alert
+ - http:
+ extended: yes # enable this for extended logging information
+ # custom allows additional http fields to be included in eve-log
+ # the example below adds three additional fields when uncommented
+ #custom: [Accept-Encoding, Accept-Language, Authorization]
+ - dns
+ - tls:
+ extended: yes # enable this for extended logging information
+ - files:
+ force-magic: no # force logging magic on all logged files
+ force-md5: no # force logging of md5 checksums
+ #- drop
+ - ssh
+
+ # alert output for use with Barnyard2
+ - unified2-alert:
+ enabled: yes
+ filename: unified2.alert
+
+ # File size limit. Can be specified in kb, mb, gb. Just a number
+ # is parsed as bytes.
+ #limit: 32mb
+
+ # Sensor ID field of unified2 alerts.
+ #sensor-id: 0
+
+ # HTTP X-Forwarded-For support by adding the unified2 extra header that
+ # will contain the actual client IP address or by overwriting the source
+ # IP address (helpful when inspecting traffic that is being reversed
+ # proxied).
+ xff:
+ enabled: no
+ # Two operation modes are available, "extra-data" and "overwrite". Note
+ # that in the "overwrite" mode, if the reported IP address in the HTTP
+ # X-Forwarded-For header is of a different version of the packet
+ # received, it will fall-back to "extra-data" mode.
+ mode: extra-data
+ # Header name were the actual IP address will be reported, if more than
+ # one IP address is present, the last IP address will be the one taken
+ # into consideration.
+ header: X-Forwarded-For
+
+ # a line based log of HTTP requests (no alerts)
+ - http-log:
+ enabled: yes
+ filename: http.log
+ append: yes
+ #extended: yes # enable this for extended logging information
+ #custom: yes # enabled the custom logging format (defined by customformat)
+ #customformat: "%{%D-%H:%M:%S}t.%z %{X-Forwarded-For}i %H %m %h %u %s %B %a:%p -> %A:%P"
+ #filetype: regular # 'regular', 'unix_stream' or 'unix_dgram'
+
+ # a line based log of TLS handshake parameters (no alerts)
+ - tls-log:
+ enabled: no # Log TLS connections.
+ filename: tls.log # File to store TLS logs.
+ append: yes
+ #filetype: regular # 'regular', 'unix_stream' or 'unix_dgram'
+ #extended: yes # Log extended information like fingerprint
+ certs-log-dir: certs # directory to store the certificates files
+
+ # a line based log of DNS requests and/or replies (no alerts)
+ - dns-log:
+ enabled: no
+ filename: dns.log
+ append: yes
+ #filetype: regular # 'regular', 'unix_stream' or 'unix_dgram'
+
+ # a line based log to used with pcap file study.
+ # this module is dedicated to offline pcap parsing (empty output
+ # if used with another kind of input). It can interoperate with
+ # pcap parser like wireshark via the suriwire plugin.
+ - pcap-info:
+ enabled: no
+
+ # Packet log... log packets in pcap format. 2 modes of operation: "normal"
+ # and "sguil".
+ #
+ # In normal mode a pcap file "filename" is created in the default-log-dir,
+ # or are as specified by "dir". In Sguil mode "dir" indicates the base directory.
+ # In this base dir the pcaps are created in th directory structure Sguil expects:
+ #
+ # $sguil-base-dir/YYYY-MM-DD/$filename.<timestamp>
+ #
+ # By default all packets are logged except:
+ # - TCP streams beyond stream.reassembly.depth
+ # - encrypted streams after the key exchange
+ #
+ - pcap-log:
+ enabled: no
+ filename: log.pcap
+
+ # File size limit. Can be specified in kb, mb, gb. Just a number
+ # is parsed as bytes.
+ limit: 1000mb
+
+ # If set to a value will enable ring buffer mode. Will keep Maximum of "max-files" of size "limit"
+ max-files: 2000
+
+ mode: normal # normal or sguil.
+ #sguil-base-dir: /nsm_data/
+ #ts-format: usec # sec or usec second format (default) is filename.sec usec is filename.sec.usec
+ use-stream-depth: no #If set to "yes" packets seen after reaching stream inspection depth are ignored. "no" logs all packets
+
+ # a full alerts log containing much information for signature writers
+ # or for investigating suspected false positives.
+ - alert-debug:
+ enabled: no
+ filename: alert-debug.log
+ append: yes
+ #filetype: regular # 'regular', 'unix_stream' or 'unix_dgram'
+
+ # alert output to prelude (http://www.prelude-technologies.com/) only
+ # available if Suricata has been compiled with --enable-prelude
+ - alert-prelude:
+ enabled: no
+ profile: suricata
+ log-packet-content: no
+ log-packet-header: yes
+
+ # Stats.log contains data from various counters of the suricata engine.
+ # The interval field (in seconds) tells after how long output will be written
+ # on the log file.
+ - stats:
+ enabled: yes
+ filename: stats.log
+ interval: 8
+
+ # a line based alerts log similar to fast.log into syslog
+ - syslog:
+ enabled: no
+ # reported identity to syslog. If ommited the program name (usually
+ # suricata) will be used.
+ #identity: "suricata"
+ facility: local5
+ #level: Info ## possible levels: Emergency, Alert, Critical,
+ ## Error, Warning, Notice, Info, Debug
+
+ # a line based information for dropped packets in IPS mode
+ - drop:
+ enabled: no
+ filename: drop.log
+ append: yes
+ #filetype: regular # 'regular', 'unix_stream' or 'unix_dgram'
+
+ # output module to store extracted files to disk
+ #
+ # The files are stored to the log-dir in a format "file.<id>" where <id> is
+ # an incrementing number starting at 1. For each file "file.<id>" a meta
+ # file "file.<id>.meta" is created.
+ #
+ # File extraction depends on a lot of things to be fully done:
+ # - stream reassembly depth. For optimal results, set this to 0 (unlimited)
+ # - http request / response body sizes. Again set to 0 for optimal results.
+ # - rules that contain the "filestore" keyword.
+ - file-store:
+ enabled: no # set to yes to enable
+ log-dir: files # directory to store the files
+ force-magic: no # force logging magic on all stored files
+ force-md5: no # force logging of md5 checksums
+ #waldo: file.waldo # waldo file to store the file_id across runs
+
+ # output module to log files tracked in a easily parsable json format
+ - file-log:
+ enabled: no
+ filename: files-json.log
+ append: yes
+ #filetype: regular # 'regular', 'unix_stream' or 'unix_dgram'
+
+ force-magic: no # force logging magic on all logged files
+ force-md5: no # force logging of md5 checksums
+
+# Magic file. The extension .mgc is added to the value here.
+#magic-file: /usr/share/file/magic
+magic-file: /usr/share/misc/magic.mgc
+
+# When running in NFQ inline mode, it is possible to use a simulated
+# non-terminal NFQUEUE verdict.
+# This permit to do send all needed packet to suricata via this a rule:
+# iptables -I FORWARD -m mark ! --mark $MARK/$MASK -j NFQUEUE
+# And below, you can have your standard filtering ruleset. To activate
+# this mode, you need to set mode to 'repeat'
+# If you want packet to be sent to another queue after an ACCEPT decision
+# set mode to 'route' and set next-queue value.
+# On linux >= 3.1, you can set batchcount to a value > 1 to improve performance
+# by processing several packets before sending a verdict (worker runmode only).
+# On linux >= 3.6, you can set the fail-open option to yes to have the kernel
+# accept the packet if suricata is not able to keep pace.
+nfq:
+# mode: accept
+# repeat-mark: 1
+# repeat-mask: 1
+# route-queue: 2
+# batchcount: 20
+# fail-open: yes
+
+#nflog support
+nflog:
+ # netlink multicast group
+ # (the same as the iptables --nflog-group param)
+ # Group 0 is used by the kernel, so you can't use it
+ - group: 2
+ # netlink buffer size
+ buffer-size: 18432
+ # put default value here
+ - group: default
+ # set number of packet to queue inside kernel
+ qthreshold: 1
+ # set the delay before flushing packet in the queue inside kernel
+ qtimeout: 100
+ # netlink max buffer size
+ max-size: 20000
+
+# af-packet support
+# Set threads to > 1 to use PACKET_FANOUT support
+af-packet:
+ - interface: eth0
+ # Number of receive threads (>1 will enable experimental flow pinned
+ # runmode)
+ threads: 1
+ # Default clusterid. AF_PACKET will load balance packets based on flow.
+ # All threads/processes that will participate need to have the same
+ # clusterid.
+ cluster-id: 99
+ # Default AF_PACKET cluster type. AF_PACKET can load balance per flow or per hash.
+ # This is only supported for Linux kernel > 3.1
+ # possible value are:
+ # * cluster_round_robin: round robin load balancing
+ # * cluster_flow: all packets of a given flow are send to the same socket
+ # * cluster_cpu: all packets treated in kernel by a CPU are send to the same socket
+ cluster-type: cluster_flow
+ # In some fragmentation case, the hash can not be computed. If "defrag" is set
+ # to yes, the kernel will do the needed defragmentation before sending the packets.
+ defrag: yes
+ # To use the ring feature of AF_PACKET, set 'use-mmap' to yes
+ use-mmap: yes
+ # Ring size will be computed with respect to max_pending_packets and number
+ # of threads. You can set manually the ring size in number of packets by setting
+ # the following value. If you are using flow cluster-type and have really network
+ # intensive single-flow you could want to set the ring-size independantly of the number
+ # of threads:
+ #ring-size: 2048
+ # On busy system, this could help to set it to yes to recover from a packet drop
+ # phase. This will result in some packets (at max a ring flush) being non treated.
+ #use-emergency-flush: yes
+ # recv buffer size, increase value could improve performance
+ # buffer-size: 32768
+ # Set to yes to disable promiscuous mode
+ # disable-promisc: no
+ # Choose checksum verification mode for the interface. At the moment
+ # of the capture, some packets may be with an invalid checksum due to
+ # offloading to the network card of the checksum computation.
+ # Possible values are:
+ # - kernel: use indication sent by kernel for each packet (default)
+ # - yes: checksum validation is forced
+ # - no: checksum validation is disabled
+ # - auto: suricata uses a statistical approach to detect when
+ # checksum off-loading is used.
+ # Warning: 'checksum-validation' must be set to yes to have any validation
+ #checksum-checks: kernel
+ # BPF filter to apply to this interface. The pcap filter syntax apply here.
+ #bpf-filter: port 80 or udp
+ # You can use the following variables to activate AF_PACKET tap od IPS mode.
+ # If copy-mode is set to ips or tap, the traffic coming to the current
+ # interface will be copied to the copy-iface interface. If 'tap' is set, the
+ # copy is complete. If 'ips' is set, the packet matching a 'drop' action
+ # will not be copied.
+ #copy-mode: ips
+ #copy-iface: eth1
+ - interface: eth1
+ threads: 1
+ cluster-id: 98
+ cluster-type: cluster_flow
+ defrag: yes
+ # buffer-size: 32768
+ # disable-promisc: no
+ # Put default values here
+ - interface: default
+ #threads: 2
+ #use-mmap: yes
+
+legacy:
+ uricontent: enabled
+
+# You can specify a threshold config file by setting "threshold-file"
+# to the path of the threshold config file:
+# threshold-file: /etc/suricata/threshold.config
+
+# The detection engine builds internal groups of signatures. The engine
+# allow us to specify the profile to use for them, to manage memory on an
+# efficient way keeping a good performance. For the profile keyword you
+# can use the words "low", "medium", "high" or "custom". If you use custom
+# make sure to define the values at "- custom-values" as your convenience.
+# Usually you would prefer medium/high/low.
+#
+# "sgh mpm-context", indicates how the staging should allot mpm contexts for
+# the signature groups. "single" indicates the use of a single context for
+# all the signature group heads. "full" indicates a mpm-context for each
+# group head. "auto" lets the engine decide the distribution of contexts
+# based on the information the engine gathers on the patterns from each
+# group head.
+#
+# The option inspection-recursion-limit is used to limit the recursive calls
+# in the content inspection code. For certain payload-sig combinations, we
+# might end up taking too much time in the content inspection code.
+# If the argument specified is 0, the engine uses an internally defined
+# default limit. On not specifying a value, we use no limits on the recursion.
+detect-engine:
+ - profile: medium
+ - custom-values:
+ toclient-src-groups: 2
+ toclient-dst-groups: 2
+ toclient-sp-groups: 2
+ toclient-dp-groups: 3
+ toserver-src-groups: 2
+ toserver-dst-groups: 4
+ toserver-sp-groups: 2
+ toserver-dp-groups: 25
+ - sgh-mpm-context: auto
+ - inspection-recursion-limit: 3000
+ # When rule-reload is enabled, sending a USR2 signal to the Suricata process
+ # will trigger a live rule reload. Experimental feature, use with care.
+ #- rule-reload: true
+ # If set to yes, the loading of signatures will be made after the capture
+ # is started. This will limit the downtime in IPS mode.
+ #- delayed-detect: yes
+
+# Suricata is multi-threaded. Here the threading can be influenced.
+threading:
+ # On some cpu's/architectures it is beneficial to tie individual threads
+ # to specific CPU's/CPU cores. In this case all threads are tied to CPU0,
+ # and each extra CPU/core has one "detect" thread.
+ #
+ # On Intel Core2 and Nehalem CPU's enabling this will degrade performance.
+ #
+ set-cpu-affinity: no
+ # Tune cpu affinity of suricata threads. Each family of threads can be bound
+ # on specific CPUs.
+ cpu-affinity:
+ - management-cpu-set:
+ cpu: [ 0 ] # include only these cpus in affinity settings
+ - receive-cpu-set:
+ cpu: [ 0 ] # include only these cpus in affinity settings
+ - decode-cpu-set:
+ cpu: [ 0, 1 ]
+ mode: "balanced"
+ - stream-cpu-set:
+ cpu: [ "0-1" ]
+ - detect-cpu-set:
+ cpu: [ "all" ]
+ mode: "exclusive" # run detect threads in these cpus
+ # Use explicitely 3 threads and don't compute number by using
+ # detect-thread-ratio variable:
+ # threads: 3
+ prio:
+ low: [ 0 ]
+ medium: [ "1-2" ]
+ high: [ 3 ]
+ default: "medium"
+ - verdict-cpu-set:
+ cpu: [ 0 ]
+ prio:
+ default: "high"
+ - reject-cpu-set:
+ cpu: [ 0 ]
+ prio:
+ default: "low"
+ - output-cpu-set:
+ cpu: [ "all" ]
+ prio:
+ default: "medium"
+ #
+ # By default Suricata creates one "detect" thread per available CPU/CPU core.
+ # This setting allows controlling this behaviour. A ratio setting of 2 will
+ # create 2 detect threads for each CPU/CPU core. So for a dual core CPU this
+ # will result in 4 detect threads. If values below 1 are used, less threads
+ # are created. So on a dual core CPU a setting of 0.5 results in 1 detect
+ # thread being created. Regardless of the setting at a minimum 1 detect
+ # thread will always be created.
+ #
+ detect-thread-ratio: 1.5
+
+# Cuda configuration.
+cuda:
+ # The "mpm" profile. On not specifying any of these parameters, the engine's
+ # internal default values are used, which are same as the ones specified in
+ # in the default conf file.
+ mpm:
+ # The minimum length required to buffer data to the gpu.
+ # Anything below this is MPM'ed on the CPU.
+ # Can be specified in kb, mb, gb. Just a number indicates it's in bytes.
+ # A value of 0 indicates there's no limit.
+ data-buffer-size-min-limit: 0
+ # The maximum length for data that we would buffer to the gpu.
+ # Anything over this is MPM'ed on the CPU.
+ # Can be specified in kb, mb, gb. Just a number indicates it's in bytes.
+ data-buffer-size-max-limit: 1500
+ # The ring buffer size used by the CudaBuffer API to buffer data.
+ cudabuffer-buffer-size: 500mb
+ # The max chunk size that can be sent to the gpu in a single go.
+ gpu-transfer-size: 50mb
+ # The timeout limit for batching of packets in microseconds.
+ batching-timeout: 2000
+ # The device to use for the mpm. Currently we don't support load balancing
+ # on multiple gpus. In case you have multiple devices on your system, you
+ # can specify the device to use, using this conf. By default we hold 0, to
+ # specify the first device cuda sees. To find out device-id associated with
+ # the card(s) on the system run "suricata --list-cuda-cards".
+ device-id: 0
+ # No of Cuda streams used for asynchronous processing. All values > 0 are valid.
+ # For this option you need a device with Compute Capability > 1.0.
+ cuda-streams: 2
+
+# Select the multi pattern algorithm you want to run for scan/search the
+# in the engine. The supported algorithms are b2g, b2gc, b2gm, b3g, wumanber,
+# ac and ac-gfbs.
+#
+# The mpm you choose also decides the distribution of mpm contexts for
+# signature groups, specified by the conf - "detect-engine.sgh-mpm-context".
+# Selecting "ac" as the mpm would require "detect-engine.sgh-mpm-context"
+# to be set to "single", because of ac's memory requirements, unless the
+# ruleset is small enough to fit in one's memory, in which case one can
+# use "full" with "ac". Rest of the mpms can be run in "full" mode.
+#
+# There is also a CUDA pattern matcher (only available if Suricata was
+# compiled with --enable-cuda: b2g_cuda. Make sure to update your
+# max-pending-packets setting above as well if you use b2g_cuda.
+
+mpm-algo: ac
+
+# The memory settings for hash size of these algorithms can vary from lowest
+# (2048) - low (4096) - medium (8192) - high (16384) - higher (32768) - max
+# (65536). The bloomfilter sizes of these algorithms can vary from low (512) -
+# medium (1024) - high (2048).
+#
+# For B2g/B3g algorithms, there is a support for two different scan/search
+# algorithms. For B2g the scan algorithms are B2gScan & B2gScanBNDMq, and
+# search algorithms are B2gSearch & B2gSearchBNDMq. For B3g scan algorithms
+# are B3gScan & B3gScanBNDMq, and search algorithms are B3gSearch &
+# B3gSearchBNDMq.
+#
+# For B2g the different scan/search algorithms and, hash and bloom
+# filter size settings. For B3g the different scan/search algorithms and, hash
+# and bloom filter size settings. For wumanber the hash and bloom filter size
+# settings.
+
+pattern-matcher:
+ - b2gc:
+ search-algo: B2gSearchBNDMq
+ hash-size: low
+ bf-size: medium
+ - b2gm:
+ search-algo: B2gSearchBNDMq
+ hash-size: low
+ bf-size: medium
+ - b2g:
+ search-algo: B2gSearchBNDMq
+ hash-size: low
+ bf-size: medium
+ - b3g:
+ search-algo: B3gSearchBNDMq
+ hash-size: low
+ bf-size: medium
+ - wumanber:
+ hash-size: low
+ bf-size: medium
+
+# Defrag settings:
+
+defrag:
+ memcap: 32mb
+ hash-size: 65536
+ trackers: 65535 # number of defragmented flows to follow
+ max-frags: 65535 # number of fragments to keep (higher than trackers)
+ prealloc: yes
+ timeout: 60
+
+# Enable defrag per host settings
+# host-config:
+#
+# - dmz:
+# timeout: 30
+# address: [192.168.1.0/24, 127.0.0.0/8, 1.1.1.0/24, 2.2.2.0/24, "1.1.1.1", "2.2.2.2", "::1"]
+#
+# - lan:
+# timeout: 45
+# address:
+# - 192.168.0.0/24
+# - 192.168.10.0/24
+# - 172.16.14.0/24
+
+# Flow settings:
+# By default, the reserved memory (memcap) for flows is 32MB. This is the limit
+# for flow allocation inside the engine. You can change this value to allow
+# more memory usage for flows.
+# The hash-size determine the size of the hash used to identify flows inside
+# the engine, and by default the value is 65536.
+# At the startup, the engine can preallocate a number of flows, to get a better
+# performance. The number of flows preallocated is 10000 by default.
+# emergency-recovery is the percentage of flows that the engine need to
+# prune before unsetting the emergency state. The emergency state is activated
+# when the memcap limit is reached, allowing to create new flows, but
+# prunning them with the emergency timeouts (they are defined below).
+# If the memcap is reached, the engine will try to prune flows
+# with the default timeouts. If it doens't find a flow to prune, it will set
+# the emergency bit and it will try again with more agressive timeouts.
+# If that doesn't work, then it will try to kill the last time seen flows
+# not in use.
+# The memcap can be specified in kb, mb, gb. Just a number indicates it's
+# in bytes.
+
+flow:
+ memcap: 64mb
+ hash-size: 65536
+ prealloc: 10000
+ emergency-recovery: 30
+
+# This option controls the use of vlan ids in the flow (and defrag)
+# hashing. Normally this should be enabled, but in some (broken)
+# setups where both sides of a flow are not tagged with the same vlan
+# tag, we can ignore the vlan id's in the flow hashing.
+vlan:
+ use-for-tracking: true
+
+# Specific timeouts for flows. Here you can specify the timeouts that the
+# active flows will wait to transit from the current state to another, on each
+# protocol. The value of "new" determine the seconds to wait after a hanshake or
+# stream startup before the engine free the data of that flow it doesn't
+# change the state to established (usually if we don't receive more packets
+# of that flow). The value of "established" is the amount of
+# seconds that the engine will wait to free the flow if it spend that amount
+# without receiving new packets or closing the connection. "closed" is the
+# amount of time to wait after a flow is closed (usually zero).
+#
+# There's an emergency mode that will become active under attack circumstances,
+# making the engine to check flow status faster. This configuration variables
+# use the prefix "emergency-" and work similar as the normal ones.
+# Some timeouts doesn't apply to all the protocols, like "closed", for udp and
+# icmp.
+
+flow-timeouts:
+
+ default:
+ new: 30
+ established: 300
+ closed: 0
+ emergency-new: 10
+ emergency-established: 100
+ emergency-closed: 0
+ tcp:
+ new: 60
+ established: 3600
+ closed: 120
+ emergency-new: 10
+ emergency-established: 300
+ emergency-closed: 20
+ udp:
+ new: 30
+ established: 300
+ emergency-new: 10
+ emergency-established: 100
+ icmp:
+ new: 30
+ established: 300
+ emergency-new: 10
+ emergency-established: 100
+
+# Stream engine settings. Here the TCP stream tracking and reassembly
+# engine is configured.
+#
+# stream:
+# memcap: 32mb # Can be specified in kb, mb, gb. Just a
+# # number indicates it's in bytes.
+# checksum-validation: yes # To validate the checksum of received
+# # packet. If csum validation is specified as
+# # "yes", then packet with invalid csum will not
+# # be processed by the engine stream/app layer.
+# # Warning: locally generated trafic can be
+# # generated without checksum due to hardware offload
+# # of checksum. You can control the handling of checksum
+# # on a per-interface basis via the 'checksum-checks'
+# # option
+# prealloc-sessions: 2k # 2k sessions prealloc'd per stream thread
+# midstream: false # don't allow midstream session pickups
+# async-oneside: false # don't enable async stream handling
+# inline: no # stream inline mode
+# max-synack-queued: 5 # Max different SYN/ACKs to queue
+#
+# reassembly:
+# memcap: 64mb # Can be specified in kb, mb, gb. Just a number
+# # indicates it's in bytes.
+# depth: 1mb # Can be specified in kb, mb, gb. Just a number
+# # indicates it's in bytes.
+# toserver-chunk-size: 2560 # inspect raw stream in chunks of at least
+# # this size. Can be specified in kb, mb,
+# # gb. Just a number indicates it's in bytes.
+# # The max acceptable size is 4024 bytes.
+# toclient-chunk-size: 2560 # inspect raw stream in chunks of at least
+# # this size. Can be specified in kb, mb,
+# # gb. Just a number indicates it's in bytes.
+# # The max acceptable size is 4024 bytes.
+# randomize-chunk-size: yes # Take a random value for chunk size around the specified value.
+# # This lower the risk of some evasion technics but could lead
+# # detection change between runs. It is set to 'yes' by default.
+# randomize-chunk-range: 10 # If randomize-chunk-size is active, the value of chunk-size is
+# # a random value between (1 - randomize-chunk-range/100)*randomize-chunk-size
+# # and (1 + randomize-chunk-range/100)*randomize-chunk-size. Default value
+# # of randomize-chunk-range is 10.
+#
+# raw: yes # 'Raw' reassembly enabled or disabled.
+# # raw is for content inspection by detection
+# # engine.
+#
+# chunk-prealloc: 250 # Number of preallocated stream chunks. These
+# # are used during stream inspection (raw).
+# segments: # Settings for reassembly segment pool.
+# - size: 4 # Size of the (data)segment for a pool
+# prealloc: 256 # Number of segments to prealloc and keep
+# # in the pool.
+#
+stream:
+ memcap: 32mb
+ checksum-validation: yes # reject wrong csums
+ inline: auto # auto will use inline mode in IPS mode, yes or no set it statically
+ reassembly:
+ memcap: 128mb
+ depth: 1mb # reassemble 1mb into a stream
+ toserver-chunk-size: 2560
+ toclient-chunk-size: 2560
+ randomize-chunk-size: yes
+ #randomize-chunk-range: 10
+ #raw: yes
+ #chunk-prealloc: 250
+ #segments:
+ # - size: 4
+ # prealloc: 256
+ # - size: 16
+ # prealloc: 512
+ # - size: 112
+ # prealloc: 512
+ # - size: 248
+ # prealloc: 512
+ # - size: 512
+ # prealloc: 512
+ # - size: 768
+ # prealloc: 1024
+ # - size: 1448
+ # prealloc: 1024
+ # - size: 65535
+ # prealloc: 128
+
+# Host table:
+#
+# Host table is used by tagging and per host thresholding subsystems.
+#
+host:
+ hash-size: 4096
+ prealloc: 1000
+ memcap: 16777216
+
+# Logging configuration. This is not about logging IDS alerts, but
+# IDS output about what its doing, errors, etc.
+logging:
+
+ # The default log level, can be overridden in an output section.
+ # Note that debug level logging will only be emitted if Suricata was
+ # compiled with the --enable-debug configure option.
+ #
+ # This value is overriden by the SC_LOG_LEVEL env var.
+ default-log-level: notice
+
+ # The default output format. Optional parameter, should default to
+ # something reasonable if not provided. Can be overriden in an
+ # output section. You can leave this out to get the default.
+ #
+ # This value is overriden by the SC_LOG_FORMAT env var.
+ #default-log-format: "[%i] %t - (%f:%l) <%d> (%n) -- "
+
+ # A regex to filter output. Can be overridden in an output section.
+ # Defaults to empty (no filter).
+ #
+ # This value is overriden by the SC_LOG_OP_FILTER env var.
+ default-output-filter:
+
+ # Define your logging outputs. If none are defined, or they are all
+ # disabled you will get the default - console output.
+ outputs:
+ - console:
+ enabled: yes
+ - file:
+ enabled: no
+ filename: /var/log/suricata.log
+ - syslog:
+ enabled: yes
+ facility: local5
+ format: "[%i] <%d> -- "
+
+# Tilera mpipe configuration. for use on Tilera TILE-Gx.
+mpipe:
+
+ # Load balancing modes: "static", "dynamic", "sticky", or "round-robin".
+ load-balance: dynamic
+
+ # Number of Packets in each ingress packet queue. Must be 128, 512, 2028 or 65536
+ iqueue-packets: 2048
+
+ # List of interfaces we will listen on.
+ inputs:
+ - interface: xgbe2
+ - interface: xgbe3
+ - interface: xgbe4
+
+
+ # Relative weight of memory for packets of each mPipe buffer size.
+ stack:
+ size128: 0
+ size256: 9
+ size512: 0
+ size1024: 0
+ size1664: 7
+ size4096: 0
+ size10386: 0
+ size16384: 0
+
+# PF_RING configuration. for use with native PF_RING support
+# for more info see http://www.ntop.org/PF_RING.html
+pfring:
+ - interface: eth0
+ # Number of receive threads (>1 will enable experimental flow pinned
+ # runmode)
+ threads: 1
+
+ # Default clusterid. PF_RING will load balance packets based on flow.
+ # All threads/processes that will participate need to have the same
+ # clusterid.
+ cluster-id: 99
+
+ # Default PF_RING cluster type. PF_RING can load balance per flow or per hash.
+ # This is only supported in versions of PF_RING > 4.1.1.
+ cluster-type: cluster_flow
+ # bpf filter for this interface
+ #bpf-filter: tcp
+ # Choose checksum verification mode for the interface. At the moment
+ # of the capture, some packets may be with an invalid checksum due to
+ # offloading to the network card of the checksum computation.
+ # Possible values are:
+ # - rxonly: only compute checksum for packets received by network card.
+ # - yes: checksum validation is forced
+ # - no: checksum validation is disabled
+ # - auto: suricata uses a statistical approach to detect when
+ # checksum off-loading is used. (default)
+ # Warning: 'checksum-validation' must be set to yes to have any validation
+ #checksum-checks: auto
+ # Second interface
+ #- interface: eth1
+ # threads: 3
+ # cluster-id: 93
+ # cluster-type: cluster_flow
+ # Put default values here
+ - interface: default
+ #threads: 2
+
+pcap:
+ - interface: eth0
+ # On Linux, pcap will try to use mmaped capture and will use buffer-size
+ # as total of memory used by the ring. So set this to something bigger
+ # than 1% of your bandwidth.
+ #buffer-size: 16777216
+ #bpf-filter: "tcp and port 25"
+ # Choose checksum verification mode for the interface. At the moment
+ # of the capture, some packets may be with an invalid checksum due to
+ # offloading to the network card of the checksum computation.
+ # Possible values are:
+ # - yes: checksum validation is forced
+ # - no: checksum validation is disabled
+ # - auto: suricata uses a statistical approach to detect when
+ # checksum off-loading is used. (default)
+ # Warning: 'checksum-validation' must be set to yes to have any validation
+ #checksum-checks: auto
+ # With some accelerator cards using a modified libpcap (like myricom), you
+ # may want to have the same number of capture threads as the number of capture
+ # rings. In this case, set up the threads variable to N to start N threads
+ # listening on the same interface.
+ #threads: 16
+ # set to no to disable promiscuous mode:
+ #promisc: no
+ # set snaplen, if not set it defaults to MTU if MTU can be known
+ # via ioctl call and to full capture if not.
+ #snaplen: 1518
+ # Put default values here
+ - interface: default
+ #checksum-checks: auto
+
+pcap-file:
+ # Possible values are:
+ # - yes: checksum validation is forced
+ # - no: checksum validation is disabled
+ # - auto: suricata uses a statistical approach to detect when
+ # checksum off-loading is used. (default)
+ # Warning: 'checksum-validation' must be set to yes to have checksum tested
+ checksum-checks: auto
+
+# For FreeBSD ipfw(8) divert(4) support.
+# Please make sure you have ipfw_load="YES" and ipdivert_load="YES"
+# in /etc/loader.conf or kldload'ing the appropriate kernel modules.
+# Additionally, you need to have an ipfw rule for the engine to see
+# the packets from ipfw. For Example:
+#
+# ipfw add 100 divert 8000 ip from any to any
+#
+# The 8000 above should be the same number you passed on the command
+# line, i.e. -d 8000
+#
+ipfw:
+
+ # Reinject packets at the specified ipfw rule number. This config
+ # option is the ipfw rule number AT WHICH rule processing continues
+ # in the ipfw processing system after the engine has finished
+ # inspecting the packet for acceptance. If no rule number is specified,
+ # accepted packets are reinjected at the divert rule which they entered
+ # and IPFW rule processing continues. No check is done to verify
+ # this will rule makes sense so care must be taken to avoid loops in ipfw.
+ #
+ ## The following example tells the engine to reinject packets
+ # back into the ipfw firewall AT rule number 5500:
+ #
+ # ipfw-reinjection-rule-number: 5500
+
+# Set the default rule path here to search for the files.
+# if not set, it will look at the current working dir
+default-rule-path: /etc/suricata/rules
+rule-files:
+ - botcc.rules
+ - ciarmy.rules
+ - compromised.rules
+ - drop.rules
+ - dshield.rules
+ - emerging-activex.rules
+ - emerging-attack_response.rules
+ - emerging-chat.rules
+ - emerging-current_events.rules
+ - emerging-dns.rules
+ - emerging-dos.rules
+ - emerging-exploit.rules
+ - emerging-ftp.rules
+ - emerging-games.rules
+ - emerging-icmp_info.rules
+# - emerging-icmp.rules
+ - emerging-imap.rules
+ - emerging-inappropriate.rules
+ - emerging-malware.rules
+ - emerging-misc.rules
+ - emerging-mobile_malware.rules
+ - emerging-netbios.rules
+ - emerging-p2p.rules
+ - emerging-policy.rules
+ - emerging-pop3.rules
+ - emerging-rpc.rules
+ - emerging-scada.rules
+ - emerging-scan.rules
+ - emerging-shellcode.rules
+ - emerging-smtp.rules
+ - emerging-snmp.rules
+ - emerging-sql.rules
+ - emerging-telnet.rules
+ - emerging-tftp.rules
+ - emerging-trojan.rules
+ - emerging-user_agents.rules
+ - emerging-voip.rules
+ - emerging-web_client.rules
+ - emerging-web_server.rules
+ - emerging-web_specific_apps.rules
+ - emerging-worm.rules
+ - tor.rules
+ - decoder-events.rules # available in suricata sources under rules dir
+ - stream-events.rules # available in suricata sources under rules dir
+ - http-events.rules # available in suricata sources under rules dir
+ - smtp-events.rules # available in suricata sources under rules dir
+ - dns-events.rules # available in suricata sources under rules dir
+ - tls-events.rules # available in suricata sources under rules dir
+
+classification-file: /etc/suricata/classification.config
+reference-config-file: /etc/suricata/reference.config
+
+# Holds variables that would be used by the engine.
+vars:
+
+ # Holds the address group vars that would be passed in a Signature.
+ # These would be retrieved during the Signature address parsing stage.
+ address-groups:
+
+ HOME_NET: "[192.168.0.0/16,10.0.0.0/8,172.16.0.0/12]"
+
+ EXTERNAL_NET: "!$HOME_NET"
+
+ HTTP_SERVERS: "$HOME_NET"
+
+ SMTP_SERVERS: "$HOME_NET"
+
+ SQL_SERVERS: "$HOME_NET"
+
+ DNS_SERVERS: "$HOME_NET"
+
+ TELNET_SERVERS: "$HOME_NET"
+
+ AIM_SERVERS: "$EXTERNAL_NET"
+
+ DNP3_SERVER: "$HOME_NET"
+
+ DNP3_CLIENT: "$HOME_NET"
+
+ MODBUS_CLIENT: "$HOME_NET"
+
+ MODBUS_SERVER: "$HOME_NET"
+
+ ENIP_CLIENT: "$HOME_NET"
+
+ ENIP_SERVER: "$HOME_NET"
+
+ # Holds the port group vars that would be passed in a Signature.
+ # These would be retrieved during the Signature port parsing stage.
+ port-groups:
+
+ HTTP_PORTS: "80"
+
+ SHELLCODE_PORTS: "!80"
+
+ ORACLE_PORTS: 1521
+
+ SSH_PORTS: 22
+
+ DNP3_PORTS: 20000
+
+# Set the order of alerts bassed on actions
+# The default order is pass, drop, reject, alert
+action-order:
+ - pass
+ - drop
+ - reject
+ - alert
+
+# IP Reputation
+#reputation-categories-file: /etc/suricata/iprep/categories.txt
+#default-reputation-path: /etc/suricata/iprep
+#reputation-files:
+# - reputation.list
+
+# Host specific policies for defragmentation and TCP stream
+# reassembly. The host OS lookup is done using a radix tree, just
+# like a routing table so the most specific entry matches.
+host-os-policy:
+ # Make the default policy windows.
+ windows: [0.0.0.0/0]
+ bsd: []
+ bsd-right: []
+ old-linux: []
+ linux: [10.0.0.0/8, 192.168.1.100, "8762:2352:6241:7245:E000:0000:0000:0000"]
+ old-solaris: []
+ solaris: ["::1"]
+ hpux10: []
+ hpux11: []
+ irix: []
+ macos: []
+ vista: []
+ windows2k3: []
+
+
+# Limit for the maximum number of asn1 frames to decode (default 256)
+asn1-max-frames: 256
+
+# When run with the option --engine-analysis, the engine will read each of
+# the parameters below, and print reports for each of the enabled sections
+# and exit. The reports are printed to a file in the default log dir
+# given by the parameter "default-log-dir", with engine reporting
+# subsection below printing reports in its own report file.
+engine-analysis:
+ # enables printing reports for fast-pattern for every rule.
+ rules-fast-pattern: yes
+ # enables printing reports for each rule
+ rules: yes
+
+#recursion and match limits for PCRE where supported
+pcre:
+ match-limit: 3500
+ match-limit-recursion: 1500
+
+# Holds details on the app-layer. The protocols section details each protocol.
+# Under each protocol, the default value for detection-enabled and "
+# parsed-enabled is yes, unless specified otherwise.
+# Each protocol covers enabling/disabling parsers for all ipprotos
+# the app-layer protocol runs on. For example "dcerpc" refers to the tcp
+# version of the protocol as well as the udp version of the protocol.
+# The option "enabled" takes 3 values - "yes", "no", "detection-only".
+# "yes" enables both detection and the parser, "no" disables both, and
+# "detection-only" enables detection only(parser disabled).
+app-layer:
+ protocols:
+ tls:
+ enabled: yes
+ detection-ports:
+ dp: 443
+
+ #no-reassemble: yes
+ dcerpc:
+ enabled: yes
+ ftp:
+ enabled: yes
+ ssh:
+ enabled: yes
+ smtp:
+ enabled: yes
+ imap:
+ enabled: detection-only
+ msn:
+ enabled: detection-only
+ smb:
+ enabled: yes
+ detection-ports:
+ dp: 139
+ # smb2 detection is disabled internally inside the engine.
+ #smb2:
+ # enabled: yes
+ dns:
+ # memcaps. Globally and per flow/state.
+ #global-memcap: 16mb
+ #state-memcap: 512kb
+
+ # How many unreplied DNS requests are considered a flood.
+ # If the limit is reached, app-layer-event:dns.flooded; will match.
+ #request-flood: 500
+
+ tcp:
+ enabled: yes
+ detection-ports:
+ dp: 53
+ udp:
+ enabled: yes
+ detection-ports:
+ dp: 53
+ http:
+ enabled: yes
+ # memcap: 64mb
+
+ ###########################################################################
+ # Configure libhtp.
+ #
+ #
+ # default-config: Used when no server-config matches
+ # personality: List of personalities used by default
+ # request-body-limit: Limit reassembly of request body for inspection
+ # by http_client_body & pcre /P option.
+ # response-body-limit: Limit reassembly of response body for inspection
+ # by file_data, http_server_body & pcre /Q option.
+ # double-decode-path: Double decode path section of the URI
+ # double-decode-query: Double decode query section of the URI
+ #
+ # server-config: List of server configurations to use if address matches
+ # address: List of ip addresses or networks for this block
+ # personalitiy: List of personalities used by this block
+ # request-body-limit: Limit reassembly of request body for inspection
+ # by http_client_body & pcre /P option.
+ # response-body-limit: Limit reassembly of response body for inspection
+ # by file_data, http_server_body & pcre /Q option.
+ # double-decode-path: Double decode path section of the URI
+ # double-decode-query: Double decode query section of the URI
+ #
+ # uri-include-all: Include all parts of the URI. By default the
+ # 'scheme', username/password, hostname and port
+ # are excluded. Setting this option to true adds
+ # all of them to the normalized uri as inspected
+ # by http_uri, urilen, pcre with /U and the other
+ # keywords that inspect the normalized uri.
+ # Note that this does not affect http_raw_uri.
+ # Also, note that including all was the default in
+ # 1.4 and 2.0beta1.
+ #
+ # meta-field-limit: Hard size limit for request and response size
+ # limits. Applies to request line and headers,
+ # response line and headers. Does not apply to
+ # request or response bodies. Default is 18k.
+ # If this limit is reached an event is raised.
+ #
+ # Currently Available Personalities:
+ # Minimal
+ # Generic
+ # IDS (default)
+ # IIS_4_0
+ # IIS_5_0
+ # IIS_5_1
+ # IIS_6_0
+ # IIS_7_0
+ # IIS_7_5
+ # Apache_2
+ ###########################################################################
+ libhtp:
+
+ default-config:
+ personality: IDS
+
+ # Can be specified in kb, mb, gb. Just a number indicates
+ # it's in bytes.
+ request-body-limit: 3072
+ response-body-limit: 3072
+
+ # inspection limits
+ request-body-minimal-inspect-size: 32kb
+ request-body-inspect-window: 4kb
+ response-body-minimal-inspect-size: 32kb
+ response-body-inspect-window: 4kb
+ # Take a random value for inspection sizes around the specified value.
+ # This lower the risk of some evasion technics but could lead
+ # detection change between runs. It is set to 'yes' by default.
+ #randomize-inspection-sizes: yes
+ # If randomize-inspection-sizes is active, the value of various
+ # inspection size will be choosen in the [1 - range%, 1 + range%]
+ # range
+ # Default value of randomize-inspection-range is 10.
+ #randomize-inspection-range: 10
+
+ # decoding
+ double-decode-path: no
+ double-decode-query: no
+
+ server-config:
+
+ #- apache:
+ # address: [192.168.1.0/24, 127.0.0.0/8, "::1"]
+ # personality: Apache_2
+ # # Can be specified in kb, mb, gb. Just a number indicates
+ # # it's in bytes.
+ # request-body-limit: 4096
+ # response-body-limit: 4096
+ # double-decode-path: no
+ # double-decode-query: no
+
+ #- iis7:
+ # address:
+ # - 192.168.0.0/24
+ # - 192.168.10.0/24
+ # personality: IIS_7_0
+ # # Can be specified in kb, mb, gb. Just a number indicates
+ # # it's in bytes.
+ # request-body-limit: 4096
+ # response-body-limit: 4096
+ # double-decode-path: no
+ # double-decode-query: no
+
+# Profiling settings. Only effective if Suricata has been built with the
+# the --enable-profiling configure flag.
+#
+profiling:
+ # Run profiling for every xth packet. The default is 1, which means we
+ # profile every packet. If set to 1000, one packet is profiled for every
+ # 1000 received.
+ #sample-rate: 1000
+
+ # rule profiling
+ rules:
+
+ # Profiling can be disabled here, but it will still have a
+ # performance impact if compiled in.
+ enabled: yes
+ filename: rule_perf.log
+ append: yes
+
+ # Sort options: ticks, avgticks, checks, matches, maxticks
+ sort: avgticks
+
+ # Limit the number of items printed at exit.
+ limit: 100
+
+ # per keyword profiling
+ keywords:
+ enabled: yes
+ filename: keyword_perf.log
+ append: yes
+
+ # packet profiling
+ packets:
+
+ # Profiling can be disabled here, but it will still have a
+ # performance impact if compiled in.
+ enabled: yes
+ filename: packet_stats.log
+ append: yes
+
+ # per packet csv output
+ csv:
+
+ # Output can be disabled here, but it will still have a
+ # performance impact if compiled in.
+ enabled: no
+ filename: packet_stats.csv
+
+ # profiling of locking. Only available when Suricata was built with
+ # --enable-profiling-locks.
+ locks:
+ enabled: no
+ filename: lock_stats.log
+ append: yes
+
+# Suricata core dump configuration. Limits the size of the core dump file to
+# approximately max-dump. The actual core dump size will be a multiple of the
+# page size. Core dumps that would be larger than max-dump are truncated. On
+# Linux, the actual core dump size may be a few pages larger than max-dump.
+# Setting max-dump to 0 disables core dumping.
+# Setting max-dump to 'unlimited' will give the full core dump file.
+# On 32-bit Linux, a max-dump value >= ULONG_MAX may cause the core dump size
+# to be 'unlimited'.
+
+coredump:
+ max-dump: unlimited
+
+napatech:
+ # The Host Buffer Allowance for all streams
+ # (-1 = OFF, 1 - 100 = percentage of the host buffer that can be held back)
+ hba: -1
+
+ # use_all_streams set to "yes" will query the Napatech service for all configured
+ # streams and listen on all of them. When set to "no" the streams config array
+ # will be used.
+ use-all-streams: yes
+
+ # The streams to listen on
+ streams: [1, 2, 3]
+
+# Includes. Files included here will be handled as if they were
+# inlined in this configuration file.
+#include: include1.yaml
+#include: include2.yaml
diff --git a/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/tmpfiles.suricata b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/tmpfiles.suricata
new file mode 100644
index 000000000..fbf37848e
--- /dev/null
+++ b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/tmpfiles.suricata
@@ -0,0 +1,2 @@
+#Type Path Mode UID GID Age Argument
+d /var/log/suricata 0755 root root
diff --git a/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/volatiles.03_suricata b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/volatiles.03_suricata
new file mode 100644
index 000000000..4627bd3b0
--- /dev/null
+++ b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/files/volatiles.03_suricata
@@ -0,0 +1,2 @@
+# <type> <owner> <group> <mode> <path> <linksource>
+d root root 0755 /var/log/suricata none
diff --git a/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/libhtp_0.5.37.bb b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/libhtp_0.5.37.bb
new file mode 100644
index 000000000..34e72e9cb
--- /dev/null
+++ b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/libhtp_0.5.37.bb
@@ -0,0 +1,27 @@
+SUMMARY = "LibHTP is a security-aware parser for the HTTP protocol and the related bits and pieces."
+
+require suricata.inc
+
+LIC_FILES_CHKSUM = "file://LICENSE;beginline=1;endline=2;md5=596ab7963a1a0e5198e5a1c4aa621843"
+
+SRC_URI = "git://github.com/OISF/libhtp.git;protocol=https;branch=0.5.x"
+SRCREV = "eaa2db29e65e7f2691c18a9022aeb5fb836ec5f1"
+
+DEPENDS = "zlib"
+
+inherit autotools-brokensep pkgconfig
+
+CFLAGS += "-D_DEFAULT_SOURCE"
+
+#S = "${WORKDIR}/suricata-${VER}/${BPN}"
+
+S = "${WORKDIR}/git"
+
+do_configure () {
+ cd ${S}
+ ./autogen.sh
+ oe_runconf
+}
+
+RDEPENDS_${PN} += "zlib"
+
diff --git a/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/suricata.inc b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/suricata.inc
new file mode 100644
index 000000000..85f419e48
--- /dev/null
+++ b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/suricata.inc
@@ -0,0 +1,8 @@
+HOMEPAGE = "http://suricata-ids.org/"
+SECTION = "security Monitor/Admin"
+LICENSE = "GPLv2"
+
+VER = "6.0.2"
+SRC_URI = "http://www.openinfosecfoundation.org/download/suricata-${VER}.tar.gz"
+
+SRC_URI[sha256sum] = "5e4647a07cb31b5d6d0049972a45375c137de908a964a44e2d6d231fa3ad4b52"
diff --git a/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/suricata_6.0.2.bb b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/suricata_6.0.2.bb
new file mode 100644
index 000000000..a4255d247
--- /dev/null
+++ b/meta-security/dynamic-layers/meta-rust/recipes-ids/suricata/suricata_6.0.2.bb
@@ -0,0 +1,193 @@
+SUMMARY = "The Suricata Engine is an Open Source Next Generation Intrusion Detection and Prevention Engine"
+
+require suricata.inc
+
+DEPENDS = "lz4 libhtp"
+
+LIC_FILES_CHKSUM = "file://LICENSE;beginline=1;endline=2;md5=c70d8d3310941dcdfcd1e02800a1f548"
+
+SRC_URI += " \
+ file://volatiles.03_suricata \
+ file://tmpfiles.suricata \
+ file://suricata.yaml \
+ file://suricata.service \
+ file://run-ptest \
+ file://fixup.patch \
+ "
+
+SRC_URI += " \
+ crate://crates.io/autocfg/1.0.1 \
+ crate://crates.io/semver-parser/0.7.0 \
+ crate://crates.io/arrayvec/0.4.12 \
+ crate://crates.io/ryu/1.0.5 \
+ crate://crates.io/libc/0.2.86 \
+ crate://crates.io/bitflags/1.2.1 \
+ crate://crates.io/version_check/0.9.2 \
+ crate://crates.io/memchr/2.3.4 \
+ crate://crates.io/nodrop/0.1.14 \
+ crate://crates.io/cfg-if/0.1.9 \
+ crate://crates.io/static_assertions/0.3.4 \
+ crate://crates.io/getrandom/0.1.16 \
+ crate://crates.io/cfg-if/1.0.0 \
+ crate://crates.io/siphasher/0.3.3 \
+ crate://crates.io/ppv-lite86/0.2.10 \
+ crate://crates.io/proc-macro-hack/0.5.19 \
+ crate://crates.io/proc-macro2/0.4.30 \
+ crate://crates.io/unicode-xid/0.1.0 \
+ crate://crates.io/syn/0.15.44 \
+ crate://crates.io/build_const/0.2.1 \
+ crate://crates.io/num-derive/0.2.5 \
+ crate://crates.io/base64/0.11.0 \
+ crate://crates.io/widestring/0.4.3 \
+ crate://crates.io/md5/0.7.0 \
+ crate://crates.io/uuid/0.8.2 \
+ crate://crates.io/byteorder/1.4.2 \
+ crate://crates.io/semver/0.9.0 \
+ crate://crates.io/nom/5.1.1 \
+ crate://crates.io/num-traits/0.2.14 \
+ crate://crates.io/num-integer/0.1.44 \
+ crate://crates.io/num-bigint/0.2.6 \
+ crate://crates.io/num-bigint/0.3.1 \
+ crate://crates.io/num-rational/0.2.4 \
+ crate://crates.io/num-complex/0.2.4 \
+ crate://crates.io/num-iter/0.1.42 \
+ crate://crates.io/phf_shared/0.8.0 \
+ crate://crates.io/crc/1.8.1 \
+ crate://crates.io/rustc_version/0.2.3 \
+ crate://crates.io/phf/0.8.0 \
+ crate://crates.io/lexical-core/0.6.7 \
+ crate://crates.io/time/0.1.44 \
+ crate://crates.io/quote/0.6.13 \
+ crate://crates.io/rand_core/0.5.1 \
+ crate://crates.io/rand_chacha/0.2.2 \
+ crate://crates.io/rand_pcg/0.2.1 \
+ crate://crates.io/num-traits/0.1.43 \
+ crate://crates.io/rand/0.7.3 \
+ crate://crates.io/enum_primitive/0.1.1 \
+ crate://crates.io/phf_generator/0.8.0 \
+ crate://crates.io/phf_codegen/0.8.0 \
+ crate://crates.io/tls-parser/0.9.4 \
+ crate://crates.io/num/0.2.1 \
+ crate://crates.io/rusticata-macros/2.1.0 \
+ crate://crates.io/ntp-parser/0.4.0 \
+ crate://crates.io/der-oid-macro/0.2.0 \
+ crate://crates.io/der-parser/3.0.4 \
+ crate://crates.io/ipsec-parser/0.5.0 \
+ crate://crates.io/x509-parser/0.6.5 \
+ crate://crates.io/der-parser/4.1.0 \
+ crate://crates.io/snmp-parser/0.6.0 \
+ crate://crates.io/kerberos-parser/0.5.0 \
+ crate://crates.io/wasi/0.10.0+wasi-snapshot-preview1 \
+ crate://crates.io/winapi/0.3.9 \
+ crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
+ crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
+ crate://crates.io/log/0.4.0 \
+ crate://crates.io/rand_hc/0.2.0 \
+ crate://crates.io/wasi/0.9.0+wasi-snapshot-preview1 \
+ "
+
+# test case support
+SRC_URI += " \
+ crate://crates.io/test-case/1.0.1 \
+ crate://crates.io/proc-macro2/1.0.1 \
+ crate://crates.io/quote/1.0.1 \
+ crate://crates.io/syn/1.0.1 \
+ crate://crates.io/unicode-xid/0.2.0 \
+ "
+
+inherit autotools pkgconfig python3native systemd ptest cargo
+
+EXTRA_OECONF += " --disable-debug \
+ --disable-gccmarch-native \
+ --enable-non-bundled-htp \
+ --disable-suricata-update \
+ --with-libhtp-includes=${STAGING_INCDIR} --with-libhtp-libraries=${STAGING_LIBDIR} \
+ "
+
+CARGO_SRC_DIR = "rust"
+
+B = "${S}"
+
+PACKAGECONFIG ??= "jansson file pcre yaml python pcap cap-ng net nfnetlink nss nspr "
+PACKAGECONFIG_append = " ${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'unittests', '', d)}"
+
+PACKAGECONFIG[pcre] = "--with-libpcre-includes=${STAGING_INCDIR} --with-libpcre-libraries=${STAGING_LIBDIR}, ,libpcre ,"
+PACKAGECONFIG[yaml] = "--with-libyaml-includes=${STAGING_INCDIR} --with-libyaml-libraries=${STAGING_LIBDIR}, ,libyaml ,"
+PACKAGECONFIG[pcap] = "--with-libpcap-includes=${STAGING_INCDIR} --with-libpcap-libraries=${STAGING_LIBDIR}, ,libpcap"
+PACKAGECONFIG[cap-ng] = "--with-libcap_ng-includes=${STAGING_INCDIR} --with-libcap_ng-libraries=${STAGING_LIBDIR}, ,libcap-ng , "
+PACKAGECONFIG[net] = "--with-libnet-includes=${STAGING_INCDIR} --with-libnet-libraries=${STAGING_LIBDIR}, , libnet,"
+PACKAGECONFIG[nfnetlink] = "--with-libnfnetlink-includes=${STAGING_INCDIR} --with-libnfnetlink-libraries=${STAGING_LIBDIR}, ,libnfnetlink ,"
+PACKAGECONFIG[nfq] = "--enable-nfqueue, --disable-nfqueue,libnetfilter-queue,"
+
+PACKAGECONFIG[jansson] = "--with-libjansson-includes=${STAGING_INCDIR} --with-libjansson-libraries=${STAGING_LIBDIR},,jansson, jansson"
+PACKAGECONFIG[file] = ",,file, file"
+PACKAGECONFIG[nss] = "--with-libnss-includes=${STAGING_INCDIR} --with-libnss-libraries=${STAGING_LIBDIR}, nss, nss,"
+PACKAGECONFIG[nspr] = "--with-libnspr-includes=${STAGING_INCDIR} --with-libnspr-libraries=${STAGING_LIBDIR}, nspr, nspr,"
+PACKAGECONFIG[python] = "--enable-python, --disable-python, python3, python3-core"
+PACKAGECONFIG[unittests] = "--enable-unittests, --disable-unittests,"
+
+export logdir = "${localstatedir}/log"
+
+CACHED_CONFIGUREVARS = "ac_cv_func_malloc_0_nonnull=yes ac_cv_func_realloc_0_nonnull=yes"
+
+do_configure_prepend () {
+ oe_runconf
+}
+
+do_compile () {
+ # we do this to bypass the make provided by this pkg
+ # patches Makefile to skip the subdir
+ cargo_do_compile
+
+ # Finish building
+ cd ${S}
+ make
+}
+
+do_install () {
+ install -d ${D}${sysconfdir}/suricata
+
+ oe_runmake install DESTDIR=${D}
+
+ install -d ${D}${sysconfdir}/suricata ${D}${sysconfdir}/default/volatiles
+ install -m 0644 ${WORKDIR}/volatiles.03_suricata ${D}${sysconfdir}/default/volatiles/03_suricata
+
+ install -m 0644 ${S}/threshold.config ${D}${sysconfdir}/suricata
+ install -m 0644 ${S}/suricata.yaml ${D}${sysconfdir}/suricata
+
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+ install -d ${D}${sysconfdir}/tmpfiles.d
+ install -m 0644 ${WORKDIR}/tmpfiles.suricata ${D}${sysconfdir}/tmpfiles.d/suricata.conf
+
+ install -d ${D}${systemd_unitdir}/system
+ sed -e s:/etc:${sysconfdir}:g \
+ -e s:/var/run:/run:g \
+ -e s:/var:${localstatedir}:g \
+ -e s:/usr/bin:${bindir}:g \
+ -e s:/bin/kill:${base_bindir}/kill:g \
+ -e s:/usr/lib:${libdir}:g \
+ ${WORKDIR}/suricata.service > ${D}${systemd_unitdir}/system/suricata.service
+ fi
+
+ # Remove /var/run as it is created on startup
+ rm -rf ${D}${localstatedir}/run
+
+ sed -i -e "s:#!.*$:#!${USRBINPATH}/env ${PYTHON_PN}:g" ${D}${bindir}/suricatasc
+ sed -i -e "s:#!.*$:#!${USRBINPATH}/env ${PYTHON_PN}:g" ${D}${bindir}/suricatactl
+}
+
+pkg_postinst_ontarget_${PN} () {
+if command -v systemd-tmpfiles >/dev/null; then
+ systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/suricata.conf
+elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then
+ ${sysconfdir}/init.d/populate-volatile.sh update
+fi
+}
+
+SYSTEMD_PACKAGES = "${PN}"
+
+PACKAGES =+ "${PN}-python"
+FILES_${PN} += "${systemd_unitdir} ${sysconfdir}/tmpfiles.d"
+FILES_${PN}-python = "${bindir}/suricatasc ${PYTHON_SITEPACKAGES_DIR}"
+
+CONFFILES_${PN} = "${sysconfdir}/suricata/suricata.yaml"
diff --git a/meta-security/kas/kas-security-base.yml b/meta-security/kas/kas-security-base.yml
index fca0ebe09..aa68336e1 100644
--- a/meta-security/kas/kas-security-base.yml
+++ b/meta-security/kas/kas-security-base.yml
@@ -28,6 +28,7 @@ repos:
meta-perl:
meta-python:
meta-networking:
+ meta-filesystems:
local_conf_header:
base: |
@@ -42,7 +43,6 @@ local_conf_header:
INHERIT += "rm_work"
BB_NUMBER_THREADS="24"
BB_NUMBER_PARSE_THREADS="12"
- PARALLEL_MAKE="-j 8"
BB_TASK_NICE_LEVEL = '5'
BB_TASK_NICE_LEVEL_task-testimage = '0'
BB_TASK_IONICE_LEVEL = '2.7'
diff --git a/meta-security/kas/kas-security-parsec.yml b/meta-security/kas/kas-security-parsec.yml
new file mode 100644
index 000000000..6152f0c1d
--- /dev/null
+++ b/meta-security/kas/kas-security-parsec.yml
@@ -0,0 +1,21 @@
+header:
+ version: 9
+ includes:
+ - kas-security-base.yml
+
+repos:
+ meta-security:
+ layers:
+ meta-parsec:
+
+ meta-rust:
+ url: https://github.com/meta-rust/meta-rust.git
+ refspec: master
+
+ meta-clang:
+ url: https://github.com/kraj/meta-clang.git
+ refspec: master
+
+local_conf_header:
+ meta-parsec: |
+ IMAGE_INSTALL_append = " parsec-service parsec-tool"
diff --git a/meta-security/kas/qemuarm-parsec.yml b/meta-security/kas/qemuarm-parsec.yml
new file mode 100644
index 000000000..cef281851
--- /dev/null
+++ b/meta-security/kas/qemuarm-parsec.yml
@@ -0,0 +1,6 @@
+header:
+ version: 8
+ includes:
+ - kas-security-parsec.yml
+
+machine: qemuarm
diff --git a/meta-security/kas/qemuarm64-parsec.yml b/meta-security/kas/qemuarm64-parsec.yml
new file mode 100644
index 000000000..9b593bc67
--- /dev/null
+++ b/meta-security/kas/qemuarm64-parsec.yml
@@ -0,0 +1,6 @@
+header:
+ version: 8
+ includes:
+ - kas-security-parsec.yml
+
+machine: qemuarm64
diff --git a/meta-security/kas/qemuppc-parsec.yml b/meta-security/kas/qemuppc-parsec.yml
new file mode 100644
index 000000000..1176d1369
--- /dev/null
+++ b/meta-security/kas/qemuppc-parsec.yml
@@ -0,0 +1,6 @@
+header:
+ version: 8
+ includes:
+ - kas-security-parsec.yml
+
+machine: qemuppc
diff --git a/meta-security/kas/qemux86-64-parsec.yml b/meta-security/kas/qemux86-64-parsec.yml
new file mode 100644
index 000000000..ec39c14eb
--- /dev/null
+++ b/meta-security/kas/qemux86-64-parsec.yml
@@ -0,0 +1,6 @@
+header:
+ version: 8
+ includes:
+ - kas-security-parsec.yml
+
+machine: qemux86-64
diff --git a/meta-security/kas/qemux86-parsec.yml b/meta-security/kas/qemux86-parsec.yml
new file mode 100644
index 000000000..370947d5f
--- /dev/null
+++ b/meta-security/kas/qemux86-parsec.yml
@@ -0,0 +1,6 @@
+header:
+ version: 8
+ includes:
+ - kas-security-parsec.yml
+
+machine: qemux86
diff --git a/meta-security/meta-hardening/conf/layer.conf b/meta-security/meta-hardening/conf/layer.conf
index 22d88749d..085ea45c5 100644
--- a/meta-security/meta-hardening/conf/layer.conf
+++ b/meta-security/meta-hardening/conf/layer.conf
@@ -8,6 +8,6 @@ BBFILE_COLLECTIONS += "harden-layer"
BBFILE_PATTERN_harden-layer = "^${LAYERDIR}/"
BBFILE_PRIORITY_harden-layer = "10"
-LAYERSERIES_COMPAT_harden-layer = "gatesgarth"
+LAYERSERIES_COMPAT_harden-layer = "hardknott"
LAYERDEPENDS_harden-layer = "core openembedded-layer"
diff --git a/meta-security/meta-integrity/conf/layer.conf b/meta-security/meta-integrity/conf/layer.conf
index 76374eb9b..ba028da7e 100644
--- a/meta-security/meta-integrity/conf/layer.conf
+++ b/meta-security/meta-integrity/conf/layer.conf
@@ -20,7 +20,7 @@ INTEGRITY_BASE := '${LAYERDIR}'
# interactive shell is enough.
OE_TERMINAL_EXPORTS += "INTEGRITY_BASE"
-LAYERSERIES_COMPAT_integrity = "gatesgarth"
+LAYERSERIES_COMPAT_integrity = "hardknott"
# ima-evm-utils depends on keyutils from meta-oe
LAYERDEPENDS_integrity = "core openembedded-layer"
diff --git a/meta-security/meta-integrity/recipes-core/initrdscripts/initramfs-framework-ima.bb b/meta-security/meta-integrity/recipes-core/initrdscripts/initramfs-framework-ima.bb
index 77f6f7cff..6471c532c 100644
--- a/meta-security/meta-integrity/recipes-core/initrdscripts/initramfs-framework-ima.bb
+++ b/meta-security/meta-integrity/recipes-core/initrdscripts/initramfs-framework-ima.bb
@@ -14,6 +14,9 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384
# to this recipe can just point towards one of its own files.
IMA_POLICY ?= "ima-policy-hashed"
+# Force proceed IMA procedure even 'no_ima' boot parameter is available.
+IMA_FORCE ?= "false"
+
SRC_URI = " file://ima"
inherit features_check
@@ -23,6 +26,8 @@ do_install () {
install -d ${D}/${sysconfdir}/ima
install -d ${D}/init.d
install ${WORKDIR}/ima ${D}/init.d/20-ima
+
+ sed -i "s/@@FORCE_IMA@@/${IMA_FORCE}/g" ${D}/init.d/20-ima
}
FILES_${PN} = "/init.d ${sysconfdir}"
diff --git a/meta-security/meta-integrity/recipes-core/initrdscripts/initramfs-framework-ima/ima b/meta-security/meta-integrity/recipes-core/initrdscripts/initramfs-framework-ima/ima
index cff26a335..897149494 100644
--- a/meta-security/meta-integrity/recipes-core/initrdscripts/initramfs-framework-ima/ima
+++ b/meta-security/meta-integrity/recipes-core/initrdscripts/initramfs-framework-ima/ima
@@ -2,11 +2,16 @@
#
# Loads IMA policy into the kernel.
+force_ima=@@FORCE_IMA@@
+
ima_enabled() {
- if [ "$bootparam_no_ima" = "true" ]; then
+ if [ "$force_ima" = "true" ]; then
+ return 0
+ elif [ "$bootparam_no_ima" = "true" ]; then
return 1
+ else
+ return 0
fi
- return 0
}
ima_run() {
diff --git a/meta-security/meta-integrity/recipes-security/ima-evm-keys/ima-evm-keys_1.0.bb b/meta-security/meta-integrity/recipes-security/ima-evm-keys/ima-evm-keys_1.0.bb
index 62685bbb0..7708aef2c 100644
--- a/meta-security/meta-integrity/recipes-security/ima-evm-keys/ima-evm-keys_1.0.bb
+++ b/meta-security/meta-integrity/recipes-security/ima-evm-keys/ima-evm-keys_1.0.bb
@@ -14,3 +14,4 @@ do_install () {
lnr ${D}${sysconfdir}/keys/x509_evm.der ${D}${sysconfdir}/keys/x509_ima.der
fi
}
+do_install[file-checksums] += "${@'${IMA_EVM_X509}:%s' % os.path.exists('${IMA_EVM_X509}')}"
diff --git a/meta-security/meta-integrity/recipes-security/ima_policy_appraise_all/ima-policy-appraise-all_1.0.bb b/meta-security/meta-integrity/recipes-security/ima_policy_appraise_all/ima-policy-appraise-all_1.0.bb
index da62a4cf8..84ea16120 100644
--- a/meta-security/meta-integrity/recipes-security/ima_policy_appraise_all/ima-policy-appraise-all_1.0.bb
+++ b/meta-security/meta-integrity/recipes-security/ima_policy_appraise_all/ima-policy-appraise-all_1.0.bb
@@ -2,19 +2,14 @@ SUMMARY = "IMA sample simple appraise policy "
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-# This policy file will get installed as /etc/ima/ima-policy.
-# It is located via the normal file search path, so a .bbappend
-# to this recipe can just point towards one of its own files.
-IMA_POLICY ?= "ima_policy_appraise_all"
-
-SRC_URI = " file://${IMA_POLICY}"
+SRC_URI = " file://ima_policy_appraise_all"
inherit features_check
REQUIRED_DISTRO_FEATURES = "ima"
do_install () {
install -d ${D}/${sysconfdir}/ima
- install ${WORKDIR}/${IMA_POLICY} ${D}/${sysconfdir}/ima/ima-policy
+ install ${WORKDIR}/ima_policy_appraise_all ${D}/${sysconfdir}/ima/ima-policy
}
FILES_${PN} = "${sysconfdir}/ima"
diff --git a/meta-security/meta-integrity/recipes-security/ima_policy_hashed/ima-policy-hashed_1.0.bb b/meta-security/meta-integrity/recipes-security/ima_policy_hashed/ima-policy-hashed_1.0.bb
index ebb042646..ff7169ef5 100644
--- a/meta-security/meta-integrity/recipes-security/ima_policy_hashed/ima-policy-hashed_1.0.bb
+++ b/meta-security/meta-integrity/recipes-security/ima_policy_hashed/ima-policy-hashed_1.0.bb
@@ -2,13 +2,8 @@ SUMMARY = "IMA sample hash policy"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-# This policy file will get installed as /etc/ima/ima-policy.
-# It is located via the normal file search path, so a .bbappend
-# to this recipe can just point towards one of its own files.
-IMA_POLICY ?= "ima_policy_hashed"
-
SRC_URI = " \
- file://${IMA_POLICY} \
+ file://ima_policy_hashed \
"
inherit features_check
@@ -16,7 +11,7 @@ REQUIRED_DISTRO_FEATURES = "ima"
do_install () {
install -d ${D}/${sysconfdir}/ima
- install ${WORKDIR}/${IMA_POLICY} ${D}/${sysconfdir}/ima/ima-policy
+ install ${WORKDIR}/ima_policy_hashed ${D}/${sysconfdir}/ima/ima-policy
}
FILES_${PN} = "${sysconfdir}/ima"
diff --git a/meta-security/meta-integrity/recipes-security/ima_policy_simple/ima-policy-simple_1.0.bb b/meta-security/meta-integrity/recipes-security/ima_policy_simple/ima-policy-simple_1.0.bb
index cb4b6b8ab..0e56aec51 100644
--- a/meta-security/meta-integrity/recipes-security/ima_policy_simple/ima-policy-simple_1.0.bb
+++ b/meta-security/meta-integrity/recipes-security/ima_policy_simple/ima-policy-simple_1.0.bb
@@ -2,19 +2,14 @@ SUMMARY = "IMA sample simple policy"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-# This policy file will get installed as /etc/ima/ima-policy.
-# It is located via the normal file search path, so a .bbappend
-# to this recipe can just point towards one of its own files.
-IMA_POLICY ?= "ima_policy_simple"
-
-SRC_URI = " file://${IMA_POLICY}"
+SRC_URI = " file://ima_policy_simple"
inherit features_check
REQUIRED_DISTRO_FEATURES = "ima"
do_install () {
install -d ${D}/${sysconfdir}/ima
- install ${WORKDIR}/${IMA_POLICY} ${D}/${sysconfdir}/ima/ima-policy
+ install ${WORKDIR}/ima_policy_simple ${D}/${sysconfdir}/ima/ima-policy
}
FILES_${PN} = "${sysconfdir}/ima"
diff --git a/meta-security/meta-parsec/README.md b/meta-security/meta-parsec/README.md
new file mode 100644
index 000000000..a2736b694
--- /dev/null
+++ b/meta-security/meta-parsec/README.md
@@ -0,0 +1,186 @@
+meta-parsec layer
+==============
+
+This layer contains recipes for the Parsec service with Mbed-Crypto,
+Pkcs11 and TPM providers and parsec tools.
+
+Dependencies
+============
+
+This layer depends on:
+
+ URI: git://git.openembedded.org/meta-openembedded
+ branch: master
+ revision: HEAD
+ prio: default
+
+ URI git://git.yoctoproject.org/meta-security
+ branch: master
+ revision: HEAD
+ prio: default
+
+ URI https://github.com/meta-rust/meta-rust.git
+ branch: master
+ revision: HEAD
+ prio: default
+
+ URI https://github.com/kraj/meta-clang.git
+ branch: master
+ revision: HEAD
+ prio: default
+
+Adding the meta-parsec layer to your build
+==========================================
+
+In order to use this layer, you need to make the build system aware of it.
+
+You can add it to the build system by adding the
+location of the meta-parsec layer to bblayers.conf, along with any
+other layers needed. e.g.:
+
+ BBLAYERS ?= " \
+ /path/to/yocto/meta \
+ /path/to/yocto/meta-yocto \
+ /path/to/yocto/meta-yocto-bsp \
+ /path/to/meta-openembedded/meta-oe \
+ /path/to/meta-openembedded/meta-python \
+ /path/to/meta-rust \
+ /path/to/meta-clang \
+ /path/to/meta-security/meta-tpm \
+ /path/to/meta-security/meta-parsec \
+ "
+
+To include the Parsec service into your image add following into the
+local.conf:
+
+ IMAGE_INSTALL_append = " parsec-service"
+
+ The Parsec service will be deployed into the image built with all the supported
+providers and with the default config file from the Parsec repository:
+https://github.com/parallaxsecond/parsec/blob/main/config.toml
+ The default Parsec service config file contains the MbedCrypto provider
+enabled. The config file needs to be updated to use the Parsec service
+with other providers like TPM or PKCS11. The required procedures are
+covered in Parsec documentation.
+https://parallaxsecond.github.io/parsec-book/
+
+Updating recipes
+================
+
+ The parsec-service and parsec-tool recipes use include files with lists
+of all rust crates required. This allows bitbake to fetch all the necessary
+dependent crates, as well as a pegged version of the crates.io index,
+to ensure maximum reproducibility.
+ It's recommended to use cargo-bitbake to generate include files for new
+versions of parsec recipes.
+https://github.com/meta-rust/cargo-bitbake
+
+ When you have crago-bitbake built:
+1. Checkout the required version of parsec repository.
+2. Run cargo-bitbake inside the repository. It will produce a BB file.
+3. Create a new include file with SRC_URI and LIC_FILES_CHKSUM from the BB file.
+
+Manual testing with runqemu
+===========================
+
+ This layer also contains a recipe for pasec-tool which can be used for
+manual testing of the Parsec service:
+
+ IMAGE_INSTALL_append += " parsec-tools"
+
+ There are a series of Parsec Demo videos showing how to use parsec-tool
+to test the Parsec service base functionality:
+https://www.youtube.com/watch?v=ido0CyUdMHM&list=PLKjl7IFAwc4S7WQqqphCsyy6DPDxJ2Skg&index=4
+
+ You can use runqemu to start a VM with a built image file and run
+manual tests with parsec-tool.
+
+1. MbedCrypto provider
+ The default Parsec service config file contains the MbedCrypto provider
+enabled. No changes required for manual testing.
+
+2. PKCS11 provider
+ The Software HSM can be used for manual testing of the provider by
+including it into your test image:
+
+ IMAGE_INSTALL_append += " softhsm"
+
+Inside the running VM:
+- Stop Parsec
+```bash
+systemctl stop parsec
+```
+- Initialise a token and notice the result slot number
+```bash
+softhsm2-util --init-token --slot 0 --label "Parsec Service" --pin 123456 --so-pin 123456
+```
+- Change the token ownership:
+```bash
+for d in /var/lib/softhsm/tokens/*; do chown -R parsec $d; done
+```
+- Enable the PKCS11 provider and update its parameters in the Parsec config file
+/etc/parsec/config.toml
+```
+library_path = "/usr/lib/softhsm/libsofthsm2.so"
+slot_number = <slot number>
+user_pin = "123456"
+```
+- Start Parsec
+```bash
+systemctl start parsec
+```
+
+3. TPM provider
+ The IBM Software TPM service can be used for manual testing of the provider by
+including it into your test image:
+
+ IMAGE_INSTALL_append += " ibmswtpm2 tpm2-tools libtss2 libtss2-tcti-mssim"
+
+Inside the running VM:
+- Stop Parsec
+```bash
+systemctl stop parsec
+```
+- Start and configure the Software TPM server
+```bash
+ /usr/bin/tpm_server &
+ sleep 5
+ /usr/bin/tpm2_startup -c -T mssim
+ /usr/bin/tpm2_changeauth -c owner tpm_pass
+```
+- Enable the TPM provider and update its parameters in the Parsec config file
+/etc/parsec/config.toml
+```
+tcti = "mssim"
+owner_hierarchy_auth = "hex:74706d5f70617373"
+```
+- Start Parsec
+```bash
+systemctl start parsec
+```
+
+Maintenance
+-----------
+
+Send pull requests, patches, comments or questions to yocto@yoctoproject.org
+
+When sending single patches, please using something like:
+'git send-email -1 --to yocto@yoctoproject.org --subject-prefix=meta-parsec][PATCH'
+
+These values can be set as defaults for this repository:
+
+$ git config sendemail.to yocto@yoctoproject.org
+$ git config format.subjectPrefix meta-parsec][PATCH
+
+Now you can just do 'git send-email origin/master' to send all local patches.
+
+Maintainers: Anton Antonov <Anton.Antonov@arm.com>
+ Armin Kuster <akuster808@gmail.com>
+
+
+License
+=======
+
+All metadata is MIT licensed unless otherwise stated. Source code included
+in tree for individual recipes is under the LICENSE stated in each recipe
+(.bb file) unless otherwise stated.
diff --git a/meta-security/meta-parsec/conf/layer.conf b/meta-security/meta-parsec/conf/layer.conf
new file mode 100644
index 000000000..2d4aa12fb
--- /dev/null
+++ b/meta-security/meta-parsec/conf/layer.conf
@@ -0,0 +1,14 @@
+# We have a conf and classes directory, add to BBPATH
+BBPATH .= ":${LAYERDIR}"
+
+# We have a recipes directory, add to BBFILES
+BBFILES += "${LAYERDIR}/recipes*/*/*.bb ${LAYERDIR}/recipes*/*/*.bbappend"
+
+BBFILE_COLLECTIONS += "parsec-layer"
+BBFILE_PATTERN_parsec-layer = "^${LAYERDIR}/"
+BBFILE_PRIORITY_parsec-layer = "5"
+
+LAYERSERIES_COMPAT_parsec-layer = "hardknott gatesgarth"
+
+LAYERDEPENDS_parsec-layer = "core rust-layer clang-layer tpm-layer"
+BBLAYERS_LAYERINDEX_NAME_parsec-layer = "meta-parsec"
diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-service/files/cryptoki.patch b/meta-security/meta-parsec/recipes-parsec/parsec-service/files/cryptoki.patch
new file mode 100644
index 000000000..c23447967
--- /dev/null
+++ b/meta-security/meta-parsec/recipes-parsec/parsec-service/files/cryptoki.patch
@@ -0,0 +1,18 @@
+
+Use cryptoki v0.1.1 which supports the "generate-bindings" feature
+required for building Parsec service 0.7.0 in Yocto.
+
+Signed-off-by: Anton Antonov <Anton.Antonov@arm.com>
+Upstream-Status: Submitted
+
+--- a/Cargo.toml 2021-04-01 10:29:50.333687763 +0100
++++ b/Cargo.toml 2021-04-01 10:27:13.051860002 +0100
+@@ -37,7 +37,7 @@
+ version = "1.3.1"
+
+ [dependencies.cryptoki]
+-version = "0.1.0"
++version = "0.1.1"
+ features = ["psa-crypto-conversions"]
+ optional = true
+
diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-service/files/parsec-tmpfiles.conf b/meta-security/meta-parsec/recipes-parsec/parsec-service/files/parsec-tmpfiles.conf
new file mode 100644
index 000000000..fe576a27f
--- /dev/null
+++ b/meta-security/meta-parsec/recipes-parsec/parsec-service/files/parsec-tmpfiles.conf
@@ -0,0 +1,2 @@
+#Type Path Mode User Group Age Argument
+d /run/parsec 755 parsec parsec - -
diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-service/files/parsec_init b/meta-security/meta-parsec/recipes-parsec/parsec-service/files/parsec_init
new file mode 100755
index 000000000..58a289727
--- /dev/null
+++ b/meta-security/meta-parsec/recipes-parsec/parsec-service/files/parsec_init
@@ -0,0 +1,63 @@
+#! /bin/sh -e
+
+# ------------------------------------------------------------------------------
+# Copyright (c) 2021, Arm Limited, All Rights Reserved
+# SPDX-License-Identifier: Apache-2.0
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ------------------------------------------------------------------------------
+
+# Parsec Service SysV init script
+
+test -x /usr/libexec/parsec/parsec || exit 0
+
+case "$1" in
+ start)
+ echo -n "Starting Parsec daemon: "
+ if [ ! -f /etc/parsec/config.toml ]; then
+ echo "There is no Parsec service configuration file."
+ else
+ if [ ! -d /run/parsec ]; then
+ mkdir /run/parsec
+ chown parsec:parsec /run/parsec
+ chmod 755 /run/parsec
+ fi
+ # start-stop-daemon used in poky busybox doesn't support
+ # '--chdir' parameter. So, let's do it manually
+ cd /var/lib/parsec
+ RUST_LOG=info start-stop-daemon --oknodo --start --background \
+ --chuid parsec:parsec --exec /usr/libexec/parsec/parsec \
+ -- --config /etc/parsec/config.toml
+ echo "parsec."
+ fi
+ ;;
+ stop)
+ echo -n "Stopping Parsec daemon: "
+ start-stop-daemon --oknodo --stop --exec /usr/libexec/parsec/parsec
+ echo "parsec."
+ ;;
+ reload)
+ echo -n "Reloading Parsec daemon: "
+ start-stop-daemon --stop --signal SIGHUP --exec /usr/libexec/parsec/parsec
+ echo "parsec."
+ ;;
+ restart|force-reload)
+ $0 stop
+ $0 start
+ ;;
+ *)
+ echo "Usage: /etc/init.d/parsec {start|stop|restart|reload|force-reload}"
+ exit 1
+esac
+
+exit 0
diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-service/files/systemd.patch b/meta-security/meta-parsec/recipes-parsec/parsec-service/files/systemd.patch
new file mode 100644
index 000000000..c01ff065c
--- /dev/null
+++ b/meta-security/meta-parsec/recipes-parsec/parsec-service/files/systemd.patch
@@ -0,0 +1,19 @@
+
+Run the Parsec service as parsec user in /var/lib/parsec/ working directory.
+
+Signed-off-by: Anton Antonov <Anton.Antonov@arm.com>
+Upstream-Status: Inappropriate [deployment configuration]
+
+--- a/systemd-daemon/parsec.service 2021-03-28 18:34:18.703196235 +0100
++++ b/systemd-daemon/parsec.service 2021-03-28 18:35:14.279830299 +0100
+@@ -3,7 +3,9 @@
+ Documentation=https://parallaxsecond.github.io/parsec-book/parsec_service/install_parsec_linux.html
+
+ [Service]
+-WorkingDirectory=/home/parsec/
++User=parsec
++Group=parsec
++WorkingDirectory=/var/lib/parsec/
+ ExecStart=/usr/libexec/parsec/parsec --config /etc/parsec/config.toml
+
+ [Install]
diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.7.0.bb b/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.7.0.bb
new file mode 100644
index 000000000..0e149558c
--- /dev/null
+++ b/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.7.0.bb
@@ -0,0 +1,67 @@
+SUMMARY = "Platform AbstRaction for SECurity Daemon"
+HOMEPAGE = "https://github.com/parallaxsecond/parsec"
+LICENSE = "Apache-2.0"
+
+inherit cargo
+
+SRC_URI += "crate://crates.io/parsec-service/${PV} \
+ file://parsec_init \
+ file://systemd.patch \
+ file://parsec-tmpfiles.conf \
+"
+
+DEPENDS = "tpm2-tss"
+TOOLCHAIN = "clang"
+
+CARGO_BUILD_FLAGS += " --features all-providers,cryptoki/generate-bindings,tss-esapi/generate-bindings"
+
+inherit systemd
+SYSTEMD_SERVICE_${PN} = "parsec.service"
+
+inherit update-rc.d
+INITSCRIPT_NAME = "parsec"
+
+# A local file can be defined in build/local.conf
+# The file should also be included into SRC_URI then
+PARSEC_CONFIG ?= "${S}/config.toml"
+
+do_install_append () {
+ # Binaries
+ install -d -m 700 -o parsec -g parsec "${D}${libexecdir}/parsec"
+ install -m 700 -o parsec -g parsec "${WORKDIR}/build/target/${CARGO_TARGET_SUBDIR}/parsec" ${D}${libexecdir}/parsec/parsec
+
+ # Config file
+ install -d -m 700 -o parsec -g parsec "${D}${sysconfdir}/parsec"
+ install -m 400 -o parsec -g parsec "${PARSEC_CONFIG}" ${D}${sysconfdir}/parsec/config.toml
+
+ # Data dir
+ install -d -m 700 -o parsec -g parsec "${D}${localstatedir}/lib/parsec"
+
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+ install -d ${D}${systemd_unitdir}/system
+ install -m 644 ${S}/systemd-daemon/parsec.service ${D}${systemd_unitdir}/system
+
+ install -d ${D}${libdir}/tmpfiles.d
+ install -m 644 ${WORKDIR}/parsec-tmpfiles.conf ${D}${libdir}/tmpfiles.d
+ fi
+
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
+ install -d ${D}${sysconfdir}/init.d
+ install -m 755 ${WORKDIR}/parsec_init ${D}${sysconfdir}/init.d/parsec
+ fi
+}
+
+inherit useradd
+USERADD_PACKAGES = "${PN}"
+USERADD_PARAM_${PN} = "-r -g parsec -s /bin/false -d ${localstatedir}/lib/parsec parsec"
+GROUPADD_PARAM_${PN} = "-r parsec"
+
+FILES_${PN} += " \
+ ${sysconfdir}/parsec/config.toml \
+ ${libexecdir}/parsec/parsec \
+ ${systemd_unitdir}/system/parsec.service \
+ ${libdir}/tmpfiles.d/parsec-tmpfiles.conf \
+ ${sysconfdir}/init.d/parsec \
+"
+
+require parsec-service_${PV}.inc
diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.7.0.inc b/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.7.0.inc
new file mode 100644
index 000000000..59a47f92a
--- /dev/null
+++ b/meta-security/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.7.0.inc
@@ -0,0 +1,147 @@
+# This file is created from parsec-service repository Cargo.lock using cargo-bitbake tool
+
+SRC_URI += " \
+ crate://crates.io/aho-corasick/0.7.15 \
+ crate://crates.io/ansi_term/0.11.0 \
+ crate://crates.io/anyhow/1.0.38 \
+ crate://crates.io/atty/0.2.14 \
+ crate://crates.io/autocfg/1.0.1 \
+ crate://crates.io/base64/0.12.3 \
+ crate://crates.io/base64/0.13.0 \
+ crate://crates.io/bincode/1.3.2 \
+ crate://crates.io/bindgen/0.56.0 \
+ crate://crates.io/bindgen/0.57.0 \
+ crate://crates.io/bitfield/0.13.2 \
+ crate://crates.io/bitflags/1.2.1 \
+ crate://crates.io/byteorder/1.3.4 \
+ crate://crates.io/bytes/0.5.6 \
+ crate://crates.io/bytes/1.0.1 \
+ crate://crates.io/cc/1.0.67 \
+ crate://crates.io/cexpr/0.4.0 \
+ crate://crates.io/cfg-if/1.0.0 \
+ crate://crates.io/clang-sys/1.1.1 \
+ crate://crates.io/clap/2.33.3 \
+ crate://crates.io/cmake/0.1.45 \
+ crate://crates.io/cryptoauthlib-sys/0.1.0 \
+ crate://crates.io/cryptoki-sys/0.1.1 \
+ crate://crates.io/cryptoki/0.1.1 \
+ crate://crates.io/derivative/2.2.0 \
+ crate://crates.io/either/1.6.1 \
+ crate://crates.io/enumflags2/0.6.4 \
+ crate://crates.io/enumflags2_derive/0.6.4 \
+ crate://crates.io/env_logger/0.8.3 \
+ crate://crates.io/fixedbitset/0.2.0 \
+ crate://crates.io/getrandom/0.2.2 \
+ crate://crates.io/glob/0.3.0 \
+ crate://crates.io/hashbrown/0.9.1 \
+ crate://crates.io/heck/0.3.2 \
+ crate://crates.io/hermit-abi/0.1.18 \
+ crate://crates.io/hex/0.4.3 \
+ crate://crates.io/hostname-validator/1.0.0 \
+ crate://crates.io/humantime/2.1.0 \
+ crate://crates.io/indexmap/1.6.2 \
+ crate://crates.io/itertools/0.8.2 \
+ crate://crates.io/itertools/0.9.0 \
+ crate://crates.io/lazy_static/1.4.0 \
+ crate://crates.io/lazycell/1.3.0 \
+ crate://crates.io/libc/0.2.89 \
+ crate://crates.io/libloading/0.7.0 \
+ crate://crates.io/log/0.4.14 \
+ crate://crates.io/mbox/0.5.0 \
+ crate://crates.io/memchr/2.3.4 \
+ crate://crates.io/multimap/0.8.3 \
+ crate://crates.io/nom/5.1.2 \
+ crate://crates.io/num-bigint/0.3.2 \
+ crate://crates.io/num-complex/0.3.1 \
+ crate://crates.io/num-derive/0.3.3 \
+ crate://crates.io/num-integer/0.1.44 \
+ crate://crates.io/num-iter/0.1.42 \
+ crate://crates.io/num-rational/0.3.2 \
+ crate://crates.io/num-traits/0.2.14 \
+ crate://crates.io/num/0.3.1 \
+ crate://crates.io/num_cpus/1.13.0 \
+ crate://crates.io/oid/0.1.1 \
+ crate://crates.io/parsec-interface/0.24.0 \
+ crate://crates.io/peeking_take_while/0.1.2 \
+ crate://crates.io/petgraph/0.5.1 \
+ crate://crates.io/picky-asn1-der/0.2.4 \
+ crate://crates.io/picky-asn1-x509/0.4.0 \
+ crate://crates.io/picky-asn1/0.3.1 \
+ crate://crates.io/pkg-config/0.3.19 \
+ crate://crates.io/ppv-lite86/0.2.10 \
+ crate://crates.io/proc-macro-error-attr/1.0.4 \
+ crate://crates.io/proc-macro-error/1.0.4 \
+ crate://crates.io/proc-macro2/1.0.24 \
+ crate://crates.io/prost-build/0.6.1 \
+ crate://crates.io/prost-build/0.7.0 \
+ crate://crates.io/prost-derive/0.6.1 \
+ crate://crates.io/prost-derive/0.7.0 \
+ crate://crates.io/prost-types/0.6.1 \
+ crate://crates.io/prost-types/0.7.0 \
+ crate://crates.io/prost/0.6.1 \
+ crate://crates.io/prost/0.7.0 \
+ crate://crates.io/psa-crypto-sys/0.8.0 \
+ crate://crates.io/psa-crypto/0.8.0 \
+ crate://crates.io/quote/1.0.9 \
+ crate://crates.io/rand/0.8.3 \
+ crate://crates.io/rand_chacha/0.3.0 \
+ crate://crates.io/rand_core/0.6.2 \
+ crate://crates.io/rand_hc/0.3.0 \
+ crate://crates.io/redox_syscall/0.2.5 \
+ crate://crates.io/regex-syntax/0.6.23 \
+ crate://crates.io/regex/1.4.5 \
+ crate://crates.io/remove_dir_all/0.5.3 \
+ crate://crates.io/rust-cryptoauthlib/0.1.0 \
+ crate://crates.io/rustc-hash/1.1.0 \
+ crate://crates.io/rustc_version/0.2.3 \
+ crate://crates.io/same-file/1.0.6 \
+ crate://crates.io/sd-notify/0.2.0 \
+ crate://crates.io/secrecy/0.7.0 \
+ crate://crates.io/semver-parser/0.7.0 \
+ crate://crates.io/semver/0.9.0 \
+ crate://crates.io/serde/1.0.124 \
+ crate://crates.io/serde_bytes/0.11.5 \
+ crate://crates.io/serde_derive/1.0.124 \
+ crate://crates.io/shlex/0.1.1 \
+ crate://crates.io/signal-hook-registry/1.3.0 \
+ crate://crates.io/signal-hook/0.3.7 \
+ crate://crates.io/stable_deref_trait/1.2.0 \
+ crate://crates.io/strsim/0.8.0 \
+ crate://crates.io/structopt-derive/0.4.14 \
+ crate://crates.io/structopt/0.3.21 \
+ crate://crates.io/strum_macros/0.19.4 \
+ crate://crates.io/syn/1.0.64 \
+ crate://crates.io/synstructure/0.12.4 \
+ crate://crates.io/tempfile/3.2.0 \
+ crate://crates.io/termcolor/1.1.2 \
+ crate://crates.io/textwrap/0.11.0 \
+ crate://crates.io/thiserror-impl/1.0.24 \
+ crate://crates.io/thiserror/1.0.24 \
+ crate://crates.io/threadpool/1.8.1 \
+ crate://crates.io/toml/0.5.8 \
+ crate://crates.io/tss-esapi-sys/0.1.0 \
+ crate://crates.io/tss-esapi/5.0.0 \
+ crate://crates.io/unicode-segmentation/1.7.1 \
+ crate://crates.io/unicode-width/0.1.8 \
+ crate://crates.io/unicode-xid/0.2.1 \
+ crate://crates.io/users/0.11.0 \
+ crate://crates.io/uuid/0.8.2 \
+ crate://crates.io/vec_map/0.8.2 \
+ crate://crates.io/version/3.0.0 \
+ crate://crates.io/version_check/0.9.3 \
+ crate://crates.io/walkdir/2.3.1 \
+ crate://crates.io/wasi/0.10.2+wasi-snapshot-preview1 \
+ crate://crates.io/which/3.1.1 \
+ crate://crates.io/which/4.0.2 \
+ crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
+ crate://crates.io/winapi-util/0.1.5 \
+ crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
+ crate://crates.io/winapi/0.3.9 \
+ crate://crates.io/zeroize/1.2.0 \
+ crate://crates.io/zeroize_derive/1.0.1 \
+ file://cryptoki.patch \
+"
+
+LIC_FILES_CHKSUM = " \
+ file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
+"
diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.3.0.bb b/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.3.0.bb
new file mode 100644
index 000000000..35c65c02a
--- /dev/null
+++ b/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.3.0.bb
@@ -0,0 +1,17 @@
+SUMMARY = "Parsec Command Line Interface"
+HOMEPAGE = "https://github.com/parallaxsecond/parsec-tool"
+LICENSE = "Apache-2.0"
+
+inherit cargo
+
+SRC_URI += "crate://crates.io/parsec-tool/${PV} \
+"
+
+TOOLCHAIN = "clang"
+
+do_install() {
+ install -d ${D}/${bindir}
+ install -m 755 "${B}/target/${TARGET_SYS}/release/parsec-tool" "${D}${bindir}/parsec-tool"
+}
+
+require parsec-tool_${PV}.inc
diff --git a/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.3.0.inc b/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.3.0.inc
new file mode 100644
index 000000000..9560dcff1
--- /dev/null
+++ b/meta-security/meta-parsec/recipes-parsec/parsec-tool/parsec-tool_0.3.0.inc
@@ -0,0 +1,127 @@
+# This file is created from parsec-tool repository Cargo.lock using cargo-bitbake tool
+
+SRC_URI += " \
+ crate://crates.io/aho-corasick/0.7.15 \
+ crate://crates.io/ansi_term/0.11.0 \
+ crate://crates.io/ansi_term/0.12.1 \
+ crate://crates.io/anyhow/1.0.38 \
+ crate://crates.io/atty/0.2.14 \
+ crate://crates.io/autocfg/1.0.1 \
+ crate://crates.io/base64/0.13.0 \
+ crate://crates.io/bincode/1.3.1 \
+ crate://crates.io/bitflags/1.2.1 \
+ crate://crates.io/block-buffer/0.9.0 \
+ crate://crates.io/byteorder/1.4.2 \
+ crate://crates.io/bytes/0.5.6 \
+ crate://crates.io/cc/1.0.66 \
+ crate://crates.io/cfg-if/1.0.0 \
+ crate://crates.io/clap/2.33.3 \
+ crate://crates.io/clap/3.0.0-beta.2 \
+ crate://crates.io/clap_derive/3.0.0-beta.2 \
+ crate://crates.io/cmake/0.1.45 \
+ crate://crates.io/cpuid-bool/0.1.2 \
+ crate://crates.io/derivative/2.2.0 \
+ crate://crates.io/digest/0.9.0 \
+ crate://crates.io/either/1.6.1 \
+ crate://crates.io/env_logger/0.8.3 \
+ crate://crates.io/fixedbitset/0.2.0 \
+ crate://crates.io/form_urlencoded/1.0.0 \
+ crate://crates.io/generic-array/0.14.4 \
+ crate://crates.io/getrandom/0.2.2 \
+ crate://crates.io/hashbrown/0.9.1 \
+ crate://crates.io/heck/0.3.2 \
+ crate://crates.io/hermit-abi/0.1.18 \
+ crate://crates.io/humantime/2.1.0 \
+ crate://crates.io/idna/0.2.1 \
+ crate://crates.io/indexmap/1.6.1 \
+ crate://crates.io/itertools/0.8.2 \
+ crate://crates.io/lazy_static/1.4.0 \
+ crate://crates.io/libc/0.2.86 \
+ crate://crates.io/log/0.4.14 \
+ crate://crates.io/matches/0.1.8 \
+ crate://crates.io/memchr/2.3.4 \
+ crate://crates.io/multimap/0.8.2 \
+ crate://crates.io/num-bigint/0.3.1 \
+ crate://crates.io/num-complex/0.3.1 \
+ crate://crates.io/num-derive/0.3.3 \
+ crate://crates.io/num-integer/0.1.44 \
+ crate://crates.io/num-iter/0.1.42 \
+ crate://crates.io/num-rational/0.3.2 \
+ crate://crates.io/num-traits/0.2.14 \
+ crate://crates.io/num/0.3.1 \
+ crate://crates.io/oid/0.1.1 \
+ crate://crates.io/once_cell/1.5.2 \
+ crate://crates.io/opaque-debug/0.3.0 \
+ crate://crates.io/os_str_bytes/2.4.0 \
+ crate://crates.io/parsec-client/0.12.0 \
+ crate://crates.io/parsec-interface/0.24.0 \
+ crate://crates.io/pem/0.8.3 \
+ crate://crates.io/percent-encoding/2.1.0 \
+ crate://crates.io/petgraph/0.5.1 \
+ crate://crates.io/picky-asn1-der/0.2.4 \
+ crate://crates.io/picky-asn1/0.3.1 \
+ crate://crates.io/ppv-lite86/0.2.10 \
+ crate://crates.io/proc-macro-error-attr/1.0.4 \
+ crate://crates.io/proc-macro-error/1.0.4 \
+ crate://crates.io/proc-macro2/1.0.24 \
+ crate://crates.io/prost-build/0.6.1 \
+ crate://crates.io/prost-derive/0.6.1 \
+ crate://crates.io/prost-types/0.6.1 \
+ crate://crates.io/prost/0.6.1 \
+ crate://crates.io/psa-crypto-sys/0.8.0 \
+ crate://crates.io/psa-crypto/0.8.0 \
+ crate://crates.io/quote/1.0.9 \
+ crate://crates.io/rand/0.8.3 \
+ crate://crates.io/rand_chacha/0.3.0 \
+ crate://crates.io/rand_core/0.6.2 \
+ crate://crates.io/rand_hc/0.3.0 \
+ crate://crates.io/redox_syscall/0.2.5 \
+ crate://crates.io/regex-syntax/0.6.22 \
+ crate://crates.io/regex/1.4.3 \
+ crate://crates.io/remove_dir_all/0.5.3 \
+ crate://crates.io/same-file/1.0.6 \
+ crate://crates.io/secrecy/0.7.0 \
+ crate://crates.io/serde/1.0.123 \
+ crate://crates.io/serde_bytes/0.11.5 \
+ crate://crates.io/serde_derive/1.0.123 \
+ crate://crates.io/sha2/0.9.3 \
+ crate://crates.io/strsim/0.10.0 \
+ crate://crates.io/strsim/0.8.0 \
+ crate://crates.io/structopt-derive/0.4.14 \
+ crate://crates.io/structopt/0.3.21 \
+ crate://crates.io/syn/1.0.60 \
+ crate://crates.io/synstructure/0.12.4 \
+ crate://crates.io/tempfile/3.2.0 \
+ crate://crates.io/termcolor/1.1.2 \
+ crate://crates.io/textwrap/0.11.0 \
+ crate://crates.io/textwrap/0.12.1 \
+ crate://crates.io/thiserror-impl/1.0.23 \
+ crate://crates.io/thiserror/1.0.23 \
+ crate://crates.io/thread_local/1.1.3 \
+ crate://crates.io/tinyvec/1.1.1 \
+ crate://crates.io/tinyvec_macros/0.1.0 \
+ crate://crates.io/typenum/1.12.0 \
+ crate://crates.io/unicode-bidi/0.3.4 \
+ crate://crates.io/unicode-normalization/0.1.17 \
+ crate://crates.io/unicode-segmentation/1.7.1 \
+ crate://crates.io/unicode-width/0.1.8 \
+ crate://crates.io/unicode-xid/0.2.1 \
+ crate://crates.io/url/2.2.0 \
+ crate://crates.io/users/0.10.0 \
+ crate://crates.io/uuid/0.8.2 \
+ crate://crates.io/vec_map/0.8.2 \
+ crate://crates.io/version_check/0.9.2 \
+ crate://crates.io/walkdir/2.3.1 \
+ crate://crates.io/wasi/0.10.2+wasi-snapshot-preview1 \
+ crate://crates.io/which/3.1.1 \
+ crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
+ crate://crates.io/winapi-util/0.1.5 \
+ crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
+ crate://crates.io/winapi/0.3.9 \
+ crate://crates.io/zeroize/1.2.0 \
+ crate://crates.io/zeroize_derive/1.0.1 \
+"
+
+LIC_FILES_CHKSUM = " \
+ file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
+"
diff --git a/meta-security/meta-security-compliance/conf/layer.conf b/meta-security/meta-security-compliance/conf/layer.conf
index db243f710..2024d4a5f 100644
--- a/meta-security/meta-security-compliance/conf/layer.conf
+++ b/meta-security/meta-security-compliance/conf/layer.conf
@@ -8,7 +8,7 @@ BBFILE_COLLECTIONS += "scanners-layer"
BBFILE_PATTERN_scanners-layer = "^${LAYERDIR}/"
BBFILE_PRIORITY_scanners-layer = "10"
-LAYERSERIES_COMPAT_scanners-layer = "gatesgarth"
+LAYERSERIES_COMPAT_scanners-layer = "hardknott"
LAYERDEPENDS_scanners-layer = "core openembedded-layer meta-python"
diff --git a/meta-security/meta-security-isafw/conf/layer.conf b/meta-security/meta-security-isafw/conf/layer.conf
index b8ee1c013..1f1095f07 100644
--- a/meta-security/meta-security-isafw/conf/layer.conf
+++ b/meta-security/meta-security-isafw/conf/layer.conf
@@ -14,4 +14,4 @@ LAYERVERSION_security-isafw = "1"
LAYERDEPENDS_security-isafw = "core"
-LAYERSERIES_COMPAT_security-isafw = "gatesgarth"
+LAYERSERIES_COMPAT_security-isafw = "hardknott"
diff --git a/meta-security/meta-tpm/conf/layer.conf b/meta-security/meta-tpm/conf/layer.conf
index cd62fbac2..1b766cba2 100644
--- a/meta-security/meta-tpm/conf/layer.conf
+++ b/meta-security/meta-tpm/conf/layer.conf
@@ -8,11 +8,12 @@ BBFILE_COLLECTIONS += "tpm-layer"
BBFILE_PATTERN_tpm-layer = "^${LAYERDIR}/"
BBFILE_PRIORITY_tpm-layer = "10"
-LAYERSERIES_COMPAT_tpm-layer = "gatesgarth"
+LAYERSERIES_COMPAT_tpm-layer = "hardknott"
LAYERDEPENDS_tpm-layer = " \
core \
openembedded-layer \
+ meta-python \
"
BBLAYERS_LAYERINDEX_NAME_tpm-layer = "meta-tpm"
diff --git a/meta-security/meta-tpm/recipes-tpm/libtpm/libtpm_0.7.2.bb b/meta-security/meta-tpm/recipes-tpm/libtpm/libtpm_0.8.2.bb
index 0ade01dd5..9784aa115 100644
--- a/meta-security/meta-tpm/recipes-tpm/libtpm/libtpm_0.7.2.bb
+++ b/meta-security/meta-tpm/recipes-tpm/libtpm/libtpm_0.8.2.bb
@@ -2,8 +2,8 @@ SUMMARY = "LIBPM - Software TPM Library"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e73f0786a936da3814896df06ad225a9"
-SRCREV = "7325acb4777f70419fe10a1d9621c2666e977e73"
-SRC_URI = "git://github.com/stefanberger/libtpms.git;branch=stable-0.7.0"
+SRCREV = "f66a719eda0b492ea3ec7852421a9d98db0a0621"
+SRC_URI = "git://github.com/stefanberger/libtpms.git;branch=stable-0.8"
PE = "1"
diff --git a/meta-security/meta-tpm/recipes-tpm/swtpm/files/oe_configure.patch b/meta-security/meta-tpm/recipes-tpm/swtpm/files/oe_configure.patch
new file mode 100644
index 000000000..5aee933b9
--- /dev/null
+++ b/meta-security/meta-tpm/recipes-tpm/swtpm/files/oe_configure.patch
@@ -0,0 +1,65 @@
+Don't check for tscd deamon on host.
+
+Upstream-Status: OE Specific
+
+Signed-off-by: Armin Kuster <akuster808@gmail.com>
+
+Index: git/configure.ac
+===================================================================
+--- git.orig/configure.ac
++++ git/configure.ac
+@@ -179,15 +179,6 @@ AC_SUBST([LIBTPMS_LIBS])
+ AC_CHECK_LIB(c, clock_gettime, LIBRT_LIBS="", LIBRT_LIBS="-lrt")
+ AC_SUBST([LIBRT_LIBS])
+
+-AC_PATH_PROG([TCSD], tcsd)
+-if test "x$TCSD" = "x"; then
+- have_tcsd=no
+- AC_MSG_WARN([tcsd could not be found; typically need it for tss user account and tests])
+-else
+- have_tcsd=yes
+-fi
+-AM_CONDITIONAL([HAVE_TCSD], test "$have_tcsd" != "no")
+-
+ dnl We either need netstat (more common across systems) or 'ss' for test cases
+ AC_PATH_PROG([NETSTAT], [netstat])
+ if test "x$NETSTAT" = "x"; then
+@@ -440,23 +431,6 @@ AC_ARG_WITH([tss-group],
+ [TSS_GROUP="tss"]
+ )
+
+-case $have_tcsd in
+-yes)
+- AC_MSG_CHECKING([whether TSS_USER $TSS_USER is available])
+- if ! test $(id -u $TSS_USER); then
+- AC_MSG_ERROR(["$TSS_USER is not available"])
+- else
+- AC_MSG_RESULT([yes])
+- fi
+- AC_MSG_CHECKING([whether TSS_GROUP $TSS_GROUP is available])
+- if ! test $(id -g $TSS_GROUP); then
+- AC_MSG_ERROR(["$TSS_GROUP is not available"])
+- else
+- AC_MSG_RESULT([yes])
+- fi
+- ;;
+-esac
+-
+ AC_SUBST([TSS_USER])
+ AC_SUBST([TSS_GROUP])
+
+Index: git/tests/Makefile.am
+===================================================================
+--- git.orig/tests/Makefile.am
++++ git/tests/Makefile.am
+@@ -83,10 +83,6 @@ TESTS += \
+ test_tpm2_swtpm_cert \
+ test_tpm2_swtpm_cert_ecc \
+ test_tpm2_swtpm_setup_create_cert
+-if HAVE_TCSD
+-TESTS += \
+- test_tpm2_samples_create_tpmca
+-endif
+ endif
+
+ EXTRA_DIST=$(TESTS) \
diff --git a/meta-security/meta-tpm/recipes-tpm/swtpm/swtpm_0.2.0.bb b/meta-security/meta-tpm/recipes-tpm/swtpm/swtpm_0.5.2.bb
index 35c77c806..caf99e823 100644
--- a/meta-security/meta-tpm/recipes-tpm/swtpm/swtpm_0.2.0.bb
+++ b/meta-security/meta-tpm/recipes-tpm/swtpm/swtpm_0.5.2.bb
@@ -3,23 +3,23 @@ LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=fe8092c832b71ef20dfe4c6d3decb3a8"
SECTION = "apps"
-DEPENDS = "libtasn1 expect socat glib-2.0 net-tools-native libtpm libtpm-native"
+DEPENDS = "libtasn1 coreutils-native expect socat glib-2.0 net-tools-native libtpm libtpm-native"
# configure checks for the tools already during compilation and
# then swtpm_setup needs them at runtime
-DEPENDS += "tpm-tools-native expect-native socat-native"
+DEPENDS_append = " tpm-tools-native expect-native socat-native python3-pip-native python3-cryptography-native"
-SRCREV = "39673a0139b0ee14a0109aba50a0635592c672c4"
-SRC_URI = "git://github.com/stefanberger/swtpm.git;branch=stable-${PV} \
- file://fix_fcntl_h.patch \
+SRCREV = "e59c0c1a7b4c8d652dbb280fd6126895a7057464"
+SRC_URI = "git://github.com/stefanberger/swtpm.git;branch=stable-0.5 \
file://ioctl_h.patch \
+ file://oe_configure.patch \
"
PE = "1"
S = "${WORKDIR}/git"
-inherit autotools pkgconfig
PARALLEL_MAKE = ""
+inherit autotools pkgconfig python3native
TSS_USER="tss"
TSS_GROUP="tss"
@@ -35,18 +35,20 @@ PACKAGECONFIG[seccomp] = "--with-seccomp, --without-seccomp, libseccomp"
EXTRA_OECONF += "--with-tss-user=${TSS_USER} --with-tss-group=${TSS_GROUP}"
-export SEARCH_DIR = "${STAGING_LIBDIR_NATIVE}"
-
USERADD_PACKAGES = "${PN}"
GROUPADD_PARAM_${PN} = "--system ${TSS_USER}"
USERADD_PARAM_${PN} = "--system -g ${TSS_GROUP} --home-dir \
--no-create-home --shell /bin/false ${BPN}"
+
+PACKAGES =+ "${PN}-python"
+FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
+
PACKAGE_BEFORE_PN = "${PN}-cuse"
FILES_${PN}-cuse = "${bindir}/swtpm_cuse"
INSANE_SKIP_${PN} += "dev-so"
-RDEPENDS_${PN} = "libtpm expect socat bash tpm-tools"
+RDEPENDS_${PN} = "libtpm expect socat bash tpm-tools python3 python3-cryptography python3-twisted"
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-security/meta-tpm/recipes-tpm/tpm-tools/files/05-openssl1.1_fix_data_mgmt.patch b/meta-security/meta-tpm/recipes-tpm/tpm-tools/files/05-openssl1.1_fix_data_mgmt.patch
deleted file mode 100644
index c2a264b62..000000000
--- a/meta-security/meta-tpm/recipes-tpm/tpm-tools/files/05-openssl1.1_fix_data_mgmt.patch
+++ /dev/null
@@ -1,110 +0,0 @@
-Author: Philipp Kern <pkern@debian.org>
-Subject: Fix openssl1.1 support in data_mgmt
-Date: Tue, 31 Jan 2017 22:40:10 +0100
-
-Upstream-Status: Backport
-tpm-tools_1.3.9.1-0.1.debian.tar
-
-Signed-off-by: Armin kuster <akuster808@gmail.com>
-
----
- src/data_mgmt/data_import.c | 60 ++++++++++++++++++++++++++++----------------
- 1 file changed, 39 insertions(+), 21 deletions(-)
-
---- a/src/data_mgmt/data_import.c
-+++ b/src/data_mgmt/data_import.c
-@@ -372,7 +372,7 @@ readX509Cert( const char *a_pszFile,
- goto out;
- }
-
-- if ( EVP_PKEY_type( pKey->type ) != EVP_PKEY_RSA ) {
-+ if ( EVP_PKEY_base_id( pKey ) != EVP_PKEY_RSA ) {
- logError( TOKEN_RSA_KEY_ERROR );
-
- X509_free( pX509 );
-@@ -691,8 +691,13 @@ createRsaPubKeyObject( RSA
-
- int rc = -1;
-
-- int nLen = BN_num_bytes( a_pRsa->n );
-- int eLen = BN_num_bytes( a_pRsa->e );
-+ const BIGNUM *bn;
-+ const BIGNUM *be;
-+
-+ RSA_get0_key( a_pRsa, &bn, &be, NULL );
-+
-+ int nLen = BN_num_bytes( bn );
-+ int eLen = BN_num_bytes( be );
-
- CK_RV rv;
-
-@@ -732,8 +737,8 @@ createRsaPubKeyObject( RSA
- }
-
- // Get binary representations of the RSA key information
-- BN_bn2bin( a_pRsa->n, n );
-- BN_bn2bin( a_pRsa->e, e );
-+ BN_bn2bin( bn, n );
-+ BN_bn2bin( be, e );
-
- // Create the RSA public key object
- rv = createObject( a_hSession, tAttr, ulAttrCount, a_hObject );
-@@ -760,14 +765,27 @@ createRsaPrivKeyObject( RSA
-
- int rc = -1;
-
-- int nLen = BN_num_bytes( a_pRsa->n );
-- int eLen = BN_num_bytes( a_pRsa->e );
-- int dLen = BN_num_bytes( a_pRsa->d );
-- int pLen = BN_num_bytes( a_pRsa->p );
-- int qLen = BN_num_bytes( a_pRsa->q );
-- int dmp1Len = BN_num_bytes( a_pRsa->dmp1 );
-- int dmq1Len = BN_num_bytes( a_pRsa->dmq1 );
-- int iqmpLen = BN_num_bytes( a_pRsa->iqmp );
-+ const BIGNUM *bn;
-+ const BIGNUM *be;
-+ const BIGNUM *bd;
-+ const BIGNUM *bp;
-+ const BIGNUM *bq;
-+ const BIGNUM *bdmp1;
-+ const BIGNUM *bdmq1;
-+ const BIGNUM *biqmp;
-+
-+ RSA_get0_key( a_pRsa, &bn, &be, &bd);
-+ RSA_get0_factors( a_pRsa, &bp, &bq);
-+ RSA_get0_crt_params( a_pRsa, &bdmp1, &bdmq1, &biqmp );
-+
-+ int nLen = BN_num_bytes( bn );
-+ int eLen = BN_num_bytes( be );
-+ int dLen = BN_num_bytes( bd );
-+ int pLen = BN_num_bytes( bp );
-+ int qLen = BN_num_bytes( bq );
-+ int dmp1Len = BN_num_bytes( bdmp1 );
-+ int dmq1Len = BN_num_bytes( bdmq1 );
-+ int iqmpLen = BN_num_bytes( biqmp );
-
- CK_RV rv;
-
-@@ -821,14 +839,14 @@ createRsaPrivKeyObject( RSA
- }
-
- // Get binary representations of the RSA key information
-- BN_bn2bin( a_pRsa->n, n );
-- BN_bn2bin( a_pRsa->e, e );
-- BN_bn2bin( a_pRsa->d, d );
-- BN_bn2bin( a_pRsa->p, p );
-- BN_bn2bin( a_pRsa->q, q );
-- BN_bn2bin( a_pRsa->dmp1, dmp1 );
-- BN_bn2bin( a_pRsa->dmq1, dmq1 );
-- BN_bn2bin( a_pRsa->iqmp, iqmp );
-+ BN_bn2bin( bn, n );
-+ BN_bn2bin( be, e );
-+ BN_bn2bin( bd, d );
-+ BN_bn2bin( bp, p );
-+ BN_bn2bin( bq, q );
-+ BN_bn2bin( bdmp1, dmp1 );
-+ BN_bn2bin( bdmq1, dmq1 );
-+ BN_bn2bin( biqmp, iqmp );
-
- // Create the RSA private key object
- rv = createObject( a_hSession, tAttr, ulAttrCount, a_hObject );
diff --git a/meta-security/meta-tpm/recipes-tpm/tpm-tools/tpm-tools_1.3.9.1.bb b/meta-security/meta-tpm/recipes-tpm/tpm-tools/tpm-tools_1.3.9.2.bb
index 88ef19f73..8aeb8ac4b 100644
--- a/meta-security/meta-tpm/recipes-tpm/tpm-tools/tpm-tools_1.3.9.1.bb
+++ b/meta-security/meta-tpm/recipes-tpm/tpm-tools/tpm-tools_1.3.9.2.bb
@@ -12,12 +12,11 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=059e8cd6165cb4c31e351f2b69388fd9"
DEPENDS = "libtspi openssl"
DEPENDS_class-native = "trousers-native"
-SRCREV = "bdf9f1bc8f63cd6fc370c2deb58d03ac55079e84"
+SRCREV = "bf43837575c5f7d31865562dce7778eae970052e"
SRC_URI = " \
git://git.code.sf.net/p/trousers/tpm-tools \
file://tpm-tools-extendpcr.patch \
file://04-fix-FTBFS-clang.patch \
- file://05-openssl1.1_fix_data_mgmt.patch \
file://openssl1.1_fix.patch \
"
diff --git a/meta-security/meta-tpm/recipes-tpm/trousers/trousers_git.bb b/meta-security/meta-tpm/recipes-tpm/trousers/trousers_git.bb
index 27b4e2f51..32c9a4976 100644
--- a/meta-security/meta-tpm/recipes-tpm/trousers/trousers_git.bb
+++ b/meta-security/meta-tpm/recipes-tpm/trousers/trousers_git.bb
@@ -6,8 +6,8 @@ SECTION = "security/tpm"
DEPENDS = "openssl"
-SRCREV = "e74dd1d96753b0538192143adf58d04fcd3b242b"
-PV = "0.3.14+git${SRCPV}"
+SRCREV = "94144b0a1dcef6e31845d6c319e9bd7357208eb9"
+PV = "0.3.15+git${SRCPV}"
SRC_URI = " \
git://git.code.sf.net/p/trousers/trousers \
diff --git a/meta-security/meta-tpm/recipes-tpm2/ibmtpm2tss/ibmtpm2tss/0001-utils-12-Makefile.am-expand-wildcards-in-prereqs.patch b/meta-security/meta-tpm/recipes-tpm2/ibmtpm2tss/ibmtpm2tss/0001-utils-12-Makefile.am-expand-wildcards-in-prereqs.patch
index 8b13fb66c..cfda80f41 100644
--- a/meta-security/meta-tpm/recipes-tpm2/ibmtpm2tss/ibmtpm2tss/0001-utils-12-Makefile.am-expand-wildcards-in-prereqs.patch
+++ b/meta-security/meta-tpm/recipes-tpm2/ibmtpm2tss/ibmtpm2tss/0001-utils-12-Makefile.am-expand-wildcards-in-prereqs.patch
@@ -15,17 +15,15 @@ Signed-off-by: Jens Rehsack <sno@netbsd.org>
utils12/Makefile.am | 8 ++++-
2 files changed, 79 insertions(+), 4 deletions(-)
-diff --git a/utils/Makefile.am b/utils/Makefile.am
-index 1e51fe3..170a26e 100644
---- a/utils/Makefile.am
-+++ b/utils/Makefile.am
-@@ -81,9 +81,78 @@ libibmtssutils_la_LIBADD = libibmtss.la $(LIBCRYPTO_LIBS)
+Index: git/utils/Makefile.am
+===================================================================
+--- git.orig/utils/Makefile.am
++++ git/utils/Makefile.am
+@@ -85,9 +85,78 @@ libibmtssutils_la_LIBADD = libibmtss.la
- noinst_HEADERS = CommandAttributes.h imalib.h tssdev.h ntc2lib.h tssntc.h Commands_fp.h objecttemplates.h tssproperties.h cryptoutils.h Platform.h tssauth.h tsssocket.h ekutils.h eventlib.h tssccattributes.h
+ noinst_HEADERS = CommandAttributes.h imalib.h tssdev.h ntc2lib.h tssntc.h Commands_fp.h objecttemplates.h tssproperties.h cryptoutils.h Platform.h tssauth.h tsssocket.h ekutils.h eventlib.h efilib.h tssccattributes.h
# install every header in ibmtss
-nobase_include_HEADERS = ibmtss/*.h
--
--notrans_man_MANS = man/man1/*.1
+nobase_include_HEADERS = ibmtss/ActivateCredential_fp.h ibmtss/ActivateIdentity_fp.h ibmtss/BaseTypes.h \
+ ibmtss/CertifyCreation_fp.h ibmtss/Certify_fp.h ibmtss/CertifyX509_fp.h ibmtss/ChangeEPS_fp.h \
+ ibmtss/ChangePPS_fp.h ibmtss/ClearControl_fp.h ibmtss/Clear_fp.h ibmtss/ClockRateAdjust_fp.h \
@@ -65,7 +63,8 @@ index 1e51fe3..170a26e 100644
+ ibmtss/tssmarshal.h ibmtss/tssprintcmd.h ibmtss/tssprint.h ibmtss/tssresponsecode.h ibmtss/tsstransmit.h \
+ ibmtss/tssutils.h ibmtss/Unmarshal12_fp.h ibmtss/Unmarshal_fp.h ibmtss/Unseal_fp.h ibmtss/VerifySignature_fp.h \
+ ibmtss/ZGen_2Phase_fp.h
-+
+
+-notrans_man_MANS = man/man1/*.1
+notrans_man_MANS = man/man1/tssactivatecredential.1 man/man1/tsscertify.1 man/man1/tsscertifycreation.1 \
+ man/man1/tsscertifyx509.1 man/man1/tsschangeeps.1 man/man1/tsschangepps.1 man/man1/tssclear.1 \
+ man/man1/tssclearcontrol.1 man/man1/tssclockrateadjust.1 man/man1/tssclockset.1 man/man1/tsscommit.1 \
@@ -101,11 +100,11 @@ index 1e51fe3..170a26e 100644
if CONFIG_TPM20
noinst_HEADERS += tss20.h tssauth20.h ibmtss/tssprintcmd.h
-diff --git a/utils12/Makefile.am b/utils12/Makefile.am
-index a01f47c..e9fe61e 100644
---- a/utils12/Makefile.am
-+++ b/utils12/Makefile.am
-@@ -9,7 +9,13 @@ libibmtssutils12_la_CFLAGS = -I$(top_srcdir)/utils
+Index: git/utils12/Makefile.am
+===================================================================
+--- git.orig/utils12/Makefile.am
++++ git/utils12/Makefile.am
+@@ -9,7 +9,13 @@ libibmtssutils12_la_CFLAGS = -I$(top_src
# result: [current-age].age.revision
libibmtssutils12_la_LDFLAGS = -version-info @TSSLIB_VERSION_INFO@ ../utils/libibmtss.la
@@ -120,6 +119,3 @@ index a01f47c..e9fe61e 100644
noinst_HEADERS = ekutils12.h
bin_PROGRAMS = activateidentity createendorsementkeypair createwrapkey extend flushspecific getcapability loadkey2 makeidentity nvdefinespace nvreadvalueauth nvreadvalue nvwritevalueauth nvwritevalue oiap osap ownerreadinternalpub ownersetdisable pcrread quote2 sign startup takeownership tpminit createekcert makeekblob eventextend imaextend
---
-2.17.1
-
diff --git a/meta-security/meta-tpm/recipes-tpm2/ibmtpm2tss/ibmtpm2tss_1.5.0.bb b/meta-security/meta-tpm/recipes-tpm2/ibmtpm2tss/ibmtpm2tss_1.6.0.bb
index 18ad7eb43..4d9b5540a 100644
--- a/meta-security/meta-tpm/recipes-tpm2/ibmtpm2tss/ibmtpm2tss_1.5.0.bb
+++ b/meta-security/meta-tpm/recipes-tpm2/ibmtpm2tss/ibmtpm2tss_1.6.0.bb
@@ -17,7 +17,7 @@ DEPENDS = "openssl ibmswtpm2"
inherit autotools pkgconfig
-SRCREV = "aa6c6ec83793ba21782033c03439977c26d3cc87"
+SRCREV = "3e736f712ba53c8f06e66751f60fae428fd2e20f"
SRC_URI = " git://git.code.sf.net/p/ibmtpm20tss/tss;nobranch=1 \
file://0001-utils-12-Makefile.am-expand-wildcards-in-prereqs.patch \
"
diff --git a/meta-security/meta-tpm/recipes-tpm2/tpm2-abrmd/tpm2-abrmd_2.3.3.bb b/meta-security/meta-tpm/recipes-tpm2/tpm2-abrmd/tpm2-abrmd_2.4.0.bb
index d2a1c47b5..edfcce9d1 100644
--- a/meta-security/meta-tpm/recipes-tpm2/tpm2-abrmd/tpm2-abrmd_2.3.3.bb
+++ b/meta-security/meta-tpm/recipes-tpm2/tpm2-abrmd/tpm2-abrmd_2.4.0.bb
@@ -18,7 +18,7 @@ SRC_URI = "\
file://tpm2-abrmd.default \
"
-SRCREV = "4cdda466010a3699ebe967d990ac715ae3de7d35"
+SRCREV = "4f332013a02c422e186c4aaf127ab6a40b996028"
S = "${WORKDIR}/git"
diff --git a/meta-security/meta-tpm/recipes-tpm2/tpm2-pkcs11/tpm2-pkcs11_1.4.0.bb b/meta-security/meta-tpm/recipes-tpm2/tpm2-pkcs11/tpm2-pkcs11_1.5.0.bb
index 6beb67a18..d53d4fa86 100644
--- a/meta-security/meta-tpm/recipes-tpm2/tpm2-pkcs11/tpm2-pkcs11_1.4.0.bb
+++ b/meta-security/meta-tpm/recipes-tpm2/tpm2-pkcs11/tpm2-pkcs11_1.5.0.bb
@@ -10,7 +10,7 @@ SRC_URI = "git://github.com/tpm2-software/tpm2-pkcs11.git;branch=1.X \
file://bootstrap_fixup.patch \
file://0001-remove-local-binary-checkes.patch"
-SRCREV = "78bbf6a0237351830d0c3923b25ba0b57ae0b7e9"
+SRCREV = "5d583351028eebd470f50ec35db5dcf00533df31"
S = "${WORKDIR}/git"
diff --git a/meta-security/meta-tpm/recipes-tpm2/tpm2-tools/tpm2-tools_4.3.0.bb b/meta-security/meta-tpm/recipes-tpm2/tpm2-tools/tpm2-tools_5.0.bb
index 5bd26ab98..dbd324aa2 100644
--- a/meta-security/meta-tpm/recipes-tpm2/tpm2-tools/tpm2-tools_4.3.0.bb
+++ b/meta-security/meta-tpm/recipes-tpm2/tpm2-tools/tpm2-tools_5.0.bb
@@ -8,6 +8,6 @@ DEPENDS = "tpm2-abrmd tpm2-tss openssl curl autoconf-archive"
SRC_URI = "https://github.com/tpm2-software/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.gz"
-SRC_URI[sha256sum] = "ae009b3495b44a16faa3d94d41ac9c9d99c71723482efad53c5eea17eeed80fc"
+SRC_URI[sha256sum] = "e1b907fe29877628052e08ad84eebc6c3f7646d29505ed4862e96162a8c91ba1"
inherit autotools pkgconfig bash-completion
diff --git a/meta-security/meta-tpm/recipes-tpm2/tpm2-totp/tpm2-totp_0.2.1.bb b/meta-security/meta-tpm/recipes-tpm2/tpm2-totp/tpm2-totp_0.3.0.bb
index 264484f7a..dfebc072d 100644
--- a/meta-security/meta-tpm/recipes-tpm2/tpm2-totp/tpm2-totp_0.2.1.bb
+++ b/meta-security/meta-tpm/recipes-tpm2/tpm2-totp/tpm2-totp_0.3.0.bb
@@ -9,8 +9,8 @@ DEPENDS = "autoconf-archive libtss2-dev qrencode"
PE = "1"
-SRCREV = "bfd581986353edc1058604e77cac804bd8b0d30a"
-SRC_URI = "git://github.com/tpm2-software/tpm2-totp.git;branch=v0.2.x"
+SRCREV = "96a1448753a48974149003bc90ea3990ae8e8d0b"
+SRC_URI = "git://github.com/tpm2-software/tpm2-totp.git"
inherit autotools-brokensep pkgconfig
diff --git a/meta-security/meta-tpm/recipes-tpm2/tpm2-tss-engine/tpm2-tss-engine_1.0.1.bb b/meta-security/meta-tpm/recipes-tpm2/tpm2-tss-engine/tpm2-tss-engine_1.1.0.bb
index ebd6d539e..539569572 100644
--- a/meta-security/meta-tpm/recipes-tpm2/tpm2-tss-engine/tpm2-tss-engine_1.0.1.bb
+++ b/meta-security/meta-tpm/recipes-tpm2/tpm2-tss-engine/tpm2-tss-engine_1.1.0.bb
@@ -2,14 +2,14 @@ SUMMARY = "The tpm2-tss-engine project implements a cryptographic engine for Ope
DESCRIPTION = "The tpm2-tss-engine project implements a cryptographic engine for OpenSSL for Trusted Platform Module (TPM 2.0) using the tpm2-tss software stack that follows the Trusted Computing Groups (TCG) TPM Software Stack (TSS 2.0). It uses the Enhanced System API (ESAPI) interface of the TSS 2.0 for downwards communication. It supports RSA decryption and signatures as well as ECDSA signatures."
LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=3fb0047fd29391478a71e8e6101c76eb"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=7b3ab643b9ce041de515d1ed092a36d4"
SECTION = "security/tpm"
DEPENDS = "autoconf-archive-native bash-completion libtss2 libgcrypt openssl"
-SRCREV = "24f1383cc6befde44d6f01a51ea653304d844ffd"
-SRC_URI = "git://github.com/tpm2-software/tpm2-tss-engine.git;branch=v1.0.x"
+SRCREV = "6f387a4efe2049f1b4833e8f621c77231bc1eef4"
+SRC_URI = "git://github.com/tpm2-software/tpm2-tss-engine.git;branch=v1.1.x"
inherit autotools-brokensep pkgconfig systemd
diff --git a/meta-security/meta-tpm/recipes-tpm2/tpm2-tss/tpm2-tss/0001-configure.ac-fix-compatibility-with-autoconf-2.70.patch b/meta-security/meta-tpm/recipes-tpm2/tpm2-tss/tpm2-tss/0001-configure.ac-fix-compatibility-with-autoconf-2.70.patch
new file mode 100644
index 000000000..cae2e76e1
--- /dev/null
+++ b/meta-security/meta-tpm/recipes-tpm2/tpm2-tss/tpm2-tss/0001-configure.ac-fix-compatibility-with-autoconf-2.70.patch
@@ -0,0 +1,48 @@
+From 03cca78d24d716eec792f86f5b0bc69886fad981 Mon Sep 17 00:00:00 2001
+From: Patrick McCarty <patrick.mccarty@intel.com>
+Date: Fri, 18 Dec 2020 01:54:05 +0000
+Subject: [PATCH] configure.ac: fix compatibility with autoconf 2.70
+
+With autoconf 2.70, not quoting the second argument to one of the AS_IF
+macro expansions leads to generation of invalid shell code affecting the
+first nested ERROR_IF_NO_PROG expansion.
+
+The invalid shell code leads to an error resembling:
+
+ ./configure: line 18826: syntax error near unexpected token `newline'
+ ./configure: line 18826: ` '''
+
+Fix the issue by quoting the second argument to the affected AS_IF,
+similar to the quoting found elsewhere in configure.ac.
+
+Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
+
+Upstream-Status: Backport
+Signed-off-by: Armin Kuster <akuster808@gmail.com>
+
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: tpm2-tss-3.0.3/configure.ac
+===================================================================
+--- tpm2-tss-3.0.3.orig/configure.ac
++++ tpm2-tss-3.0.3/configure.ac
+@@ -279,7 +279,7 @@ AC_ARG_ENABLE([integration],
+ [build and execute integration tests])],,
+ [enable_integration=no])
+ AS_IF([test "x$enable_integration" = "xyes"],
+- AS_IF([test "$HOSTOS" = "Linux"],
++ [AS_IF([test "$HOSTOS" = "Linux"],
+ [ERROR_IF_NO_PROG([ss])],
+ [ERROR_IF_NO_PROG([sockstat])])
+ ERROR_IF_NO_PROG([echo])
+@@ -328,7 +328,7 @@ AS_IF([test "x$enable_integration" = "xy
+ [AC_MSG_ERROR([No simulator executable found in PATH for testing TCTI.])])
+ AC_SUBST([INTEGRATION_TCTI], [$integration_tcti])
+ AC_SUBST([INTEGRATION_ARGS], [$integration_args])
+- AC_SUBST([ENABLE_INTEGRATION], [$enable_integration]))
++ AC_SUBST([ENABLE_INTEGRATION], [$enable_integration])])
+ AM_CONDITIONAL([ENABLE_INTEGRATION],[test "x$enable_integration" = "xyes"])
+ #
+ # sanitizer compiler flags
diff --git a/meta-security/meta-tpm/recipes-tpm2/tpm2-tss/tpm2-tss_2.4.3.bb b/meta-security/meta-tpm/recipes-tpm2/tpm2-tss/tpm2-tss_3.0.3.bb
index 78be51359..b2486e5be 100644
--- a/meta-security/meta-tpm/recipes-tpm2/tpm2-tss/tpm2-tss_2.4.3.bb
+++ b/meta-security/meta-tpm/recipes-tpm2/tpm2-tss/tpm2-tss_3.0.3.bb
@@ -6,8 +6,10 @@ SECTION = "tpm"
DEPENDS = "autoconf-archive-native libgcrypt openssl"
-SRC_URI = "https://github.com/tpm2-software/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.gz"
-SRC_URI[sha256sum] = "e294677f8993234d0adfa191a5cbf9c5b83cc60c724c233e3d631c26712abea0"
+SRC_URI = "https://github.com/tpm2-software/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.gz \
+ file://0001-configure.ac-fix-compatibility-with-autoconf-2.70.patch \
+ "
+SRC_URI[sha256sum] = "78392be7309baf47f51b122f566ac915fd4d1760ea78571cba2e1484f9b5be17"
inherit autotools pkgconfig systemd extrausers
diff --git a/meta-security/recipes-core/packagegroup/packagegroup-core-security.bb b/meta-security/recipes-core/packagegroup/packagegroup-core-security.bb
index 0a4452eea..9ac0d2c25 100644
--- a/meta-security/recipes-core/packagegroup/packagegroup-core-security.bb
+++ b/meta-security/recipes-core/packagegroup/packagegroup-core-security.bb
@@ -51,9 +51,9 @@ RDEPENDS_packagegroup-security-scanners = "\
isic \
nikto \
checksecurity \
- ${@bb.utils.contains_any("TUNE_FEATURES", "riscv32 riscv64", "", " clamav clamav-freshclam clamav-cvd",d)} \
+ ${@bb.utils.contains_any("TUNE_FEATURES", "riscv32 riscv64", "", " clamav clamav-freshclam",d)} \
"
-RDEPENDS_packagegroup-security-scanners_remove_libc-musl = "clamav clamav-freshclam clamav-cvd"
+RDEPENDS_packagegroup-security-scanners_remove_libc-musl = "clamav clamav-freshclam"
SUMMARY_packagegroup-security-audit = "Security Audit tools "
RDEPENDS_packagegroup-security-audit = " \
diff --git a/meta-security/recipes-ids/samhain/files/samhain-fix-initializer-element-is-not-constant.patch b/meta-security/recipes-ids/samhain/files/samhain-fix-initializer-element-is-not-constant.patch
new file mode 100644
index 000000000..72cb8806c
--- /dev/null
+++ b/meta-security/recipes-ids/samhain/files/samhain-fix-initializer-element-is-not-constant.patch
@@ -0,0 +1,28 @@
+Fix error when compile for powerpc:
+
+| x_sh_dbIO.c: In function 'swap_short':
+| x_sh_dbIO.c:229:36: error: initializer element is not constant
+| 229 | static unsigned short ooop = *iptr;
+| | ^
+
+Upstream-Status: Pending
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
+ src/sh_dbIO.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/sh_dbIO.c b/src/sh_dbIO.c
+index b547ac5..23a9621 100644
+--- a/src/sh_dbIO.c
++++ b/src/sh_dbIO.c
+@@ -226,7 +226,8 @@ static unsigned short * swap_short (unsigned short * iptr)
+ else
+ {
+ /* alignment problem */
+- static unsigned short ooop = *iptr;
++ static unsigned short ooop;
++ ooop = *iptr;
+ unsigned short hi = (ooop & 0xff00);
+ unsigned short lo = (ooop & 0xff);
+ ooop = (lo << 8) | (hi >> 8);
diff --git a/meta-security/recipes-ids/samhain/samhain.inc b/meta-security/recipes-ids/samhain/samhain.inc
index 6a2eb0855..0148e46cf 100644
--- a/meta-security/recipes-ids/samhain/samhain.inc
+++ b/meta-security/recipes-ids/samhain/samhain.inc
@@ -18,6 +18,7 @@ SRC_URI = "https://la-samhna.de/archive/samhain_signed-${PV}.tar.gz \
file://samhain-avoid-searching-host-for-postgresql.patch \
file://samhain-add-LDFLAGS-variable-for-samhain_setpwd.patch \
file://fix-build-with-new-version-attr.patch \
+ file://samhain-fix-initializer-element-is-not-constant.patch \
"
SRC_URI[sha256sum] = "3e57574036d5055e9557ec5095818b419ea6c4365370fc2ccce1e9f87f9fad08"
diff --git a/meta-security/recipes-ids/suricata/python3-suricata-update_1.1.1.bb b/meta-security/recipes-ids/suricata/python3-suricata-update_1.2.1.bb
index 732ca9a11..bbdce69ab 100644
--- a/meta-security/recipes-ids/suricata/python3-suricata-update_1.1.1.bb
+++ b/meta-security/recipes-ids/suricata/python3-suricata-update_1.2.1.bb
@@ -5,11 +5,13 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://LICENSE;beginline=1;endline=2;md5=c70d8d3310941dcdfcd1e02800a1f548"
-SRCREV = "9630630ffc493ca26299d174ee2066aa1405b2d4"
-SRC_URI = "git://github.com/OISF/suricata-update;branch='master-1.1.x'"
+SRCREV = "50e857f75e576e239d8306a6ac55946a1ce252a6"
+SRC_URI = "git://github.com/OISF/suricata-update;branch='master-1.2.x'"
S = "${WORKDIR}/git"
inherit python3native python3targetconfig setuptools3
-RDEPENDS_${PN} = "python3-pyyaml"
+RDEPENDS_${PN} = "python3-pyyaml python3-logging python3-compression"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-security/recipes-kernel/lkrg/files/makefile_cleanup.patch b/meta-security/recipes-kernel/lkrg/files/makefile_cleanup.patch
new file mode 100644
index 000000000..106dc3f1e
--- /dev/null
+++ b/meta-security/recipes-kernel/lkrg/files/makefile_cleanup.patch
@@ -0,0 +1,73 @@
+Upstream-Status: Pending
+
+This needs more work. Its my starting point.
+
+Signed-off-by: Armin Kuster <akuster808@gmail.com>
+
+Index: lkrg-0.9.0/Makefile
+===================================================================
+--- lkrg-0.9.0.orig/Makefile
++++ lkrg-0.9.0/Makefile
+@@ -4,28 +4,10 @@
+ # Author:
+ # - Adam 'pi3' Zabrocki (http://pi3.com.pl)
+ ##
+-
+-P_OUTPUT = output
+ P_PWD ?= $(shell pwd)
+-P_KVER ?= $(shell uname -r)
+-P_BOOTUP_SCRIPT ?= scripts/bootup/lkrg-bootup.sh
+-TARGET := p_lkrg
+-ifneq ($(KERNELRELEASE),)
+- KERNEL := /lib/modules/$(KERNELRELEASE)/build
+-else
+- ## KERNELRELEASE not set.
+- KERNEL := /lib/modules/$(P_KVER)/build
+-endif
+-
+-#
+-# Uncomment for debug compilation
+-#
+-# ccflags-m := -ggdb -DP_LKRG_DEBUG_BUILD -finstrument-functions
+-# ccflags-y := ${ccflags-m}
+-# p_lkrg-objs += src/modules/print_log/p_lkrg_debug_log.o
+
+-obj-m += $(TARGET).o
+-$(TARGET)-objs += src/modules/ksyms/p_resolve_ksym.o \
++obj-m := p_lkrg.o
++p_lkrg-y := src/modules/ksyms/p_resolve_ksym.o \
+ src/modules/hashing/p_lkrg_fast_hash.o \
+ src/modules/comm_channel/p_comm_channel.o \
+ src/modules/integrity_timer/p_integrity_timer.o \
+@@ -91,23 +73,14 @@ $(TARGET)-objs += src/modules/ksyms/p_re
+ src/p_lkrg_main.o
+
+
+-all:
+-# $(MAKE) -C $(KERNEL) M=$(P_PWD) modules CONFIG_DEBUG_SECTION_MISMATCH=y
+- $(MAKE) -C $(KERNEL) M=$(P_PWD) modules
+- mkdir -p $(P_OUTPUT)
+- cp $(P_PWD)/$(TARGET).ko $(P_OUTPUT)
+-
+-install:
+- $(MAKE) -C $(KERNEL) M=$(P_PWD) modules_install
+- depmod -a
+- $(P_PWD)/$(P_BOOTUP_SCRIPT) install
+
+-uninstall:
+- $(P_PWD)/$(P_BOOTUP_SCRIPT) uninstall
++modules:
++ $(MAKE) -C $(KERNEL_SRC) M=$(P_PWD) modules
++
++modules_install:
++ $(MAKE) -C $(KERNEL_SRC) M=$(P_PWD) modules_install
+
+ clean:
+- $(MAKE) -C $(KERNEL) M=$(P_PWD) clean
+- $(RM) Module.markers modules.order
+- $(RM) $(P_PWD)/src/modules/kmod/client/kmod/Module.markers
+- $(RM) $(P_PWD)/src/modules/kmod/client/kmod/modules.order
+- $(RM) -rf $(P_OUTPUT)
++ rm -f *.o *~ core .depend .*.cmd *.ko *.mod.c
++ rm -f Module.markers Module.symvers modules.order
++ rm -rf .tmp_versions Modules.symvers
diff --git a/meta-security/recipes-kernel/lkrg/lkrg-module_0.9.0.bb b/meta-security/recipes-kernel/lkrg/lkrg-module_0.9.0.bb
new file mode 100644
index 000000000..dbc195d35
--- /dev/null
+++ b/meta-security/recipes-kernel/lkrg/lkrg-module_0.9.0.bb
@@ -0,0 +1,33 @@
+SUMMARY = "Linux Kernel Runtime Guard"
+DESCRIPTION="LKRG performs runtime integrity checking of the Linux \
+kernel and detection of security vulnerability exploits against the kernel."
+SECTION = "security"
+HOMEPAGE = "https://www.openwall.com/lkrg/"
+LICENSE = "GPLv2"
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d931f44a1f4be309bcdac742d7ed92f9"
+
+DEPENDS = "virtual/kernel elfutils"
+
+SRC_URI = "https://www.openwall.com/lkrg/lkrg-${PV}.tar.gz \
+ file://makefile_cleanup.patch "
+
+SRC_URI[sha256sum] = "a997e4d98962c359f3af163bbcfa38a736d2a50bfe35c15065b74cb57f8742bf"
+
+S = "${WORKDIR}/lkrg-${PV}"
+
+inherit module kernel-module-split
+
+MAKE_TARGETS = "modules"
+
+MODULE_NAME = "p_lkrg"
+
+module_do_install() {
+ install -d ${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel/${MODULE_NAME}
+ install -m 0644 ${MODULE_NAME}.ko \
+ ${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel/${MODULE_NAME}/${MODULE_NAME}.ko
+}
+
+RPROVIDES_${PN} += "kernel-module-lkrg"
+
+COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux"
diff --git a/meta-security/recipes-scanners/clamav/clamav_0.101.5.bb b/meta-security/recipes-scanners/clamav/clamav_0.104.0.bb
index 7dad26315..36e498dfb 100644
--- a/meta-security/recipes-scanners/clamav/clamav_0.101.5.bb
+++ b/meta-security/recipes-scanners/clamav/clamav_0.104.0.bb
@@ -4,94 +4,68 @@ HOMEPAGE = "http://www.clamav.net/index.html"
SECTION = "security"
LICENSE = "LGPL-2.1"
-DEPENDS = "libtool db libxml2 openssl zlib curl llvm clamav-native libmspack bison-native"
-DEPENDS_class-native = "db-native openssl-native zlib-native llvm-native curl-native bison-native"
+DEPENDS = "glibc llvm libtool db openssl zlib curl libxml2 bison pcre2 json-c libcheck"
-LIC_FILES_CHKSUM = "file://COPYING.LGPL;beginline=2;endline=3;md5=4b89c05acc71195e9a06edfa2fa7d092"
+LIC_FILES_CHKSUM = "file://COPYING.txt;beginline=2;endline=3;md5=f7029fbbc5898b273d5902896f7bbe17"
-SRCREV = "482fcd413b07e9fd3ef9850e6d01a45f4e187108"
+SRCREV = "5553a5e206ceae5d920368baee7d403f823bcb6f"
-SRC_URI = "git://github.com/vrtadmin/clamav-devel;branch=rel/0.101 \
+SRC_URI = "git://github.com/vrtadmin/clamav-devel;branch=dev/0.104 \
file://clamd.conf \
file://freshclam.conf \
file://volatiles.03_clamav \
file://tmpfiles.clamav \
file://${BPN}.service \
- file://freshclam-native.conf \
- "
-
+ file://headers_fixup.patch \
+ file://oe_cmake_fixup.patch \
+"
S = "${WORKDIR}/git"
LEAD_SONAME = "libclamav.so"
-SO_VER = "9.0.4"
+SO_VER = "9.6.0"
+
+BINCONFIG = "${bindir}/clamav-config"
-inherit autotools pkgconfig useradd systemd multilib_header multilib_script
+inherit cmake chrpath pkgconfig useradd systemd multilib_header multilib_script
CLAMAV_UID ?= "clamav"
CLAMAV_GID ?= "clamav"
-INSTALL_CLAMAV_CVD ?= "1"
-
-CLAMAV_USR_DIR = "${STAGING_DIR_NATIVE}/usr"
-CLAMAV_USR_DIR_class-target = "${STAGING_DIR_HOST}/usr"
-
-PACKAGECONFIG_class-target ?= "ncurses bz2"
-PACKAGECONFIG_class-target += " ${@bb.utils.contains("DISTRO_FEATURES", "ipv6", "ipv6", "", d)}"
-PACKAGECONFIG_class-target += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}"
-
-PACKAGECONFIG[pcre] = "--with-pcre=${STAGING_LIBDIR}, --without-pcre, libpcre"
-PACKAGECONFIG[json] = "--with-libjson=${STAGING_LIBDIR}, --without-libjson, json-c,"
-PACKAGECONFIG[ipv6] = "--enable-ipv6, --disable-ipv6"
-PACKAGECONFIG[bz2] = "--with-libbz2-prefix=${CLAMAV_USR_DIR}, --disable-bzip2, bzip2"
-PACKAGECONFIG[ncurses] = "--with-libncurses-prefix=${CLAMAV_USR_DIR}, --without-libncurses-prefix, ncurses, "
-PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/, --without-systemdsystemunitdir, "
-
-MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/clamav-config ${PN}-cvd:${localstatedir}/lib/clamav/mirrors.dat"
-
-EXTRA_OECONF_CLAMAV = "--without-libcheck-prefix --disable-unrar \
- --disable-mempool \
- --program-prefix="" \
- --disable-zlib-vcheck \
- --with-xml=${CLAMAV_USR_DIR} \
- --with-zlib=${CLAMAV_USR_DIR} \
- --with-openssl=${CLAMAV_USR_DIR} \
- --with-libcurl=${CLAMAV_USR_DIR} \
- --with-system-libmspack=${CLAMAV_USR_DIR} \
- --with-iconv=no \
- --enable-check=no \
- "
-
-EXTRA_OECONF_class-native += "${EXTRA_OECONF_CLAMAV}"
-EXTRA_OECONF_class-target += "--with-user=${CLAMAV_UID} --with-group=${CLAMAV_GID} ${EXTRA_OECONF_CLAMAV}"
-
-do_configure () {
- ${S}/configure ${CONFIGUREOPTS} ${EXTRA_OECONF}
-}
-do_configure_class-native () {
- ${S}/configure ${CONFIGUREOPTS} ${EXTRA_OECONF}
-}
+MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/clamav-config"
-do_compile_append_class-target() {
- if [ "${INSTALL_CLAMAV_CVD}" = "1" ]; then
- bbnote "CLAMAV creating cvd"
- install -d ${S}/clamav_db
- ${STAGING_BINDIR_NATIVE}/freshclam --datadir=${S}/clamav_db --config=${WORKDIR}/freshclam-native.conf
- fi
-}
+EXTRA_OECMAKE = " -DCMAKE_BUILD_TYPE=Release -DOPTIMIZE=ON -DENABLE_JSON_SHARED=OFF \
+ -DCLAMAV_GROUP=${CLAMAV_GID} -DCLAMAV_USER=${CLAMAV_UID} \
+ -DENABLE_TESTS=OFF -DBUILD_SHARED_LIBS=ON \
+ -DDISABLE_MPOOL=ON -DENABLE_FRESHCLAM_DNS_FIX=ON \
+ "
+
+PACKAGECONFIG ?= " clamonacc \
+ ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "systemd", "", d)}"
-do_install_append_class-target () {
+PACKAGECONFIG[milter] = "-DENABLE_MILTER=ON ,-DENABLE_MILTER=OFF, curl, curl"
+PACKAGECONFIG[clamonacc] = "-DENABLE_CLAMONACC=ON ,-DENABLE_CLAMONACC=OFF,"
+PACKAGECONFIG[unrar] = "-DENABLE_UNRAR=ON ,-DENABLE_UNRAR=OFF,"
+PACKAGECONFIG[systemd] = "-DENABLE_SYSTEMD=ON -DSYSTEMD_UNIT_DIR=${systemd_system_unitdir}, -DENABLE_SYSTEMD=OFF, systemd"
+
+export OECMAKE_C_FLAGS += " -I${STAGING_INCDIR} -L ${RECIPE_SYSROOT}${nonarch_libdir} -L${STAGING_LIBDIR} -lpthread"
+
+do_install_append () {
install -d ${D}/${sysconfdir}
install -d ${D}/${localstatedir}/lib/clamav
install -d ${D}${sysconfdir}/clamav ${D}${sysconfdir}/default/volatiles
- install -m 644 ${WORKDIR}/clamd.conf ${D}/${sysconfdir}
- install -m 644 ${WORKDIR}/freshclam.conf ${D}/${sysconfdir}
+ install -m 644 ${WORKDIR}/clamd.conf ${D}/${prefix}/${sysconfdir}
+ install -m 644 ${WORKDIR}/freshclam.conf ${D}/${prefix}/${sysconfdir}
install -m 0644 ${WORKDIR}/volatiles.03_clamav ${D}${sysconfdir}/default/volatiles/03_clamav
sed -i -e 's#${STAGING_DIR_HOST}##g' ${D}${libdir}/pkgconfig/libclamav.pc
rm ${D}/${libdir}/libclamav.so
if [ "${INSTALL_CLAMAV_CVD}" = "1" ]; then
install -m 666 ${S}/clamav_db/* ${D}/${localstatedir}/lib/clamav/.
fi
+
+ rm ${D}/${libdir}/libfreshclam.so
+ rm ${D}/${libdir}/libmspack.so
+
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)};then
install -D -m 0644 ${WORKDIR}/clamav.service ${D}${systemd_unitdir}/system/clamav.service
install -d ${D}${sysconfdir}/tmpfiles.d
@@ -111,13 +85,13 @@ pkg_postinst_ontarget_${PN} () {
}
-PACKAGES = "${PN} ${PN}-dev ${PN}-dbg ${PN}-daemon ${PN}-doc ${PN}-cvd \
+PACKAGES = "${PN} ${PN}-dev ${PN}-dbg ${PN}-daemon ${PN}-doc \
${PN}-clamdscan ${PN}-freshclam ${PN}-libclamav ${PN}-staticdev"
-FILES_${PN} = "${bindir}/clambc ${bindir}/clamscan ${bindir}/clamsubmit \
+FILES_${PN} = "${bindir}/clambc ${bindir}/clamscan ${bindir}/clamsubmit ${sbindir}/clamonacc \
${bindir}/*sigtool ${mandir}/man1/clambc* ${mandir}/man1/clamscan* \
${mandir}/man1/sigtool* ${mandir}/man1/clambsubmit* \
- ${docdir}/clamav/* "
+ ${docdir}/clamav/* ${libdir}/libmspack* "
FILES_${PN}-clamdscan = " ${bindir}/clamdscan \
${docdir}/clamdscan/* \
@@ -128,12 +102,17 @@ FILES_${PN}-daemon = "${bindir}/clamconf ${bindir}/clamdtop ${sbindir}/clamd \
${mandir}/man1/clamconf* ${mandir}/man1/clamdtop* \
${mandir}/man5/clamd* ${mandir}/man8/clamd* \
${sysconfdir}/clamd.conf* \
+ /usr/etc/clamd.conf* \
${systemd_unitdir}/system/clamav-daemon/* \
${docdir}/clamav-daemon/* ${sysconfdir}/clamav-daemon \
- ${sysconfdir}/logcheck/ignore.d.server/clamav-daemon "
+ ${sysconfdir}/logcheck/ignore.d.server/clamav-daemon \
+ ${systemd_unitdir}/system/clamav-daemon.service \
+ ${systemd_unitdir}/system/clamav-clamonacc.service \
+ "
FILES_${PN}-freshclam = "${bindir}/freshclam \
${sysconfdir}/freshclam.conf* \
+ /usr/etc/freshclam.conf* \
${sysconfdir}/clamav ${sysconfdir}/default/volatiles \
${sysconfdir}/tmpfiles.d/*.conf \
${localstatedir}/lib/clamav \
@@ -148,15 +127,13 @@ FILES_${PN}-dev = " ${bindir}/clamav-config ${libdir}/*.la \
FILES_${PN}-staticdev = "${libdir}/*.a"
-FILES_${PN}-libclamav = "${libdir}/libclamav.so* ${libdir}/libclammspack.so*\
- ${docdir}/libclamav/* "
+FILES_${PN}-libclamav = "${libdir}/libclamav.so* ${libdir}/libclammspack.so* \
+ ${libdir}/libfreshclam.so* ${docdir}/libclamav/* "
FILES_${PN}-doc = "${mandir}/man/* \
${datadir}/man/* \
${docdir}/* "
-FILES_${PN}-cvd = "${localstatedir}/lib/clamav/*.cvd ${localstatedir}/lib/clamav/*.dat"
-
USERADD_PACKAGES = "${PN}"
GROUPADD_PARAM_${PN} = "--system ${CLAMAV_UID}"
USERADD_PARAM_${PN} = "--system -g ${CLAMAV_GID} --home-dir \
@@ -169,6 +146,3 @@ RCONFLICTS_${PN} += "${PN}-systemd"
SYSTEMD_SERVICE_${PN} = "${BPN}.service"
RDEPENDS_${PN} = "openssl ncurses-libncurses libxml2 libbz2 ncurses-libtinfo curl libpcre2 clamav-freshclam clamav-libclamav"
-RDEPENDS_${PN}_class-native = ""
-
-BBCLASSEXTEND = "native"
diff --git a/meta-security/recipes-scanners/clamav/files/headers_fixup.patch b/meta-security/recipes-scanners/clamav/files/headers_fixup.patch
new file mode 100644
index 000000000..9de0a26db
--- /dev/null
+++ b/meta-security/recipes-scanners/clamav/files/headers_fixup.patch
@@ -0,0 +1,58 @@
+Fixes checks not needed do to glibc 2.33
+
+Upstream-Status: Pending
+Signed-off-by: Armin Kuster <akuster808@gmail.com>
+
+Index: git/CMakeLists.txt
+===================================================================
+--- git.orig/CMakeLists.txt
++++ git/CMakeLists.txt
+@@ -374,8 +373,6 @@ check_include_file("stdlib.h"
+ check_include_file("string.h" HAVE_STRING_H)
+ check_include_file("strings.h" HAVE_STRINGS_H)
+ check_include_file("sys/cdefs.h" HAVE_SYS_CDEFS_H)
+-check_include_file("sys/dl.h" HAVE_SYS_DL_H)
+-check_include_file("sys/fileio.h" HAVE_SYS_FILIO_H)
+ check_include_file("sys/mman.h" HAVE_SYS_MMAN_H)
+ check_include_file("sys/param.h" HAVE_SYS_PARAM_H)
+ check_include_file("sys/queue.h" HAVE_SYS_QUEUE_H)
+@@ -410,8 +407,6 @@ endif()
+
+ # int-types variants
+ check_include_file("inttypes.h" HAVE_INTTYPES_H)
+-check_include_file("sys/inttypes.h" HAVE_SYS_INTTYPES_H)
+-check_include_file("sys/int_types.h" HAVE_SYS_INT_TYPES_H)
+ check_include_file("stdint.h" HAVE_STDINT_H)
+
+ # this hack required to silence warnings on systems with inttypes.h
+@@ -539,17 +528,11 @@ check_type_size("time_t" SIZEOF_TIME_T)
+ # Checks for library functions.
+ include(CheckSymbolExists)
+ check_symbol_exists(_Exit "stdlib.h" HAVE__EXIT)
+-check_symbol_exists(accept4 "sys/types.h" HAVE_ACCEPT4)
+ check_symbol_exists(snprintf "stdio.h" HAVE_SNPRINTF)
+-check_symbol_exists(stat64 "sys/stat.h" HAVE_STAT64)
+-check_symbol_exists(strcasestr "string.h" HAVE_STRCASESTR)
+ check_symbol_exists(strerror_r "string.h" HAVE_STRERROR_R)
+-check_symbol_exists(strlcat "string.h" HAVE_STRLCAT)
+-check_symbol_exists(strlcpy "string.h" HAVE_STRLCPY)
+ check_symbol_exists(strndup "string.h" HAVE_STRNDUP)
+ check_symbol_exists(strnlen "string.h" HAVE_STRNLEN)
+-check_symbol_exists(strnstr "string.h" HAVE_STRNSTR)
+-check_symbol_exists(sysctlbyname "sysctl.h" HAVE_SYSCTLBYNAME)
++check_symbol_exists(strcasecmp "string.h" HAVE_STRNCMP)
+ check_symbol_exists(timegm "time.h" HAVE_TIMEGM)
+ check_symbol_exists(vsnprintf "stdio.h" HAVE_VSNPRINTF)
+
+@@ -563,10 +546,9 @@ else()
+ check_symbol_exists(fseeko "stdio.h" HAVE_FSEEKO)
+ check_symbol_exists(getaddrinfo "netdb.h" HAVE_GETADDRINFO)
+ check_symbol_exists(getpagesize "unistd.h" HAVE_GETPAGESIZE)
+- check_symbol_exists(mkstemp "unistd.h" HAVE_MKSTEMP)
+ check_symbol_exists(poll "poll.h" HAVE_POLL)
+- check_symbol_exists(setgroups "unistd.h" HAVE_SETGROUPS)
+ check_symbol_exists(setsid "unistd.h" HAVE_SETSID)
++ set(HAVE_SYSCONF_SC_PAGESIZE 1)
+ endif()
+
+ include(CheckSymbolExists)
diff --git a/meta-security/recipes-scanners/clamav/files/oe_cmake_fixup.patch b/meta-security/recipes-scanners/clamav/files/oe_cmake_fixup.patch
new file mode 100644
index 000000000..b284915b8
--- /dev/null
+++ b/meta-security/recipes-scanners/clamav/files/oe_cmake_fixup.patch
@@ -0,0 +1,39 @@
+Issue with rpath including /usr/lib and crosscompile checkes causing oe configure to fail
+
+Use oe's cmake rpath framework and exclude some of the cmake checks that fail in our env
+
+Upstream-Status: Inappropriate [configuration]
+Singed-off-by: Armin Kuster <akuster808@gmail.com>
+
+Index: git/CMakeLists.txt
+===================================================================
+--- git.orig/CMakeLists.txt
++++ git/CMakeLists.txt
+@@ -162,12 +162,6 @@ endif()
+
+ include(GNUInstallDirs)
+
+-if(CMAKE_INSTALL_FULL_LIBDIR)
+- set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_FULL_LIBDIR}")
+-else()
+- set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
+-endif()
+-
+ if(C_LINUX)
+ if(CMAKE_COMPILER_IS_GNUCXX)
+ # Set _GNU_SOURCE for O_LARGEFILE, O_CLOEXEC, O_DIRECTORY, O_NOFOLLOW, etc flags on older systems
+@@ -512,14 +506,8 @@ include(TestInline)
+ include(CheckFileOffsetBits)
+ # Determine how to pack structs on this platform.
+ include(CheckStructPacking)
+-# Check for signed right shift implementation.
+-include(CheckSignedRightShift)
+ # Check if systtem fts implementation available
+ include(CheckFTS)
+-# Check if uname(2) follows POSIX standard.
+-include(CheckUnamePosix)
+-# Check support for file descriptor passing
+-include(CheckFDPassing)
+
+ # Check if big-endian
+ include(TestBigEndian)
diff --git a/meta-security/recipes-security/fail2ban/files/run-ptest b/meta-security/recipes-security/fail2ban/files/run-ptest
index 9f6aebe82..64d07d587 100644
--- a/meta-security/recipes-security/fail2ban/files/run-ptest
+++ b/meta-security/recipes-security/fail2ban/files/run-ptest
@@ -1,3 +1,3 @@
#!/bin/sh
-##PYTHON## fail2ban-testcases
+##PYTHON## bin/fail2ban-testcases
diff --git a/meta-security/recipes-security/fail2ban/python3-fail2ban_0.11.2.bb b/meta-security/recipes-security/fail2ban/python3-fail2ban_0.11.2.bb
index 6767d80cf..b480c76d5 100644
--- a/meta-security/recipes-security/fail2ban/python3-fail2ban_0.11.2.bb
+++ b/meta-security/recipes-security/fail2ban/python3-fail2ban_0.11.2.bb
@@ -35,8 +35,9 @@ do_install_append () {
do_install_ptest_append () {
install -d ${D}${PTEST_PATH}
+ install -d ${D}${PTEST_PATH}/bin
sed -i -e 's/##PYTHON##/${PYTHON_PN}/g' ${D}${PTEST_PATH}/run-ptest
- install -D ${S}/fail2ban-testcases-all-python3 ${D}${PTEST_PATH}
+ install -D ${S}/bin/* ${D}${PTEST_PATH}/bin
}
FILES_${PN} += "/run"
diff --git a/meta-security/recipes-security/fscryptctl/fscryptctl_1.0.0.bb b/meta-security/recipes-security/fscryptctl/fscryptctl_1.0.0.bb
index 440b4e34c..df76a3d9a 100644
--- a/meta-security/recipes-security/fscryptctl/fscryptctl_1.0.0.bb
+++ b/meta-security/recipes-security/fscryptctl/fscryptctl_1.0.0.bb
@@ -15,7 +15,7 @@ SRC_URI = "git://github.com/google/fscryptctl.git"
S = "${WORKDIR}/git"
do_install() {
- oe_runmake DESTDIR=${D}${bindir} install
+ oe_runmake DESTDIR=${D} PREFIX=/usr install
}
RRECOMMENDS_${PN} += "\
diff --git a/meta-security/recipes-security/libest/libest_3.2.0.bb b/meta-security/recipes-security/libest/libest_3.2.0.bb
index f993bd65e..5b6dc995c 100644
--- a/meta-security/recipes-security/libest/libest_3.2.0.bb
+++ b/meta-security/recipes-security/libest/libest_3.2.0.bb
@@ -6,7 +6,7 @@ LICENSE = "OpenSSL"
LIC_FILES_CHKSUM = "file://LICENSE;md5=ecb78acde8e3b795de8ef6b61aed5885"
SRCREV = "4ca02c6d7540f2b1bcea278a4fbe373daac7103b"
-SRC_URI = "git://github.com/cisco/libest"
+SRC_URI = "git://github.com/cisco/libest;branch=main"
DEPENDS = "openssl"
diff --git a/meta-security/recipes-security/mfa/python3-privacyidea_3.5.1.bb b/meta-security/recipes-security/mfa/python3-privacyidea_3.5.2.bb
index fb8441192..cd0acf869 100644
--- a/meta-security/recipes-security/mfa/python3-privacyidea_3.5.1.bb
+++ b/meta-security/recipes-security/mfa/python3-privacyidea_3.5.2.bb
@@ -6,7 +6,7 @@ LICENSE = "AGPL-3.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=c0acfa7a8a03b718abee9135bc1a1c55"
PYPI_PACKAGE = "privacyIDEA"
-SRC_URI[sha256sum] = "c10f8e9ec681af4cb42fde70864c2b9a4b47e2bcccfc1290f83c1283748772c6"
+SRC_URI[sha256sum] = "26aeb0d353af1f212c4df476202516953c20f7f31566cfe0b67cbb553de04763"
inherit pypi setuptools3
diff --git a/meta-supermicro/OWNERS b/meta-supermicro/OWNERS
new file mode 100644
index 000000000..c4a62d356
--- /dev/null
+++ b/meta-supermicro/OWNERS
@@ -0,0 +1,2 @@
+owners:
+- ryans@supermicro.com.tw
diff --git a/meta-supermicro/conf/layer.conf b/meta-supermicro/conf/layer.conf
index 23b7406ba..f46b3746d 100644
--- a/meta-supermicro/conf/layer.conf
+++ b/meta-supermicro/conf/layer.conf
@@ -7,5 +7,5 @@ BBFILES += "${LAYERDIR}/meta-common/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "supermicro-layer"
BBFILE_PATTERN_supermicro-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_supermicro-layer := "dunfell gatesgarth"
+LAYERSERIES_COMPAT_supermicro-layer := "gatesgarth hardknott"
diff --git a/meta-supermicro/meta-x11spi/conf/bblayers.conf.sample b/meta-supermicro/meta-x11spi/conf/bblayers.conf.sample
index fc7b62316..49191a6d2 100644
--- a/meta-supermicro/meta-x11spi/conf/bblayers.conf.sample
+++ b/meta-supermicro/meta-x11spi/conf/bblayers.conf.sample
@@ -13,6 +13,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
##OEROOT##/meta-openembedded/meta-webserver \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-supermicro \
diff --git a/meta-supermicro/meta-x11spi/conf/layer.conf b/meta-supermicro/meta-x11spi/conf/layer.conf
index 86e0a91d6..d77e82e90 100644
--- a/meta-supermicro/meta-x11spi/conf/layer.conf
+++ b/meta-supermicro/meta-x11spi/conf/layer.conf
@@ -8,4 +8,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "x11spi"
BBFILE_PATTERN_x11spi = ""
-LAYERSERIES_COMPAT_x11spi = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_x11spi = "gatesgarth hardknott"
diff --git a/meta-x86/conf/layer.conf b/meta-x86/conf/layer.conf
index d10e21009..93bc49738 100644
--- a/meta-x86/conf/layer.conf
+++ b/meta-x86/conf/layer.conf
@@ -3,4 +3,4 @@ BBPATH .= ":${LAYERDIR}"
BBFILE_COLLECTIONS += "obmc_machines_x86"
BBFILE_PATTERN_obmc_machines_x86 = ""
-LAYERSERIES_COMPAT_obmc_machines_x86 = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_obmc_machines_x86 = "gatesgarth hardknott"
diff --git a/meta-yadro/conf/layer.conf b/meta-yadro/conf/layer.conf
index 502a8fdc9..69a297db8 100644
--- a/meta-yadro/conf/layer.conf
+++ b/meta-yadro/conf/layer.conf
@@ -9,4 +9,4 @@ BBFILE_COLLECTIONS += "yadro-layer"
BBFILE_PATTERN_yadro-layer = "^${LAYERDIR}/"
BBFILE_PATTERN_IGNORE_EMPTY_yadro-layer = "1"
-LAYERSERIES_COMPAT_yadro-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_yadro-layer = "gatesgarth hardknott"
diff --git a/meta-yadro/meta-nicole/conf/bblayers.conf.sample b/meta-yadro/meta-nicole/conf/bblayers.conf.sample
index 62622c8cb..776b1a90b 100644
--- a/meta-yadro/meta-nicole/conf/bblayers.conf.sample
+++ b/meta-yadro/meta-nicole/conf/bblayers.conf.sample
@@ -11,6 +11,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
@@ -23,6 +24,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
diff --git a/meta-yadro/meta-nicole/conf/layer.conf b/meta-yadro/meta-nicole/conf/layer.conf
index 6bb50b713..5159fc942 100644
--- a/meta-yadro/meta-nicole/conf/layer.conf
+++ b/meta-yadro/meta-nicole/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "nicole-layer"
BBFILE_PATTERN_nicole-layer := "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_nicole-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_nicole-layer = "gatesgarth hardknott"
diff --git a/meta-yadro/meta-nicole/recipes-phosphor/cli/obmc-yadro-cli_%.bbappend b/meta-yadro/meta-nicole/recipes-phosphor/cli/obmc-yadro-cli_%.bbappend
index 760a12aa9..6708a6a9f 100644
--- a/meta-yadro/meta-nicole/recipes-phosphor/cli/obmc-yadro-cli_%.bbappend
+++ b/meta-yadro/meta-nicole/recipes-phosphor/cli/obmc-yadro-cli_%.bbappend
@@ -4,7 +4,7 @@ RDEPENDS_${PN}_append = " \
op-proc-control \
openpower-esel-parser \
phosphor-debug-collector \
- phosphor-led-manager-ledmanager \
+ phosphor-led-manager \
phosphor-mapper \
phosphor-state-manager \
"
diff --git a/meta-yadro/meta-nicole/recipes-phosphor/configuration/nicole-yaml-config/nicole-ipmi-sensors.yaml b/meta-yadro/meta-nicole/recipes-phosphor/configuration/nicole-yaml-config/nicole-ipmi-sensors.yaml
index 20b3a4ea2..d12d3397b 100644
--- a/meta-yadro/meta-nicole/recipes-phosphor/configuration/nicole-yaml-config/nicole-ipmi-sensors.yaml
+++ b/meta-yadro/meta-nicole/recipes-phosphor/configuration/nicole-yaml-config/nicole-ipmi-sensors.yaml
@@ -739,3 +739,24 @@
sensorReadingType: 111
sensorType: 31
serviceInterface: org.freedesktop.DBus.Properties
+
+254:
+ sensorType: 2
+ path: /xyz/openbmc_project/sensors/voltage/vbat
+ sensorReadingType: 1
+ # This gives the measurement 1.800..3.585 volts with a step 0.007
+ multiplierM: 7
+ offsetB: 18
+ bExp: 2
+ rExp: -3
+ scale: 0
+ unit: xyz.openbmc_project.Sensor.Value.Unit.Volts
+ mutability: Mutability::Read
+ readingType: readingData
+ serviceInterface: org.freedesktop.DBus.Properties
+ interfaces:
+ xyz.openbmc_project.Sensor.Value:
+ Value:
+ Offsets:
+ 255:
+ type: double
diff --git a/meta-yadro/meta-nicole/recipes-phosphor/sensors/phosphor-hwmon/obmc/hwmon/iio-hwmon-battery.conf b/meta-yadro/meta-nicole/recipes-phosphor/sensors/phosphor-hwmon/obmc/hwmon/iio-hwmon-battery.conf
index a6065805c..cca2f395a 100644
--- a/meta-yadro/meta-nicole/recipes-phosphor/sensors/phosphor-hwmon/obmc/hwmon/iio-hwmon-battery.conf
+++ b/meta-yadro/meta-nicole/recipes-phosphor/sensors/phosphor-hwmon/obmc/hwmon/iio-hwmon-battery.conf
@@ -1,5 +1,9 @@
LABEL_in1=vbat
-GAIN_in1=0.00225
+CRITLO_in1 = "2000"
+WARNLO_in1 = "2500"
+WARNHI_in1 = "3400"
+CRITHI_in1 = "3500"
+GAIN_in1=2.25
# GPIOP2 needs to be pulled high for battery voltage reading
GPIOCHIP_in1=0
diff --git a/meta-yadro/meta-nicole/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend b/meta-yadro/meta-nicole/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
index 58e0c90b3..e06afb48a 100644
--- a/meta-yadro/meta-nicole/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
+++ b/meta-yadro/meta-nicole/recipes-phosphor/sensors/phosphor-hwmon_%.bbappend
@@ -1,6 +1,6 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
-EXTRA_OECONF_append = " --enable-negative-errno-on-fail"
+EXTRA_OEMESON_append = " -Dnegative-errno-on-fail=true"
ITEMS = "iio-hwmon-battery.conf"
diff --git a/meta-yadro/meta-vesnin/conf/bblayers.conf.sample b/meta-yadro/meta-vesnin/conf/bblayers.conf.sample
index 379cc954c..5571b9d76 100644
--- a/meta-yadro/meta-vesnin/conf/bblayers.conf.sample
+++ b/meta-yadro/meta-vesnin/conf/bblayers.conf.sample
@@ -11,6 +11,7 @@ BBLAYERS ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
@@ -23,6 +24,7 @@ BBLAYERS_NON_REMOVABLE ?= " \
##OEROOT##/meta-openembedded/meta-networking \
##OEROOT##/meta-openembedded/meta-perl \
##OEROOT##/meta-openembedded/meta-python \
+ ##OEROOT##/meta-security \
##OEROOT##/meta-phosphor \
##OEROOT##/meta-aspeed \
##OEROOT##/meta-openpower \
diff --git a/meta-yadro/meta-vesnin/conf/layer.conf b/meta-yadro/meta-vesnin/conf/layer.conf
index ed65950fc..47ce75ec6 100644
--- a/meta-yadro/meta-vesnin/conf/layer.conf
+++ b/meta-yadro/meta-vesnin/conf/layer.conf
@@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "vesnin-layer"
BBFILE_PATTERN_vesnin-layer = "^${LAYERDIR}/"
-LAYERSERIES_COMPAT_vesnin-layer = "dunfell gatesgarth"
+LAYERSERIES_COMPAT_vesnin-layer = "gatesgarth hardknott"
diff --git a/poky/.gitignore b/poky/.gitignore
index 6dde540a4..4bfe022dc 100644
--- a/poky/.gitignore
+++ b/poky/.gitignore
@@ -30,4 +30,5 @@ hob-image-*.bb
pull-*/
bitbake/lib/toaster/contrib/tts/backlog.txt
bitbake/lib/toaster/contrib/tts/log/*
-bitbake/lib/toaster/contrib/tts/.cache/* \ No newline at end of file
+bitbake/lib/toaster/contrib/tts/.cache/*
+bitbake/lib/bb/tests/runqueue-tests/bitbake-cookerdaemon.log \ No newline at end of file
diff --git a/poky/bitbake/README b/poky/bitbake/README
index 479c37658..96e6007e7 100644
--- a/poky/bitbake/README
+++ b/poky/bitbake/README
@@ -11,7 +11,7 @@ For information about Bitbake, see the OpenEmbedded website:
Bitbake plain documentation can be found under the doc directory or its integrated
html version at the Yocto Project website:
- http://yoctoproject.org/documentation
+ https://docs.yoctoproject.org
Contributing
------------
diff --git a/poky/bitbake/bin/bitbake b/poky/bitbake/bin/bitbake
index bc762bfc1..712755087 100755
--- a/poky/bitbake/bin/bitbake
+++ b/poky/bitbake/bin/bitbake
@@ -26,7 +26,7 @@ from bb.main import bitbake_main, BitBakeConfigParameters, BBMainException
if sys.getfilesystemencoding() != "utf-8":
sys.exit("Please use a locale setting which supports UTF-8 (such as LANG=en_US.UTF-8).\nPython can't change the filesystem locale after loading so we need a UTF-8 when Python starts or things won't work.")
-__version__ = "1.49.2"
+__version__ = "1.50.0"
if __name__ == "__main__":
if __version__ != bb.__version__:
diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.rst b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.rst
index d74e768f6..56abf7735 100644
--- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.rst
+++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.rst
@@ -244,7 +244,8 @@ want upstream. Here is an example: ::
BBFILE_COLLECTIONS = "upstream local"
BBFILE_PATTERN_upstream = "^/stuff/openembedded/"
BBFILE_PATTERN_local = "^/stuff/openembedded.modified/"
- BBFILE_PRIORITY_upstream = "5" BBFILE_PRIORITY_local = "10"
+ BBFILE_PRIORITY_upstream = "5"
+ BBFILE_PRIORITY_local = "10"
.. note::
diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
index 6760b1082..bd6cc0ef2 100644
--- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
+++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
@@ -441,6 +441,15 @@ Here are some example URLs: ::
SRC_URI = "git://git.oe.handhelds.org/git/vip.git;tag=version-1"
SRC_URI = "git://git.oe.handhelds.org/git/vip.git;protocol=http"
+.. note::
+
+ Specifying passwords directly in ``git://`` urls is not supported.
+ There are several reasons: ``SRC_URI`` is often written out to logs and
+ other places, and that could easily leak passwords; it is also all too
+ easy to share metadata without removing passwords. SSH keys, ``~/.netrc``
+ and ``~/.ssh/config`` files can be used as alternatives.
+
+
.. _gitsm-fetcher:
Git Submodule Fetcher (``gitsm://``)
@@ -624,6 +633,34 @@ Here are some example URLs: ::
SRC_URI = "repo://REPOROOT;protocol=git;branch=some_branch;manifest=my_manifest.xml"
SRC_URI = "repo://REPOROOT;protocol=file;branch=some_branch;manifest=my_manifest.xml"
+.. _az-fetcher:
+
+Az Fetcher (``az://``)
+--------------------------
+
+This submodule fetches data from an
+`Azure Storage account <https://docs.microsoft.com/en-us/azure/storage/>`__ ,
+it inherits its functionality from the HTTP wget fetcher, but modifies its
+behavior to accomodate the usage of a
+`Shared Access Signature (SAS) <https://docs.microsoft.com/en-us/azure/storage/common/storage-sas-overview>`__
+for non-public data.
+
+Such functionality is set by the variable:
+
+- :term:`AZ_SAS`: The Azure Storage Shared Access Signature provides secure
+ delegate access to resources, if this variable is set, the Az Fetcher will
+ use it when fetching artifacts from the cloud.
+
+You can specify the AZ_SAS variable as shown below: ::
+
+ AZ_SAS = "se=2021-01-01&sp=r&sv=2018-11-09&sr=c&skoid=<skoid>&sig=<signature>"
+
+Here is an example URL: ::
+
+ SRC_URI = "az://<azure-storage-account>.blob.core.windows.net/<foo_container>/<bar_file>"
+
+It can also be used when setting mirrors definitions using the :term:`PREMIRRORS` variable.
+
Other Fetchers
--------------
diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst
index 7ea68ade7..d4190c26e 100644
--- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst
+++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst
@@ -1296,6 +1296,17 @@ For more information on task dependencies, see the
See the ":ref:`bitbake-user-manual/bitbake-user-manual-metadata:variable flags`" section for information
on variable flags you can use with tasks.
+.. note::
+
+ While it's infrequent, it's possible to define multiple tasks as
+ dependencies when calling ``addtask``. For example, here's a snippet
+ from the OpenEmbedded class file ``package_tar.bbclass``::
+
+ addtask package_write_tar before do_build after do_packagedata do_package
+
+ Note how the ``package_write_tar`` task has to wait until both of
+ ``do_packagedata`` and ``do_package`` complete.
+
Deleting a Task
---------------
@@ -1569,7 +1580,7 @@ might have an interest in viewing:
events when each of the workers parse the base configuration or if
the server changes configuration and reparses. Any given datastore
only has one such event executed against it, however. If
- ```BB_INVALIDCONF`` <#>`__ is set in the datastore by the event
+ :term:`BB_INVALIDCONF` is set in the datastore by the event
handler, the configuration is reparsed and a new event triggered,
allowing the metadata to update configuration.
diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst
index 6469f9d1a..489fa15fa 100644
--- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst
+++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst
@@ -39,6 +39,19 @@ overview of their function and contents.
when specified allows for the Git binary from the host to be used
rather than building ``git-native``.
+ :term:`AZ_SAS`
+ Azure Storage Shared Access Signature, when using the
+ :ref:`Azure Storage fetcher <bitbake-user-manual/bitbake-user-manual-fetching:fetchers>`
+ This variable can be defined to be used by the fetcher to authenticate
+ and gain access to non-public artifacts.
+ ::
+
+ AZ_SAS = ""se=2021-01-01&sp=r&sv=2018-11-09&sr=c&skoid=<skoid>&sig=<signature>""
+
+ For more information see Microsoft's Azure Storage documentation at
+ https://docs.microsoft.com/en-us/azure/storage/common/storage-sas-overview
+
+
:term:`B`
The directory in which BitBake executes functions during a recipe's
build process.
@@ -257,45 +270,6 @@ overview of their function and contents.
``my-recipe.bb`` is executing, the ``BB_FILENAME`` variable contains
"/foo/path/my-recipe.bb".
- :term:`BBFILES_DYNAMIC`
- Activates content depending on presence of identified layers. You
- identify the layers by the collections that the layers define.
-
- Use the ``BBFILES_DYNAMIC`` variable to avoid ``.bbappend`` files whose
- corresponding ``.bb`` file is in a layer that attempts to modify other
- layers through ``.bbappend`` but does not want to introduce a hard
- dependency on those other layers.
-
- Additionally you can prefix the rule with "!" to add ``.bbappend`` and
- ``.bb`` files in case a layer is not present. Use this avoid hard
- dependency on those other layers.
-
- Use the following form for ``BBFILES_DYNAMIC``: ::
-
- collection_name:filename_pattern
-
- The following example identifies two collection names and two filename
- patterns: ::
-
- BBFILES_DYNAMIC += "\
- clang-layer:${LAYERDIR}/bbappends/meta-clang/*/*/*.bbappend \
- core:${LAYERDIR}/bbappends/openembedded-core/meta/*/*/*.bbappend \
- "
-
- When the collection name is prefixed with "!" it will add the file pattern in case
- the layer is absent: ::
-
- BBFILES_DYNAMIC += "\
- !clang-layer:${LAYERDIR}/backfill/meta-clang/*/*/*.bb \
- "
-
- This next example shows an error message that occurs because invalid
- entries are found, which cause parsing to abort: ::
-
- ERROR: BBFILES_DYNAMIC entries must be of the form {!}<collection name>:<filename pattern>, not:
- /work/my-layer/bbappends/meta-security-isafw/*/*/*.bbappend
- /work/my-layer/bbappends/openembedded-core/meta/*/*/*.bbappend
-
:term:`BB_GENERATE_MIRROR_TARBALLS`
Causes tarballs of the Git repositories, including the Git metadata,
to be placed in the :term:`DL_DIR` directory. Anyone
@@ -671,6 +645,45 @@ overview of their function and contents.
For details on the syntax, see the documentation by following the
previous link.
+ :term:`BBFILES_DYNAMIC`
+ Activates content depending on presence of identified layers. You
+ identify the layers by the collections that the layers define.
+
+ Use the ``BBFILES_DYNAMIC`` variable to avoid ``.bbappend`` files whose
+ corresponding ``.bb`` file is in a layer that attempts to modify other
+ layers through ``.bbappend`` but does not want to introduce a hard
+ dependency on those other layers.
+
+ Additionally you can prefix the rule with "!" to add ``.bbappend`` and
+ ``.bb`` files in case a layer is not present. Use this avoid hard
+ dependency on those other layers.
+
+ Use the following form for ``BBFILES_DYNAMIC``: ::
+
+ collection_name:filename_pattern
+
+ The following example identifies two collection names and two filename
+ patterns: ::
+
+ BBFILES_DYNAMIC += "\
+ clang-layer:${LAYERDIR}/bbappends/meta-clang/*/*/*.bbappend \
+ core:${LAYERDIR}/bbappends/openembedded-core/meta/*/*/*.bbappend \
+ "
+
+ When the collection name is prefixed with "!" it will add the file pattern in case
+ the layer is absent: ::
+
+ BBFILES_DYNAMIC += "\
+ !clang-layer:${LAYERDIR}/backfill/meta-clang/*/*/*.bb \
+ "
+
+ This next example shows an error message that occurs because invalid
+ entries are found, which cause parsing to abort: ::
+
+ ERROR: BBFILES_DYNAMIC entries must be of the form {!}<collection name>:<filename pattern>, not:
+ /work/my-layer/bbappends/meta-security-isafw/*/*/*.bbappend
+ /work/my-layer/bbappends/openembedded-core/meta/*/*/*.bbappend
+
:term:`BBINCLUDED`
Contains a space-separated list of all of all files that BitBake's
parser included during parsing of the current file.
@@ -1083,8 +1096,8 @@ overview of their function and contents.
PREFERRED_PROVIDER_aaa = "bbb"
:term:`PREFERRED_VERSION`
- If there are multiple versions of recipes available, this variable
- determines which recipe should be given preference. You must always
+ If there are multiple versions of a recipe available, this variable
+ determines which version should be given preference. You must always
suffix the variable with the :term:`PN` you want to
select, and you should set :term:`PV` accordingly for
precedence.
@@ -1104,6 +1117,10 @@ overview of their function and contents.
end of the string. You cannot use the wildcard character in any other
location of the string.
+ If a recipe with the specified version is not available, a warning
+ message will be shown. See :term:`REQUIRED_VERSION` if you want this
+ to be an error instead.
+
:term:`PREMIRRORS`
Specifies additional paths from which BitBake gets source code. When
the build system searches for source code, it first tries the local
@@ -1214,6 +1231,16 @@ overview of their function and contents.
The directory in which a local copy of a ``google-repo`` directory is
stored when it is synced.
+ :term:`REQUIRED_VERSION`
+ If there are multiple versions of a recipe available, this variable
+ determines which version should be given preference. ``REQUIRED_VERSION``
+ works in exactly the same manner as :term:`PREFERRED_VERSION`, except
+ that if the specified version is not available then an error message
+ is shown and the build fails immediately.
+
+ If both ``REQUIRED_VERSION`` and ``PREFERRED_VERSION`` are set for
+ the same recipe, the ``REQUIRED_VERSION`` value applies.
+
:term:`RPROVIDES`
A list of package name aliases that a package also provides. These
aliases are useful for satisfying runtime dependencies of other
@@ -1303,6 +1330,8 @@ overview of their function and contents.
- ``svn://`` : Fetches files from a Subversion (``svn``) revision
control repository.
+ - ``az://`` : Fetches files from an Azure Storage account using HTTPS.
+
Here are some additional options worth mentioning:
- ``unpack`` : Controls whether or not to unpack the file if it is
diff --git a/poky/bitbake/lib/bb/__init__.py b/poky/bitbake/lib/bb/__init__.py
index 84a9051c1..9f61dae14 100644
--- a/poky/bitbake/lib/bb/__init__.py
+++ b/poky/bitbake/lib/bb/__init__.py
@@ -9,7 +9,7 @@
# SPDX-License-Identifier: GPL-2.0-only
#
-__version__ = "1.49.2"
+__version__ = "1.50.0"
import sys
if sys.version_info < (3, 5, 0):
@@ -58,7 +58,7 @@ class BBLoggerMixin(object):
if not bb.event.worker_pid:
if self.name in bb.msg.loggerDefaultDomains and loglevel > (bb.msg.loggerDefaultDomains[self.name]):
return
- if loglevel > bb.msg.loggerDefaultLogLevel:
+ if loglevel < bb.msg.loggerDefaultLogLevel:
return
return self.log(loglevel, msg, *args, **kwargs)
diff --git a/poky/bitbake/lib/bb/build.py b/poky/bitbake/lib/bb/build.py
index f4f897e41..b2715fc53 100644
--- a/poky/bitbake/lib/bb/build.py
+++ b/poky/bitbake/lib/bb/build.py
@@ -854,6 +854,23 @@ def make_stamp(task, d, file_name = None):
file_name = d.getVar('BB_FILENAME')
bb.parse.siggen.dump_sigtask(file_name, task, stampbase, True)
+def find_stale_stamps(task, d, file_name=None):
+ current = stamp_internal(task, d, file_name)
+ current2 = stamp_internal(task + "_setscene", d, file_name)
+ cleanmask = stamp_cleanmask_internal(task, d, file_name)
+ found = []
+ for mask in cleanmask:
+ for name in glob.glob(mask):
+ if "sigdata" in name or "sigbasedata" in name:
+ continue
+ if name.endswith('.taint'):
+ continue
+ if name == current or name == current2:
+ continue
+ logger.debug2("Stampfile %s does not match %s or %s" % (name, current, current2))
+ found.append(name)
+ return found
+
def del_stamp(task, d, file_name = None):
"""
Removes a stamp for a given task
diff --git a/poky/bitbake/lib/bb/cache.py b/poky/bitbake/lib/bb/cache.py
index aea2b8bc1..27eb27179 100644
--- a/poky/bitbake/lib/bb/cache.py
+++ b/poky/bitbake/lib/bb/cache.py
@@ -126,6 +126,7 @@ class CoreRecipeInfo(RecipeInfoCommon):
self.inherits = self.getvar('__inherit_cache', metadata, expand=False)
self.fakerootenv = self.getvar('FAKEROOTENV', metadata)
self.fakerootdirs = self.getvar('FAKEROOTDIRS', metadata)
+ self.fakerootlogs = self.getvar('FAKEROOTLOGS', metadata)
self.fakerootnoenv = self.getvar('FAKEROOTNOENV', metadata)
self.extradepsfunc = self.getvar('calculate_extra_depends', metadata)
@@ -163,6 +164,7 @@ class CoreRecipeInfo(RecipeInfoCommon):
cachedata.fakerootenv = {}
cachedata.fakerootnoenv = {}
cachedata.fakerootdirs = {}
+ cachedata.fakerootlogs = {}
cachedata.extradepsfunc = {}
def add_cacheData(self, cachedata, fn):
@@ -231,6 +233,7 @@ class CoreRecipeInfo(RecipeInfoCommon):
cachedata.fakerootenv[fn] = self.fakerootenv
cachedata.fakerootnoenv[fn] = self.fakerootnoenv
cachedata.fakerootdirs[fn] = self.fakerootdirs
+ cachedata.fakerootlogs[fn] = self.fakerootlogs
cachedata.extradepsfunc[fn] = self.extradepsfunc
def virtualfn2realfn(virtualfn):
diff --git a/poky/bitbake/lib/bb/codeparser.py b/poky/bitbake/lib/bb/codeparser.py
index 25a7ac69d..0cec452c0 100644
--- a/poky/bitbake/lib/bb/codeparser.py
+++ b/poky/bitbake/lib/bb/codeparser.py
@@ -212,9 +212,9 @@ class PythonParser():
funcstr = codegen.to_source(func)
argstr = codegen.to_source(arg)
except TypeError:
- self.log.debug(2, 'Failed to convert function and argument to source form')
+ self.log.debug2('Failed to convert function and argument to source form')
else:
- self.log.debug(1, self.unhandled_message % (funcstr, argstr))
+ self.log.debug(self.unhandled_message % (funcstr, argstr))
def visit_Call(self, node):
name = self.called_node_name(node.func)
@@ -450,7 +450,7 @@ class ShellParser():
cmd = word[1]
if cmd.startswith("$"):
- self.log.debug(1, self.unhandled_template % cmd)
+ self.log.debug(self.unhandled_template % cmd)
elif cmd == "eval":
command = " ".join(word for _, word in words[1:])
self._parse_shell(command)
diff --git a/poky/bitbake/lib/bb/cooker.py b/poky/bitbake/lib/bb/cooker.py
index f4ab797ed..39e10e613 100644
--- a/poky/bitbake/lib/bb/cooker.py
+++ b/poky/bitbake/lib/bb/cooker.py
@@ -502,22 +502,30 @@ class BBCooker:
def showVersions(self):
- (latest_versions, preferred_versions) = self.findProviders()
+ (latest_versions, preferred_versions, required) = self.findProviders()
- logger.plain("%-35s %25s %25s", "Recipe Name", "Latest Version", "Preferred Version")
- logger.plain("%-35s %25s %25s\n", "===========", "==============", "=================")
+ logger.plain("%-35s %25s %25s %25s", "Recipe Name", "Latest Version", "Preferred Version", "Required Version")
+ logger.plain("%-35s %25s %25s %25s\n", "===========", "==============", "=================", "================")
for p in sorted(self.recipecaches[''].pkg_pn):
- pref = preferred_versions[p]
+ preferred = preferred_versions[p]
latest = latest_versions[p]
+ requiredstr = ""
+ preferredstr = ""
+ if required[p]:
+ if preferred[0] is not None:
+ requiredstr = preferred[0][0] + ":" + preferred[0][1] + '-' + preferred[0][2]
+ else:
+ bb.fatal("REQUIRED_VERSION of package %s not available" % p)
+ else:
+ preferredstr = preferred[0][0] + ":" + preferred[0][1] + '-' + preferred[0][2]
- prefstr = pref[0][0] + ":" + pref[0][1] + '-' + pref[0][2]
lateststr = latest[0][0] + ":" + latest[0][1] + "-" + latest[0][2]
- if pref == latest:
- prefstr = ""
+ if preferred == latest:
+ preferredstr = ""
- logger.plain("%-35s %25s %25s", p, lateststr, prefstr)
+ logger.plain("%-35s %25s %25s %25s", p, lateststr, preferredstr, requiredstr)
def showEnvironment(self, buildfile=None, pkgs_to_build=None):
"""
@@ -1063,10 +1071,16 @@ class BBCooker:
if pn in self.recipecaches[mc].providers:
filenames = self.recipecaches[mc].providers[pn]
eligible, foundUnique = bb.providers.filterProviders(filenames, pn, self.databuilder.mcdata[mc], self.recipecaches[mc])
- filename = eligible[0]
+ if eligible is not None:
+ filename = eligible[0]
+ else:
+ filename = None
return None, None, None, filename
elif pn in self.recipecaches[mc].pkg_pn:
- return bb.providers.findBestProvider(pn, self.databuilder.mcdata[mc], self.recipecaches[mc], self.recipecaches[mc].pkg_pn)
+ (latest, latest_f, preferred_ver, preferred_file, required) = bb.providers.findBestProvider(pn, self.databuilder.mcdata[mc], self.recipecaches[mc], self.recipecaches[mc].pkg_pn)
+ if required and preferred_file is None:
+ return None, None, None, None
+ return (latest, latest_f, preferred_ver, preferred_file)
else:
return None, None, None, None
diff --git a/poky/bitbake/lib/bb/event.py b/poky/bitbake/lib/bb/event.py
index 23e1f3187..0454c7533 100644
--- a/poky/bitbake/lib/bb/event.py
+++ b/poky/bitbake/lib/bb/event.py
@@ -118,7 +118,7 @@ def fire_class_handlers(event, d):
if _eventfilter:
if not _eventfilter(name, handler, event, d):
continue
- if d and not name in (d.getVar("__BBHANDLERS_MC") or []):
+ if d is not None and not name in (d.getVar("__BBHANDLERS_MC") or set()):
continue
execute_handler(name, handler, event, d)
@@ -232,12 +232,16 @@ noop = lambda _: None
def register(name, handler, mask=None, filename=None, lineno=None, data=None):
"""Register an Event handler"""
- if data and data.getVar("BB_CURRENT_MC"):
+ if data is not None and data.getVar("BB_CURRENT_MC"):
mc = data.getVar("BB_CURRENT_MC")
name = '%s%s' % (mc.replace('-', '_'), name)
# already registered
if name in _handlers:
+ if data is not None:
+ bbhands_mc = (data.getVar("__BBHANDLERS_MC") or set())
+ bbhands_mc.add(name)
+ data.setVar("__BBHANDLERS_MC", bbhands_mc)
return AlreadyRegistered
if handler is not None:
@@ -274,16 +278,16 @@ def register(name, handler, mask=None, filename=None, lineno=None, data=None):
_event_handler_map[m] = {}
_event_handler_map[m][name] = True
- if data:
- bbhands_mc = (data.getVar("__BBHANDLERS_MC") or [])
- bbhands_mc.append(name)
+ if data is not None:
+ bbhands_mc = (data.getVar("__BBHANDLERS_MC") or set())
+ bbhands_mc.add(name)
data.setVar("__BBHANDLERS_MC", bbhands_mc)
return Registered
def remove(name, handler, data=None):
"""Remove an Event handler"""
- if data:
+ if data is not None:
if data.getVar("BB_CURRENT_MC"):
mc = data.getVar("BB_CURRENT_MC")
name = '%s%s' % (mc.replace('-', '_'), name)
@@ -295,8 +299,8 @@ def remove(name, handler, data=None):
if name in _event_handler_map[event]:
_event_handler_map[event].pop(name)
- if data:
- bbhands_mc = (data.getVar("__BBHANDLERS_MC") or [])
+ if data is not None:
+ bbhands_mc = (data.getVar("__BBHANDLERS_MC") or set())
if name in bbhands_mc:
bbhands_mc.remove(name)
data.setVar("__BBHANDLERS_MC", bbhands_mc)
@@ -666,6 +670,17 @@ class ReachableStamps(Event):
Event.__init__(self)
self.stamps = stamps
+class StaleSetSceneTasks(Event):
+ """
+ An event listing setscene tasks which are 'stale' and will
+ be rerun. The metadata may use to clean up stale data.
+ tasks is a mapping of tasks and matching stale stamps.
+ """
+
+ def __init__(self, tasks):
+ Event.__init__(self)
+ self.tasks = tasks
+
class FilesMatchingFound(Event):
"""
Event when a list of files matching the supplied pattern has
diff --git a/poky/bitbake/lib/bb/fetch2/__init__.py b/poky/bitbake/lib/bb/fetch2/__init__.py
index 19169d780..cf0201c49 100644
--- a/poky/bitbake/lib/bb/fetch2/__init__.py
+++ b/poky/bitbake/lib/bb/fetch2/__init__.py
@@ -1243,7 +1243,7 @@ class FetchData(object):
if checksum_name in self.parm:
checksum_expected = self.parm[checksum_name]
- elif self.type not in ["http", "https", "ftp", "ftps", "sftp", "s3"]:
+ elif self.type not in ["http", "https", "ftp", "ftps", "sftp", "s3", "az"]:
checksum_expected = None
else:
checksum_expected = d.getVarFlag("SRC_URI", checksum_name)
@@ -1908,6 +1908,7 @@ from . import repo
from . import clearcase
from . import npm
from . import npmsw
+from . import az
methods.append(local.Local())
methods.append(wget.Wget())
@@ -1927,3 +1928,4 @@ methods.append(repo.Repo())
methods.append(clearcase.ClearCase())
methods.append(npm.Npm())
methods.append(npmsw.NpmShrinkWrap())
+methods.append(az.Az())
diff --git a/poky/bitbake/lib/bb/fetch2/az.py b/poky/bitbake/lib/bb/fetch2/az.py
new file mode 100644
index 000000000..3ccc594c2
--- /dev/null
+++ b/poky/bitbake/lib/bb/fetch2/az.py
@@ -0,0 +1,93 @@
+"""
+BitBake 'Fetch' Azure Storage implementation
+
+"""
+
+# Copyright (C) 2021 Alejandro Hernandez Samaniego
+#
+# Based on bb.fetch2.wget:
+# Copyright (C) 2003, 2004 Chris Larson
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# Based on functions from the base bb module, Copyright 2003 Holger Schurig
+
+import shlex
+import os
+import bb
+from bb.fetch2 import FetchError
+from bb.fetch2 import logger
+from bb.fetch2.wget import Wget
+
+
+class Az(Wget):
+
+ def supports(self, ud, d):
+ """
+ Check to see if a given url can be fetched from Azure Storage
+ """
+ return ud.type in ['az']
+
+
+ def checkstatus(self, fetch, ud, d, try_again=True):
+
+ # checkstatus discards parameters either way, we need to do this before adding the SAS
+ ud.url = ud.url.replace('az://','https://').split(';')[0]
+
+ az_sas = d.getVar('AZ_SAS')
+ if az_sas and az_sas not in ud.url:
+ ud.url += az_sas
+
+ return Wget.checkstatus(self, fetch, ud, d, try_again)
+
+ # Override download method, include retries
+ def download(self, ud, d, retries=3):
+ """Fetch urls"""
+
+ # If were reaching the account transaction limit we might be refused a connection,
+ # retrying allows us to avoid false negatives since the limit changes over time
+ fetchcmd = self.basecmd + ' --retry-connrefused --waitretry=5'
+
+ # We need to provide a localpath to avoid wget using the SAS
+ # ud.localfile either has the downloadfilename or ud.path
+ localpath = os.path.join(d.getVar("DL_DIR"), ud.localfile)
+ bb.utils.mkdirhier(os.path.dirname(localpath))
+ fetchcmd += " -O %s" % shlex.quote(localpath)
+
+
+ if ud.user and ud.pswd:
+ fetchcmd += " --user=%s --password=%s --auth-no-challenge" % (ud.user, ud.pswd)
+
+ # Check if a Shared Access Signature was given and use it
+ az_sas = d.getVar('AZ_SAS')
+
+ if az_sas:
+ azuri = '%s%s%s%s' % ('https://', ud.host, ud.path, az_sas)
+ else:
+ azuri = '%s%s%s' % ('https://', ud.host, ud.path)
+
+ if os.path.exists(ud.localpath):
+ # file exists, but we didnt complete it.. trying again.
+ fetchcmd += d.expand(" -c -P ${DL_DIR} '%s'" % azuri)
+ else:
+ fetchcmd += d.expand(" -P ${DL_DIR} '%s'" % azuri)
+
+ try:
+ self._runwget(ud, d, fetchcmd, False)
+ except FetchError as e:
+ # Azure fails on handshake sometimes when using wget after some stress, producing a
+ # FetchError from the fetcher, if the artifact exists retyring should succeed
+ if 'Unable to establish SSL connection' in str(e):
+ logger.debug2('Unable to establish SSL connection: Retries remaining: %s, Retrying...' % retries)
+ self.download(ud, d, retries -1)
+
+ # Sanity check since wget can pretend it succeed when it didn't
+ # Also, this used to happen if sourceforge sent us to the mirror page
+ if not os.path.exists(ud.localpath):
+ raise FetchError("The fetch command returned success for url %s but %s doesn't exist?!" % (azuri, ud.localpath), azuri)
+
+ if os.path.getsize(ud.localpath) == 0:
+ os.remove(ud.localpath)
+ raise FetchError("The fetch of %s resulted in a zero size file?! Deleting and failing since this isn't right." % (azuri), azuri)
+
+ return True
diff --git a/poky/bitbake/lib/bb/providers.py b/poky/bitbake/lib/bb/providers.py
index b5a6cd009..3ec11a40e 100644
--- a/poky/bitbake/lib/bb/providers.py
+++ b/poky/bitbake/lib/bb/providers.py
@@ -38,16 +38,17 @@ def findProviders(cfgData, dataCache, pkg_pn = None):
localdata = data.createCopy(cfgData)
bb.data.expandKeys(localdata)
+ required = {}
preferred_versions = {}
latest_versions = {}
for pn in pkg_pn:
- (last_ver, last_file, pref_ver, pref_file) = findBestProvider(pn, localdata, dataCache, pkg_pn)
+ (last_ver, last_file, pref_ver, pref_file, req) = findBestProvider(pn, localdata, dataCache, pkg_pn)
preferred_versions[pn] = (pref_ver, pref_file)
latest_versions[pn] = (last_ver, last_file)
+ required[pn] = req
- return (latest_versions, preferred_versions)
-
+ return (latest_versions, preferred_versions, required)
def allProviders(dataCache):
"""
@@ -59,7 +60,6 @@ def allProviders(dataCache):
all_providers[pn].append((ver, fn))
return all_providers
-
def sortPriorities(pn, dataCache, pkg_pn = None):
"""
Reorder pkg_pn by file priority and default preference
@@ -87,6 +87,21 @@ def sortPriorities(pn, dataCache, pkg_pn = None):
return tmp_pn
+def versionVariableMatch(cfgData, keyword, pn):
+ """
+ Return the value of the <keyword>_VERSION variable if set.
+ """
+
+ # pn can contain '_', e.g. gcc-cross-x86_64 and an override cannot
+ # hence we do this manually rather than use OVERRIDES
+ ver = cfgData.getVar("%s_VERSION_pn-%s" % (keyword, pn))
+ if not ver:
+ ver = cfgData.getVar("%s_VERSION_%s" % (keyword, pn))
+ if not ver:
+ ver = cfgData.getVar("%s_VERSION" % keyword)
+
+ return ver
+
def preferredVersionMatch(pe, pv, pr, preferred_e, preferred_v, preferred_r):
"""
Check if the version pe,pv,pr is the preferred one.
@@ -102,19 +117,28 @@ def preferredVersionMatch(pe, pv, pr, preferred_e, preferred_v, preferred_r):
def findPreferredProvider(pn, cfgData, dataCache, pkg_pn = None, item = None):
"""
- Find the first provider in pkg_pn with a PREFERRED_VERSION set.
+ Find the first provider in pkg_pn with REQUIRED_VERSION or PREFERRED_VERSION set.
"""
preferred_file = None
preferred_ver = None
+ required = False
- # pn can contain '_', e.g. gcc-cross-x86_64 and an override cannot
- # hence we do this manually rather than use OVERRIDES
- preferred_v = cfgData.getVar("PREFERRED_VERSION_pn-%s" % pn)
- if not preferred_v:
- preferred_v = cfgData.getVar("PREFERRED_VERSION_%s" % pn)
- if not preferred_v:
- preferred_v = cfgData.getVar("PREFERRED_VERSION")
+ required_v = versionVariableMatch(cfgData, "REQUIRED", pn)
+ preferred_v = versionVariableMatch(cfgData, "PREFERRED", pn)
+
+ itemstr = ""
+ if item:
+ itemstr = " (for item %s)" % item
+
+ if required_v is not None:
+ if preferred_v is not None:
+ logger.warn("REQUIRED_VERSION and PREFERRED_VERSION for package %s%s are both set using REQUIRED_VERSION %s", pn, itemstr, required_v)
+ else:
+ logger.debug("REQUIRED_VERSION is set for package %s%s", pn, itemstr)
+ # REQUIRED_VERSION always takes precedence over PREFERRED_VERSION
+ preferred_v = required_v
+ required = True
if preferred_v:
m = re.match(r'(\d+:)*(.*)(_.*)*', preferred_v)
@@ -147,11 +171,9 @@ def findPreferredProvider(pn, cfgData, dataCache, pkg_pn = None, item = None):
pv_str = preferred_v
if not (preferred_e is None):
pv_str = '%s:%s' % (preferred_e, pv_str)
- itemstr = ""
- if item:
- itemstr = " (for item %s)" % item
if preferred_file is None:
- logger.warn("preferred version %s of %s not available%s", pv_str, pn, itemstr)
+ if not required:
+ logger.warn("preferred version %s of %s not available%s", pv_str, pn, itemstr)
available_vers = []
for file_set in pkg_pn:
for f in file_set:
@@ -164,11 +186,15 @@ def findPreferredProvider(pn, cfgData, dataCache, pkg_pn = None, item = None):
if available_vers:
available_vers.sort()
logger.warn("versions of %s available: %s", pn, ' '.join(available_vers))
+ if required:
+ logger.error("required version %s of %s not available%s", pv_str, pn, itemstr)
else:
- logger.debug("selecting %s as PREFERRED_VERSION %s of package %s%s", preferred_file, pv_str, pn, itemstr)
-
- return (preferred_ver, preferred_file)
+ if required:
+ logger.debug("selecting %s as REQUIRED_VERSION %s of package %s%s", preferred_file, pv_str, pn, itemstr)
+ else:
+ logger.debug("selecting %s as PREFERRED_VERSION %s of package %s%s", preferred_file, pv_str, pn, itemstr)
+ return (preferred_ver, preferred_file, required)
def findLatestProvider(pn, cfgData, dataCache, file_set):
"""
@@ -189,7 +215,6 @@ def findLatestProvider(pn, cfgData, dataCache, file_set):
return (latest, latest_f)
-
def findBestProvider(pn, cfgData, dataCache, pkg_pn = None, item = None):
"""
If there is a PREFERRED_VERSION, find the highest-priority bbfile
@@ -198,17 +223,16 @@ def findBestProvider(pn, cfgData, dataCache, pkg_pn = None, item = None):
"""
sortpkg_pn = sortPriorities(pn, dataCache, pkg_pn)
- # Find the highest priority provider with a PREFERRED_VERSION set
- (preferred_ver, preferred_file) = findPreferredProvider(pn, cfgData, dataCache, sortpkg_pn, item)
+ # Find the highest priority provider with a REQUIRED_VERSION or PREFERRED_VERSION set
+ (preferred_ver, preferred_file, required) = findPreferredProvider(pn, cfgData, dataCache, sortpkg_pn, item)
# Find the latest version of the highest priority provider
(latest, latest_f) = findLatestProvider(pn, cfgData, dataCache, sortpkg_pn[0])
- if preferred_file is None:
+ if not required and preferred_file is None:
preferred_file = latest_f
preferred_ver = latest
- return (latest, latest_f, preferred_ver, preferred_file)
-
+ return (latest, latest_f, preferred_ver, preferred_file, required)
def _filterProviders(providers, item, cfgData, dataCache):
"""
@@ -234,10 +258,13 @@ def _filterProviders(providers, item, cfgData, dataCache):
logger.debug("providers for %s are: %s", item, list(sorted(pkg_pn.keys())))
- # First add PREFERRED_VERSIONS
+ # First add REQUIRED_VERSIONS or PREFERRED_VERSIONS
for pn in sorted(pkg_pn):
sortpkg_pn[pn] = sortPriorities(pn, dataCache, pkg_pn)
- preferred_versions[pn] = findPreferredProvider(pn, cfgData, dataCache, sortpkg_pn[pn], item)
+ preferred_ver, preferred_file, required = findPreferredProvider(pn, cfgData, dataCache, sortpkg_pn[pn], item)
+ if required and preferred_file is None:
+ return eligible
+ preferred_versions[pn] = (preferred_ver, preferred_file)
if preferred_versions[pn][1]:
eligible.append(preferred_versions[pn][1])
@@ -249,7 +276,6 @@ def _filterProviders(providers, item, cfgData, dataCache):
eligible.append(preferred_versions[pn][1])
if not eligible:
- logger.error("no eligible providers for %s", item)
return eligible
# If pn == item, give it a slight default preference
@@ -266,7 +292,6 @@ def _filterProviders(providers, item, cfgData, dataCache):
return eligible
-
def filterProviders(providers, item, cfgData, dataCache):
"""
Take a list of providers and filter/reorder according to the
@@ -388,7 +413,6 @@ def getRuntimeProviders(dataCache, rdepend):
return rproviders
-
def buildWorldTargetList(dataCache, task=None):
"""
Build package list for "bitbake world"
diff --git a/poky/bitbake/lib/bb/runqueue.py b/poky/bitbake/lib/bb/runqueue.py
index 54ef245a6..cd56a5547 100644
--- a/poky/bitbake/lib/bb/runqueue.py
+++ b/poky/bitbake/lib/bb/runqueue.py
@@ -1242,6 +1242,7 @@ class RunQueue:
magic = "decafbad"
if self.cooker.configuration.profile:
magic = "decafbadbad"
+ fakerootlogs = None
if fakeroot:
magic = magic + "beef"
mcdata = self.cooker.databuilder.mcdata[mc]
@@ -1251,10 +1252,11 @@ class RunQueue:
for key, value in (var.split('=') for var in fakerootenv):
env[key] = value
worker = subprocess.Popen(fakerootcmd + ["bitbake-worker", magic], stdout=subprocess.PIPE, stdin=subprocess.PIPE, env=env)
+ fakerootlogs = self.rqdata.dataCaches[mc].fakerootlogs
else:
worker = subprocess.Popen(["bitbake-worker", magic], stdout=subprocess.PIPE, stdin=subprocess.PIPE)
bb.utils.nonblockingfd(worker.stdout)
- workerpipe = runQueuePipe(worker.stdout, None, self.cfgData, self, rqexec)
+ workerpipe = runQueuePipe(worker.stdout, None, self.cfgData, self, rqexec, fakerootlogs=fakerootlogs)
workerdata = {
"taskdeps" : self.rqdata.dataCaches[mc].task_deps,
@@ -1772,7 +1774,7 @@ class RunQueueExecute:
self.sqdata = SQData()
build_scenequeue_data(self.sqdata, self.rqdata, self.rq, self.cooker, self.stampcache, self)
- def runqueue_process_waitpid(self, task, status):
+ def runqueue_process_waitpid(self, task, status, fakerootlog=None):
# self.build_stamps[pid] may not exist when use shared work directory.
if task in self.build_stamps:
@@ -1787,7 +1789,7 @@ class RunQueueExecute:
self.sq_live.remove(task)
else:
if status != 0:
- self.task_fail(task, status)
+ self.task_fail(task, status, fakerootlog=fakerootlog)
else:
self.task_complete(task)
return True
@@ -1908,14 +1910,31 @@ class RunQueueExecute:
self.task_completeoutright(task)
self.runq_tasksrun.add(task)
- def task_fail(self, task, exitcode):
+ def task_fail(self, task, exitcode, fakerootlog=None):
"""
Called when a task has failed
Updates the state engine with the failure
"""
self.stats.taskFailed()
self.failed_tids.append(task)
- bb.event.fire(runQueueTaskFailed(task, self.stats, exitcode, self.rq), self.cfgData)
+
+ fakeroot_log = ""
+ if fakerootlog and os.path.exists(fakerootlog):
+ with open(fakerootlog) as fakeroot_log_file:
+ fakeroot_failed = False
+ for line in reversed(fakeroot_log_file.readlines()):
+ for fakeroot_error in ['mismatch', 'error', 'fatal']:
+ if fakeroot_error in line.lower():
+ fakeroot_failed = True
+ if 'doing new pid setup and server start' in line:
+ break
+ fakeroot_log = line + fakeroot_log
+
+ if not fakeroot_failed:
+ fakeroot_log = None
+
+ bb.event.fire(runQueueTaskFailed(task, self.stats, exitcode, self.rq, fakeroot_log=fakeroot_log), self.cfgData)
+
if self.rqdata.taskData[''].abort:
self.rq.state = runQueueCleanUp
@@ -1943,6 +1962,10 @@ class RunQueueExecute:
logger.error("Scenequeue had holdoff tasks: %s" % pprint.pformat(self.holdoff_tasks))
err = True
+ for tid in self.scenequeue_covered.intersection(self.scenequeue_notcovered):
+ # No task should end up in both covered and uncovered, that is a bug.
+ logger.error("Setscene task %s in both covered and notcovered." % tid)
+
for tid in self.rqdata.runq_setscene_tids:
if tid not in self.scenequeue_covered and tid not in self.scenequeue_notcovered:
err = True
@@ -2431,6 +2454,12 @@ class RunQueueExecute:
for dep in sorted(self.sqdata.sq_deps[task]):
if fail and task in self.sqdata.sq_harddeps and dep in self.sqdata.sq_harddeps[task]:
+ if dep in self.scenequeue_covered or dep in self.scenequeue_notcovered:
+ # dependency could be already processed, e.g. noexec setscene task
+ continue
+ noexec, stamppresent = check_setscene_stamps(dep, self.rqdata, self.rq, self.stampcache)
+ if noexec or stamppresent:
+ continue
logger.debug2("%s was unavailable and is a hard dependency of %s so skipping" % (task, dep))
self.sq_task_failoutright(dep)
continue
@@ -2755,6 +2784,40 @@ def build_scenequeue_data(sqdata, rqdata, rq, cooker, stampcache, sqrq):
update_scenequeue_data(sqdata.sq_revdeps, sqdata, rqdata, rq, cooker, stampcache, sqrq, summary=True)
+ # Compute a list of 'stale' sstate tasks where the current hash does not match the one
+ # in any stamp files. Pass the list out to metadata as an event.
+ found = {}
+ for tid in rqdata.runq_setscene_tids:
+ (mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
+ stamps = bb.build.find_stale_stamps(taskname, rqdata.dataCaches[mc], taskfn)
+ if stamps:
+ if mc not in found:
+ found[mc] = {}
+ found[mc][tid] = stamps
+ for mc in found:
+ event = bb.event.StaleSetSceneTasks(found[mc])
+ bb.event.fire(event, cooker.databuilder.mcdata[mc])
+
+def check_setscene_stamps(tid, rqdata, rq, stampcache, noexecstamp=False):
+
+ (mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
+
+ taskdep = rqdata.dataCaches[mc].task_deps[taskfn]
+
+ if 'noexec' in taskdep and taskname in taskdep['noexec']:
+ bb.build.make_stamp(taskname + "_setscene", rqdata.dataCaches[mc], taskfn)
+ return True, False
+
+ if rq.check_stamp_task(tid, taskname + "_setscene", cache=stampcache):
+ logger.debug2('Setscene stamp current for task %s', tid)
+ return False, True
+
+ if rq.check_stamp_task(tid, taskname, recurse = True, cache=stampcache):
+ logger.debug2('Normal stamp current for task %s', tid)
+ return False, True
+
+ return False, False
+
def update_scenequeue_data(tids, sqdata, rqdata, rq, cooker, stampcache, sqrq, summary=True):
tocheck = set()
@@ -2765,24 +2828,14 @@ def update_scenequeue_data(tids, sqdata, rqdata, rq, cooker, stampcache, sqrq, s
if tid in sqdata.valid:
sqdata.valid.remove(tid)
- (mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
-
- taskdep = rqdata.dataCaches[mc].task_deps[taskfn]
+ noexec, stamppresent = check_setscene_stamps(tid, rqdata, rq, stampcache, noexecstamp=True)
- if 'noexec' in taskdep and taskname in taskdep['noexec']:
+ if noexec:
sqdata.noexec.add(tid)
sqrq.sq_task_skip(tid)
- bb.build.make_stamp(taskname + "_setscene", rqdata.dataCaches[mc], taskfn)
continue
- if rq.check_stamp_task(tid, taskname + "_setscene", cache=stampcache):
- logger.debug2('Setscene stamp current for task %s', tid)
- sqdata.stamppresent.add(tid)
- sqrq.sq_task_skip(tid)
- continue
-
- if rq.check_stamp_task(tid, taskname, recurse = True, cache=stampcache):
- logger.debug2('Normal stamp current for task %s', tid)
+ if stamppresent:
sqdata.stamppresent.add(tid)
sqrq.sq_task_skip(tid)
continue
@@ -2876,12 +2929,16 @@ class runQueueTaskFailed(runQueueEvent):
"""
Event notifying a task failed
"""
- def __init__(self, task, stats, exitcode, rq):
+ def __init__(self, task, stats, exitcode, rq, fakeroot_log=None):
runQueueEvent.__init__(self, task, stats, rq)
self.exitcode = exitcode
+ self.fakeroot_log = fakeroot_log
def __str__(self):
- return "Task (%s) failed with exit code '%s'" % (self.taskstring, self.exitcode)
+ if self.fakeroot_log:
+ return "Task (%s) failed with exit code '%s' \nPseudo log:\n%s" % (self.taskstring, self.exitcode, self.fakeroot_log)
+ else:
+ return "Task (%s) failed with exit code '%s'" % (self.taskstring, self.exitcode)
class sceneQueueTaskFailed(sceneQueueEvent):
"""
@@ -2933,7 +2990,7 @@ class runQueuePipe():
"""
Abstraction for a pipe between a worker thread and the server
"""
- def __init__(self, pipein, pipeout, d, rq, rqexec):
+ def __init__(self, pipein, pipeout, d, rq, rqexec, fakerootlogs=None):
self.input = pipein
if pipeout:
pipeout.close()
@@ -2942,6 +2999,7 @@ class runQueuePipe():
self.d = d
self.rq = rq
self.rqexec = rqexec
+ self.fakerootlogs = fakerootlogs
def setrunqueueexec(self, rqexec):
self.rqexec = rqexec
@@ -2987,7 +3045,11 @@ class runQueuePipe():
task, status = pickle.loads(self.queue[10:index])
except (ValueError, pickle.UnpicklingError, AttributeError, IndexError) as e:
bb.msg.fatal("RunQueue", "failed load pickle '%s': '%s'" % (e, self.queue[10:index]))
- self.rqexec.runqueue_process_waitpid(task, status)
+ (_, _, _, taskfn) = split_tid_mcfn(task)
+ fakerootlog = None
+ if self.fakerootlogs and taskfn and taskfn in self.fakerootlogs:
+ fakerootlog = self.fakerootlogs[taskfn]
+ self.rqexec.runqueue_process_waitpid(task, status, fakerootlog=fakerootlog)
found = True
self.queue = self.queue[index+11:]
index = self.queue.find(b"</exitcode>")
diff --git a/poky/bitbake/lib/bb/tests/color.py b/poky/bitbake/lib/bb/tests/color.py
index bf03750c6..88dd27800 100644
--- a/poky/bitbake/lib/bb/tests/color.py
+++ b/poky/bitbake/lib/bb/tests/color.py
@@ -31,7 +31,7 @@ class ColorCodeTests(unittest.TestCase):
def setUp(self):
self.d = bb.data.init()
self._progress_watcher = ProgressWatcher()
- bb.event.register("bb.build.TaskProgress", self._progress_watcher.handle_event)
+ bb.event.register("bb.build.TaskProgress", self._progress_watcher.handle_event, data=self.d)
def tearDown(self):
bb.event.remove("bb.build.TaskProgress", None)
diff --git a/poky/bitbake/lib/bb/tests/fetch.py b/poky/bitbake/lib/bb/tests/fetch.py
index 7b2dac7b8..ddf6e9743 100644
--- a/poky/bitbake/lib/bb/tests/fetch.py
+++ b/poky/bitbake/lib/bb/tests/fetch.py
@@ -1345,7 +1345,7 @@ class FetchCheckStatusTest(FetcherTest):
"http://downloads.yoctoproject.org/releases/sato/sato-engine-0.2.tar.gz",
"http://downloads.yoctoproject.org/releases/sato/sato-engine-0.3.tar.gz",
"https://yoctoproject.org/",
- "https://yoctoproject.org/documentation",
+ "https://docs.yoctoproject.org",
"http://downloads.yoctoproject.org/releases/opkg/opkg-0.1.7.tar.gz",
"http://downloads.yoctoproject.org/releases/opkg/opkg-0.3.0.tar.gz",
"ftp://sourceware.org/pub/libffi/libffi-1.20.tar.gz",
diff --git a/poky/bitbake/lib/bb/tinfoil.py b/poky/bitbake/lib/bb/tinfoil.py
index 763c32981..796a98f05 100644
--- a/poky/bitbake/lib/bb/tinfoil.py
+++ b/poky/bitbake/lib/bb/tinfoil.py
@@ -440,7 +440,7 @@ class Tinfoil:
to initialise Tinfoil and use it with config_only=True first and
then conditionally call this function to parse recipes later.
"""
- config_params = TinfoilConfigParameters(config_only=False)
+ config_params = TinfoilConfigParameters(config_only=False, quiet=self.quiet)
self.run_actions(config_params)
self.recipes_parsed = True
diff --git a/poky/bitbake/lib/bblayers/query.py b/poky/bitbake/lib/bblayers/query.py
index f5e3c8474..947422a72 100644
--- a/poky/bitbake/lib/bblayers/query.py
+++ b/poky/bitbake/lib/bblayers/query.py
@@ -128,7 +128,7 @@ skipped recipes will also be listed, with a " (skipped)" suffix.
sys.exit(1)
pkg_pn = self.tinfoil.cooker.recipecaches[mc].pkg_pn
- (latest_versions, preferred_versions) = self.tinfoil.find_providers(mc)
+ (latest_versions, preferred_versions, required_versions) = self.tinfoil.find_providers(mc)
allproviders = self.tinfoil.get_all_providers(mc)
# Ensure we list skipped recipes
diff --git a/poky/documentation/README b/poky/documentation/README
index be03bb119..176c6db35 100644
--- a/poky/documentation/README
+++ b/poky/documentation/README
@@ -47,7 +47,7 @@ Folders exist for individual manuals as follows:
Each folder is self-contained regarding content and figures.
If you want to find HTML versions of the Yocto Project manuals on the web,
-go to https://www.yoctoproject.org and click on the "Documentation" tab. From
+go to https://www.yoctoproject.org and click on the "Docs" tab. From
there you have access to archived documentation from previous releases, current
documentation for the latest release, and "Docs in Progress" for the release
currently being developed.
@@ -91,13 +91,13 @@ Yocto Project documentation website
A new website has been created to host the Yocto Project
documentation, it can be found at: https://docs.yoctoproject.org/.
-The entire Yocto Project documentation, as well as the BitBake manual
+The entire Yocto Project documentation, as well as the BitBake manual,
is published on this website, including all previously released
versions. A version switcher was added, as a drop-down menu on the top
of the page to switch back and forth between the various versions of
the current active Yocto Project releases.
-Transition pages have been added (as rst file) to show links to old
+Transition pages have been added (as rst files) to show links to old
versions of the Yocto Project documentation with links to each manual
generated with DocBook.
@@ -109,7 +109,7 @@ obvious reasons, we will only support building the Yocto Project
documentation with Python3.
Sphinx might be available in your Linux distro packages repositories,
-however it is not recommend using distro packages, as they might be
+however it is not recommended to use distro packages, as they might be
old versions, especially if you are using an LTS version of your
distro. The recommended method to install Sphinx and all required
dependencies is to use the Python Package Index (pip).
@@ -185,7 +185,7 @@ Sphinx has a glossary directive. From
https://www.sphinx-doc.org/en/master/usage/restructuredtext/directives.html#glossary:
This directive must contain a reST definition list with terms and
- definitions. The definitions will then be referencable with the
+ definitions. It's then possible to refer to each definition through the
[https://www.sphinx-doc.org/en/master/usage/restructuredtext/roles.html#role-term
'term' role].
@@ -206,7 +206,7 @@ however there are important shortcomings. For example they cannot be
used/nested inside code-block sections.
A Sphinx extension was implemented to support variable substitutions
-to mimic the DocBook based documentation behavior. Variabes
+to mimic the DocBook based documentation behavior. Variable
substitutions are done while reading/parsing the .rst files. The
pattern for variables substitutions is the same as with DocBook,
e.g. `&VAR;`.
@@ -222,7 +222,7 @@ For example, the following .rst content will produce the 'expected'
content:
.. code-block::
- $ mkdir ~/poky-&DISTRO;
+ $ mkdir poky-&DISTRO;
or
$ git clone &YOCTO_GIT_URL;/git/poky -b &DISTRO_NAME_NO_CAP;
@@ -237,14 +237,14 @@ Note directive
Sphinx has a builtin 'note' directive that produces clean Note section
in the output file. There are various types of directives such as
"attention", "caution", "danger", "error", "hint", "important", "tip",
-"warning", "admonition" that are supported, and additional directive
+"warning", "admonition" that are supported, and additional directives
can be added as Sphinx extension if needed.
Figures
=======
The Yocto Project documentation has many figures/images. Sphinx has a
-'figure' directive which is straight forward to use. To include a
+'figure' directive which is straightforward to use. To include a
figure in the body of the documentation:
.. image:: figures/YP-flow-diagram.png
@@ -259,10 +259,13 @@ websites.
More information can be found here:
https://sublime-and-sphinx-guide.readthedocs.io/en/latest/references.html.
+Anchor (<#link>) links are forbidden as they are not checked by Sphinx during
+the build and may be broken without knowing about it.
+
References
==========
-The following extension is enabed by default:
+The following extension is enabled by default:
sphinx.ext.autosectionlabel
(https://www.sphinx-doc.org/en/master/usage/extensions/autosectionlabel.html).
@@ -271,7 +274,7 @@ autosectionlabel_prefix_document is enabled by default, so that we can
insert references from any document.
For example, to insert an HTML link to a section from
-documentaion/manual/intro.rst, use:
+documentation/manual/intro.rst, use:
Please check this :ref:`manual/intro:Cross-References to Locations in the Same Document`
@@ -294,7 +297,8 @@ Extlinks
The sphinx.ext.extlinks extension is enabled by default
(https://sublime-and-sphinx-guide.readthedocs.io/en/latest/references.html#use-the-external-links-extension),
-and it is configured with:
+and it is configured with the 'extlinks' definitions in
+the 'documentation/conf.py' file:
'yocto_home': ('https://yoctoproject.org%s', None),
'yocto_wiki': ('https://wiki.yoctoproject.org%s', None),
@@ -306,6 +310,10 @@ and it is configured with:
'yocto_git': ('https://git.yoctoproject.org%s', None),
'oe_home': ('https://www.openembedded.org%s', None),
'oe_lists': ('https://lists.openembedded.org%s', None),
+ 'oe_git': ('https://git.openembedded.org%s', None),
+ 'oe_wiki': ('https://www.openembedded.org/wiki%s', None),
+ 'oe_layerindex': ('https://layers.openembedded.org%s', None),
+ 'oe_layer': ('https://layers.openembedded.org/layerindex/branch/master/layer%s', None),
It creates convenient shortcuts which can be used throughout the
documentation rst files, as:
diff --git a/poky/documentation/bitbake.rst b/poky/documentation/bitbake.rst
new file mode 100644
index 000000000..7702f9322
--- /dev/null
+++ b/poky/documentation/bitbake.rst
@@ -0,0 +1,19 @@
+.. SPDX-License-Identifier: CC-BY-SA-2.0-UK
+
+=====================
+BitBake Documentation
+=====================
+
+|
+
+BitBake was originally a part of the OpenEmbedded project. It was inspired by
+the Portage package management system used by the Gentoo Linux distribution. In
+2004, the OpenEmbedded project was split the project into two distinct pieces:
+
+- BitBake, a generic task executor
+- OpenEmbedded, a metadata set utilized by BitBake
+
+Today, BitBake is the primary build tool of OpenEmbedded based projects, such as
+the Yocto Project.
+
+The BitBake documentation can be found :doc:`here <bitbake:index>`.
diff --git a/poky/documentation/boilerplate.rst b/poky/documentation/boilerplate.rst
index 2ad60eb8b..baccc9fe4 100644
--- a/poky/documentation/boilerplate.rst
+++ b/poky/documentation/boilerplate.rst
@@ -14,5 +14,5 @@ Commons.
To report any inaccuracies or problems with this (or any other Yocto Project)
manual, or to send additions or changes, please send email/patches to the Yocto
Project documentation mailing list at ``docs@lists.yoctoproject.org`` or
-log into the freenode ``#yocto`` channel.
+log into the Freenode ``#yocto`` channel.
diff --git a/poky/documentation/brief-yoctoprojectqs/index.rst b/poky/documentation/brief-yoctoprojectqs/index.rst
index 63083cb13..974ae5ebc 100644
--- a/poky/documentation/brief-yoctoprojectqs/index.rst
+++ b/poky/documentation/brief-yoctoprojectqs/index.rst
@@ -60,10 +60,10 @@ following requirements:
-
- - Git 1.8.3.1 or greater
- - tar 1.28 or greater
- - Python 3.5.0 or greater.
- - gcc 5.0 or greater.
+ - Git &MIN_GIT_VERSION; or greater
+ - tar &MIN_TAR_VERSION; or greater
+ - Python &MIN_PYTHON_VERSION; or greater.
+ - gcc &MIN_GCC_VERSION; or greater.
If your build host does not meet any of these three listed version
requirements, you can take steps to prepare the system so that you
@@ -106,42 +106,57 @@ commands to clone the Poky repository.
Resolving deltas: 100% (323116/323116), done.
Checking connectivity... done.
-Move to the ``poky`` directory and take a look at the tags:
+Go to :yocto_wiki:`Releases wiki page </Releases>`, and choose a release
+codename (such as ``&DISTRO_NAME_NO_CAP;``), corresponding to either the
+latest stable release or a Long Term Support release.
+
+Then move to the ``poky`` directory and take a look at existing branches:
.. code-block:: shell
$ cd poky
- $ git fetch --tags
- $ git tag
- 1.1_M1.final
- 1.1_M1.rc1
- 1.1_M1.rc2
- 1.1_M2.final
- 1.1_M2.rc1
+ $ git branch -a
+ .
+ .
+ .
+ remotes/origin/HEAD -> origin/master
+ remotes/origin/dunfell
+ remotes/origin/dunfell-next
+ .
+ .
+ .
+ remotes/origin/gatesgarth
+ remotes/origin/gatesgarth-next
+ .
+ .
.
+ remotes/origin/master
+ remotes/origin/master-next
.
.
- yocto-2.5
- yocto-2.5.1
- yocto-2.5.2
- yocto-2.6
- yocto-2.6.1
- yocto-2.6.2
- yocto-2.7
- yocto_1.5_M5.rc8
-
-For this example, check out the branch based on the
-``&DISTRO_REL_TAG;`` release:
+ .
+
+
+For this example, check out the ``&DISTRO_NAME_NO_CAP;`` branch based on the
+``&DISTRO_NAME;`` release:
.. code-block:: shell
- $ git checkout tags/&DISTRO_REL_TAG; -b my-&DISTRO_REL_TAG;
- Switched to a new branch 'my-&DISTRO_REL_TAG;'
+ $ git checkout -t origin/&DISTRO_NAME_NO_CAP; -b my-&DISTRO_NAME_NO_CAP;
+ Branch 'my-&DISTRO_NAME_NO_CAP;' set up to track remote branch '&DISTRO_NAME_NO_CAP;' from 'origin'.
+ Switched to a new branch 'my-&DISTRO_NAME_NO_CAP;'
The previous Git checkout command creates a local branch named
-``my-&DISTRO_REL_TAG;``. The files available to you in that branch exactly
-match the repository's files in the ``&DISTRO_NAME_NO_CAP;`` development
-branch at the time of the Yocto Project &DISTRO_REL_TAG; release.
+``my-&DISTRO_NAME_NO_CAP;``. The files available to you in that branch
+exactly match the repository's files in the ``&DISTRO_NAME_NO_CAP;``
+release branch.
+
+Note that you can regularly type the following command in the same directory
+to keep your local files in sync with the release branch:
+
+.. code-block:: shell
+
+ $ git pull
For more options and information about accessing Yocto Project related
repositories, see the
@@ -176,7 +191,7 @@ an entire Linux distribution, including the toolchain, from source.
.. code-block:: shell
- $ cd ~/poky
+ $ cd poky
$ source oe-init-build-env
You had no conf/local.conf file. This configuration file has therefore been
created for you with some default values. You may wish to edit it to, for
@@ -189,7 +204,7 @@ an entire Linux distribution, including the toolchain, from source.
The Yocto Project has extensive documentation about OE including a reference
manual which can be found at:
- http://yoctoproject.org/documentation
+ https://docs.yoctoproject.org
For more information about OpenEmbedded see their website:
http://www.openembedded.org/
@@ -204,7 +219,7 @@ an entire Linux distribution, including the toolchain, from source.
meta-toolchain
meta-ide-support
- You can also run generated qemu images with a command like 'runqemu qemux86-64'
+ You can also run generated QEMU images with a command like 'runqemu qemux86-64'
Among other things, the script creates the :term:`Build Directory`, which is
``build`` in this case and is located in the :term:`Source Directory`. After
@@ -293,7 +308,7 @@ Follow these steps to add a hardware layer:
.. code-block:: shell
- $ cd ~/poky
+ $ cd poky
$ git clone https://github.com/kraj/meta-altera.git
Cloning into 'meta-altera'...
remote: Counting objects: 25170, done.
@@ -337,7 +352,7 @@ Follow these steps to add a hardware layer:
.. code-block:: shell
- $ cd ~/poky/build
+ $ cd poky/build
$ bitbake-layers add-layer ../meta-altera
NOTE: Starting bitbake server...
Parsing recipes: 100% |##################################################################| Time: 0:00:32
@@ -374,7 +389,7 @@ The following commands run the tool to create a layer named
.. code-block:: shell
- $ cd ~/poky
+ $ cd poky
$ bitbake-layers create-layer meta-mylayer
NOTE: Starting bitbake server...
Add your new layer with 'bitbake-layers add-layer meta-mylayer'
diff --git a/poky/documentation/bsp-guide/bsp.rst b/poky/documentation/bsp-guide/bsp.rst
index 93e918249..89f156442 100644
--- a/poky/documentation/bsp-guide/bsp.rst
+++ b/poky/documentation/bsp-guide/bsp.rst
@@ -250,7 +250,7 @@ standardization of software support for hardware.
The proposed form described in this section does have elements that are
specific to the OpenEmbedded build system. It is intended that
developers can use this structure with other build systems besides the
-OpenEmbedded build system. It is also intended that it will be be simple
+OpenEmbedded build system. It is also intended that it will be simple
to extract information and convert it to other formats if required. The
OpenEmbedded build system, through its standard :ref:`layers mechanism
<overview-manual/yp-intro:the yocto project layer model>`, can
@@ -289,7 +289,7 @@ individual BSPs could differ. ::
meta-bsp_root_name/recipes-kernel/linux/linux-yocto_kernel_rev.bbappend
Below is an example of the Raspberry Pi BSP layer that is available from
-the :yocto_git:`Source Respositories <>`:
+the :yocto_git:`Source Repositories <>`:
.. code-block:: none
@@ -1036,7 +1036,7 @@ the following:
to reside in a machine-specific directory.
Following is a specific example to help you better understand the
-process. This example customizes customizes a recipe by adding a
+process. This example customizes a recipe by adding a
BSP-specific configuration file named ``interfaces`` to the
``init-ifupdown_1.0.bb`` recipe for machine "xyz" where the BSP layer
also supports several other machines:
diff --git a/poky/documentation/dev-manual/common-tasks.rst b/poky/documentation/dev-manual/common-tasks.rst
index 65db4aed3..176025f9e 100644
--- a/poky/documentation/dev-manual/common-tasks.rst
+++ b/poky/documentation/dev-manual/common-tasks.rst
@@ -155,8 +155,8 @@ Follow these general steps to create your layer without using tools:
5. *Optionally Test for Compatibility:* If you want permission to use
the Yocto Project Compatibility logo with your layer or application
that uses your layer, perform the steps to apply for compatibility.
- See the "`Making Sure Your Layer is Compatible With Yocto
- Project <#making-sure-your-layer-is-compatible-with-yocto-project>`__"
+ See the
+ ":ref:`dev-manual/common-tasks:making sure your layer is compatible with yocto project`"
section for more information.
Following Best Practices When Creating Layers
@@ -282,9 +282,8 @@ following list:
- *Perform Steps to Apply for Yocto Project Compatibility:* If you want
permission to use the Yocto Project Compatibility logo with your
layer or application that uses your layer, perform the steps to apply
- for compatibility. See the "`Making Sure Your Layer is Compatible
- With Yocto
- Project <#making-sure-your-layer-is-compatible-with-yocto-project>`__"
+ for compatibility. See the
+ ":ref:`dev-manual/common-tasks:making sure your layer is compatible with yocto project`"
section for more information.
- *Follow the Layer Naming Convention:* Store custom layers in a Git
@@ -1247,8 +1246,7 @@ the recipe.
your layer such that it can be found.
You can find more information on how layers are structured in the
- "`Understanding and Creating
- Layers <#understanding-and-creating-layers>`__" section.
+ ":ref:`dev-manual/common-tasks:understanding and creating layers`" section.
- *Naming Your Recipe:* When you name your recipe, you need to follow
this naming convention:
@@ -1364,7 +1362,7 @@ extension (e.g. ``.tar``, ``.tar.gz``, ``.tar.bz2``, ``.zip``, and so
forth), are automatically extracted during the
:ref:`ref-tasks-unpack` task. For
another example that specifies these types of files, see the
-"`Autotooled Package <#new-recipe-autotooled-package>`__" section.
+":ref:`dev-manual/common-tasks:autotooled package`" section.
Another way of specifying source is from an SCM. For Git repositories,
you must specify :term:`SRCREV` and
@@ -1445,15 +1443,14 @@ and searches specific directories in a certain order:
``${``\ :term:`BPN`\ ``}``, and
``files``. The directories are assumed to be subdirectories of the
directory in which the recipe or append file resides. For another
-example that specifies these types of files, see the "`Single .c File
-Package (Hello
-World!) <#new-recipe-single-c-file-package-hello-world>`__" section.
+example that specifies these types of files, see the
+":ref:`dev-manual/common-tasks:single .c file package (hello world!)`" section.
The previous example also specifies a patch file. Patch files are files
whose names usually end in ``.patch`` or ``.diff`` but can end with
compressed suffixes such as ``diff.gz`` and ``patch.bz2``, for example.
The build system automatically applies patches as described in the
-"`Patching Code <#new-recipe-patching-code>`__" section.
+":ref:`dev-manual/common-tasks:patching code`" section.
Unpacking Code
--------------
@@ -1543,7 +1540,7 @@ variables:
appropriate files in the ``LIC_FILES_CHKSUM`` variable with incorrect
md5 strings, attempt to build the software, and then note the
resulting error messages that will report the correct md5 strings.
- See the "`Fetching Code <#new-recipe-fetching-code>`__" section for
+ See the ":ref:`dev-manual/common-tasks:fetching code`" section for
additional information.
Here is an example that assumes the software has a ``COPYING`` file:
@@ -1787,8 +1784,8 @@ Here are some common issues that cause failures.
PARALLEL_MAKE = ""
- For information on parallel Makefile issues, see the "`Debugging
- Parallel Make Races <#debugging-parallel-make-races>`__" section.
+ For information on parallel Makefile issues, see the
+ ":ref:`dev-manual/common-tasks:debugging parallel make races`" section.
- *Improper host path usage:* This failure applies to recipes building
for the target or ``nativesdk`` only. The failure occurs when the
@@ -1854,8 +1851,7 @@ the software being built:
``PREFIX=${D}``, ``INSTALLROOT=${D}``, and so forth).
For an example recipe using ``make install``, see the
- "`Makefile-Based Package <#new-recipe-makefile-based-package>`__"
- section.
+ ":ref:`dev-manual/common-tasks:makefile-based package`" section.
- *Manual:* You need to define a ``do_install`` function in your
recipe. The function must first use ``install -d`` to create the
@@ -1990,14 +1986,13 @@ take. The following list describes the process:
``do_install(_append)``, and so forth as needed.
- *Splitting an Application into Multiple Packages*: If you need to
- split an application into several packages, see the "`Splitting an
- Application into Multiple
- Packages <#splitting-an-application-into-multiple-packages>`__"
+ split an application into several packages, see the
+ ":ref:`dev-manual/common-tasks:splitting an application into multiple packages`"
section for an example.
- *Installing a Post-Installation Script*: For an example showing how
- to install a post-installation script, see the "`Post-Installation
- Scripts <#new-recipe-post-installation-scripts>`__" section.
+ to install a post-installation script, see the
+ ":ref:`dev-manual/common-tasks:post-installation scripts`" section.
- *Marking Package Architecture*: Depending on what your recipe is
building and how it is configured, it might be important to mark the
@@ -2061,16 +2056,12 @@ sysroot are cataloged in manifests in order to ensure the files can be
removed later when a recipe is either modified or removed. Thus, the
sysroot is able to remain free from stale files.
-A subset of the files installed by the
-:ref:`ref-tasks-install` task are
-used by the
-:ref:`ref-tasks-populate_sysroot`
-task as defined by the the
-:term:`SYSROOT_DIRS` variable to
-automatically populate the sysroot. It is possible to modify the list of
-directories that populate the sysroot. The following example shows how
-you could add the ``/opt`` directory to the list of directories within a
-recipe:
+A subset of the files installed by the :ref:`ref-tasks-install` task are
+used by the :ref:`ref-tasks-populate_sysroot` task as defined by the the
+:term:`SYSROOT_DIRS` variable to automatically populate the sysroot. It
+is possible to modify the list of directories that populate the sysroot.
+The following example shows how you could add the ``/opt`` directory to
+the list of directories within a recipe:
::
SYSROOT_DIRS += "/opt"
@@ -2081,8 +2072,7 @@ recipe:
that are not included in the target filesystem, allowing them to share
these artifacts without needing to use the ``DEPLOY_DIR``.
-For a more complete description of the
-:ref:`ref-tasks-populate_sysroot`
+For a more complete description of the :ref:`ref-tasks-populate_sysroot`
task and its associated functions, see the
:ref:`staging <ref-classes-staging>` class.
@@ -2177,9 +2167,8 @@ Properly Versioning Pre-Release Recipes
Sometimes the name of a recipe can lead to versioning problems when the
recipe is upgraded to a final release. For example, consider the
``irssi_0.8.16-rc1.bb`` recipe file in the list of example recipes in
-the "`Storing and Naming the
-Recipe <#new-recipe-storing-and-naming-the-recipe>`__" section. This
-recipe is at a release candidate stage (i.e. "rc1"). When the recipe is
+the ":ref:`dev-manual/common-tasks:storing and naming the recipe`" section.
+This recipe is at a release candidate stage (i.e. "rc1"). When the recipe is
released, the recipe filename becomes ``irssi_0.8.16.bb``. The version
change from ``0.8.16-rc1`` to ``0.8.16`` is seen as a decrease by the
build system and package managers, so the resulting packages will not
@@ -2263,8 +2252,7 @@ software you built runs correctly. To accomplish runtime testing, add
the build's output packages to your image and test them on the target.
For information on how to customize your image by adding specific
-packages, see the "`Customizing
-Images <#usingpoky-extend-customimage>`__" section.
+packages, see ":ref:`dev-manual/common-tasks:customizing images`" section.
Examples
--------
@@ -2314,8 +2302,8 @@ directory BitBake uses for the build.
By default, the ``helloworld``, ``helloworld-dbg``, and
``helloworld-dev`` packages are built. For information on how to
-customize the packaging process, see the "`Splitting an Application into
-Multiple Packages <#splitting-an-application-into-multiple-packages>`__"
+customize the packaging process, see the
+":ref:`dev-manual/common-tasks:splitting an application into multiple packages`"
section.
Autotooled Package
@@ -3007,7 +2995,7 @@ The following steps describe how to set up the AUH utility:
running the AUH utility:
::
- $ cd ~/poky
+ $ cd poky
$ source oe-init-build-env your_AUH_build_directory
Re-using an existing build directory and its configurations is not
@@ -3428,9 +3416,8 @@ Follow these general steps:
1. *Find the Source Code:* Temporary source code used by the
OpenEmbedded build system is kept in the
:term:`Build Directory`. See the
- "`Finding Temporary Source
- Code <#finding-the-temporary-source-code>`__" section to learn how to
- locate the directory that has the temporary source code for a
+ ":ref:`dev-manual/common-tasks:finding temporary source code`" section to
+ learn how to locate the directory that has the temporary source code for a
particular package.
2. *Change Your Working Directory:* You need to be in the directory that
@@ -3999,24 +3986,21 @@ perform to create distributions with smaller root filesystems, achieve
faster boot times, maintain your critical functionality, and avoid
initial RAM disks:
-- `Determine your goals and guiding
- principles. <#goals-and-guiding-principles>`__
+- :ref:`Determine your goals and guiding principles
+ <dev-manual/common-tasks:goals and guiding principles>`
-- `Understand what contributes to your image
- size. <#understand-what-gives-your-image-size>`__
+- :ref:`dev-manual/common-tasks:understand what contributes to your image size`
-- `Reduce the size of the root
- filesystem. <#trim-the-root-filesystem>`__
+- :ref:`Reduce the size of the root filesystem
+ <dev-manual/common-tasks:trim the root filesystem>`
-- `Reduce the size of the kernel. <#trim-the-kernel>`__
+- :ref:`Reduce the size of the kernel <dev-manual/common-tasks:trim the kernel>`
-- `Eliminate packaging
- requirements. <#remove-package-management-requirements>`__
+- :ref:`dev-manual/common-tasks:remove package management requirements`
-- `Look for other ways to minimize
- size. <#look-for-other-ways-to-minimize-size>`__
+- :ref:`dev-manual/common-tasks:look for other ways to minimize size`
-- `Iterate on the process. <#iterate-on-the-process>`__
+- :ref:`dev-manual/common-tasks:iterate on the process`
Goals and Guiding Principles
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -4036,8 +4020,8 @@ very small distributions:
- Leverage the device-specific options.
- Work in a separate layer so that you keep changes isolated. For
- information on how to create layers, see the "`Understanding and
- Creating Layers <#understanding-and-creating-layers>`__" section.
+ information on how to create layers, see the
+ ":ref:`dev-manual/common-tasks:understanding and creating layers`" section.
Understand What Contributes to Your Image Size
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -4581,17 +4565,17 @@ directory:
If you do have recipes that use ``AUTOREV``, you can take steps to
still use the recipes in an offline build. Do the following:
- 1. Use a configuration generated by enabling `build
- history <#maintaining-build-output-quality>`__.
+ 1. Use a configuration generated by enabling :ref:`build
+ history <dev-manual/common-tasks:maintaining build output quality>`.
2. Use the ``buildhistory-collect-srcrevs`` command to collect the
stored ``SRCREV`` values from the build's history. For more
- information on collecting these values, see the "`Build History
- Package Information <#build-history-package-information>`__"
+ information on collecting these values, see the
+ ":ref:`dev-manual/common-tasks:build history package information`"
section.
3. Once you have the correct source revisions, you can modify
- those recipes to to set ``SRCREV`` to specific versions of the
+ those recipes to set ``SRCREV`` to specific versions of the
software.
Speeding Up a Build
@@ -4711,16 +4695,16 @@ Libraries are an integral part of your system. This section describes
some common practices you might find helpful when working with libraries
to build your system:
-- `How to include static library
- files <#including-static-library-files>`__
+- :ref:`How to include static library files
+ <dev-manual/common-tasks:including static library files>`
-- `How to use the Multilib feature to combine multiple versions of
- library files into a single
- image <#combining-multiple-versions-library-files-into-one-image>`__
+- :ref:`How to use the Multilib feature to combine multiple versions of
+ library files into a single image
+ <dev-manual/common-tasks:combining multiple versions of library files into one image>`
-- `How to install multiple versions of the same library in parallel on
- the same
- system <#installing-multiple-versions-of-the-same-library>`__
+- :ref:`How to install multiple versions of the same library in parallel on
+ the same system
+ <dev-manual/common-tasks:installing multiple versions of the same library>`
Including Static Library Files
------------------------------
@@ -5058,7 +5042,7 @@ because the library is produced for the target architecture, but its
code needs to be executed on the build host. This problem is solved with
the OpenEmbedded build system by running the code through QEMU, which
allows precisely that. Unfortunately, QEMU does not always work
-perfectly as mentioned in the "`Known Issues <#known-issues>`__"
+perfectly as mentioned in the ":ref:`dev-manual/common-tasks:known issues`"
section.
Enabling the Generation of Introspection Data
@@ -5230,11 +5214,11 @@ OpenEmbedded build artifacts. Image generation is driven by partitioning
commands contained in an Openembedded kickstart file (``.wks``)
specified either directly on the command line or as one of a selection
of canned kickstart files as shown with the ``wic list images`` command
-in the "`Using an Existing Kickstart
-File <#using-a-provided-kickstart-file>`__" section. When you apply the
-command to a given set of build artifacts, the result is an image or set
-of images that can be directly written onto media and used on a
-particular system.
+in the
+":ref:`dev-manual/common-tasks:generate an image using an existing kickstart file`"
+section. When you apply the command to a given set of build artifacts, the
+result is an image or set of images that can be directly written onto media and
+used on a particular system.
.. note::
@@ -5245,8 +5229,8 @@ particular system.
The ``wic`` command and the infrastructure it is based on is by
definition incomplete. The purpose of the command is to allow the
generation of customized images, and as such, was designed to be
-completely extensible through a plugin interface. See the "`Using the
-Wic PlugIn Interface <#wic-using-the-wic-plugin-interface>`__" section
+completely extensible through a plugin interface. See the
+":ref:`dev-manual/common-tasks:using the wic plugin interface`" section
for information on these plugins.
This section provides some background information on Wic, describes what
@@ -5362,7 +5346,7 @@ command to return the available Wic images as follows:
genericx86 Create an EFI disk image for genericx86*
beaglebone-yocto Create SD card image for Beaglebone
edgerouter Create SD card image for Edgerouter
- qemux86-directdisk Create a qemu machine 'pcbios' direct disk image
+ qemux86-directdisk Create a QEMU machine 'pcbios' direct disk image
directdisk-gpt Create a 'pcbios' direct disk image
mkefidisk Create an EFI disk image
directdisk Create a 'pcbios' direct disk image
@@ -5509,7 +5493,7 @@ Use the following command to list the available kickstart files:
genericx86 Create an EFI disk image for genericx86*
beaglebone-yocto Create SD card image for Beaglebone
edgerouter Create SD card image for Edgerouter
- qemux86-directdisk Create a qemu machine 'pcbios' direct disk image
+ qemux86-directdisk Create a QEMU machine 'pcbios' direct disk image
directdisk-gpt Create a 'pcbios' direct disk image
mkefidisk Create an EFI disk image
directdisk Create a 'pcbios' direct disk image
@@ -5683,7 +5667,7 @@ Wic Examples
This section provides several examples that show how to use the Wic
utility. All the examples assume the list of requirements in the
-"`Requirements <#wic-requirements>`__" section have been met. The
+":ref:`dev-manual/common-tasks:requirements`" section have been met. The
examples assume the previously generated image is
``core-image-minimal``.
@@ -5908,7 +5892,7 @@ the existing kernel, and then inserts a new kernel:
$ wic help ls
- The following command shows what is in Partition one:
+ The following command shows what is in partition one:
::
$ wic ls tmp/deploy/images/qemux86/core-image-minimal-qemux86.wic:1
@@ -5956,8 +5940,8 @@ the existing kernel, and then inserts a new kernel:
kernel:
::
- cp ~/poky_sdk/tmp/work/qemux86-poky-linux/linux-yocto/4.12.12+git999-r0/linux-yocto-4.12.12+git999/arch/x86/boot/bzImage \
- ~/poky/build/tmp/deploy/images/qemux86/core-image-minimal-qemux86.wic:1/vmlinuz
+ $ wic cp poky_sdk/tmp/work/qemux86-poky-linux/linux-yocto/4.12.12+git999-r0/linux-yocto-4.12.12+git999/arch/x86/boot/bzImage \
+ poky/build/tmp/deploy/images/qemux86/core-image-minimal-qemux86.wic:1/vmlinuz
Once the new kernel is added back into the image, you can use the
``dd`` command or :ref:`bmaptool
@@ -6098,8 +6082,7 @@ more secure:
- Ensure you remove or disable debugging functionality before producing
the final image. For information on how to do this, see the
- "`Considerations Specific to the OpenEmbedded Build
- System <#considerations-specific-to-the-openembedded-build-system>`__"
+ ":ref:`dev-manual/common-tasks:considerations specific to the openembedded build system`"
section.
- Ensure you have no network services listening that are not needed.
@@ -6280,17 +6263,17 @@ layer. The following steps provide some more detail:
distro-specific configuration files that are included by an
existing recipe, you should add an append file (``.bbappend``) for
those. For general information and recommendations on how to add
- recipes to your layer, see the "`Creating Your Own
- Layer <#creating-your-own-layer>`__" and "`Following Best
- Practices When Creating
- Layers <#best-practices-to-follow-when-creating-layers>`__"
+ recipes to your layer, see the
+ ":ref:`dev-manual/common-tasks:creating your own layer`" and
+ ":ref:`dev-manual/common-tasks:following best practices when creating layers`"
sections.
- Add any image recipes that are specific to your distribution.
- Add a ``psplash`` append file for a branded splash screen. For
- information on append files, see the "`Using .bbappend Files in
- Your Layer <#using-bbappend-files>`__" section.
+ information on append files, see the
+ ":ref:`dev-manual/common-tasks:using .bbappend files in your layer`"
+ section.
- Add any other append files to make custom changes that are
specific to individual recipes.
@@ -6388,29 +6371,22 @@ Working with Packages
This section describes a few tasks that involve packages:
-- `Excluding packages from an
- image <#excluding-packages-from-an-image>`__
+- :ref:`dev-manual/common-tasks:excluding packages from an image`
-- `Incrementing a binary package
- version <#incrementing-a-binary-package-version>`__
+- :ref:`dev-manual/common-tasks:incrementing a package version`
-- `Handling optional module
- packaging <#handling-optional-module-packaging>`__
+- :ref:`dev-manual/common-tasks:handling optional module packaging`
-- `Using runtime package
- management <#using-runtime-package-management>`__
+- :ref:`dev-manual/common-tasks:using runtime package management`
-- `Generating and using signed
- packages <#generating-and-using-signed-packages>`__
+- :ref:`dev-manual/common-tasks:generating and using signed packages`
-- `Setting up and running package test
- (ptest) <#testing-packages-with-ptest>`__
+- :ref:`Setting up and running package test
+ (ptest) <dev-manual/common-tasks:testing packages with ptest>`
-- `Creating node package manager (NPM)
- packages <#creating-node-package-manager-npm-packages>`__
+- :ref:`dev-manual/common-tasks:creating node package manager (npm) packages`
-- `Adding custom metadata to
- packages <#adding-custom-metadata-to-packages>`__
+- :ref:`dev-manual/common-tasks:adding custom metadata to packages`
Excluding Packages from an Image
--------------------------------
@@ -6499,9 +6475,8 @@ much preferred over a manual system. In either system, the main
requirement is that binary package version numbering increases in a
linear fashion and that a number of version components exist that
support that linear progression. For information on how to ensure
-package revisioning remains linear, see the "`Automatically Incrementing
-a Binary Package Revision
-Number <#automatically-incrementing-a-binary-package-revision-number>`__"
+package revisioning remains linear, see the
+":ref:`dev-manual/common-tasks:automatically incrementing a package version number`"
section.
The following three sections provide related information on the PR
@@ -6592,14 +6567,14 @@ each building system's ``local.conf`` file:
BUILDHISTORY_COMMIT = "1"
For information on build
-history, see the "`Maintaining Build Output
-Quality <#maintaining-build-output-quality>`__" section.
+history, see the
+":ref:`dev-manual/common-tasks:maintaining build output quality`" section.
.. note::
The OpenEmbedded build system does not maintain ``PR`` information as
part of the shared state (sstate) packages. If you maintain an sstate
- feed, its expected that either all your building systems that
+ feed, it's expected that either all your building systems that
contribute to the sstate feed use a shared PR Service, or you do not
run a PR Service on any of your building systems. Having some systems
use a PR Service while others do not leads to obvious problems.
@@ -6956,7 +6931,7 @@ variable to specify the format:
1. Open the ``local.conf`` file inside your
:term:`Build Directory` (e.g.
- ``~/poky/build/conf/local.conf``).
+ ``poky/build/conf/local.conf``).
2. Select the desired package format as follows:
::
@@ -7048,11 +7023,11 @@ From within the build directory where you have built an image based on
your packaging choice (i.e. the
:term:`PACKAGE_CLASSES`
setting), simply start the server. The following example assumes a build
-directory of ``~/poky/build/tmp/deploy/rpm`` and a ``PACKAGE_CLASSES``
+directory of ``poky/build/tmp/deploy/rpm`` and a ``PACKAGE_CLASSES``
setting of "package_rpm":
::
- $ cd ~/poky/build/tmp/deploy/rpm
+ $ cd poky/build/tmp/deploy/rpm
$ python3 -m http.server
Target Setup
@@ -7070,7 +7045,7 @@ runtime package management of RPM packages. In order to use DNF for
runtime package management, you must perform an initial setup on the
target machine for cases where the ``PACKAGE_FEED_*`` variables were not
set as part of the image that is running on the target. This means if
-you built your image and did not not use these variables as part of the
+you built your image and did not use these variables as part of the
build and your image is now running on the target, you need to perform
the steps in this section if you want to use runtime package management.
@@ -8409,7 +8384,7 @@ that queries the Git repository and prints just the differences that
might be significant in human-readable form. Here is an example:
::
- $ ~/poky/poky/scripts/buildhistory-diff . HEAD^
+ $ poky/poky/scripts/buildhistory-diff . HEAD^
Changes to images/qemux86_64/glibc/core-image-minimal (files-in-image.txt):
/etc/anotherpkg.conf was added
/sbin/anotherpkg was added
@@ -8522,7 +8497,7 @@ In order to run tests, you need to do the following:
- Ubuntu and Debian: ``sysstat`` and ``iproute2``
- - OpenSUSE: ``sysstat`` and ``iproute2``
+ - openSUSE: ``sysstat`` and ``iproute2``
- Fedora: ``sysstat`` and ``iproute``
@@ -8596,8 +8571,8 @@ options exist:
it the same IP address for each reboot.
If you choose "SystemdbootTarget", there are additional requirements
- and considerations. See the "`Selecting
- SystemdbootTarget <#selecting-systemdboottarget>`__" section, which
+ and considerations. See the
+ ":ref:`dev-manual/common-tasks:selecting systemdboottarget`" section, which
follows, for more information.
- *"BeagleBoneTarget":* Choose "BeagleBoneTarget" if you are deploying
@@ -8629,7 +8604,7 @@ Selecting SystemdbootTarget
If you did not set ``TEST_TARGET`` to "SystemdbootTarget", then you do
not need any information in this section. You can skip down to the
-"`Running Tests <#qemu-image-running-tests>`__" section.
+":ref:`dev-manual/common-tasks:running tests`" section.
If you did set ``TEST_TARGET`` to "SystemdbootTarget", you also need to
perform a one-time setup of your master image by doing the following:
@@ -8648,7 +8623,7 @@ perform a one-time setup of your master image by doing the following:
- Inherits ``core-image`` so that kernel modules are installed.
- - Installs normal linux utilities not busybox ones (e.g. ``bash``,
+ - Installs normal linux utilities not BusyBox ones (e.g. ``bash``,
``coreutils``, ``tar``, ``gzip``, and ``kmod``).
- Uses a custom Initial RAM Disk (initramfs) image with a custom
@@ -9095,13 +9070,11 @@ situations.
The following list shows the debugging topics in the remainder of this
section:
-- "`Viewing Logs from Failed
- Tasks <#dev-debugging-viewing-logs-from-failed-tasks>`__" describes
+- ":ref:`dev-manual/common-tasks:viewing logs from failed tasks`" describes
how to find and view logs from tasks that failed during the build
process.
-- "`Viewing Variable
- Values <#dev-debugging-viewing-variable-values>`__" describes how to
+- ":ref:`dev-manual/common-tasks:viewing variable values`" describes how to
use the BitBake ``-e`` option to examine variable values after a
recipe has been parsed.
@@ -9110,51 +9083,47 @@ section:
:term:`PKGDATA_DIR` and
display package-related information for built packages.
-- "`Viewing Dependencies Between Recipes and
- Tasks <#dev-viewing-dependencies-between-recipes-and-tasks>`__"
+- ":ref:`dev-manual/common-tasks:viewing dependencies between recipes and tasks`"
describes how to use the BitBake ``-g`` option to display recipe
dependency information used during the build.
-- "`Viewing Task Variable
- Dependencies <#dev-viewing-task-variable-dependencies>`__" describes
+- ":ref:`dev-manual/common-tasks:viewing task variable dependencies`" describes
how to use the ``bitbake-dumpsig`` command in conjunction with key
subdirectories in the
:term:`Build Directory` to determine
variable dependencies.
-- "`Running Specific Tasks <#dev-debugging-taskrunning>`__" describes
+- ":ref:`dev-manual/common-tasks:running specific tasks`" describes
how to use several BitBake options (e.g. ``-c``, ``-C``, and ``-f``)
to run specific tasks in the build chain. It can be useful to run
tasks "out-of-order" when trying isolate build issues.
-- "`General BitBake Problems <#dev-debugging-bitbake>`__" describes how
+- ":ref:`dev-manual/common-tasks:general bitbake problems`" describes how
to use BitBake's ``-D`` debug output option to reveal more about what
BitBake is doing during the build.
-- "`Building with No Dependencies <#dev-debugging-buildfile>`__"
+- ":ref:`dev-manual/common-tasks:building with no dependencies`"
describes how to use the BitBake ``-b`` option to build a recipe
while ignoring dependencies.
-- "`Recipe Logging Mechanisms <#recipe-logging-mechanisms>`__"
+- ":ref:`dev-manual/common-tasks:recipe logging mechanisms`"
describes how to use the many recipe logging functions to produce
debugging output and report errors and warnings.
-- "`Debugging Parallel Make Races <#debugging-parallel-make-races>`__"
+- ":ref:`dev-manual/common-tasks:debugging parallel make races`"
describes how to debug situations where the build consists of several
parts that are run simultaneously and when the output or result of
one part is not ready for use with a different part of the build that
depends on that output.
-- "`Debugging With the GNU Project Debugger (GDB)
- Remotely <#platdev-gdb-remotedebug>`__" describes how to use GDB to
- allow you to examine running programs, which can help you fix
- problems.
+- ":ref:`dev-manual/common-tasks:debugging with the gnu project debugger (gdb) remotely`"
+ describes how to use GDB to allow you to examine running programs, which can
+ help you fix problems.
-- "`Debugging with the GNU Project Debugger (GDB) on the
- Target <#debugging-with-the-gnu-project-debugger-gdb-on-the-target>`__"
+- ":ref:`dev-manual/common-tasks:debugging with the gnu project debugger (gdb) on the target`"
describes how to use GDB directly on target hardware for debugging.
-- "`Other Debugging Tips <#dev-other-debugging-others>`__" describes
+- ":ref:`dev-manual/common-tasks:other debugging tips`" describes
miscellaneous debugging tips that can be useful.
Viewing Logs from Failed Tasks
@@ -9462,8 +9431,8 @@ state (sstate) task can be a useful debugging aid. This information is
available in signature information (``siginfo``) files in
:term:`SSTATE_DIR`. For
information on how to view and interpret information in ``siginfo``
-files, see the "`Viewing Task Variable
-Dependencies <#dev-viewing-task-variable-dependencies>`__" section.
+files, see the
+":ref:`dev-manual/common-tasks:viewing task variable dependencies`" section.
For conceptual information on shared state, see the
":ref:`overview-manual/concepts:shared state`"
@@ -9882,9 +9851,8 @@ Once the local build for "neard" completes, start a ``devshell`` build:
$ bitbake neard -c devshell
-For information on how to use a
-``devshell``, see the "`Using a Development
-Shell <#platdev-appdev-devshell>`__" section.
+For information on how to use a ``devshell``, see the
+":ref:`dev-manual/common-tasks:using a development shell`" section.
In the ``devshell``, do the following:
::
@@ -9926,7 +9894,7 @@ to patch the ``Makefile.am`` file, which is generated from
File Makefile.am added to patch patches/parallelmake.patch
For more information on using Quilt, see the
-"`Using Quilt in Your Workflow <#using-a-quilt-workflow>`__" section.
+":ref:`dev-manual/common-tasks:using quilt in your workflow`" section.
At this point you need to make the edits to ``Makefile.am`` to add the
missing dependency. For our example, you have to add the following line
@@ -9992,9 +9960,9 @@ The build should work without issue.
As with all solved problems, if they originated upstream, you need to
submit the fix for the recipe in OE-Core and upstream so that the
-problem is taken care of at its source. See the "`Submitting a Change to
-the Yocto Project <#how-to-submit-a-change>`__" section for more
-information.
+problem is taken care of at its source. See the
+":ref:`dev-manual/common-tasks:submitting a change to the yocto project`"
+section for more information.
Debugging With the GNU Project Debugger (GDB) Remotely
------------------------------------------------------
@@ -10023,7 +9991,52 @@ before starting the debugging process. These extra computations place
more load on the target system and can alter the characteristics of the
program being debugged.
-To help get past the previously mentioned constraints, you can use
+To help get past the previously mentioned constraints, there are two
+methods you can use: running a debuginfod server and using gdbserver.
+
+Using the debuginfod server method
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+"debuginfod" from "elfutils" is a way to distribute "debuginfo" files.
+Running a "debuginfod" server makes debug symbols readily available,
+which means you don't need to download debugging information
+and the binaries of the process being debugged. You can just fetch
+debug symbols from the server.
+
+To run a debuginfod server, you need to do the following:
+
+- Ensure that this variable is set in your ``local.conf`` file:
+ ::
+
+ PACKAGECONFIG_pn-elfutils-native = "debuginfod libdebuginfod"
+
+ This :term:`PACKAGECONFIG` option enables debuginfod and libdebuginfod for
+ "elfutils-native".
+
+- Run the following commands to set up the "debuginfod" server:
+ ::
+
+ $ oe-debuginfod
+
+
+To use debuginfod on the target, you need the following:
+
+- Ensure that this variable is set in your ``local.conf`` file:
+ ::
+
+ DEBUGINFOD_URLS = "http://localhost:8002/"
+
+ This :term:`DEBUGINFOD_URLS` option does the client configuration.
+
+ ::
+
+ PACKAGECONFIG_pn-gdb = "debuginfod"
+
+ This :term:`PACKAGECONFIG` option enables "debuginfod" for "gdb".
+
+Using the gdbserver method
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
gdbserver, which runs on the remote target and does not load any
debugging information from the debugged process. Instead, a GDB instance
processes the debugging information that is run on a remote computer -
@@ -10323,8 +10336,9 @@ Here are some other tips that you might find useful:
:yocto_bugs:`Bugzilla <>`. For information on
how to submit a bug against the Yocto Project, see the Yocto Project
Bugzilla :yocto_wiki:`wiki page </Bugzilla_Configuration_and_Bug_Tracking>`
- and the "`Submitting a Defect Against the Yocto
- Project <#submitting-a-defect-against-the-yocto-project>`__" section.
+ and the
+ ":ref:`dev-manual/common-tasks:submitting a defect against the yocto project`"
+ section.
.. note::
@@ -10579,8 +10593,9 @@ Using Email to Submit a Patch
Depending on the components changed, you need to submit the email to a
specific mailing list. For some guidance on which mailing list to use,
-see the `list <#figuring-out-the-mailing-list-to-use>`__ at the
-beginning of this section. For a description of all the available
+see the
+:ref:`list <dev-manual/common-tasks:submitting a change to the yocto project>`
+at the beginning of this section. For a description of all the available
mailing lists, see the ":ref:`Mailing Lists <resources-mailinglist>`" section in the
Yocto Project Reference Manual.
@@ -10738,7 +10753,7 @@ been followed:
are ``create-pull-request`` and ``send-pull-request``. You can find
these scripts in the ``scripts`` directory within the
:term:`Source Directory` (e.g.
- ``~/poky/scripts``).
+ ``poky/scripts``).
Using these scripts correctly formats the requests without
introducing any whitespace or HTML formatting. The maintainer that
@@ -10752,7 +10767,7 @@ been followed:
line in the created patch files:
::
- $ ~/poky/scripts/create-pull-request -u meta-intel-contrib -s "Updated Manual Section Reference in README"
+ $ poky/scripts/create-pull-request -u meta-intel-contrib -s "Updated Manual Section Reference in README"
Running this script forms ``*.patch`` files in a folder named
``pull-``\ `PID` in the current directory. One of the patch files is a
@@ -10766,7 +10781,7 @@ been followed:
list:
::
- $ ~/poky/scripts/send-pull-request -p ~/meta-intel/pull-10565 -t meta-intel@yoctoproject.org
+ $ poky/scripts/send-pull-request -p ~/meta-intel/pull-10565 -t meta-intel@yoctoproject.org
You need to follow the prompts as the script is interactive.
@@ -10994,7 +11009,7 @@ file. For example, to enable the
``poky/meta/recipes-multimedia/gstreamer/gst-plugins-ugly`` package, you
could add either the string "commercial_gst-plugins-ugly" or the more
general string "commercial" to ``LICENSE_FLAGS_WHITELIST``. See the
-"`License Flag Matching <#license-flag-matching>`__" section for a full
+":ref:`dev-manual/common-tasks:license flag matching`" section for a full
explanation of how ``LICENSE_FLAGS`` matching works. Here is the
example:
::
diff --git a/poky/documentation/dev-manual/qemu.rst b/poky/documentation/dev-manual/qemu.rst
index 766691b97..92799d6d2 100644
--- a/poky/documentation/dev-manual/qemu.rst
+++ b/poky/documentation/dev-manual/qemu.rst
@@ -58,7 +58,7 @@ available. Follow these general steps to run QEMU:
environment script (i.e. :ref:`structure-core-script`):
::
- $ cd ~/poky
+ $ cd poky
$ source oe-init-build-env
- If you installed a cross-toolchain, you can run the script that
@@ -66,7 +66,7 @@ available. Follow these general steps to run QEMU:
the initialization script from the default ``poky_sdk`` directory:
::
- . ~/poky_sdk/environment-setup-core2-64-poky-linux
+ . poky_sdk/environment-setup-core2-64-poky-linux
3. *Ensure the Artifacts are in Place:* You need to be sure you have a
pre-built kernel that will boot in QEMU. You also need the target
@@ -306,8 +306,8 @@ present, the toolchain is also automatically used.
tarball by using the ``runqemu-extract-sdk`` command. After
running the command, you must then point the ``runqemu`` script to
the extracted directory instead of a root filesystem image file.
- See the "`Running Under a Network File System (NFS)
- Server <#qemu-running-under-a-network-file-system-nfs-server>`__"
+ See the
+ ":ref:`dev-manual/qemu:running under a network file system (nfs) server`"
section for more information.
QEMU Command-Line Syntax
@@ -452,7 +452,7 @@ command line:
or "qemux86-64" QEMU architectures. For KVM with VHOST to work, the
following conditions must be met:
- - `kvm <#kvm-cond>`__ option conditions must be met.
+ - ``kvm`` option conditions defined above must be met.
- Your build host has to have virtio net device, which are
``/dev/vhost-net``.
diff --git a/poky/documentation/dev-manual/start.rst b/poky/documentation/dev-manual/start.rst
index 03061a79f..84abf4c51 100644
--- a/poky/documentation/dev-manual/start.rst
+++ b/poky/documentation/dev-manual/start.rst
@@ -230,8 +230,8 @@ particular working environment and set of practices.
- Separate the project's Metadata and code by using separate Git
repositories. See the ":ref:`overview-manual/development-environment:yocto project source repositories`"
section in the Yocto Project Overview and Concepts Manual for
- information on these repositories. See the "`Locating Yocto
- Project Source Files <#locating-yocto-project-source-files>`__"
+ information on these repositories. See the
+ ":ref:`dev-manual/start:locating yocto project source files`"
section for information on how to set up local Git repositories
for related upstream Yocto Project Git repositories.
@@ -314,13 +314,13 @@ Project Build Host:
should be able to run on any modern distribution that has the
following versions for Git, tar, Python and gcc.
- - Git 1.8.3.1 or greater
+ - Git &MIN_GIT_VERSION; or greater
- - tar 1.28 or greater
+ - tar &MIN_TAR_VERSION; or greater
- - Python 3.5.0 or greater.
+ - Python &MIN_PYTHON_VERSION; or greater.
- - gcc 5.0 or greater.
+ - gcc &MIN_GCC_VERSION; or greater.
If your build host does not meet any of these three listed version
requirements, you can take steps to prepare the system so that you
@@ -655,8 +655,7 @@ The :yocto_home:`Yocto Project Website <>` uses a "DOWNLOADS" page
from which you can locate and download tarballs of any Yocto Project
release. Rather than Git repositories, these files represent snapshot
tarballs similar to the tarballs located in the Index of Releases
-described in the "`Accessing Index of
-Releases <#accessing-index-of-releases>`__" section.
+described in the ":ref:`dev-manual/start:accessing index of releases`" section.
.. note::
@@ -759,16 +758,16 @@ Follow these steps to create a local version of the upstream
"master" branch, which results in a snapshot of the latest
development changes for "master". For information on how to check out
a specific development branch or on how to check out a local branch
- based on a tag name, see the "`Checking Out By Branch in
- Poky <#checking-out-by-branch-in-poky>`__" and `Checking Out By Tag
- in Poky <#checkout-out-by-tag-in-poky>`__" sections, respectively.
+ based on a tag name, see the
+ ":ref:`dev-manual/start:checking out by branch in poky`" and
+ ":ref:`dev-manual/start:checking out by tag in poky`" sections, respectively.
Once the local repository is created, you can change to that
directory and check its status. Here, the single "master" branch
exists on your system and by default, it is checked out:
::
- $ cd ~/poky
+ $ cd poky
$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
diff --git a/poky/documentation/index.rst b/poky/documentation/index.rst
index 9f41daf4b..6aeeb2197 100644
--- a/poky/documentation/index.rst
+++ b/poky/documentation/index.rst
@@ -34,7 +34,7 @@ Welcome to the Yocto Project Documentation
Application Development and the Extensible SDK (eSDK) <sdk-manual/index>
Toaster Manual <toaster-manual/index>
Test Environment Manual <test-manual/index>
- Bitbake User Manual <https://docs.yoctoproject.org/bitbake>
+ bitbake
.. toctree::
:maxdepth: 1
diff --git a/poky/documentation/kernel-dev/advanced.rst b/poky/documentation/kernel-dev/advanced.rst
index dd0b76bc3..fb6dfca85 100644
--- a/poky/documentation/kernel-dev/advanced.rst
+++ b/poky/documentation/kernel-dev/advanced.rst
@@ -56,8 +56,8 @@ using the same BSP description. Multiple Corei7-based BSPs could share
the same "intel-corei7-64" value for ``KMACHINE``. It is important to
realize that ``KMACHINE`` is just for kernel mapping, while ``MACHINE``
is the machine type within a BSP Layer. Even with this distinction,
-however, these two variables can hold the same value. See the `BSP
-Descriptions <#bsp-descriptions>`__ section for more information.
+however, these two variables can hold the same value. See the
+":ref:`kernel-dev/advanced:bsp descriptions`" section for more information.
Every linux-yocto style recipe must also indicate the Linux kernel
source repository branch used to build the Linux kernel. The
@@ -87,7 +87,7 @@ Together with ``KMACHINE``, ``LINUX_KERNEL_TYPE`` defines the search
arguments used by the kernel tools to find the appropriate description
within the kernel Metadata with which to build out the sources and
configuration. The linux-yocto recipes define "standard", "tiny", and
-"preempt-rt" kernel types. See the "`Kernel Types <#kernel-types>`__"
+"preempt-rt" kernel types. See the ":ref:`kernel-dev/advanced:kernel types`"
section for more information on kernel types.
During the build, the kern-tools search for the BSP description file
@@ -123,8 +123,8 @@ the entries in ``KERNEL_FEATURES`` are dependent on their location
within the kernel Metadata itself. The examples here are taken from the
``yocto-kernel-cache`` repository. Each branch of this repository
contains "features" and "cfg" subdirectories at the top-level. For more
-information, see the "`Kernel Metadata
-Syntax <#kernel-metadata-syntax>`__" section.
+information, see the ":ref:`kernel-dev/advanced:kernel metadata syntax`"
+section.
Kernel Metadata Syntax
======================
@@ -148,7 +148,7 @@ Features aggregate sources in the form of patches and configuration
fragments into a modular reusable unit. You can use features to
implement conceptually separate kernel Metadata descriptions such as
pure configuration fragments, simple patches, complex features, and
-kernel types. `Kernel types <#kernel-types>`__ define general kernel
+kernel types. :ref:`kernel-dev/advanced:kernel types` define general kernel
features and policy to be reused in the BSPs.
BSPs define hardware-specific features and aggregate them with kernel
@@ -167,10 +167,9 @@ following Metadata file hierarchy is recommended:
ktypes/
patches/
-The ``bsp`` directory contains the `BSP
-descriptions <#bsp-descriptions>`__. The remaining directories all
-contain "features". Separating ``bsp`` from the rest of the structure
-aids conceptualizing intended usage.
+The ``bsp`` directory contains the :ref:`kernel-dev/advanced:bsp descriptions`.
+The remaining directories all contain "features". Separating ``bsp`` from the
+rest of the structure aids conceptualizing intended usage.
Use these guidelines to help place your ``scc`` description files within
the structure:
@@ -198,11 +197,12 @@ contain "features" as far as the kernel tools are concerned.
Paths used in kernel Metadata files are relative to base, which is
either
:term:`FILESEXTRAPATHS` if
-you are creating Metadata in `recipe-space <#recipe-space-metadata>`__,
+you are creating Metadata in
+:ref:`recipe-space <kernel-dev/advanced:recipe-space metadata>`,
or the top level of
:yocto_git:`yocto-kernel-cache </yocto-kernel-cache/tree/>`
-if you are creating `Metadata outside of the
-recipe-space <#metadata-outside-the-recipe-space>`__.
+if you are creating
+:ref:`kernel-dev/advanced:metadata outside the recipe-space`.
.. [1]
``scc`` stands for Series Configuration Control, but the naming has
@@ -353,9 +353,9 @@ as how an additional feature description file is included with the
Typically, features are less granular than configuration fragments and
are more likely than configuration fragments and patches to be the types
of things you want to specify in the ``KERNEL_FEATURES`` variable of the
-Linux kernel recipe. See the "`Using Kernel Metadata in a
-Recipe <#using-kernel-metadata-in-a-recipe>`__" section earlier in the
-manual.
+Linux kernel recipe. See the
+":ref:`kernel-dev/advanced:using kernel metadata in a recipe`" section earlier
+in the manual.
Kernel Types
------------
@@ -364,7 +364,7 @@ A kernel type defines a high-level kernel policy by aggregating
non-hardware configuration fragments with patches you want to use when
building a Linux kernel of a specific type (e.g. a real-time kernel).
Syntactically, kernel types are no different than features as described
-in the "`Features <#features>`__" section. The
+in the ":ref:`kernel-dev/advanced:features`" section. The
:term:`LINUX_KERNEL_TYPE`
variable in the kernel recipe selects the kernel type. For example, in
the ``linux-yocto_4.12.bb`` kernel recipe found in
@@ -540,7 +540,7 @@ example, this is done using the following:
This file aggregates all the configuration
fragments, patches, and features that make up your standard kernel
-policy. See the "`Kernel Types <#kernel-types>`__" section for more
+policy. See the ":ref:`kernel-dev/advanced:kernel types`" section for more
information.
To aggregate common configurations and features specific to the kernel
@@ -825,11 +825,11 @@ Given this scenario, you do not need to create any branches in the
source repository. Rather, you just take the static patches you need and
encapsulate them within a feature description. Once you have the feature
description, you simply include that into the BSP description as
-described in the "`BSP Descriptions <#bsp-descriptions>`__" section.
+described in the ":ref:`kernel-dev/advanced:bsp descriptions`" section.
You can find information on how to create patches and BSP descriptions
-in the "`Patches <#patches>`__" and "`BSP
-Descriptions <#bsp-descriptions>`__" sections.
+in the ":ref:`kernel-dev/advanced:patches`" and
+":ref:`kernel-dev/advanced:bsp descriptions`" sections.
Machine Branches
----------------
diff --git a/poky/documentation/kernel-dev/common.rst b/poky/documentation/kernel-dev/common.rst
index 58adcc9b7..56217b9d3 100644
--- a/poky/documentation/kernel-dev/common.rst
+++ b/poky/documentation/kernel-dev/common.rst
@@ -57,7 +57,7 @@ section:
the build environment script (i.e. :ref:`structure-core-script`):
::
- $ cd ~/poky
+ $ cd poky
$ source oe-init-build-env
.. note::
@@ -74,7 +74,7 @@ section:
``MACHINE`` variable appropriately in your ``conf/local.conf`` file
found in the
:term:`Build Directory` (i.e.
- ``~/poky/build`` in this example).
+ ``poky/build`` in this example).
Also, since you are preparing to work on the kernel image, you need
to set the
@@ -94,7 +94,7 @@ section:
``bitbake-layers create-layer`` command as follows:
::
- $ cd ~/poky/build
+ $ cd poky/build
$ bitbake-layers create-layer ../../meta-mylayer
NOTE: Starting bitbake server...
Add your new layer with 'bitbake-layers add-layer ../../meta-mylayer'
@@ -119,7 +119,7 @@ section:
``bblayers.conf`` file as follows:
::
- $ cd ~/poky/build
+ $ cd poky/build
$ bitbake-layers add-layer ../../meta-mylayer
NOTE: Starting bitbake server...
$
@@ -128,7 +128,7 @@ section:
specifically for use with images to be run using QEMU:
::
- $ cd ~/poky/build
+ $ cd poky/build
$ bitbake core-image-minimal -c populate_sdk_ext
Once
@@ -136,21 +136,21 @@ section:
``*.sh`` file) in the following directory:
::
- ~/poky/build/tmp/deploy/sdk
+ poky/build/tmp/deploy/sdk
For this example, the installer file is named
``poky-glibc-x86_64-core-image-minimal-i586-toolchain-ext-&DISTRO;.sh``.
6. *Install the Extensible SDK:* Use the following command to install
the SDK. For this example, install the SDK in the default
- ``~/poky_sdk`` directory:
+ ``poky_sdk`` directory:
::
- $ cd ~/poky/build/tmp/deploy/sdk
+ $ cd poky/build/tmp/deploy/sdk
$ ./poky-glibc-x86_64-core-image-minimal-i586-toolchain-ext-&DISTRO;.sh
Poky (Yocto Project Reference Distro) Extensible SDK installer version &DISTRO;
============================================================================
- Enter target directory for SDK (default: ~/poky_sdk):
+ Enter target directory for SDK (default: poky_sdk):
You are about to install the SDK to "/home/scottrif/poky_sdk". Proceed [Y/n]? Y
Extracting SDK......................................done
Setting it up...
@@ -175,7 +175,7 @@ section:
directed by the output from installing the SDK:
::
- $ source ~/poky_sdk/environment-setup-i586-poky-linux
+ $ source poky_sdk/environment-setup-i586-poky-linux
"SDK environment now set up; additionally you may now run devtool to perform development tasks.
Run devtool --help for further details.
@@ -240,7 +240,7 @@ section:
section in the Yocto Project Development Tasks Manual.
::
- $ cd ~/poky
+ $ cd poky
$ git branch
master
* &DISTRO_NAME_NO_CAP;
@@ -260,7 +260,7 @@ section:
``MACHINE`` variable appropriately in your ``conf/local.conf`` file
found in the
:term:`Build Directory` (i.e.
- ``~/poky/build`` in this example).
+ ``poky/build`` in this example).
Also, since you are preparing to work on the kernel image, you need
to set the
@@ -280,7 +280,7 @@ section:
``bitbake-layers create-layer`` command as follows:
::
- $ cd ~/poky/build
+ $ cd poky/build
$ bitbake-layers create-layer ../../meta-mylayer
NOTE: Starting bitbake server...
Add your new layer with 'bitbake-layers add-layer ../../meta-mylayer'
@@ -304,7 +304,7 @@ section:
``bblayers.conf`` file as follows:
::
- $ cd ~/poky/build
+ $ cd poky/build
$ bitbake-layers add-layer ../../meta-mylayer
NOTE: Starting bitbake server ...
$
@@ -365,8 +365,7 @@ section:
At this point, you are ready to start making modifications to the kernel
using traditional kernel development steps. For a continued example, see
-the "`Using Traditional Kernel Development to Patch the
-Kernel <#using-traditional-kernel-development-to-patch-the-kernel>`__"
+the ":ref:`kernel-dev/common:using traditional kernel development to patch the kernel`"
section.
Creating and Preparing a Layer
@@ -398,7 +397,6 @@ home directory:
1. *Create Structure*: Create the layer's structure:
::
- $ cd $HOME
$ mkdir meta-mylayer
$ mkdir meta-mylayer/conf
$ mkdir meta-mylayer/recipes-kernel
@@ -464,8 +462,8 @@ Modifying an existing recipe can consist of the following:
- :ref:`kernel-dev/common:changing the configuration`
Before modifying an existing recipe, be sure that you have created a
-minimal, custom layer from which you can work. See the "`Creating and
-Preparing a Layer <#creating-and-preparing-a-layer>`__" section for
+minimal, custom layer from which you can work. See the
+":ref:`kernel-dev/common:creating and preparing a layer`" section for
information.
Creating the Append File
@@ -711,7 +709,7 @@ Linux kernel, BitBake detects the change in the recipe and fetches and
applies the new configuration before building the kernel.
For a detailed example showing how to configure the kernel, see the
-"`Configuring the Kernel <#configuring-the-kernel>`__" section.
+":ref:`kernel-dev/common:configuring the kernel`" section.
Using an "In-Tree"  ``defconfig`` File
--------------------------------------
@@ -819,12 +817,12 @@ the ":ref:`kernel-dev/common:getting ready to develop using \`\`devtool\`\``" Se
1. *Change the working directory*: In the previous step, the output
noted where you can find the source files (e.g.
- ``~/poky_sdk/workspace/sources/linux-yocto``). Change to where the
+ ``poky_sdk/workspace/sources/linux-yocto``). Change to where the
kernel source code is before making your edits to the
``calibrate.c`` file:
::
- $ cd ~/poky_sdk/workspace/sources/linux-yocto
+ $ cd poky_sdk/workspace/sources/linux-yocto
2. *Edit the source file*: Edit the ``init/calibrate.c`` file to have
the following changes:
@@ -896,7 +894,7 @@ the ":ref:`kernel-dev/common:getting ready to develop using \`\`devtool\`\``" Se
and use these Git commands to stage and commit your changes:
::
- $ cd ~/poky_sdk/workspace/sources/linux-yocto
+ $ cd poky_sdk/workspace/sources/linux-yocto
$ git status
$ git add init/calibrate.c
$ git commit -m "calibrate: Add printk example"
@@ -926,7 +924,7 @@ the ":ref:`kernel-dev/common:getting ready to develop using \`\`devtool\`\``" Se
set up to run BitBake:
::
- $ cd ~/poky/build
+ $ cd poky/build
$ bitbake core-image-minimal
Using Traditional Kernel Development to Patch the Kernel
@@ -955,15 +953,14 @@ emulator console output at boot time through ``printk`` statements in
the kernel's ``calibrate.c`` source code file. Applying the patch and
booting the modified image causes the added messages to appear on the
emulator's console. The example is a continuation of the setup procedure
-found in the "`Getting Ready for Traditional Kernel
-Development <#getting-ready-for-traditional-kernel-development>`__"
+found in the
+":ref:`kernel-dev/common:getting ready for traditional kernel development`"
Section.
1. *Edit the Source Files* Prior to this step, you should have used Git
to create a local copy of the repository for your kernel. Assuming
- you created the repository as directed in the "`Getting Ready for
- Traditional Kernel
- Development <#getting-ready-for-traditional-kernel-development>`__"
+ you created the repository as directed in the
+ ":ref:`kernel-dev/common:getting ready for traditional kernel development`"
section, use the following commands to edit the ``calibrate.c`` file:
1. *Change the working directory*: You need to locate the source
@@ -1015,7 +1012,7 @@ Section.
to the following to your ``local.conf``:
::
- $ cd ~/poky/build/conf
+ $ cd poky/build/conf
Add the following to the ``local.conf``:
::
@@ -1037,7 +1034,7 @@ Section.
you can now use BitBake to build the image:
::
- $ cd ~/poky/build
+ $ cd poky/build
$ bitbake core-image-minimal
5. *Boot the image*: Boot the modified image in the QEMU emulator using
@@ -1045,7 +1042,7 @@ Section.
with no password:
::
- $ cd ~/poky/build
+ $ cd poky/build
$ runqemu qemux86
6. *Look for Your Changes:* As QEMU booted, you might have seen your
@@ -1105,9 +1102,9 @@ Section.
The :term:`FILESEXTRAPATHS` and :term:`SRC_URI` statements
enable the OpenEmbedded build system to find the patch file.
- For more information on append files and patches, see the "`Creating
- the Append File <#creating-the-append-file>`__" and "`Applying
- Patches <#applying-patches>`__" sections. You can also see the
+ For more information on append files and patches, see the
+ ":ref:`kernel-dev/common:creating the append file`" and
+ ":ref:`kernel-dev/common:applying patches`" sections. You can also see the
":ref:`dev-manual/common-tasks:using .bbappend files in your layer`"
section in the Yocto Project Development Tasks Manual.
@@ -1119,7 +1116,7 @@ Section.
the following sequence of commands:
::
- $ cd ~/poky/build
+ $ cd poky/build
$ bitbake -c cleanall yocto-linux
$ bitbake core-image-minimal -c cleanall
$ bitbake core-image-minimal
@@ -1141,8 +1138,8 @@ configuration fragments, and how to interactively modify your
``.config`` file to create the leanest kernel configuration file
possible.
-For more information on kernel configuration, see the "`Changing the
-Configuration <#changing-the-configuration>`__" section.
+For more information on kernel configuration, see the
+":ref:`kernel-dev/common:changing the configuration`" section.
Using  ``menuconfig``
---------------------
@@ -1172,7 +1169,7 @@ environment, you must do the following:
The following commands initialize the BitBake environment, run the
:ref:`ref-tasks-kernel_configme`
task, and launch ``menuconfig``. These commands assume the Source
-Directory's top-level folder is ``~/poky``:
+Directory's top-level folder is ``poky``:
::
$ cd poky
@@ -1298,8 +1295,8 @@ created to hold the configuration changes.
applies these on top of and after applying the existing ``defconfig`` file
configurations.
-For more information on configuring the kernel, see the "`Changing the
-Configuration <#changing-the-configuration>`__" section.
+For more information on configuring the kernel, see the
+":ref:`kernel-dev/common:changing the configuration`" section.
Creating Configuration Fragments
--------------------------------
@@ -1370,8 +1367,8 @@ steps:
$ bitbake linux-yocto -c diffconfig
The ``diffconfig`` command creates a file that is a list of Linux kernel
-``CONFIG_`` assignments. See the "`Changing the
-Configuration <#changing-the-configuration>`__" section for additional
+``CONFIG_`` assignments. See the
+":ref:`kernel-dev/common:changing the configuration`" section for additional
information on how to use the output as a configuration fragment.
.. note::
@@ -1615,8 +1612,7 @@ source directory. Follow these steps to clean up the version string:
":ref:`kernel-dev/common:using \`\`devtool\`\` to patch the kernel`"
section. For
information on building the kernel image when using Bitbake, see the
- "`Using Traditional Kernel Development to Patch the
- Kernel <#using-traditional-kernel-development-to-patch-the-kernel>`__"
+ ":ref:`kernel-dev/common:using traditional kernel development to patch the kernel`"
section.
Working With Your Own Sources
@@ -1734,8 +1730,9 @@ Here are some basic steps you can use to work with your own sources:
5. *Customize Your Recipe as Needed:* Provide further customizations to
your recipe as needed just as you would customize an existing
- linux-yocto recipe. See the "`Modifying an Existing
- Recipe <#modifying-an-existing-recipe>`__" section for information.
+ linux-yocto recipe. See the
+ ":ref:`ref-manual/devtool-reference:modifying an existing recipe`" section
+ for information.
Working with Out-of-Tree Modules
================================
@@ -1915,7 +1912,7 @@ differences:
$ git show origin/standard/base..origin/standard/emenlow
Use this command to create individual patches for each change. Here is
-an example that that creates patch files for each commit and places them
+an example that creates patch files for each commit and places them
in your ``Documents`` directory:
::
diff --git a/poky/documentation/kernel-dev/intro.rst b/poky/documentation/kernel-dev/intro.rst
index f6c9b9713..5592f74c8 100644
--- a/poky/documentation/kernel-dev/intro.rst
+++ b/poky/documentation/kernel-dev/intro.rst
@@ -90,8 +90,7 @@ understand the following documentation:
- The ":ref:`dev-manual/common-tasks:understanding and creating layers`"
section in the Yocto Project Development Tasks Manual.
-- The "`Kernel Modification
- Workflow <#kernel-modification-workflow>`__" section.
+- The ":ref:`kernel-dev/intro:kernel modification workflow`" section.
Kernel Modification Workflow
============================
diff --git a/poky/documentation/kernel-dev/maint-appx.rst b/poky/documentation/kernel-dev/maint-appx.rst
index 89f4b4334..44c43893e 100644
--- a/poky/documentation/kernel-dev/maint-appx.rst
+++ b/poky/documentation/kernel-dev/maint-appx.rst
@@ -64,7 +64,7 @@ the "yocto-4.12" branch of the ``yocto-kernel-cache`` repository:
kernel versions (e.g. "yocto-4.12", "yocto-4.10", "yocto-4.9", and so forth).
Once you have checked out and switched to appropriate branches, you can
-see a snapshot of all the kernel source files used to used to build that
+see a snapshot of all the kernel source files used to build that
particular Yocto Linux kernel for a particular board.
To see the features and configurations for a particular Yocto Linux
diff --git a/poky/documentation/overview-manual/concepts.rst b/poky/documentation/overview-manual/concepts.rst
index 257de44ec..ada5143b2 100644
--- a/poky/documentation/overview-manual/concepts.rst
+++ b/poky/documentation/overview-manual/concepts.rst
@@ -132,7 +132,7 @@ Layers
Layers are repositories that contain related metadata (i.e. sets of
instructions) that tell the OpenEmbedded build system how to build a
-target. Yocto Project's `layer model <#the-yocto-project-layer-model>`__
+target. :ref:`overview-manual/yp-intro:the yocto project layer model`
facilitates collaboration, sharing, customization, and reuse within the
Yocto Project development environment. Layers logically separate
information for your project. For example, you can use a layer to hold
@@ -207,8 +207,8 @@ you can tell BitBake the target architecture for which you are building
the image, where to store downloaded source, and other build properties.
The following figure shows an expanded representation of the "User
-Configuration" box of the `general workflow
-figure <#general-workflow-figure>`__:
+Configuration" box of the :ref:`general workflow
+figure <overview-manual/concepts:openembedded build system concepts>`:
.. image:: figures/user-configuration.png
:align: center
@@ -374,7 +374,7 @@ provide Metadata for the software, machine, and policies.
In general, three types of layer input exists. You can see them below
the "User Configuration" box in the `general workflow
-figure <#general-workflow-figure>`__:
+figure <overview-manual/concepts:openembedded build system concepts>`:
- *Metadata (.bb + Patches):* Software layers containing
user-supplied recipe files, patches, and append files. A good example
@@ -387,8 +387,8 @@ figure <#general-workflow-figure>`__:
- *Machine BSP Configuration:* Board Support Package (BSP) layers (i.e.
"BSP Layer" in the following figure) providing machine-specific
configurations. This type of information is specific to a particular
- target architecture. A good example of a BSP layer from the `Poky
- Reference Distribution <#gs-reference-distribution-poky>`__ is the
+ target architecture. A good example of a BSP layer from the
+ :ref:`overview-manual/yp-intro:reference distribution (poky)` is the
:yocto_git:`meta-yocto-bsp </poky/tree/meta-yocto-bsp>`
layer.
@@ -403,7 +403,8 @@ figure <#general-workflow-figure>`__:
that contain many policy configurations for the Poky distribution.
The following figure shows an expanded representation of these three
-layers from the `general workflow figure <#general-workflow-figure>`__:
+layers from the :ref:`general workflow figure
+<overview-manual/concepts:openembedded build system concepts>`:
.. image:: figures/layer-input.png
:align: center
@@ -418,9 +419,9 @@ in the
section in the
Yocto Project Development Tasks Manual. For a general discussion on
layers and the many layers from which you can draw, see the
-"`Layers <#overview-layers>`__" and "`The Yocto Project Layer
-Model <#the-yocto-project-layer-model>`__" sections both earlier in this
-manual.
+":ref:`overview-manual/concepts:layers`" and
+":ref:`overview-manual/yp-intro:the yocto project layer model`" sections both
+earlier in this manual.
If you explored the previous links, you discovered some areas where many
layers that work with the Yocto Project exist. The :yocto_git:`Source
@@ -514,11 +515,12 @@ Sources
-------
In order for the OpenEmbedded build system to create an image or any
-target, it must be able to access source files. The `general workflow
-figure <#general-workflow-figure>`__ represents source files using the
-"Upstream Project Releases", "Local Projects", and "SCMs (optional)"
-boxes. The figure represents mirrors, which also play a role in locating
-source files, with the "Source Materials" box.
+target, it must be able to access source files. The :ref:`general workflow
+figure <overview-manual/concepts:openembedded build system concepts>`
+represents source files using the "Upstream Project Releases", "Local
+Projects", and "SCMs (optional)" boxes. The figure represents mirrors,
+which also play a role in locating source files, with the "Source
+Materials" box.
The method by which source files are ultimately organized is a function
of the project. For example, for released software, projects tend to use
@@ -554,7 +556,7 @@ Directory if needed without fear of removing any downloaded source file.
The remainder of this section provides a deeper look into the source
files and the mirrors. Here is a more detailed look at the source file
-area of the `general workflow figure <#general-workflow-figure>`__:
+area of the :ref:`general workflow figure <overview-manual/concepts:openembedded build system concepts>`:
.. image:: figures/source-input.png
:align: center
@@ -628,9 +630,9 @@ Package Feeds
When the OpenEmbedded build system generates an image or an SDK, it gets
the packages from a package feed area located in the
-:term:`Build Directory`. The `general
-workflow figure <#general-workflow-figure>`__ shows this package feeds
-area in the upper-right corner.
+:term:`Build Directory`. The :ref:`general workflow figure
+<overview-manual/concepts:openembedded build system concepts>`
+shows this package feeds area in the upper-right corner.
This section looks a little closer into the package feeds area used by
the build system. Here is a more detailed look at the area:
@@ -691,10 +693,10 @@ BitBake Tool
The OpenEmbedded build system uses
:term:`BitBake` to produce images and
-Software Development Kits (SDKs). You can see from the `general workflow
-figure <#general-workflow-figure>`__, the BitBake area consists of
-several functional areas. This section takes a closer look at each of
-those areas.
+Software Development Kits (SDKs). You can see from the :ref:`general workflow
+figure <overview-manual/concepts:openembedded build system concepts>`,
+the BitBake area consists of several functional areas. This section takes a
+closer look at each of those areas.
.. note::
@@ -820,7 +822,7 @@ source files, which are located in the
:term:`S` directory.
For more information on how the source directories are created, see the
-"`Source Fetching <#source-fetching-dev-environment>`__" section. For
+":ref:`overview-manual/concepts:source fetching`" section. For
more information on how to create patches and how the build system
processes patches, see the
":ref:`dev-manual/common-tasks:patching code`"
@@ -957,8 +959,8 @@ details on how this is accomplished, you can look at
Depending on the type of packages being created (RPM, DEB, or IPK), the
:ref:`do_package_write_* <ref-tasks-package_write_deb>`
task creates the actual packages and places them in the Package Feed
-area, which is ``${TMPDIR}/deploy``. You can see the "`Package
-Feeds <#package-feeds-dev-environment>`__" section for more detail on
+area, which is ``${TMPDIR}/deploy``. You can see the
+":ref:`overview-manual/concepts:package feeds`" section for more detail on
that part of the build process.
.. note::
@@ -1119,7 +1121,7 @@ and
:ref:`ref-tasks-populate_sdk_ext`
tasks use these key variables to help create the list of packages to
actually install. For information on the variables listed in the figure,
-see the "`Application Development SDK <#sdk-dev-environment>`__"
+see the ":ref:`overview-manual/concepts:application development sdk`"
section.
The ``do_populate_sdk`` task helps create the standard SDK and handles
@@ -1147,8 +1149,8 @@ For each task that completes successfully, BitBake writes a stamp file
into the :term:`STAMPS_DIR`
directory. The beginning of the stamp file's filename is determined by
the :term:`STAMP` variable, and the end
-of the name consists of the task's name and current `input
-checksum <#overview-checksums>`__.
+of the name consists of the task's name and current :ref:`input
+checksum <overview-manual/concepts:checksums (signatures)>`.
.. note::
@@ -1165,10 +1167,10 @@ file does not exist, the task is rerun.
.. note::
The stamp mechanism is more general than the shared state (sstate)
- cache mechanism described in the "`Setscene Tasks and Shared
- State <#setscene-tasks-and-shared-state>`__" section. BitBake avoids
- rerunning any task that has a valid stamp file, not just tasks that
- can be accelerated through the sstate cache.
+ cache mechanism described in the
+ ":ref:`overview-manual/concepts:setscene tasks and shared state`" section.
+ BitBake avoids rerunning any task that has a valid stamp file, not just
+ tasks that can be accelerated through the sstate cache.
However, you should realize that stamp files only serve as a marker
that some work has been done and that these files do not record task
@@ -1271,7 +1273,8 @@ Images
The images produced by the build system are compressed forms of the root
filesystem and are ready to boot on a target device. You can see from
-the `general workflow figure <#general-workflow-figure>`__ that BitBake
+the :ref:`general workflow figure
+<overview-manual/concepts:openembedded build system concepts>` that BitBake
output, in part, consists of images. This section takes a closer look at
this output:
@@ -1327,7 +1330,8 @@ current configuration.
Application Development SDK
---------------------------
-In the `general workflow figure <#general-workflow-figure>`__, the
+In the :ref:`general workflow figure
+<overview-manual/concepts:openembedded build system concepts>`, the
output labeled "Application Development SDK" represents an SDK. The SDK
generation process differs depending on whether you build an extensible
SDK (e.g. ``bitbake -c populate_sdk_ext`` imagename) or a standard SDK
@@ -1357,8 +1361,8 @@ can initialize the environment before using the tools.
your own SDK installer.
- For background information on cross-development toolchains in the
- Yocto Project development environment, see the "`Cross-Development
- Toolchain Generation <#cross-development-toolchain-generation>`__"
+ Yocto Project development environment, see the
+ ":ref:`overview-manual/concepts:cross-development toolchain generation`"
section.
- For information on setting up a cross-development environment, see
@@ -1773,10 +1777,10 @@ through this setting in the ``bitbake.conf`` file:
BB_SIGNATURE_HANDLER ?= "OEBasicHash"
The "OEBasicHash" ``BB_SIGNATURE_HANDLER`` is the same
-as the "OEBasic" version but adds the task hash to the `stamp
-files <#stamp-files-and-the-rerunning-of-tasks>`__. This results in any
-metadata change that changes the task hash, automatically causing the
-task to be run again. This removes the need to bump
+as the "OEBasic" version but adds the task hash to the :ref:`stamp
+files <overview-manual/concepts:stamp files and the rerunning of tasks>`. This
+results in any metadata change that changes the task hash, automatically causing
+the task to be run again. This removes the need to bump
:term:`PR` values, and changes to metadata
automatically ripple across the build.
@@ -1901,9 +1905,10 @@ The following list explains the previous example:
- The ``do_deploy[stamp-extra-info] = "${MACHINE_ARCH}"`` line appends
- extra metadata to the `stamp
- file <#stamp-files-and-the-rerunning-of-tasks>`__. In this case, the
- metadata makes the task specific to a machine's architecture. See
+ extra metadata to the :ref:`stamp
+ file <overview-manual/concepts:stamp files and the rerunning of tasks>`. In
+ this case, the metadata makes the task specific to a machine's architecture.
+ See
":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-execution:the task list`"
section in the BitBake User Manual for more information on the
``stamp-extra-info`` flag.
@@ -2111,8 +2116,7 @@ accomplished using fakeroot.
under fakeroot. Otherwise, the task cannot run root-only operations,
and cannot see the fake file ownership and permissions set by the
other task. You need to also add a dependency on
- virtual/fakeroot-native:do_populate_sysroot
- , giving the following:
+ ``virtual/fakeroot-native:do_populate_sysroot``, giving the following:
::
fakeroot do_mytask () {
diff --git a/poky/documentation/overview-manual/development-environment.rst b/poky/documentation/overview-manual/development-environment.rst
index 011a47957..a33f89e4f 100644
--- a/poky/documentation/overview-manual/development-environment.rst
+++ b/poky/documentation/overview-manual/development-environment.rst
@@ -157,7 +157,8 @@ these tarballs gives you a snapshot of the released files.
- The recommended method for setting up the Yocto Project
:term:`Source Directory` and the files
- for supported BSPs (e.g., ``meta-intel``) is to use `Git <#git>`__
+ for supported BSPs (e.g., ``meta-intel``) is to use
+ :ref:`overview-manual/development-environment:git`
to create a local copy of the upstream repositories.
- Be sure to always work in matching branches for both the selected
@@ -214,7 +215,8 @@ Git Workflows and the Yocto Project
===================================
Developing using the Yocto Project likely requires the use of
-`Git <#git>`__. Git is a free, open source distributed version control
+:ref:`overview-manual/development-environment:git`.
+Git is a free, open source distributed version control
system used as part of many collaborative design environments. This
section provides workflow concepts using the Yocto Project and Git. In
particular, the information covers basic practices that describe roles
@@ -382,11 +384,10 @@ commands.
Repositories, Tags, and Branches
--------------------------------
-As mentioned briefly in the previous section and also in the "`Git
-Workflows and the Yocto
-Project <#gs-git-workflows-and-the-yocto-project>`__" section, the Yocto
-Project maintains source repositories at :yocto_git:`/`. If you
-look at this web-interface of the repositories, each item is a separate
+As mentioned briefly in the previous section and also in the
+":ref:`overview-manual/development-environment:git workflows and the yocto project`"
+section, the Yocto Project maintains source repositories at :yocto_git:`/`.
+If you look at this web-interface of the repositories, each item is a separate
Git repository.
Git repositories use branching techniques that track content change (not
@@ -541,7 +542,7 @@ descriptions and strategies on how to use these commands:
in this form assumes the local branch already exists. This command is
analogous to "cd".
-- *git checkout –b working-branch upstream-branch:* Creates and
+- *git checkout -b working-branch upstream-branch:* Creates and
checks out a working branch on your local machine. The local branch
tracks the upstream branch. You can use your local branch to isolate
your work. It is a good idea to use local branches when adding
diff --git a/poky/documentation/overview-manual/intro.rst b/poky/documentation/overview-manual/intro.rst
index bd247dd45..a2afe7756 100644
--- a/poky/documentation/overview-manual/intro.rst
+++ b/poky/documentation/overview-manual/intro.rst
@@ -14,17 +14,16 @@ information suitable for a new Yocto Project user.
The following list describes what you can get from this manual:
-- `Introducing the Yocto Project <#overview-yp>`__\ *:* This chapter
- provides an introduction to the Yocto Project. You will learn about
- features and challenges of the Yocto Project, the layer model,
+- :ref:`overview-manual/yp-intro:introducing the yocto project`\ *:*
+ This chapter provides an introduction to the Yocto Project. You will learn
+ about features and challenges of the Yocto Project, the layer model,
components and tools, development methods, the
:term:`Poky` reference distribution, the
OpenEmbedded build system workflow, and some basic Yocto terms.
-- `The Yocto Project Development
- Environment <#overview-development-environment>`__\ *:* This chapter
- helps you get started understanding the Yocto Project development
- environment. You will learn about open source, development hosts,
+- :ref:`overview-manual/development-environment:the yocto project development environment`\ *:*
+ This chapter helps you get started understanding the Yocto Project
+ development environment. You will learn about open source, development hosts,
Yocto Project source repositories, workflows using Git and the Yocto
Project, a Git primer, and information about licensing.
diff --git a/poky/documentation/overview-manual/yp-intro.rst b/poky/documentation/overview-manual/yp-intro.rst
index 0ec7e2b96..fca02e4ce 100644
--- a/poky/documentation/overview-manual/yp-intro.rst
+++ b/poky/documentation/overview-manual/yp-intro.rst
@@ -41,9 +41,9 @@ Features
The following list describes features and advantages of the Yocto
Project:
-- *Widely Adopted Across the Industry:* Semiconductor, operating
- system, software, and service vendors exist whose products and
- services adopt and support the Yocto Project. For a look at the Yocto
+- *Widely Adopted Across the Industry:* Many semiconductor, operating
+ system, software, and service vendors adopt and support the Yocto
+ Project in their products and services. For a look at the Yocto
Project community and the companies involved with the Yocto Project,
see the "COMMUNITY" and "ECOSYSTEM" tabs on the
:yocto_home:`Yocto Project <>` home page.
@@ -53,8 +53,8 @@ Project:
create and supply BSPs that support their hardware. If you have
custom silicon, you can create a BSP that supports that architecture.
- Aside from lots of architecture support, the Yocto Project fully
- supports a wide range of device emulation through the Quick EMUlator
+ Aside from broad architecture support, the Yocto Project fully
+ supports a wide range of devices emulated by the Quick EMUlator
(QEMU).
- *Images and Code Transfer Easily:* Yocto Project output can easily
@@ -78,10 +78,10 @@ Project:
you need for embedded devices. You only add the feature support or
packages that you absolutely need for the device. For devices that
have display hardware, you can use available system components such
- as X11, GTK+, Qt, Clutter, and SDL (among others) to create a rich
- user experience. For devices that do not have a display or where you
- want to use alternative UI frameworks, you can choose to not install
- these components.
+ as X11, Wayland, GTK+, Qt, Clutter, and SDL (among others) to create
+ a rich user experience. For devices that do not have a display or
+ where you want to use alternative UI frameworks, you can choose to
+ not build these components.
- *Comprehensive Toolchain Capabilities:* Toolchains for supported
architectures satisfy most use cases. However, if your hardware
@@ -96,18 +96,18 @@ Project:
of your design instead of adopting decisions enforced by some system
software provider.
-- *Uses a Layer Model:* The Yocto Project `layer
- infrastructure <#the-yocto-project-layer-model>`__ groups related
- functionality into separate bundles. You can incrementally add these
- grouped functionalities to your project as needed. Using layers to
+- *Uses a Layer Model:* The Yocto Project :ref:`layer
+ infrastructure <overview-manual/yp-intro:the yocto project layer model>`
+ groups related functionality into separate bundles. You can incrementally
+ add these grouped functionalities to your project as needed. Using layers to
isolate and group functionality reduces project complexity and
redundancy, allows you to easily extend the system, make
customizations, and keep functionality organized.
- *Supports Partial Builds:* You can build and rebuild individual
packages as needed. Yocto Project accomplishes this through its
- `shared-state cache <#shared-state-cache>`__ (sstate) scheme. Being
- able to build and debug components individually eases project
+ :ref:`overview-manual/concepts:shared state cache` (sstate) scheme.
+ Being able to build and debug components individually eases project
development.
- *Releases According to a Strict Schedule:* Major releases occur on a
@@ -155,8 +155,9 @@ developing using the Yocto Project:
documents on the Yocto Project website.
- *Project Workflow Could Be Confusing:* The `Yocto Project
- workflow <#overview-development-environment>`__ could be confusing if
- you are used to traditional desktop and server software development.
+ workflow <overview-manual/development-environment:the yocto project development environment>`
+ could be confusing if you are used to traditional desktop and server
+ software development.
In a desktop development environment, mechanisms exist to easily pull
and install new packages, which are typically pre-compiled binaries
from servers accessible over the Internet. Using the Yocto Project,
@@ -262,8 +263,7 @@ with the string ``meta-``.
.. note::
It is not a requirement that a layer name begin with the prefix
- meta-
- , but it is a commonly accepted standard in the Yocto Project
+ ``meta-``, but it is a commonly accepted standard in the Yocto Project
community.
For example, if you were to examine the :yocto_git:`tree view </poky/tree/>`
@@ -272,7 +272,7 @@ of the ``poky`` repository, you will see several layers: ``meta``,
``meta-yocto-bsp``. Each of these repositories represents a distinct
layer.
-For procedures on how to create layers, see the
+For procedures on how to create layers, see the
":ref:`dev-manual/common-tasks:understanding and creating layers`"
section in the Yocto Project Development Tasks Manual.
@@ -283,8 +283,7 @@ The Yocto Project employs a collection of components and tools used by
the project itself, by project developers, and by those using the Yocto
Project. These components and tools are open source projects and
metadata that are separate from the reference distribution
-(:term:`Poky`) and the
-:term:`OpenEmbedded Build System`. Most of the
+(:term:`Poky`) and the :term:`OpenEmbedded Build System`. Most of the
components and tools are downloaded separately.
This section provides brief overviews of the components and tools
@@ -325,7 +324,7 @@ applications using the Yocto Project:
You can read about the ``devtool`` workflow in the Yocto Project
Application Development and Extensible Software Development Kit
- (eSDK) Manual in the
+ (eSDK) Manual in the
":ref:`sdk-manual/extensible:using \`\`devtool\`\` in your sdk workflow`"
section.
@@ -431,13 +430,16 @@ activities using the Yocto Project:
During a build, it can be necessary to perform operations that
require system administrator privileges. For example, file ownership
- or permissions might need definition. Pseudo is a tool that you can
- either use directly or through the environment variable
+ or permissions might need to be defined. Pseudo is a tool that you
+ can either use directly or through the environment variable
``LD_PRELOAD``. Either method allows these operations to succeed as
if system administrator privileges exist even when they do not.
- You can read more about Pseudo in the "`Fakeroot and
- Pseudo <#fakeroot-and-pseudo>`__" section.
+ Thanks to Pseudo, the Yocto Project never needs root privileges to
+ build images for your target system.
+
+ You can read more about Pseudo in the
+ ":ref:`overview-manual/concepts:fakeroot and pseudo`" section.
Open-Embedded Build System Components
-------------------------------------
@@ -479,9 +481,9 @@ The following list consists of components associated with the
Sharing a core set of metadata results in Poky as an integration
layer on top of OE-Core. You can see that in this
- `figure <#yp-key-dev-elements>`__. The Yocto Project combines various
- components such as BitBake, OE-Core, script "glue", and documentation
- for its build system.
+ :ref:`figure <overview-manual/yp-intro:what is the yocto project?>`.
+ The Yocto Project combines various components such as BitBake, OE-Core,
+ script "glue", and documentation for its build system.
Reference Distribution (Poky)
-----------------------------
@@ -489,8 +491,8 @@ Reference Distribution (Poky)
Poky is the Yocto Project reference distribution. It contains the
:term:`OpenEmbedded Build System`
(BitBake and OE-Core) as well as a set of metadata to get you started
-building your own distribution. See the
-`figure <#what-is-the-yocto-project>`__ in "What is the Yocto Project?"
+building your own distribution. See the figure in
+":ref:`overview-manual/yp-intro:what is the yocto project?`"
section for an illustration that shows Poky and its relationship with
other parts of the Yocto Project.
@@ -502,8 +504,9 @@ To use the Yocto Project tools and components, you can download
Poky does not contain binary files. It is a working example of how to
build your own custom Linux distribution from source.
-You can read more about Poky in the "`Reference Embedded Distribution
-(Poky) <#reference-embedded-distribution>`__" section.
+You can read more about Poky in the
+":ref:`overview-manual/yp-intro:reference embedded distribution (poky)`"
+section.
Packages for Finished Targets
-----------------------------
@@ -566,19 +569,19 @@ Linux.
3. *CROPS:* The final and best solution available now for developing
using the Yocto Project on a system not native to Linux is with
- `CROPS <#gs-crops-overview>`__.
+ :ref:`CROPS <overview-manual/yp-intro:development tools>`.
Development Methods
===================
-The Yocto Project development environment usually involves a
+The Yocto Project development environment usually involves a
:term:`Build Host` and target
hardware. You use the Build Host to build images and develop
-applications, while you use the target hardware to test deployed
+applications, while you use the target hardware to execute deployed
software.
This section provides an introduction to the choices or development
-methods you have when setting up your Build Host. Depending on the your
+methods you have when setting up your Build Host. Depending on your
particular workflow preference and the type of operating system your
Build Host runs, several choices exist that allow you to use the Yocto
Project.
@@ -593,11 +596,11 @@ Project.
system running Linux as its native operating system allows you to
develop software by directly using the
:term:`BitBake` tool. You can
- accomplish all aspects of development from a familiar shell of a
+ accomplish all aspects of development from a regular shell in a
supported Linux distribution.
For information on how to set up a Build Host on a system running
- Linux as its native operating system, see the
+ Linux as its native operating system, see the
":ref:`dev-manual/start:setting up a native linux host`"
section in the Yocto Project Development Tasks Manual.
@@ -622,7 +625,7 @@ Project.
section in the Yocto Project Development Tasks Manual.
- *Windows Subsystem For Linux (WSLv2):* You may use Windows Subsystem
- For Linux v2 to set up a build host using Windows 10.
+ For Linux v2 to set up a Build Host using Windows 10.
.. note::
@@ -631,8 +634,7 @@ Project.
still decide to use WSL please upgrade to WSLv2.
The Windows Subsystem For Linux allows Windows 10 to run a real Linux
- kernel inside of a lightweight utility virtual machine (VM) using
- virtualization technology.
+ kernel inside of a lightweight virtual machine (VM).
For information on how to set up a Build Host with WSLv2, see the
":ref:`dev-manual/start:setting up to use windows subsystem for linux (wslv2)`"
@@ -641,12 +643,11 @@ Project.
- *Toaster:* Regardless of what your Build Host is running, you can use
Toaster to develop software using the Yocto Project. Toaster is a web
interface to the Yocto Project's :term:`OpenEmbedded Build System`.
- The interface
- enables you to configure and run your builds. Information about
- builds is collected and stored in a database. You can use Toaster to
- configure and start builds on multiple remote build servers.
+ The interface allows you to configure and run your builds. Information
+ about builds is collected and stored in a database. You can use Toaster
+ to configure and start builds on multiple remote build servers.
- For information about and how to use Toaster, see the
+ For information about and how to use Toaster, see the
:doc:`/toaster-manual/index`.
Reference Embedded Distribution (Poky)
@@ -654,14 +655,12 @@ Reference Embedded Distribution (Poky)
"Poky", which is pronounced *Pock*-ee, is the name of the Yocto
Project's reference distribution or Reference OS Kit. Poky contains the
-:term:`OpenEmbedded Build System`
-(:term:`BitBake` and
-:term:`OpenEmbedded-Core (OE-Core)`) as well as a set
-of :term:`Metadata` to get you started
-building your own distro. In other words, Poky is a base specification
-of the functionality needed for a typical embedded system as well as the
-components from the Yocto Project that allow you to build a distribution
-into a usable binary image.
+:term:`OpenEmbedded Build System` (:term:`BitBake` and
+:term:`OpenEmbedded-Core (OE-Core)`) as well as a set of
+:term:`Metadata` to get you started building your own distro. In other
+words, Poky is a base specification of the functionality needed for a
+typical embedded system as well as the components from the Yocto Project
+that allow you to build a distribution into a usable binary image.
Poky is a combined repository of BitBake, OpenEmbedded-Core (which is
found in ``meta``), ``meta-poky``, ``meta-yocto-bsp``, and documentation
@@ -730,7 +729,8 @@ Sato.
One of the most powerful properties of Poky is that every aspect of a
build is controlled by the metadata. You can use metadata to augment
these base image types by adding metadata
-`layers <#the-yocto-project-layer-model>`__ that extend functionality.
+`layers <overview-manual/yp-intro:the yocto project layer model>` that extend
+functionality.
These layers can provide, for example, an additional software stack for
an image type, add a board support package (BSP) for additional
hardware, or even create a new image type.
@@ -787,8 +787,8 @@ Following is a brief summary of the "workflow":
7. The build system generates the file system image and a customized
Extensible SDK (eSDK) for application development in parallel.
-For a very detailed look at this workflow, see the "`OpenEmbedded Build
-System Concepts <#openembedded-build-system-build-concepts>`__" section.
+For a very detailed look at this workflow, see the
+":ref:`overview-manual/concepts:openembedded build system concepts`" section.
Some Basic Terms
================
@@ -816,14 +816,14 @@ helpful for getting started:
isolate information used when building for multiple architectures.
Layers are hierarchical in their ability to override previous
specifications. You can include any number of available layers from
- the Yocto Project and customize the build by adding your layers after
- them. You can search the Layer Index for layers used within Yocto
- Project.
+ the Yocto Project and customize the build by adding your own layers
+ after them. You can search the Layer Index for layers used within
+ Yocto Project.
- For more detailed information on layers, see the
+ For more detailed information on layers, see the
":ref:`dev-manual/common-tasks:understanding and creating layers`"
section in the Yocto Project Development Tasks Manual. For a
- discussion specifically on BSP Layers, see the
+ discussion specifically on BSP Layers, see the
":ref:`bsp-guide/bsp:bsp layers`" section in the Yocto
Project Board Support Packages (BSP) Developer's Guide.
@@ -851,7 +851,7 @@ helpful for getting started:
BitBake is similar to the ``make`` tool.
During a build process, the build system tracks dependencies and
- performs a native or cross-compilation of the package. As a first
+ performs a native or cross-compilation of each package. As a first
step in a cross-build setup, the framework attempts to create a
cross-compiler toolchain (i.e. Extensible SDK) suited for the target
platform.
@@ -878,7 +878,8 @@ helpful for getting started:
subtle meanings. For example, the packages referred to in the
":ref:`ref-manual/system-requirements:required packages for the build host`"
section in the Yocto Project Reference Manual are compiled binaries
- that, when installed, add functionality to your Linux distribution.
+ that, when installed, add functionality to your host Linux
+ distribution.
Another point worth noting is that historically within the Yocto
Project, recipes were referred to as packages - thus, the existence
diff --git a/poky/documentation/poky.yaml b/poky/documentation/poky.yaml
index 3c30c4430..8ccb359e0 100644
--- a/poky/documentation/poky.yaml
+++ b/poky/documentation/poky.yaml
@@ -1,17 +1,17 @@
-DISTRO : "3.2.2"
+DISTRO : "3.2.3"
DISTRO_NAME_NO_CAP : "gatesgarth"
DISTRO_NAME : "Gatesgarth"
DISTRO_NAME_NO_CAP_MINUS_ONE : "dunfell"
DISTRO_NAME_NO_CAP_LTS : "dunfell"
-YOCTO_DOC_VERSION : "3.2.2"
+YOCTO_DOC_VERSION : "3.2.3"
YOCTO_DOC_VERSION_MINUS_ONE : "3.1.6"
-DISTRO_REL_TAG : "yocto-3.2.2"
-POKYVERSION : "24.0.2"
+DISTRO_REL_TAG : "yocto-3.2.3"
+POKYVERSION : "24.0.3"
YOCTO_POKY : "poky-&DISTRO_NAME_NO_CAP;-&POKYVERSION;"
YOCTO_DL_URL : "https://downloads.yoctoproject.org"
YOCTO_AB_URL : "https://autobuilder.yoctoproject.org"
YOCTO_RELEASE_DL_URL : "&YOCTO_DL_URL;/releases/yocto/yocto-&DISTRO;"
-UBUNTU_HOST_PACKAGES_ESSENTIAL : "gawk wget git-core diffstat unzip texinfo gcc-multilib \
+UBUNTU_HOST_PACKAGES_ESSENTIAL : "gawk wget git diffstat unzip texinfo gcc \
build-essential chrpath socat cpio python3 python3-pip python3-pexpect \
xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev \
pylint3 xterm python3-subunit mesa-common-dev"
@@ -40,3 +40,7 @@ CENTOS8_HOST_PACKAGES_ESSENTIAL : "-y epel-release
python3-GitPython python3-jinja2 python3-pexpect xz which SDL-devel xterm \
rpcgen mesa-libGL-devel"
PIP3_HOST_PACKAGES_DOC : "$ sudo pip3 install sphinx sphinx_rtd_theme pyyaml"
+MIN_PYTHON_VERSION : "3.6.0"
+MIN_TAR_VERSION : "1.28"
+MIN_GIT_VERSION : "1.8.3.1"
+MIN_GCC_VERSION : "5.0"
diff --git a/poky/documentation/profile-manual/usage.rst b/poky/documentation/profile-manual/usage.rst
index b401cf904..c42f5b64b 100644
--- a/poky/documentation/profile-manual/usage.rst
+++ b/poky/documentation/profile-manual/usage.rst
@@ -100,8 +100,8 @@ Using perf to do Basic Profiling
As a simple test case, we'll profile the 'wget' of a fairly large file,
which is a minimally interesting case because it has both file and
network I/O aspects, and at least in the case of standard Yocto images,
-it's implemented as part of busybox, so the methods we use to analyze it
-can be used in a very similar way to the whole host of supported busybox
+it's implemented as part of BusyBox, so the methods we use to analyze it
+can be used in a very similar way to the whole host of supported BusyBox
applets in Yocto. ::
root@crownbay:~# rm linux-2.6.19.2.tar.bz2; \
@@ -251,12 +251,12 @@ As a bit of background explanation for these callchains, think about
what happens at a high level when you run wget to get a file out on the
network. Basically what happens is that the data comes into the kernel
via the network connection (socket) and is passed to the userspace
-program 'wget' (which is actually a part of busybox, but that's not
+program 'wget' (which is actually a part of BusyBox, but that's not
important for now), which takes the buffers the kernel passes to it and
writes it to a disk file to save it.
The part of this process that we're looking at in the above call stacks
-is the part where the kernel passes the data it's read from the socket
+is the part where the kernel passes the data it has read from the socket
down to wget i.e. a copy-to-user.
Notice also that here there's also a case where the hex value is
@@ -277,16 +277,16 @@ Now that we've seen the basic layout of the profile data and the basics
of how to extract useful information out of it, let's get back to the
task at hand and see if we can get some basic idea about where the time
is spent in the program we're profiling, wget. Remember that wget is
-actually implemented as an applet in busybox, so while the process name
-is 'wget', the executable we're actually interested in is busybox. So
-let's expand the first entry containing busybox:
+actually implemented as an applet in BusyBox, so while the process name
+is 'wget', the executable we're actually interested in is BusyBox. So
+let's expand the first entry containing BusyBox:
.. image:: figures/perf-wget-busybox-expanded-stripped.png
:align: center
Again, before we expanded we saw that the function was labeled with a
hex value instead of a symbol as with most of the kernel entries.
-Expanding the busybox entry doesn't make it any better.
+Expanding the BusyBox entry doesn't make it any better.
The problem is that perf can't find the symbol information for the
busybox binary, which is actually stripped out by the Yocto build
@@ -299,7 +299,7 @@ when you build the image: ::
However, we already have an image with the binaries stripped, so
what can we do to get perf to resolve the symbols? Basically we need to
-install the debuginfo for the busybox package.
+install the debuginfo for the BusyBox package.
To generate the debug info for the packages in the image, we can add
``dbg-pkgs`` to :term:`EXTRA_IMAGE_FEATURES` in ``local.conf``. For example: ::
@@ -314,7 +314,7 @@ in the ``local.conf`` file: ::
PACKAGE_DEBUG_SPLIT_STYLE = 'debug-file-directory'
Once we've done that, we can install the
-debuginfo for busybox. The debug packages once built can be found in
+debuginfo for BusyBox. The debug packages once built can be found in
``build/tmp/deploy/rpm/*`` on the host system. Find the busybox-dbg-...rpm
file and copy it to the target. For example: ::
@@ -325,7 +325,7 @@ Now install the debug rpm on the target: ::
root@crownbay:~# rpm -i busybox-dbg-1.20.2-r2.core2_32.rpm
-Now that the debuginfo is installed, we see that the busybox entries now display
+Now that the debuginfo is installed, we see that the BusyBox entries now display
their functions symbolically:
.. image:: figures/perf-wget-busybox-debuginfo.png
@@ -345,11 +345,11 @@ expanded all the nodes using the 'E' key):
.. image:: figures/perf-wget-busybox-dso-zoom.png
:align: center
-Finally, we can see that now that the busybox debuginfo is installed,
+Finally, we can see that now that the BusyBox debuginfo is installed,
the previously unresolved symbol in the ``sys_clock_gettime()`` entry
mentioned previously is now resolved, and shows that the
sys_clock_gettime system call that was the source of 6.75% of the
-copy-to-user overhead was initiated by the ``handle_input()`` busybox
+copy-to-user overhead was initiated by the ``handle_input()`` BusyBox
function:
.. image:: figures/perf-wget-g-copy-to-user-expanded-debuginfo.png
@@ -1580,7 +1580,7 @@ events in the output buffer: ::
root@sugarbay:/sys/kernel/debug/tracing# echo nop > current_tracer
root@sugarbay:/sys/kernel/debug/tracing# echo 1 > tracing_on
-Now, if we look at the the 'trace' file, we see nothing
+Now, if we look at the 'trace' file, we see nothing
but the kmalloc events we just turned on: ::
root@sugarbay:/sys/kernel/debug/tracing# cat trace | less
@@ -1900,7 +1900,7 @@ the target: ::
meta-toolchain
meta-ide-support
- You can also run generated qemu images with a command like 'runqemu qemux86-64'
+ You can also run generated QEMU images with a command like 'runqemu qemux86-64'
Once you've done that, you can cd to whatever
directory contains your scripts and use 'crosstap' to run the script: ::
diff --git a/poky/documentation/ref-manual/TODO b/poky/documentation/ref-manual/TODO
index ee0db977c..0510f5471 100644
--- a/poky/documentation/ref-manual/TODO
+++ b/poky/documentation/ref-manual/TODO
@@ -1,10 +1,10 @@
Handbook Todo List:
- * Document adding a new IMAGE_FEATURE to the customising images section
+ * Document adding a new IMAGE_FEATURE to the customising images section
* Add instructions about using zaurus/openmoko emulation
* Add component overview/block diagrams
- * Software Deevelopment intro should mention its software development for
- intended target and could be a different arch etc and thus special case.
+ * Software Development intro should mention its software development for
+ intended target and could be a different arch etc and thus special case.
* Expand insane.bbclass documentation to cover tests
* Document remaining classes (see list in ref-classes)
* Document formfactor
diff --git a/poky/documentation/ref-manual/classes.rst b/poky/documentation/ref-manual/classes.rst
index be112e0fa..52a50faf6 100644
--- a/poky/documentation/ref-manual/classes.rst
+++ b/poky/documentation/ref-manual/classes.rst
@@ -501,29 +501,6 @@ Support for other version control systems such as Subversion is limited
due to BitBake's automatic fetch dependencies (e.g.
``subversion-native``).
-.. _ref-classes-distutils:
-
-``distutils*.bbclass``
-======================
-
-The ``distutils*`` classes support recipes for Python version 2.x
-extensions, which are simple. These recipes usually only need to point
-to the source's archive and then inherit the proper class. Building is
-split into two methods depending on which method the module authors
-used.
-
-- Extensions that use an Autotools-based build system require Autotools
- and the classes based on ``distutils`` in their recipes.
-
-- Extensions that use build systems based on ``distutils`` require the
- ``distutils`` class in their recipes.
-
-- Extensions that use build systems based on ``setuptools`` require the
- :ref:`setuptools <ref-classes-setuptools>` class in their recipes.
-
-The ``distutils-common-base`` class is required by some of the
-``distutils*`` classes to provide common Python2 support.
-
.. _ref-classes-distutils3:
``distutils3*.bbclass``
@@ -542,15 +519,9 @@ used.
``distutils`` class in their recipes.
- Extensions that use build systems based on ``setuptools3`` require
- the :ref:`setuptools3 <ref-classes-setuptools>` class in their
+ the :ref:`setuptools3 <ref-classes-setuptools3>` class in their
recipes.
-The ``distutils3*`` classes either inherit their corresponding
-``distutils*`` class or replicate them using a Python3 version instead
-(e.g. ``distutils3-base`` inherits ``distutils-common-base``, which is
-the same as ``distutils-base`` but inherits ``python3native`` instead of
-``pythonnative``).
-
.. _ref-classes-externalsrc:
``externalsrc.bbclass``
@@ -1426,7 +1397,7 @@ Only a single U-boot boot script can be added to the FIT image created by
The boot script is specified in the ITS file as a text file containing
U-boot commands. When using a boot script the user should configure the
U-boot ``do_install`` task to copy the script to sysroot.
-So the script can be included in the the FIT image by the ``kernel-fitimage``
+So the script can be included in the FIT image by the ``kernel-fitimage``
class. At run-time, U-boot CONFIG_BOOTCOMMAND define can be configured to
load the boot script from the FIT image and executes it.
@@ -2138,13 +2109,13 @@ For information on setting up and running ptests, see the
":ref:`dev-manual/common-tasks:testing packages with ptest`"
section in the Yocto Project Development Tasks Manual.
-.. _ref-classes-python-dir:
+.. _ref-classes-python3-dir:
-``python-dir.bbclass``
-======================
+``python3-dir.bbclass``
+=======================
-The ``python-dir`` class provides the base version, location, and site
-package location for Python.
+The ``python3-dir`` class provides the base version, location, and site
+package location for Python 3.
.. _ref-classes-python3native:
@@ -2155,14 +2126,17 @@ The ``python3native`` class supports using the native version of Python
3 built by the build system rather than support of the version provided
by the build host.
-.. _ref-classes-pythonnative:
+.. _ref-classes-python3targetconfig:
-``pythonnative.bbclass``
-========================
+``python3targetconfig.bbclass``
+===============================
-When inherited by a recipe, the ``pythonnative`` class supports using
-the native version of Python built by the build system rather than using
-the version provided by the build host.
+The ``python3targetconfig`` class supports using the native version of Python
+3 built by the build system rather than support of the version provided
+by the build host, except that the configuration for the target machine
+is accessible (such as correct installation directories). This also adds a
+dependency on target ``python3``, so should only be used where appropriate
+in order to avoid unnecessarily lengthening builds.
.. _ref-classes-qemu:
@@ -2323,22 +2297,13 @@ additional configuration options you want to pass SCons command line.
The ``sdl`` class supports recipes that need to build software that uses
the Simple DirectMedia Layer (SDL) library.
-.. _ref-classes-setuptools:
-
-``setuptools.bbclass``
-======================
-
-The ``setuptools`` class supports Python version 2.x extensions that use
-build systems based on ``setuptools``. If your recipe uses these build
-systems, the recipe needs to inherit the ``setuptools`` class.
-
.. _ref-classes-setuptools3:
``setuptools3.bbclass``
=======================
The ``setuptools3`` class supports Python version 3.x extensions that
-use build systems based on ``setuptools3``. If your recipe uses these
+use build systems based on ``setuptools``. If your recipe uses these
build systems, the recipe needs to inherit the ``setuptools3`` class.
.. _ref-classes-sign_rpm:
diff --git a/poky/documentation/ref-manual/devtool-reference.rst b/poky/documentation/ref-manual/devtool-reference.rst
index 5075f0c22..629aa2ffb 100644
--- a/poky/documentation/ref-manual/devtool-reference.rst
+++ b/poky/documentation/ref-manual/devtool-reference.rst
@@ -178,8 +178,8 @@ resides in ``/home/user/sources/jackson``:
$ devtool add jackson /home/user/sources/jackson
If you add a recipe and the workspace layer does not exist, the command
-creates the layer and populates it as described in "`The Workspace Layer
-Structure <#devtool-the-workspace-layer-structure>`__" section.
+creates the layer and populates it as described in
+":ref:`devtool-the-workspace-layer-structure`" section.
Running ``devtool add`` when the workspace layer exists causes the tool
to add the recipe, append files, and source files into the existing
diff --git a/poky/documentation/ref-manual/faq.rst b/poky/documentation/ref-manual/faq.rst
index 34b26ee3e..64fdfdf75 100644
--- a/poky/documentation/ref-manual/faq.rst
+++ b/poky/documentation/ref-manual/faq.rst
@@ -16,7 +16,7 @@ first before being pulled back into Poky. This practice benefits both
projects immediately.
**Q:** My development system does not meet the required Git, tar, and
-Python versions. In particular, I do not have Python 3.5.0 or greater.
+Python versions. In particular, I do not have Python &MIN_PYTHON_VERSION; or greater.
Can I still use the Yocto Project?
**A:** You can get the required tools on your host development system a
@@ -449,7 +449,7 @@ variable ``bindir``. The makefile's hardcoded default value of
"/usr/bin" worked most of the time, but not for the recipe's ``-native``
variant. For another example, permissions errors might be caused by a
Makefile that ignores ``DESTDIR`` or uses a different name for that
-environment variable. Check the the build system to see if these kinds
+environment variable. Check the build system to see if these kinds
of issues exist.
**Q:** I'm adding a binary in a recipe but it's different in the image, what is
diff --git a/poky/documentation/ref-manual/kickstart.rst b/poky/documentation/ref-manual/kickstart.rst
index 472820f16..b87cdc13b 100644
--- a/poky/documentation/ref-manual/kickstart.rst
+++ b/poky/documentation/ref-manual/kickstart.rst
@@ -33,7 +33,7 @@ Either of these commands creates a partition on the system and uses the
following syntax:
::
- part [mntpoint]
+ part [mntpoint]
partition [mntpoint]
If you do not
@@ -55,7 +55,7 @@ must also provide one of the ``--ondrive``, ``--ondisk``, or
.. note::
The mount program must understand the PARTUUID syntax you use with
- ``--use-uuid`` and non-root *mountpoint*, including swap. The busybox
+ ``--use-uuid`` and non-root *mountpoint*, including swap. The BusyBox
versions of these application are currently excluded.
Here is an example that uses "/" as the mountpoint. The command uses
diff --git a/poky/documentation/ref-manual/migration-1.3.rst b/poky/documentation/ref-manual/migration-1.3.rst
index 12e225b14..0929f490d 100644
--- a/poky/documentation/ref-manual/migration-1.3.rst
+++ b/poky/documentation/ref-manual/migration-1.3.rst
@@ -1,10 +1,10 @@
.. SPDX-License-Identifier: CC-BY-SA-2.0-UK
-Moving to the Yocto Project 1.3 Release
-=======================================
+Moving to the Yocto Project 1.3 Release (danny)
+===============================================
This section provides migration information for moving to the Yocto
-Project 1.3 Release from the prior release.
+Project 1.3 Release (codename "danny") from the prior release.
.. _1.3-local-configuration:
diff --git a/poky/documentation/ref-manual/migration-1.4.rst b/poky/documentation/ref-manual/migration-1.4.rst
index 0b7e86117..f5fac7a2a 100644
--- a/poky/documentation/ref-manual/migration-1.4.rst
+++ b/poky/documentation/ref-manual/migration-1.4.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 1.4 Release
-=======================================
+Moving to the Yocto Project 1.4 Release (dylan)
+===============================================
This section provides migration information for moving to the Yocto
-Project 1.4 Release from the prior release.
+Project 1.4 Release (codename "dylan") from the prior release.
.. _migration-1.4-bitbake:
diff --git a/poky/documentation/ref-manual/migration-1.5.rst b/poky/documentation/ref-manual/migration-1.5.rst
index 2716bc9cf..c772e51b5 100644
--- a/poky/documentation/ref-manual/migration-1.5.rst
+++ b/poky/documentation/ref-manual/migration-1.5.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 1.5 Release
-=======================================
+Moving to the Yocto Project 1.5 Release (dora)
+==============================================
This section provides migration information for moving to the Yocto
-Project 1.5 Release from the prior release.
+Project 1.5 Release (codename "dora") from the prior release.
.. _migration-1.5-host-dependency-changes:
@@ -298,7 +298,7 @@ Removed and Renamed Recipes
- ``libtool-nativesdk`` has been renamed to ``nativesdk-libtool``.
- ``tinylogin`` has been removed. It has been replaced by a suid
- portion of Busybox. See the "`BusyBox <#busybox>`__"
+ portion of Busybox. See the ":ref:`migration-1.5-busybox`"
section for more information.
- ``external-python-tarball`` has been renamed to
diff --git a/poky/documentation/ref-manual/migration-1.6.rst b/poky/documentation/ref-manual/migration-1.6.rst
index ed155d0df..4c6afab1f 100644
--- a/poky/documentation/ref-manual/migration-1.6.rst
+++ b/poky/documentation/ref-manual/migration-1.6.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 1.6 Release
-=======================================
+Moving to the Yocto Project 1.6 Release (daisy)
+===============================================
This section provides migration information for moving to the Yocto
-Project 1.6 Release from the prior release.
+Project 1.6 Release (codename "daisy") from the prior release.
.. _migration-1.6-archiver-class:
diff --git a/poky/documentation/ref-manual/migration-1.7.rst b/poky/documentation/ref-manual/migration-1.7.rst
index 54544e479..9cf467f28 100644
--- a/poky/documentation/ref-manual/migration-1.7.rst
+++ b/poky/documentation/ref-manual/migration-1.7.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 1.7 Release
-=======================================
+Moving to the Yocto Project 1.7 Release (dizzy)
+===============================================
This section provides migration information for moving to the Yocto
-Project 1.7 Release from the prior release.
+Project 1.7 Release (codename "dizzy") from the prior release.
.. _migration-1.7-changes-to-setting-qemu-packageconfig-options:
@@ -12,7 +12,7 @@ Changes to Setting QEMU ``PACKAGECONFIG`` Options in ``local.conf``
The QEMU recipe now uses a number of
:term:`PACKAGECONFIG` options to enable various
optional features. The method used to set defaults for these options
-means that existing ``local.conf`` files will need to be be modified to
+means that existing ``local.conf`` files will need to be modified to
append to ``PACKAGECONFIG`` for ``qemu-native`` and ``nativesdk-qemu``
instead of setting it. In other words, to enable graphical output for
QEMU, you should now have these lines in ``local.conf``:
diff --git a/poky/documentation/ref-manual/migration-1.8.rst b/poky/documentation/ref-manual/migration-1.8.rst
index 73789bd51..ec2b13879 100644
--- a/poky/documentation/ref-manual/migration-1.8.rst
+++ b/poky/documentation/ref-manual/migration-1.8.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 1.8 Release
-=======================================
+Moving to the Yocto Project 1.8 Release (fido)
+==============================================
This section provides migration information for moving to the Yocto
-Project 1.8 Release from the prior release.
+Project 1.8 Release (codename "fido") from the prior release.
.. _migration-1.8-removed-recipes:
diff --git a/poky/documentation/ref-manual/migration-2.0.rst b/poky/documentation/ref-manual/migration-2.0.rst
index 4eea94887..9da60dfdc 100644
--- a/poky/documentation/ref-manual/migration-2.0.rst
+++ b/poky/documentation/ref-manual/migration-2.0.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 2.0 Release
-=======================================
+Moving to the Yocto Project 2.0 Release (jethro)
+================================================
This section provides migration information for moving to the Yocto
-Project 2.0 Release from the prior release.
+Project 2.0 Release (codename "jethro") from the prior release.
.. _migration-2.0-gcc-5:
diff --git a/poky/documentation/ref-manual/migration-2.1.rst b/poky/documentation/ref-manual/migration-2.1.rst
index 861d04861..1eb9ab552 100644
--- a/poky/documentation/ref-manual/migration-2.1.rst
+++ b/poky/documentation/ref-manual/migration-2.1.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 2.1 Release
-=======================================
+Moving to the Yocto Project 2.1 Release (krogoth)
+=================================================
This section provides migration information for moving to the Yocto
-Project 2.1 Release from the prior release.
+Project 2.1 Release (codename "krogoth") from the prior release.
.. _migration-2.1-variable-expansion-in-python-functions:
@@ -134,7 +134,7 @@ or that mention ``do_rootfs``, you might need to update those changes.
In particular, if you had added any tasks after ``do_rootfs``, you
should make edits so that those tasks are after the
:ref:`ref-tasks-image-complete` task rather than
-after ``do_rootfs`` so that the your added tasks run at the correct
+after ``do_rootfs`` so that your added tasks run at the correct
time.
A minor part of this restructuring is that the post-processing
@@ -179,9 +179,8 @@ The following recipes have been removed in the 2.1 release:
- ``python-pygtk``: Recipe became obsolete.
-- ``adt-installer``: Recipe became obsolete. See the "`ADT
- Removed <#adt-removed>`__" section for more
- information.
+- ``adt-installer``: Recipe became obsolete. See the
+ ":ref:`ref-manual/migration-2.1:adt removed`" section for more information.
.. _migration-2.1-class-changes:
diff --git a/poky/documentation/ref-manual/migration-2.2.rst b/poky/documentation/ref-manual/migration-2.2.rst
index 5c6fecf32..198181a46 100644
--- a/poky/documentation/ref-manual/migration-2.2.rst
+++ b/poky/documentation/ref-manual/migration-2.2.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 2.2 Release
-=======================================
+Moving to the Yocto Project 2.2 Release (morty)
+===============================================
This section provides migration information for moving to the Yocto
-Project 2.2 Release from the prior release.
+Project 2.2 Release (codename "morty") from the prior release.
.. _migration-2.2-minimum-kernel-version:
@@ -367,8 +367,8 @@ The following recipes have been removed:
- ``sato-icon-theme``: Became obsolete.
-- ``swabber-native``: Swabber has been removed. See the `entry on
- Swabber <#swabber-has-been-removed>`__.
+- ``swabber-native``: Swabber has been removed. See the :ref:`entry on
+ Swabber <ref-manual/migration-2.2:swabber has been removed>`.
- ``tslib``: No longer needed and has been moved to ``meta-oe``.
@@ -393,8 +393,8 @@ The following classes have been removed:
- ``sip``: Mostly unused.
-- ``swabber``: See the `entry on
- Swabber <#swabber-has-been-removed>`__.
+- ``swabber``: See the :ref:`entry on
+ Swabber <ref-manual/migration-2.2:swabber has been removed>`.
.. _migration-2.2-minor-packaging-changes:
diff --git a/poky/documentation/ref-manual/migration-2.3.rst b/poky/documentation/ref-manual/migration-2.3.rst
index 04b11daa7..0541eb3e7 100644
--- a/poky/documentation/ref-manual/migration-2.3.rst
+++ b/poky/documentation/ref-manual/migration-2.3.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 2.3 Release
-=======================================
+Moving to the Yocto Project 2.3 Release (pyro)
+==============================================
This section provides migration information for moving to the Yocto
-Project 2.3 Release from the prior release.
+Project 2.3 Release (codename "pyro") from the prior release.
.. _migration-2.3-recipe-specific-sysroots:
diff --git a/poky/documentation/ref-manual/migration-2.4.rst b/poky/documentation/ref-manual/migration-2.4.rst
index 260b3204b..2ba17e0ed 100644
--- a/poky/documentation/ref-manual/migration-2.4.rst
+++ b/poky/documentation/ref-manual/migration-2.4.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 2.4 Release
-=======================================
+Moving to the Yocto Project 2.4 Release (rocko)
+===============================================
This section provides migration information for moving to the Yocto
-Project 2.4 Release from the prior release.
+Project 2.4 Release (codename "rocko") from the prior release.
.. _migration-2.4-memory-resident-mode:
diff --git a/poky/documentation/ref-manual/migration-2.5.rst b/poky/documentation/ref-manual/migration-2.5.rst
index 9f45ffce7..9ef4b5539 100644
--- a/poky/documentation/ref-manual/migration-2.5.rst
+++ b/poky/documentation/ref-manual/migration-2.5.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 2.5 Release
-=======================================
+Moving to the Yocto Project 2.5 Release (sumo)
+==============================================
This section provides migration information for moving to the Yocto
-Project 2.5 Release from the prior release.
+Project 2.5 Release (codename "sumo") from the prior release.
.. _migration-2.5-packaging-changes:
diff --git a/poky/documentation/ref-manual/migration-2.6.rst b/poky/documentation/ref-manual/migration-2.6.rst
index 5d524f381..aeac50980 100644
--- a/poky/documentation/ref-manual/migration-2.6.rst
+++ b/poky/documentation/ref-manual/migration-2.6.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 2.6 Release
-=======================================
+Moving to the Yocto Project 2.6 Release (thud)
+==============================================
This section provides migration information for moving to the Yocto
-Project 2.6 Release from the prior release.
+Project 2.6 Release (codename "thud") from the prior release.
.. _migration-2.6-gcc-changes:
@@ -110,7 +110,7 @@ upon the older ``*proto`` recipes need to be changed to depend on the
newer ``xorgproto`` recipe instead.
For names of recipes removed because of this repository change, see the
-`Removed Recipes <#removed-recipes>`__ section.
+:ref:`ref-manual/migration-2.6:removed recipes` section.
.. _migration-2.6-distutils-distutils3-fetching-dependencies:
@@ -118,7 +118,7 @@ For names of recipes removed because of this repository change, see the
---------------------------------------------------------------------------------------------------
Previously, it was possible for Python recipes that inherited the
-:ref:`distutils <ref-classes-distutils>` and
+``distutils`` and
:ref:`distutils3 <ref-classes-distutils3>` classes to fetch code
during the :ref:`ref-tasks-configure` task to satisfy
dependencies mentioned in ``setup.py`` if those dependencies were not
diff --git a/poky/documentation/ref-manual/migration-2.7.rst b/poky/documentation/ref-manual/migration-2.7.rst
index 5af5947ff..1be4d5d5b 100644
--- a/poky/documentation/ref-manual/migration-2.7.rst
+++ b/poky/documentation/ref-manual/migration-2.7.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 2.7 Release
-=======================================
+Moving to the Yocto Project 2.7 Release (warrior)
+=================================================
This section provides migration information for moving to the Yocto
-Project 2.7 Release from the prior release.
+Project 2.7 Release (codename "warrior") from the prior release.
.. _migration-2.7-bitbake-changes:
diff --git a/poky/documentation/ref-manual/migration-3.0.rst b/poky/documentation/ref-manual/migration-3.0.rst
index 7ef2742f8..f3d20e2ed 100644
--- a/poky/documentation/ref-manual/migration-3.0.rst
+++ b/poky/documentation/ref-manual/migration-3.0.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 3.0 Release
-=======================================
+Moving to the Yocto Project 3.0 Release (zeus)
+==============================================
This section provides migration information for moving to the Yocto
-Project 3.0 Release from the prior release.
+Project 3.0 Release (codename "zeus") from the prior release.
.. _migration-3.0-init-system-selection:
diff --git a/poky/documentation/ref-manual/migration-3.1.rst b/poky/documentation/ref-manual/migration-3.1.rst
index 4fcd2490d..84d32502e 100644
--- a/poky/documentation/ref-manual/migration-3.1.rst
+++ b/poky/documentation/ref-manual/migration-3.1.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 3.1 Release
-=======================================
+Moving to the Yocto Project 3.1 Release (dunfell)
+=================================================
This section provides migration information for moving to the Yocto
-Project 3.1 Release from the prior release.
+Project 3.1 Release (codename "dunfell") from the prior release.
.. _migration-3.1-minimum-system-requirements:
diff --git a/poky/documentation/ref-manual/migration-3.2.rst b/poky/documentation/ref-manual/migration-3.2.rst
index 65a9ff4ca..39743af70 100644
--- a/poky/documentation/ref-manual/migration-3.2.rst
+++ b/poky/documentation/ref-manual/migration-3.2.rst
@@ -1,8 +1,8 @@
-Moving to the Yocto Project 3.2 Release
-=======================================
+Moving to the Yocto Project 3.2 Release (gatesgarth)
+====================================================
This section provides migration information for moving to the Yocto
-Project 3.2 Release from the prior release.
+Project 3.2 Release (codename "gatesgarth") from the prior release.
.. _migration-3.2-minimum-system-requirements:
@@ -308,6 +308,6 @@ Miscellaneous changes
- Erroneous use of ``inherit +=`` (instead of ``INHERIT +=``) in a configuration file now triggers an error instead of silently being ignored.
- ptest support has been removed from the ``kbd`` recipe, as upstream has moved to autotest which is difficult to work with in a cross-compilation environment.
- ``oe.utils.is_machine_specific()`` and ``oe.utils.machine_paths()`` have been removed as their utility was questionable. In the unlikely event that you have references to these in your own code, then the code will need to be reworked.
-- The ``i2ctransfer`` module is now disabled by default when building ``busybox`` in order to be consistent with disabling the other i2c tools there. If you do wish the i2ctransfer module to be built in busybox then add ``CONFIG_I2CTRANSFER=y`` to your custom busybox configuration.
+- The ``i2ctransfer`` module is now disabled by default when building ``busybox`` in order to be consistent with disabling the other i2c tools there. If you do wish the i2ctransfer module to be built in BusyBox then add ``CONFIG_I2CTRANSFER=y`` to your custom BusyBox configuration.
- In the ``Upstream-Status`` header convention for patches, ``Accepted`` has been replaced with ``Backport`` as these almost always mean the same thing i.e. the patch is already upstream and may need to be removed in a future recipe upgrade. If you are adding these headers to your own patches then use ``Backport`` to indicate that the patch has been sent upstream.
- The ``tune-supersparc.inc`` tune file has been removed as it does not appear to be widely used and no longer works.
diff --git a/poky/documentation/ref-manual/migration-3.3.rst b/poky/documentation/ref-manual/migration-3.3.rst
new file mode 100644
index 000000000..4fb51a39d
--- /dev/null
+++ b/poky/documentation/ref-manual/migration-3.3.rst
@@ -0,0 +1,168 @@
+Moving to the Yocto Project 3.3 Release (hardknott)
+===================================================
+
+This section provides migration information for moving to the Yocto
+Project 3.3 Release (codename "hardknott") from the prior release.
+
+
+.. _migration-3.3-minimum-system-requirements:
+
+Minimum system requirements
+---------------------------
+
+You will now need at least Python 3.6 installed on your build host. Most recent
+distributions provide this, but should you be building on a distribution that
+does not have it, you can use the ``buildtools-tarball`` (easily installable
+using ``scripts/install-buildtools``) - see
+:ref:`ref-manual/system-requirements:required git, tar, python and gcc versions`
+for details.
+
+
+.. _migration-3.3-removed-recipes:
+
+Removed recipes
+---------------
+
+The following recipes have been removed:
+
+- ``go-dep``: obsolete with the advent of go modules
+- ``gst-validate``: replaced by ``gst-devtools``
+- ``linux-yocto``: removed 5.8 version recipes (5.4 / 5.10 still provided)
+- ``vulkan-demos``: replaced by ``vulkan-samples``
+
+
+.. _migration-3.3-common-license-only-versions:
+
+Single version common license file naming
+-----------------------------------------
+
+Some license files in ``meta/files/common-licenses`` have been renamed to match
+current SPDX naming conventions:
+
+- AGPL-3.0 -> AGPL-3.0-only
+- GPL-1.0 -> GPL-1.0-only
+- GPL-2.0 -> GPL-2.0-only
+- GPL-3.0 -> GPL-3.0-only
+- LGPL-2.0 -> LGPL-2.0-only
+- LGPL-2.1 -> LGPL-2.1-only
+- LGPL-3.0 -> LGPL-3.0-only
+
+Additionally, corresponding "-or-later" suffixed files have been added e.g.
+``GPL-2.0-or-later``.
+
+It is not required that you change :term:`LICENSE` values as there are mappings
+from the original names in place; however, in rare cases where you have a recipe
+which sets :term:`LIC_FILES_CHKSUM` to point to file(s) in
+``meta/files/common-licenses`` (which in any case is not recommended) you will
+need to update those.
+
+
+.. _migration-3.3-python3targetconfig:
+
+New ``python3targetconfig`` class
+---------------------------------
+
+A new :ref:`python3targetconfig <ref-classes-python3targetconfig>` class has been
+created for situations where you would previously have inherited the
+``python3native`` class but need access to target configuration data (such as
+correct installation directories). Recipes where this situation applies should
+be changed to inherit ``python3targetconfig`` instead of ``python3native``. This
+also adds a dependency on target ``python3``, so it should only be used where
+appropriate in order to avoid unnecessarily lengthening builds.
+
+Some example recipes where this change has been made: ``gpgme``, ``libcap-ng``,
+``python3-pycairo``.
+
+
+.. _migration-3.3-distutils-path:
+
+``setup.py`` path for python modules
+------------------------------------
+
+In a Python module, sometimes ``setup.py`` can be buried deep in the
+source tree. Previously this was handled in recipes by setting :term:`S` to
+point to the subdirectory within the source where ``setup.py`` is located.
+However with the recent :ref:`pseudo <overview-manual/concepts:fakeroot and pseudo>`
+changes, some Python modules make changes to files beneath ``${S}``, for
+example::
+
+ S = "${WORKDIR}/git/python/pythonmodule"
+
+then in ``setup.py`` it works with source code in a relative fashion, such
+as ``../../src``. This causes pseudo to abort as it isn't able to track
+the paths properly. This release introduces a new :term:`DISTUTILS_SETUP_PATH`
+variable so that recipes can specify it explicitly, for example::
+
+ S = "${WORKDIR}/git"
+ DISTUTILS_SETUP_PATH = "${S}/python/pythonmodule"
+
+Recipes that inherit from :ref:`distutils3 <ref-classes-distutils3>` (or
+:ref:`setuptools3 <ref-classes-setuptools3>` which itself inherits
+:ref:`distutils3 <ref-classes-distutils3>`) that also set :term:`S` to
+point to a Python module within a subdirectory in the aforementioned
+manner should be changed to set :term:`DISTUTILS_SETUP_PATH` instead.
+
+
+.. _migration-3.3-bitbake:
+
+BitBake changes
+---------------
+
+- BitBake is now configured to use a default ``umask`` of ``022`` for all tasks
+ (specified via a new :term:`BB_DEFAULT_UMASK` variable). If needed, ``umask`` can
+ still be set on a per-task basis via the ``umask`` varflag on the task
+ function, but that is unlikely to be necessary in most cases.
+
+- If a version specified in :term:`PREFERRED_VERSION` is not available this
+ will now trigger a warning instead of just a note, making such issues more
+ visible.
+
+
+.. _migration-3.3-packaging:
+
+Packaging changes
+-----------------
+
+The following packaging changes have been made; in all cases the main package
+still depends upon the split out packages so you should not need to do anything
+unless you want to take advantage of the improved granularity:
+
+- ``dbus``: ``-common`` and ``-tools`` split out
+- ``iproute2``: split ``ip`` binary to its own package
+- ``net-tools``: split ``mii-tool`` into its own package
+- ``procps``: split ``ps`` and ``sysctl`` into their own packages
+- ``rpm``: split build and extra functionality into separate packages
+- ``sudo``: split ``sudo`` binary into ``sudo-sudo`` and libs into ``sudo-lib``
+- ``systemtap``: examples, python scripts and runtime material split out
+- ``util-linux``: ``libuuid`` has been split out to its own
+ ``util-linux-libuuid`` recipe (and corresponding packages) to avoid circular
+ dependencies if ``libgcrypt`` support is enabled in ``util-linux``.
+ (``util-linux`` depends upon ``util-linux-libuuid``.)
+
+
+.. _migration-3.3-misc:
+
+Miscellaneous changes
+---------------------
+
+- The default poky :term:`DISTRO_VERSION` value now uses the core metadata's
+ git hash (i.e. :term:`METADATA_REVISION`) rather than the date (i.e.
+ :term:`DATE`) to reduce one small source of non-reproducibility. You can
+ of course specify your own :term:`DISTRO_VERSION` value as desired
+ (particularly if you create your own custom distro configuration).
+- ``adwaita-icon-theme`` version 3.34.3 has been added back, and is selected
+ as the default via :term:`PREFERRED_VERSION` in
+ ``meta/conf/distro/include/default-versions.inc`` due to newer versions
+ not working well with ``librsvg`` 2.40. ``librsvg`` is not practically
+ upgradeable at the moment as it has been ported to Rust, and Rust is not
+ (yet) in OE-Core, but this will change in a future release.
+- ``ffmpeg`` is now configured to disable GPL-licensed portions by default
+ to make it harder to accidentally violate the GPL. To explicitly enable GPL
+ licensed portions, add ``gpl`` to :term:`PACKAGECONFIG` for ``ffmpeg``
+ using a bbappend (or use ``PACKAGECONFIG_append_pn-ffmpeg = " gpl"`` in
+ your configuration.)
+- ``connman`` is now set to conflict with ``systemd-networkd`` as they
+ overlap functionally and may interfere with each other at runtime.
+- Canonical SPDX license names are now used in image license manifests in
+ order to avoid aliases of the same license from showing up together (e.g.
+ ``GPLv2`` and ``GPL-2.0``)
diff --git a/poky/documentation/ref-manual/migration.rst b/poky/documentation/ref-manual/migration.rst
index 8d64a7daa..a01d4ee14 100644
--- a/poky/documentation/ref-manual/migration.rst
+++ b/poky/documentation/ref-manual/migration.rst
@@ -28,4 +28,5 @@ notes for a given release.
migration-3.0
migration-3.1
migration-3.2
+ migration-3.3
diff --git a/poky/documentation/ref-manual/release-process.rst b/poky/documentation/ref-manual/release-process.rst
index ed5a09a55..93ab6ed08 100644
--- a/poky/documentation/ref-manual/release-process.rst
+++ b/poky/documentation/ref-manual/release-process.rst
@@ -15,9 +15,8 @@ Major and Minor Release Cadence
The Yocto Project delivers major releases (e.g. &DISTRO;) using a six
month cadence roughly timed each April and October of the year.
Following are examples of some major YP releases with their codenames
-also shown. See the "`Major Release
-Codenames <#major-release-codenames>`__" section for information on
-codenames used with major releases.
+also shown. See the ":ref:`ref-manual/release-process:major release codenames`"
+section for information on codenames used with major releases.
- 2.2 (Morty)
- 2.1 (Krogoth)
@@ -135,7 +134,7 @@ consists of the following pieces:
- :ref:`ptest <dev-manual/common-tasks:testing packages with ptest>`:
Runs tests against packages produced during the build for a given
- piece of software. The test allows the packages to be be run within a
+ piece of software. The test allows the packages to be run within a
target image.
- ``oe-selftest``: Tests combination BitBake invocations. These tests
diff --git a/poky/documentation/ref-manual/resources.rst b/poky/documentation/ref-manual/resources.rst
index 7554164d1..663f0d96d 100644
--- a/poky/documentation/ref-manual/resources.rst
+++ b/poky/documentation/ref-manual/resources.rst
@@ -91,7 +91,7 @@ For more Yocto Project-related mailing lists, see the
Internet Relay Chat (IRC)
=========================
-Two IRC channels on freenode are available for the Yocto Project and
+Two IRC channels on Freenode are available for the Yocto Project and
Poky discussions:
- ``#yocto``
@@ -189,7 +189,7 @@ Here is a list of resources you might find helpful:
implementation of Bugzilla for logging and tracking Yocto Project
defects.
-- *Internet Relay Chat (IRC):* Two IRC channels on freenode are
+- *Internet Relay Chat (IRC):* Two IRC channels on Freenode are
available for Yocto Project and Poky discussions: ``#yocto`` and
``#poky``, respectively.
diff --git a/poky/documentation/ref-manual/structure.rst b/poky/documentation/ref-manual/structure.rst
index ad3f4ab44..0f2093a8d 100644
--- a/poky/documentation/ref-manual/structure.rst
+++ b/poky/documentation/ref-manual/structure.rst
@@ -168,7 +168,7 @@ possible targets to build. Here is an example:
meta-toolchain
meta-ide-support
- You can also run generated qemu images with a command like 'runqemu qemux86-64'
+ You can also run generated QEMU images with a command like 'runqemu qemux86-64'
The default output of the ``oe-init-build-env`` script is from the
``conf-notes.txt`` file, which is found in the ``meta-poky`` directory
diff --git a/poky/documentation/ref-manual/system-requirements.rst b/poky/documentation/ref-manual/system-requirements.rst
index c8c1381cb..80378cedb 100644
--- a/poky/documentation/ref-manual/system-requirements.rst
+++ b/poky/documentation/ref-manual/system-requirements.rst
@@ -59,7 +59,7 @@ distributions:
- Debian GNU/Linux 10.x (Buster)
-- OpenSUSE Leap 15.1
+- openSUSE Leap 15.1
.. note::
@@ -256,11 +256,11 @@ Required Git, tar, Python and gcc Versions
In order to use the build system, your host development system must meet
the following version requirements for Git, tar, and Python:
-- Git 1.8.3.1 or greater
+- Git &MIN_GIT_VERSION; or greater
-- tar 1.28 or greater
+- tar &MIN_TAR_VERSION; or greater
-- Python 3.5.0 or greater
+- Python &MIN_PYTHON_VERSION; or greater
If your host development system does not meet all these requirements,
you can resolve this by installing a ``buildtools`` tarball that
@@ -270,11 +270,15 @@ a pre-built tarball or use BitBake to build the tarball.
In addition, your host development system must meet the following
version requirement for gcc:
-- gcc 5.0 or greater
+- gcc &MIN_GCC_VERSION; or greater
If your host development system does not meet this requirement, you can
resolve this by installing a ``buildtools-extended`` tarball that
-contains additional tools, the equivalent of ``buildtools-essential``.
+contains additional tools, the equivalent of the Debian/Ubuntu ``build-essential``
+package.
+
+In the sections that follow, three different methods will be described for
+installing the ``buildtools`` or ``buildtools-extended`` toolset.
Installing a Pre-Built ``buildtools`` Tarball with ``install-buildtools`` script
--------------------------------------------------------------------------------
@@ -294,7 +298,7 @@ installer and automatically installs the tools for you:
During execution, the buildtools tarball will be downloaded, the
checksum of the download will be verified, the installer will be run
- for you, and some basic checks will be run to to make sure the
+ for you, and some basic checks will be run to make sure the
installation is functional.
To avoid the need of ``sudo`` privileges, the ``install-buildtools``
@@ -331,8 +335,9 @@ installer and automatically installs the tools for you:
Downloading a Pre-Built ``buildtools`` Tarball
----------------------------------------------
-Downloading and running a pre-built buildtools installer is the easiest
-of the two methods by which you can get these tools:
+If you would prefer not to use the ``install-buildtools`` script, you can instead
+download and run a pre-built buildtools installer yourself with the following
+steps:
1. Locate and download the ``*.sh`` at &YOCTO_RELEASE_DL_URL;/buildtools/
diff --git a/poky/documentation/ref-manual/terms.rst b/poky/documentation/ref-manual/terms.rst
index bf4614887..32bb75b27 100644
--- a/poky/documentation/ref-manual/terms.rst
+++ b/poky/documentation/ref-manual/terms.rst
@@ -28,7 +28,7 @@ universal, the list includes them just in case:
to allow for matching recipe names. For example, suppose you have an
append file named as follows:
::
-
+
busybox_1.21.%.bbappend
That append file
@@ -76,7 +76,7 @@ universal, the list includes them just in case:
.. code-block:: shell
- $ cd $HOME/poky
+ $ cd poky
$ source oe-init-build-env
- Create the Build Directory inside your home directory and
@@ -84,19 +84,16 @@ universal, the list includes them just in case:
.. code-block:: shell
- $ cd $HOME
$ source poky/oe-init-build-env test-builds
- Provide a directory path and specifically name the Build
Directory. Any intermediate folders in the pathname must exist.
This next example creates a Build Directory named
- ``YP-&POKYVERSION;`` in your home directory within the existing
- directory ``mybuilds``:
+ ``YP-&POKYVERSION;`` within the existing directory ``mybuilds``:
.. code-block:: shell
- $ cd $HOME
- $ source $HOME/poky/oe-init-build-env $HOME/mybuilds/YP-&POKYVERSION;
+ $ source poky/oe-init-build-env mybuilds/YP-&POKYVERSION;
.. note::
diff --git a/poky/documentation/ref-manual/variables.rst b/poky/documentation/ref-manual/variables.rst
index 2cb37b6a2..74ac12bf9 100644
--- a/poky/documentation/ref-manual/variables.rst
+++ b/poky/documentation/ref-manual/variables.rst
@@ -270,6 +270,18 @@ system and gives an overview of their function and contents.
":ref:`Basic Syntax <bitbake:bitbake-user-manual/bitbake-user-manual-metadata:basic syntax>`" section in the BitBake
User Manual for more information.
+ :term:`AZ_SAS`
+ Azure Storage Shared Access Signature, when using the
+ :ref:`Azure Storage fetcher (az://) <bitbake:bitbake-user-manual/bitbake-user-manual-fetching:fetchers>`
+ This variable can be defined to be used by the fetcher to authenticate
+ and gain access to non-public artifacts.
+ ::
+
+ AZ_SAS = ""se=2021-01-01&sp=r&sv=2018-11-09&sr=c&skoid=<skoid>&sig=<signature>""
+
+ For more information see Microsoft's Azure Storage documentation at
+ https://docs.microsoft.com/en-us/azure/storage/common/storage-sas-overview
+
:term:`B`
The directory within the :term:`Build Directory` in
which the OpenEmbedded build system places generated objects during a
@@ -756,9 +768,7 @@ system and gives an overview of their function and contents.
.. note::
If you run BitBake from a directory outside of the
- Build Directory
- , you must be sure to set
- BBPATH
+ :term:`Build Directory`, you must be sure to set ``BBPATH``
to point to the Build Directory. Set the variable as you would any
environment variable and then run BitBake:
::
@@ -1553,6 +1563,12 @@ system and gives an overview of their function and contents.
DEBIANNAME_${PN} = "dbus-1"
+ :term:`DEBUGINFOD_URLS`
+ Points to the URL of the "debuginfod" server. Such that for every
+ debugging information lookup, the debuginfod client will query the
+ server and return the requested information. You set this variable
+ in your ``local.conf`` file.
+
:term:`DEBUG_BUILD`
Specifies to build packages with debugging information. This
influences the value of the ``SELECTED_OPTIMIZATION`` variable.
@@ -1962,6 +1978,19 @@ system and gives an overview of their function and contents.
is included in the default value of
:term:`OVERRIDES`.
+ :term:`DISTUTILS_SETUP_PATH`
+ When used by recipes that inherit the
+ :ref:`distutils3 <ref-classes-distutils3>` or
+ :ref:`setuptools3 <ref-classes-setuptools3>` class, this variable should
+ be used to specify the directory in which the ``setup.py`` file is
+ located if it is not at the root of the source tree (as specified by
+ :term:`S`). For example, in a recipe where the sources are fetched from
+ a Git repository and ``setup.py`` is in a ``python/pythonmodule``
+ subdirectory, you would have this::
+
+ S = "${WORKDIR}/git"
+ DISTUTILS_SETUP_PATH = "${S}/python/pythonmodule"
+
:term:`DL_DIR`
The central download directory used by the build process to store
downloads. By default, ``DL_DIR`` gets files suitable for mirroring
@@ -2218,7 +2247,7 @@ system and gives an overview of their function and contents.
.. note::
To add packages to the root filesystem, see the various
- \*:term:`RDEPENDS` and \*:term:`RRECOMMENDS` variables.
+ :term:`RDEPENDS` and :term:`RRECOMMENDS` variables.
:term:`EXTRANATIVEPATH`
A list of subdirectories of
@@ -2277,6 +2306,17 @@ system and gives an overview of their function and contents.
# usermod -s /bin/sh tester; \
# "
+ Additionally there is a special ``passwd-expire`` command that will
+ cause the password for a user to be expired and thus force changing it
+ on first login, for example::
+
+ EXTRA_USERS_PARAMS += " useradd myuser; passwd-expire myuser;"
+
+ .. note::
+
+ At present, ``passwd-expire`` may only work for remote logins when
+ using OpenSSH and not dropbear as an SSH server.
+
:term:`FEATURE_PACKAGES`
Defines one or more packages to include in an image when a specific
item is included in :term:`IMAGE_FEATURES`.
@@ -2553,6 +2593,16 @@ system and gives an overview of their function and contents.
:term:`FIT_HASH_ALG`
Specifies the hash algorithm used in creating the FIT Image. For e.g. sha256.
+ :term:`FIT_KERNEL_COMP_ALG`
+ Compression algorithm to use for the kernel image inside the FIT Image.
+ At present, the only supported values are "gzip" (default) or "none"
+ If you set this variable to anything other than "none" you may also need
+ to set :term:`FIT_KERNEL_COMP_ALG_EXTENSION`.
+
+ :term:`FIT_KERNEL_COMP_ALG_EXTENSION`
+ File extension corresponding to :term:`FIT_KERNEL_COMP_ALG`. The default
+ value is ".gz".
+
:term:`FIT_KEY_GENRSA_ARGS`
Arguments to openssl genrsa for generating RSA private key for signing
fitImage. The default value is "-F4". i.e. the public exponent 65537 to
@@ -2564,7 +2614,7 @@ system and gives an overview of their function and contents.
and new for generating new keys.
:term:`FIT_KEY_SIGN_PKCS`
- Format for public key ceritifcate used in signing fitImage.
+ Format for public key certificate used in signing fitImage.
The default value is "x509".
:term:`FIT_SIGN_ALG`
@@ -2973,7 +3023,7 @@ system and gives an overview of their function and contents.
:term:`IMAGE_CMD`
Specifies the command to create the image file for a specific image
- type, which corresponds to the value set set in
+ type, which corresponds to the value set in
:term:`IMAGE_FSTYPES`, (e.g. ``ext3``,
``btrfs``, and so forth). When setting this variable, you should use
an override for the associated type. Here is an example:
@@ -3431,7 +3481,7 @@ system and gives an overview of their function and contents.
It is possible to define a list of licenses that are allowed to be
used instead of the licenses that are excluded. To do this, define
- a variable ``COMPATIBLE_LICENSES`` with the names of the licences
+ a variable ``COMPATIBLE_LICENSES`` with the names of the licenses
that are allowed. Then define ``INCOMPATIBLE_LICENSE`` as:
::
@@ -3439,8 +3489,8 @@ system and gives an overview of their function and contents.
This will result in ``INCOMPATIBLE_LICENSE`` containing the names of
- all licences from :term:`AVAILABLE_LICENSES` except the ones specified
- in ``COMPATIBLE_LICENSES`` , thus only allowing the latter licences to
+ all licenses from :term:`AVAILABLE_LICENSES` except the ones specified
+ in ``COMPATIBLE_LICENSES``, thus only allowing the latter licenses to
be used.
:term:`INHERIT`
@@ -4643,6 +4693,14 @@ system and gives an overview of their function and contents.
:term:`MAINTAINER`
The email address of the distribution maintainer.
+ :term:`METADATA_BRANCH`
+ The branch currently checked out for the OpenEmbedded-Core layer (path
+ determined by :term:`COREBASE`).
+
+ :term:`METADATA_REVISION`
+ The revision currently checked out for the OpenEmbedded-Core layer (path
+ determined by :term:`COREBASE`).
+
:term:`MIRRORS`
Specifies additional paths from which the OpenEmbedded build system
gets source code. When the build system searches for source code, it
@@ -4993,7 +5051,7 @@ system and gives an overview of their function and contents.
${PN}-${PV}
:term:`PACKAGE_ADD_METADATA`
- This variable defines additional metdata to add to packages.
+ This variable defines additional metadata to add to packages.
You may find you need to inject additional metadata into packages.
This variable allows you to do that by setting the injected data as
@@ -5774,10 +5832,11 @@ system and gives an overview of their function and contents.
exclusive alternative providers.
:term:`PREFERRED_VERSION`
- If multiple versions of recipes exist, this variable determines which
- version is given preference. You must always suffix the variable with
- the :term:`PN` you want to select, and you should set the
- :term:`PV` accordingly for precedence.
+ If there are multiple versions of a recipe available, this variable
+ determines which version should be given preference. You must always
+ suffix the variable with the :term:`PN` you want to select (`python` in
+ the first example below), and you should specify the :term:`PV`
+ accordingly (`3.4.0` in the example).
The ``PREFERRED_VERSION`` variable supports limited wildcard use
through the "``%``" character. You can use the character to match any
@@ -5835,6 +5894,10 @@ system and gives an overview of their function and contents.
The ``\_forcevariable`` override is not handled specially. This override
only works because the default value of ``OVERRIDES`` includes "forcevariable".
+ If a recipe with the specified version is not available, a warning
+ message will be shown. See :term:`REQUIRED_VERSION` if you want this
+ to be an error instead.
+
:term:`PREMIRRORS`
Specifies additional paths from which the OpenEmbedded build system
gets source code. When the build system searches for source code, it
@@ -6001,9 +6064,7 @@ system and gives an overview of their function and contents.
:term:`PYTHON_ABI`
When used by recipes that inherit the
:ref:`distutils3 <ref-classes-distutils3>`,
- :ref:`setuptools3 <ref-classes-setuptools3>`,
- :ref:`distutils <ref-classes-distutils>`, or
- :ref:`setuptools <ref-classes-setuptools>` classes, denotes the
+ :ref:`setuptools3 <ref-classes-setuptools3>` classes, denotes the
Application Binary Interface (ABI) currently in use for Python. By
default, the ABI is "m". You do not have to set this variable as the
OpenEmbedded build system sets it for you.
@@ -6012,16 +6073,14 @@ system and gives an overview of their function and contents.
names used when installing the Python headers and libraries in
sysroot (e.g. ``.../python3.3m/...``).
- Recipes that inherit the ``distutils`` class during cross-builds also
+ Recipes that inherit the ``distutils3`` class during cross-builds also
use this variable to locate the headers and libraries of the
appropriate Python that the extension is targeting.
:term:`PYTHON_PN`
When used by recipes that inherit the
`distutils3 <ref-classes-distutils3>`,
- :ref:`setuptools3 <ref-classes-setuptools3>`,
- :ref:`distutils <ref-classes-distutils>`, or
- :ref:`setuptools <ref-classes-setuptools>` classes, specifies the
+ :ref:`setuptools3 <ref-classes-setuptools3>` classes, specifies the
major Python version being built. For Python 3.x, ``PYTHON_PN`` would
be "python3". You do not have to set this variable as the
OpenEmbedded build system automatically sets it for you.
@@ -6192,6 +6251,17 @@ system and gives an overview of their function and contents.
the recipe will be skipped, and if the build system attempts to build
the recipe then an error will be triggered.
+ :term:`REQUIRED_VERSION`
+ If there are multiple versions of a recipe available, this variable
+ determines which version should be given preference.
+ :term:`REQUIRED_VERSION` works in exactly the same manner as
+ :term:`PREFERRED_VERSION`, except that if the specified version is not
+ available then an error message is shown and the build fails
+ immediately.
+
+ If both :term:`REQUIRED_VERSION` and :term:`PREFERRED_VERSION` are set
+ for the same recipe, the :term:`REQUIRED_VERSION` value applies.
+
:term:`RM_WORK_EXCLUDE`
With ``rm_work`` enabled, this variable specifies a list of recipes
whose work directories should not be removed. See the
@@ -6465,6 +6535,11 @@ system and gives an overview of their function and contents.
The target architecture for the SDK. Typically, you do not directly
set this variable. Instead, use :term:`SDKMACHINE`.
+ :term:`SDK_CUSTOM_TEMPLATECONF`
+ When building the extensible SDK, if ``SDK_CUSTOM_TEMPLATECONF`` is set to
+ "1" and a ``conf/templateconf.conf`` file exists in the build directory
+ (:term:`TOPDIR`) then this will be copied into the SDK.
+
:term:`SDK_DEPLOY`
The directory set up and used by the
:ref:`populate_sdk_base <ref-classes-populate-sdk>` class to which
@@ -6740,16 +6815,16 @@ system and gives an overview of their function and contents.
Specifies the name of the SDK vendor.
:term:`SDK_VERSION`
- Specifies the version of the SDK. The distribution configuration file
- (e.g. ``/meta-poky/conf/distro/poky.conf``) defines the
+ Specifies the version of the SDK. The Poky distribution configuration file
+ (``/meta-poky/conf/distro/poky.conf``) sets the default
``SDK_VERSION`` as follows:
::
- SDK_VERSION = "${@d.getVar('DISTRO_VERSION').replace('snapshot-${DATE}','snapshot')}"
+ SDK_VERSION = "${@d.getVar('DISTRO_VERSION').replace('snapshot-${METADATA_REVISION}', 'snapshot')}"
For additional information, see the
:term:`DISTRO_VERSION` and
- :term:`DATE` variables.
+ :term:`METADATA_REVISION` variables.
:term:`SDKEXTPATH`
The default installation directory for the Extensible SDK. By
@@ -7074,7 +7149,7 @@ system and gives an overview of their function and contents.
- ``git://`` - Fetches files from a Git revision control
repository.
- - ``osc://`` - Fetches files from an OSC (OpenSUSE Build service)
+ - ``osc://`` - Fetches files from an OSC (openSUSE Build service)
revision control repository.
- ``repo://`` - Fetches files from a repo (Git) repository.
@@ -7103,6 +7178,8 @@ system and gives an overview of their function and contents.
- ``npm://`` - Fetches JavaScript modules from a registry.
+ - ``az://`` - Fetches files from an Azure Storage account.
+
Standard and recipe-specific options for ``SRC_URI`` exist. Here are
standard options:
@@ -8787,7 +8864,7 @@ system and gives an overview of their function and contents.
The ``WKS_FILE_DEPENDS`` variable is similar to the
:term:`DEPENDS` variable. When you use the variable in
your recipe that builds the Wic image, dependencies you list in the
- ``WIC_FILE_DEPENDS`` variable are added to the ``DEPENDS`` variable.
+ ``WKS_FILE_DEPENDS`` variable are added to the ``DEPENDS`` variable.
With the ``WKS_FILE_DEPENDS`` variable, you have the possibility to
specify a list of additional dependencies (e.g. native tools,
diff --git a/poky/documentation/releases.rst b/poky/documentation/releases.rst
index c4865253f..6a65b9fb3 100644
--- a/poky/documentation/releases.rst
+++ b/poky/documentation/releases.rst
@@ -11,6 +11,7 @@
- :yocto_docs:`3.2 Documentation </3.2>`
- :yocto_docs:`3.2.1 Documentation </3.2.1>`
- :yocto_docs:`3.2.2 Documentation </3.2.2>`
+- :yocto_docs:`3.2.3 Documentation </3.2.3>`
****************************
3.1 'dunfell' Release Series
@@ -36,6 +37,7 @@
- :yocto_docs:`3.0.1 Documentation </3.0.1>`
- :yocto_docs:`3.0.2 Documentation </3.0.2>`
- :yocto_docs:`3.0.3 Documentation </3.0.3>`
+- :yocto_docs:`3.0.4 Documentation </3.0.4>`
****************************
2.7 'warrior' Release Series
diff --git a/poky/documentation/sdk-manual/appendix-customizing.rst b/poky/documentation/sdk-manual/appendix-customizing.rst
index 97ade0801..8e7115046 100644
--- a/poky/documentation/sdk-manual/appendix-customizing.rst
+++ b/poky/documentation/sdk-manual/appendix-customizing.rst
@@ -101,17 +101,15 @@ adjustments:
- Generally, you want to have a shared state mirror set up so users of
the SDK can add additional items to the SDK after installation
- without needing to build the items from source. See the "`Providing
- Additional Installable Extensible SDK
- Content <#sdk-providing-additional-installable-extensible-sdk-content>`__"
+ without needing to build the items from source. See the
+ ":ref:`sdk-manual/appendix-customizing:providing additional installable extensible sdk content`"
section for information.
- If you want users of the SDK to be able to easily update the SDK, you
need to set the
:term:`SDK_UPDATE_URL`
- variable. For more information, see the "`Providing Updates to the
- Extensible SDK After
- Installation <#sdk-providing-updates-to-the-extensible-sdk-after-installation>`__"
+ variable. For more information, see the
+ ":ref:`sdk-manual/appendix-customizing:providing updates to the extensible sdk after installation`"
section.
- If you have adjusted the list of files and directories that appear in
@@ -139,9 +137,9 @@ Changing the Extensible SDK Installer Title
You can change the displayed title for the SDK installer by setting the
:term:`SDK_TITLE` variable and then
-rebuilding the the SDK installer. For information on how to build an SDK
-installer, see the "`Building an SDK
-Installer <#sdk-building-an-sdk-installer>`__" section.
+rebuilding the SDK installer. For information on how to build an SDK
+installer, see the ":ref:`sdk-manual/appendix-obtain:building an sdk installer`"
+section.
By default, this title is derived from
:term:`DISTRO_NAME` when it is
@@ -189,9 +187,8 @@ the installed SDKs to update the installed SDKs by using the
variable to point to the corresponding HTTP or HTTPS URL. Setting
this variable causes any SDK built to default to that URL and thus,
the user does not have to pass the URL to the ``devtool sdk-update``
- command as described in the "`Applying Updates to an Installed
- Extensible
- SDK <#sdk-applying-updates-to-an-installed-extensible-sdk>`__"
+ command as described in the
+ ":ref:`sdk-manual/extensible:applying updates to an installed extensible sdk`"
section.
3. Build the extensible SDK normally (i.e., use the
@@ -208,9 +205,9 @@ the installed SDKs to update the installed SDKs by using the
Completing the above steps allows users of the existing installed SDKs
to simply run ``devtool sdk-update`` to retrieve and apply the latest
-updates. See the "`Applying Updates to an Installed Extensible
-SDK <#sdk-applying-updates-to-an-installed-extensible-sdk>`__" section
-for further information.
+updates. See the
+":ref:`sdk-manual/extensible:applying updates to an installed extensible sdk`"
+section for further information.
Changing the Default SDK Installation Directory
===============================================
diff --git a/poky/documentation/sdk-manual/appendix-obtain.rst b/poky/documentation/sdk-manual/appendix-obtain.rst
index f158c244a..3c1dc52d1 100644
--- a/poky/documentation/sdk-manual/appendix-obtain.rst
+++ b/poky/documentation/sdk-manual/appendix-obtain.rst
@@ -38,7 +38,7 @@ Follow these steps to locate and hand-install the toolchain:
"sato" or "minimal"
arch is a string representing the target architecture:
- "aarch64", "armv5e", "core2-64", "coretexa8hf-neon", "i586", "mips32r2",
+ "aarch64", "armv5e", "core2-64", "cortexa8hf-neon", "i586", "mips32r2",
"mips64", or "ppc7400"
release is the version of Yocto Project.
@@ -68,10 +68,10 @@ Follow these steps to locate and hand-install the toolchain:
$ ~/Downloads/poky-glibc-x86_64-core-image-sato-core2-64-toolchain-ext-&DISTRO;.sh
During execution of the script, you choose the root location for the
- toolchain. See the "`Installed Standard SDK Directory
- Structure <#sdk-installed-standard-sdk-directory-structure>`__"
- section and the "`Installed Extensible SDK Directory
- Structure <#sdk-installed-extensible-sdk-directory-structure>`__"
+ toolchain. See the
+ ":ref:`sdk-manual/appendix-obtain:installed standard sdk directory structure`"
+ section and the
+ ":ref:`sdk-manual/appendix-obtain:installed extensible sdk directory structure`"
section for more information.
Building an SDK Installer
@@ -173,14 +173,14 @@ build the SDK installer. Follow these steps:
``tmp/deploy/sdk`` in the Build Directory. Following is an example:
::
- $ cd ~/poky/build/tmp/deploy/sdk
+ $ cd poky/build/tmp/deploy/sdk
$ ./poky-glibc-x86_64-core-image-sato-core2-64-toolchain-ext-&DISTRO;.sh
During execution of the script, you choose the root location for the
- toolchain. See the "`Installed Standard SDK Directory
- Structure <#sdk-installed-standard-sdk-directory-structure>`__"
- section and the "`Installed Extensible SDK Directory
- Structure <#sdk-installed-extensible-sdk-directory-structure>`__"
+ toolchain. See the
+ ":ref:`sdk-manual/appendix-obtain:installed standard sdk directory structure`"
+ section and the
+ ":ref:`sdk-manual/appendix-obtain:installed extensible sdk directory structure`"
section for more information.
Extracting the Root Filesystem
@@ -249,7 +249,7 @@ Follow these steps to extract the root filesystem:
":ref:`sdk-manual/appendix-obtain:locating pre-built sdk installers`" section:
::
- $ source ~/poky_sdk/environment-setup-core2-64-poky-linux
+ $ source poky_sdk/environment-setup-core2-64-poky-linux
3. *Extract the Root Filesystem:* Use the ``runqemu-extract-sdk``
command and provide the root filesystem image.
diff --git a/poky/documentation/sdk-manual/extensible.rst b/poky/documentation/sdk-manual/extensible.rst
index 5962e9460..baa432ef3 100644
--- a/poky/documentation/sdk-manual/extensible.rst
+++ b/poky/documentation/sdk-manual/extensible.rst
@@ -21,8 +21,9 @@ hardware, and ease integration into the rest of the
In addition to the functionality available through ``devtool``, you can
alternatively make use of the toolchain directly, for example from
-Makefile and Autotools. See the "`Using the SDK Toolchain
-Directly <#sdk-working-projects>`__" chapter for more information.
+Makefile and Autotools. See the
+":ref:`sdk-manual/working-projects:using the sdk toolchain directly`" chapter
+for more information.
Why use the Extensible SDK and What is in It?
=============================================
@@ -118,7 +119,7 @@ architecture. The example assumes the SDK installer is located in
$ ./Downloads/poky-glibc-x86_64-core-image-minimal-core2-64-toolchain-ext-2.5.sh
Poky (Yocto Project Reference Distro) Extensible SDK installer version 2.5
==========================================================================
- Enter target directory for SDK (default: ~/poky_sdk):
+ Enter target directory for SDK (default: poky_sdk):
You are about to install the SDK to "/home/scottrif/poky_sdk". Proceed [Y/n]? Y
Extracting SDK..............done
Setting it up...
@@ -1087,12 +1088,12 @@ links created within the source tree:
- ``sysroot-destdir/``: Contains a subset of files installed within
``do_install`` that have been put into the shared sysroot. For
- more information, see the "`Sharing Files Between
- Recipes <#sdk-sharing-files-between-recipes>`__" section.
+ more information, see the
+ ":ref:`dev-manual/common-tasks:sharing files between recipes`" section.
- ``packages-split/``: Contains subdirectories for each package
produced by the recipe. For more information, see the
- "`Packaging <#sdk-packaging>`__" section.
+ ":ref:`sdk-manual/extensible:packaging`" section.
You can use these links to get more information on what is happening at
each build step.
@@ -1271,11 +1272,9 @@ To update your installed SDK, use ``devtool`` as follows:
$ devtool sdk-update
The previous command assumes your SDK provider has set the
-default update URL for you through the
-:term:`SDK_UPDATE_URL`
-variable as described in the "`Providing Updates to the Extensible SDK
-After
-Installation <#sdk-providing-updates-to-the-extensible-sdk-after-installation>`__"
+default update URL for you through the :term:`SDK_UPDATE_URL`
+variable as described in the
+":ref:`sdk-manual/appendix-customizing:Providing Updates to the Extensible SDK After Installation`"
section. If the SDK provider has not set that default URL, you need to
specify it yourself in the command as follows: $ devtool sdk-update
path_to_update_directory
diff --git a/poky/documentation/sdk-manual/intro.rst b/poky/documentation/sdk-manual/intro.rst
index e4b9b05ba..d966efea7 100644
--- a/poky/documentation/sdk-manual/intro.rst
+++ b/poky/documentation/sdk-manual/intro.rst
@@ -176,8 +176,8 @@ image.
You just need to follow these general steps:
1. *Install the SDK for your target hardware:* For information on how to
- install the SDK, see the "`Installing the
- SDK <#sdk-installing-the-sdk>`__" section.
+ install the SDK, see the ":ref:`sdk-manual/using:installing the sdk`"
+ section.
2. *Download or Build the Target Image:* The Yocto Project supports
several target architectures and has many pre-built kernel images and
diff --git a/poky/documentation/sdk-manual/using.rst b/poky/documentation/sdk-manual/using.rst
index 29fb50465..62967f557 100644
--- a/poky/documentation/sdk-manual/using.rst
+++ b/poky/documentation/sdk-manual/using.rst
@@ -16,8 +16,9 @@ standard SDK.
" section.
You can use a standard SDK to work on Makefile and Autotools-based
-projects. See the "`Using the SDK Toolchain
-Directly <#sdk-working-projects>`__" chapter for more information.
+projects. See the
+":ref:`sdk-manual/working-projects:using the sdk toolchain directly`" chapter
+for more information.
Why use the Standard SDK and What is in It?
===========================================
@@ -31,9 +32,9 @@ the extensible SDK, which provides an internal build system and the
The installed Standard SDK consists of several files and directories.
Basically, it contains an SDK environment setup script, some
configuration files, and host and target root filesystems to support
-usage. You can see the directory structure in the "`Installed Standard
-SDK Directory
-Structure <#sdk-installed-standard-sdk-directory-structure>`__" section.
+usage. You can see the directory structure in the
+":ref:`sdk-manual/appendix-obtain:installed standard sdk directory structure`"
+section.
Installing the SDK
==================
@@ -120,9 +121,9 @@ architecture. The example assumes the SDK installer is located in
Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
$ . /opt/poky/&DISTRO;/environment-setup-i586-poky-linux
-Again, reference the "`Installed Standard SDK Directory
-Structure <#sdk-installed-standard-sdk-directory-structure>`__" section
-for more details on the resulting directory structure of the installed
+Again, reference the
+":ref:`sdk-manual/appendix-obtain:installed standard sdk directory structure`"
+section for more details on the resulting directory structure of the installed
SDK.
Running the SDK Environment Setup Script
@@ -147,7 +148,6 @@ script is for an IA-based target machine using i586 tuning:
When you run the
setup script, the same environment variables are defined as are when you
-run the setup script for an extensible SDK. See the "`Running the
-Extensible SDK Environment Setup
-Script <#sdk-running-the-extensible-sdk-environment-setup-script>`__"
+run the setup script for an extensible SDK. See the
+":ref:`sdk-manual/appendix-obtain:installed extensible sdk directory structure`"
section for more information.
diff --git a/poky/documentation/sdk-manual/working-projects.rst b/poky/documentation/sdk-manual/working-projects.rst
index bddf00a7d..f880cbe0d 100644
--- a/poky/documentation/sdk-manual/working-projects.rst
+++ b/poky/documentation/sdk-manual/working-projects.rst
@@ -104,10 +104,7 @@ project:
.. note::
- If you get errors from
- configure.ac
- , which
- autoreconf
+ If you get errors from ``configure.ac``, which ``autoreconf``
runs, that indicate missing files, you can use the "-i" option,
which ensures missing auxiliary files are copied to the build
host.
@@ -206,9 +203,7 @@ regarding variable behavior:
.. note::
Regardless of how you set your variables, if you use the "-e" option
- with
- make
- , the variables from the SDK setup script take precedence:
+ with ``make``, the variables from the SDK setup script take precedence:
::
$ make -e target
diff --git a/poky/documentation/sphinx-static/switchers.js b/poky/documentation/sphinx-static/switchers.js
index a7c348a7b..7a4edc9e7 100644
--- a/poky/documentation/sphinx-static/switchers.js
+++ b/poky/documentation/sphinx-static/switchers.js
@@ -3,7 +3,7 @@
var all_versions = {
'dev': 'dev (3.3)',
- '3.2.2': '3.2.2',
+ '3.2.3': '3.2.3',
'3.1.6': '3.1.6',
'3.0.4': '3.0.4',
'2.7.4': '2.7.4',
diff --git a/poky/documentation/test-manual/intro.rst b/poky/documentation/test-manual/intro.rst
index 81c24a8c3..101d28366 100644
--- a/poky/documentation/test-manual/intro.rst
+++ b/poky/documentation/test-manual/intro.rst
@@ -26,7 +26,7 @@ engineers:
- *yocto-autobuilder2:* This
:yocto_git:`README.md </yocto-autobuilder2/tree/README.md>`
- is the main README which detials how to set up the Yocto Project
+ is the main README which details how to set up the Yocto Project
Autobuilder. The ``yocto-autobuilder2`` repository represents the
Yocto Project's console UI plugin to Buildbot and the configuration
necessary to configure Buildbot to perform the testing the project
@@ -88,7 +88,7 @@ Yocto Project Tests - Types of Testing Overview
===============================================
The Autobuilder tests different elements of the project by using
-thefollowing types of tests:
+the following types of tests:
- *Build Testing:* Tests whether specific configurations build by
varying :term:`MACHINE`,
@@ -124,7 +124,7 @@ thefollowing types of tests:
The tests utilize the ``testsdkext`` class and the ``do_testsdkext`` task.
- *Feature Testing:* Various scenario-based tests are run through the
- :ref:`OpenEmbedded Self test (oe-selftest) <ref-manual/release-process:Testing and Quality Assurance>`. We test oe-selftest on each of the main distrubutions
+ :ref:`OpenEmbedded Self test (oe-selftest) <ref-manual/release-process:Testing and Quality Assurance>`. We test oe-selftest on each of the main distributions
we support.
- *Image Testing:* Image tests initiated through the following command::
@@ -474,7 +474,7 @@ correctly. The test would only run if python3 is installed in the SDK.
----------------------
The performance tests usually measure how long operations take and the
-resource utilisation as that happens. An example from
+resource utilization as that happens. An example from
``meta/lib/oeqa/buildperf/test_basic.py`` contains the following::
class Test3(BuildPerfTestCase):
@@ -524,5 +524,5 @@ This is particularly true for oe-selftests since these can run in
parallel and changing metadata leads to changing checksums, which
confuses BitBake while running in parallel. If this is necessary, copy
layers to a temporary location and modify them. Some tests need to
-change metadata, such as the devtool tests. To prevent the metadate from
+change metadata, such as the devtool tests. To protect the metadata from
changes, set up temporary copies of that data first.
diff --git a/poky/documentation/test-manual/test-process.rst b/poky/documentation/test-manual/test-process.rst
index 8a5e29d92..4c3b32bfe 100644
--- a/poky/documentation/test-manual/test-process.rst
+++ b/poky/documentation/test-manual/test-process.rst
@@ -59,13 +59,13 @@ Release Builds
The project typically has two major releases a year with a six month
cadence in April and October. Between these there would be a number of
-milestone releases (usually four) with the final one being stablization
+milestone releases (usually four) with the final one being stabilization
only along with point releases of our stable branches.
The build and release process for these project releases is similar to
-that in `Day to Day Development <#test-daily-devel>`__, in that the
+that in :ref:`test-manual/test-process:day to day development`, in that the
a-full target of the Autobuilder is used but in addition the form is
-configured to generate and publish artefacts and the milestone number,
+configured to generate and publish artifacts and the milestone number,
version, release candidate number and other information is entered. The
box to "generate an email to QA"is also checked.
diff --git a/poky/documentation/test-manual/understand-autobuilder.rst b/poky/documentation/test-manual/understand-autobuilder.rst
index 199cc97a8..c158d9ce4 100644
--- a/poky/documentation/test-manual/understand-autobuilder.rst
+++ b/poky/documentation/test-manual/understand-autobuilder.rst
@@ -9,14 +9,14 @@ Execution Flow within the Autobuilder
The "a-full" and "a-quick" targets are the usual entry points into the
Autobuilder and it makes sense to follow the process through the system
-starting there. This is best visualised from the Autobuilder Console
+starting there. This is best visualized from the Autobuilder Console
view (:yocto_ab:`/typhoon/#/console`).
Each item along the top of that view represents some "target build" and
these targets are all run in parallel. The 'full' build will trigger the
majority of them, the "quick" build will trigger some subset of them.
The Autobuilder effectively runs whichever configuration is defined for
-each of those targets on a seperate buildbot worker. To understand the
+each of those targets on a separate buildbot worker. To understand the
configuration, you need to look at the entry on ``config.json`` file
within the ``yocto-autobuilder-helper`` repository. The targets are
defined in the ‘overrides' section, a quick example could be qemux86-64
@@ -64,10 +64,10 @@ While not every detail of this is covered here, you can see how the
template mechanism allows quite complex configurations to be built up
yet allows duplication and repetition to be kept to a minimum.
-The different build targets are designed to allow for parallelisation,
+The different build targets are designed to allow for parallelization,
so different machines are usually built in parallel, operations using
the same machine and metadata are built sequentially, with the aim of
-trying to optimise build efficiency as much as possible.
+trying to optimize build efficiency as much as possible.
The ``config.json`` file is processed by the scripts in the Helper
repository in the ``scripts`` directory. The following section details
@@ -111,7 +111,7 @@ roughly consist of:
:ref:`test-manual/understand-autobuilder:Autobuilder Clone Cache`.
This step has two possible modes of operation. If the build is part
- of a parent build, its possible that all the repositories needed may
+ of a parent build, it's possible that all the repositories needed may
already be available, ready in a pre-prepared directory. An "a-quick"
or "a-full" build would prepare this before starting the other
sub-target builds. This is done for two reasons:
@@ -130,7 +130,7 @@ roughly consist of:
#. *Call scripts/run-config*
- This is another call into the Helper scripts where its expected that
+ This is another call into the Helper scripts where it's expected that
the main functionality of this target will be executed.
Autobuilder Technology
@@ -164,7 +164,7 @@ Autobuilder Worker Janitor
This is a process running on each Worker that performs two basic
operations, including background file deletion at IO idle (see :ref:`test-manual/understand-autobuilder:Autobuilder Target Execution Overview`: Run clobberdir) and
-maintainenance of a cache of cloned repositories to improve the speed
+maintenance of a cache of cloned repositories to improve the speed
the system can checkout repositories.
Shared DL_DIR
@@ -250,7 +250,7 @@ Deploying Yocto Autobuilder
===========================
The most up to date information about how to setup and deploy your own
-Autbuilder can be found in README.md in the ``yocto-autobuilder2``
+Autobuilder can be found in README.md in the ``yocto-autobuilder2``
repository.
We hope that people can use the ``yocto-autobuilder2`` code directly but
diff --git a/poky/documentation/toaster-manual/reference.rst b/poky/documentation/toaster-manual/reference.rst
index d2ab14c8e..3d4efe92d 100644
--- a/poky/documentation/toaster-manual/reference.rst
+++ b/poky/documentation/toaster-manual/reference.rst
@@ -208,7 +208,7 @@ Customizing Pre-Set Data
------------------------
The pre-set data for Toaster is easily customizable. You can create the
-``orm/fixtures/custom.xml`` file to customize the values that go into to
+``orm/fixtures/custom.xml`` file to customize the values that go into
the database. Customization is additive, and can either extend or
completely replace the existing values.
@@ -554,7 +554,7 @@ example that assumes default repository and build directory names:
.. code-block:: shell
- $ cd ~/poky/build
+ $ cd poky/build
$ python ../bitbake/lib/toaster/manage.py buildslist
If your Toaster database had only one build, the above
diff --git a/poky/documentation/toaster-manual/setup-and-use.rst b/poky/documentation/toaster-manual/setup-and-use.rst
index ded771e79..8f0ec9449 100644
--- a/poky/documentation/toaster-manual/setup-and-use.rst
+++ b/poky/documentation/toaster-manual/setup-and-use.rst
@@ -155,7 +155,7 @@ superuser by following these steps:
is the :term:`Build Directory`,
invoke the ``createsuperuser`` command from ``manage.py``::
- $ cd ~/poky/build
+ $ cd poky/build
$ ../bitbake/lib/toaster/manage.py createsuperuser
#. Django prompts you for the username, which you need to provide.
@@ -362,7 +362,7 @@ Perform the following steps to install Toaster:
/etc/httpd/conf.d/toaster.conf
- If you are using OpenSUSE, put it here::
+ If you are using openSUSE, put it here::
/etc/apache2/conf.d/toaster.conf
@@ -380,13 +380,13 @@ Perform the following steps to install Toaster:
Require all granted
</IfModule>
</Directory>
-
+
<Directory /var/www/toaster/poky/bitbake/lib/toaster/toastermain>
<Files "wsgi.py">
Require all granted
</Files>
</Directory>
-
+
WSGIDaemonProcess toaster_wsgi python-path=/var/www/toaster/poky/bitbake/lib/toaster:/var/www/toaster/.local/lib/python3.4/site-packages
WSGIScriptAlias / "/var/www/toaster/poky/bitbake/lib/toaster/toastermain/wsgi.py"
<Location />
@@ -402,7 +402,7 @@ Perform the following steps to install Toaster:
$ chmod +x bitbake/lib/toaster/toastermain/wsgi.py
Finally, restart Apache to make sure all new configuration is loaded. For Ubuntu,
- Debian, and OpenSUSE use::
+ Debian, and openSUSE use::
$ sudo service apache2 restart
@@ -417,13 +417,13 @@ Perform the following steps to install Toaster:
[Unit]
Description=Toaster runbuilds
-
+
[Service]
Type=forking User=toaster
ExecStart=/usr/bin/screen -d -m -S runbuilds /var/www/toaster/poky/bitbake/lib/toaster/runbuilds-service.sh start
ExecStop=/usr/bin/screen -S runbuilds -X quit
WorkingDirectory=/var/www/toaster/poky
-
+
[Install]
WantedBy=multi-user.target
@@ -433,11 +433,11 @@ Perform the following steps to install Toaster:
up executable permissions::
#!/bin/bash
-
+
#export http_proxy=http://proxy.host.com:8080
#export https_proxy=http://proxy.host.com:8080
#export GIT_PROXY_COMMAND=$HOME/bin/gitproxy
- cd ~/poky/
+ cd poky/
source ./oe-init-build-env build
source ../bitbake/bin/toaster $1 noweb
[ "$1" == 'start' ] && /bin/bash
diff --git a/poky/meta-poky/conf/distro/include/poky-world-exclude.inc b/poky/meta-poky/conf/distro/include/poky-world-exclude.inc
index 1a2dea585..f3ac59c51 100644
--- a/poky/meta-poky/conf/distro/include/poky-world-exclude.inc
+++ b/poky/meta-poky/conf/distro/include/poky-world-exclude.inc
@@ -1,4 +1,4 @@
#
-# Things we exlude fromw world testing within the reference distro
+# Things we exlude from world testing within the reference distro
#
diff --git a/poky/meta-poky/conf/distro/poky-tiny.conf b/poky/meta-poky/conf/distro/poky-tiny.conf
index 5a867b1de..e4ff9752e 100644
--- a/poky/meta-poky/conf/distro/poky-tiny.conf
+++ b/poky/meta-poky/conf/distro/poky-tiny.conf
@@ -26,7 +26,7 @@
# [ ] Drop ldconfig from the installation
# [ ] Modify the runqemu scripts to work with ext2 parameter:
# runqemu qemux86 qemuparams="-nographic" bootparams="console=ttyS0,115200 root=0800"
-# [ ] Modify busybox to allow for DISTRO_FEATURES-like confiruration
+# [ ] Modify busybox to allow for DISTRO_FEATURES-like configuration
require conf/distro/poky.conf
require conf/distro/include/gcsections.inc
diff --git a/poky/meta-poky/conf/distro/poky.conf b/poky/meta-poky/conf/distro/poky.conf
index 623f39da6..c098b3026 100644
--- a/poky/meta-poky/conf/distro/poky.conf
+++ b/poky/meta-poky/conf/distro/poky.conf
@@ -1,7 +1,7 @@
DISTRO = "poky"
DISTRO_NAME = "Poky (Yocto Project Reference Distro)"
-DISTRO_VERSION = "3.2+snapshot-${METADATA_REVISION}"
-DISTRO_CODENAME = "master"
+DISTRO_VERSION = "3.3"
+DISTRO_CODENAME = "hardknott"
SDK_VENDOR = "-pokysdk"
SDK_VERSION = "${@d.getVar('DISTRO_VERSION').replace('snapshot-${METADATA_REVISION}', 'snapshot')}"
SDK_VERSION[vardepvalue] = "${SDK_VERSION}"
@@ -25,8 +25,8 @@ PREFERRED_VERSION_linux-yocto-rt ?= "5.10%"
SDK_NAME = "${DISTRO}-${TCLIBC}-${SDKMACHINE}-${IMAGE_BASENAME}-${TUNE_PKGARCH}-${MACHINE}"
SDKPATH = "/opt/${DISTRO}/${SDK_VERSION}"
-DISTRO_EXTRA_RDEPENDS += " ${POKY_DEFAULT_EXTRA_RDEPENDS}"
-DISTRO_EXTRA_RRECOMMENDS += " ${POKY_DEFAULT_EXTRA_RRECOMMENDS}"
+DISTRO_EXTRA_RDEPENDS += "${POKY_DEFAULT_EXTRA_RDEPENDS}"
+DISTRO_EXTRA_RRECOMMENDS += "${POKY_DEFAULT_EXTRA_RRECOMMENDS}"
TCLIBCAPPEND = ""
@@ -41,9 +41,8 @@ p4://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \
svn://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n"
SANITY_TESTED_DISTROS ?= " \
- poky-3.0 \n \
- poky-3.1 \n \
poky-3.2 \n \
+ poky-3.3 \n \
ubuntu-16.04 \n \
ubuntu-18.04 \n \
ubuntu-20.04 \n \
diff --git a/poky/meta-poky/conf/layer.conf b/poky/meta-poky/conf/layer.conf
index 7241af02e..22f7fe27c 100644
--- a/poky/meta-poky/conf/layer.conf
+++ b/poky/meta-poky/conf/layer.conf
@@ -9,7 +9,7 @@ BBFILE_COLLECTIONS += "yocto"
BBFILE_PATTERN_yocto = "^${LAYERDIR}/"
BBFILE_PRIORITY_yocto = "5"
-LAYERSERIES_COMPAT_yocto = "gatesgarth"
+LAYERSERIES_COMPAT_yocto = "hardknott"
# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
diff --git a/poky/meta-poky/conf/local.conf.sample b/poky/meta-poky/conf/local.conf.sample
index 096359ee8..a94b613ba 100644
--- a/poky/meta-poky/conf/local.conf.sample
+++ b/poky/meta-poky/conf/local.conf.sample
@@ -206,7 +206,7 @@ BB_DISKMON_DIRS ??= "\
#
# Shared-state files from other locations
#
-# As mentioned above, shared state files are prebuilt cache data objects which can
+# As mentioned above, shared state files are prebuilt cache data objects which can be
# used to accelerate build time. This variable can be used to configure the system
# to search other mirror locations for these objects before it builds the data itself.
#
diff --git a/poky/meta-poky/conf/local.conf.sample.extended b/poky/meta-poky/conf/local.conf.sample.extended
index ba1d0973b..c241caa86 100644
--- a/poky/meta-poky/conf/local.conf.sample.extended
+++ b/poky/meta-poky/conf/local.conf.sample.extended
@@ -390,3 +390,8 @@ DISTRO_FEATURES_remove = "x11"
#
#require conf/distro/include/lto.inc
#DISTRO_FEATURES_append = " lto"
+
+#
+# Set PS1 for SDK
+#
+#SDK_PS1 ?= "${SDK_NAME}${SDK_VENDOR}:\$ "
diff --git a/poky/meta-selftest/conf/layer.conf b/poky/meta-selftest/conf/layer.conf
index 37570aa83..5604f8269 100644
--- a/poky/meta-selftest/conf/layer.conf
+++ b/poky/meta-selftest/conf/layer.conf
@@ -9,4 +9,4 @@ BBFILE_COLLECTIONS += "selftest"
BBFILE_PATTERN_selftest = "^${LAYERDIR}/"
BBFILE_PRIORITY_selftest = "5"
-LAYERSERIES_COMPAT_selftest = "gatesgarth"
+LAYERSERIES_COMPAT_selftest = "hardknott"
diff --git a/poky/meta-selftest/recipes-test/aspell/aspell_0.0.0.1.bb b/poky/meta-selftest/recipes-test/aspell/aspell_0.0.0.1.bb
index 9f905a519..dcf6c8ba6 100644
--- a/poky/meta-selftest/recipes-test/aspell/aspell_0.0.0.1.bb
+++ b/poky/meta-selftest/recipes-test/aspell/aspell_0.0.0.1.bb
@@ -4,6 +4,7 @@
SUMMARY = "GNU Aspell spell-checker"
SECTION = "console/utils"
+HOMEPAGE = "https://ftp.gnu.org/gnu/aspell/"
LICENSE = "LGPLv2 | LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
diff --git a/poky/meta-selftest/recipes-test/git-submodule-test/git-submodule-test.bb b/poky/meta-selftest/recipes-test/git-submodule-test/git-submodule-test.bb
index 08089b418..9429564df 100644
--- a/poky/meta-selftest/recipes-test/git-submodule-test/git-submodule-test.bb
+++ b/poky/meta-selftest/recipes-test/git-submodule-test/git-submodule-test.bb
@@ -1,4 +1,5 @@
SUMMARY = "Test recipe for fetching git submodules"
+HOMEPAGE = "http://git.yoctoproject.org/cgit/cgit.cgi/git-submodule-test/"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
diff --git a/poky/meta-selftest/recipes-test/poison/poison.bb b/poky/meta-selftest/recipes-test/poison/poison.bb
new file mode 100644
index 000000000..7ace901cc
--- /dev/null
+++ b/poky/meta-selftest/recipes-test/poison/poison.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Sysroot poisoning test"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+
+LICENSE = "MIT"
+
+inherit nopackages
+
+# This test confirms that compiling code that searches /usr/include for headers
+# will result in compiler errors. This recipe should will fail to build and
+# oe-selftest has a test that verifies that.
+do_compile() {
+ touch empty.c
+ ${CPP} ${CFLAGS} -I/usr/include empty.c
+}
+
+EXCLUDE_FROM_WORLD = "1"
diff --git a/poky/meta-skeleton/conf/layer.conf b/poky/meta-skeleton/conf/layer.conf
index cea5c74f8..ba301742e 100644
--- a/poky/meta-skeleton/conf/layer.conf
+++ b/poky/meta-skeleton/conf/layer.conf
@@ -14,4 +14,4 @@ LAYERVERSION_skeleton = "1"
LAYERDEPENDS_skeleton = "core"
-LAYERSERIES_COMPAT_skeleton = "gatesgarth"
+LAYERSERIES_COMPAT_skeleton = "hardknott"
diff --git a/poky/meta-skeleton/recipes-baremetal/baremetal-examples/baremetal-helloworld_git.bb b/poky/meta-skeleton/recipes-baremetal/baremetal-examples/baremetal-helloworld_git.bb
index 946a12d0a..ee945c1ff 100644
--- a/poky/meta-skeleton/recipes-baremetal/baremetal-examples/baremetal-helloworld_git.bb
+++ b/poky/meta-skeleton/recipes-baremetal/baremetal-examples/baremetal-helloworld_git.bb
@@ -1,5 +1,6 @@
SUMMARY = "Baremetal examples to work with the several QEMU architectures supported on OpenEmbedded"
HOMEPAGE = "https://github.com/aehs29/baremetal-helloqemu"
+DESCRIPTION = "These are introductory examples to showcase the use of QEMU to run baremetal applications."
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=39346640a23c701e4f459e05f56f4449"
diff --git a/poky/meta-skeleton/recipes-kernel/hello-mod/hello-mod_0.1.bb b/poky/meta-skeleton/recipes-kernel/hello-mod/hello-mod_0.1.bb
index 3d3344650..bc9acccd5 100644
--- a/poky/meta-skeleton/recipes-kernel/hello-mod/hello-mod_0.1.bb
+++ b/poky/meta-skeleton/recipes-kernel/hello-mod/hello-mod_0.1.bb
@@ -1,4 +1,5 @@
SUMMARY = "Example of how to build an external Linux kernel module"
+DESCRIPTION = "${SUMMARY}"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e"
diff --git a/poky/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb b/poky/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
index 6194d4f8d..d53f9c7a4 100644
--- a/poky/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
+++ b/poky/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
@@ -1,6 +1,6 @@
+SUMMARY = "An example kernel recipe that uses the linux-yocto and oe-core"
# linux-yocto-custom.bb:
#
-# An example kernel recipe that uses the linux-yocto and oe-core
# kernel classes to apply a subset of yocto kernel management to git
# managed kernel repositories.
#
diff --git a/poky/meta-skeleton/recipes-multilib/images/core-image-multilib-example.bb b/poky/meta-skeleton/recipes-multilib/images/core-image-multilib-example.bb
index f13186f93..e7d50aefd 100644
--- a/poky/meta-skeleton/recipes-multilib/images/core-image-multilib-example.bb
+++ b/poky/meta-skeleton/recipes-multilib/images/core-image-multilib-example.bb
@@ -1,5 +1,4 @@
-#
-# An example of a multilib image
+SUMMARY = "An example of a multilib image"
#
# This example includes a lib32 version of bash into an otherwise standard
# sato image. It assumes a "lib32" multilib has been enabled in the user's
diff --git a/poky/meta-skeleton/recipes-skeleton/service/service_0.1.bb b/poky/meta-skeleton/recipes-skeleton/service/service_0.1.bb
index 6416618dc..669d173ad 100644
--- a/poky/meta-skeleton/recipes-skeleton/service/service_0.1.bb
+++ b/poky/meta-skeleton/recipes-skeleton/service/service_0.1.bb
@@ -1,5 +1,6 @@
SUMMARY = "The canonical example of init scripts"
SECTION = "base"
+DESCRIPTION = "This recipe is a canonical example of init scripts"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://${WORKDIR}/COPYRIGHT;md5=349c872e0066155e1818b786938876a4"
diff --git a/poky/meta-yocto-bsp/conf/layer.conf b/poky/meta-yocto-bsp/conf/layer.conf
index bf0c1bfec..caf3e4bcb 100644
--- a/poky/meta-yocto-bsp/conf/layer.conf
+++ b/poky/meta-yocto-bsp/conf/layer.conf
@@ -9,4 +9,4 @@ BBFILE_COLLECTIONS += "yoctobsp"
BBFILE_PATTERN_yoctobsp = "^${LAYERDIR}/"
BBFILE_PRIORITY_yoctobsp = "5"
LAYERVERSION_yoctobsp = "4"
-LAYERSERIES_COMPAT_yoctobsp = "gatesgarth"
+LAYERSERIES_COMPAT_yoctobsp = "hardknott"
diff --git a/poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf b/poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf
index f8368ebd0..04cbd3b5b 100644
--- a/poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf
+++ b/poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf
@@ -9,7 +9,7 @@ XSERVER ?= "xserver-xorg \
MACHINE_EXTRA_RRECOMMENDS = "kernel-modules kernel-devicetree"
-EXTRA_IMAGEDEPENDS += "u-boot"
+EXTRA_IMAGEDEPENDS += "virtual/bootloader"
DEFAULTTUNE ?= "cortexa8hf-neon"
include conf/machine/include/tune-cortexa8.inc
@@ -18,7 +18,7 @@ IMAGE_FSTYPES += "tar.bz2 jffs2 wic wic.bmap"
EXTRA_IMAGECMD_jffs2 = "-lnp "
WKS_FILE ?= "beaglebone-yocto.wks"
IMAGE_INSTALL_append = " kernel-devicetree kernel-image-zimage"
-do_image_wic[depends] += "mtools-native:do_populate_sysroot dosfstools-native:do_populate_sysroot u-boot:do_deploy"
+do_image_wic[depends] += "mtools-native:do_populate_sysroot dosfstools-native:do_populate_sysroot virtual/bootloader:do_deploy"
SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyO0 115200;ttyAMA0"
SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
diff --git a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend
index 87e47352a..bc2b3bf57 100644
--- a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend
+++ b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend
@@ -7,17 +7,17 @@ KMACHINE_genericx86 ?= "common-pc"
KMACHINE_genericx86-64 ?= "common-pc-64"
KMACHINE_beaglebone-yocto ?= "beaglebone"
-SRCREV_machine_genericx86 ?= "cdca78778415b4b3bd64e8390ee8adf04bf7e17a"
-SRCREV_machine_genericx86-64 ?= "cdca78778415b4b3bd64e8390ee8adf04bf7e17a"
-SRCREV_machine_edgerouter ?= "2e1fb8f84f09ca768eb531f33a126a40bb90e791"
-SRCREV_machine_beaglebone-yocto ?= "cdca78778415b4b3bd64e8390ee8adf04bf7e17a"
+SRCREV_machine_genericx86 ?= "8c516ced69f41563404ada0bea315a55bcf1df6f"
+SRCREV_machine_genericx86-64 ?= "8c516ced69f41563404ada0bea315a55bcf1df6f"
+SRCREV_machine_edgerouter ?= "965ab3ab746ae8a1158617b6302d9c218ffbbb66"
+SRCREV_machine_beaglebone-yocto ?= "8c516ced69f41563404ada0bea315a55bcf1df6f"
COMPATIBLE_MACHINE_genericx86 = "genericx86"
COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
COMPATIBLE_MACHINE_edgerouter = "edgerouter"
COMPATIBLE_MACHINE_beaglebone-yocto = "beaglebone-yocto"
-LINUX_VERSION_genericx86 = "5.10.12"
-LINUX_VERSION_genericx86-64 = "5.10.12"
-LINUX_VERSION_edgerouter = "5.10.12"
-LINUX_VERSION_beaglebone-yocto = "5.10.12"
+LINUX_VERSION_genericx86 = "5.10.21"
+LINUX_VERSION_genericx86-64 = "5.10.21"
+LINUX_VERSION_edgerouter = "5.10.21"
+LINUX_VERSION_beaglebone-yocto = "5.10.21"
diff --git a/poky/meta-yocto-bsp/wic/beaglebone-yocto.wks b/poky/meta-yocto-bsp/wic/beaglebone-yocto.wks
index 701ae0b3d..7a28fb23d 100644
--- a/poky/meta-yocto-bsp/wic/beaglebone-yocto.wks
+++ b/poky/meta-yocto-bsp/wic/beaglebone-yocto.wks
@@ -2,6 +2,6 @@
# long-description: Creates a partitioned SD card image for Beaglebone.
# Boot files are located in the first vfat partition.
-part /boot --source bootimg-partition --ondisk mmcblk0 --fstype=vfat --label boot --active --align 4 --size 16 --sourceparams="loader=u-boot" --use-uuid
+part /boot --source bootimg-partition --ondisk mmcblk0 --fstype=vfat --label boot --active --align 4 --fixed-size 32 --sourceparams="loader=u-boot" --use-uuid
part / --source rootfs --ondisk mmcblk0 --fstype=ext4 --label root --align 4 --use-uuid
bootloader --append="console=ttyS0,115200"
diff --git a/poky/meta/classes/base.bbclass b/poky/meta/classes/base.bbclass
index b4160402f..42fb84c4d 100644
--- a/poky/meta/classes/base.bbclass
+++ b/poky/meta/classes/base.bbclass
@@ -593,6 +593,8 @@ python () {
srcuri = d.getVar('SRC_URI')
for uri_string in srcuri.split():
uri = bb.fetch.URI(uri_string)
+ # Also check downloadfilename as the URL path might not be useful for sniffing
+ path = uri.params.get("downloadfilename", uri.path)
# HTTP/FTP use the wget fetcher
if uri.scheme in ("http", "https", "ftp"):
@@ -626,27 +628,27 @@ python () {
d.appendVarFlag('do_fetch', 'depends', ' nodejs-native:do_populate_sysroot')
# *.lz4 should DEPEND on lz4-native for unpacking
- if uri.path.endswith('.lz4'):
+ if path.endswith('.lz4'):
d.appendVarFlag('do_unpack', 'depends', ' lz4-native:do_populate_sysroot')
# *.lz should DEPEND on lzip-native for unpacking
- elif uri.path.endswith('.lz'):
+ elif path.endswith('.lz'):
d.appendVarFlag('do_unpack', 'depends', ' lzip-native:do_populate_sysroot')
# *.xz should DEPEND on xz-native for unpacking
- elif uri.path.endswith('.xz') or uri.path.endswith('.txz'):
+ elif path.endswith('.xz') or path.endswith('.txz'):
d.appendVarFlag('do_unpack', 'depends', ' xz-native:do_populate_sysroot')
# .zip should DEPEND on unzip-native for unpacking
- elif uri.path.endswith('.zip') or uri.path.endswith('.jar'):
+ elif path.endswith('.zip') or path.endswith('.jar'):
d.appendVarFlag('do_unpack', 'depends', ' unzip-native:do_populate_sysroot')
# Some rpm files may be compressed internally using xz (for example, rpms from Fedora)
- elif uri.path.endswith('.rpm'):
+ elif path.endswith('.rpm'):
d.appendVarFlag('do_unpack', 'depends', ' xz-native:do_populate_sysroot')
# *.deb should DEPEND on xz-native for unpacking
- elif uri.path.endswith('.deb'):
+ elif path.endswith('.deb'):
d.appendVarFlag('do_unpack', 'depends', ' xz-native:do_populate_sysroot')
if needsrcrev:
diff --git a/poky/meta/classes/buildhistory.bbclass b/poky/meta/classes/buildhistory.bbclass
index 117a44eaf..49af61c9c 100644
--- a/poky/meta/classes/buildhistory.bbclass
+++ b/poky/meta/classes/buildhistory.bbclass
@@ -678,13 +678,16 @@ IMAGE_POSTPROCESS_COMMAND[vardepsexclude] += "buildhistory_get_imageinfo"
POPULATE_SDK_POST_TARGET_COMMAND_append = " buildhistory_list_installed_sdk_target;"
POPULATE_SDK_POST_TARGET_COMMAND_append = " buildhistory_get_sdk_installed_target;"
POPULATE_SDK_POST_TARGET_COMMAND[vardepvalueexclude] .= "| buildhistory_list_installed_sdk_target;| buildhistory_get_sdk_installed_target;"
+POPULATE_SDK_POST_TARGET_COMMAND[vardepsexclude] += "buildhistory_list_installed_sdk_target buildhistory_get_sdk_installed_target"
POPULATE_SDK_POST_HOST_COMMAND_append = " buildhistory_list_installed_sdk_host;"
POPULATE_SDK_POST_HOST_COMMAND_append = " buildhistory_get_sdk_installed_host;"
POPULATE_SDK_POST_HOST_COMMAND[vardepvalueexclude] .= "| buildhistory_list_installed_sdk_host;| buildhistory_get_sdk_installed_host;"
+POPULATE_SDK_POST_HOST_COMMAND[vardepsexclude] += "buildhistory_list_installed_sdk_host buildhistory_get_sdk_installed_host"
SDK_POSTPROCESS_COMMAND_append = " buildhistory_get_sdkinfo ; buildhistory_get_extra_sdkinfo; "
SDK_POSTPROCESS_COMMAND[vardepvalueexclude] .= "| buildhistory_get_sdkinfo ; buildhistory_get_extra_sdkinfo; "
+SDK_POSTPROCESS_COMMAND[vardepsexclude] += "buildhistory_get_sdkinfo buildhistory_get_extra_sdkinfo"
python buildhistory_write_sigs() {
if not "task" in (d.getVar('BUILDHISTORY_FEATURES') or "").split():
diff --git a/poky/meta/classes/buildstats.bbclass b/poky/meta/classes/buildstats.bbclass
index a8ee6e69a..8e03039ae 100644
--- a/poky/meta/classes/buildstats.bbclass
+++ b/poky/meta/classes/buildstats.bbclass
@@ -106,26 +106,54 @@ def write_task_data(status, logfile, e, d):
def write_host_data(logfile, e, d):
import subprocess, os, datetime
+ # minimum time allowed for each command to run, in seconds
+ time_threshold = 0.5
+ # the total number of commands
+ num_cmds = 0
+ # interval at which data will be logged
+ interval = int(d.getVar("BB_HEARTBEAT_EVENT", False))
+ # the commands to be run at each interval
cmds = d.getVar('BB_LOG_HOST_STAT_CMDS')
+ # if no commands are passed, issue a warning and return
if cmds is None:
d.setVar("BB_LOG_HOST_STAT_ON_INTERVAL", "0")
d.setVar("BB_LOG_HOST_STAT_ON_FAILURE", "0")
- bb.warn("buildstats: Collecting host data failed. Set BB_LOG_HOST_STAT_CMDS=\"command1 ; command2 ; ... \" in conf\/local.conf\n")
+ bb.warn("buildstats: Collecting host data failed. Set BB_LOG_HOST_STAT_CMDS=\"command1 ; command2 ; ... \" in conf/local.conf\n")
return
+ # find the total commands
+ c_san = []
+ for cmd in cmds.split(";"):
+ if len(cmd) == 0:
+ continue
+ num_cmds += 1
+ c_san.append(cmd)
+ if num_cmds <= 0:
+ d.setVar("BB_LOG_HOST_STAT_ON_INTERVAL", "0")
+ d.setVar("BB_LOG_HOST_STAT_ON_FAILURE", "0")
+ return
+
+ # return if the interval is not enough to run all commands within the specified BB_HEARTBEAT_EVENT interval
+ limit = interval / num_cmds
+ if limit <= time_threshold:
+ d.setVar("BB_LOG_HOST_STAT_ON_INTERVAL", "0")
+ d.setVar("BB_LOG_HOST_STAT_ON_FAILURE", "0")
+ bb.warn("buildstats: Collecting host data failed. BB_HEARTBEAT_EVENT interval not enough to run the specified commands. HINT: Increase value of BB_HEARTBEAT_EVENT in conf/local.conf\n")
+ return
+
+ # set the environment variables
path = d.getVar("PATH")
opath = d.getVar("BB_ORIGENV", False).getVar("PATH")
ospath = os.environ['PATH']
os.environ['PATH'] = path + ":" + opath + ":" + ospath
with open(logfile, "a") as f:
f.write("Event Time: %f\nDate: %s\n" % (e.time, datetime.datetime.now()))
- for cmd in cmds.split(";"):
- if len(cmd) == 0:
- continue
+ for c in c_san:
try:
- output = subprocess.check_output(cmd.split(), stderr=subprocess.STDOUT, timeout=1).decode('utf-8')
+ output = subprocess.check_output(c.split(), stderr=subprocess.STDOUT, timeout=limit).decode('utf-8')
except (subprocess.CalledProcessError, subprocess.TimeoutExpired, FileNotFoundError) as err:
- output = "Error running command: %s\n%s\n" % (cmd, err)
- f.write("%s\n%s\n" % (cmd, output))
+ output = "Error running command: %s\n%s\n" % (c, err)
+ f.write("%s\n%s\n" % (c, output))
+ # reset the environment
os.environ['PATH'] = ospath
python run_buildstats () {
diff --git a/poky/meta/classes/cmake.bbclass b/poky/meta/classes/cmake.bbclass
index 4af22268b..8876ce5aa 100644
--- a/poky/meta/classes/cmake.bbclass
+++ b/poky/meta/classes/cmake.bbclass
@@ -81,6 +81,8 @@ def map_host_os_to_system_name(host_os):
def map_host_arch_to_uname_arch(host_arch):
if host_arch == "powerpc":
return "ppc"
+ if host_arch == "powerpc64le":
+ return "ppc64le"
if host_arch == "powerpc64":
return "ppc64"
return host_arch
@@ -100,7 +102,8 @@ set( CMAKE_CXX_COMPILER ${OECMAKE_CXX_COMPILER} )
set( CMAKE_C_COMPILER_LAUNCHER ${OECMAKE_C_COMPILER_LAUNCHER} )
set( CMAKE_CXX_COMPILER_LAUNCHER ${OECMAKE_CXX_COMPILER_LAUNCHER} )
set( CMAKE_ASM_COMPILER ${OECMAKE_C_COMPILER} )
-set( CMAKE_AR ${OECMAKE_AR} CACHE FILEPATH "Archiver" )
+find_program( CMAKE_AR ${OECMAKE_AR} DOC "Archiver" REQUIRED )
+
set( CMAKE_C_FLAGS "${OECMAKE_C_FLAGS}" CACHE STRING "CFLAGS" )
set( CMAKE_CXX_FLAGS "${OECMAKE_CXX_FLAGS}" CACHE STRING "CXXFLAGS" )
set( CMAKE_ASM_FLAGS "${OECMAKE_C_FLAGS}" CACHE STRING "ASM FLAGS" )
diff --git a/poky/meta/classes/core-image.bbclass b/poky/meta/classes/core-image.bbclass
index 88ca27214..d81f68bd2 100644
--- a/poky/meta/classes/core-image.bbclass
+++ b/poky/meta/classes/core-image.bbclass
@@ -9,6 +9,7 @@
#
# Available IMAGE_FEATURES:
#
+# - weston - Weston Wayland compositor
# - x11 - X server
# - x11-base - X server with minimal environment
# - x11-sato - OpenedHand Sato environment
@@ -37,6 +38,7 @@
# - stateless-rootfs - systemctl-native not run, image populated by systemd at runtime
# - splash - bootup splash screen
#
+FEATURE_PACKAGES_weston = "packagegroup-core-weston"
FEATURE_PACKAGES_x11 = "packagegroup-core-x11"
FEATURE_PACKAGES_x11-base = "packagegroup-core-x11-base"
FEATURE_PACKAGES_x11-sato = "packagegroup-core-x11-sato"
diff --git a/poky/meta/classes/devshell.bbclass b/poky/meta/classes/devshell.bbclass
index fdf7dc100..76dd0b42e 100644
--- a/poky/meta/classes/devshell.bbclass
+++ b/poky/meta/classes/devshell.bbclass
@@ -128,6 +128,7 @@ def devpyshell(d):
more = i.runsource(source, "<pyshell>")
if not more:
buf = []
+ sys.stderr.flush()
prompt(more)
except KeyboardInterrupt:
i.write("\nKeyboardInterrupt\n")
diff --git a/poky/meta/classes/externalsrc.bbclass b/poky/meta/classes/externalsrc.bbclass
index c7b2bf2f4..54cc7edba 100644
--- a/poky/meta/classes/externalsrc.bbclass
+++ b/poky/meta/classes/externalsrc.bbclass
@@ -217,14 +217,16 @@ def srctree_hash_files(d, srcdir=None):
env['GIT_INDEX_FILE'] = tmp_index.name
subprocess.check_output(['git', 'add', '-A', '.'], cwd=s_dir, env=env)
git_sha1 = subprocess.check_output(['git', 'write-tree'], cwd=s_dir, env=env).decode("utf-8")
- submodule_helper = subprocess.check_output(['git', 'submodule--helper', 'list'], cwd=s_dir, env=env).decode("utf-8")
+ submodule_helper = subprocess.check_output(['git', 'submodule', 'status'], cwd=s_dir, env=env).decode("utf-8")
for line in submodule_helper.splitlines():
- module_dir = os.path.join(s_dir, line.rsplit(maxsplit=1)[1])
- proc = subprocess.Popen(['git', 'add', '-A', '.'], cwd=module_dir, env=env, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
- proc.communicate()
- proc = subprocess.Popen(['git', 'write-tree'], cwd=module_dir, env=env, stdout=subprocess.PIPE, stderr=subprocess.DEVNULL)
- stdout, _ = proc.communicate()
- git_sha1 += stdout.decode("utf-8")
+ module_relpath = line.split()[1]
+ if not module_relpath.split('/')[0] == '..':
+ module_dir = os.path.join(s_dir, module_relpath)
+ proc = subprocess.Popen(['git', 'add', '-A', '.'], cwd=module_dir, env=env, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
+ proc.communicate()
+ proc = subprocess.Popen(['git', 'write-tree'], cwd=module_dir, env=env, stdout=subprocess.PIPE, stderr=subprocess.DEVNULL)
+ stdout, _ = proc.communicate()
+ git_sha1 += stdout.decode("utf-8")
sha1 = hashlib.sha1(git_sha1.encode("utf-8")).hexdigest()
with open(oe_hash_file, 'w') as fobj:
fobj.write(sha1)
diff --git a/poky/meta/classes/godep.bbclass b/poky/meta/classes/godep.bbclass
deleted file mode 100644
index c82401c31..000000000
--- a/poky/meta/classes/godep.bbclass
+++ /dev/null
@@ -1,8 +0,0 @@
-DEPENDS_append = " go-dep-native"
-
-do_compile_prepend() {
- rm -f ${WORKDIR}/build/src/${GO_IMPORT}/Gopkg.toml
- rm -f ${WORKDIR}/build/src/${GO_IMPORT}/Gopkg.lock
- ( cd ${WORKDIR}/build/src/${GO_IMPORT} && dep init && dep ensure )
-}
-
diff --git a/poky/meta/classes/image-live.bbclass b/poky/meta/classes/image-live.bbclass
index 1b2183ead..8b08305cd 100644
--- a/poky/meta/classes/image-live.bbclass
+++ b/poky/meta/classes/image-live.bbclass
@@ -30,7 +30,7 @@ do_bootimg[depends] += "dosfstools-native:do_populate_sysroot \
virtual/kernel:do_deploy \
${MLPREFIX}syslinux:do_populate_sysroot \
syslinux-native:do_populate_sysroot \
- ${PN}:do_image_${@d.getVar('LIVE_ROOTFS_TYPE').replace('-', '_')} \
+ ${@'%s:do_image_%s' % (d.getVar('PN'), d.getVar('LIVE_ROOTFS_TYPE').replace('-', '_')) if d.getVar('ROOTFS') else ''} \
"
diff --git a/poky/meta/classes/image.bbclass b/poky/meta/classes/image.bbclass
index 41fc32917..013455f49 100644
--- a/poky/meta/classes/image.bbclass
+++ b/poky/meta/classes/image.bbclass
@@ -112,7 +112,7 @@ def rootfs_command_variables(d):
'IMAGE_PREPROCESS_COMMAND','RPM_PREPROCESS_COMMANDS','RPM_POSTPROCESS_COMMANDS','DEB_PREPROCESS_COMMANDS','DEB_POSTPROCESS_COMMANDS']
python () {
- variables = rootfs_command_variables(d) + sdk_command_variables(d)
+ variables = rootfs_command_variables(d)
for var in variables:
if d.getVar(var, False):
d.setVarFlag(var, 'func', '1')
@@ -507,7 +507,7 @@ python () {
# Compute the rootfs size
#
def get_rootfs_size(d):
- import subprocess
+ import subprocess, oe.utils
rootfs_alignment = int(d.getVar('IMAGE_ROOTFS_ALIGNMENT'))
overhead_factor = float(d.getVar('IMAGE_OVERHEAD_FACTOR'))
@@ -518,9 +518,7 @@ def get_rootfs_size(d):
initramfs_fstypes = d.getVar('INITRAMFS_FSTYPES') or ''
initramfs_maxsize = d.getVar('INITRAMFS_MAXSIZE')
- output = subprocess.check_output(['du', '-ks',
- d.getVar('IMAGE_ROOTFS')])
- size_kb = int(output.split()[0])
+ size_kb = oe.utils.directory_size(d.getVar("IMAGE_ROOTFS")) / 1024
base_size = size_kb * overhead_factor
bb.debug(1, '%f = %d * %f' % (base_size, size_kb, overhead_factor))
@@ -612,7 +610,7 @@ deltask do_populate_lic
deltask do_populate_sysroot
do_package[noexec] = "1"
deltask do_package_qa
-do_packagedata[noexec] = "1"
+deltask do_packagedata
deltask do_package_write_ipk
deltask do_package_write_deb
deltask do_package_write_rpm
diff --git a/poky/meta/classes/insane.bbclass b/poky/meta/classes/insane.bbclass
index 53230fc66..fa05fc055 100644
--- a/poky/meta/classes/insane.bbclass
+++ b/poky/meta/classes/insane.bbclass
@@ -1014,26 +1014,6 @@ python do_package_qa () {
logdir = d.getVar('T')
pn = d.getVar('PN')
- # Check the compile log for host contamination
- compilelog = os.path.join(logdir,"log.do_compile")
-
- if os.path.exists(compilelog):
- statement = "grep -e 'CROSS COMPILE Badness:' -e 'is unsafe for cross-compilation' %s > /dev/null" % compilelog
- if subprocess.call(statement, shell=True) == 0:
- msg = "%s: The compile log indicates that host include and/or library paths were used.\n \
- Please check the log '%s' for more information." % (pn, compilelog)
- package_qa_handle_error("compile-host-path", msg, d)
-
- # Check the install log for host contamination
- installlog = os.path.join(logdir,"log.do_install")
-
- if os.path.exists(installlog):
- statement = "grep -e 'CROSS COMPILE Badness:' -e 'is unsafe for cross-compilation' %s > /dev/null" % installlog
- if subprocess.call(statement, shell=True) == 0:
- msg = "%s: The install log indicates that host include and/or library paths were used.\n \
- Please check the log '%s' for more information." % (pn, installlog)
- package_qa_handle_error("install-host-path", msg, d)
-
# Scan the packages...
pkgdest = d.getVar('PKGDEST')
packages = set((d.getVar('PACKAGES') or '').split())
@@ -1212,7 +1192,7 @@ python do_qa_configure() {
if bb.data.inherits_class('autotools', d) and not skip_configure_unsafe:
bb.note("Checking autotools environment for common misconfiguration")
for root, dirs, files in os.walk(workdir):
- statement = "grep -q -F -e 'CROSS COMPILE Badness:' -e 'is unsafe for cross-compilation' %s" % \
+ statement = "grep -q -F -e 'is unsafe for cross-compilation' %s" % \
os.path.join(root,"config.log")
if "config.log" in files:
if subprocess.call(statement, shell=True) == 0:
diff --git a/poky/meta/classes/kernel-fitimage.bbclass b/poky/meta/classes/kernel-fitimage.bbclass
index f5082c93d..5cfd8af99 100644
--- a/poky/meta/classes/kernel-fitimage.bbclass
+++ b/poky/meta/classes/kernel-fitimage.bbclass
@@ -53,44 +53,13 @@ python __anonymous () {
d.appendVarFlag('do_assemble_fitimage_initramfs', 'depends', ' %s:do_populate_sysroot' % uboot_pn)
}
-# Options for the device tree compiler passed to mkimage '-D' feature:
-UBOOT_MKIMAGE_DTCOPTS ??= ""
-
-# fitImage Hash Algo
-FIT_HASH_ALG ?= "sha256"
-
-# fitImage Signature Algo
-FIT_SIGN_ALG ?= "rsa2048"
-
-# Generate keys for signing fitImage
-FIT_GENERATE_KEYS ?= "0"
-
-# Size of private key in number of bits
-FIT_SIGN_NUMBITS ?= "2048"
-
-# args to openssl genrsa (Default is just the public exponent)
-FIT_KEY_GENRSA_ARGS ?= "-F4"
-
-# args to openssl req (Default is -batch for non interactive mode and
-# -new for new certificate)
-FIT_KEY_REQ_ARGS ?= "-batch -new"
-
-# Standard format for public key certificate
-FIT_KEY_SIGN_PKCS ?= "-x509"
# Description string
-FIT_DESC ?= "U-Boot fitImage for ${DISTRO_NAME}/${PV}/${MACHINE}"
+FIT_DESC ?= "Kernel fitImage for ${DISTRO_NAME}/${PV}/${MACHINE}"
# Sign individual images as well
FIT_SIGN_INDIVIDUAL ?= "0"
-# mkimage command
-UBOOT_MKIMAGE ?= "uboot-mkimage"
-UBOOT_MKIMAGE_SIGN ?= "${UBOOT_MKIMAGE}"
-
-# Arguments passed to mkimage for signing
-UBOOT_MKIMAGE_SIGN_ARGS ?= ""
-
#
# Emit the fitImage ITS header
#
@@ -535,13 +504,19 @@ fitimage_assemble() {
# Step 2: Prepare a DTB image section
#
- if [ -z "${EXTERNAL_KERNEL_DEVICETREE}" ] && [ -n "${KERNEL_DEVICETREE}" ]; then
+ if [ -n "${KERNEL_DEVICETREE}" ]; then
dtbcount=1
for DTB in ${KERNEL_DEVICETREE}; do
if echo ${DTB} | grep -q '/dts/'; then
bbwarn "${DTB} contains the full path to the the dts file, but only the dtb name should be used."
DTB=`basename ${DTB} | sed 's,\.dts$,.dtb,g'`
fi
+
+ # Skip ${DTB} if it's also provided in ${EXTERNAL_KERNEL_DEVICETREE}
+ if [ -n "${EXTERNAL_KERNEL_DEVICETREE}" ] && [ -s ${EXTERNAL_KERNEL_DEVICETREE}/${DTB} ]; then
+ continue
+ fi
+
DTB_PATH="arch/${ARCH}/boot/dts/${DTB}"
if [ ! -e "${DTB_PATH}" ]; then
DTB_PATH="arch/${ARCH}/boot/${DTB}"
@@ -692,33 +667,6 @@ do_assemble_fitimage_initramfs() {
addtask assemble_fitimage_initramfs before do_deploy after do_bundle_initramfs
-do_generate_rsa_keys() {
- if [ "${UBOOT_SIGN_ENABLE}" = "0" ] && [ "${FIT_GENERATE_KEYS}" = "1" ]; then
- bbwarn "FIT_GENERATE_KEYS is set to 1 eventhough UBOOT_SIGN_ENABLE is set to 0. The keys will not be generated as they won't be used."
- fi
-
- if [ "${UBOOT_SIGN_ENABLE}" = "1" ] && [ "${FIT_GENERATE_KEYS}" = "1" ]; then
-
- # Generate keys only if they don't already exist
- if [ ! -f "${UBOOT_SIGN_KEYDIR}/${UBOOT_SIGN_KEYNAME}".key ] || \
- [ ! -f "${UBOOT_SIGN_KEYDIR}/${UBOOT_SIGN_KEYNAME}".crt]; then
-
- # make directory if it does not already exist
- mkdir -p "${UBOOT_SIGN_KEYDIR}"
-
- echo "Generating RSA private key for signing fitImage"
- openssl genrsa ${FIT_KEY_GENRSA_ARGS} -out \
- "${UBOOT_SIGN_KEYDIR}/${UBOOT_SIGN_KEYNAME}".key \
- "${FIT_SIGN_NUMBITS}"
-
- echo "Generating certificate for signing fitImage"
- openssl req ${FIT_KEY_REQ_ARGS} "${FIT_KEY_SIGN_PKCS}" \
- -key "${UBOOT_SIGN_KEYDIR}/${UBOOT_SIGN_KEYNAME}".key \
- -out "${UBOOT_SIGN_KEYDIR}/${UBOOT_SIGN_KEYNAME}".crt
- fi
- fi
-}
-
addtask generate_rsa_keys before do_assemble_fitimage after do_compile
kernel_do_deploy[vardepsexclude] = "DATETIME"
@@ -747,12 +695,22 @@ kernel_do_deploy_append() {
ln -snf fitImage-${INITRAMFS_IMAGE_NAME}-${KERNEL_FIT_NAME}.bin "$deployDir/fitImage-${INITRAMFS_IMAGE_NAME}-${KERNEL_FIT_LINK_NAME}"
fi
fi
- if [ "${UBOOT_SIGN_ENABLE}" = "1" -a -n "${UBOOT_DTB_BINARY}" ] ; then
- # UBOOT_DTB_IMAGE is a realfile, but we can't use
- # ${UBOOT_DTB_IMAGE} since it contains ${PV} which is aimed
- # for u-boot, but we are in kernel env now.
- install -m 0644 ${B}/u-boot-${MACHINE}*.dtb "$deployDir/"
- fi
+ fi
+ if [ "${UBOOT_SIGN_ENABLE}" = "1" -o "${UBOOT_FITIMAGE_ENABLE}" = "1" ] && \
+ [ -n "${UBOOT_DTB_BINARY}" ] ; then
+ # UBOOT_DTB_IMAGE is a realfile, but we can't use
+ # ${UBOOT_DTB_IMAGE} since it contains ${PV} which is aimed
+ # for u-boot, but we are in kernel env now.
+ install -m 0644 ${B}/u-boot-${MACHINE}*.dtb "$deployDir/"
+ fi
+ if [ "${UBOOT_FITIMAGE_ENABLE}" = "1" -a -n "${UBOOT_BINARY}" -a -n "${SPL_DTB_BINARY}" ] ; then
+ # If we're also creating and/or signing the uboot fit, now we need to
+ # deploy it, it's its file, as well as u-boot-spl.dtb
+ install -m 0644 ${B}/u-boot-spl-${MACHINE}*.dtb "$deployDir/"
+ echo "Copying u-boot-fitImage file..."
+ install -m 0644 ${B}/u-boot-fitImage-* "$deployDir/"
+ echo "Copying u-boot-its file..."
+ install -m 0644 ${B}/u-boot-its-* "$deployDir/"
fi
}
@@ -769,4 +727,4 @@ python () {
bb.build.deltask('do_assemble_fitimage', d)
bb.build.deltask('generate_rsa_keys', d)
bb.build.addtask('generate_rsa_keys', 'do_assemble_fitimage_initramfs', 'do_bundle_initramfs', d)
-} \ No newline at end of file
+}
diff --git a/poky/meta/classes/kernel-yocto.bbclass b/poky/meta/classes/kernel-yocto.bbclass
index 35587dd56..15c8dbb81 100644
--- a/poky/meta/classes/kernel-yocto.bbclass
+++ b/poky/meta/classes/kernel-yocto.bbclass
@@ -403,11 +403,11 @@ do_kernel_configme() {
*alldefconfig)
config_flags=""
;;
- *)
- if [ -f ${WORKDIR}/defconfig ]; then
- config_flags="-n"
- fi
- ;;
+ *)
+ if [ -f ${WORKDIR}/defconfig ]; then
+ config_flags="-n"
+ fi
+ ;;
esac
cd ${S}
diff --git a/poky/meta/classes/license.bbclass b/poky/meta/classes/license.bbclass
index bcea0b3cb..f7978e266 100644
--- a/poky/meta/classes/license.bbclass
+++ b/poky/meta/classes/license.bbclass
@@ -282,16 +282,15 @@ def expand_wildcard_licenses(d, wildcard_licenses):
"""
import fnmatch
- # Assume if we're passed "GPLv3" or "*GPLv3" it means -or-later as well
- for lic in wildcard_licenses[:]:
- if not lic.endswith(("-or-later", "-only", "*")):
- wildcard_licenses.append(lic + "+")
-
licenses = wildcard_licenses[:]
spdxmapkeys = d.getVarFlags('SPDXLICENSEMAP').keys()
for wld_lic in wildcard_licenses:
spdxflags = fnmatch.filter(spdxmapkeys, wld_lic)
licenses += [d.getVarFlag('SPDXLICENSEMAP', flag) for flag in spdxflags]
+ # Assume if we're passed "GPLv3" or "*GPLv3" it means -or-later as well
+ if not wld_lic.endswith(("-or-later", "-only", "*", "+")):
+ spdxflags = fnmatch.filter(spdxmapkeys, wld_lic + "+")
+ licenses += [d.getVarFlag('SPDXLICENSEMAP', flag) for flag in spdxflags]
spdx_lics = d.getVar('AVAILABLE_LICENSES').split()
for wld_lic in wildcard_licenses:
diff --git a/poky/meta/classes/linux-dummy.bbclass b/poky/meta/classes/linux-dummy.bbclass
new file mode 100644
index 000000000..cd8791557
--- /dev/null
+++ b/poky/meta/classes/linux-dummy.bbclass
@@ -0,0 +1,26 @@
+
+python __anonymous () {
+ if d.getVar('PREFERRED_PROVIDER_virtual/kernel') == 'linux-dummy':
+ # copy part codes from kernel.bbclass
+ kname = d.getVar('KERNEL_PACKAGE_NAME') or "kernel"
+
+ # set an empty package of kernel-devicetree
+ d.appendVar('PACKAGES', ' %s-devicetree' % kname)
+ d.setVar('ALLOW_EMPTY_%s-devicetree' % kname, '1')
+
+ # Merge KERNEL_IMAGETYPE and KERNEL_ALT_IMAGETYPE into KERNEL_IMAGETYPES
+ type = d.getVar('KERNEL_IMAGETYPE') or ""
+ alttype = d.getVar('KERNEL_ALT_IMAGETYPE') or ""
+ types = d.getVar('KERNEL_IMAGETYPES') or ""
+ if type not in types.split():
+ types = (type + ' ' + types).strip()
+ if alttype not in types.split():
+ types = (alttype + ' ' + types).strip()
+
+ # set empty packages of kernel-image-*
+ for type in types.split():
+ typelower = type.lower()
+ d.appendVar('PACKAGES', ' %s-image-%s' % (kname, typelower))
+ d.setVar('ALLOW_EMPTY_%s-image-%s' % (kname, typelower), '1')
+}
+
diff --git a/poky/meta/classes/meson.bbclass b/poky/meta/classes/meson.bbclass
index a7644e70c..bf9b02e06 100644
--- a/poky/meta/classes/meson.bbclass
+++ b/poky/meta/classes/meson.bbclass
@@ -26,7 +26,8 @@ MESONOPTS = " --prefix ${prefix} \
--sysconfdir ${sysconfdir} \
--localstatedir ${localstatedir} \
--sharedstatedir ${sharedstatedir} \
- --wrap-mode nodownload"
+ --wrap-mode nodownload \
+ --native-file ${WORKDIR}/meson.native"
EXTRA_OEMESON_append = " ${PACKAGECONFIG_CONFARGS}"
@@ -102,12 +103,14 @@ cups-config = 'cups-config'
g-ir-scanner = '${STAGING_BINDIR}/g-ir-scanner-wrapper'
g-ir-compiler = '${STAGING_BINDIR}/g-ir-compiler-wrapper'
-[properties]
-needs_exe_wrapper = true
+[built-in options]
c_args = ${@meson_array('CFLAGS', d)}
c_link_args = ${@meson_array('LDFLAGS', d)}
cpp_args = ${@meson_array('CXXFLAGS', d)}
cpp_link_args = ${@meson_array('LDFLAGS', d)}
+
+[properties]
+needs_exe_wrapper = true
gtkdoc_exe_wrapper = '${B}/gtkdoc-qemuwrapper'
[host_machine]
@@ -122,8 +125,26 @@ cpu_family = '${@meson_cpu_family('TARGET_ARCH', d)}'
cpu = '${TARGET_ARCH}'
endian = '${@meson_endian('TARGET', d)}'
EOF
+
+ cat >${WORKDIR}/meson.native <<EOF
+[binaries]
+c = ${@meson_array('BUILD_CC', d)}
+cpp = ${@meson_array('BUILD_CXX', d)}
+ar = ${@meson_array('BUILD_AR', d)}
+nm = ${@meson_array('BUILD_NM', d)}
+strip = ${@meson_array('BUILD_STRIP', d)}
+readelf = ${@meson_array('BUILD_READELF', d)}
+pkgconfig = 'pkg-config-native'
+
+[built-in options]
+c_args = ${@meson_array('BUILD_CFLAGS', d)}
+c_link_args = ${@meson_array('BUILD_LDFLAGS', d)}
+cpp_args = ${@meson_array('BUILD_CXXFLAGS', d)}
+cpp_link_args = ${@meson_array('BUILD_LDFLAGS', d)}
+EOF
}
+# Tell externalsrc that changes to this file require a reconfigure
CONFIGURE_FILES = "meson.build"
meson_do_configure() {
@@ -140,33 +161,6 @@ meson_do_configure() {
fi
}
-override_native_tools() {
- # Set these so that meson uses the native tools for its build sanity tests,
- # which require executables to be runnable. The cross file will still
- # override these for the target build.
- export CC="${BUILD_CC}"
- export CXX="${BUILD_CXX}"
- export LD="${BUILD_LD}"
- export AR="${BUILD_AR}"
- export STRIP="${BUILD_STRIP}"
- # These contain *target* flags but will be used as *native* flags. The
- # correct native flags will be passed via -Dc_args and so on, unset them so
- # they don't interfere with tools invoked by Meson (such as g-ir-scanner)
- unset CPPFLAGS CFLAGS CXXFLAGS LDFLAGS
-}
-
-meson_do_configure_prepend_class-target() {
- override_native_tools
-}
-
-meson_do_configure_prepend_class-nativesdk() {
- override_native_tools
-}
-
-meson_do_configure_prepend_class-native() {
- export PKG_CONFIG="pkg-config-native"
-}
-
python meson_do_qa_configure() {
import re
warn_re = re.compile(r"^WARNING: Cross property (.+) is using default value (.+)$", re.MULTILINE)
diff --git a/poky/meta/classes/metadata_scm.bbclass b/poky/meta/classes/metadata_scm.bbclass
index 2608a7ef7..47cb969b8 100644
--- a/poky/meta/classes/metadata_scm.bbclass
+++ b/poky/meta/classes/metadata_scm.bbclass
@@ -1,8 +1,3 @@
-METADATA_BRANCH ?= "${@base_detect_branch(d)}"
-METADATA_BRANCH[vardepvalue] = "${METADATA_BRANCH}"
-METADATA_REVISION ?= "${@base_detect_revision(d)}"
-METADATA_REVISION[vardepvalue] = "${METADATA_REVISION}"
-
def base_detect_revision(d):
path = base_get_scmbasepath(d)
return base_get_metadata_git_revision(path, d)
@@ -42,3 +37,8 @@ def base_get_metadata_git_revision(path, d):
except bb.process.ExecutionError:
rev = '<unknown>'
return rev.strip()
+
+METADATA_BRANCH := "${@base_detect_branch(d)}"
+METADATA_BRANCH[vardepvalue] = "${METADATA_BRANCH}"
+METADATA_REVISION := "${@base_detect_revision(d)}"
+METADATA_REVISION[vardepvalue] = "${METADATA_REVISION}"
diff --git a/poky/meta/classes/multilib_global.bbclass b/poky/meta/classes/multilib_global.bbclass
index 98f65c8aa..96257de5c 100644
--- a/poky/meta/classes/multilib_global.bbclass
+++ b/poky/meta/classes/multilib_global.bbclass
@@ -1,6 +1,7 @@
def preferred_ml_updates(d):
- # If any PREFERRED_PROVIDER or PREFERRED_VERSION are set,
- # we need to mirror these variables in the multilib case;
+ # If any of PREFERRED_PROVIDER, PREFERRED_RPROVIDER, REQUIRED_VERSION
+ # or PREFERRED_VERSION are set, we need to mirror these variables in
+ # the multilib case;
multilibs = d.getVar('MULTILIBS') or ""
if not multilibs:
return
@@ -11,43 +12,51 @@ def preferred_ml_updates(d):
if len(eext) > 1 and eext[0] == 'multilib':
prefixes.append(eext[1])
- versions = []
+ required_versions = []
+ preferred_versions = []
providers = []
rproviders = []
for v in d.keys():
+ if v.startswith("REQUIRED_VERSION_"):
+ required_versions.append(v)
if v.startswith("PREFERRED_VERSION_"):
- versions.append(v)
+ preferred_versions.append(v)
if v.startswith("PREFERRED_PROVIDER_"):
providers.append(v)
if v.startswith("PREFERRED_RPROVIDER_"):
rproviders.append(v)
- for v in versions:
- val = d.getVar(v, False)
- pkg = v.replace("PREFERRED_VERSION_", "")
- if pkg.endswith("-native") or "-crosssdk-" in pkg or pkg.startswith(("nativesdk-", "virtual/nativesdk-")):
- continue
- if '-cross-' in pkg and '${' in pkg:
+ def sort_versions(versions, keyword):
+ version_str = "_".join([keyword, "VERSION", ""])
+ for v in versions:
+ val = d.getVar(v, False)
+ pkg = v.replace(version_str, "")
+ if pkg.endswith("-native") or "-crosssdk-" in pkg or pkg.startswith(("nativesdk-", "virtual/nativesdk-")):
+ continue
+ if '-cross-' in pkg and '${' in pkg:
+ for p in prefixes:
+ localdata = bb.data.createCopy(d)
+ override = ":virtclass-multilib-" + p
+ localdata.setVar("OVERRIDES", localdata.getVar("OVERRIDES", False) + override)
+ if "-canadian-" in pkg:
+ newname = localdata.expand(v)
+ else:
+ newname = localdata.expand(v).replace(version_str, version_str + p + '-')
+ if newname != v:
+ newval = localdata.expand(val)
+ d.setVar(newname, newval)
+ # Avoid future variable key expansion
+ vexp = d.expand(v)
+ if v != vexp and d.getVar(v, False):
+ d.renameVar(v, vexp)
+ continue
for p in prefixes:
- localdata = bb.data.createCopy(d)
- override = ":virtclass-multilib-" + p
- localdata.setVar("OVERRIDES", localdata.getVar("OVERRIDES", False) + override)
- if "-canadian-" in pkg:
- newname = localdata.expand(v)
- else:
- newname = localdata.expand(v).replace("PREFERRED_VERSION_", "PREFERRED_VERSION_" + p + '-')
- if newname != v:
- newval = localdata.expand(val)
- d.setVar(newname, newval)
- # Avoid future variable key expansion
- vexp = d.expand(v)
- if v != vexp and d.getVar(v, False):
- d.renameVar(v, vexp)
- continue
- for p in prefixes:
- newname = "PREFERRED_VERSION_" + p + "-" + pkg
- if not d.getVar(newname, False):
- d.setVar(newname, val)
+ newname = version_str + p + "-" + pkg
+ if not d.getVar(newname, False):
+ d.setVar(newname, val)
+
+ sort_versions(required_versions, "REQUIRED")
+ sort_versions(preferred_versions, "PREFERRED")
for prov in providers:
val = d.getVar(prov, False)
diff --git a/poky/meta/classes/populate_sdk_base.bbclass b/poky/meta/classes/populate_sdk_base.bbclass
index c8a7084d3..33ba3fc3c 100644
--- a/poky/meta/classes/populate_sdk_base.bbclass
+++ b/poky/meta/classes/populate_sdk_base.bbclass
@@ -329,6 +329,13 @@ def sdk_variables(d):
do_populate_sdk[vardeps] += "${@sdk_variables(d)}"
+python () {
+ variables = sdk_command_variables(d)
+ for var in variables:
+ if d.getVar(var, False):
+ d.setVarFlag(var, 'func', '1')
+}
+
do_populate_sdk[file-checksums] += "${TOOLCHAIN_SHAR_REL_TMPL}:True \
${TOOLCHAIN_SHAR_EXT_TMPL}:True"
diff --git a/poky/meta/classes/populate_sdk_ext.bbclass b/poky/meta/classes/populate_sdk_ext.bbclass
index e6bf27cf3..84232ed9f 100644
--- a/poky/meta/classes/populate_sdk_ext.bbclass
+++ b/poky/meta/classes/populate_sdk_ext.bbclass
@@ -251,7 +251,9 @@ python copy_buildsystem () {
# Create a layer for new recipes / appends
bbpath = d.getVar('BBPATH')
- bb.process.run(['devtool', '--bbpath', bbpath, '--basepath', baseoutpath, 'create-workspace', '--create-only', os.path.join(baseoutpath, 'workspace')])
+ env = os.environ.copy()
+ env['PYTHONDONTWRITEBYTECODE'] = '1'
+ bb.process.run(['devtool', '--bbpath', bbpath, '--basepath', baseoutpath, 'create-workspace', '--create-only', os.path.join(baseoutpath, 'workspace')], env=env)
# Create bblayers.conf
bb.utils.mkdirhier(baseoutpath + '/conf')
@@ -364,12 +366,19 @@ python copy_buildsystem () {
# Hide the config information from bitbake output (since it's fixed within the SDK)
f.write('BUILDCFG_HEADER = ""\n\n')
+ # Write METADATA_REVISION
+ f.write('METADATA_REVISION = "%s"\n\n' % d.getVar('METADATA_REVISION'))
+
f.write('# Provide a flag to indicate we are in the EXT_SDK Context\n')
f.write('WITHIN_EXT_SDK = "1"\n\n')
# Map gcc-dependent uninative sstate cache for installer usage
f.write('SSTATE_MIRRORS += " file://universal/(.*) file://universal-4.9/\\1 file://universal-4.9/(.*) file://universal-4.8/\\1"\n\n')
+ if d.getVar("PRSERV_HOST"):
+ # Override this, we now include PR data, so it should only point ot the local database
+ f.write('PRSERV_HOST = "localhost:0"\n\n')
+
# Allow additional config through sdk-extra.conf
fn = bb.cookerdata.findConfigFile('sdk-extra.conf', d)
if fn:
@@ -393,6 +402,27 @@ python copy_buildsystem () {
bb.utils.mkdirhier(os.path.join(baseoutpath, 'cache'))
shutil.copyfile(builddir + '/cache/bb_unihashes.dat', baseoutpath + '/cache/bb_unihashes.dat')
+ # If PR Service is in use, we need to export this as well
+ bb.note('Do we have a pr database?')
+ if d.getVar("PRSERV_HOST"):
+ bb.note('Writing PR database...')
+ # Based on the code in classes/prexport.bbclass
+ import oe.prservice
+ #dump meta info of tables
+ localdata = d.createCopy()
+ localdata.setVar('PRSERV_DUMPOPT_COL', "1")
+ localdata.setVar('PRSERV_DUMPDIR', os.path.join(baseoutpath, 'conf'))
+ localdata.setVar('PRSERV_DUMPFILE', '${PRSERV_DUMPDIR}/prserv.inc')
+
+ bb.note('PR Database write to %s' % (localdata.getVar('PRSERV_DUMPFILE')))
+
+ retval = oe.prservice.prserv_dump_db(localdata)
+ if not retval:
+ bb.error("prexport_handler: export failed!")
+ return
+ (metainfo, datainfo) = retval
+ oe.prservice.prserv_export_tofile(localdata, metainfo, datainfo, True)
+
# Use templateconf.cfg file from builddir if exists
if os.path.exists(builddir + '/conf/templateconf.cfg') and use_custom_templateconf == '1':
shutil.copyfile(builddir + '/conf/templateconf.cfg', baseoutpath + '/conf/templateconf.cfg')
diff --git a/poky/meta/classes/qemuboot.bbclass b/poky/meta/classes/qemuboot.bbclass
index 4b7532b30..1f8012edc 100644
--- a/poky/meta/classes/qemuboot.bbclass
+++ b/poky/meta/classes/qemuboot.bbclass
@@ -72,6 +72,9 @@
# Can be used to automatically determine the image from the other variables
# but define things link 'bootindex' when booting from EFI or 'readonly' when using squashfs
# without the need to specify a dedicated qemu configuration
+#
+# QB_GRAPHICS: QEMU video card type (e.g. "-vga std")
+#
# Usage:
# IMAGE_CLASSES += "qemuboot"
# See "runqemu help" for more info
@@ -86,6 +89,7 @@ QB_NETWORK_DEVICE ?= "-device virtio-net-pci,netdev=net0,mac=@MAC@"
QB_CMDLINE_IP_SLIRP ?= "ip=dhcp"
QB_CMDLINE_IP_TAP ?= "ip=192.168.7.@CLIENT@::192.168.7.@GATEWAY@:255.255.255.0"
QB_ROOTFS_EXTRA_OPT ?= ""
+QB_GRAPHICS ?= ""
# This should be kept align with ROOT_VM
QB_DRIVE_TYPE ?= "/dev/sd"
@@ -99,7 +103,7 @@ def qemuboot_vars(d):
build_vars = ['MACHINE', 'TUNE_ARCH', 'DEPLOY_DIR_IMAGE',
'KERNEL_IMAGETYPE', 'IMAGE_NAME', 'IMAGE_LINK_NAME',
'STAGING_DIR_NATIVE', 'STAGING_BINDIR_NATIVE',
- 'STAGING_DIR_HOST']
+ 'STAGING_DIR_HOST', 'SERIAL_CONSOLES']
return build_vars + [k for k in d.keys() if k.startswith('QB_')]
do_write_qemuboot_conf[vardeps] += "${@' '.join(qemuboot_vars(d))}"
diff --git a/poky/meta/classes/rootfs-postcommands.bbclass b/poky/meta/classes/rootfs-postcommands.bbclass
index 1f27a3d07..e66ed5938 100644
--- a/poky/meta/classes/rootfs-postcommands.bbclass
+++ b/poky/meta/classes/rootfs-postcommands.bbclass
@@ -34,7 +34,7 @@ ROOTFS_POSTUNINSTALL_COMMAND =+ "write_image_manifest ; "
# Set default postinst log file
POSTINST_LOGFILE ?= "${localstatedir}/log/postinstall.log"
# Set default target for systemd images
-SYSTEMD_DEFAULT_TARGET ?= '${@bb.utils.contains("IMAGE_FEATURES", "x11-base", "graphical.target", "multi-user.target", d)}'
+SYSTEMD_DEFAULT_TARGET ?= '${@bb.utils.contains_any("IMAGE_FEATURES", [ "x11-base", "weston" ], "graphical.target", "multi-user.target", d)}'
ROOTFS_POSTPROCESS_COMMAND += '${@bb.utils.contains("DISTRO_FEATURES", "systemd", "set_systemd_default_target; systemd_create_users;", "", d)}'
ROOTFS_POSTPROCESS_COMMAND += 'empty_var_volatile;'
diff --git a/poky/meta/classes/sanity.bbclass b/poky/meta/classes/sanity.bbclass
index 485173ab4..894f0e310 100644
--- a/poky/meta/classes/sanity.bbclass
+++ b/poky/meta/classes/sanity.bbclass
@@ -895,7 +895,7 @@ def check_sanity_everybuild(status, d):
mirror_vars = ['MIRRORS', 'PREMIRRORS', 'SSTATE_MIRRORS']
protocols = ['http', 'ftp', 'file', 'https', \
'git', 'gitsm', 'hg', 'osc', 'p4', 'svn', \
- 'bzr', 'cvs', 'npm', 'sftp', 'ssh', 's3' ]
+ 'bzr', 'cvs', 'npm', 'sftp', 'ssh', 's3', 'az' ]
for mirror_var in mirror_vars:
mirrors = (d.getVar(mirror_var) or '').replace('\\n', ' ').split()
diff --git a/poky/meta/classes/sstate.bbclass b/poky/meta/classes/sstate.bbclass
index f57916816..8e8efd18d 100644
--- a/poky/meta/classes/sstate.bbclass
+++ b/poky/meta/classes/sstate.bbclass
@@ -1146,14 +1146,18 @@ python sstate_eventhandler() {
SSTATE_PRUNE_OBSOLETEWORKDIR ?= "1"
-# Event handler which removes manifests and stamps file for
-# recipes which are no longer reachable in a build where they
-# once were.
+#
+# Event handler which removes manifests and stamps file for recipes which are no
+# longer 'reachable' in a build where they once were. 'Reachable' refers to
+# whether a recipe is parsed so recipes in a layer which was removed would no
+# longer be reachable. Switching between systemd and sysvinit where recipes
+# became skipped would be another example.
+#
# Also optionally removes the workdir of those tasks/recipes
#
-addhandler sstate_eventhandler2
-sstate_eventhandler2[eventmask] = "bb.event.ReachableStamps"
-python sstate_eventhandler2() {
+addhandler sstate_eventhandler_reachablestamps
+sstate_eventhandler_reachablestamps[eventmask] = "bb.event.ReachableStamps"
+python sstate_eventhandler_reachablestamps() {
import glob
d = e.data
stamps = e.stamps.values()
@@ -1223,3 +1227,59 @@ python sstate_eventhandler2() {
if preservestamps:
os.remove(preservestampfile)
}
+
+
+#
+# Bitbake can generate an event showing which setscene tasks are 'stale',
+# i.e. which ones will be rerun. These are ones where a stamp file is present but
+# it is stable (e.g. taskhash doesn't match). With that list we can go through
+# the manifests for matching tasks and "uninstall" those manifests now. We do
+# this now rather than mid build since the distribution of files between sstate
+# objects may have changed, new tasks may run first and if those new tasks overlap
+# with the stale tasks, we'd see overlapping files messages and failures. Thankfully
+# removing these files is fast.
+#
+addhandler sstate_eventhandler_stalesstate
+sstate_eventhandler_stalesstate[eventmask] = "bb.event.StaleSetSceneTasks"
+python sstate_eventhandler_stalesstate() {
+ d = e.data
+ tasks = e.tasks
+
+ bb.utils.mkdirhier(d.expand("${SSTATE_MANIFESTS}"))
+
+ for a in list(set(d.getVar("SSTATE_ARCHS").split())):
+ toremove = []
+ i = d.expand("${SSTATE_MANIFESTS}/index-" + a)
+ if not os.path.exists(i):
+ continue
+ with open(i, "r") as f:
+ lines = f.readlines()
+ for l in lines:
+ try:
+ (stamp, manifest, workdir) = l.split()
+ for tid in tasks:
+ for s in tasks[tid]:
+ if s.startswith(stamp):
+ taskname = bb.runqueue.taskname_from_tid(tid)[3:]
+ manname = manifest + "." + taskname
+ if os.path.exists(manname):
+ bb.debug(2, "Sstate for %s is stale, removing related manifest %s" % (tid, manname))
+ toremove.append((manname, tid, tasks[tid]))
+ break
+ except ValueError:
+ bb.fatal("Invalid line '%s' in sstate manifest '%s'" % (l, i))
+
+ if toremove:
+ msg = "Removing %d stale sstate objects for arch %s" % (len(toremove), a)
+ bb.event.fire(bb.event.ProcessStarted(msg, len(toremove)), d)
+
+ removed = 0
+ for (manname, tid, stamps) in toremove:
+ sstate_clean_manifest(manname, d)
+ for stamp in stamps:
+ bb.utils.remove(stamp)
+ removed = removed + 1
+ bb.event.fire(bb.event.ProcessProgress(msg, removed), d)
+
+ bb.event.fire(bb.event.ProcessFinished(msg), d)
+}
diff --git a/poky/meta/classes/testimage.bbclass b/poky/meta/classes/testimage.bbclass
index 78da4b09b..e61375950 100644
--- a/poky/meta/classes/testimage.bbclass
+++ b/poky/meta/classes/testimage.bbclass
@@ -305,6 +305,7 @@ def testimage_main(d):
'dump_dir' : d.getVar("TESTIMAGE_DUMP_DIR"),
'serial_ports': len(d.getVar("SERIAL_CONSOLES").split()),
'ovmf' : ovmf,
+ 'tmpfsdir' : d.getVar("RUNQEMU_TMPFS_DIR"),
}
if d.getVar("TESTIMAGE_BOOT_PATTERNS"):
diff --git a/poky/meta/classes/toolchain-scripts.bbclass b/poky/meta/classes/toolchain-scripts.bbclass
index db1d3215e..67a812cb0 100644
--- a/poky/meta/classes/toolchain-scripts.bbclass
+++ b/poky/meta/classes/toolchain-scripts.bbclass
@@ -8,6 +8,8 @@ TARGET_CC_ARCH_append_libc-musl = " -mmusl"
# default debug prefix map isn't valid in the SDK
DEBUG_PREFIX_MAP = ""
+EXPORT_SDK_PS1 = "${@ 'export PS1=\'%s\'' % d.getVar('SDK_PS1') if d.getVar('SDK_PS1') else ''}"
+
# This function creates an environment-setup-script for use in a deployable SDK
toolchain_create_sdk_env_script () {
# Create environment setup script. Remember that $SDKTARGETSYSROOT should
@@ -39,6 +41,7 @@ toolchain_create_sdk_env_script () {
echo ' return 1' >> $script
echo 'fi' >> $script
+ echo "${EXPORT_SDK_PS1}" >> $script
echo 'export SDKTARGETSYSROOT='"$sysroot" >> $script
EXTRAPATH=""
for i in ${CANADIANEXTRAOS}; do
diff --git a/poky/meta/classes/uboot-config.bbclass b/poky/meta/classes/uboot-config.bbclass
index 89ff970fc..3bba02828 100644
--- a/poky/meta/classes/uboot-config.bbclass
+++ b/poky/meta/classes/uboot-config.bbclass
@@ -11,7 +11,65 @@
#
# Copyright 2013, 2014 (C) O.S. Systems Software LTDA.
+# Some versions of u-boot use .bin and others use .img. By default use .bin
+# but enable individual recipes to change this value.
+UBOOT_SUFFIX ??= "bin"
UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
+UBOOT_BINARYNAME ?= "${@os.path.splitext(d.getVar("UBOOT_BINARY"))[0]}"
+UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_SUFFIX}"
+UBOOT_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_SUFFIX}"
+UBOOT_MAKE_TARGET ?= "all"
+
+# Output the ELF generated. Some platforms can use the ELF file and directly
+# load it (JTAG booting, QEMU) additionally the ELF can be used for debugging
+# purposes.
+UBOOT_ELF ?= ""
+UBOOT_ELF_SUFFIX ?= "elf"
+UBOOT_ELF_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_ELF_SUFFIX}"
+UBOOT_ELF_BINARY ?= "u-boot.${UBOOT_ELF_SUFFIX}"
+UBOOT_ELF_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_ELF_SUFFIX}"
+
+# Some versions of u-boot build an SPL (Second Program Loader) image that
+# should be packaged along with the u-boot binary as well as placed in the
+# deploy directory. For those versions they can set the following variables
+# to allow packaging the SPL.
+SPL_BINARY ?= ""
+SPL_BINARYNAME ?= "${@os.path.basename(d.getVar("SPL_BINARY"))}"
+SPL_IMAGE ?= "${SPL_BINARYNAME}-${MACHINE}-${PV}-${PR}"
+SPL_SYMLINK ?= "${SPL_BINARYNAME}-${MACHINE}"
+
+# Additional environment variables or a script can be installed alongside
+# u-boot to be used automatically on boot. This file, typically 'uEnv.txt'
+# or 'boot.scr', should be packaged along with u-boot as well as placed in the
+# deploy directory. Machine configurations needing one of these files should
+# include it in the SRC_URI and set the UBOOT_ENV parameter.
+UBOOT_ENV_SUFFIX ?= "txt"
+UBOOT_ENV ?= ""
+UBOOT_ENV_BINARY ?= "${UBOOT_ENV}.${UBOOT_ENV_SUFFIX}"
+UBOOT_ENV_IMAGE ?= "${UBOOT_ENV}-${MACHINE}-${PV}-${PR}.${UBOOT_ENV_SUFFIX}"
+UBOOT_ENV_SYMLINK ?= "${UBOOT_ENV}-${MACHINE}.${UBOOT_ENV_SUFFIX}"
+
+# Default name of u-boot initial env, but enable individual recipes to change
+# this value.
+UBOOT_INITIAL_ENV ?= "${PN}-initial-env"
+
+# U-Boot EXTLINUX variables. U-Boot searches for /boot/extlinux/extlinux.conf
+# to find EXTLINUX conf file.
+UBOOT_EXTLINUX_INSTALL_DIR ?= "/boot/extlinux"
+UBOOT_EXTLINUX_CONF_NAME ?= "extlinux.conf"
+UBOOT_EXTLINUX_SYMLINK ?= "${UBOOT_EXTLINUX_CONF_NAME}-${MACHINE}-${PR}"
+
+# Options for the device tree compiler passed to mkimage '-D' feature:
+UBOOT_MKIMAGE_DTCOPTS ??= ""
+SPL_MKIMAGE_DTCOPTS ??= ""
+
+# mkimage command
+UBOOT_MKIMAGE ?= "uboot-mkimage"
+UBOOT_MKIMAGE_SIGN ?= "${UBOOT_MKIMAGE}"
+
+# Arguments passed to mkimage for signing
+UBOOT_MKIMAGE_SIGN_ARGS ?= ""
+SPL_MKIMAGE_SIGN_ARGS ?= ""
python () {
ubootmachine = d.getVar("UBOOT_MACHINE")
diff --git a/poky/meta/classes/uboot-sign.bbclass b/poky/meta/classes/uboot-sign.bbclass
index 713196df4..d11882f90 100644
--- a/poky/meta/classes/uboot-sign.bbclass
+++ b/poky/meta/classes/uboot-sign.bbclass
@@ -31,19 +31,81 @@
#
# For more details on signature process, please refer to U-Boot documentation.
-# Signature activation.
+# We need some variables from u-boot-config
+inherit uboot-config
+
+# Enable use of a U-Boot fitImage
+UBOOT_FITIMAGE_ENABLE ?= "0"
+
+# Signature activation - these require their respective fitImages
UBOOT_SIGN_ENABLE ?= "0"
+SPL_SIGN_ENABLE ?= "0"
# Default value for deployment filenames.
UBOOT_DTB_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.dtb"
UBOOT_DTB_BINARY ?= "u-boot.dtb"
UBOOT_DTB_SYMLINK ?= "u-boot-${MACHINE}.dtb"
-UBOOT_NODTB_IMAGE ?= "u-boot-nodtb-${MACHINE}-${PV}-${PR}.${UBOOT_SUFFIX}"
-UBOOT_NODTB_BINARY ?= "u-boot-nodtb.${UBOOT_SUFFIX}"
-UBOOT_NODTB_SYMLINK ?= "u-boot-nodtb-${MACHINE}.${UBOOT_SUFFIX}"
+UBOOT_NODTB_IMAGE ?= "u-boot-nodtb-${MACHINE}-${PV}-${PR}.bin"
+UBOOT_NODTB_BINARY ?= "u-boot-nodtb.bin"
+UBOOT_NODTB_SYMLINK ?= "u-boot-nodtb-${MACHINE}.bin"
+UBOOT_ITS_IMAGE ?= "u-boot-its-${MACHINE}-${PV}-${PR}"
+UBOOT_ITS ?= "u-boot.its"
+UBOOT_ITS_SYMLINK ?= "u-boot-its-${MACHINE}"
+UBOOT_FITIMAGE_IMAGE ?= "u-boot-fitImage-${MACHINE}-${PV}-${PR}"
+UBOOT_FITIMAGE_BINARY ?= "u-boot-fitImage"
+UBOOT_FITIMAGE_SYMLINK ?= "u-boot-fitImage-${MACHINE}"
+SPL_DIR ?= "spl"
+SPL_DTB_IMAGE ?= "u-boot-spl-${MACHINE}-${PV}-${PR}.dtb"
+SPL_DTB_BINARY ?= "u-boot-spl.dtb"
+SPL_DTB_SYMLINK ?= "u-boot-spl-${MACHINE}.dtb"
+SPL_NODTB_IMAGE ?= "u-boot-spl-nodtb-${MACHINE}-${PV}-${PR}.bin"
+SPL_NODTB_BINARY ?= "u-boot-spl-nodtb.bin"
+SPL_NODTB_SYMLINK ?= "u-boot-spl-nodtb-${MACHINE}.bin"
+
+# U-Boot fitImage description
+UBOOT_FIT_DESC ?= "U-Boot fitImage for ${DISTRO_NAME}/${PV}/${MACHINE}"
+
+# Kernel / U-Boot fitImage Hash Algo
+FIT_HASH_ALG ?= "sha256"
+UBOOT_FIT_HASH_ALG ?= "sha256"
+
+# Kernel / U-Boot fitImage Signature Algo
+FIT_SIGN_ALG ?= "rsa2048"
+UBOOT_FIT_SIGN_ALG ?= "rsa2048"
+
+# Generate keys for signing Kernel / U-Boot fitImage
+FIT_GENERATE_KEYS ?= "0"
+UBOOT_FIT_GENERATE_KEYS ?= "0"
+
+# Size of private keys in number of bits
+FIT_SIGN_NUMBITS ?= "2048"
+UBOOT_FIT_SIGN_NUMBITS ?= "2048"
-# Functions in this bbclass is for u-boot only
+# args to openssl genrsa (Default is just the public exponent)
+FIT_KEY_GENRSA_ARGS ?= "-F4"
+UBOOT_FIT_KEY_GENRSA_ARGS ?= "-F4"
+
+# args to openssl req (Default is -batch for non interactive mode and
+# -new for new certificate)
+FIT_KEY_REQ_ARGS ?= "-batch -new"
+UBOOT_FIT_KEY_REQ_ARGS ?= "-batch -new"
+
+# Standard format for public key certificate
+FIT_KEY_SIGN_PKCS ?= "-x509"
+UBOOT_FIT_KEY_SIGN_PKCS ?= "-x509"
+
+# Functions on this bbclass can apply to either U-boot or Kernel,
+# depending on the scenario
UBOOT_PN = "${@d.getVar('PREFERRED_PROVIDER_u-boot') or 'u-boot'}"
+KERNEL_PN = "${@d.getVar('PREFERRED_PROVIDER_virtual/kernel')}"
+
+# We need u-boot-tools-native if we're creating a U-Boot fitImage
+python() {
+ if d.getVar('UBOOT_FITIMAGE_ENABLE') == '1':
+ depends = d.getVar("DEPENDS")
+ depends = "%s u-boot-tools-native dtc-native" % depends
+ d.setVar("DEPENDS", depends)
+}
concat_dtb_helper() {
if [ -e "${UBOOT_DTB_BINARY}" ]; then
@@ -57,21 +119,44 @@ concat_dtb_helper() {
ln -sf ${UBOOT_NODTB_IMAGE} ${DEPLOYDIR}/${UBOOT_NODTB_BINARY}
fi
- # Concatenate U-Boot w/o DTB & DTB with public key
- # (cf. kernel-fitimage.bbclass for more details)
- deployed_uboot_dtb_binary='${DEPLOY_DIR_IMAGE}/${UBOOT_DTB_IMAGE}'
- if [ "x${UBOOT_SUFFIX}" = "ximg" -o "x${UBOOT_SUFFIX}" = "xrom" ] && \
- [ -e "$deployed_uboot_dtb_binary" ]; then
- oe_runmake EXT_DTB=$deployed_uboot_dtb_binary
- install ${UBOOT_BINARY} ${DEPLOYDIR}/${UBOOT_IMAGE}
- elif [ -e "${DEPLOYDIR}/${UBOOT_NODTB_IMAGE}" -a -e "$deployed_uboot_dtb_binary" ]; then
+ # If we're not using a signed u-boot fit, concatenate SPL w/o DTB & U-Boot DTB
+ # with public key (otherwise it will be deployed by the equivalent
+ # concat_spl_dtb_helper function - cf. kernel-fitimage.bbclass for more details)
+ if [ "${SPL_SIGN_ENABLE}" != "1" ] ; then
+ deployed_uboot_dtb_binary='${DEPLOY_DIR_IMAGE}/${UBOOT_DTB_IMAGE}'
+ if [ "x${UBOOT_SUFFIX}" = "ximg" -o "x${UBOOT_SUFFIX}" = "xrom" ] && \
+ [ -e "$deployed_uboot_dtb_binary" ]; then
+ oe_runmake EXT_DTB=$deployed_uboot_dtb_binary
+ install ${UBOOT_BINARY} ${DEPLOYDIR}/${UBOOT_IMAGE}
+ elif [ -e "${DEPLOYDIR}/${UBOOT_NODTB_IMAGE}" -a -e "$deployed_uboot_dtb_binary" ]; then
+ cd ${DEPLOYDIR}
+ cat ${UBOOT_NODTB_IMAGE} $deployed_uboot_dtb_binary | tee ${B}/${CONFIG_B_PATH}/${UBOOT_BINARY} > ${UBOOT_IMAGE}
+ else
+ bbwarn "Failure while adding public key to u-boot binary. Verified boot won't be available."
+ fi
+ fi
+}
+
+concat_spl_dtb_helper() {
+
+ # We only deploy symlinks to the u-boot-spl.dtb,as the KERNEL_PN will
+ # be responsible for deploying the real file
+ if [ -e "${SPL_DIR}/${SPL_DTB_BINARY}" ] ; then
+ ln -sf ${SPL_DTB_IMAGE} ${DEPLOYDIR}/${SPL_DTB_SYMLINK}
+ ln -sf ${SPL_DTB_IMAGE} ${DEPLOYDIR}/${SPL_DTB_BINARY}
+ fi
+
+ # Concatenate the SPL nodtb binary and u-boot.dtb
+ deployed_spl_dtb_binary='${DEPLOY_DIR_IMAGE}/${SPL_DTB_IMAGE}'
+ if [ -e "${DEPLOYDIR}/${SPL_NODTB_IMAGE}" -a -e "$deployed_spl_dtb_binary" ] ; then
cd ${DEPLOYDIR}
- cat ${UBOOT_NODTB_IMAGE} $deployed_uboot_dtb_binary | tee ${B}/${CONFIG_B_PATH}/${UBOOT_BINARY} > ${UBOOT_IMAGE}
+ cat ${SPL_NODTB_IMAGE} $deployed_spl_dtb_binary | tee ${B}/${CONFIG_B_PATH}/${SPL_BINARY} > ${SPL_IMAGE}
else
- bbwarn "Failure while adding public key to u-boot binary. Verified boot won't be available."
+ bbwarn "Failure while adding public key to spl binary. Verified U-Boot boot won't be available."
fi
}
+
concat_dtb() {
if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${PN}" = "${UBOOT_PN}" -a -n "${UBOOT_DTB_BINARY}" ]; then
mkdir -p ${DEPLOYDIR}
@@ -89,6 +174,24 @@ concat_dtb() {
fi
}
+concat_spl_dtb() {
+ if [ "${SPL_SIGN_ENABLE}" = "1" -a "${PN}" = "${UBOOT_PN}" -a -n "${SPL_DTB_BINARY}" ]; then
+ mkdir -p ${DEPLOYDIR}
+ if [ -n "${UBOOT_CONFIG}" ]; then
+ for config in ${UBOOT_MACHINE}; do
+ CONFIG_B_PATH="${config}"
+ cd ${B}/${config}
+ concat_spl_dtb_helper
+ done
+ else
+ CONFIG_B_PATH=""
+ cd ${B}
+ concat_spl_dtb_helper
+ fi
+ fi
+}
+
+
# Install UBOOT_DTB_BINARY to datadir, so that kernel can use it for
# signing, and kernel will deploy UBOOT_DTB_BINARY after signs it.
install_helper() {
@@ -103,30 +206,302 @@ install_helper() {
fi
}
+# Install SPL dtb and u-boot nodtb to datadir,
+install_spl_helper() {
+ if [ -f "${SPL_DIR}/${SPL_DTB_BINARY}" ]; then
+ install -d ${D}${datadir}
+ install ${SPL_DIR}/${SPL_DTB_BINARY} ${D}${datadir}/${SPL_DTB_IMAGE}
+ ln -sf ${SPL_DTB_IMAGE} ${D}${datadir}/${SPL_DTB_BINARY}
+ else
+ bbwarn "${SPL_DTB_BINARY} not found"
+ fi
+ if [ -f "${UBOOT_NODTB_BINARY}" ] ; then
+ install ${UBOOT_NODTB_BINARY} ${D}${datadir}/${UBOOT_NODTB_IMAGE}
+ ln -sf ${UBOOT_NODTB_IMAGE} ${D}${datadir}/${UBOOT_NODTB_BINARY}
+ else
+ bbwarn "${UBOOT_NODTB_BINARY} not found"
+ fi
+
+ # We need to install a 'stub' u-boot-fitimage + its to datadir,
+ # so that the KERNEL_PN can use the correct filename when
+ # assembling and deploying them
+ touch ${D}/${datadir}/${UBOOT_FITIMAGE_IMAGE}
+ touch ${D}/${datadir}/${UBOOT_ITS_IMAGE}
+}
+
do_install_append() {
- if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${PN}" = "${UBOOT_PN}" -a -n "${UBOOT_DTB_BINARY}" ]; then
+ if [ "${PN}" = "${UBOOT_PN}" ]; then
if [ -n "${UBOOT_CONFIG}" ]; then
for config in ${UBOOT_MACHINE}; do
cd ${B}/${config}
- install_helper
+ if [ "${UBOOT_SIGN_ENABLE}" = "1" -o "${UBOOT_FITIMAGE_ENABLE}" = "1" ] && \
+ [ -n "${UBOOT_DTB_BINARY}" ]; then
+ install_helper
+ fi
+ if [ "${SPL_SIGN_ENABLE}" = "1" -a -n "${SPL_DTB_BINARY}" ]; then
+ install_spl_helper
+ fi
done
else
cd ${B}
- install_helper
+ if [ "${UBOOT_SIGN_ENABLE}" = "1" -o "${UBOOT_FITIMAGE_ENABLE}" = "1" ] && \
+ [ -n "${UBOOT_DTB_BINARY}" ]; then
+ install_helper
+ fi
+ if [ "${UBOOT_FITIMAGE_ENABLE}" = "1" -a -n "${SPL_DTB_BINARY}" ]; then
+ install_spl_helper
+ fi
+ fi
+ fi
+}
+
+do_generate_rsa_keys() {
+ if [ "${UBOOT_SIGN_ENABLE}" = "0" ] && [ "${FIT_GENERATE_KEYS}" = "1" ]; then
+ bbwarn "FIT_GENERATE_KEYS is set to 1 even though UBOOT_SIGN_ENABLE is set to 0. The keys will not be generated as they won't be used."
+ fi
+
+ if [ "${UBOOT_SIGN_ENABLE}" = "1" ] && [ "${FIT_GENERATE_KEYS}" = "1" ]; then
+
+ # Generate keys only if they don't already exist
+ if [ ! -f "${UBOOT_SIGN_KEYDIR}/${UBOOT_SIGN_KEYNAME}".key ] || \
+ [ ! -f "${UBOOT_SIGN_KEYDIR}/${UBOOT_SIGN_KEYNAME}".crt ]; then
+
+ # make directory if it does not already exist
+ mkdir -p "${UBOOT_SIGN_KEYDIR}"
+
+ echo "Generating RSA private key for signing fitImage"
+ openssl genrsa ${FIT_KEY_GENRSA_ARGS} -out \
+ "${UBOOT_SIGN_KEYDIR}/${UBOOT_SIGN_KEYNAME}".key \
+ "${FIT_SIGN_NUMBITS}"
+
+ echo "Generating certificate for signing fitImage"
+ openssl req ${FIT_KEY_REQ_ARGS} "${FIT_KEY_SIGN_PKCS}" \
+ -key "${UBOOT_SIGN_KEYDIR}/${UBOOT_SIGN_KEYNAME}".key \
+ -out "${UBOOT_SIGN_KEYDIR}/${UBOOT_SIGN_KEYNAME}".crt
+ fi
+ fi
+
+ if [ "${SPL_SIGN_ENABLE}" = "0" ] && [ "${UBOOT_FIT_GENERATE_KEYS}" = "1" ]; then
+ bbwarn "UBOOT_FIT_GENERATE_KEYS is set to 1 eventhough SPL_SIGN_ENABLE is set to 0. The keys will not be generated as they won't be used."
+ fi
+
+ if [ "${SPL_SIGN_ENABLE}" = "1" ] && [ "${UBOOT_FIT_GENERATE_KEYS}" = "1" ]; then
+
+ # Generate keys only if they don't already exist
+ if [ ! -f "${SPL_SIGN_KEYDIR}/${SPL_SIGN_KEYNAME}".key ] || \
+ [ ! -f "${SPL_SIGN_KEYDIR}/${SPL_SIGN_KEYNAME}".crt ]; then
+
+ # make directory if it does not already exist
+ mkdir -p "${SPL_SIGN_KEYDIR}"
+
+ echo "Generating RSA private key for signing U-Boot fitImage"
+ openssl genrsa ${UBOOT_FIT_KEY_GENRSA_ARGS} -out \
+ "${SPL_SIGN_KEYDIR}/${SPL_SIGN_KEYNAME}".key \
+ "${UBOOT_FIT_SIGN_NUMBITS}"
+
+ echo "Generating certificate for signing U-Boot fitImage"
+ openssl req ${FIT_KEY_REQ_ARGS} "${UBOOT_FIT_KEY_SIGN_PKCS}" \
+ -key "${SPL_SIGN_KEYDIR}/${SPL_SIGN_KEYNAME}".key \
+ -out "${SPL_SIGN_KEYDIR}/${SPL_SIGN_KEYNAME}".crt
+ fi
+ fi
+
+}
+
+addtask generate_rsa_keys before do_uboot_assemble_fitimage after do_compile
+
+# Create a ITS file for the U-boot FIT, for use when
+# we want to sign it so that the SPL can verify it
+uboot_fitimage_assemble() {
+ uboot_its="${1}"
+ uboot_nodtb_bin="${2}"
+ uboot_dtb="${3}"
+ uboot_bin="${4}"
+ spl_dtb="${5}"
+ uboot_csum="${UBOOT_FIT_HASH_ALG}"
+ uboot_sign_algo="${UBOOT_FIT_SIGN_ALG}"
+ uboot_sign_keyname="${SPL_SIGN_KEYNAME}"
+
+ rm -f ${uboot_its} ${uboot_bin}
+
+ # First we create the ITS script
+ cat << EOF >> ${uboot_its}
+/dts-v1/;
+
+/ {
+ description = "${UBOOT_FIT_DESC}";
+ #address-cells = <1>;
+
+ images {
+ uboot {
+ description = "U-Boot image";
+ data = /incbin/("${uboot_nodtb_bin}");
+ type = "standalone";
+ os = "u-boot";
+ arch = "${UBOOT_ARCH}";
+ compression = "none";
+ load = <${UBOOT_LOADADDRESS}>;
+ entry = <${UBOOT_ENTRYPOINT}>;
+EOF
+
+ if [ "${SPL_SIGN_ENABLE}" = "1" ] ; then
+ cat << EOF >> ${uboot_its}
+ signature {
+ algo = "${uboot_csum},${uboot_sign_algo}";
+ key-name-hint = "${uboot_sign_keyname}";
+ };
+EOF
+ fi
+
+ cat << EOF >> ${uboot_its}
+ };
+ fdt {
+ description = "U-Boot FDT";
+ data = /incbin/("${uboot_dtb}");
+ type = "flat_dt";
+ arch = "${UBOOT_ARCH}";
+ compression = "none";
+EOF
+
+ if [ "${SPL_SIGN_ENABLE}" = "1" ] ; then
+ cat << EOF >> ${uboot_its}
+ signature {
+ algo = "${uboot_csum},${uboot_sign_algo}";
+ key-name-hint = "${uboot_sign_keyname}";
+ };
+EOF
+ fi
+
+ cat << EOF >> ${uboot_its}
+ };
+ };
+
+ configurations {
+ default = "conf";
+ conf {
+ description = "Boot with signed U-Boot FIT";
+ loadables = "uboot";
+ fdt = "fdt";
+ };
+ };
+};
+EOF
+
+ #
+ # Assemble the U-boot FIT image
+ #
+ ${UBOOT_MKIMAGE} \
+ ${@'-D "${SPL_MKIMAGE_DTCOPTS}"' if len('${SPL_MKIMAGE_DTCOPTS}') else ''} \
+ -f ${uboot_its} \
+ ${uboot_bin}
+
+ if [ "${SPL_SIGN_ENABLE}" = "1" ] ; then
+ #
+ # Sign the U-boot FIT image and add public key to SPL dtb
+ #
+ ${UBOOT_MKIMAGE_SIGN} \
+ ${@'-D "${SPL_MKIMAGE_DTCOPTS}"' if len('${SPL_MKIMAGE_DTCOPTS}') else ''} \
+ -F -k "${SPL_SIGN_KEYDIR}" \
+ -K "${spl_dtb}" \
+ -r ${uboot_bin} \
+ ${SPL_MKIMAGE_SIGN_ARGS}
+ fi
+
+}
+
+do_uboot_assemble_fitimage() {
+ # This function runs in KERNEL_PN context. The reason for that is that we need to
+ # support the scenario where UBOOT_SIGN_ENABLE is placing the Kernel fitImage's
+ # pubkey in the u-boot.dtb file, so that we can use it when building the U-Boot
+ # fitImage itself.
+ if [ "${UBOOT_FITIMAGE_ENABLE}" = "1" ] && \
+ [ -n "${SPL_DTB_BINARY}" -a "${PN}" = "${KERNEL_PN}" ] ; then
+ if [ "${UBOOT_SIGN_ENABLE}" != "1" ]; then
+ # If we're not signing the Kernel fitImage, that means
+ # we need to copy the u-boot.dtb from staging ourselves
+ cp -P ${STAGING_DATADIR}/u-boot*.dtb ${B}
fi
+ # As we are in the kernel context, we need to copy u-boot-spl.dtb from staging first.
+ # Unfortunately, need to glob on top of ${SPL_DTB_BINARY} since _IMAGE and _SYMLINK
+ # will contain U-boot's PV
+ # Similarly, we need to get the filename for the 'stub' u-boot-fitimage + its in
+ # staging so that we can use it for creating the image with the correct filename
+ # in the KERNEL_PN context.
+ # As for the u-boot.dtb (with fitimage's pubkey), it should come from the dependent
+ # do_assemble_fitimage task
+ cp -P ${STAGING_DATADIR}/u-boot-spl*.dtb ${B}
+ cp -P ${STAGING_DATADIR}/u-boot-nodtb*.bin ${B}
+ rm -rf ${B}/u-boot-fitImage-* ${B}/u-boot-its-*
+ kernel_uboot_fitimage_name=`basename ${STAGING_DATADIR}/u-boot-fitImage-*`
+ kernel_uboot_its_name=`basename ${STAGING_DATADIR}/u-boot-its-*`
+ cd ${B}
+ uboot_fitimage_assemble ${kernel_uboot_its_name} ${UBOOT_NODTB_BINARY} \
+ ${UBOOT_DTB_BINARY} ${kernel_uboot_fitimage_name} \
+ ${SPL_DTB_BINARY}
fi
}
+addtask uboot_assemble_fitimage before do_deploy after do_compile
+
do_deploy_prepend_pn-${UBOOT_PN}() {
- if [ "${UBOOT_SIGN_ENABLE}" = "1" -a -n "${UBOOT_DTB_BINARY}" ]; then
+ if [ "${UBOOT_SIGN_ENABLE}" = "1" -a -n "${UBOOT_DTB_BINARY}" ] ; then
concat_dtb
fi
+
+ if [ "${UBOOT_FITIMAGE_ENABLE}" = "1" ] ; then
+ # Deploy the u-boot-nodtb binary and symlinks...
+ if [ -f "${SPL_DIR}/${SPL_NODTB_BINARY}" ] ; then
+ echo "Copying u-boot-nodtb binary..."
+ install -m 0644 ${SPL_DIR}/${SPL_NODTB_BINARY} ${DEPLOYDIR}/${SPL_NODTB_IMAGE}
+ ln -sf ${SPL_NODTB_IMAGE} ${DEPLOYDIR}/${SPL_NODTB_SYMLINK}
+ ln -sf ${SPL_NODTB_IMAGE} ${DEPLOYDIR}/${SPL_NODTB_BINARY}
+ fi
+
+
+ # We only deploy the symlinks to the uboot-fitImage and uboot-its
+ # images, as the KERNEL_PN will take care of deploying the real file
+ ln -sf ${UBOOT_FITIMAGE_IMAGE} ${DEPLOYDIR}/${UBOOT_FITIMAGE_BINARY}
+ ln -sf ${UBOOT_FITIMAGE_IMAGE} ${DEPLOYDIR}/${UBOOT_FITIMAGE_SYMLINK}
+ ln -sf ${UBOOT_ITS_IMAGE} ${DEPLOYDIR}/${UBOOT_ITS}
+ ln -sf ${UBOOT_ITS_IMAGE} ${DEPLOYDIR}/${UBOOT_ITS_SYMLINK}
+ fi
+
+ if [ "${SPL_SIGN_ENABLE}" = "1" -a -n "${SPL_DTB_BINARY}" ] ; then
+ concat_spl_dtb
+ fi
+
+
+}
+
+do_deploy_append_pn-${UBOOT_PN}() {
+ # If we're creating a u-boot fitImage, point u-boot.bin
+ # symlink since it might get used by image recipes
+ if [ "${UBOOT_FITIMAGE_ENABLE}" = "1" ] ; then
+ ln -sf ${UBOOT_FITIMAGE_IMAGE} ${DEPLOYDIR}/${UBOOT_BINARY}
+ ln -sf ${UBOOT_FITIMAGE_IMAGE} ${DEPLOYDIR}/${UBOOT_SYMLINK}
+ fi
}
python () {
- if d.getVar('UBOOT_SIGN_ENABLE') == '1' and d.getVar('PN') == d.getVar('UBOOT_PN') and d.getVar('UBOOT_DTB_BINARY'):
- kernel_pn = d.getVar('PREFERRED_PROVIDER_virtual/kernel')
+ if ( (d.getVar('UBOOT_SIGN_ENABLE') == '1'
+ or d.getVar('UBOOT_FITIMAGE_ENABLE') == '1')
+ and d.getVar('PN') == d.getVar('UBOOT_PN')
+ and d.getVar('UBOOT_DTB_BINARY')):
# Make "bitbake u-boot -cdeploy" deploys the signed u-boot.dtb
- d.appendVarFlag('do_deploy', 'depends', ' %s:do_deploy' % kernel_pn)
+ # and/or the U-Boot fitImage
+ d.appendVarFlag('do_deploy', 'depends', ' %s:do_deploy' % d.getVar('KERNEL_PN'))
+
+ if d.getVar('UBOOT_FITIMAGE_ENABLE') == '1' and d.getVar('PN') == d.getVar('KERNEL_PN'):
+ # As the U-Boot fitImage is created by the KERNEL_PN, we need
+ # to make sure that the u-boot-spl.dtb and u-boot-spl-nodtb.bin
+ # files are in the staging dir for it's use
+ d.appendVarFlag('do_uboot_assemble_fitimage', 'depends', ' %s:do_populate_sysroot' % d.getVar('UBOOT_PN'))
+
+ # If the Kernel fitImage is being signed, we need to
+ # create the U-Boot fitImage after it
+ if d.getVar('UBOOT_SIGN_ENABLE') == '1':
+ d.appendVarFlag('do_uboot_assemble_fitimage', 'depends', ' %s:do_assemble_fitimage' % d.getVar('KERNEL_PN'))
+ d.appendVarFlag('do_uboot_assemble_fitimage', 'depends', ' %s:do_assemble_fitimage_initramfs' % d.getVar('KERNEL_PN'))
+
}
diff --git a/poky/meta/conf/bitbake.conf b/poky/meta/conf/bitbake.conf
index ecd4d1638..385fc7dd5 100644
--- a/poky/meta/conf/bitbake.conf
+++ b/poky/meta/conf/bitbake.conf
@@ -476,7 +476,7 @@ export PATH
# Build utility info.
##################################################################
-# Directory where host tools are copied
+# Directory with symlinks to host tools used by build
HOSTTOOLS_DIR = "${TMPDIR}/hosttools"
# Tools needed to run builds with OE-Core
@@ -541,7 +541,10 @@ export BUILD_AR = "${BUILD_PREFIX}ar"
export BUILD_AS = "${BUILD_PREFIX}as ${BUILD_AS_ARCH}"
export BUILD_RANLIB = "${BUILD_PREFIX}ranlib"
export BUILD_STRIP = "${BUILD_PREFIX}strip"
+BUILD_OBJCOPY = "${BUILD_PREFIX}objcopy"
+BUILD_OBJDUMP = "${BUILD_PREFIX}objdump"
export BUILD_NM = "${BUILD_PREFIX}nm"
+BUILD_READELF = "${BUILD_PREFIX}readelf"
export MAKE = "make"
EXTRA_OEMAKE = ""
@@ -807,6 +810,10 @@ XZ_THREADS ?= "${@oe.utils.cpu_count(at_least=2)}"
XZ_DEFAULTS ?= "--memlimit=${XZ_MEMLIMIT} --threads=${XZ_THREADS}"
XZ_DEFAULTS[vardepsexclude] += "XZ_MEMLIMIT XZ_THREADS"
+# Limit the number of threads that OpenMP libraries will use. Otherwise they
+# may fallback to using all CPUs
+export OMP_NUM_THREADS = "${BB_NUMBER_THREADS}"
+
##################################################################
# Magic Cookie for SANITY CHECK
##################################################################
@@ -888,7 +895,8 @@ BB_HASHEXCLUDE_COMMON ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH BBSERVER DL_DI
WARN_QA ERROR_QA WORKDIR STAMPCLEAN PKGDATA_DIR BUILD_ARCH SSTATE_PKGARCH \
BB_WORKERCONTEXT BB_LIMITEDDEPS BB_UNIHASH extend_recipe_sysroot DEPLOY_DIR \
SSTATE_HASHEQUIV_METHOD SSTATE_HASHEQUIV_REPORT_TASKDATA \
- SSTATE_HASHEQUIV_OWNER CCACHE_TOP_DIR BB_HASHSERVE GIT_CEILING_DIRECTORIES"
+ SSTATE_HASHEQUIV_OWNER CCACHE_TOP_DIR BB_HASHSERVE GIT_CEILING_DIRECTORIES \
+ OMP_NUM_THREADS"
BB_HASHBASE_WHITELIST ?= "${BB_HASHEXCLUDE_COMMON} PSEUDO_IGNORE_PATHS BUILDHISTORY_DIR SSTATE_DIR "
BB_HASHCONFIG_WHITELIST ?= "${BB_HASHEXCLUDE_COMMON} DATE TIME SSH_AGENT_PID \
SSH_AUTH_SOCK PSEUDO_BUILD BB_ENV_EXTRAWHITE DISABLE_SANITY_CHECKS \
diff --git a/poky/meta/conf/distro/include/maintainers.inc b/poky/meta/conf/distro/include/maintainers.inc
index 9093f2d7f..627633185 100644
--- a/poky/meta/conf/distro/include/maintainers.inc
+++ b/poky/meta/conf/distro/include/maintainers.inc
@@ -224,7 +224,6 @@ RECIPE_MAINTAINER_pn-go-binary-native = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-go-cross-${TUNE_PKGARCH} = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-go-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-go-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-go-dep = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
RECIPE_MAINTAINER_pn-go-helloworld = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-go-native = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-go-runtime = "Khem Raj <raj.khem@gmail.com>"
@@ -723,6 +722,7 @@ RECIPE_MAINTAINER_pn-update-rc.d = "Ross Burton <ross.burton@arm.com>"
RECIPE_MAINTAINER_pn-usbinit = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER_pn-usbutils = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER_pn-util-linux = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER_pn-util-linux-libuuid = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-util-macros = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-v86d = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER_pn-vala = "Alexander Kanavin <alex.kanavin@gmail.com>"
@@ -798,6 +798,7 @@ RECIPE_MAINTAINER_pn-xtrans = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-xuser-account = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-xvinfo = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-xwininfo = "Armin Kuster <akuster808@gmail.com>"
+RECIPE_MAINTAINER_pn-xxhash = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER_pn-xz = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-zip = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-zlib = "Denys Dmytriyenko <denis@denix.org>"
diff --git a/poky/meta/conf/distro/include/ptest-packagelists.inc b/poky/meta/conf/distro/include/ptest-packagelists.inc
index ce13368c2..e0a876dbd 100644
--- a/poky/meta/conf/distro/include/ptest-packagelists.inc
+++ b/poky/meta/conf/distro/include/ptest-packagelists.inc
@@ -60,6 +60,7 @@ PTESTS_FAST_remove_mips64 = "qemu-ptest"
# bash-ptest \ # Test outcomes are non-deterministic by design
# ifupdown-ptest \ # Tested separately in lib/oeqa/selftest/cases/imagefeatures.py
# mdadm-ptest \ # Tests rely on non-deterministic sleep() amounts
+# libinput-ptest \ # Tests need an unloaded system to be reliable
#"
PTESTS_SLOW = "\
@@ -72,7 +73,6 @@ PTESTS_SLOW = "\
glib-2.0-ptest \
gstreamer1.0-ptest \
libevent-ptest \
- libinput-ptest \
lttng-tools-ptest \
openssh-ptest \
openssl-ptest \
diff --git a/poky/meta/conf/image-uefi.conf b/poky/meta/conf/image-uefi.conf
index 882a0e720..6ef011e23 100644
--- a/poky/meta/conf/image-uefi.conf
+++ b/poky/meta/conf/image-uefi.conf
@@ -14,6 +14,8 @@ EFI_ARCH_x86 = "ia32"
EFI_ARCH_x86-64 = "x64"
EFI_ARCH_aarch64 = "aa64"
EFI_ARCH_arm = "arm"
+EFI_ARCH_riscv32 = "riscv32"
+EFI_ARCH_riscv64 = "riscv64"
# Determine name of bootloader image
EFI_BOOT_IMAGE ?= "boot${EFI_ARCH}.efi"
diff --git a/poky/meta/conf/layer.conf b/poky/meta/conf/layer.conf
index cda37c33b..5210fd461 100644
--- a/poky/meta/conf/layer.conf
+++ b/poky/meta/conf/layer.conf
@@ -7,12 +7,12 @@ BBFILE_COLLECTIONS += "core"
BBFILE_PATTERN_core = "^${LAYERDIR}/"
BBFILE_PRIORITY_core = "5"
-LAYERSERIES_CORENAMES = "gatesgarth"
+LAYERSERIES_CORENAMES = "hardknott"
# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
LAYERVERSION_core = "12"
-LAYERSERIES_COMPAT_core = "gatesgarth"
+LAYERSERIES_COMPAT_core = "hardknott"
BBLAYERS_LAYERINDEX_NAME_core = "openembedded-core"
diff --git a/poky/meta/conf/machine/include/powerpc/arch-powerpc64.inc b/poky/meta/conf/machine/include/powerpc/arch-powerpc64.inc
index cf5c3ef8e..467abc5fa 100644
--- a/poky/meta/conf/machine/include/powerpc/arch-powerpc64.inc
+++ b/poky/meta/conf/machine/include/powerpc/arch-powerpc64.inc
@@ -10,9 +10,6 @@ TUNE_ARCH .= "${@bb.utils.contains('TUNE_FEATURES', [ 'm64' ], 'powerpc64${ENDIA
# musl only supports elfv2 ABI for ppc64
TUNE_CCARGS .= "${@['', ' -mabi=elfv2']['libc-musl' in d.getVar('OVERRIDES').split(':')]}"
-# user mode qemu doesn't support ppc64
-MACHINE_FEATURES_BACKFILL_CONSIDERED_append = " ${@bb.utils.contains('TUNE_FEATURES', 'm64', 'qemu-usermode', '', d)}"
-
AVAILTUNES += "powerpc64 powerpc64le"
TUNE_FEATURES_tune-powerpc64 = "m64 fpu-hard bigendian"
diff --git a/poky/meta/conf/machine/include/qemuboot-mips.inc b/poky/meta/conf/machine/include/qemuboot-mips.inc
index 230f032c5..4954f3068 100644
--- a/poky/meta/conf/machine/include/qemuboot-mips.inc
+++ b/poky/meta/conf/machine/include/qemuboot-mips.inc
@@ -5,4 +5,4 @@ QB_KERNEL_CMDLINE_APPEND = "console=ttyS0 console=tty"
QB_OPT_APPEND = "-usb -device usb-tablet"
# For graphics to work we need to define the VGA device as well as the necessary USB devices
-QB_OPT_APPEND += "-vga std"
+QB_GRAPHICS = "-vga std"
diff --git a/poky/meta/conf/machine/include/riscv/qemuriscv.inc b/poky/meta/conf/machine/include/riscv/qemuriscv.inc
index 47d7e9b17..428d28bde 100644
--- a/poky/meta/conf/machine/include/riscv/qemuriscv.inc
+++ b/poky/meta/conf/machine/include/riscv/qemuriscv.inc
@@ -34,3 +34,5 @@ QB_NETWORK_DEVICE = "-device virtio-net-device,netdev=net0,mac=@MAC@"
QB_ROOTFS_OPT = "-drive id=disk0,file=@ROOTFS@,if=none,format=raw -device virtio-blk-device,drive=disk0"
QB_SERIAL_OPT = "-device virtio-serial-device -chardev null,id=virtcon -device virtconsole,chardev=virtcon"
QB_TCPSERIAL_OPT = " -device virtio-serial-device -chardev socket,id=virtcon,port=@PORT@,host=127.0.0.1 -device virtconsole,chardev=virtcon"
+QB_GRAPHICS = "-device bochs-display"
+QB_OPT_APPEND = "-device virtio-mouse-pci -device virtio-keyboard-pci"
diff --git a/poky/meta/conf/machine/include/tune-cortexa32.inc b/poky/meta/conf/machine/include/tune-cortexa32.inc
index e86de6ccb..b9ae2b1c5 100644
--- a/poky/meta/conf/machine/include/tune-cortexa32.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa32.inc
@@ -9,9 +9,9 @@ require conf/machine/include/arm/arch-armv8a.inc
AVAILTUNES += "cortexa32 cortexa32-crypto"
ARMPKGARCH_tune-cortexa32 = "cortexa32"
ARMPKGARCH_tune-cortexa32-crypto = "cortexa32"
-TUNE_FEATURES_tune-cortexa32 = "armv8a cortexa32 crc"
+TUNE_FEATURES_tune-cortexa32 = "armv8a cortexa32 crc callconvention-hard neon"
TUNE_FEATURES_tune-cortexa32-crypto = "${TUNE_FEATURES_tune-cortexa32} crypto"
-PACKAGE_EXTRA_ARCHS_tune-cortexa32 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa32"
-PACKAGE_EXTRA_ARCHS_tune-cortexa32-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa32 cortexa32-crypto"
+PACKAGE_EXTRA_ARCHS_tune-cortexa32 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa32 cortexa32hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa32-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa32 cortexa32hf-neon cortexa32hf-neon-crypto"
BASE_LIB_tune-cortexa32 = "lib"
BASE_LIB_tune-cortexa32-crypto = "lib"
diff --git a/poky/meta/conf/machine/qemuarm.conf b/poky/meta/conf/machine/qemuarm.conf
index 257cfa3e6..e5ec4cc06 100644
--- a/poky/meta/conf/machine/qemuarm.conf
+++ b/poky/meta/conf/machine/qemuarm.conf
@@ -17,10 +17,10 @@ QB_SYSTEM_NAME = "qemu-system-arm"
QB_MACHINE = "-machine virt,highmem=off"
QB_CPU = "-cpu cortex-a15"
# Standard Serial console
-QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0 vmalloc=256"
+QB_KERNEL_CMDLINE_APPEND = "vmalloc=256"
# For graphics to work we need to define the VGA device as well as the necessary USB devices
-QB_OPT_APPEND = "-device VGA,edid=on"
-QB_OPT_APPEND += "-device qemu-xhci -device usb-tablet -device usb-kbd"
+QB_GRAPHICS = "-device VGA,edid=on"
+QB_OPT_APPEND = "-device qemu-xhci -device usb-tablet -device usb-kbd"
# Virtio Networking support
QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no"
QB_NETWORK_DEVICE = "-device virtio-net-device,netdev=net0,mac=@MAC@"
diff --git a/poky/meta/conf/machine/qemuarm64.conf b/poky/meta/conf/machine/qemuarm64.conf
index 2f61eb0ae..51f7ecdcf 100644
--- a/poky/meta/conf/machine/qemuarm64.conf
+++ b/poky/meta/conf/machine/qemuarm64.conf
@@ -17,11 +17,9 @@ QB_SYSTEM_NAME = "qemu-system-aarch64"
QB_MACHINE = "-machine virt"
QB_CPU = "-cpu cortex-a57"
QB_CPU_KVM = "-cpu host -machine gic-version=3"
-# Standard Serial console
-QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0"
# For graphics to work we need to define the VGA device as well as the necessary USB devices
-QB_OPT_APPEND = "-device VGA,edid=on"
-QB_OPT_APPEND += "-device qemu-xhci -device usb-tablet -device usb-kbd"
+QB_GRAPHICS = "-device VGA,edid=on"
+QB_OPT_APPEND = "-device qemu-xhci -device usb-tablet -device usb-kbd"
# Virtio Networking support
QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no"
QB_NETWORK_DEVICE = "-device virtio-net-device,netdev=net0,mac=@MAC@"
diff --git a/poky/meta/conf/machine/qemuarmv5.conf b/poky/meta/conf/machine/qemuarmv5.conf
index dfe2a8957..7050bae08 100644
--- a/poky/meta/conf/machine/qemuarmv5.conf
+++ b/poky/meta/conf/machine/qemuarmv5.conf
@@ -12,7 +12,7 @@ SERIAL_CONSOLES ?= "115200;ttyAMA0 115200;ttyAMA1"
# For runqemu
QB_SYSTEM_NAME = "qemu-system-arm"
QB_MACHINE = "-machine versatilepb"
-QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0,115200 console=tty vmalloc=256"
+QB_KERNEL_CMDLINE_APPEND = "vmalloc=256"
QB_OPT_APPEND = "-usb -device usb-tablet"
PREFERRED_VERSION_linux-yocto ??= "5.10%"
QB_DTB = "${@oe.utils.version_less_or_equal('PREFERRED_VERSION_linux-yocto', '4.7', '', 'zImage-versatile-pb.dtb', d)}"
diff --git a/poky/meta/conf/machine/qemuppc64.conf b/poky/meta/conf/machine/qemuppc64.conf
new file mode 100644
index 000000000..0682e752b
--- /dev/null
+++ b/poky/meta/conf/machine/qemuppc64.conf
@@ -0,0 +1,24 @@
+#@TYPE: Machine
+#@NAME: QEMU PPC64 machine
+#@DESCRIPTION: Machine configuration for running a PPC system on QEMU
+
+require conf/machine/include/qemu.inc
+require conf/machine/include/tune-power9.inc
+
+KERNEL_IMAGETYPE = "vmlinux"
+
+SERIAL_CONSOLES ?= "115200;hvc0"
+
+# For runqemu
+QB_SYSTEM_NAME = "qemu-system-ppc64"
+QB_MACHINE = "-machine pseries"
+QB_CPU = "-cpu POWER9"
+QB_KERNEL_CMDLINE_APPEND = "console=hvc0"
+#QB_OPT_APPEND += "-device qemu-xhci -device usb-tablet -device usb-kbd"
+QB_OPT_APPEND = "-usb -device usb-tablet"
+
+#prelink broken on ppc64
+#USER_CLASSES_remove = "image-prelink"
+#IMAGE_PREPROCESS_COMMAND_remove = "prelink_image;"
+
+MACHINE_EXTRA_RRECOMMENDS += " kernel-modules"
diff --git a/poky/meta/conf/machine/qemuriscv32.conf b/poky/meta/conf/machine/qemuriscv32.conf
new file mode 100644
index 000000000..d3858dc05
--- /dev/null
+++ b/poky/meta/conf/machine/qemuriscv32.conf
@@ -0,0 +1,16 @@
+#@TYPE: Machine
+#@NAME: generic riscv32 machine
+#@DESCRIPTION: Machine configuration for running a generic riscv32
+
+require conf/machine/include/riscv/qemuriscv.inc
+
+DEFAULTTUNE = "riscv32"
+
+PREFERRED_VERSION_openocd-native = "riscv"
+PREFERRED_VERSION_openocd = "riscv"
+
+XVISOR_PLAT = "riscv/virt32"
+
+EXTRA_IMAGEDEPENDS += "u-boot"
+UBOOT_MACHINE = "qemu-riscv32_smode_defconfig"
+UBOOT_ELF = "u-boot"
diff --git a/poky/meta/files/ext-sdk-prepare.py b/poky/meta/files/ext-sdk-prepare.py
index 163d5e991..d191e5e19 100644
--- a/poky/meta/files/ext-sdk-prepare.py
+++ b/poky/meta/files/ext-sdk-prepare.py
@@ -44,6 +44,23 @@ def main():
sdk_targets = []
else:
sdk_targets = ' '.join(sys.argv[2:]).split()
+
+ prserv = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'conf', 'prserv.inc')
+ if os.path.isfile(prserv):
+ with open(logfile, 'a') as logf:
+ logf.write('Importing PR data...\n')
+
+ ret = run_command_interruptible('bitbake-prserv-tool import %s' % prserv)
+
+ lastlog = get_last_consolelog()
+ if lastlog:
+ with open(lastlog, 'r') as f:
+ for line in f:
+ logf.write(line)
+ if ret:
+ print('ERROR: PR data import failed: error log written to %s' % logfile)
+ return ret
+
if not sdk_targets:
# Just do a parse so the cache is primed
ret = run_command_interruptible('bitbake -p --quiet')
diff --git a/poky/meta/lib/bblayers/create.py b/poky/meta/lib/bblayers/create.py
index 542f31fc8..7ddb777dc 100644
--- a/poky/meta/lib/bblayers/create.py
+++ b/poky/meta/lib/bblayers/create.py
@@ -35,6 +35,7 @@ class CreatePlugin(LayerPlugin):
bb.utils.mkdirhier(conf)
layername = os.path.basename(os.path.normpath(args.layerdir))
+ layerid = args.layerid if args.layerid is not None else layername
# Create the README from templates/README
readme_template = read_template('README').format(layername=layername)
@@ -54,7 +55,7 @@ class CreatePlugin(LayerPlugin):
# Create the layer.conf from templates/layer.conf
layerconf_template = read_template('layer.conf').format(
- layername=layername, priority=args.priority, compat=compat)
+ layerid=layerid, priority=args.priority, compat=compat)
layerconf = os.path.join(conf, 'layer.conf')
with open(layerconf, 'w') as fd:
fd.write(layerconf_template)
@@ -71,7 +72,8 @@ class CreatePlugin(LayerPlugin):
def register_commands(self, sp):
parser_create_layer = self.add_command(sp, 'create-layer', self.do_create_layer, parserecipes=False)
parser_create_layer.add_argument('layerdir', help='Layer directory to create')
- parser_create_layer.add_argument('--priority', '-p', default=6, help='Layer directory to create')
+ parser_create_layer.add_argument('--layerid', '-i', help='Layer id to use if different from layername')
+ parser_create_layer.add_argument('--priority', '-p', default=6, help='Priority of recipes in layer')
parser_create_layer.add_argument('--example-recipe-name', '-e', dest='examplerecipe', default='example', help='Filename of the example recipe')
parser_create_layer.add_argument('--example-recipe-version', '-v', dest='version', default='0.1', help='Version number for the example recipe')
diff --git a/poky/meta/lib/bblayers/templates/layer.conf b/poky/meta/lib/bblayers/templates/layer.conf
index e2eaff434..dddfbf716 100644
--- a/poky/meta/lib/bblayers/templates/layer.conf
+++ b/poky/meta/lib/bblayers/templates/layer.conf
@@ -5,9 +5,9 @@ BBPATH .= ":${{LAYERDIR}}"
BBFILES += "${{LAYERDIR}}/recipes-*/*/*.bb \
${{LAYERDIR}}/recipes-*/*/*.bbappend"
-BBFILE_COLLECTIONS += "{layername}"
-BBFILE_PATTERN_{layername} = "^${{LAYERDIR}}/"
-BBFILE_PRIORITY_{layername} = "{priority}"
+BBFILE_COLLECTIONS += "{layerid}"
+BBFILE_PATTERN_{layerid} = "^${{LAYERDIR}}/"
+BBFILE_PRIORITY_{layerid} = "{priority}"
-LAYERDEPENDS_{layername} = "core"
-LAYERSERIES_COMPAT_{layername} = "{compat}"
+LAYERDEPENDS_{layerid} = "core"
+LAYERSERIES_COMPAT_{layerid} = "{compat}"
diff --git a/poky/meta/lib/oe/copy_buildsystem.py b/poky/meta/lib/oe/copy_buildsystem.py
index 31a84f5b0..d97bf9d1b 100644
--- a/poky/meta/lib/oe/copy_buildsystem.py
+++ b/poky/meta/lib/oe/copy_buildsystem.py
@@ -20,7 +20,7 @@ def _smart_copy(src, dest):
mode = os.stat(src).st_mode
if stat.S_ISDIR(mode):
bb.utils.mkdirhier(dest)
- cmd = "tar --exclude='.git' --xattrs --xattrs-include='*' -chf - -C %s -p . \
+ cmd = "tar --exclude='.git' --exclude='__pycache__' --xattrs --xattrs-include='*' -chf - -C %s -p . \
| tar --xattrs --xattrs-include='*' -xf - -C %s" % (src, dest)
subprocess.check_output(cmd, shell=True, stderr=subprocess.STDOUT)
else:
@@ -259,7 +259,7 @@ def create_locked_sstate_cache(lockedsigs, input_sstate_cache, output_sstate_cac
bb.note('Generating sstate-cache...')
nativelsbstring = d.getVar('NATIVELSBSTRING')
- bb.process.run("gen-lockedsig-cache %s %s %s %s %s" % (lockedsigs, input_sstate_cache, output_sstate_cache, nativelsbstring, filterfile or ''))
+ bb.process.run("PYTHONDONTWRITEBYTECODE=1 gen-lockedsig-cache %s %s %s %s %s" % (lockedsigs, input_sstate_cache, output_sstate_cache, nativelsbstring, filterfile or ''))
if fixedlsbstring and nativelsbstring != fixedlsbstring:
nativedir = output_sstate_cache + '/' + nativelsbstring
if os.path.isdir(nativedir):
@@ -286,7 +286,7 @@ def check_sstate_task_list(d, targets, filteroutfile, cmdprefix='', cwd=None, lo
logparam = '-l %s' % logfile
else:
logparam = ''
- cmd = "%sBB_SETSCENE_ENFORCE=1 PSEUDO_DISABLED=1 oe-check-sstate %s -s -o %s %s" % (cmdprefix, targets, filteroutfile, logparam)
+ cmd = "%sPYTHONDONTWRITEBYTECODE=1 BB_SETSCENE_ENFORCE=1 PSEUDO_DISABLED=1 oe-check-sstate %s -s -o %s %s" % (cmdprefix, targets, filteroutfile, logparam)
env = dict(d.getVar('BB_ORIGENV', False))
env.pop('BUILDDIR', '')
env.pop('BBPATH', '')
diff --git a/poky/meta/lib/oe/cve_check.py b/poky/meta/lib/oe/cve_check.py
index ce755f940..a1d7c292a 100644
--- a/poky/meta/lib/oe/cve_check.py
+++ b/poky/meta/lib/oe/cve_check.py
@@ -11,8 +11,13 @@ _Version = collections.namedtuple(
class Version():
def __init__(self, version, suffix=None):
+
+ suffixes = ["alphabetical", "patch"]
+
if str(suffix) == "alphabetical":
version_pattern = r"""r?v?(?:(?P<release>[0-9]+(?:[-\.][0-9]+)*)(?P<patch>[-_\.]?(?P<patch_l>[a-z]))?(?P<pre>[-_\.]?(?P<pre_l>(rc|alpha|beta|pre|preview|dev))[-_\.]?(?P<pre_v>[0-9]+)?)?)(.*)?"""
+ elif str(suffix) == "patch":
+ version_pattern = r"""r?v?(?:(?P<release>[0-9]+(?:[-\.][0-9]+)*)(?P<patch>[-_\.]?(p|patch)(?P<patch_l>[0-9]+))?(?P<pre>[-_\.]?(?P<pre_l>(rc|alpha|beta|pre|preview|dev))[-_\.]?(?P<pre_v>[0-9]+)?)?)(.*)?"""
else:
version_pattern = r"""r?v?(?:(?P<release>[0-9]+(?:[-\.][0-9]+)*)(?P<pre>[-_\.]?(?P<pre_l>(rc|alpha|beta|pre|preview|dev))[-_\.]?(?P<pre_v>[0-9]+)?)?)(.*)?"""
regex = re.compile(r"^\s*" + version_pattern + r"\s*$", re.VERBOSE | re.IGNORECASE)
@@ -23,7 +28,7 @@ class Version():
self._version = _Version(
release=tuple(int(i) for i in match.group("release").replace("-",".").split(".")),
- patch_l=match.group("patch_l") if str(suffix) == "alphabetical" and match.group("patch_l") else "",
+ patch_l=match.group("patch_l") if str(suffix) in suffixes and match.group("patch_l") else "",
pre_l=match.group("pre_l"),
pre_v=match.group("pre_v")
)
diff --git a/poky/meta/lib/oe/rootfs.py b/poky/meta/lib/oe/rootfs.py
index 249c685dc..5f8102304 100644
--- a/poky/meta/lib/oe/rootfs.py
+++ b/poky/meta/lib/oe/rootfs.py
@@ -250,13 +250,11 @@ class Rootfs(object, metaclass=ABCMeta):
def _uninstall_unneeded(self):
- # Remove unneeded init script symlinks
+ # Remove the run-postinsts package if no delayed postinsts are found
delayed_postinsts = self._get_delayed_postinsts()
if delayed_postinsts is None:
- if os.path.exists(self.d.expand("${IMAGE_ROOTFS}${sysconfdir}/init.d/run-postinsts")):
- self._exec_shell_cmd(["update-rc.d", "-f", "-r",
- self.d.getVar('IMAGE_ROOTFS'),
- "run-postinsts", "remove"])
+ if os.path.exists(self.d.expand("${IMAGE_ROOTFS}${sysconfdir}/init.d/run-postinsts")) or os.path.exists(self.d.expand("${IMAGE_ROOTFS}${systemd_unitdir}/system/run-postinsts.service")):
+ self.pm.remove(["run-postinsts"])
image_rorfs = bb.utils.contains("IMAGE_FEATURES", "read-only-rootfs",
True, False, self.d)
diff --git a/poky/meta/lib/oe/utils.py b/poky/meta/lib/oe/utils.py
index 9a2187e36..a84039f58 100644
--- a/poky/meta/lib/oe/utils.py
+++ b/poky/meta/lib/oe/utils.py
@@ -536,3 +536,34 @@ class ImageQAFailed(Exception):
def sh_quote(string):
import shlex
return shlex.quote(string)
+
+def directory_size(root, blocksize=4096):
+ """
+ Calculate the size of the directory, taking into account hard links,
+ rounding up every size to multiples of the blocksize.
+ """
+ def roundup(size):
+ """
+ Round the size up to the nearest multiple of the block size.
+ """
+ import math
+ return math.ceil(size / blocksize) * blocksize
+
+ def getsize(filename):
+ """
+ Get the size of the filename, not following symlinks, taking into
+ account hard links.
+ """
+ stat = os.lstat(filename)
+ if stat.st_ino not in inodes:
+ inodes.add(stat.st_ino)
+ return stat.st_size
+ else:
+ return 0
+
+ inodes = set()
+ total = 0
+ for root, dirs, files in os.walk(root):
+ total += sum(roundup(getsize(os.path.join(root, name))) for name in files)
+ total += roundup(getsize(root))
+ return total
diff --git a/poky/meta/lib/oeqa/core/target/qemu.py b/poky/meta/lib/oeqa/core/target/qemu.py
index 0f29414df..792efca1f 100644
--- a/poky/meta/lib/oeqa/core/target/qemu.py
+++ b/poky/meta/lib/oeqa/core/target/qemu.py
@@ -21,7 +21,7 @@ class OEQemuTarget(OESSHTarget):
port=None, machine='', rootfs='', kernel='', kvm=False, slirp=False,
dump_dir='', dump_host_cmds='', display='', bootlog='',
tmpdir='', dir_image='', boottime=60, serial_ports=2,
- boot_patterns = defaultdict(str), ovmf=False, **kwargs):
+ boot_patterns = defaultdict(str), ovmf=False, tmpfsdir=None, **kwargs):
super(OEQemuTarget, self).__init__(logger, None, server_ip, timeout,
user, port)
@@ -42,7 +42,7 @@ class OEQemuTarget(OESSHTarget):
use_kvm=kvm, use_slirp=slirp, dump_dir=dump_dir,
dump_host_cmds=dump_host_cmds, logger=logger,
serial_ports=serial_ports, boot_patterns = boot_patterns,
- use_ovmf=ovmf)
+ use_ovmf=ovmf, tmpfsdir=tmpfsdir)
dump_target_cmds = kwargs.get("testimage_dump_target")
self.target_dumper = TargetDumper(dump_target_cmds, dump_dir, self.runner)
self.target_dumper.create_dir("qemu")
diff --git a/poky/meta/lib/oeqa/core/utils/concurrencytest.py b/poky/meta/lib/oeqa/core/utils/concurrencytest.py
index b2eb68fb0..161a2f6e9 100644
--- a/poky/meta/lib/oeqa/core/utils/concurrencytest.py
+++ b/poky/meta/lib/oeqa/core/utils/concurrencytest.py
@@ -48,11 +48,15 @@ _all__ = [
#
class BBThreadsafeForwardingResult(ThreadsafeForwardingResult):
- def __init__(self, target, semaphore, threadnum, totalinprocess, totaltests):
+ def __init__(self, target, semaphore, threadnum, totalinprocess, totaltests, output, finalresult):
super(BBThreadsafeForwardingResult, self).__init__(target, semaphore)
self.threadnum = threadnum
self.totalinprocess = totalinprocess
self.totaltests = totaltests
+ self.buffer = True
+ self.outputbuf = output
+ self.finalresult = finalresult
+ self.finalresult.buffer = True
def _add_result_with_semaphore(self, method, test, *args, **kwargs):
self.semaphore.acquire()
@@ -71,6 +75,8 @@ class BBThreadsafeForwardingResult(ThreadsafeForwardingResult):
test.id())
finally:
self.semaphore.release()
+ self.finalresult._stderr_buffer = io.StringIO(initial_value=self.outputbuf.getvalue().decode("utf-8"))
+ self.finalresult._stdout_buffer = io.StringIO()
super(BBThreadsafeForwardingResult, self)._add_result_with_semaphore(method, test, *args, **kwargs)
class ProxyTestResult:
@@ -190,28 +196,20 @@ class ConcurrentTestSuite(unittest.TestSuite):
self.removefunc = removefunc
def run(self, result):
- tests, totaltests = fork_for_tests(self.processes, self)
+ testservers, totaltests = fork_for_tests(self.processes, self)
try:
threads = {}
queue = Queue()
semaphore = threading.Semaphore(1)
result.threadprogress = {}
- for i, (test, testnum) in enumerate(tests):
+ for i, (testserver, testnum, output) in enumerate(testservers):
result.threadprogress[i] = []
process_result = BBThreadsafeForwardingResult(
ExtraResultsDecoderTestResult(result),
- semaphore, i, testnum, totaltests)
- # Force buffering of stdout/stderr so the console doesn't get corrupted by test output
- # as per default in parent code
- process_result.buffer = True
- # We have to add a buffer object to stdout to keep subunit happy
- process_result._stderr_buffer = io.StringIO()
- process_result._stderr_buffer.buffer = dummybuf(process_result._stderr_buffer)
- process_result._stdout_buffer = io.StringIO()
- process_result._stdout_buffer.buffer = dummybuf(process_result._stdout_buffer)
+ semaphore, i, testnum, totaltests, output, result)
reader_thread = threading.Thread(
- target=self._run_test, args=(test, process_result, queue))
- threads[test] = reader_thread, process_result
+ target=self._run_test, args=(testserver, process_result, queue))
+ threads[testserver] = reader_thread, process_result
reader_thread.start()
while threads:
finished_test = queue.get()
@@ -222,13 +220,13 @@ class ConcurrentTestSuite(unittest.TestSuite):
process_result.stop()
raise
finally:
- for test in tests:
- test[0]._stream.close()
+ for testserver in testservers:
+ testserver[0]._stream.close()
- def _run_test(self, test, process_result, queue):
+ def _run_test(self, testserver, process_result, queue):
try:
try:
- test.run(process_result)
+ testserver.run(process_result)
except Exception:
# The run logic itself failed
case = testtools.ErrorHolder(
@@ -236,10 +234,10 @@ class ConcurrentTestSuite(unittest.TestSuite):
error=sys.exc_info())
case.run(process_result)
finally:
- queue.put(test)
+ queue.put(testserver)
def fork_for_tests(concurrency_num, suite):
- result = []
+ testservers = []
if 'BUILDDIR' in os.environ:
selftestdir = get_test_layer()
@@ -273,10 +271,11 @@ def fork_for_tests(concurrency_num, suite):
newsi = os.open(os.devnull, os.O_RDWR)
os.dup2(newsi, sys.stdin.fileno())
+ # Send stdout/stderr over the stream
+ os.dup2(c2pwrite, sys.stdout.fileno())
+ os.dup2(c2pwrite, sys.stderr.fileno())
+
subunit_client = TestProtocolClient(stream)
- # Force buffering of stdout/stderr so the console doesn't get corrupted by test output
- # as per default in parent code
- subunit_client.buffer = True
subunit_result = AutoTimingTestResultDecorator(subunit_client)
unittest_result = process_suite.run(ExtraResultsEncoderTestResult(subunit_result))
if ourpid != os.getpid():
@@ -306,9 +305,11 @@ def fork_for_tests(concurrency_num, suite):
else:
os.close(c2pwrite)
stream = os.fdopen(c2pread, 'rb', 1)
- test = ProtocolTestCase(stream)
- result.append((test, numtests))
- return result, totaltests
+ # Collect stdout/stderr into an io buffer
+ output = io.BytesIO()
+ testserver = ProtocolTestCase(stream, passthrough=output)
+ testservers.append((testserver, numtests, output))
+ return testservers, totaltests
def partition_tests(suite, count):
# Keep tests from the same class together but allow tests from modules
diff --git a/poky/meta/lib/oeqa/runtime/cases/parselogs.py b/poky/meta/lib/oeqa/runtime/cases/parselogs.py
index a1791b5cc..4714741af 100644
--- a/poky/meta/lib/oeqa/runtime/cases/parselogs.py
+++ b/poky/meta/lib/oeqa/runtime/cases/parselogs.py
@@ -114,6 +114,11 @@ ignore_errors = {
'can\'t handle BAR above 4GB',
'Cannot reserve Legacy IO',
] + common_errors,
+ 'qemuppc64' : [
+ 'vio vio: uevent: failed to send synthetic uevent',
+ 'synth uevent: /devices/vio: failed to send uevent',
+ 'PCI 0000:00 Cannot reserve Legacy IO [io 0x10000-0x10fff]',
+ ] + common_errors,
'qemuarm' : [
'mmci-pl18x: probe of fpga:05 failed with error -22',
'mmci-pl18x: probe of fpga:0b failed with error -22',
diff --git a/poky/meta/lib/oeqa/runtime/cases/weston.py b/poky/meta/lib/oeqa/runtime/cases/weston.py
index a1c718321..b3a7c2776 100644
--- a/poky/meta/lib/oeqa/runtime/cases/weston.py
+++ b/poky/meta/lib/oeqa/runtime/cases/weston.py
@@ -53,7 +53,11 @@ class WestonTest(OERuntimeTestCase):
@OEHasPackage(['wayland-utils'])
def test_wayland_info(self):
- status, output = self.target.run(self.get_weston_command('wayland-info'))
+ if 'systemd' in self.tc.td['VIRTUAL-RUNTIME_init_manager']:
+ command = 'XDG_RUNTIME_DIR=/run wayland-info'
+ else:
+ command = self.get_weston_command('wayland-info')
+ status, output = self.target.run(command)
self.assertEqual(status, 0, msg='wayland-info error: %s' % output)
@OEHasPackage(['weston'])
diff --git a/poky/meta/lib/oeqa/selftest/cases/buildoptions.py b/poky/meta/lib/oeqa/selftest/cases/buildoptions.py
index 3495bee98..20fe8ed8f 100644
--- a/poky/meta/lib/oeqa/selftest/cases/buildoptions.py
+++ b/poky/meta/lib/oeqa/selftest/cases/buildoptions.py
@@ -197,3 +197,9 @@ PREMIRRORS = "\\
bitbake("world --runall fetch")
+
+class Poisoning(OESelftestTestCase):
+ def test_poisoning(self):
+ res = bitbake("poison", ignore_status=True)
+ self.assertNotEqual(res.status, 0)
+ self.assertTrue("is unsafe for cross-compilation" in res.output)
diff --git a/poky/meta/lib/oeqa/selftest/cases/cve_check.py b/poky/meta/lib/oeqa/selftest/cases/cve_check.py
index 3f343a284..d1947baff 100644
--- a/poky/meta/lib/oeqa/selftest/cases/cve_check.py
+++ b/poky/meta/lib/oeqa/selftest/cases/cve_check.py
@@ -34,3 +34,11 @@ class CVECheck(OESelftestTestCase):
self.assertTrue( result ,msg="Failed to compare version with suffix '1.0b' < '1.0r'")
result = Version("1.0b","alphabetical") > Version("1.0","alphabetical")
self.assertTrue( result ,msg="Failed to compare version with suffix '1.0b' > '1.0'")
+
+ # consider the trailing "p" and "patch" as patched released when comparing
+ result = Version("1.0","patch") < Version("1.0p1","patch")
+ self.assertTrue( result ,msg="Failed to compare version with suffix '1.0' < '1.0p1'")
+ result = Version("1.0p2","patch") > Version("1.0p1","patch")
+ self.assertTrue( result ,msg="Failed to compare version with suffix '1.0p2' > '1.0p1'")
+ result = Version("1.0_patch2","patch") < Version("1.0_patch3","patch")
+ self.assertTrue( result ,msg="Failed to compare version with suffix '1.0_patch2' < '1.0_patch3'")
diff --git a/poky/meta/lib/oeqa/selftest/cases/distrodata.py b/poky/meta/lib/oeqa/selftest/cases/distrodata.py
index e1cfc3b62..fbc0c2a98 100644
--- a/poky/meta/lib/oeqa/selftest/cases/distrodata.py
+++ b/poky/meta/lib/oeqa/selftest/cases/distrodata.py
@@ -40,6 +40,42 @@ but their recipes claim otherwise by setting UPSTREAM_VERSION_UNKNOWN. Please re
""" + "\n".join(regressed_successes)
self.assertTrue(len(regressed_failures) == 0 and len(regressed_successes) == 0, msg)
+ def test_missing_homepg(self):
+ """
+ Summary: Test for oe-core recipes that don't have a HOMEPAGE or DESCRIPTION
+ Expected: All oe-core recipes should have a DESCRIPTION entry
+ Expected: All oe-core recipes should have a HOMEPAGE entry except for recipes that are not fetched from external sources.
+ Product: oe-core
+ """
+ with bb.tinfoil.Tinfoil() as tinfoil:
+ tinfoil.prepare(config_only=False)
+ no_description = []
+ no_homepage = []
+ for fn in tinfoil.all_recipe_files(variants=False):
+ if not '/meta/recipes-' in fn:
+ # We are only interested in OE-Core
+ continue
+ rd = tinfoil.parse_recipe_file(fn, appends=False)
+ pn = rd.getVar('BPN')
+ srcfile = rd.getVar('SRC_URI').split()
+ #Since DESCRIPTION defaults to SUMMARY if not set, we are only interested in recipes without DESCRIPTION or SUMMARY
+ if not (rd.getVar('SUMMARY') or rd.getVar('DESCRIPTION')):
+ no_description.append((pn, fn))
+ if not rd.getVar('HOMEPAGE'):
+ if srcfile and srcfile[0].startswith('file') or not rd.getVar('SRC_URI'):
+ # We are only interested in recipes SRC_URI fetched from external sources
+ continue
+ no_homepage.append((pn, fn))
+ if no_homepage:
+ self.fail("""
+The following recipes do not have a HOMEPAGE. Please add an entry for HOMEPAGE in the recipe.
+""" + "\n".join(['%s (%s)' % i for i in no_homepage]))
+
+ if no_description:
+ self.fail("""
+The following recipes do not have a DESCRIPTION. Please add an entry for DESCRIPTION in the recipe.
+""" + "\n".join(['%s (%s)' % i for i in no_description]))
+
def test_maintainers(self):
"""
Summary: Test that oe-core recipes have a maintainer and entries in maintainers list have a recipe
diff --git a/poky/meta/lib/oeqa/selftest/cases/fetch.py b/poky/meta/lib/oeqa/selftest/cases/fetch.py
index 76cbadf2f..67e85d3e4 100644
--- a/poky/meta/lib/oeqa/selftest/cases/fetch.py
+++ b/poky/meta/lib/oeqa/selftest/cases/fetch.py
@@ -2,6 +2,9 @@
# SPDX-License-Identifier: MIT
#
+import tempfile
+import textwrap
+import bb.tinfoil
import oe.path
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import bitbake
@@ -49,3 +52,54 @@ MIRRORS_forcevariable = "git://.*/.* http://downloads.yoctoproject.org/mirror/so
self.write_config(features)
oe.path.remove(dldir, recurse=True)
bitbake("dbus-wait -c fetch -f")
+
+
+class Dependencies(OESelftestTestCase):
+ def write_recipe(self, content):
+ f = tempfile.NamedTemporaryFile(mode="wt", suffix=".bb")
+ f.write(content)
+ f.flush()
+ return f
+
+ def test_dependencies(self):
+ """
+ Verify that the correct dependencies are generated for specific SRC_URI entries.
+ """
+ with bb.tinfoil.Tinfoil() as tinfoil:
+ tinfoil.prepare(config_only=False, quiet=2)
+
+ r = """
+ LICENSE="CLOSED"
+ SRC_URI="http://example.com/tarball.zip"
+ """
+ f = self.write_recipe(textwrap.dedent(r))
+ d = tinfoil.parse_recipe_file(f.name)
+ self.assertIn("wget-native", d.getVarFlag("do_fetch", "depends"))
+ self.assertIn("unzip-native", d.getVarFlag("do_unpack", "depends"))
+
+ # Verify that the downloadfilename overrides the URI
+ r = """
+ LICENSE="CLOSED"
+ SRC_URI="https://example.com/tarball;downloadfilename=something.zip"
+ """
+ f = self.write_recipe(textwrap.dedent(r))
+ d = tinfoil.parse_recipe_file(f.name)
+ self.assertIn("wget-native", d.getVarFlag("do_fetch", "depends"))
+ self.assertIn("unzip-native", d.getVarFlag("do_unpack", "depends") or "")
+
+ r = """
+ LICENSE="CLOSED"
+ SRC_URI="ftp://example.com/tarball.lz"
+ """
+ f = self.write_recipe(textwrap.dedent(r))
+ d = tinfoil.parse_recipe_file(f.name)
+ self.assertIn("wget-native", d.getVarFlag("do_fetch", "depends"))
+ self.assertIn("lzip-native", d.getVarFlag("do_unpack", "depends"))
+
+ r = """
+ LICENSE="CLOSED"
+ SRC_URI="git://example.com/repo"
+ """
+ f = self.write_recipe(textwrap.dedent(r))
+ d = tinfoil.parse_recipe_file(f.name)
+ self.assertIn("git-native", d.getVarFlag("do_fetch", "depends"))
diff --git a/poky/meta/lib/oeqa/selftest/cases/fitimage.py b/poky/meta/lib/oeqa/selftest/cases/fitimage.py
index 02692de82..815ee48c0 100644
--- a/poky/meta/lib/oeqa/selftest/cases/fitimage.py
+++ b/poky/meta/lib/oeqa/selftest/cases/fitimage.py
@@ -231,6 +231,474 @@ UBOOT_MKIMAGE_SIGN_ARGS = "-c 'a smart comment'"
result = runCmd('grep "### uboot-mkimage signing wrapper message" %s/log.do_assemble_fitimage' % tempdir, ignore_status=True)
self.assertEqual(result.status, 0, 'UBOOT_MKIMAGE_SIGN did not work')
+ def test_uboot_fit_image(self):
+ """
+ Summary: Check if Uboot FIT image and Image Tree Source
+ (its) are built and the Image Tree Source has the
+ correct fields.
+ Expected: 1. u-boot-fitImage and u-boot-its can be built
+ 2. The type, load address, entrypoint address and
+ default values of U-boot image are correct in the
+ Image Tree Source. Not all the fields are tested,
+ only the key fields that wont vary between
+ different architectures.
+ Product: oe-core
+ Author: Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com>
+ based on work by Usama Arif <usama.arif@arm.com>
+ """
+ config = """
+# We need at least CONFIG_SPL_LOAD_FIT and CONFIG_SPL_OF_CONTROL set
+MACHINE = "qemuarm"
+UBOOT_MACHINE = "am57xx_evm_defconfig"
+SPL_BINARY = "MLO"
+
+# Enable creation of the U-Boot fitImage
+UBOOT_FITIMAGE_ENABLE = "1"
+
+# (U-boot) fitImage properties
+UBOOT_LOADADDRESS = "0x80080000"
+UBOOT_ENTRYPOINT = "0x80080000"
+UBOOT_FIT_DESC = "A model description"
+
+# Enable creation of Kernel fitImage
+KERNEL_IMAGETYPES += " fitImage "
+KERNEL_CLASSES = " kernel-fitimage"
+UBOOT_SIGN_ENABLE = "1"
+FIT_GENERATE_KEYS = "1"
+UBOOT_SIGN_KEYDIR = "${TOPDIR}/signing-keys"
+UBOOT_SIGN_KEYNAME = "oe-selftest"
+FIT_SIGN_INDIVIDUAL = "1"
+"""
+ self.write_config(config)
+
+ # The U-Boot fitImage is created as part of linux recipe
+ bitbake("virtual/kernel")
+
+ deploy_dir_image = get_bb_var('DEPLOY_DIR_IMAGE')
+ machine = get_bb_var('MACHINE')
+ fitimage_its_path = os.path.join(deploy_dir_image,
+ "u-boot-its-%s" % (machine,))
+ fitimage_path = os.path.join(deploy_dir_image,
+ "u-boot-fitImage-%s" % (machine,))
+
+ self.assertTrue(os.path.exists(fitimage_its_path),
+ "%s image tree source doesn't exist" % (fitimage_its_path))
+ self.assertTrue(os.path.exists(fitimage_path),
+ "%s FIT image doesn't exist" % (fitimage_path))
+
+ # Check that the type, load address, entrypoint address and default
+ # values for kernel and ramdisk in Image Tree Source are as expected.
+ # The order of fields in the below array is important. Not all the
+ # fields are tested, only the key fields that wont vary between
+ # different architectures.
+ its_field_check = [
+ 'description = "A model description";',
+ 'type = "standalone";',
+ 'load = <0x80080000>;',
+ 'entry = <0x80080000>;',
+ 'default = "conf";',
+ 'loadables = "uboot";',
+ 'fdt = "fdt";'
+ ]
+
+ with open(fitimage_its_path) as its_file:
+ field_index = 0
+ for line in its_file:
+ if field_index == len(its_field_check):
+ break
+ if its_field_check[field_index] in line:
+ field_index +=1
+
+ if field_index != len(its_field_check): # if its equal, the test passed
+ self.assertTrue(field_index == len(its_field_check),
+ "Fields in Image Tree Source File %s did not match, error in finding %s"
+ % (fitimage_its_path, its_field_check[field_index]))
+
+ def test_uboot_sign_fit_image(self):
+ """
+ Summary: Check if Uboot FIT image and Image Tree Source
+ (its) are built and the Image Tree Source has the
+ correct fields, in the scenario where the Kernel
+ is also creating/signing it's fitImage.
+ Expected: 1. u-boot-fitImage and u-boot-its can be built
+ 2. The type, load address, entrypoint address and
+ default values of U-boot image are correct in the
+ Image Tree Source. Not all the fields are tested,
+ only the key fields that wont vary between
+ different architectures.
+ Product: oe-core
+ Author: Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com>
+ based on work by Usama Arif <usama.arif@arm.com>
+ """
+ config = """
+# We need at least CONFIG_SPL_LOAD_FIT and CONFIG_SPL_OF_CONTROL set
+MACHINE = "qemuarm"
+UBOOT_MACHINE = "am57xx_evm_defconfig"
+SPL_BINARY = "MLO"
+
+# Enable creation of the U-Boot fitImage
+UBOOT_FITIMAGE_ENABLE = "1"
+
+# (U-boot) fitImage properties
+UBOOT_LOADADDRESS = "0x80080000"
+UBOOT_ENTRYPOINT = "0x80080000"
+UBOOT_FIT_DESC = "A model description"
+KERNEL_IMAGETYPES += " fitImage "
+KERNEL_CLASSES = " kernel-fitimage test-mkimage-wrapper "
+UBOOT_SIGN_ENABLE = "1"
+FIT_GENERATE_KEYS = "1"
+UBOOT_SIGN_KEYDIR = "${TOPDIR}/signing-keys"
+UBOOT_SIGN_KEYNAME = "oe-selftest"
+FIT_SIGN_INDIVIDUAL = "1"
+UBOOT_MKIMAGE_SIGN_ARGS = "-c 'a smart U-Boot comment'"
+"""
+ self.write_config(config)
+
+ # The U-Boot fitImage is created as part of linux recipe
+ bitbake("virtual/kernel")
+
+ deploy_dir_image = get_bb_var('DEPLOY_DIR_IMAGE')
+ machine = get_bb_var('MACHINE')
+ fitimage_its_path = os.path.join(deploy_dir_image,
+ "u-boot-its-%s" % (machine,))
+ fitimage_path = os.path.join(deploy_dir_image,
+ "u-boot-fitImage-%s" % (machine,))
+
+ self.assertTrue(os.path.exists(fitimage_its_path),
+ "%s image tree source doesn't exist" % (fitimage_its_path))
+ self.assertTrue(os.path.exists(fitimage_path),
+ "%s FIT image doesn't exist" % (fitimage_path))
+
+ # Check that the type, load address, entrypoint address and default
+ # values for kernel and ramdisk in Image Tree Source are as expected.
+ # The order of fields in the below array is important. Not all the
+ # fields are tested, only the key fields that wont vary between
+ # different architectures.
+ its_field_check = [
+ 'description = "A model description";',
+ 'type = "standalone";',
+ 'load = <0x80080000>;',
+ 'entry = <0x80080000>;',
+ 'default = "conf";',
+ 'loadables = "uboot";',
+ 'fdt = "fdt";'
+ ]
+
+ with open(fitimage_its_path) as its_file:
+ field_index = 0
+ for line in its_file:
+ if field_index == len(its_field_check):
+ break
+ if its_field_check[field_index] in line:
+ field_index +=1
+
+ if field_index != len(its_field_check): # if its equal, the test passed
+ self.assertTrue(field_index == len(its_field_check),
+ "Fields in Image Tree Source File %s did not match, error in finding %s"
+ % (fitimage_its_path, its_field_check[field_index]))
+
+
+ def test_sign_standalone_uboot_fit_image(self):
+ """
+ Summary: Check if U-Boot FIT image and Image Tree Source (its) are
+ created and signed correctly for the scenario where only
+ the U-Boot proper fitImage is being created and signed.
+ Expected: 1) U-Boot its and FIT image are built successfully
+ 2) Scanning the its file indicates signing is enabled
+ as requested by SPL_SIGN_ENABLE (using keys generated
+ via UBOOT_FIT_GENERATE_KEYS)
+ 3) Dumping the FIT image indicates signature values
+ are present
+ 4) Examination of the do_uboot_assemble_fitimage
+ runfile/logfile indicate that UBOOT_MKIMAGE, UBOOT_MKIMAGE_SIGN
+ and SPL_MKIMAGE_SIGN_ARGS are working as expected.
+ Product: oe-core
+ Author: Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com> based upon
+ work by Paul Eggleton <paul.eggleton@microsoft.com> and
+ Usama Arif <usama.arif@arm.com>
+ """
+ config = """
+# There's no U-boot deconfig with CONFIG_FIT_SIGNATURE yet, so we need at
+# least CONFIG_SPL_LOAD_FIT and CONFIG_SPL_OF_CONTROL set
+MACHINE = "qemuarm"
+UBOOT_MACHINE = "am57xx_evm_defconfig"
+SPL_BINARY = "MLO"
+# The kernel-fitimage class is a dependency even if we're only
+# creating/signing the U-Boot fitImage
+KERNEL_CLASSES = " kernel-fitimage test-mkimage-wrapper "
+# Enable creation and signing of the U-Boot fitImage
+UBOOT_FITIMAGE_ENABLE = "1"
+SPL_SIGN_ENABLE = "1"
+SPL_SIGN_KEYNAME = "spl-oe-selftest"
+SPL_SIGN_KEYDIR = "${TOPDIR}/signing-keys"
+UBOOT_DTB_BINARY = "u-boot.dtb"
+UBOOT_ENTRYPOINT = "0x80000000"
+UBOOT_LOADADDRESS = "0x80000000"
+UBOOT_DTB_LOADADDRESS = "0x82000000"
+UBOOT_ARCH = "arm"
+SPL_MKIMAGE_DTCOPTS = "-I dts -O dtb -p 2000"
+SPL_MKIMAGE_SIGN_ARGS = "-c 'a smart U-Boot comment'"
+UBOOT_EXTLINUX = "0"
+UBOOT_FIT_GENERATE_KEYS = "1"
+UBOOT_FIT_HASH_ALG = "sha256"
+"""
+ self.write_config(config)
+
+ # The U-Boot fitImage is created as part of linux recipe
+ bitbake("virtual/kernel")
+
+ image_type = "core-image-minimal"
+ deploy_dir_image = get_bb_var('DEPLOY_DIR_IMAGE')
+ machine = get_bb_var('MACHINE')
+ fitimage_its_path = os.path.join(deploy_dir_image,
+ "u-boot-its-%s" % (machine,))
+ fitimage_path = os.path.join(deploy_dir_image,
+ "u-boot-fitImage-%s" % (machine,))
+
+ self.assertTrue(os.path.exists(fitimage_its_path),
+ "%s image tree source doesn't exist" % (fitimage_its_path))
+ self.assertTrue(os.path.exists(fitimage_path),
+ "%s FIT image doesn't exist" % (fitimage_path))
+
+ req_itspaths = [
+ ['/', 'images', 'uboot'],
+ ['/', 'images', 'uboot', 'signature'],
+ ['/', 'images', 'fdt'],
+ ['/', 'images', 'fdt', 'signature'],
+ ]
+
+ itspath = []
+ itspaths = []
+ linect = 0
+ sigs = {}
+ with open(fitimage_its_path) as its_file:
+ linect += 1
+ for line in its_file:
+ line = line.strip()
+ if line.endswith('};'):
+ itspath.pop()
+ elif line.endswith('{'):
+ itspath.append(line[:-1].strip())
+ itspaths.append(itspath[:])
+ elif itspath and itspath[-1] == 'signature':
+ itsdotpath = '.'.join(itspath)
+ if not itsdotpath in sigs:
+ sigs[itsdotpath] = {}
+ if not '=' in line or not line.endswith(';'):
+ self.fail('Unexpected formatting in %s sigs section line %d:%s' % (fitimage_its_path, linect, line))
+ key, value = line.split('=', 1)
+ sigs[itsdotpath][key.rstrip()] = value.lstrip().rstrip(';')
+
+ for reqpath in req_itspaths:
+ if not reqpath in itspaths:
+ self.fail('Missing section in its file: %s' % reqpath)
+
+ reqsigvalues_image = {
+ 'algo': '"sha256,rsa2048"',
+ 'key-name-hint': '"spl-oe-selftest"',
+ }
+
+ for itspath, values in sigs.items():
+ reqsigvalues = reqsigvalues_image
+ for reqkey, reqvalue in reqsigvalues.items():
+ value = values.get(reqkey, None)
+ if value is None:
+ self.fail('Missing key "%s" in its file signature section %s' % (reqkey, itspath))
+ self.assertEqual(value, reqvalue)
+
+ # Dump the image to see if it really got signed
+ bitbake("u-boot-tools-native -c addto_recipe_sysroot")
+ result = runCmd('bitbake -e u-boot-tools-native | grep ^RECIPE_SYSROOT_NATIVE=')
+ recipe_sysroot_native = result.output.split('=')[1].strip('"')
+ dumpimage_path = os.path.join(recipe_sysroot_native, 'usr', 'bin', 'dumpimage')
+ result = runCmd('%s -l %s' % (dumpimage_path, fitimage_path))
+ in_signed = None
+ signed_sections = {}
+ for line in result.output.splitlines():
+ if line.startswith((' Image')):
+ in_signed = re.search('\((.*)\)', line).groups()[0]
+ elif re.match(' \w', line):
+ in_signed = None
+ elif in_signed:
+ if not in_signed in signed_sections:
+ signed_sections[in_signed] = {}
+ key, value = line.split(':', 1)
+ signed_sections[in_signed][key.strip()] = value.strip()
+ self.assertIn('uboot', signed_sections)
+ self.assertIn('fdt', signed_sections)
+ for signed_section, values in signed_sections.items():
+ value = values.get('Sign algo', None)
+ self.assertEqual(value, 'sha256,rsa2048:spl-oe-selftest', 'Signature algorithm for %s not expected value' % signed_section)
+ value = values.get('Sign value', None)
+ self.assertEqual(len(value), 512, 'Signature value for section %s not expected length' % signed_section)
+
+ # Check for SPL_MKIMAGE_SIGN_ARGS
+ result = runCmd('bitbake -e virtual/kernel | grep ^T=')
+ tempdir = result.output.split('=', 1)[1].strip().strip('')
+ result = runCmd('grep "a smart U-Boot comment" %s/run.do_uboot_assemble_fitimage' % tempdir, ignore_status=True)
+ self.assertEqual(result.status, 0, 'SPL_MKIMAGE_SIGN_ARGS value did not get used')
+
+ # Check for evidence of test-mkimage-wrapper class
+ result = runCmd('grep "### uboot-mkimage wrapper message" %s/log.do_uboot_assemble_fitimage' % tempdir, ignore_status=True)
+ self.assertEqual(result.status, 0, 'UBOOT_MKIMAGE did not work')
+ result = runCmd('grep "### uboot-mkimage signing wrapper message" %s/log.do_uboot_assemble_fitimage' % tempdir, ignore_status=True)
+ self.assertEqual(result.status, 0, 'UBOOT_MKIMAGE_SIGN did not work')
+
+ def test_sign_cascaded_uboot_fit_image(self):
+ """
+ Summary: Check if U-Boot FIT image and Image Tree Source (its) are
+ created and signed correctly for the scenario where both
+ U-Boot proper and Kernel fitImages are being created and
+ signed.
+ Expected: 1) U-Boot its and FIT image are built successfully
+ 2) Scanning the its file indicates signing is enabled
+ as requested by SPL_SIGN_ENABLE (using keys generated
+ via UBOOT_FIT_GENERATE_KEYS)
+ 3) Dumping the FIT image indicates signature values
+ are present
+ 4) Examination of the do_uboot_assemble_fitimage
+ runfile/logfile indicate that UBOOT_MKIMAGE, UBOOT_MKIMAGE_SIGN
+ and SPL_MKIMAGE_SIGN_ARGS are working as expected.
+ Product: oe-core
+ Author: Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com> based upon
+ work by Paul Eggleton <paul.eggleton@microsoft.com> and
+ Usama Arif <usama.arif@arm.com>
+ """
+ config = """
+# There's no U-boot deconfig with CONFIG_FIT_SIGNATURE yet, so we need at
+# least CONFIG_SPL_LOAD_FIT and CONFIG_SPL_OF_CONTROL set
+MACHINE = "qemuarm"
+UBOOT_MACHINE = "am57xx_evm_defconfig"
+SPL_BINARY = "MLO"
+# Enable creation and signing of the U-Boot fitImage
+UBOOT_FITIMAGE_ENABLE = "1"
+SPL_SIGN_ENABLE = "1"
+SPL_SIGN_KEYNAME = "spl-cascaded-oe-selftest"
+SPL_SIGN_KEYDIR = "${TOPDIR}/signing-keys"
+UBOOT_DTB_BINARY = "u-boot.dtb"
+UBOOT_ENTRYPOINT = "0x80000000"
+UBOOT_LOADADDRESS = "0x80000000"
+UBOOT_MKIMAGE_DTCOPTS = "-I dts -O dtb -p 2000"
+UBOOT_MKIMAGE_SIGN_ARGS = "-c 'a smart cascaded Kernel comment'"
+UBOOT_DTB_LOADADDRESS = "0x82000000"
+UBOOT_ARCH = "arm"
+SPL_MKIMAGE_DTCOPTS = "-I dts -O dtb -p 2000"
+SPL_MKIMAGE_SIGN_ARGS = "-c 'a smart cascaded U-Boot comment'"
+UBOOT_EXTLINUX = "0"
+UBOOT_FIT_GENERATE_KEYS = "1"
+UBOOT_FIT_HASH_ALG = "sha256"
+KERNEL_IMAGETYPES += " fitImage "
+KERNEL_CLASSES = " kernel-fitimage test-mkimage-wrapper "
+UBOOT_SIGN_ENABLE = "1"
+FIT_GENERATE_KEYS = "1"
+UBOOT_SIGN_KEYDIR = "${TOPDIR}/signing-keys"
+UBOOT_SIGN_KEYNAME = "kernel-oe-selftest"
+FIT_SIGN_INDIVIDUAL = "1"
+"""
+ self.write_config(config)
+
+ # The U-Boot fitImage is created as part of linux recipe
+ bitbake("virtual/kernel")
+
+ image_type = "core-image-minimal"
+ deploy_dir_image = get_bb_var('DEPLOY_DIR_IMAGE')
+ machine = get_bb_var('MACHINE')
+ fitimage_its_path = os.path.join(deploy_dir_image,
+ "u-boot-its-%s" % (machine,))
+ fitimage_path = os.path.join(deploy_dir_image,
+ "u-boot-fitImage-%s" % (machine,))
+
+ self.assertTrue(os.path.exists(fitimage_its_path),
+ "%s image tree source doesn't exist" % (fitimage_its_path))
+ self.assertTrue(os.path.exists(fitimage_path),
+ "%s FIT image doesn't exist" % (fitimage_path))
+
+ req_itspaths = [
+ ['/', 'images', 'uboot'],
+ ['/', 'images', 'uboot', 'signature'],
+ ['/', 'images', 'fdt'],
+ ['/', 'images', 'fdt', 'signature'],
+ ]
+
+ itspath = []
+ itspaths = []
+ linect = 0
+ sigs = {}
+ with open(fitimage_its_path) as its_file:
+ linect += 1
+ for line in its_file:
+ line = line.strip()
+ if line.endswith('};'):
+ itspath.pop()
+ elif line.endswith('{'):
+ itspath.append(line[:-1].strip())
+ itspaths.append(itspath[:])
+ elif itspath and itspath[-1] == 'signature':
+ itsdotpath = '.'.join(itspath)
+ if not itsdotpath in sigs:
+ sigs[itsdotpath] = {}
+ if not '=' in line or not line.endswith(';'):
+ self.fail('Unexpected formatting in %s sigs section line %d:%s' % (fitimage_its_path, linect, line))
+ key, value = line.split('=', 1)
+ sigs[itsdotpath][key.rstrip()] = value.lstrip().rstrip(';')
+
+ for reqpath in req_itspaths:
+ if not reqpath in itspaths:
+ self.fail('Missing section in its file: %s' % reqpath)
+
+ reqsigvalues_image = {
+ 'algo': '"sha256,rsa2048"',
+ 'key-name-hint': '"spl-cascaded-oe-selftest"',
+ }
+
+ for itspath, values in sigs.items():
+ reqsigvalues = reqsigvalues_image
+ for reqkey, reqvalue in reqsigvalues.items():
+ value = values.get(reqkey, None)
+ if value is None:
+ self.fail('Missing key "%s" in its file signature section %s' % (reqkey, itspath))
+ self.assertEqual(value, reqvalue)
+
+ # Dump the image to see if it really got signed
+ bitbake("u-boot-tools-native -c addto_recipe_sysroot")
+ result = runCmd('bitbake -e u-boot-tools-native | grep ^RECIPE_SYSROOT_NATIVE=')
+ recipe_sysroot_native = result.output.split('=')[1].strip('"')
+ dumpimage_path = os.path.join(recipe_sysroot_native, 'usr', 'bin', 'dumpimage')
+ result = runCmd('%s -l %s' % (dumpimage_path, fitimage_path))
+ in_signed = None
+ signed_sections = {}
+ for line in result.output.splitlines():
+ if line.startswith((' Image')):
+ in_signed = re.search('\((.*)\)', line).groups()[0]
+ elif re.match(' \w', line):
+ in_signed = None
+ elif in_signed:
+ if not in_signed in signed_sections:
+ signed_sections[in_signed] = {}
+ key, value = line.split(':', 1)
+ signed_sections[in_signed][key.strip()] = value.strip()
+ self.assertIn('uboot', signed_sections)
+ self.assertIn('fdt', signed_sections)
+ for signed_section, values in signed_sections.items():
+ value = values.get('Sign algo', None)
+ self.assertEqual(value, 'sha256,rsa2048:spl-cascaded-oe-selftest', 'Signature algorithm for %s not expected value' % signed_section)
+ value = values.get('Sign value', None)
+ self.assertEqual(len(value), 512, 'Signature value for section %s not expected length' % signed_section)
+
+ # Check for SPL_MKIMAGE_SIGN_ARGS
+ result = runCmd('bitbake -e virtual/kernel | grep ^T=')
+ tempdir = result.output.split('=', 1)[1].strip().strip('')
+ result = runCmd('grep "a smart cascaded U-Boot comment" %s/run.do_uboot_assemble_fitimage' % tempdir, ignore_status=True)
+ self.assertEqual(result.status, 0, 'SPL_MKIMAGE_SIGN_ARGS value did not get used')
+
+ # Check for evidence of test-mkimage-wrapper class
+ result = runCmd('grep "### uboot-mkimage wrapper message" %s/log.do_uboot_assemble_fitimage' % tempdir, ignore_status=True)
+ self.assertEqual(result.status, 0, 'UBOOT_MKIMAGE did not work')
+ result = runCmd('grep "### uboot-mkimage signing wrapper message" %s/log.do_uboot_assemble_fitimage' % tempdir, ignore_status=True)
+ self.assertEqual(result.status, 0, 'UBOOT_MKIMAGE_SIGN did not work')
+
+
+
def test_initramfs_bundle(self):
"""
Summary: Verifies the content of the initramfs bundle node in the FIT Image Tree Source (its)
diff --git a/poky/meta/lib/oeqa/selftest/cases/reproducible.py b/poky/meta/lib/oeqa/selftest/cases/reproducible.py
index 0d0259477..a62757399 100644
--- a/poky/meta/lib/oeqa/selftest/cases/reproducible.py
+++ b/poky/meta/lib/oeqa/selftest/cases/reproducible.py
@@ -29,14 +29,10 @@ import datetime
#https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20210215-0_td9la2/packages/diff-html/
exclude_packages = [
'glide',
- 'go-dep',
'go-helloworld',
'go-runtime',
'go_',
'go-',
- 'meson',
- 'ovmf-shell-efi',
- 'perf',
'ruby-ri-docs'
]
diff --git a/poky/meta/lib/oeqa/selftest/cases/wic.py b/poky/meta/lib/oeqa/selftest/cases/wic.py
index 2bf5cb9a8..fa81584a8 100644
--- a/poky/meta/lib/oeqa/selftest/cases/wic.py
+++ b/poky/meta/lib/oeqa/selftest/cases/wic.py
@@ -979,14 +979,18 @@ class Wic2(WicTestCase):
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_rawcopy_plugin_qemu(self):
"""Test rawcopy plugin in qemu"""
- # build ext4 and wic images
- for fstype in ("ext4", "wic"):
- config = 'IMAGE_FSTYPES = "%s"\nWKS_FILE = "test_rawcopy_plugin.wks.in"\n' % fstype
- self.append_config(config)
- self.assertEqual(0, bitbake('core-image-minimal').status)
- self.remove_config(config)
+ # build ext4 and then use it for a wic image
+ config = 'IMAGE_FSTYPES = "ext4"\n'
+ self.append_config(config)
+ self.assertEqual(0, bitbake('core-image-minimal').status)
+ self.remove_config(config)
- with runqemu('core-image-minimal', ssh=False, image_fstype='wic') as qemu:
+ config = 'IMAGE_FSTYPES = "wic"\nWKS_FILE = "test_rawcopy_plugin.wks.in"\n'
+ self.append_config(config)
+ self.assertEqual(0, bitbake('core-image-minimal-mtdutils').status)
+ self.remove_config(config)
+
+ with runqemu('core-image-minimal-mtdutils', ssh=False, image_fstype='wic') as qemu:
cmd = "grep sda. /proc/partitions |wc -l"
status, output = qemu.run_serial(cmd)
self.assertEqual(1, status, 'Failed to run command "%s": %s' % (cmd, output))
diff --git a/poky/meta/lib/oeqa/targetcontrol.py b/poky/meta/lib/oeqa/targetcontrol.py
index 19f5a4ea7..12057f855 100644
--- a/poky/meta/lib/oeqa/targetcontrol.py
+++ b/poky/meta/lib/oeqa/targetcontrol.py
@@ -131,6 +131,7 @@ class QemuTarget(BaseTarget):
logfile = self.qemulog,
kernel = self.kernel,
boottime = int(d.getVar("TEST_QEMUBOOT_TIMEOUT")),
+ tmpfsdir = d.getVar("RUNQEMU_TMPFS_DIR"),
logger = logger)
else:
self.runner = QemuRunner(machine=d.getVar("MACHINE"),
@@ -144,6 +145,7 @@ class QemuTarget(BaseTarget):
dump_dir = dump_dir,
dump_host_cmds = d.getVar("testimage_dump_host"),
logger = logger,
+ tmpfsdir = d.getVar("RUNQEMU_TMPFS_DIR"),
serial_ports = len(d.getVar("SERIAL_CONSOLES").split()))
self.target_dumper = TargetDumper(dump_target_cmds, dump_dir, self.runner)
diff --git a/poky/meta/lib/oeqa/utils/qemurunner.py b/poky/meta/lib/oeqa/utils/qemurunner.py
index 77ec939ad..278904ba0 100644
--- a/poky/meta/lib/oeqa/utils/qemurunner.py
+++ b/poky/meta/lib/oeqa/utils/qemurunner.py
@@ -32,7 +32,7 @@ re_control_char = re.compile('[%s]' % re.escape("".join(control_chars)))
class QemuRunner:
def __init__(self, machine, rootfs, display, tmpdir, deploy_dir_image, logfile, boottime, dump_dir, dump_host_cmds,
- use_kvm, logger, use_slirp=False, serial_ports=2, boot_patterns = defaultdict(str), use_ovmf=False, workdir=None):
+ use_kvm, logger, use_slirp=False, serial_ports=2, boot_patterns = defaultdict(str), use_ovmf=False, workdir=None, tmpfsdir=None):
# Popen object for runqemu
self.runqemu = None
@@ -61,6 +61,7 @@ class QemuRunner:
self.serial_ports = serial_ports
self.msg = ''
self.boot_patterns = boot_patterns
+ self.tmpfsdir = tmpfsdir
self.runqemutime = 120
if not workdir:
@@ -150,6 +151,9 @@ class QemuRunner:
else:
env["DEPLOY_DIR_IMAGE"] = self.deploy_dir_image
+ if self.tmpfsdir:
+ env["RUNQEMU_TMPFS_DIR"] = self.tmpfsdir
+
if not launch_cmd:
launch_cmd = 'runqemu %s' % ('snapshot' if discard_writes else '')
if self.use_kvm:
@@ -176,7 +180,7 @@ class QemuRunner:
self.logger.error("Failed to create listening socket: %s" % msg[1])
return False
- bootparams = 'console=tty1 console=ttyS0,115200n8 printk.time=1'
+ bootparams = ' printk.time=1'
if extra_bootparams:
bootparams = bootparams + ' ' + extra_bootparams
diff --git a/poky/meta/lib/oeqa/utils/qemutinyrunner.py b/poky/meta/lib/oeqa/utils/qemutinyrunner.py
index 5c92941c0..20009401c 100644
--- a/poky/meta/lib/oeqa/utils/qemutinyrunner.py
+++ b/poky/meta/lib/oeqa/utils/qemutinyrunner.py
@@ -19,7 +19,7 @@ from .qemurunner import QemuRunner
class QemuTinyRunner(QemuRunner):
- def __init__(self, machine, rootfs, display, tmpdir, deploy_dir_image, logfile, kernel, boottime, logger):
+ def __init__(self, machine, rootfs, display, tmpdir, deploy_dir_image, logfile, kernel, boottime, logger, tmpfsdir=None):
# Popen object for runqemu
self.runqemu = None
@@ -37,6 +37,7 @@ class QemuTinyRunner(QemuRunner):
self.deploy_dir_image = deploy_dir_image
self.logfile = logfile
self.boottime = boottime
+ self.tmpfsdir = tmpfsdir
self.runqemutime = 60
self.socketfile = "console.sock"
@@ -83,6 +84,9 @@ class QemuTinyRunner(QemuRunner):
return False
else:
os.environ["DEPLOY_DIR_IMAGE"] = self.deploy_dir_image
+ if self.tmpfsdir:
+ env["RUNQEMU_TMPFS_DIR"] = self.tmpfsdir
+
# Set this flag so that Qemu doesn't do any grabs as SDL grabs interact
# badly with screensavers.
diff --git a/poky/meta/recipes-bsp/formfactor/files/qemuppc64/machconfig b/poky/meta/recipes-bsp/formfactor/files/qemuppc64/machconfig
new file mode 100755
index 000000000..e4717730e
--- /dev/null
+++ b/poky/meta/recipes-bsp/formfactor/files/qemuppc64/machconfig
@@ -0,0 +1,10 @@
+HAVE_TOUCHSCREEN=0
+HAVE_KEYBOARD=0
+
+DISPLAY_CAN_ROTATE=0
+DISPLAY_ORIENTATION=0
+#DISPLAY_WIDTH_PIXELS=640
+#DISPLAY_HEIGHT_PIXELS=480
+#DISPLAY_BPP=16
+DISPLAY_DPI=150
+DISPLAY_SUBPIXEL_ORDER=vrgb
diff --git a/poky/meta/recipes-bsp/grub/files/0001-RISC-V-Restore-the-typcast-to-long.patch b/poky/meta/recipes-bsp/grub/files/0001-RISC-V-Restore-the-typcast-to-long.patch
new file mode 100644
index 000000000..2f15a91f6
--- /dev/null
+++ b/poky/meta/recipes-bsp/grub/files/0001-RISC-V-Restore-the-typcast-to-long.patch
@@ -0,0 +1,39 @@
+From e4c41db74b8972285cbdfe614c95c1ffd97d70e1 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 26 Mar 2021 11:59:43 -0700
+Subject: [PATCH] RISC-V: Restore the typcast to 64bit type
+
+this makes the type promotions clear and explicit
+It was already typecasted to long but was accidentally dropped in [1]
+which stated to cause failures on riscv32 as reported in [2]
+
+[1] https://git.savannah.gnu.org/cgit/grub.git/commit/?id=2bf40e9e5be9808b17852e688eead87acff14420
+[2] https://savannah.gnu.org/bugs/index.php?60283
+
+Upstream-Status: Submitted
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Cc: Andreas Schwab <schwab@suse.de>
+Cc: Daniel Kiper <daniel.kiper@oracle.com>
+Cc: Chester Lin <clin@suse.com>
+Cc: Nikita Ermakov <arei@altlinux.org>
+Cc: Alistair Francis <alistair.francis@wdc.com>
+---
+ util/grub-mkimagexx.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/util/grub-mkimagexx.c b/util/grub-mkimagexx.c
+index 00f49ccaa..ac677d03d 100644
+--- a/util/grub-mkimagexx.c
++++ b/util/grub-mkimagexx.c
+@@ -1242,7 +1242,7 @@ SUFFIX (relocate_addrs) (Elf_Ehdr *e, struct section_metadata *smd,
+ */
+
+ sym_addr += addend;
+- off = sym_addr - target_section_addr - offset - image_target->vaddr_offset;
++ off = (grub_int64_t)sym_addr - target_section_addr - offset - image_target->vaddr_offset;
+
+ switch (ELF_R_TYPE (info))
+ {
+--
+2.31.1
+
diff --git a/poky/meta/recipes-bsp/grub/files/6643507ce30f775008e093580f0c9499dfb2c485.patch b/poky/meta/recipes-bsp/grub/files/6643507ce30f775008e093580f0c9499dfb2c485.patch
deleted file mode 100644
index 8aa209144..000000000
--- a/poky/meta/recipes-bsp/grub/files/6643507ce30f775008e093580f0c9499dfb2c485.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 6643507ce30f775008e093580f0c9499dfb2c485 Mon Sep 17 00:00:00 2001
-From: Simon Hardy <simon.hardy@itdev.co.uk>
-Date: Tue, 24 Mar 2020 13:29:12 +0000
-Subject: build: Fix GRUB i386-pc build with Ubuntu gcc
-
-With recent versions of gcc on Ubuntu a very large lzma_decompress.img file is
-output. (e.g. 134479600 bytes instead of 2864.) This causes grub-mkimage to
-fail with: "error: Decompressor is too big."
-
-This seems to be caused by a section .note.gnu.property that is placed at an
-offset such that objcopy needs to pad the img file with zeros.
-
-This issue is present on:
-Ubuntu 19.10 with gcc (Ubuntu 8.3.0-26ubuntu1~19.10) 8.3.0
-Ubuntu 19.10 with gcc (Ubuntu 9.2.1-9ubuntu2) 9.2.1 20191008
-
-This issue is not present on:
-Ubuntu 19.10 with gcc (Ubuntu 7.5.0-3ubuntu1~19.10) 7.5.0
-RHEL 8.0 with gcc 8.3.1 20190507 (Red Hat 8.3.1-4)
-
-The issue can be fixed by removing the section using objcopy as shown in
-this patch.
-
-Signed-off-by: Simon Hardy <simon.hardy@itdev.co.uk>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
----
- gentpl.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Upstream-Status: Backport
-
-diff --git a/gentpl.py b/gentpl.py
-index 387588c05..c86550d4f 100644
---- a/gentpl.py
-+++ b/gentpl.py
-@@ -766,7 +766,7 @@ def image(defn, platform):
- if test x$(TARGET_APPLE_LINKER) = x1; then \
- $(MACHO2IMG) $< $@; \
- else \
-- $(TARGET_OBJCOPY) $(""" + cname(defn) + """_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; \
-+ $(TARGET_OBJCOPY) $(""" + cname(defn) + """_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .note.gnu.property -R .ARM.exidx $< $@; \
- fi
- """)
-
---
-cgit v1.2.1
-
diff --git a/poky/meta/recipes-bsp/grub/files/CVE-2020-10713.patch b/poky/meta/recipes-bsp/grub/files/CVE-2020-10713.patch
deleted file mode 100644
index c507ed3ea..000000000
--- a/poky/meta/recipes-bsp/grub/files/CVE-2020-10713.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-From a4d3fbdff1e3ca8f87642af2ac8752c30c617a3e Mon Sep 17 00:00:00 2001
-From: Peter Jones <pjones@redhat.com>
-Date: Wed, 15 Apr 2020 15:45:02 -0400
-Subject: yylex: Make lexer fatal errors actually be fatal
-
-When presented with a command that can't be tokenized to anything
-smaller than YYLMAX characters, the parser calls YY_FATAL_ERROR(errmsg),
-expecting that will stop further processing, as such:
-
- #define YY_DO_BEFORE_ACTION \
- yyg->yytext_ptr = yy_bp; \
- yyleng = (int) (yy_cp - yy_bp); \
- yyg->yy_hold_char = *yy_cp; \
- *yy_cp = '\0'; \
- if ( yyleng >= YYLMAX ) \
- YY_FATAL_ERROR( "token too large, exceeds YYLMAX" ); \
- yy_flex_strncpy( yytext, yyg->yytext_ptr, yyleng + 1 , yyscanner); \
- yyg->yy_c_buf_p = yy_cp;
-
-The code flex generates expects that YY_FATAL_ERROR() will either return
-for it or do some form of longjmp(), or handle the error in some way at
-least, and so the strncpy() call isn't in an "else" clause, and thus if
-YY_FATAL_ERROR() is *not* actually fatal, it does the call with the
-questionable limit, and predictable results ensue.
-
-Unfortunately, our implementation of YY_FATAL_ERROR() is:
-
- #define YY_FATAL_ERROR(msg) \
- do { \
- grub_printf (_("fatal error: %s\n"), _(msg)); \
- } while (0)
-
-The same pattern exists in yyless(), and similar problems exist in users
-of YY_INPUT(), several places in the main parsing loop,
-yy_get_next_buffer(), yy_load_buffer_state(), yyensure_buffer_stack,
-yy_scan_buffer(), etc.
-
-All of these callers expect YY_FATAL_ERROR() to actually be fatal, and
-the things they do if it returns after calling it are wildly unsafe.
-
-Fixes: CVE-2020-10713
-
-Signed-off-by: Peter Jones <pjones@redhat.com>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
-
-Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/grub.git/commit/?id=a4d3fbdff1e3ca8f87642af2ac8752c30c617a3e]
-CVE: CVE-2020-10713
-Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
----
- grub-core/script/yylex.l | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/grub-core/script/yylex.l b/grub-core/script/yylex.l
-index 7b44c37b7..b7203c823 100644
---- a/grub-core/script/yylex.l
-+++ b/grub-core/script/yylex.l
-@@ -37,11 +37,11 @@
-
- /*
- * As we don't have access to yyscanner, we cannot do much except to
-- * print the fatal error.
-+ * print the fatal error and exit.
- */
- #define YY_FATAL_ERROR(msg) \
- do { \
-- grub_printf (_("fatal error: %s\n"), _(msg)); \
-+ grub_fatal (_("fatal error: %s\n"), _(msg));\
- } while (0)
-
- #define COPY(str, hint) \
---
-cgit v1.2.1
-
diff --git a/poky/meta/recipes-bsp/grub/files/CVE-2020-14308-calloc-Use-calloc-at-most-places.patch b/poky/meta/recipes-bsp/grub/files/CVE-2020-14308-calloc-Use-calloc-at-most-places.patch
deleted file mode 100644
index 637e368cb..000000000
--- a/poky/meta/recipes-bsp/grub/files/CVE-2020-14308-calloc-Use-calloc-at-most-places.patch
+++ /dev/null
@@ -1,1863 +0,0 @@
-From bcdd6a55952222ec9829a59348240a4f983b0b56 Mon Sep 17 00:00:00 2001
-From: Peter Jones <pjones@redhat.com>
-Date: Mon, 15 Jun 2020 12:26:01 -0400
-Subject: [PATCH 4/9] calloc: Use calloc() at most places
-
-This modifies most of the places we do some form of:
-
- X = malloc(Y * Z);
-
-to use calloc(Y, Z) instead.
-
-Among other issues, this fixes:
- - allocation of integer overflow in grub_png_decode_image_header()
- reported by Chris Coulson,
- - allocation of integer overflow in luks_recover_key()
- reported by Chris Coulson,
- - allocation of integer overflow in grub_lvm_detect()
- reported by Chris Coulson.
-
-Fixes: CVE-2020-14308
-
-Signed-off-by: Peter Jones <pjones@redhat.com>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
-
-Upstream-Status: Backport
-CVE: CVE-2020-14308
-
-Reference to upstream patch:
-https://git.savannah.gnu.org/cgit/grub.git/commit/?id=f725fa7cb2ece547c5af01eeeecfe8d95802ed41
-
-[YL: don't patch on grub-core/lib/json/json.c, which is not existing in grub 2.04]
-Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
----
- grub-core/bus/usb/usbhub.c | 8 ++++----
- grub-core/commands/efi/lsefisystab.c | 3 ++-
- grub-core/commands/legacycfg.c | 6 +++---
- grub-core/commands/menuentry.c | 2 +-
- grub-core/commands/nativedisk.c | 2 +-
- grub-core/commands/parttool.c | 12 +++++++++---
- grub-core/commands/regexp.c | 2 +-
- grub-core/commands/search_wrap.c | 2 +-
- grub-core/disk/diskfilter.c | 4 ++--
- grub-core/disk/ieee1275/ofdisk.c | 2 +-
- grub-core/disk/ldm.c | 14 +++++++-------
- grub-core/disk/luks.c | 2 +-
- grub-core/disk/lvm.c | 12 ++++++------
- grub-core/disk/xen/xendisk.c | 2 +-
- grub-core/efiemu/loadcore.c | 2 +-
- grub-core/efiemu/mm.c | 6 +++---
- grub-core/font/font.c | 3 +--
- grub-core/fs/affs.c | 6 +++---
- grub-core/fs/btrfs.c | 6 +++---
- grub-core/fs/hfs.c | 2 +-
- grub-core/fs/hfsplus.c | 6 +++---
- grub-core/fs/iso9660.c | 2 +-
- grub-core/fs/ntfs.c | 4 ++--
- grub-core/fs/sfs.c | 2 +-
- grub-core/fs/tar.c | 2 +-
- grub-core/fs/udf.c | 4 ++--
- grub-core/fs/zfs/zfs.c | 4 ++--
- grub-core/gfxmenu/gui_string_util.c | 2 +-
- grub-core/gfxmenu/widget-box.c | 4 ++--
- grub-core/io/gzio.c | 2 +-
- grub-core/kern/efi/efi.c | 6 +++---
- grub-core/kern/emu/hostdisk.c | 2 +-
- grub-core/kern/fs.c | 2 +-
- grub-core/kern/misc.c | 2 +-
- grub-core/kern/parser.c | 2 +-
- grub-core/kern/uboot/uboot.c | 2 +-
- grub-core/lib/libgcrypt/cipher/ac.c | 8 ++++----
- grub-core/lib/libgcrypt/cipher/primegen.c | 4 ++--
- grub-core/lib/libgcrypt/cipher/pubkey.c | 4 ++--
- grub-core/lib/priority_queue.c | 2 +-
- grub-core/lib/reed_solomon.c | 7 +++----
- grub-core/lib/relocator.c | 10 +++++-----
- grub-core/lib/zstd/fse_decompress.c | 2 +-
- grub-core/loader/arm/linux.c | 2 +-
- grub-core/loader/efi/chainloader.c | 2 +-
- grub-core/loader/i386/bsdXX.c | 2 +-
- grub-core/loader/i386/xnu.c | 4 ++--
- grub-core/loader/macho.c | 2 +-
- grub-core/loader/multiboot_elfxx.c | 2 +-
- grub-core/loader/xnu.c | 2 +-
- grub-core/mmap/mmap.c | 4 ++--
- grub-core/net/bootp.c | 2 +-
- grub-core/net/dns.c | 10 +++++-----
- grub-core/net/net.c | 4 ++--
- grub-core/normal/charset.c | 10 +++++-----
- grub-core/normal/cmdline.c | 14 +++++++-------
- grub-core/normal/menu_entry.c | 14 +++++++-------
- grub-core/normal/menu_text.c | 4 ++--
- grub-core/normal/term.c | 4 ++--
- grub-core/osdep/linux/getroot.c | 6 +++---
- grub-core/osdep/unix/config.c | 2 +-
- grub-core/osdep/windows/getroot.c | 2 +-
- grub-core/osdep/windows/hostdisk.c | 4 ++--
- grub-core/osdep/windows/init.c | 2 +-
- grub-core/osdep/windows/platform.c | 4 ++--
- grub-core/osdep/windows/relpath.c | 2 +-
- grub-core/partmap/gpt.c | 2 +-
- grub-core/partmap/msdos.c | 2 +-
- grub-core/script/execute.c | 2 +-
- grub-core/tests/fake_input.c | 2 +-
- grub-core/tests/video_checksum.c | 6 +++---
- grub-core/video/capture.c | 2 +-
- grub-core/video/emu/sdl.c | 2 +-
- grub-core/video/i386/pc/vga.c | 2 +-
- grub-core/video/readers/png.c | 2 +-
- include/grub/unicode.h | 4 ++--
- util/getroot.c | 2 +-
- util/grub-file.c | 2 +-
- util/grub-fstest.c | 4 ++--
- util/grub-install-common.c | 2 +-
- util/grub-install.c | 4 ++--
- util/grub-mkimagexx.c | 6 ++----
- util/grub-mkrescue.c | 4 ++--
- util/grub-mkstandalone.c | 2 +-
- util/grub-pe2elf.c | 12 +++++-------
- util/grub-probe.c | 4 ++--
- 86 files changed, 178 insertions(+), 177 deletions(-)
-
-diff --git a/grub-core/bus/usb/usbhub.c b/grub-core/bus/usb/usbhub.c
-index 34a7ff1..a06cce3 100644
---- a/grub-core/bus/usb/usbhub.c
-+++ b/grub-core/bus/usb/usbhub.c
-@@ -149,8 +149,8 @@ grub_usb_add_hub (grub_usb_device_t dev)
- grub_usb_set_configuration (dev, 1);
-
- dev->nports = hubdesc.portcnt;
-- dev->children = grub_zalloc (hubdesc.portcnt * sizeof (dev->children[0]));
-- dev->ports = grub_zalloc (dev->nports * sizeof (dev->ports[0]));
-+ dev->children = grub_calloc (hubdesc.portcnt, sizeof (dev->children[0]));
-+ dev->ports = grub_calloc (dev->nports, sizeof (dev->ports[0]));
- if (!dev->children || !dev->ports)
- {
- grub_free (dev->children);
-@@ -268,8 +268,8 @@ grub_usb_controller_dev_register_iter (grub_usb_controller_t controller, void *d
-
- /* Query the number of ports the root Hub has. */
- hub->nports = controller->dev->hubports (controller);
-- hub->devices = grub_zalloc (sizeof (hub->devices[0]) * hub->nports);
-- hub->ports = grub_zalloc (sizeof (hub->ports[0]) * hub->nports);
-+ hub->devices = grub_calloc (hub->nports, sizeof (hub->devices[0]));
-+ hub->ports = grub_calloc (hub->nports, sizeof (hub->ports[0]));
- if (!hub->devices || !hub->ports)
- {
- grub_free (hub->devices);
-diff --git a/grub-core/commands/efi/lsefisystab.c b/grub-core/commands/efi/lsefisystab.c
-index df10302..cd81507 100644
---- a/grub-core/commands/efi/lsefisystab.c
-+++ b/grub-core/commands/efi/lsefisystab.c
-@@ -71,7 +71,8 @@ grub_cmd_lsefisystab (struct grub_command *cmd __attribute__ ((unused)),
- grub_printf ("Vendor: ");
-
- for (vendor_utf16 = st->firmware_vendor; *vendor_utf16; vendor_utf16++);
-- vendor = grub_malloc (4 * (vendor_utf16 - st->firmware_vendor) + 1);
-+ /* Allocate extra 3 bytes to simplify math. */
-+ vendor = grub_calloc (4, vendor_utf16 - st->firmware_vendor + 1);
- if (!vendor)
- return grub_errno;
- *grub_utf16_to_utf8 ((grub_uint8_t *) vendor, st->firmware_vendor,
-diff --git a/grub-core/commands/legacycfg.c b/grub-core/commands/legacycfg.c
-index db7a8f0..5e3ec0d 100644
---- a/grub-core/commands/legacycfg.c
-+++ b/grub-core/commands/legacycfg.c
-@@ -314,7 +314,7 @@ grub_cmd_legacy_kernel (struct grub_command *mycmd __attribute__ ((unused)),
- if (argc < 2)
- return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected"));
-
-- cutargs = grub_malloc (sizeof (cutargs[0]) * (argc - 1));
-+ cutargs = grub_calloc (argc - 1, sizeof (cutargs[0]));
- if (!cutargs)
- return grub_errno;
- cutargc = argc - 1;
-@@ -436,7 +436,7 @@ grub_cmd_legacy_kernel (struct grub_command *mycmd __attribute__ ((unused)),
- {
- char rbuf[3] = "-r";
- bsdargc = cutargc + 2;
-- bsdargs = grub_malloc (sizeof (bsdargs[0]) * bsdargc);
-+ bsdargs = grub_calloc (bsdargc, sizeof (bsdargs[0]));
- if (!bsdargs)
- {
- err = grub_errno;
-@@ -559,7 +559,7 @@ grub_cmd_legacy_initrdnounzip (struct grub_command *mycmd __attribute__ ((unused
- return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("can't find command `%s'"),
- "module");
-
-- newargs = grub_malloc ((argc + 1) * sizeof (newargs[0]));
-+ newargs = grub_calloc (argc + 1, sizeof (newargs[0]));
- if (!newargs)
- return grub_errno;
- grub_memcpy (newargs + 1, args, argc * sizeof (newargs[0]));
-diff --git a/grub-core/commands/menuentry.c b/grub-core/commands/menuentry.c
-index 2c5363d..9164df7 100644
---- a/grub-core/commands/menuentry.c
-+++ b/grub-core/commands/menuentry.c
-@@ -154,7 +154,7 @@ grub_normal_add_menu_entry (int argc, const char **args,
- goto fail;
-
- /* Save argc, args to pass as parameters to block arg later. */
-- menu_args = grub_malloc (sizeof (char*) * (argc + 1));
-+ menu_args = grub_calloc (argc + 1, sizeof (char *));
- if (! menu_args)
- goto fail;
-
-diff --git a/grub-core/commands/nativedisk.c b/grub-core/commands/nativedisk.c
-index 699447d..7c8f97f 100644
---- a/grub-core/commands/nativedisk.c
-+++ b/grub-core/commands/nativedisk.c
-@@ -195,7 +195,7 @@ grub_cmd_nativedisk (grub_command_t cmd __attribute__ ((unused)),
- else
- path_prefix = prefix;
-
-- mods = grub_malloc (argc * sizeof (mods[0]));
-+ mods = grub_calloc (argc, sizeof (mods[0]));
- if (!mods)
- return grub_errno;
-
-diff --git a/grub-core/commands/parttool.c b/grub-core/commands/parttool.c
-index 22b46b1..051e313 100644
---- a/grub-core/commands/parttool.c
-+++ b/grub-core/commands/parttool.c
-@@ -59,7 +59,13 @@ grub_parttool_register(const char *part_name,
- for (nargs = 0; args[nargs].name != 0; nargs++);
- cur->nargs = nargs;
- cur->args = (struct grub_parttool_argdesc *)
-- grub_malloc ((nargs + 1) * sizeof (struct grub_parttool_argdesc));
-+ grub_calloc (nargs + 1, sizeof (struct grub_parttool_argdesc));
-+ if (!cur->args)
-+ {
-+ grub_free (cur);
-+ curhandle--;
-+ return -1;
-+ }
- grub_memcpy (cur->args, args,
- (nargs + 1) * sizeof (struct grub_parttool_argdesc));
-
-@@ -257,7 +263,7 @@ grub_cmd_parttool (grub_command_t cmd __attribute__ ((unused)),
- return err;
- }
-
-- parsed = (int *) grub_zalloc (argc * sizeof (int));
-+ parsed = (int *) grub_calloc (argc, sizeof (int));
-
- for (i = 1; i < argc; i++)
- if (! parsed[i])
-@@ -290,7 +296,7 @@ grub_cmd_parttool (grub_command_t cmd __attribute__ ((unused)),
- }
- ptool = cur;
- pargs = (struct grub_parttool_args *)
-- grub_zalloc (ptool->nargs * sizeof (struct grub_parttool_args));
-+ grub_calloc (ptool->nargs, sizeof (struct grub_parttool_args));
- for (j = i; j < argc; j++)
- if (! parsed[j])
- {
-diff --git a/grub-core/commands/regexp.c b/grub-core/commands/regexp.c
-index f00b184..4019164 100644
---- a/grub-core/commands/regexp.c
-+++ b/grub-core/commands/regexp.c
-@@ -116,7 +116,7 @@ grub_cmd_regexp (grub_extcmd_context_t ctxt, int argc, char **args)
- if (ret)
- goto fail;
-
-- matches = grub_zalloc (sizeof (*matches) * (regex.re_nsub + 1));
-+ matches = grub_calloc (regex.re_nsub + 1, sizeof (*matches));
- if (! matches)
- goto fail;
-
-diff --git a/grub-core/commands/search_wrap.c b/grub-core/commands/search_wrap.c
-index d7fd26b..47fc8eb 100644
---- a/grub-core/commands/search_wrap.c
-+++ b/grub-core/commands/search_wrap.c
-@@ -122,7 +122,7 @@ grub_cmd_search (grub_extcmd_context_t ctxt, int argc, char **args)
- for (i = 0; state[SEARCH_HINT_BAREMETAL].args[i]; i++)
- nhints++;
-
-- hints = grub_malloc (sizeof (hints[0]) * nhints);
-+ hints = grub_calloc (nhints, sizeof (hints[0]));
- if (!hints)
- return grub_errno;
- j = 0;
-diff --git a/grub-core/disk/diskfilter.c b/grub-core/disk/diskfilter.c
-index c3b578a..68ca9e0 100644
---- a/grub-core/disk/diskfilter.c
-+++ b/grub-core/disk/diskfilter.c
-@@ -1134,7 +1134,7 @@ grub_diskfilter_make_raid (grub_size_t uuidlen, char *uuid, int nmemb,
- array->lvs->segments->node_count = nmemb;
- array->lvs->segments->raid_member_size = disk_size;
- array->lvs->segments->nodes
-- = grub_zalloc (nmemb * sizeof (array->lvs->segments->nodes[0]));
-+ = grub_calloc (nmemb, sizeof (array->lvs->segments->nodes[0]));
- array->lvs->segments->stripe_size = stripe_size;
- for (i = 0; i < nmemb; i++)
- {
-@@ -1226,7 +1226,7 @@ insert_array (grub_disk_t disk, const struct grub_diskfilter_pv_id *id,
- grub_partition_t p;
- for (p = disk->partition; p; p = p->parent)
- s++;
-- pv->partmaps = xmalloc (s * sizeof (pv->partmaps[0]));
-+ pv->partmaps = xcalloc (s, sizeof (pv->partmaps[0]));
- s = 0;
- for (p = disk->partition; p; p = p->parent)
- pv->partmaps[s++] = xstrdup (p->partmap->name);
-diff --git a/grub-core/disk/ieee1275/ofdisk.c b/grub-core/disk/ieee1275/ofdisk.c
-index f73257e..03674cb 100644
---- a/grub-core/disk/ieee1275/ofdisk.c
-+++ b/grub-core/disk/ieee1275/ofdisk.c
-@@ -297,7 +297,7 @@ dev_iterate (const struct grub_ieee1275_devalias *alias)
- /* Power machines documentation specify 672 as maximum SAS disks in
- one system. Using a slightly larger value to be safe. */
- table_size = 768;
-- table = grub_malloc (table_size * sizeof (grub_uint64_t));
-+ table = grub_calloc (table_size, sizeof (grub_uint64_t));
-
- if (!table)
- {
-diff --git a/grub-core/disk/ldm.c b/grub-core/disk/ldm.c
-index 2a22d2d..e632370 100644
---- a/grub-core/disk/ldm.c
-+++ b/grub-core/disk/ldm.c
-@@ -323,8 +323,8 @@ make_vg (grub_disk_t disk,
- lv->segments->type = GRUB_DISKFILTER_MIRROR;
- lv->segments->node_count = 0;
- lv->segments->node_alloc = 8;
-- lv->segments->nodes = grub_zalloc (sizeof (*lv->segments->nodes)
-- * lv->segments->node_alloc);
-+ lv->segments->nodes = grub_calloc (lv->segments->node_alloc,
-+ sizeof (*lv->segments->nodes));
- if (!lv->segments->nodes)
- goto fail2;
- ptr = vblk[i].dynamic;
-@@ -543,8 +543,8 @@ make_vg (grub_disk_t disk,
- {
- comp->segment_alloc = 8;
- comp->segment_count = 0;
-- comp->segments = grub_malloc (sizeof (*comp->segments)
-- * comp->segment_alloc);
-+ comp->segments = grub_calloc (comp->segment_alloc,
-+ sizeof (*comp->segments));
- if (!comp->segments)
- goto fail2;
- }
-@@ -590,8 +590,8 @@ make_vg (grub_disk_t disk,
- }
- comp->segments->node_count = read_int (ptr + 1, *ptr);
- comp->segments->node_alloc = comp->segments->node_count;
-- comp->segments->nodes = grub_zalloc (sizeof (*comp->segments->nodes)
-- * comp->segments->node_alloc);
-+ comp->segments->nodes = grub_calloc (comp->segments->node_alloc,
-+ sizeof (*comp->segments->nodes));
- if (!lv->segments->nodes)
- goto fail2;
- }
-@@ -1017,7 +1017,7 @@ grub_util_ldm_embed (struct grub_disk *disk, unsigned int *nsectors,
- *nsectors = lv->size;
- if (*nsectors > max_nsectors)
- *nsectors = max_nsectors;
-- *sectors = grub_malloc (*nsectors * sizeof (**sectors));
-+ *sectors = grub_calloc (*nsectors, sizeof (**sectors));
- if (!*sectors)
- return grub_errno;
- for (i = 0; i < *nsectors; i++)
-diff --git a/grub-core/disk/luks.c b/grub-core/disk/luks.c
-index 86c50c6..18b3a8b 100644
---- a/grub-core/disk/luks.c
-+++ b/grub-core/disk/luks.c
-@@ -336,7 +336,7 @@ luks_recover_key (grub_disk_t source,
- && grub_be_to_cpu32 (header.keyblock[i].stripes) > max_stripes)
- max_stripes = grub_be_to_cpu32 (header.keyblock[i].stripes);
-
-- split_key = grub_malloc (keysize * max_stripes);
-+ split_key = grub_calloc (keysize, max_stripes);
- if (!split_key)
- return grub_errno;
-
-diff --git a/grub-core/disk/lvm.c b/grub-core/disk/lvm.c
-index dc6b83b..7b5fbbc 100644
---- a/grub-core/disk/lvm.c
-+++ b/grub-core/disk/lvm.c
-@@ -209,7 +209,7 @@ grub_lvm_detect (grub_disk_t disk,
- first one. */
-
- /* Allocate buffer space for the circular worst-case scenario. */
-- metadatabuf = grub_malloc (2 * mda_size);
-+ metadatabuf = grub_calloc (2, mda_size);
- if (! metadatabuf)
- goto fail;
-
-@@ -464,7 +464,7 @@ grub_lvm_detect (grub_disk_t disk,
- #endif
- goto lvs_fail;
- }
-- lv->segments = grub_zalloc (sizeof (*seg) * lv->segment_count);
-+ lv->segments = grub_calloc (lv->segment_count, sizeof (*seg));
- seg = lv->segments;
-
- for (i = 0; i < lv->segment_count; i++)
-@@ -521,8 +521,8 @@ grub_lvm_detect (grub_disk_t disk,
- if (seg->node_count != 1)
- seg->stripe_size = grub_lvm_getvalue (&p, "stripe_size = ");
-
-- seg->nodes = grub_zalloc (sizeof (*stripe)
-- * seg->node_count);
-+ seg->nodes = grub_calloc (seg->node_count,
-+ sizeof (*stripe));
- stripe = seg->nodes;
-
- p = grub_strstr (p, "stripes = [");
-@@ -898,7 +898,7 @@ grub_lvm_detect (grub_disk_t disk,
- break;
- if (lv)
- {
-- cache->lv->segments = grub_malloc (lv->segment_count * sizeof (*lv->segments));
-+ cache->lv->segments = grub_calloc (lv->segment_count, sizeof (*lv->segments));
- if (!cache->lv->segments)
- {
- grub_lvm_free_cache_lvs (cache_lvs);
-@@ -911,7 +911,7 @@ grub_lvm_detect (grub_disk_t disk,
- struct grub_diskfilter_node *nodes = lv->segments[i].nodes;
- grub_size_t node_count = lv->segments[i].node_count;
-
-- cache->lv->segments[i].nodes = grub_malloc (node_count * sizeof (*nodes));
-+ cache->lv->segments[i].nodes = grub_calloc (node_count, sizeof (*nodes));
- if (!cache->lv->segments[i].nodes)
- {
- for (j = 0; j < i; ++j)
-diff --git a/grub-core/disk/xen/xendisk.c b/grub-core/disk/xen/xendisk.c
-index 48476cb..d6612ee 100644
---- a/grub-core/disk/xen/xendisk.c
-+++ b/grub-core/disk/xen/xendisk.c
-@@ -426,7 +426,7 @@ grub_xendisk_init (void)
- if (!ctr)
- return;
-
-- virtdisks = grub_malloc (ctr * sizeof (virtdisks[0]));
-+ virtdisks = grub_calloc (ctr, sizeof (virtdisks[0]));
- if (!virtdisks)
- return;
- if (grub_xenstore_dir ("device/vbd", fill, &ctr))
-diff --git a/grub-core/efiemu/loadcore.c b/grub-core/efiemu/loadcore.c
-index 44085ef..2b92462 100644
---- a/grub-core/efiemu/loadcore.c
-+++ b/grub-core/efiemu/loadcore.c
-@@ -201,7 +201,7 @@ grub_efiemu_count_symbols (const Elf_Ehdr *e)
-
- grub_efiemu_nelfsyms = (unsigned) s->sh_size / (unsigned) s->sh_entsize;
- grub_efiemu_elfsyms = (struct grub_efiemu_elf_sym *)
-- grub_malloc (sizeof (struct grub_efiemu_elf_sym) * grub_efiemu_nelfsyms);
-+ grub_calloc (grub_efiemu_nelfsyms, sizeof (struct grub_efiemu_elf_sym));
-
- /* Relocators */
- for (i = 0, s = (Elf_Shdr *) ((char *) e + e->e_shoff);
-diff --git a/grub-core/efiemu/mm.c b/grub-core/efiemu/mm.c
-index 52a032f..9b8e0d0 100644
---- a/grub-core/efiemu/mm.c
-+++ b/grub-core/efiemu/mm.c
-@@ -554,11 +554,11 @@ grub_efiemu_mmap_sort_and_uniq (void)
- /* Initialize variables*/
- grub_memset (present, 0, sizeof (int) * GRUB_EFI_MAX_MEMORY_TYPE);
- scanline_events = (struct grub_efiemu_mmap_scan *)
-- grub_malloc (sizeof (struct grub_efiemu_mmap_scan) * 2 * mmap_num);
-+ grub_calloc (mmap_num, sizeof (struct grub_efiemu_mmap_scan) * 2);
-
- /* Number of chunks can't increase more than by factor of 2 */
- result = (grub_efi_memory_descriptor_t *)
-- grub_malloc (sizeof (grub_efi_memory_descriptor_t) * 2 * mmap_num);
-+ grub_calloc (mmap_num, sizeof (grub_efi_memory_descriptor_t) * 2);
- if (!result || !scanline_events)
- {
- grub_free (result);
-@@ -660,7 +660,7 @@ grub_efiemu_mm_do_alloc (void)
-
- /* Preallocate mmap */
- efiemu_mmap = (grub_efi_memory_descriptor_t *)
-- grub_malloc (mmap_reserved_size * sizeof (grub_efi_memory_descriptor_t));
-+ grub_calloc (mmap_reserved_size, sizeof (grub_efi_memory_descriptor_t));
- if (!efiemu_mmap)
- {
- grub_efiemu_unload ();
-diff --git a/grub-core/font/font.c b/grub-core/font/font.c
-index 85a2925..8e118b3 100644
---- a/grub-core/font/font.c
-+++ b/grub-core/font/font.c
-@@ -293,8 +293,7 @@ load_font_index (grub_file_t file, grub_uint32_t sect_length, struct
- font->num_chars = sect_length / FONT_CHAR_INDEX_ENTRY_SIZE;
-
- /* Allocate the character index array. */
-- font->char_index = grub_malloc (font->num_chars
-- * sizeof (struct char_index_entry));
-+ font->char_index = grub_calloc (font->num_chars, sizeof (struct char_index_entry));
- if (!font->char_index)
- return 1;
- font->bmp_idx = grub_malloc (0x10000 * sizeof (grub_uint16_t));
-diff --git a/grub-core/fs/affs.c b/grub-core/fs/affs.c
-index 6b6a2bc..220b371 100644
---- a/grub-core/fs/affs.c
-+++ b/grub-core/fs/affs.c
-@@ -301,7 +301,7 @@ grub_affs_read_symlink (grub_fshelp_node_t node)
- return 0;
- }
- latin1[symlink_size] = 0;
-- utf8 = grub_malloc (symlink_size * GRUB_MAX_UTF8_PER_LATIN1 + 1);
-+ utf8 = grub_calloc (GRUB_MAX_UTF8_PER_LATIN1 + 1, symlink_size);
- if (!utf8)
- {
- grub_free (latin1);
-@@ -422,7 +422,7 @@ grub_affs_iterate_dir (grub_fshelp_node_t dir,
- return 1;
- }
-
-- hashtable = grub_zalloc (data->htsize * sizeof (*hashtable));
-+ hashtable = grub_calloc (data->htsize, sizeof (*hashtable));
- if (!hashtable)
- return 1;
-
-@@ -628,7 +628,7 @@ grub_affs_label (grub_device_t device, char **label)
- len = file.namelen;
- if (len > sizeof (file.name))
- len = sizeof (file.name);
-- *label = grub_malloc (len * GRUB_MAX_UTF8_PER_LATIN1 + 1);
-+ *label = grub_calloc (GRUB_MAX_UTF8_PER_LATIN1 + 1, len);
- if (*label)
- *grub_latin1_to_utf8 ((grub_uint8_t *) *label, file.name, len) = '\0';
- }
-diff --git a/grub-core/fs/btrfs.c b/grub-core/fs/btrfs.c
-index 48bd3d0..11272ef 100644
---- a/grub-core/fs/btrfs.c
-+++ b/grub-core/fs/btrfs.c
-@@ -413,7 +413,7 @@ lower_bound (struct grub_btrfs_data *data,
- {
- desc->allocated = 16;
- desc->depth = 0;
-- desc->data = grub_malloc (sizeof (desc->data[0]) * desc->allocated);
-+ desc->data = grub_calloc (desc->allocated, sizeof (desc->data[0]));
- if (!desc->data)
- return grub_errno;
- }
-@@ -752,7 +752,7 @@ raid56_read_retry (struct grub_btrfs_data *data,
- grub_err_t ret = GRUB_ERR_OUT_OF_MEMORY;
- grub_uint64_t i, failed_devices;
-
-- buffers = grub_zalloc (sizeof(*buffers) * nstripes);
-+ buffers = grub_calloc (nstripes, sizeof (*buffers));
- if (!buffers)
- goto cleanup;
-
-@@ -2160,7 +2160,7 @@ grub_btrfs_embed (grub_device_t device __attribute__ ((unused)),
- *nsectors = 64 * 2 - 1;
- if (*nsectors > max_nsectors)
- *nsectors = max_nsectors;
-- *sectors = grub_malloc (*nsectors * sizeof (**sectors));
-+ *sectors = grub_calloc (*nsectors, sizeof (**sectors));
- if (!*sectors)
- return grub_errno;
- for (i = 0; i < *nsectors; i++)
-diff --git a/grub-core/fs/hfs.c b/grub-core/fs/hfs.c
-index ac0a409..3fe842b 100644
---- a/grub-core/fs/hfs.c
-+++ b/grub-core/fs/hfs.c
-@@ -1360,7 +1360,7 @@ grub_hfs_label (grub_device_t device, char **label)
- grub_size_t len = data->sblock.volname[0];
- if (len > sizeof (data->sblock.volname) - 1)
- len = sizeof (data->sblock.volname) - 1;
-- *label = grub_malloc (len * MAX_UTF8_PER_MAC_ROMAN + 1);
-+ *label = grub_calloc (MAX_UTF8_PER_MAC_ROMAN + 1, len);
- if (*label)
- macroman_to_utf8 (*label, data->sblock.volname + 1,
- len + 1, 0);
-diff --git a/grub-core/fs/hfsplus.c b/grub-core/fs/hfsplus.c
-index 54786bb..dae43be 100644
---- a/grub-core/fs/hfsplus.c
-+++ b/grub-core/fs/hfsplus.c
-@@ -720,7 +720,7 @@ list_nodes (void *record, void *hook_arg)
- if (! filename)
- return 0;
-
-- keyname = grub_malloc (grub_be_to_cpu16 (catkey->namelen) * sizeof (*keyname));
-+ keyname = grub_calloc (grub_be_to_cpu16 (catkey->namelen), sizeof (*keyname));
- if (!keyname)
- {
- grub_free (filename);
-@@ -1007,7 +1007,7 @@ grub_hfsplus_label (grub_device_t device, char **label)
- grub_hfsplus_btree_recptr (&data->catalog_tree, node, ptr);
-
- label_len = grub_be_to_cpu16 (catkey->namelen);
-- label_name = grub_malloc (label_len * sizeof (*label_name));
-+ label_name = grub_calloc (label_len, sizeof (*label_name));
- if (!label_name)
- {
- grub_free (node);
-@@ -1029,7 +1029,7 @@ grub_hfsplus_label (grub_device_t device, char **label)
- }
- }
-
-- *label = grub_malloc (label_len * GRUB_MAX_UTF8_PER_UTF16 + 1);
-+ *label = grub_calloc (label_len, GRUB_MAX_UTF8_PER_UTF16 + 1);
- if (! *label)
- {
- grub_free (label_name);
-diff --git a/grub-core/fs/iso9660.c b/grub-core/fs/iso9660.c
-index 49c0c63..4f1b52a 100644
---- a/grub-core/fs/iso9660.c
-+++ b/grub-core/fs/iso9660.c
-@@ -331,7 +331,7 @@ grub_iso9660_convert_string (grub_uint8_t *us, int len)
- int i;
- grub_uint16_t t[MAX_NAMELEN / 2 + 1];
-
-- p = grub_malloc (len * GRUB_MAX_UTF8_PER_UTF16 + 1);
-+ p = grub_calloc (len, GRUB_MAX_UTF8_PER_UTF16 + 1);
- if (! p)
- return NULL;
-
-diff --git a/grub-core/fs/ntfs.c b/grub-core/fs/ntfs.c
-index fc4e1f6..2f34f76 100644
---- a/grub-core/fs/ntfs.c
-+++ b/grub-core/fs/ntfs.c
-@@ -556,8 +556,8 @@ get_utf8 (grub_uint8_t *in, grub_size_t len)
- grub_uint16_t *tmp;
- grub_size_t i;
-
-- buf = grub_malloc (len * GRUB_MAX_UTF8_PER_UTF16 + 1);
-- tmp = grub_malloc (len * sizeof (tmp[0]));
-+ buf = grub_calloc (len, GRUB_MAX_UTF8_PER_UTF16 + 1);
-+ tmp = grub_calloc (len, sizeof (tmp[0]));
- if (!buf || !tmp)
- {
- grub_free (buf);
-diff --git a/grub-core/fs/sfs.c b/grub-core/fs/sfs.c
-index 50c1fe7..90f7fb3 100644
---- a/grub-core/fs/sfs.c
-+++ b/grub-core/fs/sfs.c
-@@ -266,7 +266,7 @@ grub_sfs_read_block (grub_fshelp_node_t node, grub_disk_addr_t fileblock)
- node->next_extent = node->block;
- node->cache_size = 0;
-
-- node->cache = grub_malloc (sizeof (node->cache[0]) * cache_size);
-+ node->cache = grub_calloc (cache_size, sizeof (node->cache[0]));
- if (!node->cache)
- {
- grub_errno = 0;
-diff --git a/grub-core/fs/tar.c b/grub-core/fs/tar.c
-index 7d63e0c..c551ed6 100644
---- a/grub-core/fs/tar.c
-+++ b/grub-core/fs/tar.c
-@@ -120,7 +120,7 @@ grub_cpio_find_file (struct grub_archelp_data *data, char **name,
- if (data->linkname_alloc < linksize + 1)
- {
- char *n;
-- n = grub_malloc (2 * (linksize + 1));
-+ n = grub_calloc (2, linksize + 1);
- if (!n)
- return grub_errno;
- grub_free (data->linkname);
-diff --git a/grub-core/fs/udf.c b/grub-core/fs/udf.c
-index dc8b6e2..a837616 100644
---- a/grub-core/fs/udf.c
-+++ b/grub-core/fs/udf.c
-@@ -873,7 +873,7 @@ read_string (const grub_uint8_t *raw, grub_size_t sz, char *outbuf)
- {
- unsigned i;
- utf16len = sz - 1;
-- utf16 = grub_malloc (utf16len * sizeof (utf16[0]));
-+ utf16 = grub_calloc (utf16len, sizeof (utf16[0]));
- if (!utf16)
- return NULL;
- for (i = 0; i < utf16len; i++)
-@@ -883,7 +883,7 @@ read_string (const grub_uint8_t *raw, grub_size_t sz, char *outbuf)
- {
- unsigned i;
- utf16len = (sz - 1) / 2;
-- utf16 = grub_malloc (utf16len * sizeof (utf16[0]));
-+ utf16 = grub_calloc (utf16len, sizeof (utf16[0]));
- if (!utf16)
- return NULL;
- for (i = 0; i < utf16len; i++)
-diff --git a/grub-core/fs/zfs/zfs.c b/grub-core/fs/zfs/zfs.c
-index 2f72e42..381dde5 100644
---- a/grub-core/fs/zfs/zfs.c
-+++ b/grub-core/fs/zfs/zfs.c
-@@ -3325,7 +3325,7 @@ dnode_get_fullpath (const char *fullpath, struct subvolume *subvol,
- }
- subvol->nkeys = 0;
- zap_iterate (&keychain_dn, 8, count_zap_keys, &ctx, data);
-- subvol->keyring = grub_zalloc (subvol->nkeys * sizeof (subvol->keyring[0]));
-+ subvol->keyring = grub_calloc (subvol->nkeys, sizeof (subvol->keyring[0]));
- if (!subvol->keyring)
- {
- grub_free (fsname);
-@@ -4336,7 +4336,7 @@ grub_zfs_embed (grub_device_t device __attribute__ ((unused)),
- *nsectors = (VDEV_BOOT_SIZE >> GRUB_DISK_SECTOR_BITS);
- if (*nsectors > max_nsectors)
- *nsectors = max_nsectors;
-- *sectors = grub_malloc (*nsectors * sizeof (**sectors));
-+ *sectors = grub_calloc (*nsectors, sizeof (**sectors));
- if (!*sectors)
- return grub_errno;
- for (i = 0; i < *nsectors; i++)
-diff --git a/grub-core/gfxmenu/gui_string_util.c b/grub-core/gfxmenu/gui_string_util.c
-index a9a415e..ba1e1ea 100644
---- a/grub-core/gfxmenu/gui_string_util.c
-+++ b/grub-core/gfxmenu/gui_string_util.c
-@@ -55,7 +55,7 @@ canonicalize_path (const char *path)
- if (*p == '/')
- components++;
-
-- char **path_array = grub_malloc (components * sizeof (*path_array));
-+ char **path_array = grub_calloc (components, sizeof (*path_array));
- if (! path_array)
- return 0;
-
-diff --git a/grub-core/gfxmenu/widget-box.c b/grub-core/gfxmenu/widget-box.c
-index b606028..470597d 100644
---- a/grub-core/gfxmenu/widget-box.c
-+++ b/grub-core/gfxmenu/widget-box.c
-@@ -303,10 +303,10 @@ grub_gfxmenu_create_box (const char *pixmaps_prefix,
- box->content_height = 0;
- box->raw_pixmaps =
- (struct grub_video_bitmap **)
-- grub_malloc (BOX_NUM_PIXMAPS * sizeof (struct grub_video_bitmap *));
-+ grub_calloc (BOX_NUM_PIXMAPS, sizeof (struct grub_video_bitmap *));
- box->scaled_pixmaps =
- (struct grub_video_bitmap **)
-- grub_malloc (BOX_NUM_PIXMAPS * sizeof (struct grub_video_bitmap *));
-+ grub_calloc (BOX_NUM_PIXMAPS, sizeof (struct grub_video_bitmap *));
-
- /* Initialize all pixmap pointers to NULL so that proper destruction can
- be performed if an error is encountered partway through construction. */
-diff --git a/grub-core/io/gzio.c b/grub-core/io/gzio.c
-index 6208a97..43d98a7 100644
---- a/grub-core/io/gzio.c
-+++ b/grub-core/io/gzio.c
-@@ -554,7 +554,7 @@ huft_build (unsigned *b, /* code lengths in bits (all assumed <= BMAX) */
- z = 1 << j; /* table entries for j-bit table */
-
- /* allocate and link in new table */
-- q = (struct huft *) grub_zalloc ((z + 1) * sizeof (struct huft));
-+ q = (struct huft *) grub_calloc (z + 1, sizeof (struct huft));
- if (! q)
- {
- if (h)
-diff --git a/grub-core/kern/efi/efi.c b/grub-core/kern/efi/efi.c
-index 6e1ceb9..dc31caa 100644
---- a/grub-core/kern/efi/efi.c
-+++ b/grub-core/kern/efi/efi.c
-@@ -202,7 +202,7 @@ grub_efi_set_variable(const char *var, const grub_efi_guid_t *guid,
-
- len = grub_strlen (var);
- len16 = len * GRUB_MAX_UTF16_PER_UTF8;
-- var16 = grub_malloc ((len16 + 1) * sizeof (var16[0]));
-+ var16 = grub_calloc (len16 + 1, sizeof (var16[0]));
- if (!var16)
- return grub_errno;
- len16 = grub_utf8_to_utf16 (var16, len16, (grub_uint8_t *) var, len, NULL);
-@@ -237,7 +237,7 @@ grub_efi_get_variable (const char *var, const grub_efi_guid_t *guid,
-
- len = grub_strlen (var);
- len16 = len * GRUB_MAX_UTF16_PER_UTF8;
-- var16 = grub_malloc ((len16 + 1) * sizeof (var16[0]));
-+ var16 = grub_calloc (len16 + 1, sizeof (var16[0]));
- if (!var16)
- return NULL;
- len16 = grub_utf8_to_utf16 (var16, len16, (grub_uint8_t *) var, len, NULL);
-@@ -383,7 +383,7 @@ grub_efi_get_filename (grub_efi_device_path_t *dp0)
- while (len > 0 && fp->path_name[len - 1] == 0)
- len--;
-
-- dup_name = grub_malloc (len * sizeof (*dup_name));
-+ dup_name = grub_calloc (len, sizeof (*dup_name));
- if (!dup_name)
- {
- grub_free (name);
-diff --git a/grub-core/kern/emu/hostdisk.c b/grub-core/kern/emu/hostdisk.c
-index e9ec680..d975265 100644
---- a/grub-core/kern/emu/hostdisk.c
-+++ b/grub-core/kern/emu/hostdisk.c
-@@ -615,7 +615,7 @@ static char *
- grub_util_path_concat_real (size_t n, int ext, va_list ap)
- {
- size_t totlen = 0;
-- char **l = xmalloc ((n + ext) * sizeof (l[0]));
-+ char **l = xcalloc (n + ext, sizeof (l[0]));
- char *r, *p, *pi;
- size_t i;
- int first = 1;
-diff --git a/grub-core/kern/fs.c b/grub-core/kern/fs.c
-index 2b85f49..f90be65 100644
---- a/grub-core/kern/fs.c
-+++ b/grub-core/kern/fs.c
-@@ -151,7 +151,7 @@ grub_fs_blocklist_open (grub_file_t file, const char *name)
- while (p);
-
- /* Allocate a block list. */
-- blocks = grub_zalloc (sizeof (struct grub_fs_block) * (num + 1));
-+ blocks = grub_calloc (num + 1, sizeof (struct grub_fs_block));
- if (! blocks)
- return 0;
-
-diff --git a/grub-core/kern/misc.c b/grub-core/kern/misc.c
-index 3b633d5..a7abd36 100644
---- a/grub-core/kern/misc.c
-+++ b/grub-core/kern/misc.c
-@@ -690,7 +690,7 @@ parse_printf_args (const char *fmt0, struct printf_args *args,
- args->ptr = args->prealloc;
- else
- {
-- args->ptr = grub_malloc (args->count * sizeof (args->ptr[0]));
-+ args->ptr = grub_calloc (args->count, sizeof (args->ptr[0]));
- if (!args->ptr)
- {
- grub_errno = GRUB_ERR_NONE;
-diff --git a/grub-core/kern/parser.c b/grub-core/kern/parser.c
-index 78175aa..619db31 100644
---- a/grub-core/kern/parser.c
-+++ b/grub-core/kern/parser.c
-@@ -213,7 +213,7 @@ grub_parser_split_cmdline (const char *cmdline,
- return grub_errno;
- grub_memcpy (args, buffer, bp - buffer);
-
-- *argv = grub_malloc (sizeof (char *) * (*argc + 1));
-+ *argv = grub_calloc (*argc + 1, sizeof (char *));
- if (!*argv)
- {
- grub_free (args);
-diff --git a/grub-core/kern/uboot/uboot.c b/grub-core/kern/uboot/uboot.c
-index be4816f..aac8f9a 100644
---- a/grub-core/kern/uboot/uboot.c
-+++ b/grub-core/kern/uboot/uboot.c
-@@ -133,7 +133,7 @@ grub_uboot_dev_enum (void)
- return num_devices;
-
- max_devices = 2;
-- enum_devices = grub_malloc (sizeof(struct device_info) * max_devices);
-+ enum_devices = grub_calloc (max_devices, sizeof(struct device_info));
- if (!enum_devices)
- return 0;
-
-diff --git a/grub-core/lib/libgcrypt/cipher/ac.c b/grub-core/lib/libgcrypt/cipher/ac.c
-index f5e946a..63f6fcd 100644
---- a/grub-core/lib/libgcrypt/cipher/ac.c
-+++ b/grub-core/lib/libgcrypt/cipher/ac.c
-@@ -185,7 +185,7 @@ ac_data_mpi_copy (gcry_ac_mpi_t *data_mpis, unsigned int data_mpis_n,
- gcry_mpi_t mpi;
- char *label;
-
-- data_mpis_new = gcry_malloc (sizeof (*data_mpis_new) * data_mpis_n);
-+ data_mpis_new = gcry_calloc (data_mpis_n, sizeof (*data_mpis_new));
- if (! data_mpis_new)
- {
- err = gcry_error_from_errno (errno);
-@@ -572,7 +572,7 @@ _gcry_ac_data_to_sexp (gcry_ac_data_t data, gcry_sexp_t *sexp,
- }
-
- /* Add MPI list. */
-- arg_list = gcry_malloc (sizeof (*arg_list) * (data_n + 1));
-+ arg_list = gcry_calloc (data_n + 1, sizeof (*arg_list));
- if (! arg_list)
- {
- err = gcry_error_from_errno (errno);
-@@ -1283,7 +1283,7 @@ ac_data_construct (const char *identifier, int include_flags,
- /* We build a list of arguments to pass to
- gcry_sexp_build_array(). */
- data_length = _gcry_ac_data_length (data);
-- arg_list = gcry_malloc (sizeof (*arg_list) * (data_length * 2));
-+ arg_list = gcry_calloc (data_length, sizeof (*arg_list) * 2);
- if (! arg_list)
- {
- err = gcry_error_from_errno (errno);
-@@ -1593,7 +1593,7 @@ _gcry_ac_key_pair_generate (gcry_ac_handle_t handle, unsigned int nbits,
- arg_list_n += 2;
-
- /* Allocate list. */
-- arg_list = gcry_malloc (sizeof (*arg_list) * arg_list_n);
-+ arg_list = gcry_calloc (arg_list_n, sizeof (*arg_list));
- if (! arg_list)
- {
- err = gcry_error_from_errno (errno);
-diff --git a/grub-core/lib/libgcrypt/cipher/primegen.c b/grub-core/lib/libgcrypt/cipher/primegen.c
-index 2788e34..b12e79b 100644
---- a/grub-core/lib/libgcrypt/cipher/primegen.c
-+++ b/grub-core/lib/libgcrypt/cipher/primegen.c
-@@ -383,7 +383,7 @@ prime_generate_internal (int need_q_factor,
- }
-
- /* Allocate an array to track pool usage. */
-- pool_in_use = gcry_malloc (n * sizeof *pool_in_use);
-+ pool_in_use = gcry_calloc (n, sizeof *pool_in_use);
- if (!pool_in_use)
- {
- err = gpg_err_code_from_errno (errno);
-@@ -765,7 +765,7 @@ gen_prime (unsigned int nbits, int secret, int randomlevel,
- if (nbits < 16)
- log_fatal ("can't generate a prime with less than %d bits\n", 16);
-
-- mods = gcry_xmalloc( no_of_small_prime_numbers * sizeof *mods );
-+ mods = gcry_xcalloc( no_of_small_prime_numbers, sizeof *mods);
- /* Make nbits fit into gcry_mpi_t implementation. */
- val_2 = mpi_alloc_set_ui( 2 );
- val_3 = mpi_alloc_set_ui( 3);
-diff --git a/grub-core/lib/libgcrypt/cipher/pubkey.c b/grub-core/lib/libgcrypt/cipher/pubkey.c
-index 9109821..ca087ad 100644
---- a/grub-core/lib/libgcrypt/cipher/pubkey.c
-+++ b/grub-core/lib/libgcrypt/cipher/pubkey.c
-@@ -2941,7 +2941,7 @@ gcry_pk_encrypt (gcry_sexp_t *r_ciph, gcry_sexp_t s_data, gcry_sexp_t s_pkey)
- * array to a format string, so we have to do it this way :-(. */
- /* FIXME: There is now such a format specifier, so we can
- change the code to be more clear. */
-- arg_list = malloc (nelem * sizeof *arg_list);
-+ arg_list = calloc (nelem, sizeof *arg_list);
- if (!arg_list)
- {
- rc = gpg_err_code_from_syserror ();
-@@ -3233,7 +3233,7 @@ gcry_pk_sign (gcry_sexp_t *r_sig, gcry_sexp_t s_hash, gcry_sexp_t s_skey)
- }
- strcpy (p, "))");
-
-- arg_list = malloc (nelem * sizeof *arg_list);
-+ arg_list = calloc (nelem, sizeof *arg_list);
- if (!arg_list)
- {
- rc = gpg_err_code_from_syserror ();
-diff --git a/grub-core/lib/priority_queue.c b/grub-core/lib/priority_queue.c
-index 659be0b..7d5e7c0 100644
---- a/grub-core/lib/priority_queue.c
-+++ b/grub-core/lib/priority_queue.c
-@@ -92,7 +92,7 @@ grub_priority_queue_new (grub_size_t elsize,
- {
- struct grub_priority_queue *ret;
- void *els;
-- els = grub_malloc (elsize * 8);
-+ els = grub_calloc (8, elsize);
- if (!els)
- return 0;
- ret = (struct grub_priority_queue *) grub_malloc (sizeof (*ret));
-diff --git a/grub-core/lib/reed_solomon.c b/grub-core/lib/reed_solomon.c
-index ee9fa7b..467305b 100644
---- a/grub-core/lib/reed_solomon.c
-+++ b/grub-core/lib/reed_solomon.c
-@@ -20,6 +20,7 @@
- #include <stdio.h>
- #include <string.h>
- #include <stdlib.h>
-+#define xcalloc calloc
- #define xmalloc malloc
- #define grub_memset memset
- #define grub_memcpy memcpy
-@@ -158,11 +159,9 @@ rs_encode (gf_single_t *data, grub_size_t s, grub_size_t rs)
- gf_single_t *rs_polynomial;
- int i, j;
- gf_single_t *m;
-- m = xmalloc ((s + rs) * sizeof (gf_single_t));
-+ m = xcalloc (s + rs, sizeof (gf_single_t));
- grub_memcpy (m, data, s * sizeof (gf_single_t));
-- grub_memset (m + s, 0, rs * sizeof (gf_single_t));
-- rs_polynomial = xmalloc ((rs + 1) * sizeof (gf_single_t));
-- grub_memset (rs_polynomial, 0, (rs + 1) * sizeof (gf_single_t));
-+ rs_polynomial = xcalloc (rs + 1, sizeof (gf_single_t));
- rs_polynomial[rs] = 1;
- /* Multiply with X - a^r */
- for (j = 0; j < rs; j++)
-diff --git a/grub-core/lib/relocator.c b/grub-core/lib/relocator.c
-index ea3ebc7..5847aac 100644
---- a/grub-core/lib/relocator.c
-+++ b/grub-core/lib/relocator.c
-@@ -495,9 +495,9 @@ malloc_in_range (struct grub_relocator *rel,
- }
- #endif
-
-- eventt = grub_malloc (maxevents * sizeof (events[0]));
-+ eventt = grub_calloc (maxevents, sizeof (events[0]));
- counter = grub_malloc ((DIGITSORT_MASK + 2) * sizeof (counter[0]));
-- events = grub_malloc (maxevents * sizeof (events[0]));
-+ events = grub_calloc (maxevents, sizeof (events[0]));
- if (!events || !eventt || !counter)
- {
- grub_dprintf ("relocator", "events or counter allocation failed %d\n",
-@@ -963,7 +963,7 @@ malloc_in_range (struct grub_relocator *rel,
- #endif
- unsigned cural = 0;
- int oom = 0;
-- res->subchunks = grub_malloc (sizeof (res->subchunks[0]) * nallocs);
-+ res->subchunks = grub_calloc (nallocs, sizeof (res->subchunks[0]));
- if (!res->subchunks)
- oom = 1;
- res->nsubchunks = nallocs;
-@@ -1562,8 +1562,8 @@ grub_relocator_prepare_relocs (struct grub_relocator *rel, grub_addr_t addr,
- count[(chunk->src & 0xff) + 1]++;
- }
- }
-- from = grub_malloc (nchunks * sizeof (sorted[0]));
-- to = grub_malloc (nchunks * sizeof (sorted[0]));
-+ from = grub_calloc (nchunks, sizeof (sorted[0]));
-+ to = grub_calloc (nchunks, sizeof (sorted[0]));
- if (!from || !to)
- {
- grub_free (from);
-diff --git a/grub-core/lib/zstd/fse_decompress.c b/grub-core/lib/zstd/fse_decompress.c
-index 72bbead..2227b84 100644
---- a/grub-core/lib/zstd/fse_decompress.c
-+++ b/grub-core/lib/zstd/fse_decompress.c
-@@ -82,7 +82,7 @@
- FSE_DTable* FSE_createDTable (unsigned tableLog)
- {
- if (tableLog > FSE_TABLELOG_ABSOLUTE_MAX) tableLog = FSE_TABLELOG_ABSOLUTE_MAX;
-- return (FSE_DTable*)malloc( FSE_DTABLE_SIZE_U32(tableLog) * sizeof (U32) );
-+ return (FSE_DTable*)calloc( FSE_DTABLE_SIZE_U32(tableLog), sizeof (U32) );
- }
-
- void FSE_freeDTable (FSE_DTable* dt)
-diff --git a/grub-core/loader/arm/linux.c b/grub-core/loader/arm/linux.c
-index 5168491..d70c174 100644
---- a/grub-core/loader/arm/linux.c
-+++ b/grub-core/loader/arm/linux.c
-@@ -78,7 +78,7 @@ linux_prepare_atag (void *target_atag)
-
- /* some place for cmdline, initrd and terminator. */
- tmp_size = get_atag_size (atag_orig) + 20 + (arg_size) / 4;
-- tmp_atag = grub_malloc (tmp_size * sizeof (grub_uint32_t));
-+ tmp_atag = grub_calloc (tmp_size, sizeof (grub_uint32_t));
- if (!tmp_atag)
- return grub_errno;
-
-diff --git a/grub-core/loader/efi/chainloader.c b/grub-core/loader/efi/chainloader.c
-index cd92ea3..daf8c6b 100644
---- a/grub-core/loader/efi/chainloader.c
-+++ b/grub-core/loader/efi/chainloader.c
-@@ -116,7 +116,7 @@ copy_file_path (grub_efi_file_path_device_path_t *fp,
- fp->header.type = GRUB_EFI_MEDIA_DEVICE_PATH_TYPE;
- fp->header.subtype = GRUB_EFI_FILE_PATH_DEVICE_PATH_SUBTYPE;
-
-- path_name = grub_malloc (len * GRUB_MAX_UTF16_PER_UTF8 * sizeof (*path_name));
-+ path_name = grub_calloc (len, GRUB_MAX_UTF16_PER_UTF8 * sizeof (*path_name));
- if (!path_name)
- return;
-
-diff --git a/grub-core/loader/i386/bsdXX.c b/grub-core/loader/i386/bsdXX.c
-index af6741d..a8d8bf7 100644
---- a/grub-core/loader/i386/bsdXX.c
-+++ b/grub-core/loader/i386/bsdXX.c
-@@ -48,7 +48,7 @@ read_headers (grub_file_t file, const char *filename, Elf_Ehdr *e, char **shdr)
- if (e->e_ident[EI_CLASS] != SUFFIX (ELFCLASS))
- return grub_error (GRUB_ERR_BAD_OS, N_("invalid arch-dependent ELF magic"));
-
-- *shdr = grub_malloc ((grub_uint32_t) e->e_shnum * e->e_shentsize);
-+ *shdr = grub_calloc (e->e_shnum, e->e_shentsize);
- if (! *shdr)
- return grub_errno;
-
-diff --git a/grub-core/loader/i386/xnu.c b/grub-core/loader/i386/xnu.c
-index e64ed08..b7d176b 100644
---- a/grub-core/loader/i386/xnu.c
-+++ b/grub-core/loader/i386/xnu.c
-@@ -295,7 +295,7 @@ grub_xnu_devprop_add_property_utf8 (struct grub_xnu_devprop_device_descriptor *d
- return grub_errno;
-
- len = grub_strlen (name);
-- utf16 = grub_malloc (sizeof (grub_uint16_t) * len);
-+ utf16 = grub_calloc (len, sizeof (grub_uint16_t));
- if (!utf16)
- {
- grub_free (utf8);
-@@ -331,7 +331,7 @@ grub_xnu_devprop_add_property_utf16 (struct grub_xnu_devprop_device_descriptor *
- grub_uint16_t *utf16;
- grub_err_t err;
-
-- utf16 = grub_malloc (sizeof (grub_uint16_t) * namelen);
-+ utf16 = grub_calloc (namelen, sizeof (grub_uint16_t));
- if (!utf16)
- return grub_errno;
- grub_memcpy (utf16, name, sizeof (grub_uint16_t) * namelen);
-diff --git a/grub-core/loader/macho.c b/grub-core/loader/macho.c
-index 085f9c6..05710c4 100644
---- a/grub-core/loader/macho.c
-+++ b/grub-core/loader/macho.c
-@@ -97,7 +97,7 @@ grub_macho_file (grub_file_t file, const char *filename, int is_64bit)
- if (grub_file_seek (macho->file, sizeof (struct grub_macho_fat_header))
- == (grub_off_t) -1)
- goto fail;
-- archs = grub_malloc (sizeof (struct grub_macho_fat_arch) * narchs);
-+ archs = grub_calloc (narchs, sizeof (struct grub_macho_fat_arch));
- if (!archs)
- goto fail;
- if (grub_file_read (macho->file, archs,
-diff --git a/grub-core/loader/multiboot_elfxx.c b/grub-core/loader/multiboot_elfxx.c
-index 70cd1db..cc68536 100644
---- a/grub-core/loader/multiboot_elfxx.c
-+++ b/grub-core/loader/multiboot_elfxx.c
-@@ -217,7 +217,7 @@ CONCAT(grub_multiboot_load_elf, XX) (mbi_load_data_t *mld)
- {
- grub_uint8_t *shdr, *shdrptr;
-
-- shdr = grub_malloc ((grub_uint32_t) ehdr->e_shnum * ehdr->e_shentsize);
-+ shdr = grub_calloc (ehdr->e_shnum, ehdr->e_shentsize);
- if (!shdr)
- return grub_errno;
-
-diff --git a/grub-core/loader/xnu.c b/grub-core/loader/xnu.c
-index 7f74d1d..77d7060 100644
---- a/grub-core/loader/xnu.c
-+++ b/grub-core/loader/xnu.c
-@@ -800,7 +800,7 @@ grub_cmd_xnu_mkext (grub_command_t cmd __attribute__ ((unused)),
- if (grub_be_to_cpu32 (head.magic) == GRUB_MACHO_FAT_MAGIC)
- {
- narchs = grub_be_to_cpu32 (head.nfat_arch);
-- archs = grub_malloc (sizeof (struct grub_macho_fat_arch) * narchs);
-+ archs = grub_calloc (narchs, sizeof (struct grub_macho_fat_arch));
- if (! archs)
- {
- grub_file_close (file);
-diff --git a/grub-core/mmap/mmap.c b/grub-core/mmap/mmap.c
-index 6a31cba..57b4e9a 100644
---- a/grub-core/mmap/mmap.c
-+++ b/grub-core/mmap/mmap.c
-@@ -143,9 +143,9 @@ grub_mmap_iterate (grub_memory_hook_t hook, void *hook_data)
-
- /* Initialize variables. */
- ctx.scanline_events = (struct grub_mmap_scan *)
-- grub_malloc (sizeof (struct grub_mmap_scan) * 2 * mmap_num);
-+ grub_calloc (mmap_num, sizeof (struct grub_mmap_scan) * 2);
-
-- present = grub_zalloc (sizeof (present[0]) * current_priority);
-+ present = grub_calloc (current_priority, sizeof (present[0]));
-
- if (! ctx.scanline_events || !present)
- {
-diff --git a/grub-core/net/bootp.c b/grub-core/net/bootp.c
-index 04cfbb0..6539572 100644
---- a/grub-core/net/bootp.c
-+++ b/grub-core/net/bootp.c
-@@ -766,7 +766,7 @@ grub_cmd_bootp (struct grub_command *cmd __attribute__ ((unused)),
- if (ncards == 0)
- return grub_error (GRUB_ERR_NET_NO_CARD, N_("no network card found"));
-
-- ifaces = grub_zalloc (ncards * sizeof (ifaces[0]));
-+ ifaces = grub_calloc (ncards, sizeof (ifaces[0]));
- if (!ifaces)
- return grub_errno;
-
-diff --git a/grub-core/net/dns.c b/grub-core/net/dns.c
-index 5d9afe0..e332d5e 100644
---- a/grub-core/net/dns.c
-+++ b/grub-core/net/dns.c
-@@ -285,8 +285,8 @@ recv_hook (grub_net_udp_socket_t sock __attribute__ ((unused)),
- ptr++;
- ptr += 4;
- }
-- *data->addresses = grub_malloc (sizeof ((*data->addresses)[0])
-- * grub_be_to_cpu16 (head->ancount));
-+ *data->addresses = grub_calloc (grub_be_to_cpu16 (head->ancount),
-+ sizeof ((*data->addresses)[0]));
- if (!*data->addresses)
- {
- grub_errno = GRUB_ERR_NONE;
-@@ -406,8 +406,8 @@ recv_hook (grub_net_udp_socket_t sock __attribute__ ((unused)),
- dns_cache[h].addresses = 0;
- dns_cache[h].name = grub_strdup (data->oname);
- dns_cache[h].naddresses = *data->naddresses;
-- dns_cache[h].addresses = grub_malloc (*data->naddresses
-- * sizeof (dns_cache[h].addresses[0]));
-+ dns_cache[h].addresses = grub_calloc (*data->naddresses,
-+ sizeof (dns_cache[h].addresses[0]));
- dns_cache[h].limit_time = grub_get_time_ms () + 1000 * ttl_all;
- if (!dns_cache[h].addresses || !dns_cache[h].name)
- {
-@@ -479,7 +479,7 @@ grub_net_dns_lookup (const char *name,
- }
- }
-
-- sockets = grub_malloc (sizeof (sockets[0]) * n_servers);
-+ sockets = grub_calloc (n_servers, sizeof (sockets[0]));
- if (!sockets)
- return grub_errno;
-
-diff --git a/grub-core/net/net.c b/grub-core/net/net.c
-index d5d726a..38f19df 100644
---- a/grub-core/net/net.c
-+++ b/grub-core/net/net.c
-@@ -333,8 +333,8 @@ grub_cmd_ipv6_autoconf (struct grub_command *cmd __attribute__ ((unused)),
- ncards++;
- }
-
-- ifaces = grub_zalloc (ncards * sizeof (ifaces[0]));
-- slaacs = grub_zalloc (ncards * sizeof (slaacs[0]));
-+ ifaces = grub_calloc (ncards, sizeof (ifaces[0]));
-+ slaacs = grub_calloc (ncards, sizeof (slaacs[0]));
- if (!ifaces || !slaacs)
- {
- grub_free (ifaces);
-diff --git a/grub-core/normal/charset.c b/grub-core/normal/charset.c
-index b0ab47d..d57fb72 100644
---- a/grub-core/normal/charset.c
-+++ b/grub-core/normal/charset.c
-@@ -203,7 +203,7 @@ grub_utf8_to_ucs4_alloc (const char *msg, grub_uint32_t **unicode_msg,
- {
- grub_size_t msg_len = grub_strlen (msg);
-
-- *unicode_msg = grub_malloc (msg_len * sizeof (grub_uint32_t));
-+ *unicode_msg = grub_calloc (msg_len, sizeof (grub_uint32_t));
-
- if (!*unicode_msg)
- return -1;
-@@ -488,7 +488,7 @@ grub_unicode_aglomerate_comb (const grub_uint32_t *in, grub_size_t inlen,
- }
- else
- {
-- n = grub_malloc (sizeof (n[0]) * (out->ncomb + 1));
-+ n = grub_calloc (out->ncomb + 1, sizeof (n[0]));
- if (!n)
- {
- grub_errno = GRUB_ERR_NONE;
-@@ -842,7 +842,7 @@ grub_bidi_line_logical_to_visual (const grub_uint32_t *logical,
- } \
- }
-
-- visual = grub_malloc (sizeof (visual[0]) * logical_len);
-+ visual = grub_calloc (logical_len, sizeof (visual[0]));
- if (!visual)
- return -1;
-
-@@ -1165,8 +1165,8 @@ grub_bidi_logical_to_visual (const grub_uint32_t *logical,
- {
- const grub_uint32_t *line_start = logical, *ptr;
- struct grub_unicode_glyph *visual_ptr;
-- *visual_out = visual_ptr = grub_malloc (3 * sizeof (visual_ptr[0])
-- * (logical_len + 2));
-+ *visual_out = visual_ptr = grub_calloc (logical_len + 2,
-+ 3 * sizeof (visual_ptr[0]));
- if (!visual_ptr)
- return -1;
- for (ptr = logical; ptr <= logical + logical_len; ptr++)
-diff --git a/grub-core/normal/cmdline.c b/grub-core/normal/cmdline.c
-index c037d50..c57242e 100644
---- a/grub-core/normal/cmdline.c
-+++ b/grub-core/normal/cmdline.c
-@@ -41,7 +41,7 @@ grub_err_t
- grub_set_history (int newsize)
- {
- grub_uint32_t **old_hist_lines = hist_lines;
-- hist_lines = grub_malloc (sizeof (grub_uint32_t *) * newsize);
-+ hist_lines = grub_calloc (newsize, sizeof (grub_uint32_t *));
-
- /* Copy the old lines into the new buffer. */
- if (old_hist_lines)
-@@ -114,7 +114,7 @@ static void
- grub_history_set (int pos, grub_uint32_t *s, grub_size_t len)
- {
- grub_free (hist_lines[pos]);
-- hist_lines[pos] = grub_malloc ((len + 1) * sizeof (grub_uint32_t));
-+ hist_lines[pos] = grub_calloc (len + 1, sizeof (grub_uint32_t));
- if (!hist_lines[pos])
- {
- grub_print_error ();
-@@ -349,7 +349,7 @@ grub_cmdline_get (const char *prompt_translated)
- char *ret;
- unsigned nterms;
-
-- buf = grub_malloc (max_len * sizeof (grub_uint32_t));
-+ buf = grub_calloc (max_len, sizeof (grub_uint32_t));
- if (!buf)
- return 0;
-
-@@ -377,7 +377,7 @@ grub_cmdline_get (const char *prompt_translated)
- FOR_ACTIVE_TERM_OUTPUTS(cur)
- nterms++;
-
-- cl_terms = grub_malloc (sizeof (cl_terms[0]) * nterms);
-+ cl_terms = grub_calloc (nterms, sizeof (cl_terms[0]));
- if (!cl_terms)
- {
- grub_free (buf);
-@@ -385,7 +385,7 @@ grub_cmdline_get (const char *prompt_translated)
- }
- cl_term_cur = cl_terms;
-
-- unicode_msg = grub_malloc (msg_len * sizeof (grub_uint32_t));
-+ unicode_msg = grub_calloc (msg_len, sizeof (grub_uint32_t));
- if (!unicode_msg)
- {
- grub_free (buf);
-@@ -495,7 +495,7 @@ grub_cmdline_get (const char *prompt_translated)
- grub_uint32_t *insert;
-
- insertlen = grub_strlen (insertu8);
-- insert = grub_malloc ((insertlen + 1) * sizeof (grub_uint32_t));
-+ insert = grub_calloc (insertlen + 1, sizeof (grub_uint32_t));
- if (!insert)
- {
- grub_free (insertu8);
-@@ -602,7 +602,7 @@ grub_cmdline_get (const char *prompt_translated)
-
- grub_free (kill_buf);
-
-- kill_buf = grub_malloc ((n + 1) * sizeof(grub_uint32_t));
-+ kill_buf = grub_calloc (n + 1, sizeof (grub_uint32_t));
- if (grub_errno)
- {
- grub_print_error ();
-diff --git a/grub-core/normal/menu_entry.c b/grub-core/normal/menu_entry.c
-index cdf3590..1993995 100644
---- a/grub-core/normal/menu_entry.c
-+++ b/grub-core/normal/menu_entry.c
-@@ -95,8 +95,8 @@ init_line (struct screen *screen, struct line *linep)
- {
- linep->len = 0;
- linep->max_len = 80;
-- linep->buf = grub_malloc ((linep->max_len + 1) * sizeof (linep->buf[0]));
-- linep->pos = grub_zalloc (screen->nterms * sizeof (linep->pos[0]));
-+ linep->buf = grub_calloc (linep->max_len + 1, sizeof (linep->buf[0]));
-+ linep->pos = grub_calloc (screen->nterms, sizeof (linep->pos[0]));
- if (! linep->buf || !linep->pos)
- {
- grub_free (linep->buf);
-@@ -287,7 +287,7 @@ update_screen (struct screen *screen, struct per_term_screen *term_screen,
- pos = linep->pos + (term_screen - screen->terms);
-
- if (!*pos)
-- *pos = grub_zalloc ((linep->len + 1) * sizeof (**pos));
-+ *pos = grub_calloc (linep->len + 1, sizeof (**pos));
-
- if (i == region_start || linep == screen->lines + screen->line
- || (i > region_start && mode == ALL_LINES))
-@@ -471,7 +471,7 @@ insert_string (struct screen *screen, const char *s, int update)
-
- /* Insert the string. */
- current_linep = screen->lines + screen->line;
-- unicode_msg = grub_malloc ((p - s) * sizeof (grub_uint32_t));
-+ unicode_msg = grub_calloc (p - s, sizeof (grub_uint32_t));
-
- if (!unicode_msg)
- return 0;
-@@ -1023,7 +1023,7 @@ complete (struct screen *screen, int continuous, int update)
- if (completion_buffer.buf)
- {
- buflen = grub_strlen (completion_buffer.buf);
-- ucs4 = grub_malloc (sizeof (grub_uint32_t) * (buflen + 1));
-+ ucs4 = grub_calloc (buflen + 1, sizeof (grub_uint32_t));
-
- if (!ucs4)
- {
-@@ -1268,7 +1268,7 @@ grub_menu_entry_run (grub_menu_entry_t entry)
- for (i = 0; i < (unsigned) screen->num_lines; i++)
- {
- grub_free (screen->lines[i].pos);
-- screen->lines[i].pos = grub_zalloc (screen->nterms * sizeof (screen->lines[i].pos[0]));
-+ screen->lines[i].pos = grub_calloc (screen->nterms, sizeof (screen->lines[i].pos[0]));
- if (! screen->lines[i].pos)
- {
- grub_print_error ();
-@@ -1278,7 +1278,7 @@ grub_menu_entry_run (grub_menu_entry_t entry)
- }
- }
-
-- screen->terms = grub_zalloc (screen->nterms * sizeof (screen->terms[0]));
-+ screen->terms = grub_calloc (screen->nterms, sizeof (screen->terms[0]));
- if (!screen->terms)
- {
- grub_print_error ();
-diff --git a/grub-core/normal/menu_text.c b/grub-core/normal/menu_text.c
-index e22bb91..18240e7 100644
---- a/grub-core/normal/menu_text.c
-+++ b/grub-core/normal/menu_text.c
-@@ -78,7 +78,7 @@ grub_print_message_indented_real (const char *msg, int margin_left,
- grub_size_t msg_len = grub_strlen (msg) + 2;
- int ret = 0;
-
-- unicode_msg = grub_malloc (msg_len * sizeof (grub_uint32_t));
-+ unicode_msg = grub_calloc (msg_len, sizeof (grub_uint32_t));
-
- if (!unicode_msg)
- return 0;
-@@ -211,7 +211,7 @@ print_entry (int y, int highlight, grub_menu_entry_t entry,
-
- title = entry ? entry->title : "";
- title_len = grub_strlen (title);
-- unicode_title = grub_malloc (title_len * sizeof (*unicode_title));
-+ unicode_title = grub_calloc (title_len, sizeof (*unicode_title));
- if (! unicode_title)
- /* XXX How to show this error? */
- return;
-diff --git a/grub-core/normal/term.c b/grub-core/normal/term.c
-index a1e5c5a..cc8c173 100644
---- a/grub-core/normal/term.c
-+++ b/grub-core/normal/term.c
-@@ -264,7 +264,7 @@ grub_term_save_pos (void)
- FOR_ACTIVE_TERM_OUTPUTS(cur)
- cnt++;
-
-- ret = grub_malloc (cnt * sizeof (ret[0]));
-+ ret = grub_calloc (cnt, sizeof (ret[0]));
- if (!ret)
- return NULL;
-
-@@ -1013,7 +1013,7 @@ grub_xnputs (const char *str, grub_size_t msg_len)
-
- grub_error_push ();
-
-- unicode_str = grub_malloc (msg_len * sizeof (grub_uint32_t));
-+ unicode_str = grub_calloc (msg_len, sizeof (grub_uint32_t));
-
- grub_error_pop ();
-
-diff --git a/grub-core/osdep/linux/getroot.c b/grub-core/osdep/linux/getroot.c
-index 90d92d3..5b41ad0 100644
---- a/grub-core/osdep/linux/getroot.c
-+++ b/grub-core/osdep/linux/getroot.c
-@@ -168,7 +168,7 @@ grub_util_raid_getmembers (const char *name, int bootable)
- if (ret != 0)
- grub_util_error (_("ioctl GET_ARRAY_INFO error: %s"), strerror (errno));
-
-- devicelist = xmalloc ((info.nr_disks + 1) * sizeof (char *));
-+ devicelist = xcalloc (info.nr_disks + 1, sizeof (char *));
-
- for (i = 0, j = 0; j < info.nr_disks; i++)
- {
-@@ -241,7 +241,7 @@ grub_find_root_devices_from_btrfs (const char *dir)
- return NULL;
- }
-
-- ret = xmalloc ((fsi.num_devices + 1) * sizeof (ret[0]));
-+ ret = xcalloc (fsi.num_devices + 1, sizeof (ret[0]));
-
- for (i = 1; i <= fsi.max_id && j < fsi.num_devices; i++)
- {
-@@ -396,7 +396,7 @@ grub_find_root_devices_from_mountinfo (const char *dir, char **relroot)
- if (relroot)
- *relroot = NULL;
-
-- entries = xmalloc (entry_max * sizeof (*entries));
-+ entries = xcalloc (entry_max, sizeof (*entries));
-
- again:
- fp = grub_util_fopen ("/proc/self/mountinfo", "r");
-diff --git a/grub-core/osdep/unix/config.c b/grub-core/osdep/unix/config.c
-index 65effa9..7d63251 100644
---- a/grub-core/osdep/unix/config.c
-+++ b/grub-core/osdep/unix/config.c
-@@ -89,7 +89,7 @@ grub_util_load_config (struct grub_util_config *cfg)
- argv[0] = "sh";
- argv[1] = "-c";
-
-- script = xmalloc (4 * strlen (cfgfile) + 300);
-+ script = xcalloc (4, strlen (cfgfile) + 300);
-
- ptr = script;
- memcpy (ptr, ". '", 3);
-diff --git a/grub-core/osdep/windows/getroot.c b/grub-core/osdep/windows/getroot.c
-index 661d954..eada663 100644
---- a/grub-core/osdep/windows/getroot.c
-+++ b/grub-core/osdep/windows/getroot.c
-@@ -59,7 +59,7 @@ grub_get_mount_point (const TCHAR *path)
-
- for (ptr = path; *ptr; ptr++);
- allocsize = (ptr - path + 10) * 2;
-- out = xmalloc (allocsize * sizeof (out[0]));
-+ out = xcalloc (allocsize, sizeof (out[0]));
-
- /* When pointing to EFI system partition GetVolumePathName fails
- for ESP root and returns abberant information for everything
-diff --git a/grub-core/osdep/windows/hostdisk.c b/grub-core/osdep/windows/hostdisk.c
-index 3551007..0be3273 100644
---- a/grub-core/osdep/windows/hostdisk.c
-+++ b/grub-core/osdep/windows/hostdisk.c
-@@ -111,7 +111,7 @@ grub_util_get_windows_path_real (const char *path)
-
- while (1)
- {
-- fpa = xmalloc (alloc * sizeof (fpa[0]));
-+ fpa = xcalloc (alloc, sizeof (fpa[0]));
-
- len = GetFullPathName (tpath, alloc, fpa, NULL);
- if (len >= alloc)
-@@ -399,7 +399,7 @@ grub_util_fd_opendir (const char *name)
- for (l = 0; name_windows[l]; l++);
- for (l--; l >= 0 && (name_windows[l] == '\\' || name_windows[l] == '/'); l--);
- l++;
-- pattern = xmalloc ((l + 3) * sizeof (pattern[0]));
-+ pattern = xcalloc (l + 3, sizeof (pattern[0]));
- memcpy (pattern, name_windows, l * sizeof (pattern[0]));
- pattern[l] = '\\';
- pattern[l + 1] = '*';
-diff --git a/grub-core/osdep/windows/init.c b/grub-core/osdep/windows/init.c
-index e8ffd62..6297de6 100644
---- a/grub-core/osdep/windows/init.c
-+++ b/grub-core/osdep/windows/init.c
-@@ -161,7 +161,7 @@ grub_util_host_init (int *argc __attribute__ ((unused)),
- LPWSTR *targv;
-
- targv = CommandLineToArgvW (tcmdline, argc);
-- *argv = xmalloc ((*argc + 1) * sizeof (argv[0]));
-+ *argv = xcalloc (*argc + 1, sizeof (argv[0]));
-
- for (i = 0; i < *argc; i++)
- (*argv)[i] = grub_util_tchar_to_utf8 (targv[i]);
-diff --git a/grub-core/osdep/windows/platform.c b/grub-core/osdep/windows/platform.c
-index 7eb53fe..1ef86bf 100644
---- a/grub-core/osdep/windows/platform.c
-+++ b/grub-core/osdep/windows/platform.c
-@@ -225,8 +225,8 @@ grub_install_register_efi (grub_device_t efidir_grub_dev,
- grub_util_error ("%s", _("no EFI routines are available when running in BIOS mode"));
-
- distrib8_len = grub_strlen (efi_distributor);
-- distributor16 = xmalloc ((distrib8_len + 1) * GRUB_MAX_UTF16_PER_UTF8
-- * sizeof (grub_uint16_t));
-+ distributor16 = xcalloc (distrib8_len + 1,
-+ GRUB_MAX_UTF16_PER_UTF8 * sizeof (grub_uint16_t));
- distrib16_len = grub_utf8_to_utf16 (distributor16, distrib8_len * GRUB_MAX_UTF16_PER_UTF8,
- (const grub_uint8_t *) efi_distributor,
- distrib8_len, 0);
-diff --git a/grub-core/osdep/windows/relpath.c b/grub-core/osdep/windows/relpath.c
-index cb08617..478e8ef 100644
---- a/grub-core/osdep/windows/relpath.c
-+++ b/grub-core/osdep/windows/relpath.c
-@@ -72,7 +72,7 @@ grub_make_system_path_relative_to_its_root (const char *path)
- if (dirwindows[0] && dirwindows[1] == ':')
- offset = 2;
- }
-- ret = xmalloc (sizeof (ret[0]) * (flen - offset + 2));
-+ ret = xcalloc (flen - offset + 2, sizeof (ret[0]));
- if (dirwindows[offset] != '\\'
- && dirwindows[offset] != '/'
- && dirwindows[offset])
-diff --git a/grub-core/partmap/gpt.c b/grub-core/partmap/gpt.c
-index 103f679..72a2e37 100644
---- a/grub-core/partmap/gpt.c
-+++ b/grub-core/partmap/gpt.c
-@@ -199,7 +199,7 @@ gpt_partition_map_embed (struct grub_disk *disk, unsigned int *nsectors,
- *nsectors = ctx.len;
- if (*nsectors > max_nsectors)
- *nsectors = max_nsectors;
-- *sectors = grub_malloc (*nsectors * sizeof (**sectors));
-+ *sectors = grub_calloc (*nsectors, sizeof (**sectors));
- if (!*sectors)
- return grub_errno;
- for (i = 0; i < *nsectors; i++)
-diff --git a/grub-core/partmap/msdos.c b/grub-core/partmap/msdos.c
-index 7b8e450..ee3f249 100644
---- a/grub-core/partmap/msdos.c
-+++ b/grub-core/partmap/msdos.c
-@@ -337,7 +337,7 @@ pc_partition_map_embed (struct grub_disk *disk, unsigned int *nsectors,
- avail_nsectors = *nsectors;
- if (*nsectors > max_nsectors)
- *nsectors = max_nsectors;
-- *sectors = grub_malloc (*nsectors * sizeof (**sectors));
-+ *sectors = grub_calloc (*nsectors, sizeof (**sectors));
- if (!*sectors)
- return grub_errno;
- for (i = 0; i < *nsectors; i++)
-diff --git a/grub-core/script/execute.c b/grub-core/script/execute.c
-index ee299fd..c8d6806 100644
---- a/grub-core/script/execute.c
-+++ b/grub-core/script/execute.c
-@@ -553,7 +553,7 @@ gettext_append (struct grub_script_argv *result, const char *orig_str)
- for (iptr = orig_str; *iptr; iptr++)
- if (*iptr == '$')
- dollar_cnt++;
-- ctx.allowed_strings = grub_malloc (sizeof (ctx.allowed_strings[0]) * dollar_cnt);
-+ ctx.allowed_strings = grub_calloc (dollar_cnt, sizeof (ctx.allowed_strings[0]));
-
- if (parse_string (orig_str, gettext_save_allow, &ctx, 0))
- goto fail;
-diff --git a/grub-core/tests/fake_input.c b/grub-core/tests/fake_input.c
-index 2d60852..b5eb516 100644
---- a/grub-core/tests/fake_input.c
-+++ b/grub-core/tests/fake_input.c
-@@ -49,7 +49,7 @@ grub_terminal_input_fake_sequence (int *seq_in, int nseq_in)
- saved = grub_term_inputs;
- if (seq)
- grub_free (seq);
-- seq = grub_malloc (nseq_in * sizeof (seq[0]));
-+ seq = grub_calloc (nseq_in, sizeof (seq[0]));
- if (!seq)
- return;
-
-diff --git a/grub-core/tests/video_checksum.c b/grub-core/tests/video_checksum.c
-index 74d5b65..44d0810 100644
---- a/grub-core/tests/video_checksum.c
-+++ b/grub-core/tests/video_checksum.c
-@@ -336,7 +336,7 @@ grub_video_capture_write_bmp (const char *fname,
- {
- case 4:
- {
-- grub_uint8_t *buffer = xmalloc (mode_info->width * 3);
-+ grub_uint8_t *buffer = xcalloc (3, mode_info->width);
- grub_uint32_t rmask = ((1 << mode_info->red_mask_size) - 1);
- grub_uint32_t gmask = ((1 << mode_info->green_mask_size) - 1);
- grub_uint32_t bmask = ((1 << mode_info->blue_mask_size) - 1);
-@@ -367,7 +367,7 @@ grub_video_capture_write_bmp (const char *fname,
- }
- case 3:
- {
-- grub_uint8_t *buffer = xmalloc (mode_info->width * 3);
-+ grub_uint8_t *buffer = xcalloc (3, mode_info->width);
- grub_uint32_t rmask = ((1 << mode_info->red_mask_size) - 1);
- grub_uint32_t gmask = ((1 << mode_info->green_mask_size) - 1);
- grub_uint32_t bmask = ((1 << mode_info->blue_mask_size) - 1);
-@@ -407,7 +407,7 @@ grub_video_capture_write_bmp (const char *fname,
- }
- case 2:
- {
-- grub_uint8_t *buffer = xmalloc (mode_info->width * 3);
-+ grub_uint8_t *buffer = xcalloc (3, mode_info->width);
- grub_uint16_t rmask = ((1 << mode_info->red_mask_size) - 1);
- grub_uint16_t gmask = ((1 << mode_info->green_mask_size) - 1);
- grub_uint16_t bmask = ((1 << mode_info->blue_mask_size) - 1);
-diff --git a/grub-core/video/capture.c b/grub-core/video/capture.c
-index 4f83c74..4d3195e 100644
---- a/grub-core/video/capture.c
-+++ b/grub-core/video/capture.c
-@@ -89,7 +89,7 @@ grub_video_capture_start (const struct grub_video_mode_info *mode_info,
- framebuffer.mode_info = *mode_info;
- framebuffer.mode_info.blit_format = grub_video_get_blit_format (&framebuffer.mode_info);
-
-- framebuffer.ptr = grub_malloc (framebuffer.mode_info.height * framebuffer.mode_info.pitch);
-+ framebuffer.ptr = grub_calloc (framebuffer.mode_info.height, framebuffer.mode_info.pitch);
- if (!framebuffer.ptr)
- return grub_errno;
-
-diff --git a/grub-core/video/emu/sdl.c b/grub-core/video/emu/sdl.c
-index a2f639f..0ebab6f 100644
---- a/grub-core/video/emu/sdl.c
-+++ b/grub-core/video/emu/sdl.c
-@@ -172,7 +172,7 @@ grub_video_sdl_set_palette (unsigned int start, unsigned int count,
- if (start + count > mode_info.number_of_colors)
- count = mode_info.number_of_colors - start;
-
-- tmp = grub_malloc (count * sizeof (tmp[0]));
-+ tmp = grub_calloc (count, sizeof (tmp[0]));
- for (i = 0; i < count; i++)
- {
- tmp[i].r = palette_data[i].r;
-diff --git a/grub-core/video/i386/pc/vga.c b/grub-core/video/i386/pc/vga.c
-index 01f4711..b2f776c 100644
---- a/grub-core/video/i386/pc/vga.c
-+++ b/grub-core/video/i386/pc/vga.c
-@@ -127,7 +127,7 @@ grub_video_vga_setup (unsigned int width, unsigned int height,
-
- vga_height = height ? : 480;
-
-- framebuffer.temporary_buffer = grub_malloc (vga_height * VGA_WIDTH);
-+ framebuffer.temporary_buffer = grub_calloc (vga_height, VGA_WIDTH);
- framebuffer.front_page = 0;
- framebuffer.back_page = 0;
- if (!framebuffer.temporary_buffer)
-diff --git a/grub-core/video/readers/png.c b/grub-core/video/readers/png.c
-index 777e713..61bd645 100644
---- a/grub-core/video/readers/png.c
-+++ b/grub-core/video/readers/png.c
-@@ -309,7 +309,7 @@ grub_png_decode_image_header (struct grub_png_data *data)
- if (data->is_16bit || data->is_gray || data->is_palette)
- #endif
- {
-- data->image_data = grub_malloc (data->image_height * data->row_bytes);
-+ data->image_data = grub_calloc (data->image_height, data->row_bytes);
- if (grub_errno)
- return grub_errno;
-
-diff --git a/include/grub/unicode.h b/include/grub/unicode.h
-index a0403e9..4de986a 100644
---- a/include/grub/unicode.h
-+++ b/include/grub/unicode.h
-@@ -293,7 +293,7 @@ grub_unicode_glyph_dup (const struct grub_unicode_glyph *in)
- grub_memcpy (out, in, sizeof (*in));
- if (in->ncomb > ARRAY_SIZE (out->combining_inline))
- {
-- out->combining_ptr = grub_malloc (in->ncomb * sizeof (out->combining_ptr[0]));
-+ out->combining_ptr = grub_calloc (in->ncomb, sizeof (out->combining_ptr[0]));
- if (!out->combining_ptr)
- {
- grub_free (out);
-@@ -315,7 +315,7 @@ grub_unicode_set_glyph (struct grub_unicode_glyph *out,
- grub_memcpy (out, in, sizeof (*in));
- if (in->ncomb > ARRAY_SIZE (out->combining_inline))
- {
-- out->combining_ptr = grub_malloc (in->ncomb * sizeof (out->combining_ptr[0]));
-+ out->combining_ptr = grub_calloc (in->ncomb, sizeof (out->combining_ptr[0]));
- if (!out->combining_ptr)
- return;
- grub_memcpy (out->combining_ptr, in->combining_ptr,
-diff --git a/util/getroot.c b/util/getroot.c
-index 847406f..a5eaa64 100644
---- a/util/getroot.c
-+++ b/util/getroot.c
-@@ -200,7 +200,7 @@ make_device_name (const char *drive)
- char *ret, *ptr;
- const char *iptr;
-
-- ret = xmalloc (strlen (drive) * 2);
-+ ret = xcalloc (2, strlen (drive));
- ptr = ret;
- for (iptr = drive; *iptr; iptr++)
- {
-diff --git a/util/grub-file.c b/util/grub-file.c
-index 50c18b6..b2e7dd6 100644
---- a/util/grub-file.c
-+++ b/util/grub-file.c
-@@ -54,7 +54,7 @@ main (int argc, char *argv[])
-
- grub_util_host_init (&argc, &argv);
-
-- argv2 = xmalloc (argc * sizeof (argv2[0]));
-+ argv2 = xcalloc (argc, sizeof (argv2[0]));
-
- if (argc == 2 && strcmp (argv[1], "--version") == 0)
- {
-diff --git a/util/grub-fstest.c b/util/grub-fstest.c
-index f14e02d..57246af 100644
---- a/util/grub-fstest.c
-+++ b/util/grub-fstest.c
-@@ -650,7 +650,7 @@ argp_parser (int key, char *arg, struct argp_state *state)
- if (args_count < num_disks)
- {
- if (args_count == 0)
-- images = xmalloc (num_disks * sizeof (images[0]));
-+ images = xcalloc (num_disks, sizeof (images[0]));
- images[args_count] = grub_canonicalize_file_name (arg);
- args_count++;
- return 0;
-@@ -734,7 +734,7 @@ main (int argc, char *argv[])
-
- grub_util_host_init (&argc, &argv);
-
-- args = xmalloc (argc * sizeof (args[0]));
-+ args = xcalloc (argc, sizeof (args[0]));
-
- argp_parse (&argp, argc, argv, 0, 0, 0);
-
-diff --git a/util/grub-install-common.c b/util/grub-install-common.c
-index ca0ac61..0295d40 100644
---- a/util/grub-install-common.c
-+++ b/util/grub-install-common.c
-@@ -286,7 +286,7 @@ handle_install_list (struct install_list *il, const char *val,
- il->n_entries++;
- }
- il->n_alloc = il->n_entries + 1;
-- il->entries = xmalloc (il->n_alloc * sizeof (il->entries[0]));
-+ il->entries = xcalloc (il->n_alloc, sizeof (il->entries[0]));
- ptr = val;
- for (ce = il->entries; ; ce++)
- {
-diff --git a/util/grub-install.c b/util/grub-install.c
-index 8a55ad4..a82725f 100644
---- a/util/grub-install.c
-+++ b/util/grub-install.c
-@@ -626,7 +626,7 @@ device_map_check_duplicates (const char *dev_map)
- if (! fp)
- return;
-
-- d = xmalloc (alloced * sizeof (d[0]));
-+ d = xcalloc (alloced, sizeof (d[0]));
-
- while (fgets (buf, sizeof (buf), fp))
- {
-@@ -1260,7 +1260,7 @@ main (int argc, char *argv[])
- ndev++;
- }
-
-- grub_drives = xmalloc (sizeof (grub_drives[0]) * (ndev + 1));
-+ grub_drives = xcalloc (ndev + 1, sizeof (grub_drives[0]));
-
- for (curdev = grub_devices, curdrive = grub_drives; *curdev; curdev++,
- curdrive++)
-diff --git a/util/grub-mkimagexx.c b/util/grub-mkimagexx.c
-index bc087c2..d97d0e7 100644
---- a/util/grub-mkimagexx.c
-+++ b/util/grub-mkimagexx.c
-@@ -2294,10 +2294,8 @@ SUFFIX (grub_mkimage_load_image) (const char *kernel_path,
- + grub_host_to_target16 (e->e_shstrndx) * smd.section_entsize);
- smd.strtab = (char *) e + grub_host_to_target_addr (s->sh_offset);
-
-- smd.addrs = xmalloc (sizeof (*smd.addrs) * smd.num_sections);
-- memset (smd.addrs, 0, sizeof (*smd.addrs) * smd.num_sections);
-- smd.vaddrs = xmalloc (sizeof (*smd.vaddrs) * smd.num_sections);
-- memset (smd.vaddrs, 0, sizeof (*smd.vaddrs) * smd.num_sections);
-+ smd.addrs = xcalloc (smd.num_sections, sizeof (*smd.addrs));
-+ smd.vaddrs = xcalloc (smd.num_sections, sizeof (*smd.vaddrs));
-
- SUFFIX (locate_sections) (e, kernel_path, &smd, layout, image_target);
-
-diff --git a/util/grub-mkrescue.c b/util/grub-mkrescue.c
-index ce2cbc4..5183102 100644
---- a/util/grub-mkrescue.c
-+++ b/util/grub-mkrescue.c
-@@ -441,8 +441,8 @@ main (int argc, char *argv[])
- xorriso = xstrdup ("xorriso");
- label_font = grub_util_path_concat (2, pkgdatadir, "unicode.pf2");
-
-- argp_argv = xmalloc (sizeof (argp_argv[0]) * argc);
-- xorriso_tail_argv = xmalloc (sizeof (argp_argv[0]) * argc);
-+ argp_argv = xcalloc (argc, sizeof (argp_argv[0]));
-+ xorriso_tail_argv = xcalloc (argc, sizeof (argp_argv[0]));
-
- xorriso_tail_argc = 0;
- /* Program name */
-diff --git a/util/grub-mkstandalone.c b/util/grub-mkstandalone.c
-index 4907d44..edf3097 100644
---- a/util/grub-mkstandalone.c
-+++ b/util/grub-mkstandalone.c
-@@ -296,7 +296,7 @@ main (int argc, char *argv[])
- grub_util_host_init (&argc, &argv);
- grub_util_disable_fd_syncs ();
-
-- files = xmalloc ((argc + 1) * sizeof (files[0]));
-+ files = xcalloc (argc + 1, sizeof (files[0]));
-
- argp_parse (&argp, argc, argv, 0, 0, 0);
-
-diff --git a/util/grub-pe2elf.c b/util/grub-pe2elf.c
-index 0d4084a..1133129 100644
---- a/util/grub-pe2elf.c
-+++ b/util/grub-pe2elf.c
-@@ -100,9 +100,9 @@ write_section_data (FILE* fp, const char *name, char *image,
- char *pe_strtab = (image + pe_chdr->symtab_offset
- + pe_chdr->num_symbols * sizeof (struct grub_pe32_symbol));
-
-- section_map = xmalloc ((2 * pe_chdr->num_sections + 5) * sizeof (int));
-+ section_map = xcalloc (2 * pe_chdr->num_sections + 5, sizeof (int));
- section_map[0] = 0;
-- shdr = xmalloc ((2 * pe_chdr->num_sections + 5) * sizeof (shdr[0]));
-+ shdr = xcalloc (2 * pe_chdr->num_sections + 5, sizeof (shdr[0]));
- idx = 1;
- idx_reloc = pe_chdr->num_sections + 1;
-
-@@ -233,7 +233,7 @@ write_reloc_section (FILE* fp, const char *name, char *image,
-
- pe_sec = pe_shdr + shdr[i].sh_link;
- pe_rel = (struct grub_pe32_reloc *) (image + pe_sec->relocations_offset);
-- rel = (elf_reloc_t *) xmalloc (pe_sec->num_relocations * sizeof (elf_reloc_t));
-+ rel = (elf_reloc_t *) xcalloc (pe_sec->num_relocations, sizeof (elf_reloc_t));
- num_rels = 0;
- modified = 0;
-
-@@ -365,12 +365,10 @@ write_symbol_table (FILE* fp, const char *name, char *image,
- pe_symtab = (struct grub_pe32_symbol *) (image + pe_chdr->symtab_offset);
- pe_strtab = (char *) (pe_symtab + pe_chdr->num_symbols);
-
-- symtab = (Elf_Sym *) xmalloc ((pe_chdr->num_symbols + 1) *
-- sizeof (Elf_Sym));
-- memset (symtab, 0, (pe_chdr->num_symbols + 1) * sizeof (Elf_Sym));
-+ symtab = (Elf_Sym *) xcalloc (pe_chdr->num_symbols + 1, sizeof (Elf_Sym));
- num_syms = 1;
-
-- symtab_map = (int *) xmalloc (pe_chdr->num_symbols * sizeof (int));
-+ symtab_map = (int *) xcalloc (pe_chdr->num_symbols, sizeof (int));
-
- for (i = 0; i < (int) pe_chdr->num_symbols;
- i += pe_symtab->num_aux + 1, pe_symtab += pe_symtab->num_aux + 1)
-diff --git a/util/grub-probe.c b/util/grub-probe.c
-index 81d27ee..cbe6ed9 100644
---- a/util/grub-probe.c
-+++ b/util/grub-probe.c
-@@ -361,8 +361,8 @@ probe (const char *path, char **device_names, char delim)
- grub_util_pull_device (*curdev);
- ndev++;
- }
--
-- drives_names = xmalloc (sizeof (drives_names[0]) * (ndev + 1));
-+
-+ drives_names = xcalloc (ndev + 1, sizeof (drives_names[0]));
-
- for (curdev = device_names, curdrive = drives_names; *curdev; curdev++,
- curdrive++)
---
-2.14.4
-
diff --git a/poky/meta/recipes-bsp/grub/files/CVE-2020-14309-CVE-2020-14310-CVE-2020-14311-malloc-Use-overflow-checking-primitives-where-we-do-.patch b/poky/meta/recipes-bsp/grub/files/CVE-2020-14309-CVE-2020-14310-CVE-2020-14311-malloc-Use-overflow-checking-primitives-where-we-do-.patch
deleted file mode 100644
index 7214ead9a..000000000
--- a/poky/meta/recipes-bsp/grub/files/CVE-2020-14309-CVE-2020-14310-CVE-2020-14311-malloc-Use-overflow-checking-primitives-where-we-do-.patch
+++ /dev/null
@@ -1,1330 +0,0 @@
-From eb77d1ef65e25746acff43545f62a71360b15eec Mon Sep 17 00:00:00 2001
-From: Peter Jones <pjones@redhat.com>
-Date: Mon, 15 Jun 2020 12:28:27 -0400
-Subject: [PATCH 6/9] malloc: Use overflow checking primitives where we do
- complex allocations
-
-This attempts to fix the places where we do the following where
-arithmetic_expr may include unvalidated data:
-
- X = grub_malloc(arithmetic_expr);
-
-It accomplishes this by doing the arithmetic ahead of time using grub_add(),
-grub_sub(), grub_mul() and testing for overflow before proceeding.
-
-Among other issues, this fixes:
- - allocation of integer overflow in grub_video_bitmap_create()
- reported by Chris Coulson,
- - allocation of integer overflow in grub_png_decode_image_header()
- reported by Chris Coulson,
- - allocation of integer overflow in grub_squash_read_symlink()
- reported by Chris Coulson,
- - allocation of integer overflow in grub_ext2_read_symlink()
- reported by Chris Coulson,
- - allocation of integer overflow in read_section_as_string()
- reported by Chris Coulson.
-
-Fixes: CVE-2020-14309, CVE-2020-14310, CVE-2020-14311
-
-Signed-off-by: Peter Jones <pjones@redhat.com>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
-
-Upstream-Status: Backport
-CVE: CVE-2020-14309 CVE-2020-14310 CVE-2020-14311
-
-Reference to upstream patch:
-https://git.savannah.gnu.org/cgit/grub.git/commit/?id=3f05d693d1274965ffbe4ba99080dc2c570944c6
-
-Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
----
- grub-core/commands/legacycfg.c | 29 +++++++++++++++++++-----
- grub-core/commands/wildcard.c | 36 ++++++++++++++++++++++++-----
- grub-core/disk/ldm.c | 32 ++++++++++++++++++--------
- grub-core/font/font.c | 7 +++++-
- grub-core/fs/btrfs.c | 28 +++++++++++++++--------
- grub-core/fs/ext2.c | 10 ++++++++-
- grub-core/fs/iso9660.c | 51 +++++++++++++++++++++++++++++-------------
- grub-core/fs/sfs.c | 27 +++++++++++++++++-----
- grub-core/fs/squash4.c | 45 ++++++++++++++++++++++++++++---------
- grub-core/fs/udf.c | 41 +++++++++++++++++++++------------
- grub-core/fs/xfs.c | 11 +++++----
- grub-core/fs/zfs/zfs.c | 22 ++++++++++++------
- grub-core/fs/zfs/zfscrypt.c | 7 +++++-
- grub-core/lib/arg.c | 20 +++++++++++++++--
- grub-core/loader/i386/bsd.c | 8 ++++++-
- grub-core/net/dns.c | 9 +++++++-
- grub-core/normal/charset.c | 10 +++++++--
- grub-core/normal/cmdline.c | 14 ++++++++++--
- grub-core/normal/menu_entry.c | 13 +++++++++--
- grub-core/script/argv.c | 16 +++++++++++--
- grub-core/script/lexer.c | 21 ++++++++++++++---
- grub-core/video/bitmap.c | 25 +++++++++++++--------
- grub-core/video/readers/png.c | 13 +++++++++--
- 23 files changed, 382 insertions(+), 113 deletions(-)
-
-diff --git a/grub-core/commands/legacycfg.c b/grub-core/commands/legacycfg.c
-index 5e3ec0d..cc5971f 100644
---- a/grub-core/commands/legacycfg.c
-+++ b/grub-core/commands/legacycfg.c
-@@ -32,6 +32,7 @@
- #include <grub/auth.h>
- #include <grub/disk.h>
- #include <grub/partition.h>
-+#include <grub/safemath.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-@@ -104,13 +105,22 @@ legacy_file (const char *filename)
- if (newsuffix)
- {
- char *t;
--
-+ grub_size_t sz;
-+
-+ if (grub_add (grub_strlen (suffix), grub_strlen (newsuffix), &sz) ||
-+ grub_add (sz, 1, &sz))
-+ {
-+ grub_errno = GRUB_ERR_OUT_OF_RANGE;
-+ goto fail_0;
-+ }
-+
- t = suffix;
-- suffix = grub_realloc (suffix, grub_strlen (suffix)
-- + grub_strlen (newsuffix) + 1);
-+ suffix = grub_realloc (suffix, sz);
- if (!suffix)
- {
- grub_free (t);
-+
-+ fail_0:
- grub_free (entrysrc);
- grub_free (parsed);
- grub_free (newsuffix);
-@@ -154,13 +164,22 @@ legacy_file (const char *filename)
- else
- {
- char *t;
-+ grub_size_t sz;
-+
-+ if (grub_add (grub_strlen (entrysrc), grub_strlen (parsed), &sz) ||
-+ grub_add (sz, 1, &sz))
-+ {
-+ grub_errno = GRUB_ERR_OUT_OF_RANGE;
-+ goto fail_1;
-+ }
-
- t = entrysrc;
-- entrysrc = grub_realloc (entrysrc, grub_strlen (entrysrc)
-- + grub_strlen (parsed) + 1);
-+ entrysrc = grub_realloc (entrysrc, sz);
- if (!entrysrc)
- {
- grub_free (t);
-+
-+ fail_1:
- grub_free (parsed);
- grub_free (suffix);
- return grub_errno;
-diff --git a/grub-core/commands/wildcard.c b/grub-core/commands/wildcard.c
-index 4a106ca..cc32903 100644
---- a/grub-core/commands/wildcard.c
-+++ b/grub-core/commands/wildcard.c
-@@ -23,6 +23,7 @@
- #include <grub/file.h>
- #include <grub/device.h>
- #include <grub/script_sh.h>
-+#include <grub/safemath.h>
-
- #include <regex.h>
-
-@@ -48,6 +49,7 @@ merge (char **dest, char **ps)
- int i;
- int j;
- char **p;
-+ grub_size_t sz;
-
- if (! dest)
- return ps;
-@@ -60,7 +62,12 @@ merge (char **dest, char **ps)
- for (j = 0; ps[j]; j++)
- ;
-
-- p = grub_realloc (dest, sizeof (char*) * (i + j + 1));
-+ if (grub_add (i, j, &sz) ||
-+ grub_add (sz, 1, &sz) ||
-+ grub_mul (sz, sizeof (char *), &sz))
-+ return dest;
-+
-+ p = grub_realloc (dest, sz);
- if (! p)
- {
- grub_free (dest);
-@@ -115,8 +122,15 @@ make_regex (const char *start, const char *end, regex_t *regexp)
- char ch;
- int i = 0;
- unsigned len = end - start;
-- char *buffer = grub_malloc (len * 2 + 2 + 1); /* worst case size. */
-+ char *buffer;
-+ grub_size_t sz;
-
-+ /* Worst case size is (len * 2 + 2 + 1). */
-+ if (grub_mul (len, 2, &sz) ||
-+ grub_add (sz, 3, &sz))
-+ return 1;
-+
-+ buffer = grub_malloc (sz);
- if (! buffer)
- return 1;
-
-@@ -226,6 +240,7 @@ match_devices_iter (const char *name, void *data)
- struct match_devices_ctx *ctx = data;
- char **t;
- char *buffer;
-+ grub_size_t sz;
-
- /* skip partitions if asked to. */
- if (ctx->noparts && grub_strchr (name, ','))
-@@ -239,11 +254,16 @@ match_devices_iter (const char *name, void *data)
- if (regexec (ctx->regexp, buffer, 0, 0, 0))
- {
- grub_dprintf ("expand", "not matched\n");
-+ fail:
- grub_free (buffer);
- return 0;
- }
-
-- t = grub_realloc (ctx->devs, sizeof (char*) * (ctx->ndev + 2));
-+ if (grub_add (ctx->ndev, 2, &sz) ||
-+ grub_mul (sz, sizeof (char *), &sz))
-+ goto fail;
-+
-+ t = grub_realloc (ctx->devs, sz);
- if (! t)
- {
- grub_free (buffer);
-@@ -300,6 +320,7 @@ match_files_iter (const char *name,
- struct match_files_ctx *ctx = data;
- char **t;
- char *buffer;
-+ grub_size_t sz;
-
- /* skip . and .. names */
- if (grub_strcmp(".", name) == 0 || grub_strcmp("..", name) == 0)
-@@ -315,9 +336,14 @@ match_files_iter (const char *name,
- if (! buffer)
- return 1;
-
-- t = grub_realloc (ctx->files, sizeof (char*) * (ctx->nfile + 2));
-- if (! t)
-+ if (grub_add (ctx->nfile, 2, &sz) ||
-+ grub_mul (sz, sizeof (char *), &sz))
-+ goto fail;
-+
-+ t = grub_realloc (ctx->files, sz);
-+ if (!t)
- {
-+ fail:
- grub_free (buffer);
- return 1;
- }
-diff --git a/grub-core/disk/ldm.c b/grub-core/disk/ldm.c
-index e632370..58f8a53 100644
---- a/grub-core/disk/ldm.c
-+++ b/grub-core/disk/ldm.c
-@@ -25,6 +25,7 @@
- #include <grub/msdos_partition.h>
- #include <grub/gpt_partition.h>
- #include <grub/i18n.h>
-+#include <grub/safemath.h>
-
- #ifdef GRUB_UTIL
- #include <grub/emu/misc.h>
-@@ -289,6 +290,7 @@ make_vg (grub_disk_t disk,
- struct grub_ldm_vblk vblk[GRUB_DISK_SECTOR_SIZE
- / sizeof (struct grub_ldm_vblk)];
- unsigned i;
-+ grub_size_t sz;
- err = grub_disk_read (disk, cursec, 0,
- sizeof(vblk), &vblk);
- if (err)
-@@ -350,7 +352,13 @@ make_vg (grub_disk_t disk,
- grub_free (lv);
- goto fail2;
- }
-- lv->name = grub_malloc (*ptr + 1);
-+ if (grub_add (*ptr, 1, &sz))
-+ {
-+ grub_free (lv->internal_id);
-+ grub_free (lv);
-+ goto fail2;
-+ }
-+ lv->name = grub_malloc (sz);
- if (!lv->name)
- {
- grub_free (lv->internal_id);
-@@ -599,10 +607,13 @@ make_vg (grub_disk_t disk,
- if (lv->segments->node_alloc == lv->segments->node_count)
- {
- void *t;
-- lv->segments->node_alloc *= 2;
-- t = grub_realloc (lv->segments->nodes,
-- sizeof (*lv->segments->nodes)
-- * lv->segments->node_alloc);
-+ grub_size_t sz;
-+
-+ if (grub_mul (lv->segments->node_alloc, 2, &lv->segments->node_alloc) ||
-+ grub_mul (lv->segments->node_alloc, sizeof (*lv->segments->nodes), &sz))
-+ goto fail2;
-+
-+ t = grub_realloc (lv->segments->nodes, sz);
- if (!t)
- goto fail2;
- lv->segments->nodes = t;
-@@ -723,10 +734,13 @@ make_vg (grub_disk_t disk,
- if (comp->segment_alloc == comp->segment_count)
- {
- void *t;
-- comp->segment_alloc *= 2;
-- t = grub_realloc (comp->segments,
-- comp->segment_alloc
-- * sizeof (*comp->segments));
-+ grub_size_t sz;
-+
-+ if (grub_mul (comp->segment_alloc, 2, &comp->segment_alloc) ||
-+ grub_mul (comp->segment_alloc, sizeof (*comp->segments), &sz))
-+ goto fail2;
-+
-+ t = grub_realloc (comp->segments, sz);
- if (!t)
- goto fail2;
- comp->segments = t;
-diff --git a/grub-core/font/font.c b/grub-core/font/font.c
-index 8e118b3..5edb477 100644
---- a/grub-core/font/font.c
-+++ b/grub-core/font/font.c
-@@ -30,6 +30,7 @@
- #include <grub/unicode.h>
- #include <grub/fontformat.h>
- #include <grub/env.h>
-+#include <grub/safemath.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-@@ -360,9 +361,13 @@ static char *
- read_section_as_string (struct font_file_section *section)
- {
- char *str;
-+ grub_size_t sz;
- grub_ssize_t ret;
-
-- str = grub_malloc (section->length + 1);
-+ if (grub_add (section->length, 1, &sz))
-+ return NULL;
-+
-+ str = grub_malloc (sz);
- if (!str)
- return 0;
-
-diff --git a/grub-core/fs/btrfs.c b/grub-core/fs/btrfs.c
-index 11272ef..2b65bd5 100644
---- a/grub-core/fs/btrfs.c
-+++ b/grub-core/fs/btrfs.c
-@@ -40,6 +40,7 @@
- #include <grub/btrfs.h>
- #include <grub/crypto.h>
- #include <grub/diskfilter.h>
-+#include <grub/safemath.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-@@ -329,9 +330,13 @@ save_ref (struct grub_btrfs_leaf_descriptor *desc,
- if (desc->allocated < desc->depth)
- {
- void *newdata;
-- desc->allocated *= 2;
-- newdata = grub_realloc (desc->data, sizeof (desc->data[0])
-- * desc->allocated);
-+ grub_size_t sz;
-+
-+ if (grub_mul (desc->allocated, 2, &desc->allocated) ||
-+ grub_mul (desc->allocated, sizeof (desc->data[0]), &sz))
-+ return GRUB_ERR_OUT_OF_RANGE;
-+
-+ newdata = grub_realloc (desc->data, sz);
- if (!newdata)
- return grub_errno;
- desc->data = newdata;
-@@ -622,16 +627,21 @@ find_device (struct grub_btrfs_data *data, grub_uint64_t id)
- if (data->n_devices_attached > data->n_devices_allocated)
- {
- void *tmp;
-- data->n_devices_allocated = 2 * data->n_devices_attached + 1;
-- data->devices_attached
-- = grub_realloc (tmp = data->devices_attached,
-- data->n_devices_allocated
-- * sizeof (data->devices_attached[0]));
-+ grub_size_t sz;
-+
-+ if (grub_mul (data->n_devices_attached, 2, &data->n_devices_allocated) ||
-+ grub_add (data->n_devices_allocated, 1, &data->n_devices_allocated) ||
-+ grub_mul (data->n_devices_allocated, sizeof (data->devices_attached[0]), &sz))
-+ goto fail;
-+
-+ data->devices_attached = grub_realloc (tmp = data->devices_attached, sz);
- if (!data->devices_attached)
- {
-+ data->devices_attached = tmp;
-+
-+ fail:
- if (ctx.dev_found)
- grub_device_close (ctx.dev_found);
-- data->devices_attached = tmp;
- return NULL;
- }
- }
-diff --git a/grub-core/fs/ext2.c b/grub-core/fs/ext2.c
-index 9b38980..ac33bcd 100644
---- a/grub-core/fs/ext2.c
-+++ b/grub-core/fs/ext2.c
-@@ -46,6 +46,7 @@
- #include <grub/dl.h>
- #include <grub/types.h>
- #include <grub/fshelp.h>
-+#include <grub/safemath.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-@@ -703,6 +704,7 @@ grub_ext2_read_symlink (grub_fshelp_node_t node)
- {
- char *symlink;
- struct grub_fshelp_node *diro = node;
-+ grub_size_t sz;
-
- if (! diro->inode_read)
- {
-@@ -717,7 +719,13 @@ grub_ext2_read_symlink (grub_fshelp_node_t node)
- }
- }
-
-- symlink = grub_malloc (grub_le_to_cpu32 (diro->inode.size) + 1);
-+ if (grub_add (grub_le_to_cpu32 (diro->inode.size), 1, &sz))
-+ {
-+ grub_error (GRUB_ERR_OUT_OF_RANGE, N_("overflow is detected"));
-+ return NULL;
-+ }
-+
-+ symlink = grub_malloc (sz);
- if (! symlink)
- return 0;
-
-diff --git a/grub-core/fs/iso9660.c b/grub-core/fs/iso9660.c
-index 4f1b52a..7ba5b30 100644
---- a/grub-core/fs/iso9660.c
-+++ b/grub-core/fs/iso9660.c
-@@ -28,6 +28,7 @@
- #include <grub/fshelp.h>
- #include <grub/charset.h>
- #include <grub/datetime.h>
-+#include <grub/safemath.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-@@ -531,8 +532,13 @@ add_part (struct iterate_dir_ctx *ctx,
- int len2)
- {
- int size = ctx->symlink ? grub_strlen (ctx->symlink) : 0;
-+ grub_size_t sz;
-
-- ctx->symlink = grub_realloc (ctx->symlink, size + len2 + 1);
-+ if (grub_add (size, len2, &sz) ||
-+ grub_add (sz, 1, &sz))
-+ return;
-+
-+ ctx->symlink = grub_realloc (ctx->symlink, sz);
- if (! ctx->symlink)
- return;
-
-@@ -560,17 +566,24 @@ susp_iterate_dir (struct grub_iso9660_susp_entry *entry,
- {
- grub_size_t off = 0, csize = 1;
- char *old;
-+ grub_size_t sz;
-+
- csize = entry->len - 5;
- old = ctx->filename;
- if (ctx->filename_alloc)
- {
- off = grub_strlen (ctx->filename);
-- ctx->filename = grub_realloc (ctx->filename, csize + off + 1);
-+ if (grub_add (csize, off, &sz) ||
-+ grub_add (sz, 1, &sz))
-+ return GRUB_ERR_OUT_OF_RANGE;
-+ ctx->filename = grub_realloc (ctx->filename, sz);
- }
- else
- {
- off = 0;
-- ctx->filename = grub_zalloc (csize + 1);
-+ if (grub_add (csize, 1, &sz))
-+ return GRUB_ERR_OUT_OF_RANGE;
-+ ctx->filename = grub_zalloc (sz);
- }
- if (!ctx->filename)
- {
-@@ -776,14 +789,18 @@ grub_iso9660_iterate_dir (grub_fshelp_node_t dir,
- if (node->have_dirents >= node->alloc_dirents)
- {
- struct grub_fshelp_node *new_node;
-- node->alloc_dirents *= 2;
-- new_node = grub_realloc (node,
-- sizeof (struct grub_fshelp_node)
-- + ((node->alloc_dirents
-- - ARRAY_SIZE (node->dirents))
-- * sizeof (node->dirents[0])));
-+ grub_size_t sz;
-+
-+ if (grub_mul (node->alloc_dirents, 2, &node->alloc_dirents) ||
-+ grub_sub (node->alloc_dirents, ARRAY_SIZE (node->dirents), &sz) ||
-+ grub_mul (sz, sizeof (node->dirents[0]), &sz) ||
-+ grub_add (sz, sizeof (struct grub_fshelp_node), &sz))
-+ goto fail_0;
-+
-+ new_node = grub_realloc (node, sz);
- if (!new_node)
- {
-+ fail_0:
- if (ctx.filename_alloc)
- grub_free (ctx.filename);
- grub_free (node);
-@@ -799,14 +816,18 @@ grub_iso9660_iterate_dir (grub_fshelp_node_t dir,
- * sizeof (node->dirents[0]) < grub_strlen (ctx.symlink) + 1)
- {
- struct grub_fshelp_node *new_node;
-- new_node = grub_realloc (node,
-- sizeof (struct grub_fshelp_node)
-- + ((node->alloc_dirents
-- - ARRAY_SIZE (node->dirents))
-- * sizeof (node->dirents[0]))
-- + grub_strlen (ctx.symlink) + 1);
-+ grub_size_t sz;
-+
-+ if (grub_sub (node->alloc_dirents, ARRAY_SIZE (node->dirents), &sz) ||
-+ grub_mul (sz, sizeof (node->dirents[0]), &sz) ||
-+ grub_add (sz, sizeof (struct grub_fshelp_node) + 1, &sz) ||
-+ grub_add (sz, grub_strlen (ctx.symlink), &sz))
-+ goto fail_1;
-+
-+ new_node = grub_realloc (node, sz);
- if (!new_node)
- {
-+ fail_1:
- if (ctx.filename_alloc)
- grub_free (ctx.filename);
- grub_free (node);
-diff --git a/grub-core/fs/sfs.c b/grub-core/fs/sfs.c
-index 90f7fb3..de2b107 100644
---- a/grub-core/fs/sfs.c
-+++ b/grub-core/fs/sfs.c
-@@ -26,6 +26,7 @@
- #include <grub/types.h>
- #include <grub/fshelp.h>
- #include <grub/charset.h>
-+#include <grub/safemath.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-@@ -307,10 +308,15 @@ grub_sfs_read_block (grub_fshelp_node_t node, grub_disk_addr_t fileblock)
- if (node->cache && node->cache_size >= node->cache_allocated)
- {
- struct cache_entry *e = node->cache;
-- e = grub_realloc (node->cache,node->cache_allocated * 2
-- * sizeof (e[0]));
-+ grub_size_t sz;
-+
-+ if (grub_mul (node->cache_allocated, 2 * sizeof (e[0]), &sz))
-+ goto fail;
-+
-+ e = grub_realloc (node->cache, sz);
- if (!e)
- {
-+ fail:
- grub_errno = 0;
- grub_free (node->cache);
- node->cache = 0;
-@@ -477,10 +483,16 @@ grub_sfs_create_node (struct grub_fshelp_node **node,
- grub_size_t len = grub_strlen (name);
- grub_uint8_t *name_u8;
- int ret;
-+ grub_size_t sz;
-+
-+ if (grub_mul (len, GRUB_MAX_UTF8_PER_LATIN1, &sz) ||
-+ grub_add (sz, 1, &sz))
-+ return 1;
-+
- *node = grub_malloc (sizeof (**node));
- if (!*node)
- return 1;
-- name_u8 = grub_malloc (len * GRUB_MAX_UTF8_PER_LATIN1 + 1);
-+ name_u8 = grub_malloc (sz);
- if (!name_u8)
- {
- grub_free (*node);
-@@ -724,8 +736,13 @@ grub_sfs_label (grub_device_t device, char **label)
- data = grub_sfs_mount (disk);
- if (data)
- {
-- grub_size_t len = grub_strlen (data->label);
-- *label = grub_malloc (len * GRUB_MAX_UTF8_PER_LATIN1 + 1);
-+ grub_size_t sz, len = grub_strlen (data->label);
-+
-+ if (grub_mul (len, GRUB_MAX_UTF8_PER_LATIN1, &sz) ||
-+ grub_add (sz, 1, &sz))
-+ return GRUB_ERR_OUT_OF_RANGE;
-+
-+ *label = grub_malloc (sz);
- if (*label)
- *grub_latin1_to_utf8 ((grub_uint8_t *) *label,
- (const grub_uint8_t *) data->label,
-diff --git a/grub-core/fs/squash4.c b/grub-core/fs/squash4.c
-index 95d5c1e..7851238 100644
---- a/grub-core/fs/squash4.c
-+++ b/grub-core/fs/squash4.c
-@@ -26,6 +26,7 @@
- #include <grub/types.h>
- #include <grub/fshelp.h>
- #include <grub/deflate.h>
-+#include <grub/safemath.h>
- #include <minilzo.h>
-
- #include "xz.h"
-@@ -459,7 +460,17 @@ grub_squash_read_symlink (grub_fshelp_node_t node)
- {
- char *ret;
- grub_err_t err;
-- ret = grub_malloc (grub_le_to_cpu32 (node->ino.symlink.namelen) + 1);
-+ grub_size_t sz;
-+
-+ if (grub_add (grub_le_to_cpu32 (node->ino.symlink.namelen), 1, &sz))
-+ {
-+ grub_error (GRUB_ERR_OUT_OF_RANGE, N_("overflow is detected"));
-+ return NULL;
-+ }
-+
-+ ret = grub_malloc (sz);
-+ if (!ret)
-+ return NULL;
-
- err = read_chunk (node->data, ret,
- grub_le_to_cpu32 (node->ino.symlink.namelen),
-@@ -506,11 +517,16 @@ grub_squash_iterate_dir (grub_fshelp_node_t dir,
-
- {
- grub_fshelp_node_t node;
-- node = grub_malloc (sizeof (*node) + dir->stsize * sizeof (dir->stack[0]));
-+ grub_size_t sz;
-+
-+ if (grub_mul (dir->stsize, sizeof (dir->stack[0]), &sz) ||
-+ grub_add (sz, sizeof (*node), &sz))
-+ return 0;
-+
-+ node = grub_malloc (sz);
- if (!node)
- return 0;
-- grub_memcpy (node, dir,
-- sizeof (*node) + dir->stsize * sizeof (dir->stack[0]));
-+ grub_memcpy (node, dir, sz);
- if (hook (".", GRUB_FSHELP_DIR, node, hook_data))
- return 1;
-
-@@ -518,12 +534,15 @@ grub_squash_iterate_dir (grub_fshelp_node_t dir,
- {
- grub_err_t err;
-
-- node = grub_malloc (sizeof (*node) + dir->stsize * sizeof (dir->stack[0]));
-+ if (grub_mul (dir->stsize, sizeof (dir->stack[0]), &sz) ||
-+ grub_add (sz, sizeof (*node), &sz))
-+ return 0;
-+
-+ node = grub_malloc (sz);
- if (!node)
- return 0;
-
-- grub_memcpy (node, dir,
-- sizeof (*node) + dir->stsize * sizeof (dir->stack[0]));
-+ grub_memcpy (node, dir, sz);
-
- node->stsize--;
- err = read_chunk (dir->data, &node->ino, sizeof (node->ino),
-@@ -557,6 +576,7 @@ grub_squash_iterate_dir (grub_fshelp_node_t dir,
- enum grub_fshelp_filetype filetype = GRUB_FSHELP_REG;
- struct grub_squash_dirent di;
- struct grub_squash_inode ino;
-+ grub_size_t sz;
-
- err = read_chunk (dir->data, &di, sizeof (di),
- grub_le_to_cpu64 (dir->data->sb.diroffset)
-@@ -589,13 +609,16 @@ grub_squash_iterate_dir (grub_fshelp_node_t dir,
- if (grub_le_to_cpu16 (di.type) == SQUASH_TYPE_SYMLINK)
- filetype = GRUB_FSHELP_SYMLINK;
-
-- node = grub_malloc (sizeof (*node)
-- + (dir->stsize + 1) * sizeof (dir->stack[0]));
-+ if (grub_add (dir->stsize, 1, &sz) ||
-+ grub_mul (sz, sizeof (dir->stack[0]), &sz) ||
-+ grub_add (sz, sizeof (*node), &sz))
-+ return 0;
-+
-+ node = grub_malloc (sz);
- if (! node)
- return 0;
-
-- grub_memcpy (node, dir,
-- sizeof (*node) + dir->stsize * sizeof (dir->stack[0]));
-+ grub_memcpy (node, dir, sz - sizeof(dir->stack[0]));
-
- node->ino = ino;
- node->stack[node->stsize].ino_chunk = grub_le_to_cpu32 (dh.ino_chunk);
-diff --git a/grub-core/fs/udf.c b/grub-core/fs/udf.c
-index a837616..21ac7f4 100644
---- a/grub-core/fs/udf.c
-+++ b/grub-core/fs/udf.c
-@@ -28,6 +28,7 @@
- #include <grub/charset.h>
- #include <grub/datetime.h>
- #include <grub/udf.h>
-+#include <grub/safemath.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-@@ -890,9 +891,19 @@ read_string (const grub_uint8_t *raw, grub_size_t sz, char *outbuf)
- utf16[i] = (raw[2 * i + 1] << 8) | raw[2*i + 2];
- }
- if (!outbuf)
-- outbuf = grub_malloc (utf16len * GRUB_MAX_UTF8_PER_UTF16 + 1);
-+ {
-+ grub_size_t size;
-+
-+ if (grub_mul (utf16len, GRUB_MAX_UTF8_PER_UTF16, &size) ||
-+ grub_add (size, 1, &size))
-+ goto fail;
-+
-+ outbuf = grub_malloc (size);
-+ }
- if (outbuf)
- *grub_utf16_to_utf8 ((grub_uint8_t *) outbuf, utf16, utf16len) = '\0';
-+
-+ fail:
- grub_free (utf16);
- return outbuf;
- }
-@@ -1005,7 +1016,7 @@ grub_udf_read_symlink (grub_fshelp_node_t node)
- grub_size_t sz = U64 (node->block.fe.file_size);
- grub_uint8_t *raw;
- const grub_uint8_t *ptr;
-- char *out, *optr;
-+ char *out = NULL, *optr;
-
- if (sz < 4)
- return NULL;
-@@ -1013,14 +1024,16 @@ grub_udf_read_symlink (grub_fshelp_node_t node)
- if (!raw)
- return NULL;
- if (grub_udf_read_file (node, NULL, NULL, 0, sz, (char *) raw) < 0)
-- {
-- grub_free (raw);
-- return NULL;
-- }
-+ goto fail_1;
-
-- out = grub_malloc (sz * 2 + 1);
-+ if (grub_mul (sz, 2, &sz) ||
-+ grub_add (sz, 1, &sz))
-+ goto fail_0;
-+
-+ out = grub_malloc (sz);
- if (!out)
- {
-+ fail_0:
- grub_free (raw);
- return NULL;
- }
-@@ -1031,17 +1044,17 @@ grub_udf_read_symlink (grub_fshelp_node_t node)
- {
- grub_size_t s;
- if ((grub_size_t) (ptr - raw + 4) > sz)
-- goto fail;
-+ goto fail_1;
- if (!(ptr[2] == 0 && ptr[3] == 0))
-- goto fail;
-+ goto fail_1;
- s = 4 + ptr[1];
- if ((grub_size_t) (ptr - raw + s) > sz)
-- goto fail;
-+ goto fail_1;
- switch (*ptr)
- {
- case 1:
- if (ptr[1])
-- goto fail;
-+ goto fail_1;
- /* Fallthrough. */
- case 2:
- /* in 4 bytes. out: 1 byte. */
-@@ -1066,11 +1079,11 @@ grub_udf_read_symlink (grub_fshelp_node_t node)
- if (optr != out)
- *optr++ = '/';
- if (!read_string (ptr + 4, s - 4, optr))
-- goto fail;
-+ goto fail_1;
- optr += grub_strlen (optr);
- break;
- default:
-- goto fail;
-+ goto fail_1;
- }
- ptr += s;
- }
-@@ -1078,7 +1091,7 @@ grub_udf_read_symlink (grub_fshelp_node_t node)
- grub_free (raw);
- return out;
-
-- fail:
-+ fail_1:
- grub_free (raw);
- grub_free (out);
- grub_error (GRUB_ERR_BAD_FS, "invalid symlink");
-diff --git a/grub-core/fs/xfs.c b/grub-core/fs/xfs.c
-index 96ffecb..ea65902 100644
---- a/grub-core/fs/xfs.c
-+++ b/grub-core/fs/xfs.c
-@@ -25,6 +25,7 @@
- #include <grub/dl.h>
- #include <grub/types.h>
- #include <grub/fshelp.h>
-+#include <grub/safemath.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-@@ -899,6 +900,7 @@ static struct grub_xfs_data *
- grub_xfs_mount (grub_disk_t disk)
- {
- struct grub_xfs_data *data = 0;
-+ grub_size_t sz;
-
- data = grub_zalloc (sizeof (struct grub_xfs_data));
- if (!data)
-@@ -913,10 +915,11 @@ grub_xfs_mount (grub_disk_t disk)
- if (!grub_xfs_sb_valid(data))
- goto fail;
-
-- data = grub_realloc (data,
-- sizeof (struct grub_xfs_data)
-- - sizeof (struct grub_xfs_inode)
-- + grub_xfs_inode_size(data) + 1);
-+ if (grub_add (grub_xfs_inode_size (data),
-+ sizeof (struct grub_xfs_data) - sizeof (struct grub_xfs_inode) + 1, &sz))
-+ goto fail;
-+
-+ data = grub_realloc (data, sz);
-
- if (! data)
- goto fail;
-diff --git a/grub-core/fs/zfs/zfs.c b/grub-core/fs/zfs/zfs.c
-index 381dde5..36d0373 100644
---- a/grub-core/fs/zfs/zfs.c
-+++ b/grub-core/fs/zfs/zfs.c
-@@ -55,6 +55,7 @@
- #include <grub/deflate.h>
- #include <grub/crypto.h>
- #include <grub/i18n.h>
-+#include <grub/safemath.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-@@ -773,11 +774,14 @@ fill_vdev_info (struct grub_zfs_data *data,
- if (data->n_devices_attached > data->n_devices_allocated)
- {
- void *tmp;
-- data->n_devices_allocated = 2 * data->n_devices_attached + 1;
-- data->devices_attached
-- = grub_realloc (tmp = data->devices_attached,
-- data->n_devices_allocated
-- * sizeof (data->devices_attached[0]));
-+ grub_size_t sz;
-+
-+ if (grub_mul (data->n_devices_attached, 2, &data->n_devices_allocated) ||
-+ grub_add (data->n_devices_allocated, 1, &data->n_devices_allocated) ||
-+ grub_mul (data->n_devices_allocated, sizeof (data->devices_attached[0]), &sz))
-+ return GRUB_ERR_OUT_OF_RANGE;
-+
-+ data->devices_attached = grub_realloc (tmp = data->devices_attached, sz);
- if (!data->devices_attached)
- {
- data->devices_attached = tmp;
-@@ -3468,14 +3472,18 @@ grub_zfs_nvlist_lookup_nvlist (const char *nvlist, const char *name)
- {
- char *nvpair;
- char *ret;
-- grub_size_t size;
-+ grub_size_t size, sz;
- int found;
-
- found = nvlist_find_value (nvlist, name, DATA_TYPE_NVLIST, &nvpair,
- &size, 0);
- if (!found)
- return 0;
-- ret = grub_zalloc (size + 3 * sizeof (grub_uint32_t));
-+
-+ if (grub_add (size, 3 * sizeof (grub_uint32_t), &sz))
-+ return 0;
-+
-+ ret = grub_zalloc (sz);
- if (!ret)
- return 0;
- grub_memcpy (ret, nvlist, sizeof (grub_uint32_t));
-diff --git a/grub-core/fs/zfs/zfscrypt.c b/grub-core/fs/zfs/zfscrypt.c
-index 1402e0b..de3b015 100644
---- a/grub-core/fs/zfs/zfscrypt.c
-+++ b/grub-core/fs/zfs/zfscrypt.c
-@@ -22,6 +22,7 @@
- #include <grub/misc.h>
- #include <grub/disk.h>
- #include <grub/partition.h>
-+#include <grub/safemath.h>
- #include <grub/dl.h>
- #include <grub/types.h>
- #include <grub/zfs/zfs.h>
-@@ -82,9 +83,13 @@ grub_zfs_add_key (grub_uint8_t *key_in,
- int passphrase)
- {
- struct grub_zfs_wrap_key *key;
-+ grub_size_t sz;
-+
- if (!passphrase && keylen > 32)
- keylen = 32;
-- key = grub_malloc (sizeof (*key) + keylen);
-+ if (grub_add (sizeof (*key), keylen, &sz))
-+ return GRUB_ERR_OUT_OF_RANGE;
-+ key = grub_malloc (sz);
- if (!key)
- return grub_errno;
- key->is_passphrase = passphrase;
-diff --git a/grub-core/lib/arg.c b/grub-core/lib/arg.c
-index fd7744a..3288609 100644
---- a/grub-core/lib/arg.c
-+++ b/grub-core/lib/arg.c
-@@ -23,6 +23,7 @@
- #include <grub/term.h>
- #include <grub/extcmd.h>
- #include <grub/i18n.h>
-+#include <grub/safemath.h>
-
- /* Built-in parser for default options. */
- static const struct grub_arg_option help_options[] =
-@@ -216,7 +217,13 @@ static inline grub_err_t
- add_arg (char ***argl, int *num, char *s)
- {
- char **p = *argl;
-- *argl = grub_realloc (*argl, (++(*num) + 1) * sizeof (char *));
-+ grub_size_t sz;
-+
-+ if (grub_add (++(*num), 1, &sz) ||
-+ grub_mul (sz, sizeof (char *), &sz))
-+ return grub_error (GRUB_ERR_OUT_OF_RANGE, N_("overflow is detected"));
-+
-+ *argl = grub_realloc (*argl, sz);
- if (! *argl)
- {
- grub_free (p);
-@@ -431,6 +438,7 @@ grub_arg_list_alloc(grub_extcmd_t extcmd, int argc,
- grub_size_t argcnt;
- struct grub_arg_list *list;
- const struct grub_arg_option *options;
-+ grub_size_t sz0, sz1;
-
- options = extcmd->options;
- if (! options)
-@@ -443,7 +451,15 @@ grub_arg_list_alloc(grub_extcmd_t extcmd, int argc,
- argcnt += ((grub_size_t) argc + 1) / 2 + 1; /* max possible for any option */
- }
-
-- list = grub_zalloc (sizeof (*list) * i + sizeof (char*) * argcnt);
-+ if (grub_mul (sizeof (*list), i, &sz0) ||
-+ grub_mul (sizeof (char *), argcnt, &sz1) ||
-+ grub_add (sz0, sz1, &sz0))
-+ {
-+ grub_error (GRUB_ERR_OUT_OF_RANGE, N_("overflow is detected"));
-+ return 0;
-+ }
-+
-+ list = grub_zalloc (sz0);
- if (! list)
- return 0;
-
-diff --git a/grub-core/loader/i386/bsd.c b/grub-core/loader/i386/bsd.c
-index 3730ed3..b92cbe9 100644
---- a/grub-core/loader/i386/bsd.c
-+++ b/grub-core/loader/i386/bsd.c
-@@ -35,6 +35,7 @@
- #include <grub/ns8250.h>
- #include <grub/bsdlabel.h>
- #include <grub/crypto.h>
-+#include <grub/safemath.h>
- #include <grub/verify.h>
- #ifdef GRUB_MACHINE_PCBIOS
- #include <grub/machine/int.h>
-@@ -1012,11 +1013,16 @@ grub_netbsd_add_modules (void)
- struct grub_netbsd_btinfo_modules *mods;
- unsigned i;
- grub_err_t err;
-+ grub_size_t sz;
-
- for (mod = netbsd_mods; mod; mod = mod->next)
- modcnt++;
-
-- mods = grub_malloc (sizeof (*mods) + sizeof (mods->mods[0]) * modcnt);
-+ if (grub_mul (modcnt, sizeof (mods->mods[0]), &sz) ||
-+ grub_add (sz, sizeof (*mods), &sz))
-+ return GRUB_ERR_OUT_OF_RANGE;
-+
-+ mods = grub_malloc (sz);
- if (!mods)
- return grub_errno;
-
-diff --git a/grub-core/net/dns.c b/grub-core/net/dns.c
-index e332d5e..906ec7d 100644
---- a/grub-core/net/dns.c
-+++ b/grub-core/net/dns.c
-@@ -22,6 +22,7 @@
- #include <grub/i18n.h>
- #include <grub/err.h>
- #include <grub/time.h>
-+#include <grub/safemath.h>
-
- struct dns_cache_element
- {
-@@ -51,9 +52,15 @@ grub_net_add_dns_server (const struct grub_net_network_level_address *s)
- {
- int na = dns_servers_alloc * 2;
- struct grub_net_network_level_address *ns;
-+ grub_size_t sz;
-+
- if (na < 8)
- na = 8;
-- ns = grub_realloc (dns_servers, na * sizeof (ns[0]));
-+
-+ if (grub_mul (na, sizeof (ns[0]), &sz))
-+ return GRUB_ERR_OUT_OF_RANGE;
-+
-+ ns = grub_realloc (dns_servers, sz);
- if (!ns)
- return grub_errno;
- dns_servers_alloc = na;
-diff --git a/grub-core/normal/charset.c b/grub-core/normal/charset.c
-index d57fb72..4dfcc31 100644
---- a/grub-core/normal/charset.c
-+++ b/grub-core/normal/charset.c
-@@ -48,6 +48,7 @@
- #include <grub/unicode.h>
- #include <grub/term.h>
- #include <grub/normal.h>
-+#include <grub/safemath.h>
-
- #if HAVE_FONT_SOURCE
- #include "widthspec.h"
-@@ -464,6 +465,7 @@ grub_unicode_aglomerate_comb (const grub_uint32_t *in, grub_size_t inlen,
- {
- struct grub_unicode_combining *n;
- unsigned j;
-+ grub_size_t sz;
-
- if (!haveout)
- continue;
-@@ -477,10 +479,14 @@ grub_unicode_aglomerate_comb (const grub_uint32_t *in, grub_size_t inlen,
- n = out->combining_inline;
- else if (out->ncomb > (int) ARRAY_SIZE (out->combining_inline))
- {
-- n = grub_realloc (out->combining_ptr,
-- sizeof (n[0]) * (out->ncomb + 1));
-+ if (grub_add (out->ncomb, 1, &sz) ||
-+ grub_mul (sz, sizeof (n[0]), &sz))
-+ goto fail;
-+
-+ n = grub_realloc (out->combining_ptr, sz);
- if (!n)
- {
-+ fail:
- grub_errno = GRUB_ERR_NONE;
- continue;
- }
-diff --git a/grub-core/normal/cmdline.c b/grub-core/normal/cmdline.c
-index c57242e..de03fe6 100644
---- a/grub-core/normal/cmdline.c
-+++ b/grub-core/normal/cmdline.c
-@@ -28,6 +28,7 @@
- #include <grub/env.h>
- #include <grub/i18n.h>
- #include <grub/charset.h>
-+#include <grub/safemath.h>
-
- static grub_uint32_t *kill_buf;
-
-@@ -307,12 +308,21 @@ cl_insert (struct cmdline_term *cl_terms, unsigned nterms,
- if (len + (*llen) >= (*max_len))
- {
- grub_uint32_t *nbuf;
-- (*max_len) *= 2;
-- nbuf = grub_realloc ((*buf), sizeof (grub_uint32_t) * (*max_len));
-+ grub_size_t sz;
-+
-+ if (grub_mul (*max_len, 2, max_len) ||
-+ grub_mul (*max_len, sizeof (grub_uint32_t), &sz))
-+ {
-+ grub_errno = GRUB_ERR_OUT_OF_RANGE;
-+ goto fail;
-+ }
-+
-+ nbuf = grub_realloc ((*buf), sz);
- if (nbuf)
- (*buf) = nbuf;
- else
- {
-+ fail:
- grub_print_error ();
- grub_errno = GRUB_ERR_NONE;
- (*max_len) /= 2;
-diff --git a/grub-core/normal/menu_entry.c b/grub-core/normal/menu_entry.c
-index 1993995..50eef91 100644
---- a/grub-core/normal/menu_entry.c
-+++ b/grub-core/normal/menu_entry.c
-@@ -27,6 +27,7 @@
- #include <grub/auth.h>
- #include <grub/i18n.h>
- #include <grub/charset.h>
-+#include <grub/safemath.h>
-
- enum update_mode
- {
-@@ -113,10 +114,18 @@ ensure_space (struct line *linep, int extra)
- {
- if (linep->max_len < linep->len + extra)
- {
-- linep->max_len = 2 * (linep->len + extra);
-- linep->buf = grub_realloc (linep->buf, (linep->max_len + 1) * sizeof (linep->buf[0]));
-+ grub_size_t sz0, sz1;
-+
-+ if (grub_add (linep->len, extra, &sz0) ||
-+ grub_mul (sz0, 2, &sz0) ||
-+ grub_add (sz0, 1, &sz1) ||
-+ grub_mul (sz1, sizeof (linep->buf[0]), &sz1))
-+ return 0;
-+
-+ linep->buf = grub_realloc (linep->buf, sz1);
- if (! linep->buf)
- return 0;
-+ linep->max_len = sz0;
- }
-
- return 1;
-diff --git a/grub-core/script/argv.c b/grub-core/script/argv.c
-index 217ec5d..5751fdd 100644
---- a/grub-core/script/argv.c
-+++ b/grub-core/script/argv.c
-@@ -20,6 +20,7 @@
- #include <grub/mm.h>
- #include <grub/misc.h>
- #include <grub/script_sh.h>
-+#include <grub/safemath.h>
-
- /* Return nearest power of two that is >= v. */
- static unsigned
-@@ -81,11 +82,16 @@ int
- grub_script_argv_next (struct grub_script_argv *argv)
- {
- char **p = argv->args;
-+ grub_size_t sz;
-
- if (argv->args && argv->argc && argv->args[argv->argc - 1] == 0)
- return 0;
-
-- p = grub_realloc (p, round_up_exp ((argv->argc + 2) * sizeof (char *)));
-+ if (grub_add (argv->argc, 2, &sz) ||
-+ grub_mul (sz, sizeof (char *), &sz))
-+ return 1;
-+
-+ p = grub_realloc (p, round_up_exp (sz));
- if (! p)
- return 1;
-
-@@ -105,13 +111,19 @@ grub_script_argv_append (struct grub_script_argv *argv, const char *s,
- {
- grub_size_t a;
- char *p = argv->args[argv->argc - 1];
-+ grub_size_t sz;
-
- if (! s)
- return 0;
-
- a = p ? grub_strlen (p) : 0;
-
-- p = grub_realloc (p, round_up_exp ((a + slen + 1) * sizeof (char)));
-+ if (grub_add (a, slen, &sz) ||
-+ grub_add (sz, 1, &sz) ||
-+ grub_mul (sz, sizeof (char), &sz))
-+ return 1;
-+
-+ p = grub_realloc (p, round_up_exp (sz));
- if (! p)
- return 1;
-
-diff --git a/grub-core/script/lexer.c b/grub-core/script/lexer.c
-index c6bd317..5fb0cbd 100644
---- a/grub-core/script/lexer.c
-+++ b/grub-core/script/lexer.c
-@@ -24,6 +24,7 @@
- #include <grub/mm.h>
- #include <grub/script_sh.h>
- #include <grub/i18n.h>
-+#include <grub/safemath.h>
-
- #define yytext_ptr char *
- #include "grub_script.tab.h"
-@@ -110,10 +111,14 @@ grub_script_lexer_record (struct grub_parser_param *parser, char *str)
- old = lexer->recording;
- if (lexer->recordlen < len)
- lexer->recordlen = len;
-- lexer->recordlen *= 2;
-+
-+ if (grub_mul (lexer->recordlen, 2, &lexer->recordlen))
-+ goto fail;
-+
- lexer->recording = grub_realloc (lexer->recording, lexer->recordlen);
- if (!lexer->recording)
- {
-+ fail:
- grub_free (old);
- lexer->recordpos = 0;
- lexer->recordlen = 0;
-@@ -130,7 +135,7 @@ int
- grub_script_lexer_yywrap (struct grub_parser_param *parserstate,
- const char *input)
- {
-- grub_size_t len = 0;
-+ grub_size_t len = 0, sz;
- char *p = 0;
- char *line = 0;
- YY_BUFFER_STATE buffer;
-@@ -168,12 +173,22 @@ grub_script_lexer_yywrap (struct grub_parser_param *parserstate,
- }
- else if (len && line[len - 1] != '\n')
- {
-- p = grub_realloc (line, len + 2);
-+ if (grub_add (len, 2, &sz))
-+ {
-+ grub_free (line);
-+ grub_script_yyerror (parserstate, N_("overflow is detected"));
-+ return 1;
-+ }
-+
-+ p = grub_realloc (line, sz);
- if (p)
- {
- p[len++] = '\n';
- p[len] = '\0';
- }
-+ else
-+ grub_free (line);
-+
- line = p;
- }
-
-diff --git a/grub-core/video/bitmap.c b/grub-core/video/bitmap.c
-index b2e0315..6256e20 100644
---- a/grub-core/video/bitmap.c
-+++ b/grub-core/video/bitmap.c
-@@ -23,6 +23,7 @@
- #include <grub/mm.h>
- #include <grub/misc.h>
- #include <grub/i18n.h>
-+#include <grub/safemath.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-@@ -58,7 +59,7 @@ grub_video_bitmap_create (struct grub_video_bitmap **bitmap,
- enum grub_video_blit_format blit_format)
- {
- struct grub_video_mode_info *mode_info;
-- unsigned int size;
-+ grub_size_t size;
-
- if (!bitmap)
- return grub_error (GRUB_ERR_BUG, "invalid argument");
-@@ -137,19 +138,25 @@ grub_video_bitmap_create (struct grub_video_bitmap **bitmap,
-
- mode_info->pitch = width * mode_info->bytes_per_pixel;
-
-- /* Calculate size needed for the data. */
-- size = (width * mode_info->bytes_per_pixel) * height;
-+ /* Calculate size needed for the data. */
-+ if (grub_mul (width, mode_info->bytes_per_pixel, &size) ||
-+ grub_mul (size, height, &size))
-+ {
-+ grub_error (GRUB_ERR_OUT_OF_RANGE, N_("overflow is detected"));
-+ goto fail;
-+ }
-
- (*bitmap)->data = grub_zalloc (size);
- if (! (*bitmap)->data)
-- {
-- grub_free (*bitmap);
-- *bitmap = 0;
--
-- return grub_errno;
-- }
-+ goto fail;
-
- return GRUB_ERR_NONE;
-+
-+ fail:
-+ grub_free (*bitmap);
-+ *bitmap = NULL;
-+
-+ return grub_errno;
- }
-
- /* Frees all resources allocated by bitmap. */
-diff --git a/grub-core/video/readers/png.c b/grub-core/video/readers/png.c
-index 61bd645..0157ff7 100644
---- a/grub-core/video/readers/png.c
-+++ b/grub-core/video/readers/png.c
-@@ -23,6 +23,7 @@
- #include <grub/mm.h>
- #include <grub/misc.h>
- #include <grub/bufio.h>
-+#include <grub/safemath.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-@@ -301,9 +302,17 @@ grub_png_decode_image_header (struct grub_png_data *data)
- data->bpp <<= 1;
-
- data->color_bits = color_bits;
-- data->row_bytes = data->image_width * data->bpp;
-+
-+ if (grub_mul (data->image_width, data->bpp, &data->row_bytes))
-+ return grub_error (GRUB_ERR_OUT_OF_RANGE, N_("overflow is detected"));
-+
- if (data->color_bits <= 4)
-- data->row_bytes = (data->image_width * data->color_bits + 7) / 8;
-+ {
-+ if (grub_mul (data->image_width, data->color_bits + 7, &data->row_bytes))
-+ return grub_error (GRUB_ERR_OUT_OF_RANGE, N_("overflow is detected"));
-+
-+ data->row_bytes >>= 3;
-+ }
-
- #ifndef GRUB_CPU_WORDS_BIGENDIAN
- if (data->is_16bit || data->is_gray || data->is_palette)
---
-2.14.4
-
diff --git a/poky/meta/recipes-bsp/grub/files/CVE-2020-15706-script-Avoid-a-use-after-free-when-redefining-a-func.patch b/poky/meta/recipes-bsp/grub/files/CVE-2020-15706-script-Avoid-a-use-after-free-when-redefining-a-func.patch
deleted file mode 100644
index 329e554a6..000000000
--- a/poky/meta/recipes-bsp/grub/files/CVE-2020-15706-script-Avoid-a-use-after-free-when-redefining-a-func.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-From c65fc7e75b7b7e880d90766057040011701e97f4 Mon Sep 17 00:00:00 2001
-From: Chris Coulson <chris.coulson@canonical.com>
-Date: Fri, 10 Jul 2020 14:41:45 +0100
-Subject: [PATCH 8/9] script: Avoid a use-after-free when redefining a function
- during execution
-
-Defining a new function with the same name as a previously defined
-function causes the grub_script and associated resources for the
-previous function to be freed. If the previous function is currently
-executing when a function with the same name is defined, this results
-in use-after-frees when processing subsequent commands in the original
-function.
-
-Instead, reject a new function definition if it has the same name as
-a previously defined function, and that function is currently being
-executed. Although a behavioural change, this should be backwards
-compatible with existing configurations because they can't be
-dependent on the current behaviour without being broken.
-
-Fixes: CVE-2020-15706
-
-Signed-off-by: Chris Coulson <chris.coulson@canonical.com>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
-
-Upstream-Status: Backport
-CVE: CVE-2020-15706
-
-Reference to upstream patch:
-https://git.savannah.gnu.org/cgit/grub.git/commit/?id=426f57383d647406ae9c628c472059c27cd6e040
-
-Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
----
- grub-core/script/execute.c | 2 ++
- grub-core/script/function.c | 16 +++++++++++++---
- grub-core/script/parser.y | 3 ++-
- include/grub/script_sh.h | 2 ++
- 4 files changed, 19 insertions(+), 4 deletions(-)
-
-diff --git a/grub-core/script/execute.c b/grub-core/script/execute.c
-index c8d6806..7e028e1 100644
---- a/grub-core/script/execute.c
-+++ b/grub-core/script/execute.c
-@@ -838,7 +838,9 @@ grub_script_function_call (grub_script_function_t func, int argc, char **args)
- old_scope = scope;
- scope = &new_scope;
-
-+ func->executing++;
- ret = grub_script_execute (func->func);
-+ func->executing--;
-
- function_return = 0;
- active_loops = loops;
-diff --git a/grub-core/script/function.c b/grub-core/script/function.c
-index d36655e..3aad04b 100644
---- a/grub-core/script/function.c
-+++ b/grub-core/script/function.c
-@@ -34,6 +34,7 @@ grub_script_function_create (struct grub_script_arg *functionname_arg,
- func = (grub_script_function_t) grub_malloc (sizeof (*func));
- if (! func)
- return 0;
-+ func->executing = 0;
-
- func->name = grub_strdup (functionname_arg->str);
- if (! func->name)
-@@ -60,10 +61,19 @@ grub_script_function_create (struct grub_script_arg *functionname_arg,
- grub_script_function_t q;
-
- q = *p;
-- grub_script_free (q->func);
-- q->func = cmd;
- grub_free (func);
-- func = q;
-+ if (q->executing > 0)
-+ {
-+ grub_error (GRUB_ERR_BAD_ARGUMENT,
-+ N_("attempt to redefine a function being executed"));
-+ func = NULL;
-+ }
-+ else
-+ {
-+ grub_script_free (q->func);
-+ q->func = cmd;
-+ func = q;
-+ }
- }
- else
- {
-diff --git a/grub-core/script/parser.y b/grub-core/script/parser.y
-index 4f0ab83..f80b86b 100644
---- a/grub-core/script/parser.y
-+++ b/grub-core/script/parser.y
-@@ -289,7 +289,8 @@ function: "function" "name"
- grub_script_mem_free (state->func_mem);
- else {
- script->children = state->scripts;
-- grub_script_function_create ($2, script);
-+ if (!grub_script_function_create ($2, script))
-+ grub_script_free (script);
- }
-
- state->scripts = $<scripts>3;
-diff --git a/include/grub/script_sh.h b/include/grub/script_sh.h
-index b382bcf..6c48e07 100644
---- a/include/grub/script_sh.h
-+++ b/include/grub/script_sh.h
-@@ -361,6 +361,8 @@ struct grub_script_function
-
- /* The next element. */
- struct grub_script_function *next;
-+
-+ unsigned executing;
- };
- typedef struct grub_script_function *grub_script_function_t;
-
---
-2.14.4
-
diff --git a/poky/meta/recipes-bsp/grub/files/CVE-2020-15707-linux-Fix-integer-overflows-in-initrd-size-handling.patch b/poky/meta/recipes-bsp/grub/files/CVE-2020-15707-linux-Fix-integer-overflows-in-initrd-size-handling.patch
deleted file mode 100644
index d4f9300c0..000000000
--- a/poky/meta/recipes-bsp/grub/files/CVE-2020-15707-linux-Fix-integer-overflows-in-initrd-size-handling.patch
+++ /dev/null
@@ -1,177 +0,0 @@
-From 68a09a74f6d726d79709847f3671c0a08e4fb5a0 Mon Sep 17 00:00:00 2001
-From: Colin Watson <cjwatson@debian.org>
-Date: Sat, 25 Jul 2020 12:15:37 +0100
-Subject: [PATCH 9/9] linux: Fix integer overflows in initrd size handling
-
-These could be triggered by a crafted filesystem with very large files.
-
-Fixes: CVE-2020-15707
-
-Signed-off-by: Colin Watson <cjwatson@debian.org>
-Reviewed-by: Jan Setje-Eilers <jan.setjeeilers@oracle.com>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
-
-Upstream-Status: Backport
-CVE: CVE-2020-15707
-
-Reference to upstream patch:
-https://git.savannah.gnu.org/cgit/grub.git/commit/?id=e7b8856f8be3292afdb38d2e8c70ad8d62a61e10
-
-Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
----
- grub-core/loader/linux.c | 74 +++++++++++++++++++++++++++++++++++-------------
- 1 file changed, 54 insertions(+), 20 deletions(-)
-
-diff --git a/grub-core/loader/linux.c b/grub-core/loader/linux.c
-index 471b214..8c8565a 100644
---- a/grub-core/loader/linux.c
-+++ b/grub-core/loader/linux.c
-@@ -4,6 +4,7 @@
- #include <grub/misc.h>
- #include <grub/file.h>
- #include <grub/mm.h>
-+#include <grub/safemath.h>
-
- struct newc_head
- {
-@@ -98,13 +99,13 @@ free_dir (struct dir *root)
- grub_free (root);
- }
-
--static grub_size_t
-+static grub_err_t
- insert_dir (const char *name, struct dir **root,
-- grub_uint8_t *ptr)
-+ grub_uint8_t *ptr, grub_size_t *size)
- {
- struct dir *cur, **head = root;
- const char *cb, *ce = name;
-- grub_size_t size = 0;
-+ *size = 0;
- while (1)
- {
- for (cb = ce; *cb == '/'; cb++);
-@@ -130,14 +131,22 @@ insert_dir (const char *name, struct dir **root,
- ptr = make_header (ptr, name, ce - name,
- 040777, 0);
- }
-- size += ALIGN_UP ((ce - (char *) name)
-- + sizeof (struct newc_head), 4);
-+ if (grub_add (*size,
-+ ALIGN_UP ((ce - (char *) name)
-+ + sizeof (struct newc_head), 4),
-+ size))
-+ {
-+ grub_error (GRUB_ERR_OUT_OF_RANGE, N_("overflow is detected"));
-+ grub_free (n->name);
-+ grub_free (n);
-+ return grub_errno;
-+ }
- *head = n;
- cur = n;
- }
- root = &cur->next;
- }
-- return size;
-+ return GRUB_ERR_NONE;
- }
-
- grub_err_t
-@@ -173,26 +182,33 @@ grub_initrd_init (int argc, char *argv[],
- eptr = grub_strchr (ptr, ':');
- if (eptr)
- {
-+ grub_size_t dir_size, name_len;
-+
- initrd_ctx->components[i].newc_name = grub_strndup (ptr, eptr - ptr);
-- if (!initrd_ctx->components[i].newc_name)
-+ if (!initrd_ctx->components[i].newc_name ||
-+ insert_dir (initrd_ctx->components[i].newc_name, &root, 0,
-+ &dir_size))
- {
- grub_initrd_close (initrd_ctx);
- return grub_errno;
- }
-- initrd_ctx->size
-- += ALIGN_UP (sizeof (struct newc_head)
-- + grub_strlen (initrd_ctx->components[i].newc_name),
-- 4);
-- initrd_ctx->size += insert_dir (initrd_ctx->components[i].newc_name,
-- &root, 0);
-+ name_len = grub_strlen (initrd_ctx->components[i].newc_name);
-+ if (grub_add (initrd_ctx->size,
-+ ALIGN_UP (sizeof (struct newc_head) + name_len, 4),
-+ &initrd_ctx->size) ||
-+ grub_add (initrd_ctx->size, dir_size, &initrd_ctx->size))
-+ goto overflow;
- newc = 1;
- fname = eptr + 1;
- }
- }
- else if (newc)
- {
-- initrd_ctx->size += ALIGN_UP (sizeof (struct newc_head)
-- + sizeof ("TRAILER!!!") - 1, 4);
-+ if (grub_add (initrd_ctx->size,
-+ ALIGN_UP (sizeof (struct newc_head)
-+ + sizeof ("TRAILER!!!") - 1, 4),
-+ &initrd_ctx->size))
-+ goto overflow;
- free_dir (root);
- root = 0;
- newc = 0;
-@@ -208,19 +224,29 @@ grub_initrd_init (int argc, char *argv[],
- initrd_ctx->nfiles++;
- initrd_ctx->components[i].size
- = grub_file_size (initrd_ctx->components[i].file);
-- initrd_ctx->size += initrd_ctx->components[i].size;
-+ if (grub_add (initrd_ctx->size, initrd_ctx->components[i].size,
-+ &initrd_ctx->size))
-+ goto overflow;
- }
-
- if (newc)
- {
- initrd_ctx->size = ALIGN_UP (initrd_ctx->size, 4);
-- initrd_ctx->size += ALIGN_UP (sizeof (struct newc_head)
-- + sizeof ("TRAILER!!!") - 1, 4);
-+ if (grub_add (initrd_ctx->size,
-+ ALIGN_UP (sizeof (struct newc_head)
-+ + sizeof ("TRAILER!!!") - 1, 4),
-+ &initrd_ctx->size))
-+ goto overflow;
- free_dir (root);
- root = 0;
- }
-
- return GRUB_ERR_NONE;
-+
-+ overflow:
-+ free_dir (root);
-+ grub_initrd_close (initrd_ctx);
-+ return grub_error (GRUB_ERR_OUT_OF_RANGE, N_("overflow is detected"));
- }
-
- grub_size_t
-@@ -261,8 +287,16 @@ grub_initrd_load (struct grub_linux_initrd_context *initrd_ctx,
-
- if (initrd_ctx->components[i].newc_name)
- {
-- ptr += insert_dir (initrd_ctx->components[i].newc_name,
-- &root, ptr);
-+ grub_size_t dir_size;
-+
-+ if (insert_dir (initrd_ctx->components[i].newc_name, &root, ptr,
-+ &dir_size))
-+ {
-+ free_dir (root);
-+ grub_initrd_close (initrd_ctx);
-+ return grub_errno;
-+ }
-+ ptr += dir_size;
- ptr = make_header (ptr, initrd_ctx->components[i].newc_name,
- grub_strlen (initrd_ctx->components[i].newc_name),
- 0100777,
---
-2.14.4
-
diff --git a/poky/meta/recipes-bsp/grub/files/autogen.sh-exclude-pc.patch b/poky/meta/recipes-bsp/grub/files/autogen.sh-exclude-pc.patch
index faa7fde23..1323a54a5 100644
--- a/poky/meta/recipes-bsp/grub/files/autogen.sh-exclude-pc.patch
+++ b/poky/meta/recipes-bsp/grub/files/autogen.sh-exclude-pc.patch
@@ -1,6 +1,6 @@
-From 72c30928d3d461e0e2d20c5ff33bd96b6991d585 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Sat, 25 Jan 2014 23:49:44 -0500
+From 8790aa8bea736f52341a0430ff3e317d3be0f99b Mon Sep 17 00:00:00 2001
+From: Naveen Saini <naveen.kumar.saini@intel.com>
+Date: Mon, 15 Mar 2021 14:44:15 +0800
Subject: [PATCH] autogen.sh: exclude .pc from po/POTFILES.in
Exclude the .pc from po/POTFILES.in since quilt uses "patch --backup",
@@ -13,23 +13,24 @@ Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
---
autogen.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/autogen.sh b/autogen.sh
-index ef43270..a7067a7 100755
+index 31b0ced7e..c63ae766c 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -13,7 +13,7 @@ fi
export LC_COLLATE=C
unset LC_ALL
--find . -iname '*.[ch]' ! -ipath './grub-core/lib/libgcrypt-grub/*' ! -ipath './build-aux/*' ! -ipath './grub-core/lib/libgcrypt/src/misc.c' ! -ipath './grub-core/lib/libgcrypt/src/global.c' ! -ipath './grub-core/lib/libgcrypt/src/secmem.c' ! -ipath './util/grub-gen-widthspec.c' ! -ipath './util/grub-gen-asciih.c' ! -ipath './gnulib/*' ! -iname './grub-core/lib/gnulib/*' |sort > po/POTFILES.in
-+find . -iname '*.[ch]' ! -ipath './grub-core/lib/libgcrypt-grub/*' ! -ipath './build-aux/*' ! -ipath './grub-core/lib/libgcrypt/src/misc.c' ! -ipath './grub-core/lib/libgcrypt/src/global.c' ! -ipath './grub-core/lib/libgcrypt/src/secmem.c' ! -ipath './util/grub-gen-widthspec.c' ! -ipath './util/grub-gen-asciih.c' ! -ipath './gnulib/*' ! -iname './grub-core/lib/gnulib/*' ! -path './.pc/*' |sort > po/POTFILES.in
+-find . -iname '*.[ch]' ! -ipath './grub-core/lib/libgcrypt-grub/*' ! -ipath './build-aux/*' ! -ipath './grub-core/lib/libgcrypt/src/misc.c' ! -ipath './grub-core/lib/libgcrypt/src/global.c' ! -ipath './grub-core/lib/libgcrypt/src/secmem.c' ! -ipath './util/grub-gen-widthspec.c' ! -ipath './util/grub-gen-asciih.c' ! -ipath './gnulib/*' ! -ipath './grub-core/lib/gnulib/*' |sort > po/POTFILES.in
++find . -iname '*.[ch]' ! -ipath './grub-core/lib/libgcrypt-grub/*' ! -ipath './build-aux/*' ! -ipath './grub-core/lib/libgcrypt/src/misc.c' ! -ipath './grub-core/lib/libgcrypt/src/global.c' ! -ipath './grub-core/lib/libgcrypt/src/secmem.c' ! -ipath './util/grub-gen-widthspec.c' ! -ipath './util/grub-gen-asciih.c' ! -ipath './gnulib/*' ! -ipath './grub-core/lib/gnulib/*' ! -path './.pc/*' |sort > po/POTFILES.in
find util -iname '*.in' ! -name Makefile.in |sort > po/POTFILES-shell.in
echo "Importing unicode..."
--
-2.7.4
+2.17.1
diff --git a/poky/meta/recipes-bsp/grub/files/calloc-Make-sure-we-always-have-an-overflow-checking.patch b/poky/meta/recipes-bsp/grub/files/calloc-Make-sure-we-always-have-an-overflow-checking.patch
deleted file mode 100644
index c9536e68e..000000000
--- a/poky/meta/recipes-bsp/grub/files/calloc-Make-sure-we-always-have-an-overflow-checking.patch
+++ /dev/null
@@ -1,246 +0,0 @@
-From c005f62f5c4b26a77b916c8f76a852324439ecb3 Mon Sep 17 00:00:00 2001
-From: Peter Jones <pjones@redhat.com>
-Date: Mon, 15 Jun 2020 12:15:29 -0400
-Subject: [PATCH 2/9] calloc: Make sure we always have an overflow-checking
- calloc() available
-
-This tries to make sure that everywhere in this source tree, we always have
-an appropriate version of calloc() (i.e. grub_calloc(), xcalloc(), etc.)
-available, and that they all safely check for overflow and return NULL when
-it would occur.
-
-Upstream-Status: Backport [commit 64e26162ebfe68317c143ca5ec996c892019f8f8
-from https://git.savannah.gnu.org/git/grub.git]
-
-Signed-off-by: Peter Jones <pjones@redhat.com>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
-Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
----
- grub-core/kern/emu/misc.c | 12 ++++++++++++
- grub-core/kern/emu/mm.c | 10 ++++++++++
- grub-core/kern/mm.c | 40 ++++++++++++++++++++++++++++++++++++++
- grub-core/lib/libgcrypt_wrap/mem.c | 11 +++++++++--
- grub-core/lib/posix_wrap/stdlib.h | 8 +++++++-
- include/grub/emu/misc.h | 1 +
- include/grub/mm.h | 6 ++++++
- 7 files changed, 85 insertions(+), 3 deletions(-)
-
-diff --git a/grub-core/kern/emu/misc.c b/grub-core/kern/emu/misc.c
-index 65db79b..dfd8a8e 100644
---- a/grub-core/kern/emu/misc.c
-+++ b/grub-core/kern/emu/misc.c
-@@ -85,6 +85,18 @@ grub_util_error (const char *fmt, ...)
- exit (1);
- }
-
-+void *
-+xcalloc (grub_size_t nmemb, grub_size_t size)
-+{
-+ void *p;
-+
-+ p = calloc (nmemb, size);
-+ if (!p)
-+ grub_util_error ("%s", _("out of memory"));
-+
-+ return p;
-+}
-+
- void *
- xmalloc (grub_size_t size)
- {
-diff --git a/grub-core/kern/emu/mm.c b/grub-core/kern/emu/mm.c
-index f262e95..145b01d 100644
---- a/grub-core/kern/emu/mm.c
-+++ b/grub-core/kern/emu/mm.c
-@@ -25,6 +25,16 @@
- #include <string.h>
- #include <grub/i18n.h>
-
-+void *
-+grub_calloc (grub_size_t nmemb, grub_size_t size)
-+{
-+ void *ret;
-+ ret = calloc (nmemb, size);
-+ if (!ret)
-+ grub_error (GRUB_ERR_OUT_OF_MEMORY, N_("out of memory"));
-+ return ret;
-+}
-+
- void *
- grub_malloc (grub_size_t size)
- {
-diff --git a/grub-core/kern/mm.c b/grub-core/kern/mm.c
-index ee88ff6..f2822a8 100644
---- a/grub-core/kern/mm.c
-+++ b/grub-core/kern/mm.c
-@@ -67,8 +67,10 @@
- #include <grub/dl.h>
- #include <grub/i18n.h>
- #include <grub/mm_private.h>
-+#include <grub/safemath.h>
-
- #ifdef MM_DEBUG
-+# undef grub_calloc
- # undef grub_malloc
- # undef grub_zalloc
- # undef grub_realloc
-@@ -375,6 +377,30 @@ grub_memalign (grub_size_t align, grub_size_t size)
- return 0;
- }
-
-+/*
-+ * Allocate NMEMB instances of SIZE bytes and return the pointer, or error on
-+ * integer overflow.
-+ */
-+void *
-+grub_calloc (grub_size_t nmemb, grub_size_t size)
-+{
-+ void *ret;
-+ grub_size_t sz = 0;
-+
-+ if (grub_mul (nmemb, size, &sz))
-+ {
-+ grub_error (GRUB_ERR_OUT_OF_RANGE, N_("overflow is detected"));
-+ return NULL;
-+ }
-+
-+ ret = grub_memalign (0, sz);
-+ if (!ret)
-+ return NULL;
-+
-+ grub_memset (ret, 0, sz);
-+ return ret;
-+}
-+
- /* Allocate SIZE bytes and return the pointer. */
- void *
- grub_malloc (grub_size_t size)
-@@ -561,6 +587,20 @@ grub_mm_dump (unsigned lineno)
- grub_printf ("\n");
- }
-
-+void *
-+grub_debug_calloc (const char *file, int line, grub_size_t nmemb, grub_size_t size)
-+{
-+ void *ptr;
-+
-+ if (grub_mm_debug)
-+ grub_printf ("%s:%d: calloc (0x%" PRIxGRUB_SIZE ", 0x%" PRIxGRUB_SIZE ") = ",
-+ file, line, size);
-+ ptr = grub_calloc (nmemb, size);
-+ if (grub_mm_debug)
-+ grub_printf ("%p\n", ptr);
-+ return ptr;
-+}
-+
- void *
- grub_debug_malloc (const char *file, int line, grub_size_t size)
- {
-diff --git a/grub-core/lib/libgcrypt_wrap/mem.c b/grub-core/lib/libgcrypt_wrap/mem.c
-index beeb661..74c6eaf 100644
---- a/grub-core/lib/libgcrypt_wrap/mem.c
-+++ b/grub-core/lib/libgcrypt_wrap/mem.c
-@@ -4,6 +4,7 @@
- #include <grub/crypto.h>
- #include <grub/dl.h>
- #include <grub/env.h>
-+#include <grub/safemath.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-@@ -36,7 +37,10 @@ void *
- gcry_xcalloc (size_t n, size_t m)
- {
- void *ret;
-- ret = grub_zalloc (n * m);
-+ size_t sz;
-+ if (grub_mul (n, m, &sz))
-+ grub_fatal ("gcry_xcalloc would overflow");
-+ ret = grub_zalloc (sz);
- if (!ret)
- grub_fatal ("gcry_xcalloc failed");
- return ret;
-@@ -56,7 +60,10 @@ void *
- gcry_xcalloc_secure (size_t n, size_t m)
- {
- void *ret;
-- ret = grub_zalloc (n * m);
-+ size_t sz;
-+ if (grub_mul (n, m, &sz))
-+ grub_fatal ("gcry_xcalloc would overflow");
-+ ret = grub_zalloc (sz);
- if (!ret)
- grub_fatal ("gcry_xcalloc failed");
- return ret;
-diff --git a/grub-core/lib/posix_wrap/stdlib.h b/grub-core/lib/posix_wrap/stdlib.h
-index 3b46f47..7a8d385 100644
---- a/grub-core/lib/posix_wrap/stdlib.h
-+++ b/grub-core/lib/posix_wrap/stdlib.h
-@@ -21,6 +21,7 @@
-
- #include <grub/mm.h>
- #include <grub/misc.h>
-+#include <grub/safemath.h>
-
- static inline void
- free (void *ptr)
-@@ -37,7 +38,12 @@ malloc (grub_size_t size)
- static inline void *
- calloc (grub_size_t size, grub_size_t nelem)
- {
-- return grub_zalloc (size * nelem);
-+ grub_size_t sz;
-+
-+ if (grub_mul (size, nelem, &sz))
-+ return NULL;
-+
-+ return grub_zalloc (sz);
- }
-
- static inline void *
-diff --git a/include/grub/emu/misc.h b/include/grub/emu/misc.h
-index ce464cf..ff9c48a 100644
---- a/include/grub/emu/misc.h
-+++ b/include/grub/emu/misc.h
-@@ -47,6 +47,7 @@ grub_util_device_is_mapped (const char *dev);
- #define GRUB_HOST_PRIuLONG_LONG "llu"
- #define GRUB_HOST_PRIxLONG_LONG "llx"
-
-+void * EXPORT_FUNC(xcalloc) (grub_size_t nmemb, grub_size_t size) WARN_UNUSED_RESULT;
- void * EXPORT_FUNC(xmalloc) (grub_size_t size) WARN_UNUSED_RESULT;
- void * EXPORT_FUNC(xrealloc) (void *ptr, grub_size_t size) WARN_UNUSED_RESULT;
- char * EXPORT_FUNC(xstrdup) (const char *str) WARN_UNUSED_RESULT;
-diff --git a/include/grub/mm.h b/include/grub/mm.h
-index 28e2e53..9c38dd3 100644
---- a/include/grub/mm.h
-+++ b/include/grub/mm.h
-@@ -29,6 +29,7 @@
- #endif
-
- void grub_mm_init_region (void *addr, grub_size_t size);
-+void *EXPORT_FUNC(grub_calloc) (grub_size_t nmemb, grub_size_t size);
- void *EXPORT_FUNC(grub_malloc) (grub_size_t size);
- void *EXPORT_FUNC(grub_zalloc) (grub_size_t size);
- void EXPORT_FUNC(grub_free) (void *ptr);
-@@ -48,6 +49,9 @@ extern int EXPORT_VAR(grub_mm_debug);
- void grub_mm_dump_free (void);
- void grub_mm_dump (unsigned lineno);
-
-+#define grub_calloc(nmemb, size) \
-+ grub_debug_calloc (GRUB_FILE, __LINE__, nmemb, size)
-+
- #define grub_malloc(size) \
- grub_debug_malloc (GRUB_FILE, __LINE__, size)
-
-@@ -63,6 +67,8 @@ void grub_mm_dump (unsigned lineno);
- #define grub_free(ptr) \
- grub_debug_free (GRUB_FILE, __LINE__, ptr)
-
-+void *EXPORT_FUNC(grub_debug_calloc) (const char *file, int line,
-+ grub_size_t nmemb, grub_size_t size);
- void *EXPORT_FUNC(grub_debug_malloc) (const char *file, int line,
- grub_size_t size);
- void *EXPORT_FUNC(grub_debug_zalloc) (const char *file, int line,
---
-2.14.4
-
diff --git a/poky/meta/recipes-bsp/grub/files/determinism.patch b/poky/meta/recipes-bsp/grub/files/determinism.patch
index 3c1f562c7..2828e8097 100644
--- a/poky/meta/recipes-bsp/grub/files/determinism.patch
+++ b/poky/meta/recipes-bsp/grub/files/determinism.patch
@@ -1,6 +1,9 @@
-The output in moddep.lst generated from syminfo.lst using genmoddep.awk is
-not deterministic since the order of the dependencies on each line can vary
-depending on how awk sorts the values in the array.
+From b6f9b3f6fa782807c4a7ec16ee8ef868cdfbf468 Mon Sep 17 00:00:00 2001
+From: Naveen Saini <naveen.kumar.saini@intel.com>
+Date: Mon, 15 Mar 2021 14:56:18 +0800
+Subject: [PATCH] The output in moddep.lst generated from syminfo.lst using
+ genmoddep.awk is not deterministic since the order of the dependencies on
+ each line can vary depending on how awk sorts the values in the array.
Be deterministic in the output by sorting the dependencies on each line.
@@ -13,11 +16,29 @@ keys of the dict.
Upstream-Status: Pending
Richard Purdie <richard.purdie@linuxfoundation.org>
+Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
+---
+ gentpl.py | 1 +
+ grub-core/genmoddep.awk | 4 +++-
+ util/import_unicode.py | 2 +-
+ 3 files changed, 5 insertions(+), 2 deletions(-)
-Index: grub-2.04/grub-core/genmoddep.awk
-===================================================================
---- grub-2.04.orig/grub-core/genmoddep.awk
-+++ grub-2.04/grub-core/genmoddep.awk
+diff --git a/gentpl.py b/gentpl.py
+index c86550d4f..589285192 100644
+--- a/gentpl.py
++++ b/gentpl.py
+@@ -568,6 +568,7 @@ def foreach_platform_value(defn, platform, suffix, closure):
+ for group in RMAP[platform]:
+ for value in defn.find_all(group + suffix):
+ r.append(closure(value))
++ r.sort()
+ return ''.join(r)
+
+ def platform_conditional(platform, closure):
+diff --git a/grub-core/genmoddep.awk b/grub-core/genmoddep.awk
+index 04c2863e5..247436392 100644
+--- a/grub-core/genmoddep.awk
++++ b/grub-core/genmoddep.awk
@@ -59,7 +59,9 @@ END {
}
modlist = ""
@@ -29,22 +50,10 @@ Index: grub-2.04/grub-core/genmoddep.awk
modlist = modlist " " depmod;
inverse_dependencies[depmod] = inverse_dependencies[depmod] " " mod
depcount[mod]++
-Index: grub-2.04/gentpl.py
-===================================================================
---- grub-2.04.orig/gentpl.py
-+++ grub-2.04/gentpl.py
-@@ -568,6 +568,7 @@ def foreach_platform_value(defn, platfor
- for group in RMAP[platform]:
- for value in defn.find_all(group + suffix):
- r.append(closure(value))
-+ r.sort()
- return ''.join(r)
-
- def platform_conditional(platform, closure):
-Index: grub-2.04/util/import_unicode.py
-===================================================================
---- grub-2.04.orig/util/import_unicode.py
-+++ grub-2.04/util/import_unicode.py
+diff --git a/util/import_unicode.py b/util/import_unicode.py
+index 08f80591e..1f434a069 100644
+--- a/util/import_unicode.py
++++ b/util/import_unicode.py
@@ -174,7 +174,7 @@ infile.close ()
outfile.write ("struct grub_unicode_arabic_shape grub_unicode_arabic_shapes[] = {\n ")
@@ -54,3 +63,6 @@ Index: grub-2.04/util/import_unicode.py
try:
if arabicsubst[x]['join'] == "DUAL":
outfile.write ("{0x%x, 0x%x, 0x%x, 0x%x, 0x%x},\n " % (arabicsubst[x][0], arabicsubst[x][1], arabicsubst[x][2], arabicsubst[x][3], arabicsubst[x][4]))
+--
+2.17.1
+
diff --git a/poky/meta/recipes-bsp/grub/files/lvm-Add-LVM-cache-logical-volume-handling.patch b/poky/meta/recipes-bsp/grub/files/lvm-Add-LVM-cache-logical-volume-handling.patch
deleted file mode 100644
index 2b8157f59..000000000
--- a/poky/meta/recipes-bsp/grub/files/lvm-Add-LVM-cache-logical-volume-handling.patch
+++ /dev/null
@@ -1,287 +0,0 @@
-From 8eb02bcb5897b238b29ff762402bb0c3028f0eab Mon Sep 17 00:00:00 2001
-From: Michael Chang <mchang@suse.com>
-Date: Thu, 19 Mar 2020 13:56:13 +0800
-Subject: [PATCH 3/9] lvm: Add LVM cache logical volume handling
-
-The LVM cache logical volume is the logical volume consisting of the original
-and the cache pool logical volume. The original is usually on a larger and
-slower storage device while the cache pool is on a smaller and faster one. The
-performance of the original volume can be improved by storing the frequently
-used data on the cache pool to utilize the greater performance of faster
-device.
-
-The default cache mode "writethrough" ensures that any data written will be
-stored both in the cache and on the origin LV, therefore grub can be straight
-to read the original lv as no data loss is guarenteed.
-
-The second cache mode is "writeback", which delays writing from the cache pool
-back to the origin LV to have increased performance. The drawback is potential
-data loss if losing the associated cache device.
-
-During the boot time grub reads the LVM offline i.e. LVM volumes are not
-activated and mounted, hence it should be fine to read directly from original
-lv since all cached data should have been flushed back in the process of taking
-it offline.
-
-It is also not much helpful to the situation by adding fsync calls to the
-install code. The fsync did not force to write back dirty cache to the original
-device and rather it would update associated cache metadata to complete the
-write transaction with the cache device. IOW the writes to cached blocks still
-go only to the cache device.
-
-To write back dirty cache, as LVM cache did not support dirty cache flush per
-block range, there'no way to do it for file. On the other hand the "cleaner"
-policy is implemented and can be used to write back "all" dirty blocks in a
-cache, which effectively drain all dirty cache gradually to attain and last in
-the "clean" state, which can be useful for shrinking or decommissioning a
-cache. The result and effect is not what we are looking for here.
-
-In conclusion, as it seems no way to enforce file writes to the original
-device, grub may suffer from power failure as it cannot assemble the cache
-device and read the dirty data from it. However since the case is only
-applicable to writeback mode which is sensitive to data lost in nature, I'd
-still like to propose my (relatively simple) patch and treat reading dirty
-cache as improvement.
-
-Upstream-Status: Backport [commit 0454b0445393aafc5600e92ef0c39494e333b135
-from https://git.savannah.gnu.org/git/grub.git]
-
-Signed-off-by: Michael Chang <mchang@suse.com>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
-Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
----
- grub-core/disk/lvm.c | 190 +++++++++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 190 insertions(+)
-
-diff --git a/grub-core/disk/lvm.c b/grub-core/disk/lvm.c
-index 7b265c7..dc6b83b 100644
---- a/grub-core/disk/lvm.c
-+++ b/grub-core/disk/lvm.c
-@@ -33,6 +33,14 @@
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-+struct cache_lv
-+{
-+ struct grub_diskfilter_lv *lv;
-+ char *cache_pool;
-+ char *origin;
-+ struct cache_lv *next;
-+};
-+
-
- /* Go the string STR and return the number after STR. *P will point
- at the number. In case STR is not found, *P will be NULL and the
-@@ -95,6 +103,34 @@ grub_lvm_check_flag (char *p, const char *str, const char *flag)
- }
- }
-
-+static void
-+grub_lvm_free_cache_lvs (struct cache_lv *cache_lvs)
-+{
-+ struct cache_lv *cache;
-+
-+ while ((cache = cache_lvs))
-+ {
-+ cache_lvs = cache_lvs->next;
-+
-+ if (cache->lv)
-+ {
-+ unsigned int i;
-+
-+ for (i = 0; i < cache->lv->segment_count; ++i)
-+ if (cache->lv->segments)
-+ grub_free (cache->lv->segments[i].nodes);
-+ grub_free (cache->lv->segments);
-+ grub_free (cache->lv->fullname);
-+ grub_free (cache->lv->idname);
-+ grub_free (cache->lv->name);
-+ }
-+ grub_free (cache->lv);
-+ grub_free (cache->origin);
-+ grub_free (cache->cache_pool);
-+ grub_free (cache);
-+ }
-+}
-+
- static struct grub_diskfilter_vg *
- grub_lvm_detect (grub_disk_t disk,
- struct grub_diskfilter_pv_id *id,
-@@ -242,6 +278,8 @@ grub_lvm_detect (grub_disk_t disk,
-
- if (! vg)
- {
-+ struct cache_lv *cache_lvs = NULL;
-+
- /* First time we see this volume group. We've to create the
- whole volume group structure. */
- vg = grub_malloc (sizeof (*vg));
-@@ -671,6 +709,106 @@ grub_lvm_detect (grub_disk_t disk,
- seg->nodes[seg->node_count - 1].name = tmp;
- }
- }
-+ else if (grub_memcmp (p, "cache\"",
-+ sizeof ("cache\"") - 1) == 0)
-+ {
-+ struct cache_lv *cache = NULL;
-+
-+ char *p2, *p3;
-+ grub_size_t sz;
-+
-+ cache = grub_zalloc (sizeof (*cache));
-+ if (!cache)
-+ goto cache_lv_fail;
-+ cache->lv = grub_zalloc (sizeof (*cache->lv));
-+ if (!cache->lv)
-+ goto cache_lv_fail;
-+ grub_memcpy (cache->lv, lv, sizeof (*cache->lv));
-+
-+ if (lv->fullname)
-+ {
-+ cache->lv->fullname = grub_strdup (lv->fullname);
-+ if (!cache->lv->fullname)
-+ goto cache_lv_fail;
-+ }
-+ if (lv->idname)
-+ {
-+ cache->lv->idname = grub_strdup (lv->idname);
-+ if (!cache->lv->idname)
-+ goto cache_lv_fail;
-+ }
-+ if (lv->name)
-+ {
-+ cache->lv->name = grub_strdup (lv->name);
-+ if (!cache->lv->name)
-+ goto cache_lv_fail;
-+ }
-+
-+ skip_lv = 1;
-+
-+ p2 = grub_strstr (p, "cache_pool = \"");
-+ if (!p2)
-+ goto cache_lv_fail;
-+
-+ p2 = grub_strchr (p2, '"');
-+ if (!p2)
-+ goto cache_lv_fail;
-+
-+ p3 = ++p2;
-+ p3 = grub_strchr (p3, '"');
-+ if (!p3)
-+ goto cache_lv_fail;
-+
-+ sz = p3 - p2;
-+
-+ cache->cache_pool = grub_malloc (sz + 1);
-+ if (!cache->cache_pool)
-+ goto cache_lv_fail;
-+ grub_memcpy (cache->cache_pool, p2, sz);
-+ cache->cache_pool[sz] = '\0';
-+
-+ p2 = grub_strstr (p, "origin = \"");
-+ if (!p2)
-+ goto cache_lv_fail;
-+
-+ p2 = grub_strchr (p2, '"');
-+ if (!p2)
-+ goto cache_lv_fail;
-+
-+ p3 = ++p2;
-+ p3 = grub_strchr (p3, '"');
-+ if (!p3)
-+ goto cache_lv_fail;
-+
-+ sz = p3 - p2;
-+
-+ cache->origin = grub_malloc (sz + 1);
-+ if (!cache->origin)
-+ goto cache_lv_fail;
-+ grub_memcpy (cache->origin, p2, sz);
-+ cache->origin[sz] = '\0';
-+
-+ cache->next = cache_lvs;
-+ cache_lvs = cache;
-+ break;
-+
-+ cache_lv_fail:
-+ if (cache)
-+ {
-+ grub_free (cache->origin);
-+ grub_free (cache->cache_pool);
-+ if (cache->lv)
-+ {
-+ grub_free (cache->lv->fullname);
-+ grub_free (cache->lv->idname);
-+ grub_free (cache->lv->name);
-+ }
-+ grub_free (cache->lv);
-+ grub_free (cache);
-+ }
-+ grub_lvm_free_cache_lvs (cache_lvs);
-+ goto fail4;
-+ }
- else
- {
- #ifdef GRUB_UTIL
-@@ -747,6 +885,58 @@ grub_lvm_detect (grub_disk_t disk,
- }
-
- }
-+
-+ {
-+ struct cache_lv *cache;
-+
-+ for (cache = cache_lvs; cache; cache = cache->next)
-+ {
-+ struct grub_diskfilter_lv *lv;
-+
-+ for (lv = vg->lvs; lv; lv = lv->next)
-+ if (grub_strcmp (lv->name, cache->origin) == 0)
-+ break;
-+ if (lv)
-+ {
-+ cache->lv->segments = grub_malloc (lv->segment_count * sizeof (*lv->segments));
-+ if (!cache->lv->segments)
-+ {
-+ grub_lvm_free_cache_lvs (cache_lvs);
-+ goto fail4;
-+ }
-+ grub_memcpy (cache->lv->segments, lv->segments, lv->segment_count * sizeof (*lv->segments));
-+
-+ for (i = 0; i < lv->segment_count; ++i)
-+ {
-+ struct grub_diskfilter_node *nodes = lv->segments[i].nodes;
-+ grub_size_t node_count = lv->segments[i].node_count;
-+
-+ cache->lv->segments[i].nodes = grub_malloc (node_count * sizeof (*nodes));
-+ if (!cache->lv->segments[i].nodes)
-+ {
-+ for (j = 0; j < i; ++j)
-+ grub_free (cache->lv->segments[j].nodes);
-+ grub_free (cache->lv->segments);
-+ cache->lv->segments = NULL;
-+ grub_lvm_free_cache_lvs (cache_lvs);
-+ goto fail4;
-+ }
-+ grub_memcpy (cache->lv->segments[i].nodes, nodes, node_count * sizeof (*nodes));
-+ }
-+
-+ if (cache->lv->segments)
-+ {
-+ cache->lv->segment_count = lv->segment_count;
-+ cache->lv->vg = vg;
-+ cache->lv->next = vg->lvs;
-+ vg->lvs = cache->lv;
-+ cache->lv = NULL;
-+ }
-+ }
-+ }
-+ }
-+
-+ grub_lvm_free_cache_lvs (cache_lvs);
- if (grub_diskfilter_vg_register (vg))
- goto fail4;
- }
---
-2.14.4
-
diff --git a/poky/meta/recipes-bsp/grub/files/safemath-Add-some-arithmetic-primitives-that-check-f.patch b/poky/meta/recipes-bsp/grub/files/safemath-Add-some-arithmetic-primitives-that-check-f.patch
deleted file mode 100644
index 29021e8d8..000000000
--- a/poky/meta/recipes-bsp/grub/files/safemath-Add-some-arithmetic-primitives-that-check-f.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-From 06c361a71c4998635493610e5d76d0d223925251 Mon Sep 17 00:00:00 2001
-From: Peter Jones <pjones@redhat.com>
-Date: Mon, 15 Jun 2020 10:58:42 -0400
-Subject: [PATCH 5/9] safemath: Add some arithmetic primitives that check for
- overflow
-
-This adds a new header, include/grub/safemath.h, that includes easy to
-use wrappers for __builtin_{add,sub,mul}_overflow() declared like:
-
- bool OP(a, b, res)
-
-where OP is grub_add, grub_sub or grub_mul. OP() returns true in the
-case where the operation would overflow and res is not modified.
-Otherwise, false is returned and the operation is executed.
-
-These arithmetic primitives require newer compiler versions. So, bump
-these requirements in the INSTALL file too.
-
-Upstream-Status: Backport [commit 68708c4503018d61dbcce7ac11cbb511d6425f4d
-from https://git.savannah.gnu.org/git/grub.git]
-
-Signed-off-by: Peter Jones <pjones@redhat.com>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
-[YL: omit the change to INSTALL from original patch]
-Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
----
- include/grub/compiler.h | 8 ++++++++
- include/grub/safemath.h | 37 +++++++++++++++++++++++++++++++++++++
- 2 files changed, 45 insertions(+)
- create mode 100644 include/grub/safemath.h
-
-diff --git a/include/grub/compiler.h b/include/grub/compiler.h
-index c9e1d7a..8f3be3a 100644
---- a/include/grub/compiler.h
-+++ b/include/grub/compiler.h
-@@ -48,4 +48,12 @@
- # define WARN_UNUSED_RESULT
- #endif
-
-+#if defined(__clang__) && defined(__clang_major__) && defined(__clang_minor__)
-+# define CLANG_PREREQ(maj,min) \
-+ ((__clang_major__ > (maj)) || \
-+ (__clang_major__ == (maj) && __clang_minor__ >= (min)))
-+#else
-+# define CLANG_PREREQ(maj,min) 0
-+#endif
-+
- #endif /* ! GRUB_COMPILER_HEADER */
-diff --git a/include/grub/safemath.h b/include/grub/safemath.h
-new file mode 100644
-index 0000000..c17b89b
---- /dev/null
-+++ b/include/grub/safemath.h
-@@ -0,0 +1,37 @@
-+/*
-+ * GRUB -- GRand Unified Bootloader
-+ * Copyright (C) 2020 Free Software Foundation, Inc.
-+ *
-+ * GRUB is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation, either version 3 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * GRUB is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with GRUB. If not, see <http://www.gnu.org/licenses/>.
-+ *
-+ * Arithmetic operations that protect against overflow.
-+ */
-+
-+#ifndef GRUB_SAFEMATH_H
-+#define GRUB_SAFEMATH_H 1
-+
-+#include <grub/compiler.h>
-+
-+/* These appear in gcc 5.1 and clang 3.8. */
-+#if GNUC_PREREQ(5, 1) || CLANG_PREREQ(3, 8)
-+
-+#define grub_add(a, b, res) __builtin_add_overflow(a, b, res)
-+#define grub_sub(a, b, res) __builtin_sub_overflow(a, b, res)
-+#define grub_mul(a, b, res) __builtin_mul_overflow(a, b, res)
-+
-+#else
-+#error gcc 5.1 or newer or clang 3.8 or newer is required
-+#endif
-+
-+#endif /* GRUB_SAFEMATH_H */
---
-2.14.4
-
diff --git a/poky/meta/recipes-bsp/grub/files/script-Remove-unused-fields-from-grub_script_functio.patch b/poky/meta/recipes-bsp/grub/files/script-Remove-unused-fields-from-grub_script_functio.patch
deleted file mode 100644
index 84a80d5ff..000000000
--- a/poky/meta/recipes-bsp/grub/files/script-Remove-unused-fields-from-grub_script_functio.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From e219bad8cee67b2bb21712df8f055706f8da25d2 Mon Sep 17 00:00:00 2001
-From: Chris Coulson <chris.coulson@canonical.com>
-Date: Fri, 10 Jul 2020 11:21:14 +0100
-Subject: [PATCH 7/9] script: Remove unused fields from grub_script_function
- struct
-
-Upstream-Status: Backport [commit 1a8d9c9b4ab6df7669b5aa36a56477f297825b96
-from https://git.savannah.gnu.org/git/grub.git]
-
-Signed-off-by: Chris Coulson <chris.coulson@canonical.com>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
-Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
----
- include/grub/script_sh.h | 5 -----
- 1 file changed, 5 deletions(-)
-
-diff --git a/include/grub/script_sh.h b/include/grub/script_sh.h
-index 360c2be..b382bcf 100644
---- a/include/grub/script_sh.h
-+++ b/include/grub/script_sh.h
-@@ -359,13 +359,8 @@ struct grub_script_function
- /* The script function. */
- struct grub_script *func;
-
-- /* The flags. */
-- unsigned flags;
--
- /* The next element. */
- struct grub_script_function *next;
--
-- int references;
- };
- typedef struct grub_script_function *grub_script_function_t;
-
---
-2.14.4
-
diff --git a/poky/meta/recipes-bsp/grub/grub-efi_2.04.bb b/poky/meta/recipes-bsp/grub/grub-efi_git.bb
index 287845c50..240fde7db 100644
--- a/poky/meta/recipes-bsp/grub/grub-efi_2.04.bb
+++ b/poky/meta/recipes-bsp/grub/grub-efi_git.bb
@@ -11,8 +11,6 @@ SRC_URI += " \
file://cfg \
"
-S = "${WORKDIR}/grub-${PV}"
-
# Determine the target arch for the grub modules
python __anonymous () {
import re
diff --git a/poky/meta/recipes-bsp/grub/grub2.inc b/poky/meta/recipes-bsp/grub/grub2.inc
index f870d41f6..590deb8d9 100644
--- a/poky/meta/recipes-bsp/grub/grub2.inc
+++ b/poky/meta/recipes-bsp/grub/grub2.inc
@@ -13,25 +13,24 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
CVE_PRODUCT = "grub2"
-SRC_URI = "${GNU_MIRROR}/grub/grub-${PV}.tar.gz \
+SRC_URI = "https://alpha.gnu.org/gnu/grub/grub-${REALPV}.tar.xz \
file://0001-Disable-mfpmath-sse-as-well-when-SSE-is-disabled.patch \
file://autogen.sh-exclude-pc.patch \
file://grub-module-explicitly-keeps-symbole-.module_license.patch \
file://0001-grub.d-10_linux.in-add-oe-s-kernel-name.patch \
- file://CVE-2020-10713.patch \
- file://calloc-Make-sure-we-always-have-an-overflow-checking.patch \
- file://lvm-Add-LVM-cache-logical-volume-handling.patch \
- file://CVE-2020-14308-calloc-Use-calloc-at-most-places.patch \
- file://safemath-Add-some-arithmetic-primitives-that-check-f.patch \
- file://CVE-2020-14309-CVE-2020-14310-CVE-2020-14311-malloc-Use-overflow-checking-primitives-where-we-do-.patch \
- file://script-Remove-unused-fields-from-grub_script_functio.patch \
- file://CVE-2020-15706-script-Avoid-a-use-after-free-when-redefining-a-func.patch \
- file://CVE-2020-15707-linux-Fix-integer-overflows-in-initrd-size-handling.patch \
- file://6643507ce30f775008e093580f0c9499dfb2c485.patch \
file://determinism.patch \
+ file://0001-RISC-V-Restore-the-typcast-to-long.patch \
"
-SRC_URI[md5sum] = "5ce674ca6b2612d8939b9e6abed32934"
-SRC_URI[sha256sum] = "f10c85ae3e204dbaec39ae22fa3c5e99f0665417e91c2cb49b7e5031658ba6ea"
+
+SRC_URI[sha256sum] = "2c87f1f21e2ab50043e6cd9163c08f1b6c3a6171556bf23ff9ed65b074145484"
+
+REALPV = "2.06~rc1"
+PV = "2.04+${REALPV}"
+
+S = "${WORKDIR}/grub-${REALPV}"
+
+UPSTREAM_CHECK_URI = "${GNU_MIRROR}/grub"
+UPSTREAM_CHECK_REGEX = "grub-(?P<pver>\d+(\.\d+)+)\.tar\.(gz|xz)"
DEPENDS = "flex-native bison-native gettext-native"
diff --git a/poky/meta/recipes-bsp/grub/grub_2.04.bb b/poky/meta/recipes-bsp/grub/grub_git.bb
index d4e09faa4..d4e09faa4 100644
--- a/poky/meta/recipes-bsp/grub/grub_2.04.bb
+++ b/poky/meta/recipes-bsp/grub/grub_git.bb
diff --git a/poky/meta/recipes-bsp/u-boot/files/0001-add-valid-fdt-check.patch b/poky/meta/recipes-bsp/u-boot/files/0001-add-valid-fdt-check.patch
new file mode 100644
index 000000000..d4ac9e2ed
--- /dev/null
+++ b/poky/meta/recipes-bsp/u-boot/files/0001-add-valid-fdt-check.patch
@@ -0,0 +1,36 @@
+From ea1a9ec5f430359720d9a0621ed1acfbba6a142a Mon Sep 17 00:00:00 2001
+From: Heinrich Schuchardt <xypron.glpk@gmx.de>
+Date: Wed, 13 Jan 2021 02:09:12 +0100
+Subject: [PATCH] image-fit: fit_check_format check for valid FDT
+
+fit_check_format() must check that the buffer contains a flattened device
+tree before calling any device tree library functions.
+
+Failure to do may cause segmentation faults.
+
+Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
+
+Upstream-Status: Backport[https://github.com/u-boot/u-boot/commit/ea1a9ec5f430359720d9a0621ed1acfbba6a142a]
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+
+---
+ common/image-fit.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/common/image-fit.c b/common/image-fit.c
+index 6a8787ca0a..21c44bdf69 100644
+--- a/common/image-fit.c
++++ b/common/image-fit.c
+@@ -1553,6 +1553,12 @@ int fit_image_check_comp(const void *fit, int noffset, uint8_t comp)
+ */
+ int fit_check_format(const void *fit)
+ {
++ /* A FIT image must be a valid FDT */
++ if (fdt_check_header(fit)) {
++ debug("Wrong FIT format: not a flattened device tree\n");
++ return 0;
++ }
++
+ /* mandatory / node 'description' property */
+ if (fdt_getprop(fit, 0, FIT_DESC_PROP, NULL) == NULL) {
+ debug("Wrong FIT format: no description\n");
diff --git a/poky/meta/recipes-bsp/u-boot/files/0001-riscv32-Use-double-float-ABI-for-rv32.patch b/poky/meta/recipes-bsp/u-boot/files/0001-riscv32-Use-double-float-ABI-for-rv32.patch
new file mode 100644
index 000000000..0ed3de491
--- /dev/null
+++ b/poky/meta/recipes-bsp/u-boot/files/0001-riscv32-Use-double-float-ABI-for-rv32.patch
@@ -0,0 +1,42 @@
+From 66dfe0fa886f6289add06d1af8642ce2b5302852 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 9 Feb 2021 16:40:12 -0800
+Subject: [PATCH] riscv32: Use double-float ABI for rv32
+
+So it can use libgcc built with OE toolchain
+Fixes
+error: "can't link hard-float modules with soft-float modules"
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Inappropriate [embedded specific]
+---
+ arch/riscv/Makefile | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/arch/riscv/Makefile b/arch/riscv/Makefile
+index 0b80eb8d86..7324946f48 100644
+--- a/arch/riscv/Makefile
++++ b/arch/riscv/Makefile
+@@ -9,7 +9,9 @@ ifeq ($(CONFIG_ARCH_RV64I),y)
+ endif
+ ifeq ($(CONFIG_ARCH_RV32I),y)
+ ARCH_BASE = rv32im
+- ABI = ilp32
++ ABI = ilp32d
++ ARCH_D = d
++ ARCH_F = f
+ endif
+ ifeq ($(CONFIG_RISCV_ISA_A),y)
+ ARCH_A = a
+@@ -24,7 +26,7 @@ ifeq ($(CONFIG_CMODEL_MEDANY),y)
+ CMODEL = medany
+ endif
+
+-ARCH_FLAGS = -march=$(ARCH_BASE)$(ARCH_A)$(ARCH_C) -mabi=$(ABI) \
++ARCH_FLAGS = -march=$(ARCH_BASE)$(ARCH_A)$(ARCH_F)$(ARCH_D)$(ARCH_C) -mabi=$(ABI) \
+ -mcmodel=$(CMODEL)
+
+ PLATFORM_CPPFLAGS += $(ARCH_FLAGS)
+--
+2.30.0
+
diff --git a/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-1.patch b/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-1.patch
new file mode 100644
index 000000000..98ec2c709
--- /dev/null
+++ b/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-1.patch
@@ -0,0 +1,71 @@
+From 8a7d4cf9820ea16fabd25a6379351b4dc291204b Mon Sep 17 00:00:00 2001
+From: Simon Glass <sjg@chromium.org>
+Date: Mon, 15 Feb 2021 17:08:05 -0700
+Subject: [PATCH] fdt_region: Check for a single root node of the correct name
+
+At present fdt_find_regions() assumes that the FIT is a valid devicetree.
+If the FIT has two root nodes this is currently not detected in this
+function, nor does libfdt's fdt_check_full() notice. Also it is possible
+for the root node to have a name even though it should not.
+
+Add checks for these and return -FDT_ERR_BADSTRUCTURE if a problem is
+detected.
+
+CVE-2021-27097
+
+Signed-off-by: Simon Glass <sjg@chromium.org>
+Reported-by: Bruce Monroe <bruce.monroe@intel.com>
+Reported-by: Arie Haenel <arie.haenel@intel.com>
+Reported-by: Julien Lenoir <julien.lenoir@intel.com>
+
+CVE: CVE-2021-27097
+Upstream-Status: Backport[https://github.com/u-boot/u-boot/commit/8a7d4cf9820ea16fabd25a6379351b4dc291204b]
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+
+---
+ common/fdt_region.c | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+diff --git a/common/fdt_region.c b/common/fdt_region.c
+index ff12c518e9..e4ef0ca770 100644
+--- a/common/fdt_region.c
++++ b/common/fdt_region.c
+@@ -43,6 +43,7 @@ int fdt_find_regions(const void *fdt, char * const inc[], int inc_count,
+ int depth = -1;
+ int want = 0;
+ int base = fdt_off_dt_struct(fdt);
++ bool expect_end = false;
+
+ end = path;
+ *end = '\0';
+@@ -59,6 +60,10 @@ int fdt_find_regions(const void *fdt, char * const inc[], int inc_count,
+ tag = fdt_next_tag(fdt, offset, &nextoffset);
+ stop_at = nextoffset;
+
++ /* If we see two root nodes, something is wrong */
++ if (expect_end && tag != FDT_END)
++ return -FDT_ERR_BADLAYOUT;
++
+ switch (tag) {
+ case FDT_PROP:
+ include = want >= 2;
+@@ -81,6 +86,10 @@ int fdt_find_regions(const void *fdt, char * const inc[], int inc_count,
+ if (depth == FDT_MAX_DEPTH)
+ return -FDT_ERR_BADSTRUCTURE;
+ name = fdt_get_name(fdt, offset, &len);
++
++ /* The root node must have an empty name */
++ if (!depth && *name)
++ return -FDT_ERR_BADLAYOUT;
+ if (end - path + 2 + len >= path_len)
+ return -FDT_ERR_NOSPACE;
+ if (end != path + 1)
+@@ -108,6 +117,8 @@ int fdt_find_regions(const void *fdt, char * const inc[], int inc_count,
+ while (end > path && *--end != '/')
+ ;
+ *end = '\0';
++ if (depth == -1)
++ expect_end = true;
+ break;
+
+ case FDT_END:
diff --git a/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-2.patch b/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-2.patch
new file mode 100644
index 000000000..b13c44e78
--- /dev/null
+++ b/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-2.patch
@@ -0,0 +1,419 @@
+From c5819701a3de61e2ba2ef7ad0b616565b32305e5 Mon Sep 17 00:00:00 2001
+From: Simon Glass <sjg@chromium.org>
+Date: Mon, 15 Feb 2021 17:08:09 -0700
+Subject: [PATCH] image: Adjust the workings of fit_check_format()
+
+At present this function does not accept a size for the FIT. This means
+that it must be read from the FIT itself, introducing potential security
+risk. Update the function to include a size parameter, which can be
+invalid, in which case fit_check_format() calculates it.
+
+For now no callers pass the size, but this can be updated later.
+
+Also adjust the return value to an error code so that all the different
+types of problems can be distinguished by the user.
+
+Signed-off-by: Simon Glass <sjg@chromium.org>
+Reported-by: Bruce Monroe <bruce.monroe@intel.com>
+Reported-by: Arie Haenel <arie.haenel@intel.com>
+Reported-by: Julien Lenoir <julien.lenoir@intel.com>
+
+CVE: CVE-2021-27097 CVE-2021-27138
+Upstream-Status: Backport[https://github.com/u-boot/u-boot/commit/c5819701a3de61e2ba2ef7ad0b616565b32305e5]
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+
+---
+ arch/arm/cpu/armv8/sec_firmware.c | 2 +-
+ cmd/bootm.c | 6 ++---
+ cmd/disk.c | 2 +-
+ cmd/fpga.c | 2 +-
+ cmd/nand.c | 2 +-
+ cmd/source.c | 2 +-
+ cmd/ximg.c | 2 +-
+ common/image-fdt.c | 2 +-
+ common/image-fit.c | 46 +++++++++++++++++---------------------
+ common/splash_source.c | 6 ++---
+ common/update.c | 4 ++--
+ drivers/fpga/socfpga_arria10.c | 6 ++---
+ drivers/net/fsl-mc/mc.c | 2 +-
+ drivers/net/pfe_eth/pfe_firmware.c | 2 +-
+ include/image.h | 21 ++++++++++++++++-
+ tools/fit_common.c | 3 ++-
+ tools/fit_image.c | 2 +-
+ tools/mkimage.h | 2 ++
+ 18 files changed, 65 insertions(+), 49 deletions(-)
+
+diff --git a/arch/arm/cpu/armv8/sec_firmware.c b/arch/arm/cpu/armv8/sec_firmware.c
+index bfc0fac3ef..0561f5efd1 100644
+--- a/arch/arm/cpu/armv8/sec_firmware.c
++++ b/arch/arm/cpu/armv8/sec_firmware.c
+@@ -316,7 +316,7 @@ __weak bool sec_firmware_is_valid(const void *sec_firmware_img)
+ return false;
+ }
+
+- if (!fit_check_format(sec_firmware_img)) {
++ if (fit_check_format(sec_firmware_img, IMAGE_SIZE_INVAL)) {
+ printf("SEC Firmware: Bad firmware image (bad FIT header)\n");
+ return false;
+ }
+diff --git a/cmd/bootm.c b/cmd/bootm.c
+index e6b0e04413..a0f823f968 100644
+--- a/cmd/bootm.c
++++ b/cmd/bootm.c
+@@ -291,7 +291,7 @@ static int image_info(ulong addr)
+ case IMAGE_FORMAT_FIT:
+ puts(" FIT image found\n");
+
+- if (!fit_check_format(hdr)) {
++ if (fit_check_format(hdr, IMAGE_SIZE_INVAL)) {
+ puts("Bad FIT image format!\n");
+ unmap_sysmem(hdr);
+ return 1;
+@@ -368,7 +368,7 @@ static int do_imls_nor(void)
+ #endif
+ #if defined(CONFIG_FIT)
+ case IMAGE_FORMAT_FIT:
+- if (!fit_check_format(hdr))
++ if (fit_check_format(hdr, IMAGE_SIZE_INVAL))
+ goto next_sector;
+
+ printf("FIT Image at %08lX:\n", (ulong)hdr);
+@@ -448,7 +448,7 @@ static int nand_imls_fitimage(struct mtd_info *mtd, int nand_dev, loff_t off,
+ return ret;
+ }
+
+- if (!fit_check_format(imgdata)) {
++ if (fit_check_format(imgdata, IMAGE_SIZE_INVAL)) {
+ free(imgdata);
+ return 0;
+ }
+diff --git a/cmd/disk.c b/cmd/disk.c
+index 8060e753eb..3195db9127 100644
+--- a/cmd/disk.c
++++ b/cmd/disk.c
+@@ -114,7 +114,7 @@ int common_diskboot(struct cmd_tbl *cmdtp, const char *intf, int argc,
+ /* This cannot be done earlier,
+ * we need complete FIT image in RAM first */
+ if (genimg_get_format((void *) addr) == IMAGE_FORMAT_FIT) {
+- if (!fit_check_format(fit_hdr)) {
++ if (fit_check_format(fit_hdr, IMAGE_SIZE_INVAL)) {
+ bootstage_error(BOOTSTAGE_ID_IDE_FIT_READ);
+ puts("** Bad FIT image format\n");
+ return 1;
+diff --git a/cmd/fpga.c b/cmd/fpga.c
+index 8ae1c936fb..51410a8e42 100644
+--- a/cmd/fpga.c
++++ b/cmd/fpga.c
+@@ -330,7 +330,7 @@ static int do_fpga_loadmk(struct cmd_tbl *cmdtp, int flag, int argc,
+ return CMD_RET_FAILURE;
+ }
+
+- if (!fit_check_format(fit_hdr)) {
++ if (fit_check_format(fit_hdr, IMAGE_SIZE_INVAL)) {
+ puts("Bad FIT image format\n");
+ return CMD_RET_FAILURE;
+ }
+diff --git a/cmd/nand.c b/cmd/nand.c
+index 92d039af8f..97e117a979 100644
+--- a/cmd/nand.c
++++ b/cmd/nand.c
+@@ -917,7 +917,7 @@ static int nand_load_image(struct cmd_tbl *cmdtp, struct mtd_info *mtd,
+ #if defined(CONFIG_FIT)
+ /* This cannot be done earlier, we need complete FIT image in RAM first */
+ if (genimg_get_format ((void *)addr) == IMAGE_FORMAT_FIT) {
+- if (!fit_check_format (fit_hdr)) {
++ if (fit_check_format(fit_hdr, IMAGE_SIZE_INVAL)) {
+ bootstage_error(BOOTSTAGE_ID_NAND_FIT_READ);
+ puts ("** Bad FIT image format\n");
+ return 1;
+diff --git a/cmd/source.c b/cmd/source.c
+index b6c709a3d2..71f71528ad 100644
+--- a/cmd/source.c
++++ b/cmd/source.c
+@@ -107,7 +107,7 @@ int image_source_script(ulong addr, const char *fit_uname)
+ #if defined(CONFIG_FIT)
+ case IMAGE_FORMAT_FIT:
+ fit_hdr = buf;
+- if (!fit_check_format (fit_hdr)) {
++ if (fit_check_format(fit_hdr, IMAGE_SIZE_INVAL)) {
+ puts ("Bad FIT image format\n");
+ return 1;
+ }
+diff --git a/cmd/ximg.c b/cmd/ximg.c
+index 159ba51648..ef738ebfa2 100644
+--- a/cmd/ximg.c
++++ b/cmd/ximg.c
+@@ -136,7 +136,7 @@ do_imgextract(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
+ "at %08lx ...\n", uname, addr);
+
+ fit_hdr = (const void *)addr;
+- if (!fit_check_format(fit_hdr)) {
++ if (fit_check_format(fit_hdr, IMAGE_SIZE_INVAL)) {
+ puts("Bad FIT image format\n");
+ return 1;
+ }
+diff --git a/common/image-fdt.c b/common/image-fdt.c
+index 327a8c4c39..4105259212 100644
+--- a/common/image-fdt.c
++++ b/common/image-fdt.c
+@@ -399,7 +399,7 @@ int boot_get_fdt(int flag, int argc, char *const argv[], uint8_t arch,
+ */
+ #if CONFIG_IS_ENABLED(FIT)
+ /* check FDT blob vs FIT blob */
+- if (fit_check_format(buf)) {
++ if (!fit_check_format(buf, IMAGE_SIZE_INVAL)) {
+ ulong load, len;
+
+ fdt_noffset = boot_get_fdt_fit(images,
+diff --git a/common/image-fit.c b/common/image-fit.c
+index 9637d747fb..402f08fc9d 100644
+--- a/common/image-fit.c
++++ b/common/image-fit.c
+@@ -8,6 +8,8 @@
+ * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
+ */
+
++#define LOG_CATEGORY LOGC_BOOT
++
+ #ifdef USE_HOSTCC
+ #include "mkimage.h"
+ #include <time.h>
+@@ -1550,49 +1552,41 @@ int fit_image_check_comp(const void *fit, int noffset, uint8_t comp)
+ return (comp == image_comp);
+ }
+
+-/**
+- * fit_check_format - sanity check FIT image format
+- * @fit: pointer to the FIT format image header
+- *
+- * fit_check_format() runs a basic sanity FIT image verification.
+- * Routine checks for mandatory properties, nodes, etc.
+- *
+- * returns:
+- * 1, on success
+- * 0, on failure
+- */
+-int fit_check_format(const void *fit)
++int fit_check_format(const void *fit, ulong size)
+ {
++ int ret;
++
+ /* A FIT image must be a valid FDT */
+- if (fdt_check_header(fit)) {
+- debug("Wrong FIT format: not a flattened device tree\n");
+- return 0;
++ ret = fdt_check_header(fit);
++ if (ret) {
++ log_debug("Wrong FIT format: not a flattened device tree (err=%d)\n",
++ ret);
++ return -ENOEXEC;
+ }
+
+ /* mandatory / node 'description' property */
+- if (fdt_getprop(fit, 0, FIT_DESC_PROP, NULL) == NULL) {
+- debug("Wrong FIT format: no description\n");
+- return 0;
++ if (!fdt_getprop(fit, 0, FIT_DESC_PROP, NULL)) {
++ log_debug("Wrong FIT format: no description\n");
++ return -ENOMSG;
+ }
+
+ if (IMAGE_ENABLE_TIMESTAMP) {
+ /* mandatory / node 'timestamp' property */
+- if (fdt_getprop(fit, 0, FIT_TIMESTAMP_PROP, NULL) == NULL) {
+- debug("Wrong FIT format: no timestamp\n");
+- return 0;
++ if (!fdt_getprop(fit, 0, FIT_TIMESTAMP_PROP, NULL)) {
++ log_debug("Wrong FIT format: no timestamp\n");
++ return -ENODATA;
+ }
+ }
+
+ /* mandatory subimages parent '/images' node */
+ if (fdt_path_offset(fit, FIT_IMAGES_PATH) < 0) {
+- debug("Wrong FIT format: no images parent node\n");
+- return 0;
++ log_debug("Wrong FIT format: no images parent node\n");
++ return -ENOENT;
+ }
+
+- return 1;
++ return 0;
+ }
+
+-
+ /**
+ * fit_conf_find_compat
+ * @fit: pointer to the FIT format image header
+@@ -1929,7 +1923,7 @@ int fit_image_load(bootm_headers_t *images, ulong addr,
+ printf("## Loading %s from FIT Image at %08lx ...\n", prop_name, addr);
+
+ bootstage_mark(bootstage_id + BOOTSTAGE_SUB_FORMAT);
+- if (!fit_check_format(fit)) {
++ if (fit_check_format(fit, IMAGE_SIZE_INVAL)) {
+ printf("Bad FIT %s image format!\n", prop_name);
+ bootstage_error(bootstage_id + BOOTSTAGE_SUB_FORMAT);
+ return -ENOEXEC;
+diff --git a/common/splash_source.c b/common/splash_source.c
+index f51ca5ddf3..bad9a7790a 100644
+--- a/common/splash_source.c
++++ b/common/splash_source.c
+@@ -336,10 +336,10 @@ static int splash_load_fit(struct splash_location *location, u32 bmp_load_addr)
+ if (res < 0)
+ return res;
+
+- res = fit_check_format(fit_header);
+- if (!res) {
++ res = fit_check_format(fit_header, IMAGE_SIZE_INVAL);
++ if (res) {
+ debug("Could not find valid FIT image\n");
+- return -EINVAL;
++ return res;
+ }
+
+ /* Get the splash image node */
+diff --git a/common/update.c b/common/update.c
+index a5879cb52c..f0848954e5 100644
+--- a/common/update.c
++++ b/common/update.c
+@@ -286,7 +286,7 @@ int update_tftp(ulong addr, char *interface, char *devstring)
+ got_update_file:
+ fit = map_sysmem(addr, 0);
+
+- if (!fit_check_format((void *)fit)) {
++ if (fit_check_format((void *)fit, IMAGE_SIZE_INVAL)) {
+ printf("Bad FIT format of the update file, aborting "
+ "auto-update\n");
+ return 1;
+@@ -363,7 +363,7 @@ int fit_update(const void *fit)
+ if (!fit)
+ return -EINVAL;
+
+- if (!fit_check_format((void *)fit)) {
++ if (fit_check_format((void *)fit, IMAGE_SIZE_INVAL)) {
+ printf("Bad FIT format of the update file, aborting auto-update\n");
+ return -EINVAL;
+ }
+diff --git a/drivers/fpga/socfpga_arria10.c b/drivers/fpga/socfpga_arria10.c
+index 44e1ac54c3..18f99676d2 100644
+--- a/drivers/fpga/socfpga_arria10.c
++++ b/drivers/fpga/socfpga_arria10.c
+@@ -565,10 +565,10 @@ static int first_loading_rbf_to_buffer(struct udevice *dev,
+ if (ret < 0)
+ return ret;
+
+- ret = fit_check_format(buffer_p);
+- if (!ret) {
++ ret = fit_check_format(buffer_p, IMAGE_SIZE_INVAL);
++ if (ret) {
+ debug("FPGA: No valid FIT image was found.\n");
+- return -EBADF;
++ return ret;
+ }
+
+ confs_noffset = fdt_path_offset(buffer_p, FIT_CONFS_PATH);
+diff --git a/drivers/net/fsl-mc/mc.c b/drivers/net/fsl-mc/mc.c
+index 84db6be624..81265ee356 100644
+--- a/drivers/net/fsl-mc/mc.c
++++ b/drivers/net/fsl-mc/mc.c
+@@ -141,7 +141,7 @@ int parse_mc_firmware_fit_image(u64 mc_fw_addr,
+ return -EINVAL;
+ }
+
+- if (!fit_check_format(fit_hdr)) {
++ if (fit_check_format(fit_hdr, IMAGE_SIZE_INVAL)) {
+ printf("fsl-mc: ERR: Bad firmware image (bad FIT header)\n");
+ return -EINVAL;
+ }
+diff --git a/drivers/net/pfe_eth/pfe_firmware.c b/drivers/net/pfe_eth/pfe_firmware.c
+index 41999e176d..eee70a2e73 100644
+--- a/drivers/net/pfe_eth/pfe_firmware.c
++++ b/drivers/net/pfe_eth/pfe_firmware.c
+@@ -160,7 +160,7 @@ static int pfe_fit_check(void)
+ return ret;
+ }
+
+- if (!fit_check_format(pfe_fit_addr)) {
++ if (fit_check_format(pfe_fit_addr, IMAGE_SIZE_INVAL)) {
+ printf("PFE Firmware: Bad firmware image (bad FIT header)\n");
+ ret = -1;
+ return ret;
+diff --git a/include/image.h b/include/image.h
+index 41473dbb9c..8c152c5c5f 100644
+--- a/include/image.h
++++ b/include/image.h
+@@ -134,6 +134,9 @@ extern ulong image_load_addr; /* Default Load Address */
+ extern ulong image_save_addr; /* Default Save Address */
+ extern ulong image_save_size; /* Default Save Size */
+
++/* An invalid size, meaning that the image size is not known */
++#define IMAGE_SIZE_INVAL (-1UL)
++
+ enum ih_category {
+ IH_ARCH,
+ IH_COMP,
+@@ -1141,7 +1144,23 @@ int fit_image_check_os(const void *fit, int noffset, uint8_t os);
+ int fit_image_check_arch(const void *fit, int noffset, uint8_t arch);
+ int fit_image_check_type(const void *fit, int noffset, uint8_t type);
+ int fit_image_check_comp(const void *fit, int noffset, uint8_t comp);
+-int fit_check_format(const void *fit);
++
++/**
++ * fit_check_format() - Check that the FIT is valid
++ *
++ * This performs various checks on the FIT to make sure it is suitable for
++ * use, looking for mandatory properties, nodes, etc.
++ *
++ * If FIT_FULL_CHECK is enabled, it also runs it through libfdt to make
++ * sure that there are no strange tags or broken nodes in the FIT.
++ *
++ * @fit: pointer to the FIT format image header
++ * @return 0 if OK, -ENOEXEC if not an FDT file, -EINVAL if the full FDT check
++ * failed (e.g. due to bad structure), -ENOMSG if the description is
++ * missing, -ENODATA if the timestamp is missing, -ENOENT if the /images
++ * path is missing
++ */
++int fit_check_format(const void *fit, ulong size);
+
+ int fit_conf_find_compat(const void *fit, const void *fdt);
+
+diff --git a/tools/fit_common.c b/tools/fit_common.c
+index cdf987d3c1..52b63296f8 100644
+--- a/tools/fit_common.c
++++ b/tools/fit_common.c
+@@ -26,7 +26,8 @@
+ int fit_verify_header(unsigned char *ptr, int image_size,
+ struct image_tool_params *params)
+ {
+- if (fdt_check_header(ptr) != EXIT_SUCCESS || !fit_check_format(ptr))
++ if (fdt_check_header(ptr) != EXIT_SUCCESS ||
++ fit_check_format(ptr, IMAGE_SIZE_INVAL))
+ return EXIT_FAILURE;
+
+ return EXIT_SUCCESS;
+diff --git a/tools/fit_image.c b/tools/fit_image.c
+index 06faeda7c2..d440d143c6 100644
+--- a/tools/fit_image.c
++++ b/tools/fit_image.c
+@@ -883,7 +883,7 @@ static int fit_extract_contents(void *ptr, struct image_tool_params *params)
+ /* Indent string is defined in header image.h */
+ p = IMAGE_INDENT_STRING;
+
+- if (!fit_check_format(fit)) {
++ if (fit_check_format(fit, IMAGE_SIZE_INVAL)) {
+ printf("Bad FIT image format\n");
+ return -1;
+ }
+diff --git a/tools/mkimage.h b/tools/mkimage.h
+index 5b096a545b..0d3148444c 100644
+--- a/tools/mkimage.h
++++ b/tools/mkimage.h
+@@ -29,6 +29,8 @@
+ #define debug(fmt,args...)
+ #endif /* MKIMAGE_DEBUG */
+
++#define log_debug(fmt, args...) debug(fmt, ##args)
++
+ static inline void *map_sysmem(ulong paddr, unsigned long len)
+ {
+ return (void *)(uintptr_t)paddr;
diff --git a/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-3.patch b/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-3.patch
new file mode 100644
index 000000000..86f7e8ce5
--- /dev/null
+++ b/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-3.patch
@@ -0,0 +1,105 @@
+From 6f3c2d8aa5e6cbd80b5e869bbbddecb66c329d01 Mon Sep 17 00:00:00 2001
+From: Simon Glass <sjg@chromium.org>
+Date: Mon, 15 Feb 2021 17:08:10 -0700
+Subject: [PATCH] image: Add an option to do a full check of the FIT
+
+Some strange modifications of the FIT can introduce security risks. Add an
+option to check it thoroughly, using libfdt's fdt_check_full() function.
+
+Enable this by default if signature verification is enabled.
+
+CVE-2021-27097
+
+Signed-off-by: Simon Glass <sjg@chromium.org>
+Reported-by: Bruce Monroe <bruce.monroe@intel.com>
+Reported-by: Arie Haenel <arie.haenel@intel.com>
+Reported-by: Julien Lenoir <julien.lenoir@intel.com>
+
+CVE: CVE-2021-27097
+Upstream-Status: Backport[https://github.com/u-boot/u-boot/commit/6f3c2d8aa5e6cbd80b5e869bbbddecb66c329d01]
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+
+---
+ common/Kconfig.boot | 20 ++++++++++++++++++++
+ common/image-fit.c | 16 ++++++++++++++++
+ 2 files changed, 36 insertions(+)
+
+diff --git a/common/Kconfig.boot b/common/Kconfig.boot
+index 5eaabdfc27..7532e55edb 100644
+--- a/common/Kconfig.boot
++++ b/common/Kconfig.boot
+@@ -63,6 +63,15 @@ config FIT_ENABLE_SHA512_SUPPORT
+ SHA512 checksum is a 512-bit (64-byte) hash value used to check that
+ the image contents have not been corrupted.
+
++config FIT_FULL_CHECK
++ bool "Do a full check of the FIT before using it"
++ default y
++ help
++ Enable this do a full check of the FIT to make sure it is valid. This
++ helps to protect against carefully crafted FITs which take advantage
++ of bugs or omissions in the code. This includes a bad structure,
++ multiple root nodes and the like.
++
+ config FIT_SIGNATURE
+ bool "Enable signature verification of FIT uImages"
+ depends on DM
+@@ -70,6 +79,7 @@ config FIT_SIGNATURE
+ select RSA
+ select RSA_VERIFY
+ select IMAGE_SIGN_INFO
++ select FIT_FULL_CHECK
+ help
+ This option enables signature verification of FIT uImages,
+ using a hash signed and verified using RSA. If
+@@ -159,6 +169,15 @@ config SPL_FIT_PRINT
+ help
+ Support printing the content of the fitImage in a verbose manner in SPL.
+
++config SPL_FIT_FULL_CHECK
++ bool "Do a full check of the FIT before using it"
++ help
++ Enable this do a full check of the FIT to make sure it is valid. This
++ helps to protect against carefully crafted FITs which take advantage
++ of bugs or omissions in the code. This includes a bad structure,
++ multiple root nodes and the like.
++
++
+ config SPL_FIT_SIGNATURE
+ bool "Enable signature verification of FIT firmware within SPL"
+ depends on SPL_DM
+@@ -168,6 +187,7 @@ config SPL_FIT_SIGNATURE
+ select SPL_RSA
+ select SPL_RSA_VERIFY
+ select SPL_IMAGE_SIGN_INFO
++ select SPL_FIT_FULL_CHECK
+
+ config SPL_LOAD_FIT
+ bool "Enable SPL loading U-Boot as a FIT (basic fitImage features)"
+diff --git a/common/image-fit.c b/common/image-fit.c
+index f6c0428a96..bcf395f6a1 100644
+--- a/common/image-fit.c
++++ b/common/image-fit.c
+@@ -1580,6 +1580,22 @@ int fit_check_format(const void *fit, ulong size)
+ return -ENOEXEC;
+ }
+
++ if (CONFIG_IS_ENABLED(FIT_FULL_CHECK)) {
++ /*
++ * If we are not given the size, make do wtih calculating it.
++ * This is not as secure, so we should consider a flag to
++ * control this.
++ */
++ if (size == IMAGE_SIZE_INVAL)
++ size = fdt_totalsize(fit);
++ ret = fdt_check_full(fit, size);
++
++ if (ret) {
++ log_debug("FIT check error %d\n", ret);
++ return -EINVAL;
++ }
++ }
++
+ /* mandatory / node 'description' property */
+ if (!fdt_getprop(fit, 0, FIT_DESC_PROP, NULL)) {
+ log_debug("Wrong FIT format: no description\n");
diff --git a/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-4.patch b/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-4.patch
new file mode 100644
index 000000000..060cac1cf
--- /dev/null
+++ b/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27097-4.patch
@@ -0,0 +1,73 @@
+From 124c255731c76a2b09587378b2bcce561bcd3f2d Mon Sep 17 00:00:00 2001
+From: Simon Glass <sjg@chromium.org>
+Date: Mon, 15 Feb 2021 17:08:11 -0700
+Subject: [PATCH] libfdt: Check for multiple/invalid root nodes
+
+It is possible to construct a devicetree blob with multiple root nodes.
+Update fdt_check_full() to check for this, along with a root node with an
+invalid name.
+
+CVE-2021-27097
+
+Signed-off-by: Simon Glass <sjg@chromium.org>
+Reported-by: Bruce Monroe <bruce.monroe@intel.com>
+Reported-by: Arie Haenel <arie.haenel@intel.com>
+Reported-by: Julien Lenoir <julien.lenoir@intel.com>
+
+CVE: CVE-2021-27097
+Upstream-Status: Backport[https://github.com/u-boot/u-boot/commit/124c255731c76a2b09587378b2bcce561bcd3f2d]
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+
+---
+ scripts/dtc/libfdt/fdt_ro.c | 17 +++++++++++++++++
+ test/py/tests/test_vboot.py | 3 ++-
+ 2 files changed, 19 insertions(+), 1 deletion(-)
+
+diff --git a/scripts/dtc/libfdt/fdt_ro.c b/scripts/dtc/libfdt/fdt_ro.c
+index d984bab036..efe7efe921 100644
+--- a/scripts/dtc/libfdt/fdt_ro.c
++++ b/scripts/dtc/libfdt/fdt_ro.c
+@@ -867,6 +867,7 @@ int fdt_check_full(const void *fdt, size_t bufsize)
+ unsigned depth = 0;
+ const void *prop;
+ const char *propname;
++ bool expect_end = false;
+
+ if (bufsize < FDT_V1_SIZE)
+ return -FDT_ERR_TRUNCATED;
+@@ -887,6 +888,10 @@ int fdt_check_full(const void *fdt, size_t bufsize)
+ if (nextoffset < 0)
+ return nextoffset;
+
++ /* If we see two root nodes, something is wrong */
++ if (expect_end && tag != FDT_END)
++ return -FDT_ERR_BADLAYOUT;
++
+ switch (tag) {
+ case FDT_NOP:
+ break;
+@@ -900,12 +905,24 @@ int fdt_check_full(const void *fdt, size_t bufsize)
+ depth++;
+ if (depth > INT_MAX)
+ return -FDT_ERR_BADSTRUCTURE;
++
++ /* The root node must have an empty name */
++ if (depth == 1) {
++ const char *name;
++ int len;
++
++ name = fdt_get_name(fdt, offset, &len);
++ if (*name || len)
++ return -FDT_ERR_BADLAYOUT;
++ }
+ break;
+
+ case FDT_END_NODE:
+ if (depth == 0)
+ return -FDT_ERR_BADSTRUCTURE;
+ depth--;
++ if (depth == 0)
++ expect_end = true;
+ break;
+
+ case FDT_PROP:
diff --git a/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27138-1.patch b/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27138-1.patch
new file mode 100644
index 000000000..562f8151b
--- /dev/null
+++ b/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27138-1.patch
@@ -0,0 +1,245 @@
+From 79af75f7776fc20b0d7eb6afe1e27c00fdb4b9b4 Mon Sep 17 00:00:00 2001
+From: Simon Glass <sjg@chromium.org>
+Date: Mon, 15 Feb 2021 17:08:06 -0700
+Subject: [PATCH] fit: Don't allow verification of images with @ nodes
+
+When searching for a node called 'fred', any unit address appended to the
+name is ignored by libfdt, meaning that 'fred' can match 'fred@1'. This
+means that we cannot be sure that the node originally intended is the one
+that is used.
+
+Disallow use of nodes with unit addresses.
+
+Update the forge test also, since it uses @ addresses.
+
+CVE-2021-27138
+
+Signed-off-by: Simon Glass <sjg@chromium.org>
+Reported-by: Bruce Monroe <bruce.monroe@intel.com>
+Reported-by: Arie Haenel <arie.haenel@intel.com>
+Reported-by: Julien Lenoir <julien.lenoir@intel.com>
+
+CVE: CVE-2021-27138
+Upstream-Status: Backport[https://github.com/u-boot/u-boot/commit/79af75f7776fc20b0d7eb6afe1e27c00fdb4b9b4]
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+
+---
+ common/image-fit-sig.c | 22 ++++++++++++++++++++--
+ common/image-fit.c | 20 +++++++++++++++-----
+ test/py/tests/test_fit.py | 24 ++++++++++++------------
+ test/py/tests/vboot_forge.py | 12 ++++++------
+ 4 files changed, 53 insertions(+), 25 deletions(-)
+
+diff --git a/common/image-fit-sig.c b/common/image-fit-sig.c
+index 897e04c7a3..34ebb8edfe 100644
+--- a/common/image-fit-sig.c
++++ b/common/image-fit-sig.c
+@@ -149,6 +149,14 @@ static int fit_image_verify_sig(const void *fit, int image_noffset,
+ fdt_for_each_subnode(noffset, fit, image_noffset) {
+ const char *name = fit_get_name(fit, noffset, NULL);
+
++ /*
++ * We don't support this since libfdt considers names with the
++ * name root but different @ suffix to be equal
++ */
++ if (strchr(name, '@')) {
++ err_msg = "Node name contains @";
++ goto error;
++ }
+ if (!strncmp(name, FIT_SIG_NODENAME,
+ strlen(FIT_SIG_NODENAME))) {
+ ret = fit_image_check_sig(fit, noffset, data,
+@@ -398,9 +406,10 @@ error:
+ return -EPERM;
+ }
+
+-int fit_config_verify_required_sigs(const void *fit, int conf_noffset,
+- const void *sig_blob)
++static int fit_config_verify_required_sigs(const void *fit, int conf_noffset,
++ const void *sig_blob)
+ {
++ const char *name = fit_get_name(fit, conf_noffset, NULL);
+ int noffset;
+ int sig_node;
+ int verified = 0;
+@@ -408,6 +417,15 @@ int fit_config_verify_required_sigs(const void *fit, int conf_noffset,
+ bool reqd_policy_all = true;
+ const char *reqd_mode;
+
++ /*
++ * We don't support this since libfdt considers names with the
++ * name root but different @ suffix to be equal
++ */
++ if (strchr(name, '@')) {
++ printf("Configuration node '%s' contains '@'\n", name);
++ return -EPERM;
++ }
++
+ /* Work out what we need to verify */
+ sig_node = fdt_subnode_offset(sig_blob, 0, FIT_SIG_NODENAME);
+ if (sig_node < 0) {
+diff --git a/common/image-fit.c b/common/image-fit.c
+index adc3e551de..c3dc814115 100644
+--- a/common/image-fit.c
++++ b/common/image-fit.c
+@@ -1369,21 +1369,31 @@ error:
+ */
+ int fit_image_verify(const void *fit, int image_noffset)
+ {
++ const char *name = fit_get_name(fit, image_noffset, NULL);
+ const void *data;
+ size_t size;
+- int noffset = 0;
+ char *err_msg = "";
+
++ if (strchr(name, '@')) {
++ /*
++ * We don't support this since libfdt considers names with the
++ * name root but different @ suffix to be equal
++ */
++ err_msg = "Node name contains @";
++ goto err;
++ }
+ /* Get image data and data length */
+ if (fit_image_get_data_and_size(fit, image_noffset, &data, &size)) {
+ err_msg = "Can't get image data/size";
+- printf("error!\n%s for '%s' hash node in '%s' image node\n",
+- err_msg, fit_get_name(fit, noffset, NULL),
+- fit_get_name(fit, image_noffset, NULL));
+- return 0;
++ goto err;
+ }
+
+ return fit_image_verify_with_data(fit, image_noffset, data, size);
++
++err:
++ printf("error!\n%s in '%s' image node\n", err_msg,
++ fit_get_name(fit, image_noffset, NULL));
++ return 0;
+ }
+
+ /**
+diff --git a/test/py/tests/test_fit.py b/test/py/tests/test_fit.py
+index 84b3f95850..6d5b43c3ba 100755
+--- a/test/py/tests/test_fit.py
++++ b/test/py/tests/test_fit.py
+@@ -17,7 +17,7 @@ base_its = '''
+ #address-cells = <1>;
+
+ images {
+- kernel@1 {
++ kernel-1 {
+ data = /incbin/("%(kernel)s");
+ type = "kernel";
+ arch = "sandbox";
+@@ -26,7 +26,7 @@ base_its = '''
+ load = <0x40000>;
+ entry = <0x8>;
+ };
+- kernel@2 {
++ kernel-2 {
+ data = /incbin/("%(loadables1)s");
+ type = "kernel";
+ arch = "sandbox";
+@@ -35,19 +35,19 @@ base_its = '''
+ %(loadables1_load)s
+ entry = <0x0>;
+ };
+- fdt@1 {
++ fdt-1 {
+ description = "snow";
+ data = /incbin/("%(fdt)s");
+ type = "flat_dt";
+ arch = "sandbox";
+ %(fdt_load)s
+ compression = "%(compression)s";
+- signature@1 {
++ signature-1 {
+ algo = "sha1,rsa2048";
+ key-name-hint = "dev";
+ };
+ };
+- ramdisk@1 {
++ ramdisk-1 {
+ description = "snow";
+ data = /incbin/("%(ramdisk)s");
+ type = "ramdisk";
+@@ -56,7 +56,7 @@ base_its = '''
+ %(ramdisk_load)s
+ compression = "%(compression)s";
+ };
+- ramdisk@2 {
++ ramdisk-2 {
+ description = "snow";
+ data = /incbin/("%(loadables2)s");
+ type = "ramdisk";
+@@ -67,10 +67,10 @@ base_its = '''
+ };
+ };
+ configurations {
+- default = "conf@1";
+- conf@1 {
+- kernel = "kernel@1";
+- fdt = "fdt@1";
++ default = "conf-1";
++ conf-1 {
++ kernel = "kernel-1";
++ fdt = "fdt-1";
+ %(ramdisk_config)s
+ %(loadables_config)s
+ };
+@@ -410,7 +410,7 @@ def test_fit(u_boot_console):
+
+ # Try a ramdisk
+ with cons.log.section('Kernel + FDT + Ramdisk load'):
+- params['ramdisk_config'] = 'ramdisk = "ramdisk@1";'
++ params['ramdisk_config'] = 'ramdisk = "ramdisk-1";'
+ params['ramdisk_load'] = 'load = <%#x>;' % params['ramdisk_addr']
+ fit = make_fit(mkimage, params)
+ cons.restart_uboot()
+@@ -419,7 +419,7 @@ def test_fit(u_boot_console):
+
+ # Configuration with some Loadables
+ with cons.log.section('Kernel + FDT + Ramdisk load + Loadables'):
+- params['loadables_config'] = 'loadables = "kernel@2", "ramdisk@2";'
++ params['loadables_config'] = 'loadables = "kernel-2", "ramdisk-2";'
+ params['loadables1_load'] = ('load = <%#x>;' %
+ params['loadables1_addr'])
+ params['loadables2_load'] = ('load = <%#x>;' %
+diff --git a/test/py/tests/vboot_forge.py b/test/py/tests/vboot_forge.py
+index 0fb7ef4024..b41105bd0e 100644
+--- a/test/py/tests/vboot_forge.py
++++ b/test/py/tests/vboot_forge.py
+@@ -376,12 +376,12 @@ def manipulate(root, strblock):
+ """
+ Maliciously manipulates the structure to create a crafted FIT file
+ """
+- # locate /images/kernel@1 (frankly, it just expects it to be the first one)
++ # locate /images/kernel-1 (frankly, it just expects it to be the first one)
+ kernel_node = root[0][0]
+ # clone it to save time filling all the properties
+ fake_kernel = kernel_node.clone()
+ # rename the node
+- fake_kernel.name = b'kernel@2'
++ fake_kernel.name = b'kernel-2'
+ # get rid of signatures/hashes
+ fake_kernel.children = []
+ # NOTE: this simply replaces the first prop... either description or data
+@@ -391,13 +391,13 @@ def manipulate(root, strblock):
+ root[0].children.append(fake_kernel)
+
+ # modify the default configuration
+- root[1].props[0].value = b'conf@2\x00'
++ root[1].props[0].value = b'conf-2\x00'
+ # clone the first (only?) configuration
+ fake_conf = root[1][0].clone()
+ # rename and change kernel and fdt properties to select the crafted kernel
+- fake_conf.name = b'conf@2'
+- fake_conf.props[0].value = b'kernel@2\x00'
+- fake_conf.props[1].value = b'fdt@1\x00'
++ fake_conf.name = b'conf-2'
++ fake_conf.props[0].value = b'kernel-2\x00'
++ fake_conf.props[1].value = b'fdt-1\x00'
+ # insert the new configuration under /configurations
+ root[1].children.append(fake_conf)
+
diff --git a/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27138-2.patch b/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27138-2.patch
new file mode 100644
index 000000000..946196c37
--- /dev/null
+++ b/poky/meta/recipes-bsp/u-boot/files/CVE-2021-27138-2.patch
@@ -0,0 +1,109 @@
+From 3f04db891a353f4b127ed57279279f851c6b4917 Mon Sep 17 00:00:00 2001
+From: Simon Glass <sjg@chromium.org>
+Date: Mon, 15 Feb 2021 17:08:12 -0700
+Subject: [PATCH] image: Check for unit addresses in FITs
+
+Using unit addresses in a FIT is a security risk. Add a check for this
+and disallow it.
+
+CVE-2021-27138
+
+Signed-off-by: Simon Glass <sjg@chromium.org>
+Reported-by: Bruce Monroe <bruce.monroe@intel.com>
+Reported-by: Arie Haenel <arie.haenel@intel.com>
+Reported-by: Julien Lenoir <julien.lenoir@intel.com>
+
+CVE: CVE-2021-27138
+Upstream-Status: Backport[https://github.com/u-boot/u-boot/commit/3f04db891a353f4b127ed57279279f851c6b4917]
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+
+---
+ common/image-fit.c | 56 +++++++++++++++++++++++++++++++++++++++++----
+ test/py/tests/test_vboot.py | 9 ++++----
+ 2 files changed, 57 insertions(+), 8 deletions(-)
+
+diff --git a/common/image-fit.c b/common/image-fit.c
+index bcf395f6a1..28b3d2b191 100644
+--- a/common/image-fit.c
++++ b/common/image-fit.c
+@@ -1568,6 +1568,34 @@ int fit_image_check_comp(const void *fit, int noffset, uint8_t comp)
+ return (comp == image_comp);
+ }
+
++/**
++ * fdt_check_no_at() - Check for nodes whose names contain '@'
++ *
++ * This checks the parent node and all subnodes recursively
++ *
++ * @fit: FIT to check
++ * @parent: Parent node to check
++ * @return 0 if OK, -EADDRNOTAVAIL is a node has a name containing '@'
++ */
++static int fdt_check_no_at(const void *fit, int parent)
++{
++ const char *name;
++ int node;
++ int ret;
++
++ name = fdt_get_name(fit, parent, NULL);
++ if (!name || strchr(name, '@'))
++ return -EADDRNOTAVAIL;
++
++ fdt_for_each_subnode(node, fit, parent) {
++ ret = fdt_check_no_at(fit, node);
++ if (ret)
++ return ret;
++ }
++
++ return 0;
++}
++
+ int fit_check_format(const void *fit, ulong size)
+ {
+ int ret;
+@@ -1589,10 +1617,27 @@ int fit_check_format(const void *fit, ulong size)
+ if (size == IMAGE_SIZE_INVAL)
+ size = fdt_totalsize(fit);
+ ret = fdt_check_full(fit, size);
++ if (ret)
++ ret = -EINVAL;
++
++ /*
++ * U-Boot stopped using unit addressed in 2017. Since libfdt
++ * can match nodes ignoring any unit address, signature
++ * verification can see the wrong node if one is inserted with
++ * the same name as a valid node but with a unit address
++ * attached. Protect against this by disallowing unit addresses.
++ */
++ if (!ret && CONFIG_IS_ENABLED(FIT_SIGNATURE)) {
++ ret = fdt_check_no_at(fit, 0);
+
++ if (ret) {
++ log_debug("FIT check error %d\n", ret);
++ return ret;
++ }
++ }
+ if (ret) {
+ log_debug("FIT check error %d\n", ret);
+- return -EINVAL;
++ return ret;
+ }
+ }
+
+@@ -1955,10 +2000,13 @@ int fit_image_load(bootm_headers_t *images, ulong addr,
+ printf("## Loading %s from FIT Image at %08lx ...\n", prop_name, addr);
+
+ bootstage_mark(bootstage_id + BOOTSTAGE_SUB_FORMAT);
+- if (fit_check_format(fit, IMAGE_SIZE_INVAL)) {
+- printf("Bad FIT %s image format!\n", prop_name);
++ ret = fit_check_format(fit, IMAGE_SIZE_INVAL);
++ if (ret) {
++ printf("Bad FIT %s image format! (err=%d)\n", prop_name, ret);
++ if (CONFIG_IS_ENABLED(FIT_SIGNATURE) && ret == -EADDRNOTAVAIL)
++ printf("Signature checking prevents use of unit addresses (@) in nodes\n");
+ bootstage_error(bootstage_id + BOOTSTAGE_SUB_FORMAT);
+- return -ENOEXEC;
++ return ret;
+ }
+ bootstage_mark(bootstage_id + BOOTSTAGE_SUB_FORMAT_OK);
+ if (fit_uname) {
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot-common.inc b/poky/meta/recipes-bsp/u-boot/u-boot-common.inc
index 5a8035f43..993478a73 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot-common.inc
+++ b/poky/meta/recipes-bsp/u-boot/u-boot-common.inc
@@ -15,6 +15,13 @@ PE = "1"
SRCREV = "c4fddedc48f336eabc4ce3f74940e6aa372de18c"
SRC_URI = "git://git.denx.de/u-boot.git \
+ file://0001-add-valid-fdt-check.patch \
+ file://CVE-2021-27097-1.patch \
+ file://CVE-2021-27097-2.patch \
+ file://CVE-2021-27097-3.patch \
+ file://CVE-2021-27097-4.patch \
+ file://CVE-2021-27138-1.patch \
+ file://CVE-2021-27138-2.patch \
"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot.inc b/poky/meta/recipes-bsp/u-boot/u-boot.inc
index 251178db3..5398c2e62 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot.inc
+++ b/poky/meta/recipes-bsp/u-boot/u-boot.inc
@@ -24,52 +24,6 @@ PACKAGECONFIG[openssl] = ",,openssl-native"
# file already exists it will not be overwritten.
UBOOT_LOCALVERSION ?= ""
-# Some versions of u-boot use .bin and others use .img. By default use .bin
-# but enable individual recipes to change this value.
-UBOOT_SUFFIX ??= "bin"
-UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_SUFFIX}"
-UBOOT_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_SUFFIX}"
-UBOOT_MAKE_TARGET ?= "all"
-
-# Output the ELF generated. Some platforms can use the ELF file and directly
-# load it (JTAG booting, QEMU) additionally the ELF can be used for debugging
-# purposes.
-UBOOT_ELF ?= ""
-UBOOT_ELF_SUFFIX ?= "elf"
-UBOOT_ELF_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_ELF_SUFFIX}"
-UBOOT_ELF_BINARY ?= "u-boot.${UBOOT_ELF_SUFFIX}"
-UBOOT_ELF_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_ELF_SUFFIX}"
-
-# Some versions of u-boot build an SPL (Second Program Loader) image that
-# should be packaged along with the u-boot binary as well as placed in the
-# deploy directory. For those versions they can set the following variables
-# to allow packaging the SPL.
-SPL_BINARY ?= ""
-SPL_BINARYNAME ?= "${@os.path.basename(d.getVar("SPL_BINARY"))}"
-SPL_IMAGE ?= "${SPL_BINARYNAME}-${MACHINE}-${PV}-${PR}"
-SPL_SYMLINK ?= "${SPL_BINARYNAME}-${MACHINE}"
-
-# Additional environment variables or a script can be installed alongside
-# u-boot to be used automatically on boot. This file, typically 'uEnv.txt'
-# or 'boot.scr', should be packaged along with u-boot as well as placed in the
-# deploy directory. Machine configurations needing one of these files should
-# include it in the SRC_URI and set the UBOOT_ENV parameter.
-UBOOT_ENV_SUFFIX ?= "txt"
-UBOOT_ENV ?= ""
-UBOOT_ENV_BINARY ?= "${UBOOT_ENV}.${UBOOT_ENV_SUFFIX}"
-UBOOT_ENV_IMAGE ?= "${UBOOT_ENV}-${MACHINE}-${PV}-${PR}.${UBOOT_ENV_SUFFIX}"
-UBOOT_ENV_SYMLINK ?= "${UBOOT_ENV}-${MACHINE}.${UBOOT_ENV_SUFFIX}"
-
-# Default name of u-boot initial env, but enable individual recipes to change
-# this value.
-UBOOT_INITIAL_ENV ?= "${PN}-initial-env"
-
-# U-Boot EXTLINUX variables. U-Boot searches for /boot/extlinux/extlinux.conf
-# to find EXTLINUX conf file.
-UBOOT_EXTLINUX_INSTALL_DIR ?= "/boot/extlinux"
-UBOOT_EXTLINUX_CONF_NAME ?= "extlinux.conf"
-UBOOT_EXTLINUX_SYMLINK ?= "${UBOOT_EXTLINUX_CONF_NAME}-${MACHINE}-${PR}"
-
do_configure () {
if [ -n "${UBOOT_CONFIG}" ]; then
unset i j
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot_2021.01.bb b/poky/meta/recipes-bsp/u-boot/u-boot_2021.01.bb
index 2eef1e900..bbbc99bf8 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot_2021.01.bb
+++ b/poky/meta/recipes-bsp/u-boot/u-boot_2021.01.bb
@@ -1,4 +1,6 @@
require u-boot-common.inc
require u-boot.inc
+SRC_URI_append = " file://0001-riscv32-Use-double-float-ABI-for-rv32.patch"
+
DEPENDS += "bc-native dtc-native python3-setuptools-native"
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.11/0001-avoid-start-failure-with-bind-user.patch b/poky/meta/recipes-connectivity/bind/bind-9.16.12/0001-avoid-start-failure-with-bind-user.patch
index 8db96ec04..8db96ec04 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.16.11/0001-avoid-start-failure-with-bind-user.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.16.12/0001-avoid-start-failure-with-bind-user.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.11/0001-named-lwresd-V-and-start-log-hide-build-options.patch b/poky/meta/recipes-connectivity/bind/bind-9.16.12/0001-named-lwresd-V-and-start-log-hide-build-options.patch
index 5bcc16c9b..5bcc16c9b 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.16.11/0001-named-lwresd-V-and-start-log-hide-build-options.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.16.12/0001-named-lwresd-V-and-start-log-hide-build-options.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.11/bind-ensure-searching-for-json-headers-searches-sysr.patch b/poky/meta/recipes-connectivity/bind/bind-9.16.12/bind-ensure-searching-for-json-headers-searches-sysr.patch
index f9cdc7ca4..f9cdc7ca4 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.16.11/bind-ensure-searching-for-json-headers-searches-sysr.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.16.12/bind-ensure-searching-for-json-headers-searches-sysr.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.11/bind9 b/poky/meta/recipes-connectivity/bind/bind-9.16.12/bind9
index 968679ff7..968679ff7 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.16.11/bind9
+++ b/poky/meta/recipes-connectivity/bind/bind-9.16.12/bind9
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.11/conf.patch b/poky/meta/recipes-connectivity/bind/bind-9.16.12/conf.patch
index aad345f9f..aad345f9f 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.16.11/conf.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.16.12/conf.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.11/generate-rndc-key.sh b/poky/meta/recipes-connectivity/bind/bind-9.16.12/generate-rndc-key.sh
index 633e29c0e..633e29c0e 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.16.11/generate-rndc-key.sh
+++ b/poky/meta/recipes-connectivity/bind/bind-9.16.12/generate-rndc-key.sh
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.11/init.d-add-support-for-read-only-rootfs.patch b/poky/meta/recipes-connectivity/bind/bind-9.16.12/init.d-add-support-for-read-only-rootfs.patch
index 11db95ede..11db95ede 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.16.11/init.d-add-support-for-read-only-rootfs.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.16.12/init.d-add-support-for-read-only-rootfs.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.11/make-etc-initd-bind-stop-work.patch b/poky/meta/recipes-connectivity/bind/bind-9.16.12/make-etc-initd-bind-stop-work.patch
index 146f3e35d..146f3e35d 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.16.11/make-etc-initd-bind-stop-work.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.16.12/make-etc-initd-bind-stop-work.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.11/named.service b/poky/meta/recipes-connectivity/bind/bind-9.16.12/named.service
index cda56ef01..cda56ef01 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.16.11/named.service
+++ b/poky/meta/recipes-connectivity/bind/bind-9.16.12/named.service
diff --git a/poky/meta/recipes-connectivity/bind/bind_9.16.11.bb b/poky/meta/recipes-connectivity/bind/bind_9.16.12.bb
index f48cc74c2..09f77038f 100644
--- a/poky/meta/recipes-connectivity/bind/bind_9.16.11.bb
+++ b/poky/meta/recipes-connectivity/bind/bind_9.16.12.bb
@@ -20,7 +20,7 @@ SRC_URI = "https://ftp.isc.org/isc/bind9/${PV}/${BPN}-${PV}.tar.xz \
file://0001-avoid-start-failure-with-bind-user.patch \
"
-SRC_URI[sha256sum] = "0111f64dd7d8f515cfa129e181cce96ff82070d1b27f11a21f6856110d0699c1"
+SRC_URI[sha256sum] = "9914af9311fd349cab441097898d94fb28d0bfd9bf6ed04fe1f97f042644da7f"
UPSTREAM_CHECK_URI = "https://ftp.isc.org/isc/bind9/"
# stay at 9.16 follow the ESV versions divisible by 4
@@ -113,7 +113,10 @@ FILES_${PN}-dev += "${bindir}/isc-config.h"
FILES_${PN} += "${sbindir}/generate-rndc-key.sh"
PACKAGE_BEFORE_PN += "${PN}-libs"
-FILES_${PN}-libs = "${libdir}/*.so* ${libdir}/named/*.so*"
+# special arrangement below due to
+# https://github.com/isc-projects/bind9/commit/0e25af628cd776f98c04fc4cc59048f5448f6c88
+FILES_SOLIBSDEV = "${libdir}/*[!0-9].so ${libdir}/libbind9.so"
+FILES_${PN}-libs = "${libdir}/named/*.so* ${libdir}/*-${PV}.so"
FILES_${PN}-staticdev += "${libdir}/*.la"
PACKAGE_BEFORE_PN += "${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-bind', '', d)}"
diff --git a/poky/meta/recipes-connectivity/openssh/openssh/0f90440ca70abab947acbd77795e9f130967956c.patch b/poky/meta/recipes-connectivity/openssh/openssh/0f90440ca70abab947acbd77795e9f130967956c.patch
deleted file mode 100644
index b88bc18f1..000000000
--- a/poky/meta/recipes-connectivity/openssh/openssh/0f90440ca70abab947acbd77795e9f130967956c.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 0f90440ca70abab947acbd77795e9f130967956c Mon Sep 17 00:00:00 2001
-From: Darren Tucker <dtucker@dtucker.net>
-Date: Fri, 20 Nov 2020 13:37:54 +1100
-Subject: [PATCH] Add new pselect6_time64 syscall on ARM.
-
-This is apparently needed on armhfp/armv7hl. bz#3232, patch from
-jjelen at redhat.com.
----
- sandbox-seccomp-filter.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-Upstream-Status: Backport
-[fixes issues on 32bit IA and probably other 32 bit platforms too with glibc 2.33]
-
-diff --git a/sandbox-seccomp-filter.c b/sandbox-seccomp-filter.c
-index e0768c063..5065ae7ef 100644
---- a/sandbox-seccomp-filter.c
-+++ b/sandbox-seccomp-filter.c
-@@ -267,6 +267,9 @@ static const struct sock_filter preauth_insns[] = {
- #ifdef __NR_pselect6
- SC_ALLOW(__NR_pselect6),
- #endif
-+#ifdef __NR_pselect6_time64
-+ SC_ALLOW(__NR_pselect6_time64),
-+#endif
- #ifdef __NR_read
- SC_ALLOW(__NR_read),
- #endif
diff --git a/poky/meta/recipes-connectivity/openssh/openssh_8.4p1.bb b/poky/meta/recipes-connectivity/openssh/openssh_8.5p1.bb
index 128e2e318..6a49cf71c 100644
--- a/poky/meta/recipes-connectivity/openssh/openssh_8.4p1.bb
+++ b/poky/meta/recipes-connectivity/openssh/openssh_8.5p1.bb
@@ -5,8 +5,8 @@ Ssh (Secure Shell) is a program for logging into a remote machine \
and for executing commands on a remote machine."
HOMEPAGE = "http://www.openssh.com/"
SECTION = "console/network"
-LICENSE = "BSD & ISC & MIT"
-LIC_FILES_CHKSUM = "file://LICENCE;md5=18d9e5a8b3dd1790d73502f50426d4d3"
+LICENSE = "BSD-2-Clause & BSD-3-Clause & BSD-4-Clause & BSD & ISC & MIT"
+LIC_FILES_CHKSUM = "file://LICENCE;md5=d9d2753bdef9f19466dc7bc959114b11"
DEPENDS = "zlib openssl virtual/crypt"
DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
@@ -24,9 +24,8 @@ SRC_URI = "http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-${PV}.tar
file://fix-potential-signed-overflow-in-pointer-arithmatic.patch \
file://sshd_check_keys \
file://add-test-support-for-busybox.patch \
- file://0f90440ca70abab947acbd77795e9f130967956c.patch \
"
-SRC_URI[sha256sum] = "5a01d22e407eb1c05ba8a8f7c654d388a13e9f226e4ed33bd38748dafa1d2b24"
+SRC_URI[sha256sum] = "f52f3f41d429aa9918e38cf200af225ccdd8e66f052da572870c89737646ec25"
# This CVE is specific to OpenSSH server, as used in Fedora and Red Hat Enterprise Linux 7
# and when running in a Kerberos environment. As such it is not relevant to OpenEmbedded
diff --git a/poky/meta/recipes-connectivity/openssl/openssl/0003-Add-support-for-io_pgetevents_time64-syscall.patch b/poky/meta/recipes-connectivity/openssl/openssl/0003-Add-support-for-io_pgetevents_time64-syscall.patch
new file mode 100644
index 000000000..d62b9344c
--- /dev/null
+++ b/poky/meta/recipes-connectivity/openssl/openssl/0003-Add-support-for-io_pgetevents_time64-syscall.patch
@@ -0,0 +1,62 @@
+From 5b5e2985f355c8e99c196d9ce5d02c15bebadfbc Mon Sep 17 00:00:00 2001
+From: Alistair Francis <alistair.francis@wdc.com>
+Date: Thu, 29 Aug 2019 13:56:21 -0700
+Subject: [PATCH] Add support for io_pgetevents_time64 syscall
+
+32-bit architectures that are y2038 safe don't include syscalls that use
+32-bit time_t. Instead these architectures have suffixed syscalls that
+always use a 64-bit time_t. In the case of the io_getevents syscall the
+syscall has been replaced with the io_pgetevents_time64 syscall instead.
+
+This patch changes the io_getevents() function to use the correct
+syscall based on the avaliable syscalls and the time_t size. We will
+only use the new 64-bit time_t syscall if the architecture is using a
+64-bit time_t. This is to avoid having to deal with 32/64-bit
+conversions and relying on a 64-bit timespec struct on 32-bit time_t
+platforms. As of Linux 5.3 there are no 32-bit time_t architectures
+without __NR_io_getevents. In the future if a 32-bit time_t architecture
+wants to use the 64-bit syscalls we can handle the conversion.
+
+This fixes build failures on 32-bit RISC-V.
+
+Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
+
+Reviewed-by: Richard Levitte <levitte@openssl.org>
+Reviewed-by: Paul Dale <paul.dale@oracle.com>
+(Merged from https://github.com/openssl/openssl/pull/9819)
+Upstream-Status: Accepted
+---
+ engines/e_afalg.c | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+diff --git a/engines/e_afalg.c b/engines/e_afalg.c
+index dacbe358cb..99516cb1bb 100644
+--- a/engines/e_afalg.c
++++ b/engines/e_afalg.c
+@@ -125,7 +125,23 @@ static ossl_inline int io_getevents(aio_context_t ctx, long min, long max,
+ struct io_event *events,
+ struct timespec *timeout)
+ {
++#if defined(__NR_io_getevents)
+ return syscall(__NR_io_getevents, ctx, min, max, events, timeout);
++#elif defined(__NR_io_pgetevents_time64)
++ /* Let's only support the 64 suffix syscalls for 64-bit time_t.
++ * This simplifies the code for us as we don't need to use a 64-bit
++ * version of timespec with a 32-bit time_t and handle converting
++ * between 64-bit and 32-bit times and check for overflows.
++ */
++ if (sizeof(timeout->tv_sec) == 8)
++ return syscall(__NR_io_pgetevents_time64, ctx, min, max, events, timeout, NULL);
++ else {
++ errno = ENOSYS;
++ return -1;
++ }
++#else
++# error "We require either the io_getevents syscall or __NR_io_pgetevents_time64."
++#endif
+ }
+
+ static void afalg_waitfd_cleanup(ASYNC_WAIT_CTX *ctx, const void *key,
+--
+2.30.1
+
diff --git a/poky/meta/recipes-connectivity/openssl/openssl/0004-Fixup-support-for-io_pgetevents_time64-syscall.patch b/poky/meta/recipes-connectivity/openssl/openssl/0004-Fixup-support-for-io_pgetevents_time64-syscall.patch
new file mode 100644
index 000000000..c8bc6f5c6
--- /dev/null
+++ b/poky/meta/recipes-connectivity/openssl/openssl/0004-Fixup-support-for-io_pgetevents_time64-syscall.patch
@@ -0,0 +1,99 @@
+From e5499a3cac1e823c3e0697e8667e952317b70cc8 Mon Sep 17 00:00:00 2001
+From: Alistair Francis <alistair.francis@wdc.com>
+Date: Thu, 4 Mar 2021 12:10:11 -0500
+Subject: [PATCH] Fixup support for io_pgetevents_time64 syscall
+
+This is a fixup for the original commit 5b5e2985f355c8e99c196d9ce5d02c15bebadfbc
+"Add support for io_pgetevents_time64 syscall" that didn't correctly
+work for 32-bit architecutres with a 64-bit time_t that aren't RISC-V.
+
+For a full discussion of the issue see:
+https://github.com/openssl/openssl/commit/5b5e2985f355c8e99c196d9ce5d02c15bebadfbc
+
+Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
+
+Reviewed-by: Tomas Mraz <tomas@openssl.org>
+Reviewed-by: Paul Dale <pauli@openssl.org>
+(Merged from https://github.com/openssl/openssl/pull/14432)
+Upstream-Status: Accepted
+---
+ engines/e_afalg.c | 55 ++++++++++++++++++++++++++++++++++++-----------
+ 1 file changed, 42 insertions(+), 13 deletions(-)
+
+diff --git a/engines/e_afalg.c b/engines/e_afalg.c
+index 9480d7c24b..4e9d67db2d 100644
+--- a/engines/e_afalg.c
++++ b/engines/e_afalg.c
+@@ -124,27 +124,56 @@ static ossl_inline int io_read(aio_context_t ctx, long n, struct iocb **iocb)
+ return syscall(__NR_io_submit, ctx, n, iocb);
+ }
+
++/* A version of 'struct timespec' with 32-bit time_t and nanoseconds. */
++struct __timespec32
++{
++ __kernel_long_t tv_sec;
++ __kernel_long_t tv_nsec;
++};
++
+ static ossl_inline int io_getevents(aio_context_t ctx, long min, long max,
+ struct io_event *events,
+ struct timespec *timeout)
+ {
++#if defined(__NR_io_pgetevents_time64)
++ /* Check if we are a 32-bit architecture with a 64-bit time_t */
++ if (sizeof(*timeout) != sizeof(struct __timespec32)) {
++ int ret = syscall(__NR_io_pgetevents_time64, ctx, min, max, events,
++ timeout, NULL);
++ if (ret == 0 || errno != ENOSYS)
++ return ret;
++ }
++#endif
++
+ #if defined(__NR_io_getevents)
+- return syscall(__NR_io_getevents, ctx, min, max, events, timeout);
+-#elif defined(__NR_io_pgetevents_time64)
+- /* Let's only support the 64 suffix syscalls for 64-bit time_t.
+- * This simplifies the code for us as we don't need to use a 64-bit
+- * version of timespec with a 32-bit time_t and handle converting
+- * between 64-bit and 32-bit times and check for overflows.
+- */
+- if (sizeof(timeout->tv_sec) == 8)
+- return syscall(__NR_io_pgetevents_time64, ctx, min, max, events, timeout, NULL);
++ if (sizeof(*timeout) == sizeof(struct __timespec32))
++ /*
++ * time_t matches our architecture length, we can just use
++ * __NR_io_getevents
++ */
++ return syscall(__NR_io_getevents, ctx, min, max, events, timeout);
+ else {
+- errno = ENOSYS;
+- return -1;
++ /*
++ * We don't have __NR_io_pgetevents_time64, but we are using a
++ * 64-bit time_t on a 32-bit architecture. If we can fit the
++ * timeout value in a 32-bit time_t, then let's do that
++ * and then use the __NR_io_getevents syscall.
++ */
++ if (timeout && timeout->tv_sec == (long)timeout->tv_sec) {
++ struct __timespec32 ts32;
++
++ ts32.tv_sec = (__kernel_long_t) timeout->tv_sec;
++ ts32.tv_nsec = (__kernel_long_t) timeout->tv_nsec;
++
++ return syscall(__NR_io_getevents, ctx, min, max, events, ts32);
++ } else {
++ return syscall(__NR_io_getevents, ctx, min, max, events, NULL);
++ }
+ }
+-#else
+-# error "We require either the io_getevents syscall or __NR_io_pgetevents_time64."
+ #endif
++
++ errno = ENOSYS;
++ return -1;
+ }
+
+ static void afalg_waitfd_cleanup(ASYNC_WAIT_CTX *ctx, const void *key,
+--
+2.30.1
+
diff --git a/poky/meta/recipes-connectivity/openssl/openssl_1.1.1j.bb b/poky/meta/recipes-connectivity/openssl/openssl_1.1.1k.bb
index 181790e6a..e518cb6a0 100644
--- a/poky/meta/recipes-connectivity/openssl/openssl_1.1.1j.bb
+++ b/poky/meta/recipes-connectivity/openssl/openssl_1.1.1k.bb
@@ -23,7 +23,12 @@ SRC_URI_append_class-nativesdk = " \
file://environment.d-openssl.sh \
"
-SRC_URI[sha256sum] = "aaf2fcb575cdf6491b98ab4829abf78a3dec8402b8b81efc8f23c00d443981bf"
+SRC_URI_append_riscv32 = " \
+ file://0003-Add-support-for-io_pgetevents_time64-syscall.patch \
+ file://0004-Fixup-support-for-io_pgetevents_time64-syscall.patch \
+ "
+
+SRC_URI[sha256sum] = "892a0875b9872acd04a9fde79b1f943075d5ea162415de3047c327df33fbaee5"
inherit lib_package multilib_header multilib_script ptest
MULTILIB_SCRIPTS = "${PN}-bin:${bindir}/c_rehash"
diff --git a/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/CVE-2021-27803.patch b/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/CVE-2021-27803.patch
new file mode 100644
index 000000000..004b1dbd1
--- /dev/null
+++ b/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/CVE-2021-27803.patch
@@ -0,0 +1,58 @@
+From 8460e3230988ef2ec13ce6b69b687e941f6cdb32 Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <jouni@codeaurora.org>
+Date: Tue, 8 Dec 2020 23:52:50 +0200
+Subject: [PATCH] P2P: Fix a corner case in peer addition based on PD Request
+
+p2p_add_device() may remove the oldest entry if there is no room in the
+peer table for a new peer. This would result in any pointer to that
+removed entry becoming stale. A corner case with an invalid PD Request
+frame could result in such a case ending up using (read+write) freed
+memory. This could only by triggered when the peer table has reached its
+maximum size and the PD Request frame is received from the P2P Device
+Address of the oldest remaining entry and the frame has incorrect P2P
+Device Address in the payload.
+
+Fix this by fetching the dev pointer again after having called
+p2p_add_device() so that the stale pointer cannot be used.
+
+Fixes: 17bef1e97a50 ("P2P: Add peer entry based on Provision Discovery Request")
+Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
+
+Upstream-Status: Backport
+CVE: CVE-2021-27803
+
+Reference to upstream patch:
+[https://w1.fi/cgit/hostap/commit/?id=8460e3230988ef2ec13ce6b69b687e941f6cdb32]
+
+Signed-off-by: Stefan Ghinea <stefan.ghinea@windriver.com>
+---
+ src/p2p/p2p_pd.c | 12 +++++-------
+ 1 file changed, 5 insertions(+), 7 deletions(-)
+
+diff --git a/src/p2p/p2p_pd.c b/src/p2p/p2p_pd.c
+index 3994ec0..05fd593 100644
+--- a/src/p2p/p2p_pd.c
++++ b/src/p2p/p2p_pd.c
+@@ -595,14 +595,12 @@ void p2p_process_prov_disc_req(struct p2p_data *p2p, const u8 *sa,
+ goto out;
+ }
+
++ dev = p2p_get_device(p2p, sa);
+ if (!dev) {
+- dev = p2p_get_device(p2p, sa);
+- if (!dev) {
+- p2p_dbg(p2p,
+- "Provision Discovery device not found "
+- MACSTR, MAC2STR(sa));
+- goto out;
+- }
++ p2p_dbg(p2p,
++ "Provision Discovery device not found "
++ MACSTR, MAC2STR(sa));
++ goto out;
+ }
+ } else if (msg.wfd_subelems) {
+ wpabuf_free(dev->info.wfd_subelems);
+--
+2.17.1
+
diff --git a/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.9.bb b/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.9.bb
index caa6018ce..357c28634 100644
--- a/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.9.bb
+++ b/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.9.bb
@@ -31,6 +31,7 @@ SRC_URI = "http://w1.fi/releases/wpa_supplicant-${PV}.tar.gz \
file://0002-WPS-UPnP-Fix-event-message-generation-using-a-long-U.patch \
file://0003-WPS-UPnP-Handle-HTTP-initiation-failures-for-events-.patch \
file://CVE-2021-0326.patch \
+ file://CVE-2021-27803.patch \
"
SRC_URI[md5sum] = "2d2958c782576dc9901092fbfecb4190"
SRC_URI[sha256sum] = "fcbdee7b4a64bea8177973299c8c824419c413ec2e3a95db63dd6a5dc3541f17"
diff --git a/poky/meta/recipes-core/busybox/busybox-inittab_1.32.0.bb b/poky/meta/recipes-core/busybox/busybox-inittab_1.33.0.bb
index 3804f4f7b..0021e4551 100644
--- a/poky/meta/recipes-core/busybox/busybox-inittab_1.32.0.bb
+++ b/poky/meta/recipes-core/busybox/busybox-inittab_1.33.0.bb
@@ -44,6 +44,9 @@ EOF
fi
}
+do_install_append_qemuppc64 () {
+ echo "9:12345:respawn:${base_sbindir}/getty 38400 hvc0" >> ${D}${sysconfdir}/inittab
+}
pkg_postinst_${PN} () {
# run this on host and on target
diff --git a/poky/meta/recipes-core/busybox/busybox/defconfig b/poky/meta/recipes-core/busybox/busybox/defconfig
index 4334a9d73..701d48d62 100644
--- a/poky/meta/recipes-core/busybox/busybox/defconfig
+++ b/poky/meta/recipes-core/busybox/busybox/defconfig
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
-# Busybox version: 1.30.1
-# Sun Feb 17 18:12:27 2019
+# Busybox version: 1.33.0
+# Wed Mar 10 13:29:25 2021
#
CONFIG_HAVE_DOT_CONFIG=y
@@ -34,8 +34,8 @@ CONFIG_FEATURE_SUID_CONFIG_QUIET=y
CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
# CONFIG_SELINUX is not set
# CONFIG_FEATURE_CLEAN_UP is not set
+CONFIG_FEATURE_SYSLOG_INFO=y
CONFIG_FEATURE_SYSLOG=y
-CONFIG_PLATFORM_LINUX=y
#
# Build Options
@@ -54,6 +54,7 @@ CONFIG_EXTRA_LDFLAGS=""
CONFIG_EXTRA_LDLIBS=""
# CONFIG_USE_PORTABLE_CODE is not set
CONFIG_STACK_OPTIMIZATION_386=y
+CONFIG_STATIC_LIBGCC=y
#
# Installation Options ("make install" behavior)
@@ -75,6 +76,7 @@ CONFIG_PREFIX="./_install"
# CONFIG_DEBUG_SANITIZE is not set
# CONFIG_UNIT_TEST is not set
# CONFIG_WERROR is not set
+# CONFIG_WARN_SIMPLE_MSG is not set
CONFIG_NO_DEBUG_LIB=y
# CONFIG_DMALLOC is not set
# CONFIG_EFENCE is not set
@@ -108,13 +110,13 @@ CONFIG_FEATURE_EDITING_FANCY_PROMPT=y
# CONFIG_FEATURE_EDITING_WINCH is not set
# CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set
# CONFIG_LOCALE_SUPPORT is not set
-# CONFIG_UNICODE_SUPPORT is not set
+CONFIG_UNICODE_SUPPORT=y
# CONFIG_UNICODE_USING_LOCALE is not set
-# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set
-CONFIG_SUBST_WCHAR=0
-CONFIG_LAST_SUPPORTED_WCHAR=0
-# CONFIG_UNICODE_COMBINING_WCHARS is not set
-# CONFIG_UNICODE_WIDE_WCHARS is not set
+CONFIG_FEATURE_CHECK_UNICODE_IN_ENV=y
+CONFIG_SUBST_WCHAR=63
+CONFIG_LAST_SUPPORTED_WCHAR=767
+CONFIG_UNICODE_COMBINING_WCHARS=y
+CONFIG_UNICODE_WIDE_WCHARS=y
# CONFIG_UNICODE_BIDI_SUPPORT is not set
# CONFIG_UNICODE_NEUTRAL_TABLE is not set
# CONFIG_UNICODE_PRESERVE_BROKEN is not set
@@ -155,6 +157,7 @@ CONFIG_LZCAT=y
CONFIG_XZCAT=y
# CONFIG_XZ is not set
CONFIG_BZIP2=y
+CONFIG_BZIP2_SMALL=8
CONFIG_FEATURE_BZIP2_DECOMPRESS=y
CONFIG_CPIO=y
# CONFIG_FEATURE_CPIO_O is not set
@@ -235,7 +238,6 @@ CONFIG_EXPR_MATH_SUPPORT_64=y
# CONFIG_FACTOR is not set
CONFIG_FALSE=y
# CONFIG_FOLD is not set
-# CONFIG_FSYNC is not set
CONFIG_HEAD=y
# CONFIG_FEATURE_FANCY_HEAD is not set
# CONFIG_HOSTID is not set
@@ -257,8 +259,8 @@ CONFIG_FEATURE_LS_USERNAME=y
CONFIG_FEATURE_LS_COLOR=y
# CONFIG_FEATURE_LS_COLOR_IS_DEFAULT is not set
CONFIG_MD5SUM=y
-# CONFIG_SHA1SUM is not set
-# CONFIG_SHA256SUM is not set
+CONFIG_SHA1SUM=y
+CONFIG_SHA256SUM=y
# CONFIG_SHA512SUM is not set
# CONFIG_SHA3SUM is not set
@@ -302,6 +304,7 @@ CONFIG_STTY=y
# CONFIG_SUM is not set
CONFIG_SYNC=y
# CONFIG_FEATURE_SYNC_FANCY is not set
+# CONFIG_FSYNC is not set
# CONFIG_TAC is not set
CONFIG_TAIL=y
CONFIG_FEATURE_FANCY_TAIL=y
@@ -328,14 +331,15 @@ CONFIG_UNIQ=y
CONFIG_UNLINK=y
CONFIG_USLEEP=y
# CONFIG_UUDECODE is not set
+CONFIG_BASE32=y
# CONFIG_BASE64 is not set
# CONFIG_UUENCODE is not set
CONFIG_WC=y
# CONFIG_FEATURE_WC_LARGE is not set
-CONFIG_WHOAMI=y
CONFIG_WHO=y
# CONFIG_W is not set
CONFIG_USERS=y
+CONFIG_WHOAMI=y
CONFIG_YES=y
#
@@ -375,8 +379,8 @@ CONFIG_DEFAULT_SETFONT_DIR=""
CONFIG_LOADKMAP=y
CONFIG_OPENVT=y
CONFIG_RESET=y
-# CONFIG_RESIZE is not set
-# CONFIG_FEATURE_RESIZE_PRINT is not set
+CONFIG_RESIZE=y
+CONFIG_FEATURE_RESIZE_PRINT=y
CONFIG_SETCONSOLE=y
# CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set
# CONFIG_SETKEYCODES is not set
@@ -460,6 +464,7 @@ CONFIG_FEATURE_FIND_SIZE=y
CONFIG_FEATURE_FIND_PRUNE=y
CONFIG_FEATURE_FIND_QUIT=y
# CONFIG_FEATURE_FIND_DELETE is not set
+CONFIG_FEATURE_FIND_EMPTY=y
CONFIG_FEATURE_FIND_PATH=y
CONFIG_FEATURE_FIND_REGEX=y
# CONFIG_FEATURE_FIND_CONTEXT is not set
@@ -488,32 +493,32 @@ CONFIG_FEATURE_XARGS_SUPPORT_REPL_STR=y
CONFIG_REBOOT=y
# CONFIG_FEATURE_WAIT_FOR_INIT is not set
# CONFIG_FEATURE_CALL_TELINIT is not set
-# CONFIG_TELINIT_PATH is not set
+CONFIG_TELINIT_PATH=""
# CONFIG_INIT is not set
# CONFIG_LINUXRC is not set
# CONFIG_FEATURE_USE_INITTAB is not set
# CONFIG_FEATURE_KILL_REMOVED is not set
-# CONFIG_FEATURE_KILL_DELAY is not set
+CONFIG_FEATURE_KILL_DELAY=0
# CONFIG_FEATURE_INIT_SCTTY is not set
# CONFIG_FEATURE_INIT_SYSLOG is not set
# CONFIG_FEATURE_INIT_QUIET is not set
# CONFIG_FEATURE_INIT_COREDUMPS is not set
-# CONFIG_INIT_TERMINAL_TYPE is not set
+CONFIG_INIT_TERMINAL_TYPE=""
# CONFIG_FEATURE_INIT_MODIFY_CMDLINE is not set
#
# Login/Password Management Utilities
#
-# CONFIG_FEATURE_SHADOWPASSWDS is not set
+CONFIG_FEATURE_SHADOWPASSWDS=y
# CONFIG_USE_BB_PWD_GRP is not set
# CONFIG_USE_BB_SHADOW is not set
CONFIG_USE_BB_CRYPT=y
# CONFIG_USE_BB_CRYPT_SHA is not set
-# CONFIG_ADDGROUP is not set
-# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set
# CONFIG_ADD_SHELL is not set
# CONFIG_REMOVE_SHELL is not set
-# CONFIG_ADDUSER is not set
+CONFIG_ADDGROUP=y
+# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set
+CONFIG_ADDUSER=y
# CONFIG_FEATURE_CHECK_NAMES is not set
CONFIG_LAST_ID=60000
CONFIG_FIRST_SYSTEM_ID=100
@@ -522,23 +527,23 @@ CONFIG_LAST_SYSTEM_ID=999
CONFIG_FEATURE_DEFAULT_PASSWD_ALGO=""
# CONFIG_CRYPTPW is not set
# CONFIG_MKPASSWD is not set
-# CONFIG_DELUSER is not set
-# CONFIG_DELGROUP is not set
+CONFIG_DELUSER=y
+CONFIG_DELGROUP=y
# CONFIG_FEATURE_DEL_USER_FROM_GROUP is not set
-# CONFIG_GETTY is not set
-# CONFIG_LOGIN is not set
+CONFIG_GETTY=y
+CONFIG_LOGIN=y
# CONFIG_LOGIN_SESSION_AS_CHILD is not set
# CONFIG_LOGIN_SCRIPTS is not set
# CONFIG_FEATURE_NOLOGIN is not set
# CONFIG_FEATURE_SECURETTY is not set
-# CONFIG_PASSWD is not set
+CONFIG_PASSWD=y
# CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set
-# CONFIG_SU is not set
+CONFIG_SU=y
# CONFIG_FEATURE_SU_SYSLOG is not set
# CONFIG_FEATURE_SU_CHECKS_SHELLS is not set
# CONFIG_FEATURE_SU_BLANK_PW_NEEDS_SECURE_TTY is not set
-# CONFIG_SULOGIN is not set
-# CONFIG_VLOCK is not set
+CONFIG_SULOGIN=y
+CONFIG_VLOCK=y
#
# Linux Ext2 FS Progs
@@ -585,8 +590,8 @@ CONFIG_DEFAULT_DEPMOD_FILE="modules.dep"
# CONFIG_ACPID is not set
# CONFIG_FEATURE_ACPID_COMPAT is not set
# CONFIG_BLKDISCARD is not set
-# CONFIG_BLKID is not set
-# CONFIG_FEATURE_BLKID_TYPE is not set
+CONFIG_BLKID=y
+CONFIG_FEATURE_BLKID_TYPE=y
# CONFIG_BLOCKDEV is not set
# CONFIG_CAL is not set
# CONFIG_CHRT is not set
@@ -616,10 +621,9 @@ CONFIG_FLOCK=y
# CONFIG_FSCK_MINIX is not set
# CONFIG_FSFREEZE is not set
CONFIG_FSTRIM=y
-# CONFIG_GETOPT is not set
-# CONFIG_FEATURE_GETOPT_LONG is not set
+CONFIG_GETOPT=y
+CONFIG_FEATURE_GETOPT_LONG=y
CONFIG_HEXDUMP=y
-# CONFIG_FEATURE_HEXDUMP_REVERSE is not set
# CONFIG_HD is not set
# CONFIG_XXD is not set
CONFIG_HWCLOCK=y
@@ -638,6 +642,7 @@ CONFIG_LOSETUP=y
# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set
# CONFIG_FEATURE_MDEV_EXEC is not set
# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set
+# CONFIG_FEATURE_MDEV_DAEMON is not set
CONFIG_MESG=y
# CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP is not set
# CONFIG_MKE2FS is not set
@@ -654,7 +659,7 @@ CONFIG_MOUNT=y
# CONFIG_FEATURE_MOUNT_FAKE is not set
# CONFIG_FEATURE_MOUNT_VERBOSE is not set
# CONFIG_FEATURE_MOUNT_HELPERS is not set
-# CONFIG_FEATURE_MOUNT_LABEL is not set
+CONFIG_FEATURE_MOUNT_LABEL=y
# CONFIG_FEATURE_MOUNT_NFS is not set
# CONFIG_FEATURE_MOUNT_CIFS is not set
CONFIG_FEATURE_MOUNT_FLAGS=y
@@ -669,7 +674,7 @@ CONFIG_RDATE=y
# CONFIG_RDEV is not set
# CONFIG_READPROFILE is not set
CONFIG_RENICE=y
-# CONFIG_REV is not set
+CONFIG_REV=y
# CONFIG_RTCWAKE is not set
# CONFIG_SCRIPT is not set
# CONFIG_SCRIPTREPLAY is not set
@@ -689,6 +694,7 @@ CONFIG_SWAPOFF=y
CONFIG_SWITCH_ROOT=y
# CONFIG_TASKSET is not set
# CONFIG_FEATURE_TASKSET_FANCY is not set
+# CONFIG_FEATURE_TASKSET_CPULIST is not set
# CONFIG_UEVENT is not set
CONFIG_UMOUNT=y
CONFIG_FEATURE_UMOUNT_ALL=y
@@ -701,18 +707,19 @@ CONFIG_FEATURE_UMOUNT_ALL=y
CONFIG_FEATURE_MOUNT_LOOP=y
CONFIG_FEATURE_MOUNT_LOOP_CREATE=y
# CONFIG_FEATURE_MTAB_SUPPORT is not set
-# CONFIG_VOLUMEID is not set
+CONFIG_VOLUMEID=y
#
# Filesystem/Volume identification
#
# CONFIG_FEATURE_VOLUMEID_BCACHE is not set
-# CONFIG_FEATURE_VOLUMEID_BTRFS is not set
+CONFIG_FEATURE_VOLUMEID_BTRFS=y
# CONFIG_FEATURE_VOLUMEID_CRAMFS is not set
+CONFIG_FEATURE_VOLUMEID_EROFS=y
# CONFIG_FEATURE_VOLUMEID_EXFAT is not set
-# CONFIG_FEATURE_VOLUMEID_EXT is not set
-# CONFIG_FEATURE_VOLUMEID_F2FS is not set
-# CONFIG_FEATURE_VOLUMEID_FAT is not set
+CONFIG_FEATURE_VOLUMEID_EXT=y
+CONFIG_FEATURE_VOLUMEID_F2FS=y
+CONFIG_FEATURE_VOLUMEID_FAT=y
# CONFIG_FEATURE_VOLUMEID_HFS is not set
# CONFIG_FEATURE_VOLUMEID_ISO9660 is not set
# CONFIG_FEATURE_VOLUMEID_JFS is not set
@@ -726,7 +733,7 @@ CONFIG_FEATURE_MOUNT_LOOP_CREATE=y
# CONFIG_FEATURE_VOLUMEID_OCFS2 is not set
# CONFIG_FEATURE_VOLUMEID_REISERFS is not set
# CONFIG_FEATURE_VOLUMEID_ROMFS is not set
-# CONFIG_FEATURE_VOLUMEID_SQUASHFS is not set
+CONFIG_FEATURE_VOLUMEID_SQUASHFS=y
# CONFIG_FEATURE_VOLUMEID_SYSV is not set
# CONFIG_FEATURE_VOLUMEID_UBIFS is not set
# CONFIG_FEATURE_VOLUMEID_UDF is not set
@@ -769,10 +776,10 @@ CONFIG_FEATURE_CROND_DIR=""
# CONFIG_FEATURE_DEVFS is not set
# CONFIG_DEVMEM is not set
# CONFIG_FBSPLASH is not set
-# CONFIG_FLASHCP is not set
# CONFIG_FLASH_ERASEALL is not set
# CONFIG_FLASH_LOCK is not set
# CONFIG_FLASH_UNLOCK is not set
+# CONFIG_FLASHCP is not set
# CONFIG_HDPARM is not set
# CONFIG_FEATURE_HDPARM_GET_IDENTITY is not set
# CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set
@@ -806,6 +813,7 @@ CONFIG_FEATURE_LESS_FLAGS=y
# CONFIG_FEATURE_MAKEDEVS_TABLE is not set
# CONFIG_MAN is not set
CONFIG_MICROCOM=y
+# CONFIG_MIM is not set
# CONFIG_MT is not set
# CONFIG_NANDWRITE is not set
# CONFIG_NANDDUMP is not set
@@ -819,14 +827,15 @@ CONFIG_RFKILL=y
# CONFIG_SETSERIAL is not set
CONFIG_STRINGS=y
CONFIG_TIME=y
+CONFIG_TS=y
# CONFIG_TTYSIZE is not set
-# CONFIG_UBIRENAME is not set
# CONFIG_UBIATTACH is not set
# CONFIG_UBIDETACH is not set
# CONFIG_UBIMKVOL is not set
# CONFIG_UBIRMVOL is not set
# CONFIG_UBIRSVOL is not set
# CONFIG_UBIUPDATEVOL is not set
+# CONFIG_UBIRENAME is not set
# CONFIG_VOLNAME is not set
# CONFIG_WATCHDOG is not set
@@ -866,6 +875,10 @@ CONFIG_DNSDOMAINNAME=y
# CONFIG_FEATURE_HTTPD_ERROR_PAGES is not set
# CONFIG_FEATURE_HTTPD_PROXY is not set
# CONFIG_FEATURE_HTTPD_GZIP is not set
+# CONFIG_FEATURE_HTTPD_ETAG is not set
+# CONFIG_FEATURE_HTTPD_LAST_MODIFIED is not set
+# CONFIG_FEATURE_HTTPD_DATE is not set
+# CONFIG_FEATURE_HTTPD_ACL_IP is not set
CONFIG_IFCONFIG=y
CONFIG_FEATURE_IFCONFIG_STATUS=y
# CONFIG_FEATURE_IFCONFIG_SLIP is not set
@@ -946,6 +959,7 @@ CONFIG_FEATURE_TELNET_WIDTH=y
# CONFIG_FEATURE_TELNETD_INETD_WAIT is not set
CONFIG_TFTP=y
# CONFIG_FEATURE_TFTP_PROGRESS_BAR is not set
+CONFIG_FEATURE_TFTP_HPA_COMPAT=y
# CONFIG_TFTPD is not set
CONFIG_FEATURE_TFTP_GET=y
CONFIG_FEATURE_TFTP_PUT=y
@@ -990,6 +1004,7 @@ CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script"
# CONFIG_FEATURE_UDHCP_PORT is not set
CONFIG_UDHCP_DEBUG=0
CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
+CONFIG_FEATURE_UDHCP_RFC3397=y
# CONFIG_FEATURE_UDHCP_8021Q is not set
CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -b"
@@ -1023,7 +1038,7 @@ CONFIG_KILLALL=y
# CONFIG_LSOF is not set
# CONFIG_MPSTAT is not set
# CONFIG_NMETER is not set
-# CONFIG_PGREP is not set
+CONFIG_PGREP=y
# CONFIG_PKILL is not set
CONFIG_PIDOF=y
# CONFIG_FEATURE_PIDOF_SINGLE is not set
@@ -1093,6 +1108,7 @@ CONFIG_SH_IS_ASH=y
# CONFIG_BASH_IS_ASH is not set
# CONFIG_BASH_IS_HUSH is not set
CONFIG_BASH_IS_NONE=y
+CONFIG_SHELL_ASH=y
CONFIG_ASH=y
CONFIG_ASH_OPTIMIZE_FOR_SIZE=y
CONFIG_ASH_INTERNAL_GLOB=y
@@ -1113,6 +1129,7 @@ CONFIG_ASH_GETOPTS=y
CONFIG_ASH_CMDCMD=y
# CONFIG_CTTYHACK is not set
# CONFIG_HUSH is not set
+# CONFIG_SHELL_HUSH is not set
# CONFIG_HUSH_BASH_COMPAT is not set
# CONFIG_HUSH_BRACE_EXPANSION is not set
# CONFIG_HUSH_LINENO_VAR is not set
@@ -1154,6 +1171,7 @@ CONFIG_ASH_CMDCMD=y
#
CONFIG_FEATURE_SH_MATH=y
# CONFIG_FEATURE_SH_MATH_64 is not set
+CONFIG_FEATURE_SH_MATH_BASE=y
CONFIG_FEATURE_SH_EXTRA_QUIET=y
# CONFIG_FEATURE_SH_STANDALONE is not set
# CONFIG_FEATURE_SH_NOFORK is not set
@@ -1171,14 +1189,15 @@ CONFIG_KLOGD=y
#
CONFIG_FEATURE_KLOGD_KLOGCTL=y
CONFIG_LOGGER=y
-# CONFIG_LOGREAD is not set
-# CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING is not set
-# CONFIG_SYSLOGD is not set
-# CONFIG_FEATURE_ROTATE_LOGFILE is not set
-# CONFIG_FEATURE_REMOTE_LOG is not set
-# CONFIG_FEATURE_SYSLOGD_DUP is not set
-# CONFIG_FEATURE_SYSLOGD_CFG is not set
-CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=0
-# CONFIG_FEATURE_IPC_SYSLOG is not set
-CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=0
-# CONFIG_FEATURE_KMSG_SYSLOG is not set
+CONFIG_LOGREAD=y
+CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING=y
+CONFIG_SYSLOGD=y
+CONFIG_FEATURE_ROTATE_LOGFILE=y
+CONFIG_FEATURE_REMOTE_LOG=y
+CONFIG_FEATURE_SYSLOGD_DUP=y
+CONFIG_FEATURE_SYSLOGD_CFG=y
+# CONFIG_FEATURE_SYSLOGD_PRECISE_TIMESTAMPS is not set
+CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256
+CONFIG_FEATURE_IPC_SYSLOG=y
+CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=64
+CONFIG_FEATURE_KMSG_SYSLOG=y
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-gobject-Drop-use-of-volatile-from-get_type-macros.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-gobject-Drop-use-of-volatile-from-get_type-macros.patch
new file mode 100644
index 000000000..485218652
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-gobject-Drop-use-of-volatile-from-get_type-macros.patch
@@ -0,0 +1,403 @@
+From fab561f8d05794329184cd81f9ab9d9d77dcc22a Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:12:22 +0000
+Subject: [PATCH 01/29] gobject: Drop use of volatile from get_type() macros
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+http://isvolatileusefulwiththreads.in/c/
+
+It’s possible that the variables here are only marked as volatile
+because they’re arguments to `g_once_*()`. Those arguments will be
+modified in a subsequent commit.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ docs/reference/gobject/glib-mkenums.xml | 8 ++---
+ docs/reference/gobject/tut_gtype.xml | 2 +-
+ gio/gioenumtypes.c.template | 8 ++---
+ gio/tests/gsettings.c | 4 +--
+ gobject/gbinding.c | 8 ++---
+ gobject/gboxed.c | 8 ++---
+ gobject/glib-enumtypes.c.template | 8 ++---
+ gobject/gsourceclosure.c | 2 +-
+ gobject/gtype.h | 48 ++++++++++++-------------
+ gobject/tests/signals.c | 16 ++++-----
+ 10 files changed, 56 insertions(+), 56 deletions(-)
+
+diff --git a/docs/reference/gobject/glib-mkenums.xml b/docs/reference/gobject/glib-mkenums.xml
+index 2200328ed..ce250a3ff 100644
+--- a/docs/reference/gobject/glib-mkenums.xml
++++ b/docs/reference/gobject/glib-mkenums.xml
+@@ -480,9 +480,9 @@ A C source template file will typically look like this:
+ GType
+ @enum_name@_get_type (void)
+ {
+- static volatile gsize g_@type@_type_id__volatile;
++ static gsize static_g_@type@_type_id;
+
+- if (g_once_init_enter (&amp;g_define_type_id__volatile))
++ if (g_once_init_enter (&amp;static_g_@type@_type_id))
+ {
+ static const G@Type@Value values[] = {
+ /*** END value-header ***/
+@@ -498,9 +498,9 @@ GType
+ GType g_@type@_type_id =
+ g_@type@_register_static (g_intern_static_string ("@EnumName@"), values);
+
+- g_once_init_leave (&amp;g_@type@_type_id__volatile, g_@type@_type_id);
++ g_once_init_leave (&amp;static_g_@type@_type_id, g_@type@_type_id);
+ }
+- return g_@type@_type_id__volatile;
++ return static_g_@type@_type_id;
+ }
+
+ /*** END value-tail ***/
+diff --git a/docs/reference/gobject/tut_gtype.xml b/docs/reference/gobject/tut_gtype.xml
+index 25e37dc48..ee042889d 100644
+--- a/docs/reference/gobject/tut_gtype.xml
++++ b/docs/reference/gobject/tut_gtype.xml
+@@ -852,7 +852,7 @@ viewer_editable_default_init (ViewerEditableInterface *iface)
+ GType
+ viewer_editable_get_type (void)
+ {
+- static volatile gsize type_id = 0;
++ static gsize type_id = 0;
+ if (g_once_init_enter (&amp;type_id)) {
+ const GTypeInfo info = {
+ sizeof (ViewerEditableInterface),
+diff --git a/gio/gioenumtypes.c.template b/gio/gioenumtypes.c.template
+index e9adc4a38..948a01201 100644
+--- a/gio/gioenumtypes.c.template
++++ b/gio/gioenumtypes.c.template
+@@ -13,9 +13,9 @@
+ GType
+ @enum_name@_get_type (void)
+ {
+- static volatile gsize g_define_type_id__volatile = 0;
++ static gsize static_g_define_type_id = 0;
+
+- if (g_once_init_enter (&g_define_type_id__volatile))
++ if (g_once_init_enter (&static_g_define_type_id))
+ {
+ static const G@Type@Value values[] = {
+ /*** END value-header ***/
+@@ -29,10 +29,10 @@ GType
+ };
+ GType g_define_type_id =
+ g_@type@_register_static (g_intern_static_string ("@EnumName@"), values);
+- g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
++ g_once_init_leave (&static_g_define_type_id, g_define_type_id);
+ }
+
+- return g_define_type_id__volatile;
++ return static_g_define_type_id;
+ }
+
+ /*** END value-tail ***/
+diff --git a/gio/tests/gsettings.c b/gio/tests/gsettings.c
+index 2f81ae6c3..179d0fd2f 100644
+--- a/gio/tests/gsettings.c
++++ b/gio/tests/gsettings.c
+@@ -1060,7 +1060,7 @@ test_object_set_property (GObject *object,
+ static GType
+ test_enum_get_type (void)
+ {
+- static volatile gsize define_type_id = 0;
++ static gsize define_type_id = 0;
+
+ if (g_once_init_enter (&define_type_id))
+ {
+@@ -1082,7 +1082,7 @@ test_enum_get_type (void)
+ static GType
+ test_flags_get_type (void)
+ {
+- static volatile gsize define_type_id = 0;
++ static gsize define_type_id = 0;
+
+ if (g_once_init_enter (&define_type_id))
+ {
+diff --git a/gobject/gbinding.c b/gobject/gbinding.c
+index 78a883075..662d76b3c 100644
+--- a/gobject/gbinding.c
++++ b/gobject/gbinding.c
+@@ -120,9 +120,9 @@
+ GType
+ g_binding_flags_get_type (void)
+ {
+- static volatile gsize g_define_type_id__volatile = 0;
++ static gsize static_g_define_type_id = 0;
+
+- if (g_once_init_enter (&g_define_type_id__volatile))
++ if (g_once_init_enter (&static_g_define_type_id))
+ {
+ static const GFlagsValue values[] = {
+ { G_BINDING_DEFAULT, "G_BINDING_DEFAULT", "default" },
+@@ -133,10 +133,10 @@ g_binding_flags_get_type (void)
+ };
+ GType g_define_type_id =
+ g_flags_register_static (g_intern_static_string ("GBindingFlags"), values);
+- g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
++ g_once_init_leave (&static_g_define_type_id, g_define_type_id);
+ }
+
+- return g_define_type_id__volatile;
++ return static_g_define_type_id;
+ }
+
+ #define G_BINDING_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), G_TYPE_BINDING, GBindingClass))
+diff --git a/gobject/gboxed.c b/gobject/gboxed.c
+index 30ba4e775..194251383 100644
+--- a/gobject/gboxed.c
++++ b/gobject/gboxed.c
+@@ -180,19 +180,19 @@ G_DEFINE_BOXED_TYPE (GOptionGroup, g_option_group, g_option_group_ref, g_option_
+ GType
+ g_strv_get_type (void)
+ {
+- static volatile gsize g_define_type_id__volatile = 0;
++ static gsize static_g_define_type_id = 0;
+
+- if (g_once_init_enter (&g_define_type_id__volatile))
++ if (g_once_init_enter (&static_g_define_type_id))
+ {
+ GType g_define_type_id =
+ g_boxed_type_register_static (g_intern_static_string ("GStrv"),
+ (GBoxedCopyFunc) g_strdupv,
+ (GBoxedFreeFunc) g_strfreev);
+
+- g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
++ g_once_init_leave (&static_g_define_type_id, g_define_type_id);
+ }
+
+- return g_define_type_id__volatile;
++ return static_g_define_type_id;
+ }
+
+ GType
+diff --git a/gobject/glib-enumtypes.c.template b/gobject/glib-enumtypes.c.template
+index b7d36728f..1800ca8af 100644
+--- a/gobject/glib-enumtypes.c.template
++++ b/gobject/glib-enumtypes.c.template
+@@ -13,9 +13,9 @@
+ GType
+ @enum_name@_get_type (void)
+ {
+- static volatile gsize g_define_type_id__volatile = 0;
++ static gsize static_g_define_type_id = 0;
+
+- if (g_once_init_enter (&g_define_type_id__volatile))
++ if (g_once_init_enter (&static_g_define_type_id))
+ {
+ static const G@Type@Value values[] = {
+ /*** END value-header ***/
+@@ -29,10 +29,10 @@ GType
+ };
+ GType g_define_type_id =
+ g_@type@_register_static (g_intern_static_string ("@EnumName@"), values);
+- g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
++ g_once_init_leave (&static_g_define_type_id, g_define_type_id);
+ }
+
+- return g_define_type_id__volatile;
++ return static_g_define_type_id;
+ }
+
+ /*** END value-tail ***/
+diff --git a/gobject/gsourceclosure.c b/gobject/gsourceclosure.c
+index 0d0d2e87c..d1b1ee4b3 100644
+--- a/gobject/gsourceclosure.c
++++ b/gobject/gsourceclosure.c
+@@ -32,7 +32,7 @@ G_DEFINE_BOXED_TYPE (GIOChannel, g_io_channel, g_io_channel_ref, g_io_channel_un
+ GType
+ g_io_condition_get_type (void)
+ {
+- static volatile GType etype = 0;
++ static GType etype = 0;
+
+ if (g_once_init_enter (&etype))
+ {
+diff --git a/gobject/gtype.h b/gobject/gtype.h
+index 9de46ac60..666fadb0c 100644
+--- a/gobject/gtype.h
++++ b/gobject/gtype.h
+@@ -1727,8 +1727,8 @@ guint g_type_get_type_registration_serial (void);
+ * GType
+ * gtk_gadget_get_type (void)
+ * {
+- * static volatile gsize g_define_type_id__volatile = 0;
+- * if (g_once_init_enter (&g_define_type_id__volatile))
++ * static gsize static_g_define_type_id = 0;
++ * if (g_once_init_enter (&static_g_define_type_id))
+ * {
+ * GType g_define_type_id =
+ * g_type_register_static_simple (GTK_TYPE_WIDGET,
+@@ -1748,9 +1748,9 @@ guint g_type_get_type_registration_serial (void);
+ * };
+ * g_type_add_interface_static (g_define_type_id, TYPE_GIZMO, &g_implement_interface_info);
+ * }
+- * g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
++ * g_once_init_leave (&static_g_define_type_id, g_define_type_id);
+ * }
+- * return g_define_type_id__volatile;
++ * return static_g_define_type_id;
+ * }
+ * ]|
+ * The only pieces which have to be manually provided are the definitions of
+@@ -1995,17 +1995,17 @@ type_name##_get_instance_private (TypeName *self) \
+ GType \
+ type_name##_get_type (void) \
+ { \
+- static volatile gsize g_define_type_id__volatile = 0;
++ static gsize static_g_define_type_id = 0;
+ /* Prelude goes here */
+
+ /* Added for _G_DEFINE_TYPE_EXTENDED_WITH_PRELUDE */
+ #define _G_DEFINE_TYPE_EXTENDED_BEGIN_REGISTER(TypeName, type_name, TYPE_PARENT, flags) \
+- if (g_once_init_enter (&g_define_type_id__volatile)) \
++ if (g_once_init_enter (&static_g_define_type_id)) \
+ { \
+ GType g_define_type_id = type_name##_get_type_once (); \
+- g_once_init_leave (&g_define_type_id__volatile, g_define_type_id); \
++ g_once_init_leave (&static_g_define_type_id, g_define_type_id); \
+ } \
+- return g_define_type_id__volatile; \
++ return static_g_define_type_id; \
+ } /* closes type_name##_get_type() */ \
+ \
+ G_GNUC_NO_INLINE \
+@@ -2041,8 +2041,8 @@ static void type_name##_default_init (TypeName##Interface *klass); \
+ GType \
+ type_name##_get_type (void) \
+ { \
+- static volatile gsize g_define_type_id__volatile = 0; \
+- if (g_once_init_enter (&g_define_type_id__volatile)) \
++ static gsize static_g_define_type_id = 0; \
++ if (g_once_init_enter (&static_g_define_type_id)) \
+ { \
+ GType g_define_type_id = \
+ g_type_register_static_simple (G_TYPE_INTERFACE, \
+@@ -2058,9 +2058,9 @@ type_name##_get_type (void) \
+ #define _G_DEFINE_INTERFACE_EXTENDED_END() \
+ /* following custom code */ \
+ } \
+- g_once_init_leave (&g_define_type_id__volatile, g_define_type_id); \
++ g_once_init_leave (&static_g_define_type_id, g_define_type_id); \
+ } \
+- return g_define_type_id__volatile; \
++ return static_g_define_type_id; \
+ } /* closes type_name##_get_type() */
+
+ /**
+@@ -2115,13 +2115,13 @@ static GType type_name##_get_type_once (void); \
+ GType \
+ type_name##_get_type (void) \
+ { \
+- static volatile gsize g_define_type_id__volatile = 0; \
+- if (g_once_init_enter (&g_define_type_id__volatile)) \
++ static gsize static_g_define_type_id = 0; \
++ if (g_once_init_enter (&static_g_define_type_id)) \
+ { \
+ GType g_define_type_id = type_name##_get_type_once (); \
+- g_once_init_leave (&g_define_type_id__volatile, g_define_type_id); \
++ g_once_init_leave (&static_g_define_type_id, g_define_type_id); \
+ } \
+- return g_define_type_id__volatile; \
++ return static_g_define_type_id; \
+ } \
+ \
+ G_GNUC_NO_INLINE \
+@@ -2152,13 +2152,13 @@ static GType type_name##_get_type_once (void); \
+ GType \
+ type_name##_get_type (void) \
+ { \
+- static volatile gsize g_define_type_id__volatile = 0; \
+- if (g_once_init_enter (&g_define_type_id__volatile)) \
++ static gsize static_g_define_type_id = 0; \
++ if (g_once_init_enter (&static_g_define_type_id)) \
+ { \
+ GType g_define_type_id = type_name##_get_type_once (); \
+- g_once_init_leave (&g_define_type_id__volatile, g_define_type_id); \
++ g_once_init_leave (&static_g_define_type_id, g_define_type_id); \
+ } \
+- return g_define_type_id__volatile; \
++ return static_g_define_type_id; \
+ } \
+ \
+ G_GNUC_NO_INLINE \
+@@ -2205,13 +2205,13 @@ static GType type_name##_get_type_once (void); \
+ GType \
+ type_name##_get_type (void) \
+ { \
+- static volatile gsize g_define_type_id__volatile = 0; \
+- if (g_once_init_enter (&g_define_type_id__volatile)) \
++ static gsize static_g_define_type_id = 0; \
++ if (g_once_init_enter (&static_g_define_type_id)) \
+ { \
+ GType g_define_type_id = type_name##_get_type_once (); \
+- g_once_init_leave (&g_define_type_id__volatile, g_define_type_id); \
++ g_once_init_leave (&static_g_define_type_id, g_define_type_id); \
+ } \
+- return g_define_type_id__volatile; \
++ return static_g_define_type_id; \
+ } \
+ \
+ G_GNUC_NO_INLINE \
+diff --git a/gobject/tests/signals.c b/gobject/tests/signals.c
+index 120f90b5c..ac0ce5102 100644
+--- a/gobject/tests/signals.c
++++ b/gobject/tests/signals.c
+@@ -66,9 +66,9 @@ custom_marshal_VOID__INVOCATIONHINT (GClosure *closure,
+ static GType
+ test_enum_get_type (void)
+ {
+- static volatile gsize g_define_type_id__volatile = 0;
++ static gsize static_g_define_type_id = 0;
+
+- if (g_once_init_enter (&g_define_type_id__volatile))
++ if (g_once_init_enter (&static_g_define_type_id))
+ {
+ static const GEnumValue values[] = {
+ { TEST_ENUM_NEGATIVE, "TEST_ENUM_NEGATIVE", "negative" },
+@@ -79,18 +79,18 @@ test_enum_get_type (void)
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("TestEnum"), values);
+- g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
++ g_once_init_leave (&static_g_define_type_id, g_define_type_id);
+ }
+
+- return g_define_type_id__volatile;
++ return static_g_define_type_id;
+ }
+
+ static GType
+ test_unsigned_enum_get_type (void)
+ {
+- static volatile gsize g_define_type_id__volatile = 0;
++ static gsize static_g_define_type_id = 0;
+
+- if (g_once_init_enter (&g_define_type_id__volatile))
++ if (g_once_init_enter (&static_g_define_type_id))
+ {
+ static const GEnumValue values[] = {
+ { TEST_UNSIGNED_ENUM_FOO, "TEST_UNSIGNED_ENUM_FOO", "foo" },
+@@ -99,10 +99,10 @@ test_unsigned_enum_get_type (void)
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("TestUnsignedEnum"), values);
+- g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
++ g_once_init_leave (&static_g_define_type_id, g_define_type_id);
+ }
+
+- return g_define_type_id__volatile;
++ return static_g_define_type_id;
+ }
+
+ typedef enum {
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0002-tests-Fix-non-atomic-access-to-a-shared-variable.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0002-tests-Fix-non-atomic-access-to-a-shared-variable.patch
new file mode 100644
index 000000000..fada7cc38
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0002-tests-Fix-non-atomic-access-to-a-shared-variable.patch
@@ -0,0 +1,44 @@
+From a6ce0e742a5c75c53a7c702ebb1af1084065160a Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:14:29 +0000
+Subject: [PATCH 02/29] tests: Fix non-atomic access to a shared variable
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+And drop the `volatile` qualifier from the variable, as that doesn’t
+help with thread safety.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ glib/tests/642026.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/glib/tests/642026.c b/glib/tests/642026.c
+index ef54f14bb..26ab2ed06 100644
+--- a/glib/tests/642026.c
++++ b/glib/tests/642026.c
+@@ -25,7 +25,7 @@ static GMutex *mutex;
+ static GCond *cond;
+ static guint i;
+
+-static volatile gint freed = 0;
++static gint freed = 0; /* (atomic) */
+
+ static void
+ notify (gpointer p)
+@@ -63,7 +63,7 @@ testcase (void)
+ GThread *t1;
+
+ g_static_private_init (&sp);
+- freed = 0;
++ g_atomic_int_set (&freed, 0);
+
+ t1 = g_thread_create (thread_func, NULL, TRUE, NULL);
+ g_assert (t1 != NULL);
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0003-tests-Fix-non-atomic-access-to-a-shared-variable.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0003-tests-Fix-non-atomic-access-to-a-shared-variable.patch
new file mode 100644
index 000000000..8bc71a698
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0003-tests-Fix-non-atomic-access-to-a-shared-variable.patch
@@ -0,0 +1,90 @@
+From ea746c79faf554d980c21b0e4381753e003d2dc6 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:17:23 +0000
+Subject: [PATCH 03/29] tests: Fix non-atomic access to a shared variable
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+And drop the `volatile` qualifier from the variable, as that doesn’t
+help with thread safety.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ glib/tests/mainloop.c | 20 ++++++++++----------
+ 1 file changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/glib/tests/mainloop.c b/glib/tests/mainloop.c
+index 16763a0ea..563a951de 100644
+--- a/glib/tests/mainloop.c
++++ b/glib/tests/mainloop.c
+@@ -918,7 +918,7 @@ test_mainloop_overflow (void)
+ g_main_context_unref (ctx);
+ }
+
+-static volatile gint ready_time_dispatched;
++static gint ready_time_dispatched; /* (atomic) */
+
+ static gboolean
+ ready_time_dispatch (GSource *source,
+@@ -964,7 +964,7 @@ test_ready_time (void)
+ /* A source with no ready time set should not fire */
+ g_assert_cmpint (g_source_get_ready_time (source), ==, -1);
+ while (g_main_context_iteration (NULL, FALSE));
+- g_assert_false (ready_time_dispatched);
++ g_assert_false (g_atomic_int_get (&ready_time_dispatched));
+
+ /* The ready time should not have been changed */
+ g_assert_cmpint (g_source_get_ready_time (source), ==, -1);
+@@ -978,37 +978,37 @@ test_ready_time (void)
+ */
+ g_source_set_ready_time (source, g_get_monotonic_time () + G_TIME_SPAN_DAY);
+ while (g_main_context_iteration (NULL, FALSE));
+- g_assert_false (ready_time_dispatched);
++ g_assert_false (g_atomic_int_get (&ready_time_dispatched));
+ /* Make sure it didn't get reset */
+ g_assert_cmpint (g_source_get_ready_time (source), !=, -1);
+
+ /* Ready time of -1 -> don't fire */
+ g_source_set_ready_time (source, -1);
+ while (g_main_context_iteration (NULL, FALSE));
+- g_assert_false (ready_time_dispatched);
++ g_assert_false (g_atomic_int_get (&ready_time_dispatched));
+ /* Not reset, but should still be -1 from above */
+ g_assert_cmpint (g_source_get_ready_time (source), ==, -1);
+
+ /* A ready time of the current time should fire immediately */
+ g_source_set_ready_time (source, g_get_monotonic_time ());
+ while (g_main_context_iteration (NULL, FALSE));
+- g_assert_true (ready_time_dispatched);
+- ready_time_dispatched = FALSE;
++ g_assert_true (g_atomic_int_get (&ready_time_dispatched));
++ g_atomic_int_set (&ready_time_dispatched, FALSE);
+ /* Should have gotten reset by the handler function */
+ g_assert_cmpint (g_source_get_ready_time (source), ==, -1);
+
+ /* As well as one in the recent past... */
+ g_source_set_ready_time (source, g_get_monotonic_time () - G_TIME_SPAN_SECOND);
+ while (g_main_context_iteration (NULL, FALSE));
+- g_assert_true (ready_time_dispatched);
+- ready_time_dispatched = FALSE;
++ g_assert_true (g_atomic_int_get (&ready_time_dispatched));
++ g_atomic_int_set (&ready_time_dispatched, FALSE);
+ g_assert_cmpint (g_source_get_ready_time (source), ==, -1);
+
+ /* Zero is the 'official' way to get a source to fire immediately */
+ g_source_set_ready_time (source, 0);
+ while (g_main_context_iteration (NULL, FALSE));
+- g_assert_true (ready_time_dispatched);
+- ready_time_dispatched = FALSE;
++ g_assert_true (g_atomic_int_get (&ready_time_dispatched));
++ g_atomic_int_set (&ready_time_dispatched, FALSE);
+ g_assert_cmpint (g_source_get_ready_time (source), ==, -1);
+
+ /* Now do some tests of cross-thread wakeups.
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0004-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0004-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch
new file mode 100644
index 000000000..4b7b6f463
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0004-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch
@@ -0,0 +1,93 @@
+From 3dda662bebb81666d009635df1055ba5c1e17b52 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:16:17 +0000
+Subject: [PATCH 04/29] tests: Drop unnecessary volatile qualifiers from tests
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+These variables were already (correctly) accessed atomically. The
+`volatile` qualifier doesn’t help with that.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ glib/tests/atomic.c | 4 ++--
+ glib/tests/cond.c | 2 +-
+ glib/tests/gwakeuptest.c | 2 +-
+ glib/tests/hash.c | 2 +-
+ glib/tests/slice.c | 2 +-
+ 5 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/glib/tests/atomic.c b/glib/tests/atomic.c
+index 6b6cc7f3e..7d2459f3a 100644
+--- a/glib/tests/atomic.c
++++ b/glib/tests/atomic.c
+@@ -248,8 +248,8 @@ G_GNUC_END_IGNORE_DEPRECATIONS
+ #define THREADS 10
+ #define ROUNDS 10000
+
+-volatile gint bucket[THREADS];
+-volatile gint atomic;
++gint bucket[THREADS]; /* never contested by threads, not accessed atomically */
++gint atomic; /* (atomic) */
+
+ static gpointer
+ thread_func (gpointer data)
+diff --git a/glib/tests/cond.c b/glib/tests/cond.c
+index 0f0b3d249..ed338cce3 100644
+--- a/glib/tests/cond.c
++++ b/glib/tests/cond.c
+@@ -29,7 +29,7 @@
+
+ static GCond cond;
+ static GMutex mutex;
+-static volatile gint next;
++static gint next; /* locked by @mutex */
+
+ static void
+ push_value (gint value)
+diff --git a/glib/tests/gwakeuptest.c b/glib/tests/gwakeuptest.c
+index 461a7d3de..b37fb43fc 100644
+--- a/glib/tests/gwakeuptest.c
++++ b/glib/tests/gwakeuptest.c
+@@ -92,7 +92,7 @@ struct context
+ static struct context contexts[NUM_THREADS];
+ static GThread *threads[NUM_THREADS];
+ static GWakeup *last_token_wakeup;
+-static volatile gint tokens_alive;
++static gint tokens_alive; /* (atomic) */
+
+ static void
+ context_init (struct context *ctx)
+diff --git a/glib/tests/hash.c b/glib/tests/hash.c
+index 4623d18d1..f4ff55ce1 100644
+--- a/glib/tests/hash.c
++++ b/glib/tests/hash.c
+@@ -1362,7 +1362,7 @@ struct _GHashTable
+
+ GHashFunc hash_func;
+ GEqualFunc key_equal_func;
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+
+ #ifndef G_DISABLE_ASSERT
+ int version;
+diff --git a/glib/tests/slice.c b/glib/tests/slice.c
+index f37826f3a..a566280db 100644
+--- a/glib/tests/slice.c
++++ b/glib/tests/slice.c
+@@ -107,7 +107,7 @@ thread_allocate (gpointer data)
+ gint b;
+ gint size;
+ gpointer p;
+- volatile gpointer *loc;
++ gpointer *loc; /* (atomic) */
+
+ for (i = 0; i < 10000; i++)
+ {
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0005-tests-Fix-non-atomic-access-to-some-shared-variables.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0005-tests-Fix-non-atomic-access-to-some-shared-variables.patch
new file mode 100644
index 000000000..3aecf4582
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0005-tests-Fix-non-atomic-access-to-some-shared-variables.patch
@@ -0,0 +1,702 @@
+From 7f905ff1faf0acbe0d2ce69937e031fcacce9294 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:21:00 +0000
+Subject: [PATCH 05/29] tests: Fix non-atomic access to some shared variables
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+And drop the `volatile` qualifier from the variables, as that doesn’t
+help with thread safety.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ gio/tests/gdbus-connection-flush.c | 6 +-
+ gio/tests/gdbus-connection.c | 40 ++++----
+ gio/tests/gdbus-overflow.c | 20 ++--
+ gio/tests/socket-service.c | 6 +-
+ gio/tests/task.c | 150 ++++++++++++++---------------
+ 5 files changed, 111 insertions(+), 111 deletions(-)
+
+--- a/gio/tests/gdbus-connection-flush.c
++++ b/gio/tests/gdbus-connection-flush.c
+@@ -43,9 +43,9 @@ G_LOCK_DEFINE_STATIC (write);
+ typedef struct {
+ GFilterOutputStream parent;
+
+- volatile gint started;
+- volatile gint finished;
+- volatile gint flushed;
++ gint started; /* (atomic) */
++ gint finished; /* (atomic) */
++ gint flushed; /* (atomic) */
+
+ GOutputStream *real_output;
+ } MyOutputStream;
+--- a/gio/tests/gdbus-connection.c
++++ b/gio/tests/gdbus-connection.c
+@@ -61,9 +61,9 @@ _log (const gchar *format, ...)
+ static gboolean
+ test_connection_quit_mainloop (gpointer user_data)
+ {
+- volatile gboolean *quit_mainloop_fired = user_data;
++ gboolean *quit_mainloop_fired = user_data; /* (atomic) */
+ _log ("quit_mainloop_fired");
+- *quit_mainloop_fired = TRUE;
++ g_atomic_int_set (quit_mainloop_fired, TRUE);
+ g_main_loop_quit (loop);
+ return TRUE;
+ }
+@@ -113,8 +113,8 @@ on_name_owner_changed (GDBusConnection *
+ static void
+ a_gdestroynotify_that_sets_a_gboolean_to_true_and_quits_loop (gpointer user_data)
+ {
+- volatile gboolean *val = user_data;
+- *val = TRUE;
++ gboolean *val = user_data; /* (atomic) */
++ g_atomic_int_set (val, TRUE);
+ _log ("destroynotify fired for %p", val);
+ g_main_loop_quit (loop);
+ }
+@@ -143,10 +143,10 @@ test_connection_life_cycle (void)
+ GDBusConnection *c;
+ GDBusConnection *c2;
+ GError *error;
+- volatile gboolean on_signal_registration_freed_called;
+- volatile gboolean on_filter_freed_called;
+- volatile gboolean on_register_object_freed_called;
+- volatile gboolean quit_mainloop_fired;
++ gboolean on_signal_registration_freed_called; /* (atomic) */
++ gboolean on_filter_freed_called; /* (atomic) */
++ gboolean on_register_object_freed_called; /* (atomic) */
++ gboolean quit_mainloop_fired; /* (atomic) */
+ guint quit_mainloop_id;
+ guint registration_id;
+
+@@ -208,7 +208,7 @@ test_connection_life_cycle (void)
+ g_assert_no_error (error);
+ g_assert_nonnull (c2);
+ /* signal registration */
+- on_signal_registration_freed_called = FALSE;
++ g_atomic_int_set (&on_signal_registration_freed_called, FALSE);
+ g_dbus_connection_signal_subscribe (c2,
+ "org.freedesktop.DBus", /* bus name */
+ "org.freedesktop.DBus", /* interface */
+@@ -220,13 +220,13 @@ test_connection_life_cycle (void)
+ (gpointer) &on_signal_registration_freed_called,
+ a_gdestroynotify_that_sets_a_gboolean_to_true_and_quits_loop);
+ /* filter func */
+- on_filter_freed_called = FALSE;
++ g_atomic_int_set (&on_filter_freed_called, FALSE);
+ g_dbus_connection_add_filter (c2,
+ some_filter_func,
+ (gpointer) &on_filter_freed_called,
+ a_gdestroynotify_that_sets_a_gboolean_to_true_and_quits_loop);
+ /* object registration */
+- on_register_object_freed_called = FALSE;
++ g_atomic_int_set (&on_register_object_freed_called, FALSE);
+ error = NULL;
+ registration_id = g_dbus_connection_register_object (c2,
+ "/foo",
+@@ -239,7 +239,7 @@ test_connection_life_cycle (void)
+ g_assert_cmpuint (registration_id, >, 0);
+ /* ok, finalize the connection and check that all the GDestroyNotify functions are invoked as expected */
+ g_object_unref (c2);
+- quit_mainloop_fired = FALSE;
++ g_atomic_int_set (&quit_mainloop_fired, FALSE);
+ quit_mainloop_id = g_timeout_add (30000, test_connection_quit_mainloop, (gpointer) &quit_mainloop_fired);
+ _log ("destroynotifies for\n"
+ " register_object %p\n"
+@@ -250,21 +250,21 @@ test_connection_life_cycle (void)
+ &on_signal_registration_freed_called);
+ while (TRUE)
+ {
+- if (on_signal_registration_freed_called &&
+- on_filter_freed_called &&
+- on_register_object_freed_called)
++ if (g_atomic_int_get (&on_signal_registration_freed_called) &&
++ g_atomic_int_get (&on_filter_freed_called) &&
++ g_atomic_int_get (&on_register_object_freed_called))
+ break;
+- if (quit_mainloop_fired)
++ if (g_atomic_int_get (&quit_mainloop_fired))
+ break;
+ _log ("entering loop");
+ g_main_loop_run (loop);
+ _log ("exiting loop");
+ }
+ g_source_remove (quit_mainloop_id);
+- g_assert_true (on_signal_registration_freed_called);
+- g_assert_true (on_filter_freed_called);
+- g_assert_true (on_register_object_freed_called);
+- g_assert_false (quit_mainloop_fired);
++ g_assert_true (g_atomic_int_get (&on_signal_registration_freed_called));
++ g_assert_true (g_atomic_int_get (&on_filter_freed_called));
++ g_assert_true (g_atomic_int_get (&on_register_object_freed_called));
++ g_assert_false (g_atomic_int_get (&quit_mainloop_fired));
+
+ /*
+ * Check for correct behavior when the bus goes away
+--- a/gio/tests/gdbus-overflow.c
++++ b/gio/tests/gdbus-overflow.c
+@@ -86,8 +86,8 @@ overflow_filter_func (GDBusConnection *c
+ gboolean incoming,
+ gpointer user_data)
+ {
+- volatile gint *counter = user_data;
+- *counter += 1;
++ gint *counter = user_data; /* (atomic) */
++ g_atomic_int_inc (counter);
+ return message;
+ }
+
+@@ -108,8 +108,8 @@ test_overflow (void)
+ GDBusConnection *producer, *consumer;
+ GError *error;
+ GTimer *timer;
+- volatile gint n_messages_received;
+- volatile gint n_messages_sent;
++ gint n_messages_received; /* (atomic) */
++ gint n_messages_sent; /* (atomic) */
+
+ g_assert_cmpint (socketpair (AF_UNIX, SOCK_STREAM, 0, sv), ==, 0);
+
+@@ -129,7 +129,7 @@ test_overflow (void)
+ g_dbus_connection_set_exit_on_close (producer, TRUE);
+ g_assert_no_error (error);
+ g_object_unref (socket_connection);
+- n_messages_sent = 0;
++ g_atomic_int_set (&n_messages_sent, 0);
+ g_dbus_connection_add_filter (producer, overflow_filter_func, (gpointer) &n_messages_sent, NULL);
+
+ /* send enough data that we get an EAGAIN */
+@@ -155,7 +155,7 @@ test_overflow (void)
+ */
+ g_timeout_add (500, overflow_on_500ms_later_func, NULL);
+ g_main_loop_run (loop);
+- g_assert_cmpint (n_messages_sent, <, OVERFLOW_NUM_SIGNALS);
++ g_assert_cmpint (g_atomic_int_get (&n_messages_sent), <, OVERFLOW_NUM_SIGNALS);
+
+ /* now suck it all out as a client, and add it up */
+ socket = g_socket_new_from_fd (sv[1], &error);
+@@ -171,18 +171,18 @@ test_overflow (void)
+ &error);
+ g_assert_no_error (error);
+ g_object_unref (socket_connection);
+- n_messages_received = 0;
++ g_atomic_int_set (&n_messages_received, 0);
+ g_dbus_connection_add_filter (consumer, overflow_filter_func, (gpointer) &n_messages_received, NULL);
+ g_dbus_connection_start_message_processing (consumer);
+
+ timer = g_timer_new ();
+ g_timer_start (timer);
+
+- while (n_messages_received < OVERFLOW_NUM_SIGNALS && g_timer_elapsed (timer, NULL) < OVERFLOW_TIMEOUT_SEC)
++ while (g_atomic_int_get (&n_messages_received) < OVERFLOW_NUM_SIGNALS && g_timer_elapsed (timer, NULL) < OVERFLOW_TIMEOUT_SEC)
+ g_main_context_iteration (NULL, FALSE);
+
+- g_assert_cmpint (n_messages_sent, ==, OVERFLOW_NUM_SIGNALS);
+- g_assert_cmpint (n_messages_received, ==, OVERFLOW_NUM_SIGNALS);
++ g_assert_cmpint (g_atomic_int_get (&n_messages_sent), ==, OVERFLOW_NUM_SIGNALS);
++ g_assert_cmpint (g_atomic_int_get (&n_messages_received), ==, OVERFLOW_NUM_SIGNALS);
+
+ g_timer_destroy (timer);
+ g_object_unref (consumer);
+--- a/gio/tests/socket-service.c
++++ b/gio/tests/socket-service.c
+@@ -99,7 +99,7 @@ test_start_stop (void)
+
+ GMutex mutex_712570;
+ GCond cond_712570;
+-volatile gboolean finalized;
++gboolean finalized; /* (atomic) */
+
+ GType test_threaded_socket_service_get_type (void);
+ typedef GThreadedSocketService TestThreadedSocketService;
+@@ -120,7 +120,7 @@ test_threaded_socket_service_finalize (G
+ /* Signal the main thread that finalization completed successfully
+ * rather than hanging.
+ */
+- finalized = TRUE;
++ g_atomic_int_set (&finalized, TRUE);
+ g_cond_signal (&cond_712570);
+ g_mutex_unlock (&mutex_712570);
+ }
+@@ -235,7 +235,7 @@ test_threaded_712570 (void)
+ */
+ g_object_unref (service);
+
+- while (!finalized)
++ while (!g_atomic_int_get (&finalized))
+ g_cond_wait (&cond_712570, &mutex_712570);
+ g_mutex_unlock (&mutex_712570);
+ }
+--- a/gio/tests/task.c
++++ b/gio/tests/task.c
+@@ -957,7 +957,7 @@ task_weak_notify (gpointer user_data,
+ gboolean *weak_notify_ran = user_data;
+
+ g_mutex_lock (&run_in_thread_mutex);
+- *weak_notify_ran = TRUE;
++ g_atomic_int_set (weak_notify_ran, TRUE);
+ g_cond_signal (&run_in_thread_cond);
+ g_mutex_unlock (&run_in_thread_mutex);
+ }
+@@ -1007,7 +1007,7 @@ run_in_thread_thread (GTask *task
+ g_assert (g_thread_self () != main_thread);
+
+ g_mutex_lock (&run_in_thread_mutex);
+- *thread_ran = TRUE;
++ g_atomic_int_set (thread_ran, TRUE);
+ g_cond_signal (&run_in_thread_cond);
+ g_mutex_unlock (&run_in_thread_mutex);
+
+@@ -1018,8 +1018,8 @@ static void
+ test_run_in_thread (void)
+ {
+ GTask *task;
+- volatile gboolean thread_ran = FALSE;
+- volatile gboolean weak_notify_ran = FALSE;
++ gboolean thread_ran = FALSE; /* (atomic) */
++ gboolean weak_notify_ran = FALSE; /* (atomic) */
+ gboolean notification_emitted = FALSE;
+ gboolean done = FALSE;
+
+@@ -1033,12 +1033,12 @@ test_run_in_thread (void)
+ g_task_run_in_thread (task, run_in_thread_thread);
+
+ g_mutex_lock (&run_in_thread_mutex);
+- while (!thread_ran)
++ while (!g_atomic_int_get (&thread_ran))
+ g_cond_wait (&run_in_thread_cond, &run_in_thread_mutex);
+ g_mutex_unlock (&run_in_thread_mutex);
+
+ g_assert (done == FALSE);
+- g_assert (weak_notify_ran == FALSE);
++ g_assert_false (g_atomic_int_get (&weak_notify_ran));
+
+ g_main_loop_run (loop);
+
+@@ -1050,7 +1050,7 @@ test_run_in_thread (void)
+ g_object_unref (task);
+
+ g_mutex_lock (&run_in_thread_mutex);
+- while (!weak_notify_ran)
++ while (!g_atomic_int_get (&weak_notify_ran))
+ g_cond_wait (&run_in_thread_cond, &run_in_thread_mutex);
+ g_mutex_unlock (&run_in_thread_mutex);
+ }
+@@ -1081,7 +1081,7 @@ run_in_thread_sync_thread (GTask
+
+ g_assert (g_thread_self () != main_thread);
+
+- *thread_ran = TRUE;
++ g_atomic_int_set (thread_ran, TRUE);
+ g_task_return_int (task, magic);
+ }
+
+@@ -1102,7 +1102,7 @@ test_run_in_thread_sync (void)
+ g_task_set_task_data (task, &thread_ran, NULL);
+ g_task_run_in_thread_sync (task, run_in_thread_sync_thread);
+
+- g_assert (thread_ran == TRUE);
++ g_assert_true (g_atomic_int_get (&thread_ran));
+ g_assert (task != NULL);
+ g_assert (!g_task_had_error (task));
+ g_assert_true (g_task_get_completed (task));
+@@ -1487,8 +1487,8 @@ test_return_on_cancel (void)
+ {
+ GTask *task;
+ GCancellable *cancellable;
+- volatile ThreadState thread_state;
+- volatile gboolean weak_notify_ran = FALSE;
++ ThreadState thread_state; /* (atomic) */
++ gboolean weak_notify_ran = FALSE; /* (atomic) */
+ gboolean callback_ran;
+ gboolean notification_emitted = FALSE;
+
+@@ -1498,7 +1498,7 @@ test_return_on_cancel (void)
+ * early.
+ */
+ callback_ran = FALSE;
+- thread_state = THREAD_STARTING;
++ g_atomic_int_set (&thread_state, THREAD_STARTING);
+ task = g_task_new (NULL, cancellable, return_on_cancel_callback, &callback_ran);
+ g_signal_connect (task, "notify::completed",
+ (GCallback) completed_cb, &notification_emitted);
+@@ -1509,18 +1509,18 @@ test_return_on_cancel (void)
+ g_task_run_in_thread (task, return_on_cancel_thread);
+ g_object_unref (task);
+
+- while (thread_state == THREAD_STARTING)
++ while (g_atomic_int_get (&thread_state) == THREAD_STARTING)
+ g_cond_wait (&roc_init_cond, &roc_init_mutex);
+ g_mutex_unlock (&roc_init_mutex);
+
+- g_assert (thread_state == THREAD_RUNNING);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_RUNNING);
+ g_assert (callback_ran == FALSE);
+
+ g_cancellable_cancel (cancellable);
+ g_mutex_unlock (&roc_finish_mutex);
+ g_main_loop_run (loop);
+
+- g_assert (thread_state == THREAD_COMPLETED);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_COMPLETED);
+ g_assert (callback_ran == TRUE);
+ g_assert_true (notification_emitted);
+
+@@ -1529,7 +1529,7 @@ test_return_on_cancel (void)
+ /* If return-on-cancel is TRUE, it does return early */
+ callback_ran = FALSE;
+ notification_emitted = FALSE;
+- thread_state = THREAD_STARTING;
++ g_atomic_int_set (&thread_state, THREAD_STARTING);
+ task = g_task_new (NULL, cancellable, return_on_cancel_callback, &callback_ran);
+ g_object_weak_ref (G_OBJECT (task), task_weak_notify, (gpointer)&weak_notify_ran);
+ g_signal_connect (task, "notify::completed",
+@@ -1542,27 +1542,27 @@ test_return_on_cancel (void)
+ g_task_run_in_thread (task, return_on_cancel_thread);
+ g_object_unref (task);
+
+- while (thread_state == THREAD_STARTING)
++ while (g_atomic_int_get (&thread_state) == THREAD_STARTING)
+ g_cond_wait (&roc_init_cond, &roc_init_mutex);
+ g_mutex_unlock (&roc_init_mutex);
+
+- g_assert (thread_state == THREAD_RUNNING);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_RUNNING);
+ g_assert (callback_ran == FALSE);
+
+ g_cancellable_cancel (cancellable);
+ g_main_loop_run (loop);
+- g_assert (thread_state == THREAD_RUNNING);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_RUNNING);
+ g_assert (callback_ran == TRUE);
+
+- g_assert (weak_notify_ran == FALSE);
++ g_assert_false (g_atomic_int_get (&weak_notify_ran));
+
+- while (thread_state == THREAD_RUNNING)
++ while (g_atomic_int_get (&thread_state) == THREAD_RUNNING)
+ g_cond_wait (&roc_finish_cond, &roc_finish_mutex);
+ g_mutex_unlock (&roc_finish_mutex);
+
+- g_assert (thread_state == THREAD_CANCELLED);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_CANCELLED);
+ g_mutex_lock (&run_in_thread_mutex);
+- while (!weak_notify_ran)
++ while (!g_atomic_int_get (&weak_notify_ran))
+ g_cond_wait (&run_in_thread_cond, &run_in_thread_mutex);
+ g_mutex_unlock (&run_in_thread_mutex);
+
+@@ -1574,7 +1574,7 @@ test_return_on_cancel (void)
+ */
+ callback_ran = FALSE;
+ notification_emitted = FALSE;
+- thread_state = THREAD_STARTING;
++ g_atomic_int_set (&thread_state, THREAD_STARTING);
+ task = g_task_new (NULL, cancellable, return_on_cancel_callback, &callback_ran);
+ g_signal_connect (task, "notify::completed",
+ (GCallback) completed_cb, &notification_emitted);
+@@ -1591,17 +1591,17 @@ test_return_on_cancel (void)
+ g_main_loop_run (loop);
+ g_assert (callback_ran == TRUE);
+
+- while (thread_state == THREAD_STARTING)
++ while (g_atomic_int_get (&thread_state) == THREAD_STARTING)
+ g_cond_wait (&roc_init_cond, &roc_init_mutex);
+ g_mutex_unlock (&roc_init_mutex);
+
+- g_assert (thread_state == THREAD_RUNNING);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_RUNNING);
+
+- while (thread_state == THREAD_RUNNING)
++ while (g_atomic_int_get (&thread_state) == THREAD_RUNNING)
+ g_cond_wait (&roc_finish_cond, &roc_finish_mutex);
+ g_mutex_unlock (&roc_finish_mutex);
+
+- g_assert (thread_state == THREAD_CANCELLED);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_CANCELLED);
+ g_assert_true (notification_emitted);
+
+ g_object_unref (cancellable);
+@@ -1621,7 +1621,7 @@ test_return_on_cancel_sync (void)
+ {
+ GTask *task;
+ GCancellable *cancellable;
+- volatile ThreadState thread_state;
++ ThreadState thread_state; /* (atomic) */
+ GThread *runner_thread;
+ gssize ret;
+ GError *error = NULL;
+@@ -1630,7 +1630,7 @@ test_return_on_cancel_sync (void)
+
+ /* If return-on-cancel is FALSE, the task does not return early.
+ */
+- thread_state = THREAD_STARTING;
++ g_atomic_int_set (&thread_state, THREAD_STARTING);
+ task = g_task_new (NULL, cancellable, run_in_thread_sync_callback, NULL);
+
+ g_task_set_task_data (task, (gpointer)&thread_state, NULL);
+@@ -1639,16 +1639,16 @@ test_return_on_cancel_sync (void)
+ runner_thread = g_thread_new ("return-on-cancel-sync runner thread",
+ cancel_sync_runner_thread, task);
+
+- while (thread_state == THREAD_STARTING)
++ while (g_atomic_int_get (&thread_state) == THREAD_STARTING)
+ g_cond_wait (&roc_init_cond, &roc_init_mutex);
+ g_mutex_unlock (&roc_init_mutex);
+
+- g_assert (thread_state == THREAD_RUNNING);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_RUNNING);
+
+ g_cancellable_cancel (cancellable);
+ g_mutex_unlock (&roc_finish_mutex);
+ g_thread_join (runner_thread);
+- g_assert (thread_state == THREAD_COMPLETED);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_COMPLETED);
+
+ ret = g_task_propagate_int (task, &error);
+ g_assert_error (error, G_IO_ERROR, G_IO_ERROR_CANCELLED);
+@@ -1660,7 +1660,7 @@ test_return_on_cancel_sync (void)
+ g_cancellable_reset (cancellable);
+
+ /* If return-on-cancel is TRUE, it does return early */
+- thread_state = THREAD_STARTING;
++ g_atomic_int_set (&thread_state, THREAD_STARTING);
+ task = g_task_new (NULL, cancellable, run_in_thread_sync_callback, NULL);
+ g_task_set_return_on_cancel (task, TRUE);
+
+@@ -1670,15 +1670,15 @@ test_return_on_cancel_sync (void)
+ runner_thread = g_thread_new ("return-on-cancel-sync runner thread",
+ cancel_sync_runner_thread, task);
+
+- while (thread_state == THREAD_STARTING)
++ while (g_atomic_int_get (&thread_state) == THREAD_STARTING)
+ g_cond_wait (&roc_init_cond, &roc_init_mutex);
+ g_mutex_unlock (&roc_init_mutex);
+
+- g_assert (thread_state == THREAD_RUNNING);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_RUNNING);
+
+ g_cancellable_cancel (cancellable);
+ g_thread_join (runner_thread);
+- g_assert (thread_state == THREAD_RUNNING);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_RUNNING);
+
+ ret = g_task_propagate_int (task, &error);
+ g_assert_error (error, G_IO_ERROR, G_IO_ERROR_CANCELLED);
+@@ -1687,18 +1687,18 @@ test_return_on_cancel_sync (void)
+
+ g_object_unref (task);
+
+- while (thread_state == THREAD_RUNNING)
++ while (g_atomic_int_get (&thread_state) == THREAD_RUNNING)
+ g_cond_wait (&roc_finish_cond, &roc_finish_mutex);
+ g_mutex_unlock (&roc_finish_mutex);
+
+- g_assert (thread_state == THREAD_CANCELLED);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_CANCELLED);
+
+ g_cancellable_reset (cancellable);
+
+ /* If the task is already cancelled before it starts, it returns
+ * immediately, but the thread func still runs.
+ */
+- thread_state = THREAD_STARTING;
++ g_atomic_int_set (&thread_state, THREAD_STARTING);
+ task = g_task_new (NULL, cancellable, run_in_thread_sync_callback, NULL);
+ g_task_set_return_on_cancel (task, TRUE);
+
+@@ -1711,7 +1711,7 @@ test_return_on_cancel_sync (void)
+ cancel_sync_runner_thread, task);
+
+ g_thread_join (runner_thread);
+- g_assert (thread_state == THREAD_STARTING);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_STARTING);
+
+ ret = g_task_propagate_int (task, &error);
+ g_assert_error (error, G_IO_ERROR, G_IO_ERROR_CANCELLED);
+@@ -1720,17 +1720,17 @@ test_return_on_cancel_sync (void)
+
+ g_object_unref (task);
+
+- while (thread_state == THREAD_STARTING)
++ while (g_atomic_int_get (&thread_state) == THREAD_STARTING)
+ g_cond_wait (&roc_init_cond, &roc_init_mutex);
+ g_mutex_unlock (&roc_init_mutex);
+
+- g_assert (thread_state == THREAD_RUNNING);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_RUNNING);
+
+- while (thread_state == THREAD_RUNNING)
++ while (g_atomic_int_get (&thread_state) == THREAD_RUNNING)
+ g_cond_wait (&roc_finish_cond, &roc_finish_mutex);
+ g_mutex_unlock (&roc_finish_mutex);
+
+- g_assert (thread_state == THREAD_CANCELLED);
++ g_assert_cmpint (g_atomic_int_get (&thread_state), ==, THREAD_CANCELLED);
+
+ g_object_unref (cancellable);
+ }
+@@ -1776,7 +1776,7 @@ return_on_cancel_atomic_thread (GTask
+ gpointer task_data,
+ GCancellable *cancellable)
+ {
+- gint *state = task_data;
++ gint *state = task_data; /* (atomic) */
+
+ g_assert (source_object == g_task_get_source_object (task));
+ g_assert (task_data == g_task_get_task_data (task));
+@@ -1784,34 +1784,34 @@ return_on_cancel_atomic_thread (GTask
+ g_assert_false (g_task_get_completed (task));
+
+ g_assert (g_thread_self () != main_thread);
+- g_assert_cmpint (*state, ==, 0);
++ g_assert_cmpint (g_atomic_int_get (state), ==, 0);
+
+ g_mutex_lock (&roca_mutex_1);
+- *state = 1;
++ g_atomic_int_set (state, 1);
+ g_cond_signal (&roca_cond_1);
+ g_mutex_unlock (&roca_mutex_1);
+
+ g_mutex_lock (&roca_mutex_2);
+ if (g_task_set_return_on_cancel (task, FALSE))
+- *state = 2;
++ g_atomic_int_set (state, 2);
+ else
+- *state = 3;
++ g_atomic_int_set (state, 3);
+ g_cond_signal (&roca_cond_2);
+ g_mutex_unlock (&roca_mutex_2);
+
+ g_mutex_lock (&roca_mutex_1);
+ if (g_task_set_return_on_cancel (task, TRUE))
+- *state = 4;
++ g_atomic_int_set (state, 4);
+ else
+- *state = 5;
++ g_atomic_int_set (state, 5);
+ g_cond_signal (&roca_cond_1);
+ g_mutex_unlock (&roca_mutex_1);
+
+ g_mutex_lock (&roca_mutex_2);
+ if (g_task_set_return_on_cancel (task, TRUE))
+- *state = 6;
++ g_atomic_int_set (state, 6);
+ else
+- *state = 7;
++ g_atomic_int_set (state, 7);
+ g_cond_signal (&roca_cond_2);
+ g_mutex_unlock (&roca_mutex_2);
+
+@@ -1823,7 +1823,7 @@ test_return_on_cancel_atomic (void)
+ {
+ GTask *task;
+ GCancellable *cancellable;
+- volatile gint state;
++ gint state; /* (atomic) */
+ gboolean notification_emitted = FALSE;
+ gboolean callback_ran;
+
+@@ -1832,7 +1832,7 @@ test_return_on_cancel_atomic (void)
+ g_mutex_lock (&roca_mutex_2);
+
+ /* If we don't cancel it, each set_return_on_cancel() call will succeed */
+- state = 0;
++ g_atomic_int_set (&state, 0);
+ callback_ran = FALSE;
+ task = g_task_new (NULL, cancellable, return_on_cancel_atomic_callback, &callback_ran);
+ g_task_set_return_on_cancel (task, TRUE);
+@@ -1843,23 +1843,23 @@ test_return_on_cancel_atomic (void)
+ g_task_run_in_thread (task, return_on_cancel_atomic_thread);
+ g_object_unref (task);
+
+- g_assert_cmpint (state, ==, 0);
++ g_assert_cmpint (g_atomic_int_get (&state), ==, 0);
+
+- while (state == 0)
++ while (g_atomic_int_get (&state) == 0)
+ g_cond_wait (&roca_cond_1, &roca_mutex_1);
+- g_assert (state == 1);
++ g_assert_cmpint (g_atomic_int_get (&state), ==, 1);
+
+- while (state == 1)
++ while (g_atomic_int_get (&state) == 1)
+ g_cond_wait (&roca_cond_2, &roca_mutex_2);
+- g_assert (state == 2);
++ g_assert_cmpint (g_atomic_int_get (&state), ==, 2);
+
+- while (state == 2)
++ while (g_atomic_int_get (&state) == 2)
+ g_cond_wait (&roca_cond_1, &roca_mutex_1);
+- g_assert (state == 4);
++ g_assert_cmpint (g_atomic_int_get (&state), ==, 4);
+
+- while (state == 4)
++ while (g_atomic_int_get (&state) == 4)
+ g_cond_wait (&roca_cond_2, &roca_mutex_2);
+- g_assert (state == 6);
++ g_assert_cmpint (g_atomic_int_get (&state), ==, 6);
+
+ /* callback assumes there'll be a cancelled error */
+ g_cancellable_cancel (cancellable);
+@@ -1876,7 +1876,7 @@ test_return_on_cancel_atomic (void)
+ * task won't complete right away, and further
+ * g_task_set_return_on_cancel() calls will return FALSE.
+ */
+- state = 0;
++ g_atomic_int_set (&state, 0);
+ callback_ran = FALSE;
+ notification_emitted = FALSE;
+ task = g_task_new (NULL, cancellable, return_on_cancel_atomic_callback, &callback_ran);
+@@ -1887,16 +1887,16 @@ test_return_on_cancel_atomic (void)
+ g_task_set_task_data (task, (gpointer)&state, NULL);
+ g_task_run_in_thread (task, return_on_cancel_atomic_thread);
+
+- g_assert_cmpint (state, ==, 0);
++ g_assert_cmpint (g_atomic_int_get (&state), ==, 0);
+
+- while (state == 0)
++ while (g_atomic_int_get (&state) == 0)
+ g_cond_wait (&roca_cond_1, &roca_mutex_1);
+- g_assert (state == 1);
++ g_assert_cmpint (g_atomic_int_get (&state), ==, 1);
+ g_assert (g_task_get_return_on_cancel (task));
+
+- while (state == 1)
++ while (g_atomic_int_get (&state) == 1)
+ g_cond_wait (&roca_cond_2, &roca_mutex_2);
+- g_assert (state == 2);
++ g_assert_cmpint (g_atomic_int_get (&state), ==, 2);
+ g_assert (!g_task_get_return_on_cancel (task));
+
+ g_cancellable_cancel (cancellable);
+@@ -1904,18 +1904,18 @@ test_return_on_cancel_atomic (void)
+ g_main_loop_run (loop);
+ g_assert (callback_ran == FALSE);
+
+- while (state == 2)
++ while (g_atomic_int_get (&state) == 2)
+ g_cond_wait (&roca_cond_1, &roca_mutex_1);
+- g_assert (state == 5);
++ g_assert_cmpint (g_atomic_int_get (&state), ==, 5);
+ g_assert (!g_task_get_return_on_cancel (task));
+
+ g_main_loop_run (loop);
+ g_assert (callback_ran == TRUE);
+ g_assert_true (notification_emitted);
+
+- while (state == 5)
++ while (g_atomic_int_get (&state) == 5)
+ g_cond_wait (&roca_cond_2, &roca_mutex_2);
+- g_assert (state == 7);
++ g_assert_cmpint (g_atomic_int_get (&state), ==, 7);
+
+ g_object_unref (cancellable);
+ g_mutex_unlock (&roca_mutex_1);
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0006-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0006-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch
new file mode 100644
index 000000000..7f22b4d46
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0006-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch
@@ -0,0 +1,35 @@
+From f4607def1695efb50eb49e0586eed0f5557935f2 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:20:37 +0000
+Subject: [PATCH 06/29] tests: Drop unnecessary volatile qualifiers from tests
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+These variables were already (correctly) accessed atomically. The
+`volatile` qualifier doesn’t help with that.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ gio/tests/g-file-info.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gio/tests/g-file-info.c b/gio/tests/g-file-info.c
+index 809b0ec79..1a02b5e0e 100644
+--- a/gio/tests/g-file-info.c
++++ b/gio/tests/g-file-info.c
+@@ -221,7 +221,7 @@ test_internal_enhanced_stdio (void)
+ guint64 size_p0, alsize_p0, size_ps, alsize_ps;
+ const gchar *id_p0;
+ const gchar *id_p1;
+- volatile guint64 time_p0;
++ guint64 time_p0;
+ gchar *tmp_dir;
+ wchar_t *programdata_dir_w;
+ wchar_t *users_dir_w;
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0007-gdbusconnection-Drop-unnecessary-volatile-qualifiers.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0007-gdbusconnection-Drop-unnecessary-volatile-qualifiers.patch
new file mode 100644
index 000000000..78753f821
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0007-gdbusconnection-Drop-unnecessary-volatile-qualifiers.patch
@@ -0,0 +1,111 @@
+From 33612404397f87f0cd45da90d3aa9ab60df895ee Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:24:28 +0000
+Subject: [PATCH 07/29] gdbusconnection: Drop unnecessary volatile qualifiers
+ from variables
+
+This should introduce no API changes; there are public functions
+exported by `GDBusConnection` which still have some (incorrectly)
+`volatile` arguments, but dropping those qualifiers would be an API
+break.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ gio/gdbusconnection.c | 22 +++++++++++-----------
+ 1 file changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/gio/gdbusconnection.c b/gio/gdbusconnection.c
+index ed8cf6219..91c365e80 100644
+--- a/gio/gdbusconnection.c
++++ b/gio/gdbusconnection.c
+@@ -393,7 +393,7 @@ struct _GDBusConnection
+ * FLAG_CLOSED is the closed property. It may be read at any time, but
+ * may only be written while holding @lock.
+ */
+- volatile gint atomic_flags;
++ gint atomic_flags; /* (atomic) */
+
+ /* If the connection could not be established during initable_init(),
+ * this GError will be set.
+@@ -1596,7 +1596,7 @@ static gboolean
+ g_dbus_connection_send_message_unlocked (GDBusConnection *connection,
+ GDBusMessage *message,
+ GDBusSendMessageFlags flags,
+- volatile guint32 *out_serial,
++ guint32 *out_serial,
+ GError **error)
+ {
+ guchar *blob;
+@@ -1741,7 +1741,7 @@ g_dbus_connection_send_message (GDBusConnection *connection,
+ g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
+
+ CONNECTION_LOCK (connection);
+- ret = g_dbus_connection_send_message_unlocked (connection, message, flags, out_serial, error);
++ ret = g_dbus_connection_send_message_unlocked (connection, message, flags, (guint32 *) out_serial, error);
+ CONNECTION_UNLOCK (connection);
+ return ret;
+ }
+@@ -1901,7 +1901,7 @@ g_dbus_connection_send_message_with_reply_unlocked (GDBusConnection *connect
+ GDBusMessage *message,
+ GDBusSendMessageFlags flags,
+ gint timeout_msec,
+- volatile guint32 *out_serial,
++ guint32 *out_serial,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+@@ -1909,7 +1909,7 @@ g_dbus_connection_send_message_with_reply_unlocked (GDBusConnection *connect
+ GTask *task;
+ SendMessageData *data;
+ GError *error = NULL;
+- volatile guint32 serial;
++ guint32 serial;
+
+ if (out_serial == NULL)
+ out_serial = &serial;
+@@ -2022,7 +2022,7 @@ g_dbus_connection_send_message_with_reply (GDBusConnection *connection,
+ message,
+ flags,
+ timeout_msec,
+- out_serial,
++ (guint32 *) out_serial,
+ cancellable,
+ callback,
+ user_data);
+@@ -3082,7 +3082,7 @@ g_dbus_connection_get_peer_credentials (GDBusConnection *connection)
+
+ /* ---------------------------------------------------------------------------------------------------- */
+
+-static volatile guint _global_filter_id = 1;
++static guint _global_filter_id = 1; /* (atomic) */
+
+ /**
+ * g_dbus_connection_add_filter:
+@@ -3327,9 +3327,9 @@ args_to_rule (const gchar *sender,
+ return g_string_free (rule, FALSE);
+ }
+
+-static volatile guint _global_subscriber_id = 1;
+-static volatile guint _global_registration_id = 1;
+-static volatile guint _global_subtree_registration_id = 1;
++static guint _global_subscriber_id = 1; /* (atomic) */
++static guint _global_registration_id = 1; /* (atomic) */
++static guint _global_subtree_registration_id = 1; /* (atomic) */
+
+ /* ---------------------------------------------------------------------------------------------------- */
+
+@@ -5992,7 +5992,7 @@ g_dbus_connection_call_sync_internal (GDBusConnection *connection,
+ message,
+ send_flags,
+ timeout_msec,
+- NULL, /* volatile guint32 *out_serial */
++ NULL, /* guint32 *out_serial */
+ cancellable,
+ &local_error);
+
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0008-gdbuserror-Drop-unnecessary-volatile-qualifiers-from.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0008-gdbuserror-Drop-unnecessary-volatile-qualifiers-from.patch
new file mode 100644
index 000000000..e947a264c
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0008-gdbuserror-Drop-unnecessary-volatile-qualifiers-from.patch
@@ -0,0 +1,95 @@
+From 7c7623c4a31fb0f2a7176c43acc728093818b58c Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:26:19 +0000
+Subject: [PATCH 08/29] gdbuserror: Drop unnecessary volatile qualifiers from
+ variables
+
+This should introduce no API changes. The
+`g_dbus_error_register_error_domain()` function still (incorrectly) has
+a `volatile` argument, but dropping that qualifier would be an API
+break.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ gio/gdbuserror.c | 28 +++++++++++++++++-----------
+ 1 file changed, 17 insertions(+), 11 deletions(-)
+
+diff --git a/gio/gdbuserror.c b/gio/gdbuserror.c
+index 682677354..b03a33f27 100644
+--- a/gio/gdbuserror.c
++++ b/gio/gdbuserror.c
+@@ -84,12 +84,12 @@
+ * GQuark
+ * foo_bar_error_quark (void)
+ * {
+- * static volatile gsize quark_volatile = 0;
++ * static gsize quark = 0;
+ * g_dbus_error_register_error_domain ("foo-bar-error-quark",
+- * &quark_volatile,
++ * &quark,
+ * foo_bar_error_entries,
+ * G_N_ELEMENTS (foo_bar_error_entries));
+- * return (GQuark) quark_volatile;
++ * return (GQuark) quark;
+ * }
+ * ]|
+ * With this setup, a D-Bus peer can transparently pass e.g. %FOO_BAR_ERROR_ANOTHER_ERROR and
+@@ -160,12 +160,12 @@ GQuark
+ g_dbus_error_quark (void)
+ {
+ G_STATIC_ASSERT (G_N_ELEMENTS (g_dbus_error_entries) - 1 == G_DBUS_ERROR_PROPERTY_READ_ONLY);
+- static volatile gsize quark_volatile = 0;
++ static gsize quark = 0;
+ g_dbus_error_register_error_domain ("g-dbus-error-quark",
+- &quark_volatile,
++ &quark,
+ g_dbus_error_entries,
+ G_N_ELEMENTS (g_dbus_error_entries));
+- return (GQuark) quark_volatile;
++ return (GQuark) quark;
+ }
+
+ /**
+@@ -185,25 +185,31 @@ g_dbus_error_register_error_domain (const gchar *error_domain_quark_na
+ const GDBusErrorEntry *entries,
+ guint num_entries)
+ {
++ gsize *quark;
++
+ g_return_if_fail (error_domain_quark_name != NULL);
+ g_return_if_fail (quark_volatile != NULL);
+ g_return_if_fail (entries != NULL);
+ g_return_if_fail (num_entries > 0);
+
+- if (g_once_init_enter (quark_volatile))
++ /* Drop the volatile qualifier, which should never have been on the argument
++ * in the first place. */
++ quark = (gsize *) quark_volatile;
++
++ if (g_once_init_enter (quark))
+ {
+ guint n;
+- GQuark quark;
++ GQuark new_quark;
+
+- quark = g_quark_from_static_string (error_domain_quark_name);
++ new_quark = g_quark_from_static_string (error_domain_quark_name);
+
+ for (n = 0; n < num_entries; n++)
+ {
+- g_warn_if_fail (g_dbus_error_register_error (quark,
++ g_warn_if_fail (g_dbus_error_register_error (new_quark,
+ entries[n].error_code,
+ entries[n].dbus_error_name));
+ }
+- g_once_init_leave (quark_volatile, quark);
++ g_once_init_leave (quark, new_quark);
+ }
+ }
+
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0009-gio-Drop-unnecessary-volatile-qualifiers-from-intern.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0009-gio-Drop-unnecessary-volatile-qualifiers-from-intern.patch
new file mode 100644
index 000000000..7897d43bb
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0009-gio-Drop-unnecessary-volatile-qualifiers-from-intern.patch
@@ -0,0 +1,207 @@
+From 74250cd9c9dfd3ad428e445c095ceac88ba18691 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:28:23 +0000
+Subject: [PATCH 09/29] gio: Drop unnecessary volatile qualifiers from internal
+ variables
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+These variables were already (correctly) accessed atomically. The
+`volatile` qualifier doesn’t help with that.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ gio/gdbusinterfaceskeleton.c | 2 +-
+ gio/gdbusintrospection.h | 14 +++++++-------
+ gio/gdbusnameowning.c | 4 ++--
+ gio/gdbusnamewatching.c | 4 ++--
+ gio/gdbusprivate.c | 10 +++++-----
+ gio/gnetworking.c | 2 +-
+ 6 files changed, 18 insertions(+), 18 deletions(-)
+
+diff --git a/gio/gdbusinterfaceskeleton.c b/gio/gdbusinterfaceskeleton.c
+index 243b4a0a4..76398df36 100644
+--- a/gio/gdbusinterfaceskeleton.c
++++ b/gio/gdbusinterfaceskeleton.c
+@@ -458,7 +458,7 @@ dbus_interface_interface_init (GDBusInterfaceIface *iface)
+
+ typedef struct
+ {
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ GDBusInterfaceSkeleton *interface;
+ GDBusInterfaceMethodCallFunc method_call_func;
+ GDBusMethodInvocation *invocation;
+diff --git a/gio/gdbusintrospection.h b/gio/gdbusintrospection.h
+index 14b171055..f2e291787 100644
+--- a/gio/gdbusintrospection.h
++++ b/gio/gdbusintrospection.h
+@@ -43,7 +43,7 @@ G_BEGIN_DECLS
+ struct _GDBusAnnotationInfo
+ {
+ /*< public >*/
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ gchar *key;
+ gchar *value;
+ GDBusAnnotationInfo **annotations;
+@@ -63,7 +63,7 @@ struct _GDBusAnnotationInfo
+ struct _GDBusArgInfo
+ {
+ /*< public >*/
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ gchar *name;
+ gchar *signature;
+ GDBusAnnotationInfo **annotations;
+@@ -84,7 +84,7 @@ struct _GDBusArgInfo
+ struct _GDBusMethodInfo
+ {
+ /*< public >*/
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ gchar *name;
+ GDBusArgInfo **in_args;
+ GDBusArgInfo **out_args;
+@@ -105,7 +105,7 @@ struct _GDBusMethodInfo
+ struct _GDBusSignalInfo
+ {
+ /*< public >*/
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ gchar *name;
+ GDBusArgInfo **args;
+ GDBusAnnotationInfo **annotations;
+@@ -126,7 +126,7 @@ struct _GDBusSignalInfo
+ struct _GDBusPropertyInfo
+ {
+ /*< public >*/
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ gchar *name;
+ gchar *signature;
+ GDBusPropertyInfoFlags flags;
+@@ -149,7 +149,7 @@ struct _GDBusPropertyInfo
+ struct _GDBusInterfaceInfo
+ {
+ /*< public >*/
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ gchar *name;
+ GDBusMethodInfo **methods;
+ GDBusSignalInfo **signals;
+@@ -172,7 +172,7 @@ struct _GDBusInterfaceInfo
+ struct _GDBusNodeInfo
+ {
+ /*< public >*/
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ gchar *path;
+ GDBusInterfaceInfo **interfaces;
+ GDBusNodeInfo **nodes;
+diff --git a/gio/gdbusnameowning.c b/gio/gdbusnameowning.c
+index d20e6ffed..1130d6789 100644
+--- a/gio/gdbusnameowning.c
++++ b/gio/gdbusnameowning.c
+@@ -55,7 +55,7 @@ typedef enum
+
+ typedef struct
+ {
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ guint id;
+ GBusNameOwnerFlags flags;
+ gchar *name;
+@@ -73,7 +73,7 @@ typedef struct
+ guint name_acquired_subscription_id;
+ guint name_lost_subscription_id;
+
+- volatile gboolean cancelled; /* must hold lock when reading or modifying */
++ gboolean cancelled; /* must hold lock when reading or modifying */
+
+ gboolean needs_release;
+ } Client;
+diff --git a/gio/gdbusnamewatching.c b/gio/gdbusnamewatching.c
+index bc2a9119e..8d24700c5 100644
+--- a/gio/gdbusnamewatching.c
++++ b/gio/gdbusnamewatching.c
+@@ -56,7 +56,7 @@ typedef enum
+
+ typedef struct
+ {
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ guint id;
+ gchar *name;
+ GBusNameWatcherFlags flags;
+@@ -78,7 +78,7 @@ typedef struct
+ } Client;
+
+ /* Must be accessed atomically. */
+-static volatile guint next_global_id = 1;
++static guint next_global_id = 1; /* (atomic) */
+
+ /* Must be accessed with @lock held. */
+ static GHashTable *map_id_to_client = NULL;
+diff --git a/gio/gdbusprivate.c b/gio/gdbusprivate.c
+index 2551e4791..99b37f3eb 100644
+--- a/gio/gdbusprivate.c
++++ b/gio/gdbusprivate.c
+@@ -265,7 +265,7 @@ ensure_required_types (void)
+
+ typedef struct
+ {
+- volatile gint refcount;
++ gint refcount; /* (atomic) */
+ GThread *thread;
+ GMainContext *context;
+ GMainLoop *loop;
+@@ -341,12 +341,12 @@ typedef enum {
+
+ struct GDBusWorker
+ {
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+
+ SharedThreadData *shared_thread_data;
+
+ /* really a boolean, but GLib 2.28 lacks atomic boolean ops */
+- volatile gint stopped;
++ gint stopped; /* (atomic) */
+
+ /* TODO: frozen (e.g. G_DBUS_CONNECTION_FLAGS_DELAY_MESSAGE_PROCESSING) currently
+ * only affects messages received from the other peer (since GDBusServer is the
+@@ -1941,11 +1941,11 @@ _g_dbus_debug_print_unlock (void)
+ void
+ _g_dbus_initialize (void)
+ {
+- static volatile gsize initialized = 0;
++ static gsize initialized = 0;
+
+ if (g_once_init_enter (&initialized))
+ {
+- volatile GQuark g_dbus_error_domain;
++ GQuark g_dbus_error_domain;
+ const gchar *debug;
+
+ g_dbus_error_domain = G_DBUS_ERROR;
+diff --git a/gio/gnetworking.c b/gio/gnetworking.c
+index 05507fe70..7bc6d73c4 100644
+--- a/gio/gnetworking.c
++++ b/gio/gnetworking.c
+@@ -61,7 +61,7 @@ void
+ g_networking_init (void)
+ {
+ #ifdef G_OS_WIN32
+- static volatile gsize inited = 0;
++ static gsize inited = 0;
+
+ if (g_once_init_enter (&inited))
+ {
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0010-kqueue-Fix-unlocked-access-to-shared-variable.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0010-kqueue-Fix-unlocked-access-to-shared-variable.patch
new file mode 100644
index 000000000..e52b70942
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0010-kqueue-Fix-unlocked-access-to-shared-variable.patch
@@ -0,0 +1,51 @@
+From e4e88688a0722237effc56cc21438d0c8e82de88 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:29:26 +0000
+Subject: [PATCH 10/29] kqueue: Fix unlocked access to shared variable
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+And drop the `volatile` qualifier because it doesn’t help.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ gio/kqueue/kqueue-missing.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/gio/kqueue/kqueue-missing.c b/gio/kqueue/kqueue-missing.c
+index 37af82e5b..d1ffdf4bd 100644
+--- a/gio/kqueue/kqueue-missing.c
++++ b/gio/kqueue/kqueue-missing.c
+@@ -34,7 +34,7 @@ static gboolean km_debug_enabled = FALSE;
+ static GSList *missing_subs_list = NULL;
+ G_LOCK_DEFINE_STATIC (missing_lock);
+
+-static volatile gboolean scan_missing_running = FALSE;
++static gboolean scan_missing_running = FALSE; /* must be accessed under @missing_lock */
+
+
+ static gboolean
+@@ -62,7 +62,6 @@ _km_add_missing (kqueue_sub *sub)
+
+ KM_W ("adding %s to missing list\n", sub->filename);
+ missing_subs_list = g_slist_prepend (missing_subs_list, sub);
+- G_UNLOCK (missing_lock);
+
+ if (!scan_missing_running)
+ {
+@@ -73,6 +72,8 @@ _km_add_missing (kqueue_sub *sub)
+ g_source_attach (source, GLIB_PRIVATE_CALL (g_get_worker_context) ());
+ g_source_unref (source);
+ }
++
++ G_UNLOCK (missing_lock);
+ }
+
+ /**
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0011-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0011-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch
new file mode 100644
index 000000000..ea3fd9f6e
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0011-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch
@@ -0,0 +1,126 @@
+From 7cdb68713c1863a27ad82d801756ec74097e8e87 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:30:36 +0000
+Subject: [PATCH 11/29] tests: Drop unnecessary volatile qualifiers from tests
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+These variables were already (correctly) accessed atomically. The
+`volatile` qualifier doesn’t help with that.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ tests/gobject/performance-threaded.c | 2 +-
+ tests/gobject/performance.c | 4 ++--
+ tests/onceinit.c | 16 ++++++++--------
+ 3 files changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/tests/gobject/performance-threaded.c b/tests/gobject/performance-threaded.c
+index 30ea5bd80..c98541d66 100644
+--- a/tests/gobject/performance-threaded.c
++++ b/tests/gobject/performance-threaded.c
+@@ -52,7 +52,7 @@ static GType liststore_interfaces[6];
+ static gpointer
+ register_types (void)
+ {
+- static volatile gsize inited = 0;
++ static gsize inited = 0;
+ if (g_once_init_enter (&inited))
+ {
+ liststore_interfaces[0] = simple_register_class ("GtkBuildable", G_TYPE_INTERFACE, 0);
+diff --git a/tests/gobject/performance.c b/tests/gobject/performance.c
+index 236ffaed0..163be58b4 100644
+--- a/tests/gobject/performance.c
++++ b/tests/gobject/performance.c
+@@ -575,8 +575,8 @@ test_type_check_run (PerformanceTest *test,
+ gpointer _data)
+ {
+ struct TypeCheckTest *data = _data;
+- volatile GObject *object = data->object;
+- volatile GType type, types[5];
++ GObject *object = data->object;
++ GType type, types[5];
+ int i, j;
+
+ types[0] = test_iface1_get_type ();
+diff --git a/tests/onceinit.c b/tests/onceinit.c
+index 89ba6a136..9788efcbd 100644
+--- a/tests/onceinit.c
++++ b/tests/onceinit.c
+@@ -25,13 +25,13 @@
+
+ static GMutex tmutex;
+ static GCond tcond;
+-static volatile int thread_call_count = 0;
++static int thread_call_count = 0; /* (atomic) */
+ static char dummy_value = 'x';
+
+ static void
+ assert_singleton_execution1 (void)
+ {
+- static volatile int seen_execution = 0;
++ static int seen_execution = 0; /* (atomic) */
+ int old_seen_execution = g_atomic_int_add (&seen_execution, 1);
+ if (old_seen_execution != 0)
+ g_error ("%s: function executed more than once", G_STRFUNC);
+@@ -40,7 +40,7 @@ assert_singleton_execution1 (void)
+ static void
+ assert_singleton_execution2 (void)
+ {
+- static volatile int seen_execution = 0;
++ static int seen_execution = 0; /* (atomic) */
+ int old_seen_execution = g_atomic_int_add (&seen_execution, 1);
+ if (old_seen_execution != 0)
+ g_error ("%s: function executed more than once", G_STRFUNC);
+@@ -49,7 +49,7 @@ assert_singleton_execution2 (void)
+ static void
+ assert_singleton_execution3 (void)
+ {
+- static volatile int seen_execution = 0;
++ static int seen_execution = 0; /* (atomic) */
+ int old_seen_execution = g_atomic_int_add (&seen_execution, 1);
+ if (old_seen_execution != 0)
+ g_error ("%s: function executed more than once", G_STRFUNC);
+@@ -58,7 +58,7 @@ assert_singleton_execution3 (void)
+ static void
+ initializer1 (void)
+ {
+- static volatile gsize initialized = 0;
++ static gsize initialized = 0;
+ if (g_once_init_enter (&initialized))
+ {
+ gsize initval = 42;
+@@ -70,7 +70,7 @@ initializer1 (void)
+ static gpointer
+ initializer2 (void)
+ {
+- static volatile gsize initialized = 0;
++ static gsize initialized = 0;
+ if (g_once_init_enter (&initialized))
+ {
+ void *pointer_value = &dummy_value;
+@@ -83,7 +83,7 @@ initializer2 (void)
+ static void
+ initializer3 (void)
+ {
+- static volatile gsize initialized = 0;
++ static gsize initialized = 0;
+ if (g_once_init_enter (&initialized))
+ {
+ gsize initval = 42;
+@@ -163,7 +163,7 @@ main (int argc,
+ static void \
+ test_initializer_##N (void) \
+ { \
+- static volatile gsize initialized = 0; \
++ static gsize initialized = 0; \
+ if (g_once_init_enter (&initialized)) \
+ { \
+ g_free (g_strdup_printf ("cpuhog%5d", 1)); \
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0012-tests-Fix-non-atomic-access-to-some-shared-variables.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0012-tests-Fix-non-atomic-access-to-some-shared-variables.patch
new file mode 100644
index 000000000..be7fcba8c
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0012-tests-Fix-non-atomic-access-to-some-shared-variables.patch
@@ -0,0 +1,103 @@
+From 1a7f0002a052725fb646e136fadd5dad66222d7f Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:31:01 +0000
+Subject: [PATCH 12/29] tests: Fix non-atomic access to some shared variables
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+And drop the `volatile` qualifier from the variables, as that doesn’t
+help with thread safety.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ tests/refcount/objects.c | 8 ++++----
+ tests/refcount/properties3.c | 8 ++++----
+ 2 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/tests/refcount/objects.c b/tests/refcount/objects.c
+index 963766d00..0c471a42b 100644
+--- a/tests/refcount/objects.c
++++ b/tests/refcount/objects.c
+@@ -26,7 +26,7 @@ struct _GTestClass
+ };
+
+ static GType my_test_get_type (void);
+-static volatile gboolean stopping;
++static gint stopping; /* (atomic) */
+
+ static void my_test_class_init (GTestClass * klass);
+ static void my_test_init (GTest * test);
+@@ -101,7 +101,7 @@ run_thread (GTest * test)
+ {
+ gint i = 1;
+
+- while (!stopping) {
++ while (!g_atomic_int_get (&stopping)) {
+ my_test_do_refcount (test);
+ if ((i++ % 10000) == 0) {
+ g_print (".");
+@@ -128,7 +128,7 @@ main (int argc, char **argv)
+
+ test_threads = g_array_new (FALSE, FALSE, sizeof (GThread *));
+
+- stopping = FALSE;
++ g_atomic_int_set (&stopping, 0);
+
+ for (i = 0; i < n_threads; i++) {
+ GThread *thread;
+@@ -141,7 +141,7 @@ main (int argc, char **argv)
+ }
+ g_usleep (5000000);
+
+- stopping = TRUE;
++ g_atomic_int_set (&stopping, 1);
+
+ g_print ("\nstopping\n");
+
+diff --git a/tests/refcount/properties3.c b/tests/refcount/properties3.c
+index bc8820661..31f26a46e 100644
+--- a/tests/refcount/properties3.c
++++ b/tests/refcount/properties3.c
+@@ -34,7 +34,7 @@ struct _GTestClass
+ static GType my_test_get_type (void);
+ G_DEFINE_TYPE (GTest, my_test, G_TYPE_OBJECT)
+
+-static volatile gboolean stopping;
++static gint stopping; /* (atomic) */
+
+ static void my_test_get_property (GObject *object,
+ guint prop_id,
+@@ -140,7 +140,7 @@ run_thread (GTest * test)
+ {
+ gint i = 1;
+
+- while (!stopping) {
++ while (!g_atomic_int_get (&stopping)) {
+ my_test_do_property (test);
+ if ((i++ % 10000) == 0)
+ {
+@@ -170,7 +170,7 @@ main (int argc, char **argv)
+
+ test_threads = g_array_new (FALSE, FALSE, sizeof (GThread *));
+
+- stopping = FALSE;
++ g_atomic_int_set (&stopping, 0);
+
+ for (i = 0; i < n_threads; i++) {
+ GThread *thread;
+@@ -180,7 +180,7 @@ main (int argc, char **argv)
+ }
+ g_usleep (30000000);
+
+- stopping = TRUE;
++ g_atomic_int_set (&stopping, 1);
+ g_print ("\nstopping\n");
+
+ /* join all threads */
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0013-gatomic-Drop-unnecessary-volatile-qualifiers-from-in.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0013-gatomic-Drop-unnecessary-volatile-qualifiers-from-in.patch
new file mode 100644
index 000000000..efc6817bd
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0013-gatomic-Drop-unnecessary-volatile-qualifiers-from-in.patch
@@ -0,0 +1,180 @@
+From 3c648457c284b4ba313b8591008d2e18ae4335eb Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:36:37 +0000
+Subject: [PATCH 13/29] gatomic: Drop unnecessary volatile qualifiers from
+ internal variables
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+It’s not necessary and provides no thread safety guarantees.
+
+The `volatile` qualifiers on the function arguments have to be kept, as
+they are (unfortunately) part of the API.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ glib/gatomic.c | 34 +++++++++++++++++-----------------
+ 1 file changed, 17 insertions(+), 17 deletions(-)
+
+diff --git a/glib/gatomic.c b/glib/gatomic.c
+index 8b8c6453d..67f5ba6b4 100644
+--- a/glib/gatomic.c
++++ b/glib/gatomic.c
+@@ -316,7 +316,7 @@ guint
+ gpointer
+ (g_atomic_pointer_get) (const volatile void *atomic)
+ {
+- return g_atomic_pointer_get ((const volatile gpointer *) atomic);
++ return g_atomic_pointer_get ((gpointer *) atomic);
+ }
+
+ /**
+@@ -335,7 +335,7 @@ void
+ (g_atomic_pointer_set) (volatile void *atomic,
+ gpointer newval)
+ {
+- g_atomic_pointer_set ((volatile gpointer *) atomic, newval);
++ g_atomic_pointer_set ((gpointer *) atomic, newval);
+ }
+
+ /**
+@@ -363,7 +363,7 @@ gboolean
+ gpointer oldval,
+ gpointer newval)
+ {
+- return g_atomic_pointer_compare_and_exchange ((volatile gpointer *) atomic,
++ return g_atomic_pointer_compare_and_exchange ((gpointer *) atomic,
+ oldval, newval);
+ }
+
+@@ -387,7 +387,7 @@ gssize
+ (g_atomic_pointer_add) (volatile void *atomic,
+ gssize val)
+ {
+- return g_atomic_pointer_add ((volatile gpointer *) atomic, val);
++ return g_atomic_pointer_add ((gpointer *) atomic, val);
+ }
+
+ /**
+@@ -411,7 +411,7 @@ gsize
+ (g_atomic_pointer_and) (volatile void *atomic,
+ gsize val)
+ {
+- return g_atomic_pointer_and ((volatile gpointer *) atomic, val);
++ return g_atomic_pointer_and ((gpointer *) atomic, val);
+ }
+
+ /**
+@@ -435,7 +435,7 @@ gsize
+ (g_atomic_pointer_or) (volatile void *atomic,
+ gsize val)
+ {
+- return g_atomic_pointer_or ((volatile gpointer *) atomic, val);
++ return g_atomic_pointer_or ((gpointer *) atomic, val);
+ }
+
+ /**
+@@ -459,7 +459,7 @@ gsize
+ (g_atomic_pointer_xor) (volatile void *atomic,
+ gsize val)
+ {
+- return g_atomic_pointer_xor ((volatile gpointer *) atomic, val);
++ return g_atomic_pointer_xor ((gpointer *) atomic, val);
+ }
+
+ #elif defined (G_PLATFORM_WIN32)
+@@ -591,7 +591,7 @@ guint
+ gpointer
+ (g_atomic_pointer_get) (const volatile void *atomic)
+ {
+- const volatile gpointer *ptr = atomic;
++ const gpointer *ptr = atomic;
+
+ MemoryBarrier ();
+ return *ptr;
+@@ -601,7 +601,7 @@ void
+ (g_atomic_pointer_set) (volatile void *atomic,
+ gpointer newval)
+ {
+- volatile gpointer *ptr = atomic;
++ gpointer *ptr = atomic;
+
+ *ptr = newval;
+ MemoryBarrier ();
+@@ -797,7 +797,7 @@ guint
+ gpointer
+ (g_atomic_pointer_get) (const volatile void *atomic)
+ {
+- const volatile gpointer *ptr = atomic;
++ const gpointer *ptr = atomic;
+ gpointer value;
+
+ pthread_mutex_lock (&g_atomic_lock);
+@@ -811,7 +811,7 @@ void
+ (g_atomic_pointer_set) (volatile void *atomic,
+ gpointer newval)
+ {
+- volatile gpointer *ptr = atomic;
++ gpointer *ptr = atomic;
+
+ pthread_mutex_lock (&g_atomic_lock);
+ *ptr = newval;
+@@ -823,7 +823,7 @@ gboolean
+ gpointer oldval,
+ gpointer newval)
+ {
+- volatile gpointer *ptr = atomic;
++ gpointer *ptr = atomic;
+ gboolean success;
+
+ pthread_mutex_lock (&g_atomic_lock);
+@@ -840,7 +840,7 @@ gssize
+ (g_atomic_pointer_add) (volatile void *atomic,
+ gssize val)
+ {
+- volatile gssize *ptr = atomic;
++ gssize *ptr = atomic;
+ gssize oldval;
+
+ pthread_mutex_lock (&g_atomic_lock);
+@@ -855,7 +855,7 @@ gsize
+ (g_atomic_pointer_and) (volatile void *atomic,
+ gsize val)
+ {
+- volatile gsize *ptr = atomic;
++ gsize *ptr = atomic;
+ gsize oldval;
+
+ pthread_mutex_lock (&g_atomic_lock);
+@@ -870,7 +870,7 @@ gsize
+ (g_atomic_pointer_or) (volatile void *atomic,
+ gsize val)
+ {
+- volatile gsize *ptr = atomic;
++ gsize *ptr = atomic;
+ gsize oldval;
+
+ pthread_mutex_lock (&g_atomic_lock);
+@@ -885,7 +885,7 @@ gsize
+ (g_atomic_pointer_xor) (volatile void *atomic,
+ gsize val)
+ {
+- volatile gsize *ptr = atomic;
++ gsize *ptr = atomic;
+ gsize oldval;
+
+ pthread_mutex_lock (&g_atomic_lock);
+@@ -915,5 +915,5 @@ gint
+ g_atomic_int_exchange_and_add (volatile gint *atomic,
+ gint val)
+ {
+- return (g_atomic_int_add) (atomic, val);
++ return (g_atomic_int_add) ((gint *) atomic, val);
+ }
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0014-gatomic-Drop-unnecessary-volatile-qualifiers-from-ma.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0014-gatomic-Drop-unnecessary-volatile-qualifiers-from-ma.patch
new file mode 100644
index 000000000..bcc06e05c
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0014-gatomic-Drop-unnecessary-volatile-qualifiers-from-ma.patch
@@ -0,0 +1,56 @@
+From 9474655eb21d64519b293e780bb686976cbdb790 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:38:36 +0000
+Subject: [PATCH 14/29] gatomic: Drop unnecessary volatile qualifiers from
+ macro variables
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+It’s not necessary and provides no thread safety guarantees.
+
+The `volatile` qualifiers on the function arguments have to be kept, as
+they are (unfortunately) part of the API.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ glib/gatomic.h | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/glib/gatomic.h b/glib/gatomic.h
+index bb1435c70..e6eccfada 100644
+--- a/glib/gatomic.h
++++ b/glib/gatomic.h
+@@ -211,7 +211,7 @@ G_END_DECLS
+ }))
+ #define g_atomic_pointer_and(atomic, val) \
+ (G_GNUC_EXTENSION ({ \
+- volatile gsize *gapa_atomic = (volatile gsize *) (atomic); \
++ gsize *gapa_atomic = (gsize *) (atomic); \
+ G_STATIC_ASSERT (sizeof *(atomic) == sizeof (gpointer)); \
+ G_STATIC_ASSERT (sizeof *(atomic) == sizeof (gsize)); \
+ (void) (0 ? (gpointer) *(atomic) : NULL); \
+@@ -220,7 +220,7 @@ G_END_DECLS
+ }))
+ #define g_atomic_pointer_or(atomic, val) \
+ (G_GNUC_EXTENSION ({ \
+- volatile gsize *gapo_atomic = (volatile gsize *) (atomic); \
++ gsize *gapo_atomic = (gsize *) (atomic); \
+ G_STATIC_ASSERT (sizeof *(atomic) == sizeof (gpointer)); \
+ G_STATIC_ASSERT (sizeof *(atomic) == sizeof (gsize)); \
+ (void) (0 ? (gpointer) *(atomic) : NULL); \
+@@ -229,7 +229,7 @@ G_END_DECLS
+ }))
+ #define g_atomic_pointer_xor(atomic, val) \
+ (G_GNUC_EXTENSION ({ \
+- volatile gsize *gapx_atomic = (volatile gsize *) (atomic); \
++ gsize *gapx_atomic = (gsize *) (atomic); \
+ G_STATIC_ASSERT (sizeof *(atomic) == sizeof (gpointer)); \
+ G_STATIC_ASSERT (sizeof *(atomic) == sizeof (gsize)); \
+ (void) (0 ? (gpointer) *(atomic) : NULL); \
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0015-glib-Drop-unnecessary-volatile-qualifiers-from-inter.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0015-glib-Drop-unnecessary-volatile-qualifiers-from-inter.patch
new file mode 100644
index 000000000..9468548e3
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0015-glib-Drop-unnecessary-volatile-qualifiers-from-inter.patch
@@ -0,0 +1,169 @@
+From 1314ff93fc4d3379483c33da6a7deff27f71ed95 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:40:56 +0000
+Subject: [PATCH 15/29] glib: Drop unnecessary volatile qualifiers from
+ internal variables
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+These variables were already (correctly) accessed atomically. The
+`volatile` qualifier doesn’t help with that.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ glib/gdatetime.c | 2 +-
+ glib/gkeyfile.c | 2 +-
+ glib/gmain.c | 8 ++++----
+ glib/gmarkup.c | 2 +-
+ glib/gregex.c | 6 +++---
+ glib/gthread.c | 6 +++---
+ 6 files changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/glib/gdatetime.c b/glib/gdatetime.c
+index 1755257be..453077f6d 100644
+--- a/glib/gdatetime.c
++++ b/glib/gdatetime.c
+@@ -126,7 +126,7 @@ struct _GDateTime
+ /* 1 is 0001-01-01 in Proleptic Gregorian */
+ gint32 days;
+
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ };
+
+ /* Time conversion {{{1 */
+diff --git a/glib/gkeyfile.c b/glib/gkeyfile.c
+index 9d0215331..bbe638b74 100644
+--- a/glib/gkeyfile.c
++++ b/glib/gkeyfile.c
+@@ -512,7 +512,7 @@ struct _GKeyFile
+
+ gchar **locales;
+
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ };
+
+ typedef struct _GKeyFileKeyValuePair GKeyFileKeyValuePair;
+diff --git a/glib/gmain.c b/glib/gmain.c
+index 772b8ecfc..9c5f0ef1e 100644
+--- a/glib/gmain.c
++++ b/glib/gmain.c
+@@ -272,7 +272,7 @@ struct _GMainContext
+ guint owner_count;
+ GSList *waiters;
+
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+
+ GHashTable *sources; /* guint -> GSource */
+
+@@ -303,7 +303,7 @@ struct _GMainContext
+
+ struct _GSourceCallback
+ {
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ GSourceFunc func;
+ gpointer data;
+ GDestroyNotify notify;
+@@ -313,7 +313,7 @@ struct _GMainLoop
+ {
+ GMainContext *context;
+ gboolean is_running; /* (atomic) */
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+ };
+
+ struct _GTimeoutSource
+@@ -4749,7 +4749,7 @@ g_main_context_get_poll_func (GMainContext *context)
+ *
+ * |[<!-- language="C" -->
+ * #define NUM_TASKS 10
+- * static volatile gint tasks_remaining = NUM_TASKS;
++ * static gint tasks_remaining = NUM_TASKS; // (atomic)
+ * ...
+ *
+ * while (g_atomic_int_get (&tasks_remaining) != 0)
+diff --git a/glib/gmarkup.c b/glib/gmarkup.c
+index ba4dfd2e4..b8327fb6d 100644
+--- a/glib/gmarkup.c
++++ b/glib/gmarkup.c
+@@ -119,7 +119,7 @@ struct _GMarkupParseContext
+ {
+ const GMarkupParser *parser;
+
+- volatile gint ref_count;
++ gint ref_count; /* (atomic) */
+
+ GMarkupParseFlags flags;
+
+diff --git a/glib/gregex.c b/glib/gregex.c
+index 52416bbb9..5e6ddfb46 100644
+--- a/glib/gregex.c
++++ b/glib/gregex.c
+@@ -203,7 +203,7 @@ G_STATIC_ASSERT (G_REGEX_RAW == PCRE_UTF8);
+
+ struct _GMatchInfo
+ {
+- volatile gint ref_count; /* the ref count */
++ gint ref_count; /* the ref count (atomic) */
+ GRegex *regex; /* the regex */
+ GRegexMatchFlags match_opts; /* options used at match time on the regex */
+ gint matches; /* number of matching sub patterns */
+@@ -218,7 +218,7 @@ struct _GMatchInfo
+
+ struct _GRegex
+ {
+- volatile gint ref_count; /* the ref count for the immutable part */
++ gint ref_count; /* the ref count for the immutable part (atomic) */
+ gchar *pattern; /* the pattern */
+ pcre *pcre_re; /* compiled form of the pattern */
+ GRegexCompileFlags compile_opts; /* options used at compile time on the pattern */
+@@ -1300,7 +1300,7 @@ g_regex_new (const gchar *pattern,
+ pcre *re;
+ const gchar *errmsg;
+ gboolean optimize = FALSE;
+- static volatile gsize initialised = 0;
++ static gsize initialised = 0;
+
+ g_return_val_if_fail (pattern != NULL, NULL);
+ g_return_val_if_fail (error == NULL || *error == NULL, NULL);
+diff --git a/glib/gthread.c b/glib/gthread.c
+index 53f3a0848..612a9739f 100644
+--- a/glib/gthread.c
++++ b/glib/gthread.c
+@@ -513,7 +513,7 @@ static GMutex g_once_mutex;
+ static GCond g_once_cond;
+ static GSList *g_once_init_list = NULL;
+
+-static volatile guint g_thread_n_created_counter = 0;
++static guint g_thread_n_created_counter = 0; /* (atomic) */
+
+ static void g_thread_cleanup (gpointer data);
+ static GPrivate g_thread_specific_private = G_PRIVATE_INIT (g_thread_cleanup);
+@@ -694,7 +694,7 @@ g_once_impl (GOnce *once,
+ gboolean
+ (g_once_init_enter) (volatile void *location)
+ {
+- volatile gsize *value_location = location;
++ gsize *value_location = (gsize *) location;
+ gboolean need_init = FALSE;
+ g_mutex_lock (&g_once_mutex);
+ if (g_atomic_pointer_get (value_location) == 0)
+@@ -731,7 +731,7 @@ void
+ (g_once_init_leave) (volatile void *location,
+ gsize result)
+ {
+- volatile gsize *value_location = location;
++ gsize *value_location = (gsize *) location;
+
+ g_return_if_fail (g_atomic_pointer_get (value_location) == 0);
+ g_return_if_fail (result != 0);
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0016-gobject-Drop-unnecessary-volatile-qualifiers-from-in.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0016-gobject-Drop-unnecessary-volatile-qualifiers-from-in.patch
new file mode 100644
index 000000000..8111b3b51
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0016-gobject-Drop-unnecessary-volatile-qualifiers-from-in.patch
@@ -0,0 +1,126 @@
+From 08d04d0428cc26935a2d42083f1710432465c98a Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 18:42:43 +0000
+Subject: [PATCH 16/29] gobject: Drop unnecessary volatile qualifiers from
+ internal variables
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+These variables were already (correctly) accessed atomically. The
+`volatile` qualifier doesn’t help with that.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ gobject/gclosure.c | 2 +-
+ gobject/gclosure.h | 20 ++++++++++----------
+ gobject/gobject.c | 4 ++--
+ gobject/gtype.c | 10 +++++-----
+ 4 files changed, 18 insertions(+), 18 deletions(-)
+
+diff --git a/gobject/gclosure.c b/gobject/gclosure.c
+index 1d1f2f48a..6d41e6d8a 100644
+--- a/gobject/gclosure.c
++++ b/gobject/gclosure.c
+@@ -98,7 +98,7 @@
+
+ typedef union {
+ GClosure closure;
+- volatile gint vint;
++ gint vint;
+ } ClosureInt;
+
+ #define CHANGE_FIELD(_closure, _field, _OP, _value, _must_set, _SET_OLD, _SET_NEW) \
+diff --git a/gobject/gclosure.h b/gobject/gclosure.h
+index a0f91f538..884e403a8 100644
+--- a/gobject/gclosure.h
++++ b/gobject/gclosure.h
+@@ -175,20 +175,20 @@ struct _GClosureNotifyData
+ struct _GClosure
+ {
+ /*< private >*/
+- volatile guint ref_count : 15;
++ guint ref_count : 15; /* (atomic) */
+ /* meta_marshal is not used anymore but must be zero for historical reasons
+ as it was exposed in the G_CLOSURE_N_NOTIFIERS macro */
+- volatile guint meta_marshal_nouse : 1;
+- volatile guint n_guards : 1;
+- volatile guint n_fnotifiers : 2; /* finalization notifiers */
+- volatile guint n_inotifiers : 8; /* invalidation notifiers */
+- volatile guint in_inotify : 1;
+- volatile guint floating : 1;
++ guint meta_marshal_nouse : 1; /* (atomic) */
++ guint n_guards : 1; /* (atomic) */
++ guint n_fnotifiers : 2; /* finalization notifiers (atomic) */
++ guint n_inotifiers : 8; /* invalidation notifiers (atomic) */
++ guint in_inotify : 1; /* (atomic) */
++ guint floating : 1; /* (atomic) */
+ /*< protected >*/
+- volatile guint derivative_flag : 1;
++ guint derivative_flag : 1; /* (atomic) */
+ /*< public >*/
+- volatile guint in_marshal : 1;
+- volatile guint is_invalid : 1;
++ guint in_marshal : 1; /* (atomic) */
++ guint is_invalid : 1; /* (atomic) */
+
+ /*< private >*/ void (*marshal) (GClosure *closure,
+ GValue /*out*/ *return_value,
+diff --git a/gobject/gobject.c b/gobject/gobject.c
+index 6e9c44a1e..a3a32be9f 100644
+--- a/gobject/gobject.c
++++ b/gobject/gobject.c
+@@ -174,9 +174,9 @@ typedef struct
+ GTypeInstance g_type_instance;
+
+ /*< private >*/
+- volatile guint ref_count;
++ guint ref_count; /* (atomic) */
+ #ifdef HAVE_OPTIONAL_FLAGS
+- volatile guint optional_flags;
++ guint optional_flags; /* (atomic) */
+ #endif
+ GData *qdata;
+ } GObjectReal;
+diff --git a/gobject/gtype.c b/gobject/gtype.c
+index 51dad7690..be5989a3e 100644
+--- a/gobject/gtype.c
++++ b/gobject/gtype.c
+@@ -221,9 +221,9 @@ typedef enum
+ /* --- structures --- */
+ struct _TypeNode
+ {
+- guint volatile ref_count;
++ guint ref_count; /* (atomic) */
+ #ifdef G_ENABLE_DEBUG
+- guint volatile instance_count;
++ guint instance_count; /* (atomic) */
+ #endif
+ GTypePlugin *plugin;
+ guint n_children; /* writable with lock */
+@@ -233,7 +233,7 @@ struct _TypeNode
+ guint is_instantiatable : 1;
+ guint mutatable_check_cache : 1; /* combines some common path checks */
+ GType *children; /* writable with lock */
+- TypeData * volatile data;
++ TypeData *data;
+ GQuark qname;
+ GData *global_gdata;
+ union {
+@@ -569,8 +569,8 @@ type_node_new_W (TypeNode *pnode,
+ }
+
+ static inline IFaceEntry*
+-lookup_iface_entry_I (volatile IFaceEntries *entries,
+- TypeNode *iface_node)
++lookup_iface_entry_I (IFaceEntries *entries,
++ TypeNode *iface_node)
+ {
+ guint8 *offsets;
+ guint offset_index;
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0017-gmessages-Drop-unnecessary-volatile-qualifiers-from-.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0017-gmessages-Drop-unnecessary-volatile-qualifiers-from-.patch
new file mode 100644
index 000000000..02816a887
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0017-gmessages-Drop-unnecessary-volatile-qualifiers-from-.patch
@@ -0,0 +1,44 @@
+From eee7e3c6688f2f1ee9beed5d6d209973c1df387e Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 19:14:25 +0000
+Subject: [PATCH 17/29] gmessages: Drop unnecessary volatile qualifiers from
+ macro variables
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+It’s not necessary and provides no thread safety guarantees.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ glib/gmessages.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/glib/gmessages.h b/glib/gmessages.h
+index 6a28443b4..2e3650baf 100644
+--- a/glib/gmessages.h
++++ b/glib/gmessages.h
+@@ -478,7 +478,7 @@ g_debug (const gchar *format,
+ #if defined(G_HAVE_ISO_VARARGS) && !G_ANALYZER_ANALYZING
+ #define g_warning_once(...) \
+ G_STMT_START { \
+- static volatile int G_PASTE (_GWarningOnceBoolean, __LINE__) = 0; \
++ static int G_PASTE (_GWarningOnceBoolean, __LINE__) = 0; /* (atomic) */ \
+ if (g_atomic_int_compare_and_exchange (&G_PASTE (_GWarningOnceBoolean, __LINE__), \
+ 0, 1)) \
+ g_warning (__VA_ARGS__); \
+@@ -487,7 +487,7 @@ g_debug (const gchar *format,
+ #elif defined(G_HAVE_GNUC_VARARGS) && !G_ANALYZER_ANALYZING
+ #define g_warning_once(format...) \
+ G_STMT_START { \
+- static volatile int G_PASTE (_GWarningOnceBoolean, __LINE__) = 0; \
++ static int G_PASTE (_GWarningOnceBoolean, __LINE__) = 0; /* (atomic) */ \
+ if (g_atomic_int_compare_and_exchange (&G_PASTE (_GWarningOnceBoolean, __LINE__), \
+ 0, 1)) \
+ g_warning (format); \
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0018-gtypes-Drop-volatile-qualifier-from-gatomicrefcount.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0018-gtypes-Drop-volatile-qualifier-from-gatomicrefcount.patch
new file mode 100644
index 000000000..50cb3c470
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0018-gtypes-Drop-volatile-qualifier-from-gatomicrefcount.patch
@@ -0,0 +1,35 @@
+From 8a87069ff42a0631dce153701cb2ec5e343a958c Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 19:16:30 +0000
+Subject: [PATCH 18/29] gtypes: Drop volatile qualifier from gatomicrefcount
+
+This is technically an API break, but since the type is meant to be
+opaque (third party code is not meant to treat it like an integer) it
+should not cause problems.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ glib/gtypes.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/glib/gtypes.h b/glib/gtypes.h
+index 23c5a1295..2c4825582 100644
+--- a/glib/gtypes.h
++++ b/glib/gtypes.h
+@@ -550,8 +550,8 @@ struct _GTimeVal
+ glong tv_usec;
+ } GLIB_DEPRECATED_TYPE_IN_2_62_FOR(GDateTime);
+
+-typedef gint grefcount;
+-typedef volatile gint gatomicrefcount;
++typedef gint grefcount;
++typedef gint gatomicrefcount; /* should be accessed only using atomics */
+
+ G_END_DECLS
+
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0019-gatomicarray-Drop-volatile-qualifier-from-GAtomicArr.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0019-gatomicarray-Drop-volatile-qualifier-from-GAtomicArr.patch
new file mode 100644
index 000000000..be3211664
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0019-gatomicarray-Drop-volatile-qualifier-from-GAtomicArr.patch
@@ -0,0 +1,44 @@
+From 46bae4f18dfec8fedda82648091752d270b2dff8 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 19:19:20 +0000
+Subject: [PATCH 19/29] gatomicarray: Drop volatile qualifier from GAtomicArray
+ API
+
+This is an API break, but it should not affect third party code since
+that code should not be interacting with the `data` member in a way that
+invokes its `volatile` qualifier (such as copying to an intermediate
+variable).
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ gobject/gatomicarray.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/gobject/gatomicarray.h b/gobject/gatomicarray.h
+index 9550fa396..89043c5e4 100644
+--- a/gobject/gatomicarray.h
++++ b/gobject/gatomicarray.h
+@@ -29,7 +29,7 @@ G_BEGIN_DECLS
+
+ typedef struct _GAtomicArray GAtomicArray;
+ struct _GAtomicArray {
+- volatile gpointer data; /* elements - atomic */
++ gpointer data; /* elements - atomic */
+ };
+
+ void _g_atomic_array_init (GAtomicArray *array);
+@@ -42,7 +42,7 @@ void _g_atomic_array_update (GAtomicArray *array,
+ #define G_ATOMIC_ARRAY_GET_LOCKED(_array, _type) ((_type *)((_array)->data))
+
+ #define G_ATOMIC_ARRAY_DO_TRANSACTION(_array, _type, _C_) G_STMT_START { \
+- volatile gpointer *_datap = &(_array)->data; \
++ gpointer *_datap = &(_array)->data; \
+ _type *transaction_data, *__check; \
+ \
+ __check = g_atomic_pointer_get (_datap); \
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0020-gobject-Drop-volatile-qualifier-from-GObject.ref_cou.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0020-gobject-Drop-volatile-qualifier-from-GObject.ref_cou.patch
new file mode 100644
index 000000000..ae024a9af
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0020-gobject-Drop-volatile-qualifier-from-GObject.ref_cou.patch
@@ -0,0 +1,33 @@
+From 334f6953364680ddc6c0d3da13fda1d92bf5379d Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 19:21:07 +0000
+Subject: [PATCH 20/29] gobject: Drop volatile qualifier from GObject.ref_count
+
+This is an API break, but no third party code should be touching
+`GObject.ref_count`, let alone in a way which would be changed by the
+removal of the `volatile` qualifier.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ gobject/gobject.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gobject/gobject.h b/gobject/gobject.h
+index 7f55e1976..a84c183f8 100644
+--- a/gobject/gobject.h
++++ b/gobject/gobject.h
+@@ -247,7 +247,7 @@ struct _GObject
+ GTypeInstance g_type_instance;
+
+ /*< private >*/
+- volatile guint ref_count;
++ guint ref_count; /* (atomic) */
+ GData *qdata;
+ };
+ /**
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0021-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0021-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch
new file mode 100644
index 000000000..b8ed99ce1
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0021-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch
@@ -0,0 +1,51 @@
+From 8a112c3c6e5fe6838ee29eec7caa62ba32d9bc40 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 19:22:49 +0000
+Subject: [PATCH 21/29] tests: Drop unnecessary volatile qualifiers from tests
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+These variables were already (correctly) accessed atomically. The
+`volatile` qualifier doesn’t help with that.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ gobject/tests/qdata.c | 2 +-
+ gobject/tests/threadtests.c | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/gobject/tests/qdata.c b/gobject/tests/qdata.c
+index 528bdc68e..7d46efb15 100644
+--- a/gobject/tests/qdata.c
++++ b/gobject/tests/qdata.c
+@@ -17,7 +17,7 @@ gboolean fail;
+ #define ROUNDS 10000
+
+ GObject *object;
+-volatile gint bucket[THREADS];
++gint bucket[THREADS]; /* accessed from multiple threads, but should never be contested due to the sequence of thread operations */
+
+ static gpointer
+ thread_func (gpointer data)
+diff --git a/gobject/tests/threadtests.c b/gobject/tests/threadtests.c
+index e341a9d67..b6f9e17fa 100644
+--- a/gobject/tests/threadtests.c
++++ b/gobject/tests/threadtests.c
+@@ -27,8 +27,8 @@
+ #include <glib.h>
+ #include <glib-object.h>
+
+-static volatile int mtsafe_call_counter = 0; /* multi thread safe call counter */
+-static int unsafe_call_counter = 0; /* single-threaded call counter */
++static int mtsafe_call_counter = 0; /* multi thread safe call counter, must be accessed atomically */
++static int unsafe_call_counter = 0; /* single-threaded call counter */
+ static GCond sync_cond;
+ static GMutex sync_mutex;
+
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0022-build-Drop-unnecessary-volatile-qualifiers-from-conf.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0022-build-Drop-unnecessary-volatile-qualifiers-from-conf.patch
new file mode 100644
index 000000000..5da509d17
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0022-build-Drop-unnecessary-volatile-qualifiers-from-conf.patch
@@ -0,0 +1,38 @@
+From daf90bfa99fc02a253d538c65fbaa12f2e6c1c45 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Wed, 11 Nov 2020 19:23:18 +0000
+Subject: [PATCH 22/29] build: Drop unnecessary volatile qualifiers from
+ configure tests
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ meson.build | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index e0b308a25..ad7f887fb 100644
+--- a/meson.build
++++ b/meson.build
+@@ -1773,7 +1773,7 @@ endforeach
+ # that then to silently fall back on emulated atomic ops just because
+ # the user had the wrong build environment.
+ atomictest = '''int main() {
+- volatile int atomic = 2;
++ int atomic = 2;
+ __sync_bool_compare_and_swap (&atomic, 2, 3);
+ return 0;
+ }
+@@ -1883,6 +1883,7 @@ endif
+
+ # FIXME: we should make it print the result and always return 0, so that
+ # the output in meson shows up as green
++# volatile is needed here to avoid optimisations in the test
+ stack_grows_check_prog = '''
+ volatile int *a = 0, *b = 0;
+ void f (int i) {
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0023-gdbusprivate-Avoid-a-warning-about-a-statement-with-.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0023-gdbusprivate-Avoid-a-warning-about-a-statement-with-.patch
new file mode 100644
index 000000000..012f9ca87
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0023-gdbusprivate-Avoid-a-warning-about-a-statement-with-.patch
@@ -0,0 +1,33 @@
+From 0604f5858259c32744e6fc912ed4feb308651a3a Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Mon, 16 Nov 2020 14:47:23 +0000
+Subject: [PATCH 23/29] gdbusprivate: Avoid a warning about a statement with no
+ effect
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ gio/gdbusprivate.c | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/gio/gdbusprivate.c b/gio/gdbusprivate.c
+index 99b37f3eb..4e42c1a4d 100644
+--- a/gio/gdbusprivate.c
++++ b/gio/gdbusprivate.c
+@@ -1945,11 +1945,10 @@ _g_dbus_initialize (void)
+
+ if (g_once_init_enter (&initialized))
+ {
+- GQuark g_dbus_error_domain;
+ const gchar *debug;
+
+- g_dbus_error_domain = G_DBUS_ERROR;
+- (g_dbus_error_domain); /* To avoid -Wunused-but-set-variable */
++ /* Ensure the domain is registered. */
++ g_dbus_error_quark ();
+
+ debug = g_getenv ("G_DBUS_DEBUG");
+ if (debug != NULL)
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0024-tests-Add-comment-to-volatile-atomic-tests.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0024-tests-Add-comment-to-volatile-atomic-tests.patch
new file mode 100644
index 000000000..7350803c6
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0024-tests-Add-comment-to-volatile-atomic-tests.patch
@@ -0,0 +1,49 @@
+From 2d03f99ae4de394cac0690717d96c2d884ccdae2 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Mon, 16 Nov 2020 14:47:47 +0000
+Subject: [PATCH 24/29] tests: Add comment to volatile atomic tests
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+`volatile` should not be used to indicate atomic variables, and we
+shouldn’t encourage its use. Keep the tests, since they check that we
+don’t emit warnings when built against incorrect old code which uses
+`volatile`. But add a comment to stop copy/paste use of `volatile`
+in the future.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ glib/tests/atomic.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/glib/tests/atomic.c b/glib/tests/atomic.c
+index 7d2459f3a..14e6e454e 100644
+--- a/glib/tests/atomic.c
++++ b/glib/tests/atomic.c
+@@ -94,6 +94,9 @@ test_types (void)
+ res = g_atomic_pointer_compare_and_exchange (&vp_str, NULL, str);
+ g_assert_true (res);
+
++ /* Note that atomic variables should almost certainly not be marked as
++ * `volatile` — see http://isvolatileusefulwiththreads.in/c/. This test exists
++ * to make sure that we don’t warn when built against older third party code. */
+ g_atomic_pointer_set (&vp_str_vol, NULL);
+ res = g_atomic_pointer_compare_and_exchange (&vp_str_vol, NULL, str);
+ g_assert_true (res);
+@@ -210,6 +213,9 @@ G_GNUC_END_IGNORE_DEPRECATIONS
+ res = g_atomic_pointer_compare_and_exchange (&vp_str, NULL, (char *) str);
+ g_assert_true (res);
+
++ /* Note that atomic variables should almost certainly not be marked as
++ * `volatile` — see http://isvolatileusefulwiththreads.in/c/. This test exists
++ * to make sure that we don’t warn when built against older third party code. */
+ g_atomic_pointer_set (&vp_str_vol, NULL);
+ res = g_atomic_pointer_compare_and_exchange (&vp_str_vol, NULL, (char *) str);
+ g_assert_true (res);
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0025-gthread-Use-g_atomic-primitives-correctly-in-destruc.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0025-gthread-Use-g_atomic-primitives-correctly-in-destruc.patch
new file mode 100644
index 000000000..c15a3b8a5
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0025-gthread-Use-g_atomic-primitives-correctly-in-destruc.patch
@@ -0,0 +1,77 @@
+From 6bd0a4b29753570a2c20b61b5ad2c0068567b7b6 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Mon, 16 Nov 2020 16:44:29 +0000
+Subject: [PATCH 25/29] gthread: Use g_atomic() primitives correctly in
+ destructor list
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+In the Windows destructor list, consistently access
+`g_private_destructors` using atomic primitives.
+
+`g_atomic_pointer_compare_and_exchange()` should be equivalent to
+`InterlockedCompareExchangePointer()`, but is a bit more understandable
+in a general GLib context, and pairs with `g_atomic_pointer_get()`. (I
+can’t find a Windows API equivalent for that.)
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ glib/gthread-win32.c | 13 +++++++------
+ 1 file changed, 7 insertions(+), 6 deletions(-)
+
+diff --git a/glib/gthread-win32.c b/glib/gthread-win32.c
+index 0c37dc6c1..20aca6fa1 100644
+--- a/glib/gthread-win32.c
++++ b/glib/gthread-win32.c
+@@ -301,7 +301,7 @@ struct _GPrivateDestructor
+ GPrivateDestructor *next;
+ };
+
+-static GPrivateDestructor * volatile g_private_destructors;
++static GPrivateDestructor *g_private_destructors; /* (atomic) prepend-only */
+ static CRITICAL_SECTION g_private_lock;
+
+ static DWORD
+@@ -329,7 +329,7 @@ g_private_get_impl (GPrivate *key)
+ g_thread_abort (errno, "malloc");
+ destructor->index = impl;
+ destructor->notify = key->notify;
+- destructor->next = g_private_destructors;
++ destructor->next = g_atomic_pointer_get (&g_private_destructors);
+
+ /* We need to do an atomic store due to the unlocked
+ * access to the destructor list from the thread exit
+@@ -337,13 +337,14 @@ g_private_get_impl (GPrivate *key)
+ *
+ * It can double as a sanity check...
+ */
+- if (InterlockedCompareExchangePointer (&g_private_destructors, destructor,
+- destructor->next) != destructor->next)
++ if (!g_atomic_pointer_compare_and_exchange (&g_private_destructors,
++ destructor->next,
++ destructor))
+ g_thread_abort (0, "g_private_get_impl(1)");
+ }
+
+ /* Ditto, due to the unlocked access on the fast path */
+- if (InterlockedCompareExchangePointer (&key->p, impl, NULL) != NULL)
++ if (!g_atomic_pointer_compare_and_exchange (&key->p, NULL, impl))
+ g_thread_abort (0, "g_private_get_impl(2)");
+ }
+ LeaveCriticalSection (&g_private_lock);
+@@ -635,7 +636,7 @@ g_thread_win32_thread_detach (void)
+ */
+ dtors_called = FALSE;
+
+- for (dtor = g_private_destructors; dtor; dtor = dtor->next)
++ for (dtor = g_atomic_pointer_get (&g_private_destructors); dtor; dtor = dtor->next)
+ {
+ gpointer value;
+
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0026-gtype-Fix-some-typos-in-comments.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0026-gtype-Fix-some-typos-in-comments.patch
new file mode 100644
index 000000000..7090a12a8
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0026-gtype-Fix-some-typos-in-comments.patch
@@ -0,0 +1,47 @@
+From 041dd8b70bd14b041d6a495492eb7a5fc7568bb7 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Mon, 16 Nov 2020 16:47:54 +0000
+Subject: [PATCH 26/29] gtype: Fix some typos in comments
+
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+---
+ gobject/gtype.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/gobject/gtype.c b/gobject/gtype.c
+index be5989a3e..ae1af8a05 100644
+--- a/gobject/gtype.c
++++ b/gobject/gtype.c
+@@ -2290,7 +2290,7 @@ type_class_init_Wm (TypeNode *node,
+ * inherited interfaces are already init_state == INITIALIZED, because
+ * they either got setup in the above base_init loop, or during
+ * class_init from within type_add_interface_Wm() for this or
+- * an anchestor type.
++ * an ancestor type.
+ */
+ i = 0;
+ while ((entries = CLASSED_NODE_IFACES_ENTRIES_LOCKED (node)) != NULL)
+@@ -3462,7 +3462,7 @@ g_type_depth (GType type)
+ * be used to determine the types and order in which the leaf type is
+ * descended from the root type.
+ *
+- * Returns: immediate child of @root_type and anchestor of @leaf_type
++ * Returns: immediate child of @root_type and ancestor of @leaf_type
+ */
+ GType
+ g_type_next_base (GType type,
+@@ -3549,8 +3549,8 @@ type_node_conforms_to_U (TypeNode *node,
+
+ /**
+ * g_type_is_a:
+- * @type: type to check anchestry for
+- * @is_a_type: possible anchestor of @type or interface that @type
++ * @type: type to check ancestry for
++ * @is_a_type: possible ancestor of @type or interface that @type
+ * could conform to
+ *
+ * If @is_a_type is a derivable type, check whether @type is a
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0027-gtype-Add-some-missing-atomic-accesses-to-init_state.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0027-gtype-Add-some-missing-atomic-accesses-to-init_state.patch
new file mode 100644
index 000000000..9c4e45ff4
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0027-gtype-Add-some-missing-atomic-accesses-to-init_state.patch
@@ -0,0 +1,76 @@
+From 47da8ec5d9a284e07f77c7d59fc8eacf3ebf188a Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Mon, 16 Nov 2020 16:57:22 +0000
+Subject: [PATCH 27/29] gtype: Add some missing atomic accesses to init_state
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Half of the references to `init_state` in `gtype.c` already correctly
+accessed it atomically, but a couple didn’t. Drop the `volatile`
+qualifier from its declaration, as that’s not necessary for atomic
+access.
+
+Note that this is the `init_state` in `TypeData`, *not* the `init_state`
+in `IFaceEntry`.
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Helps: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ gobject/gtype.c | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/gobject/gtype.c b/gobject/gtype.c
+index ae1af8a05..909faf138 100644
+--- a/gobject/gtype.c
++++ b/gobject/gtype.c
+@@ -322,7 +322,7 @@ struct _ClassData
+ CommonData common;
+ guint16 class_size;
+ guint16 class_private_size;
+- int volatile init_state; /* atomic - g_type_class_ref reads it unlocked */
++ int init_state; /* (atomic) - g_type_class_ref reads it unlocked */
+ GBaseInitFunc class_init_base;
+ GBaseFinalizeFunc class_finalize_base;
+ GClassInitFunc class_init;
+@@ -336,7 +336,7 @@ struct _InstanceData
+ CommonData common;
+ guint16 class_size;
+ guint16 class_private_size;
+- int volatile init_state; /* atomic - g_type_class_ref reads it unlocked */
++ int init_state; /* (atomic) - g_type_class_ref reads it unlocked */
+ GBaseInitFunc class_init_base;
+ GBaseFinalizeFunc class_finalize_base;
+ GClassInitFunc class_init;
+@@ -1415,7 +1415,7 @@ type_node_add_iface_entry_W (TypeNode *node,
+
+ if (parent_entry)
+ {
+- if (node->data && node->data->class.init_state >= BASE_IFACE_INIT)
++ if (node->data && g_atomic_int_get (&node->data->class.init_state) >= BASE_IFACE_INIT)
+ {
+ entries->entry[i].init_state = INITIALIZED;
+ entries->entry[i].vtable = parent_entry->vtable;
+@@ -1481,7 +1481,7 @@ type_add_interface_Wm (TypeNode *node,
+ */
+ if (node->data)
+ {
+- InitState class_state = node->data->class.init_state;
++ InitState class_state = g_atomic_int_get (&node->data->class.init_state);
+
+ if (class_state >= BASE_IFACE_INIT)
+ type_iface_vtable_base_init_Wm (iface, node);
+@@ -2175,7 +2175,7 @@ type_class_init_Wm (TypeNode *node,
+ g_assert (node->is_classed && node->data &&
+ node->data->class.class_size &&
+ !node->data->class.class &&
+- node->data->class.init_state == UNINITIALIZED);
++ g_atomic_int_get (&node->data->class.init_state) == UNINITIALIZED);
+ if (node->data->class.class_private_size)
+ class = g_malloc0 (ALIGN_STRUCT (node->data->class.class_size) + node->data->class.class_private_size);
+ else
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0028-gresource-Fix-a-pointer-mismatch-with-an-atomic-load.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0028-gresource-Fix-a-pointer-mismatch-with-an-atomic-load.patch
new file mode 100644
index 000000000..e03fac19f
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0028-gresource-Fix-a-pointer-mismatch-with-an-atomic-load.patch
@@ -0,0 +1,29 @@
+From 7d417f8406b8fa32a25659120738d22be6a1b482 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Mon, 16 Nov 2020 17:17:21 +0000
+Subject: [PATCH 28/29] gresource: Fix a pointer mismatch with an atomic load
+
+This squashes a warning when compiling with Clang.
+
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+---
+ gio/gresource.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gio/gresource.c b/gio/gresource.c
+index 79a49d33d..b495d12ac 100644
+--- a/gio/gresource.c
++++ b/gio/gresource.c
+@@ -1398,7 +1398,7 @@ register_lazy_static_resources (void)
+ void
+ g_static_resource_init (GStaticResource *static_resource)
+ {
+- gpointer next;
++ GStaticResource *next;
+
+ do
+ {
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0029-docs-Document-not-to-use-volatile-qualifiers.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0029-docs-Document-not-to-use-volatile-qualifiers.patch
new file mode 100644
index 000000000..3311ad65d
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0029-docs-Document-not-to-use-volatile-qualifiers.patch
@@ -0,0 +1,258 @@
+From 83e48d8ac1fee98059e2305d8909dca26190bddc Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@endlessos.org>
+Date: Tue, 17 Nov 2020 10:15:15 +0000
+Subject: [PATCH 29/29] docs: Document not to use `volatile` qualifiers
+
+Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
+
+Fixes: #600
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719]
+---
+ gio/gdbusconnection.c | 12 ++++++++---
+ gio/gdbuserror.c | 3 +++
+ glib/gatomic.c | 48 +++++++++++++++++++++++++++++++++++++++++++
+ glib/gthread.c | 6 ++++++
+ 4 files changed, 66 insertions(+), 3 deletions(-)
+
+diff --git a/gio/gdbusconnection.c b/gio/gdbusconnection.c
+index 91c365e80..65939a4d2 100644
+--- a/gio/gdbusconnection.c
++++ b/gio/gdbusconnection.c
+@@ -1708,7 +1708,9 @@ g_dbus_connection_send_message_unlocked (GDBusConnection *connection,
+ * will be assigned by @connection and set on @message via
+ * g_dbus_message_set_serial(). If @out_serial is not %NULL, then the
+ * serial number used will be written to this location prior to
+- * submitting the message to the underlying transport.
++ * submitting the message to the underlying transport. While it has a `volatile`
++ * qualifier, this is a historical artifact and the argument passed to it should
++ * not be `volatile`.
+ *
+ * If @connection is closed then the operation will fail with
+ * %G_IO_ERROR_CLOSED. If @message is not well-formed,
+@@ -1979,7 +1981,9 @@ g_dbus_connection_send_message_with_reply_unlocked (GDBusConnection *connect
+ * will be assigned by @connection and set on @message via
+ * g_dbus_message_set_serial(). If @out_serial is not %NULL, then the
+ * serial number used will be written to this location prior to
+- * submitting the message to the underlying transport.
++ * submitting the message to the underlying transport. While it has a `volatile`
++ * qualifier, this is a historical artifact and the argument passed to it should
++ * not be `volatile`.
+ *
+ * If @connection is closed then the operation will fail with
+ * %G_IO_ERROR_CLOSED. If @cancellable is canceled, the operation will
+@@ -2105,7 +2109,9 @@ send_message_with_reply_sync_cb (GDBusConnection *connection,
+ * will be assigned by @connection and set on @message via
+ * g_dbus_message_set_serial(). If @out_serial is not %NULL, then the
+ * serial number used will be written to this location prior to
+- * submitting the message to the underlying transport.
++ * submitting the message to the underlying transport. While it has a `volatile`
++ * qualifier, this is a historical artifact and the argument passed to it should
++ * not be `volatile`.
+ *
+ * If @connection is closed then the operation will fail with
+ * %G_IO_ERROR_CLOSED. If @cancellable is canceled, the operation will
+diff --git a/gio/gdbuserror.c b/gio/gdbuserror.c
+index b03a33f27..4ad97bb6e 100644
+--- a/gio/gdbuserror.c
++++ b/gio/gdbuserror.c
+@@ -177,6 +177,9 @@ g_dbus_error_quark (void)
+ *
+ * Helper function for associating a #GError error domain with D-Bus error names.
+ *
++ * While @quark_volatile has a `volatile` qualifier, this is a historical
++ * artifact and the argument passed to it should not be `volatile`.
++ *
+ * Since: 2.26
+ */
+ void
+diff --git a/glib/gatomic.c b/glib/gatomic.c
+index 67f5ba6b4..0bc67aa35 100644
+--- a/glib/gatomic.c
++++ b/glib/gatomic.c
+@@ -105,6 +105,9 @@
+ * This call acts as a full compiler and hardware
+ * memory barrier (before the get).
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: the value of the integer
+ *
+ * Since: 2.4
+@@ -125,6 +128,9 @@ gint
+ * This call acts as a full compiler and hardware
+ * memory barrier (after the set).
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Since: 2.4
+ */
+ void
+@@ -144,6 +150,9 @@ void
+ *
+ * This call acts as a full compiler and hardware memory barrier.
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Since: 2.4
+ **/
+ void
+@@ -163,6 +172,9 @@ void
+ *
+ * This call acts as a full compiler and hardware memory barrier.
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: %TRUE if the resultant value is zero
+ *
+ * Since: 2.4
+@@ -189,6 +201,9 @@ gboolean
+ *
+ * This call acts as a full compiler and hardware memory barrier.
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: %TRUE if the exchange took place
+ *
+ * Since: 2.4
+@@ -216,6 +231,9 @@ gboolean
+ * Before version 2.30, this function did not return a value
+ * (but g_atomic_int_exchange_and_add() did, and had the same meaning).
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: the value of @atomic before the add, signed
+ *
+ * Since: 2.4
+@@ -240,6 +258,9 @@ gint
+ * Think of this operation as an atomic version of
+ * `{ tmp = *atomic; *atomic &= val; return tmp; }`.
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: the value of @atomic before the operation, unsigned
+ *
+ * Since: 2.30
+@@ -264,6 +285,9 @@ guint
+ *
+ * This call acts as a full compiler and hardware memory barrier.
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: the value of @atomic before the operation, unsigned
+ *
+ * Since: 2.30
+@@ -288,6 +312,9 @@ guint
+ *
+ * This call acts as a full compiler and hardware memory barrier.
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: the value of @atomic before the operation, unsigned
+ *
+ * Since: 2.30
+@@ -309,6 +336,9 @@ guint
+ * This call acts as a full compiler and hardware
+ * memory barrier (before the get).
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: the value of the pointer
+ *
+ * Since: 2.4
+@@ -329,6 +359,9 @@ gpointer
+ * This call acts as a full compiler and hardware
+ * memory barrier (after the set).
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Since: 2.4
+ **/
+ void
+@@ -354,6 +387,9 @@ void
+ *
+ * This call acts as a full compiler and hardware memory barrier.
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: %TRUE if the exchange took place
+ *
+ * Since: 2.4
+@@ -379,6 +415,9 @@ gboolean
+ *
+ * This call acts as a full compiler and hardware memory barrier.
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: the value of @atomic before the add, signed
+ *
+ * Since: 2.30
+@@ -403,6 +442,9 @@ gssize
+ *
+ * This call acts as a full compiler and hardware memory barrier.
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: the value of @atomic before the operation, unsigned
+ *
+ * Since: 2.30
+@@ -427,6 +469,9 @@ gsize
+ *
+ * This call acts as a full compiler and hardware memory barrier.
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: the value of @atomic before the operation, unsigned
+ *
+ * Since: 2.30
+@@ -451,6 +496,9 @@ gsize
+ *
+ * This call acts as a full compiler and hardware memory barrier.
+ *
++ * While @atomic has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: the value of @atomic before the operation, unsigned
+ *
+ * Since: 2.30
+diff --git a/glib/gthread.c b/glib/gthread.c
+index 612a9739f..29216d7fd 100644
+--- a/glib/gthread.c
++++ b/glib/gthread.c
+@@ -686,6 +686,9 @@ g_once_impl (GOnce *once,
+ * // use initialization_value here
+ * ]|
+ *
++ * While @location has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Returns: %TRUE if the initialization section should be entered,
+ * %FALSE and blocks otherwise
+ *
+@@ -725,6 +728,9 @@ gboolean
+ * releases concurrent threads blocking in g_once_init_enter() on this
+ * initialization variable.
+ *
++ * While @location has a `volatile` qualifier, this is a historical artifact and
++ * the pointer passed to it should not be `volatile`.
++ *
+ * Since: 2.14
+ */
+ void
+--
+2.30.1
+
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.66.7.bb b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.66.7.bb
index 882a89da7..3909b76dd 100644
--- a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.66.7.bb
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.66.7.bb
@@ -19,7 +19,37 @@ SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
file://0001-gio-tests-codegen.py-bump-timeout-to-100-seconds.patch \
file://0001-tests-codegen.py-removing-unecessary-print-statement.patch \
"
-
+SRC_URI += "\
+ file://0001-gobject-Drop-use-of-volatile-from-get_type-macros.patch \
+ file://0002-tests-Fix-non-atomic-access-to-a-shared-variable.patch \
+ file://0003-tests-Fix-non-atomic-access-to-a-shared-variable.patch \
+ file://0004-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch \
+ file://0005-tests-Fix-non-atomic-access-to-some-shared-variables.patch \
+ file://0006-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch \
+ file://0007-gdbusconnection-Drop-unnecessary-volatile-qualifiers.patch \
+ file://0008-gdbuserror-Drop-unnecessary-volatile-qualifiers-from.patch \
+ file://0009-gio-Drop-unnecessary-volatile-qualifiers-from-intern.patch \
+ file://0010-kqueue-Fix-unlocked-access-to-shared-variable.patch \
+ file://0011-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch \
+ file://0012-tests-Fix-non-atomic-access-to-some-shared-variables.patch \
+ file://0013-gatomic-Drop-unnecessary-volatile-qualifiers-from-in.patch \
+ file://0014-gatomic-Drop-unnecessary-volatile-qualifiers-from-ma.patch \
+ file://0015-glib-Drop-unnecessary-volatile-qualifiers-from-inter.patch \
+ file://0016-gobject-Drop-unnecessary-volatile-qualifiers-from-in.patch \
+ file://0017-gmessages-Drop-unnecessary-volatile-qualifiers-from-.patch \
+ file://0018-gtypes-Drop-volatile-qualifier-from-gatomicrefcount.patch \
+ file://0019-gatomicarray-Drop-volatile-qualifier-from-GAtomicArr.patch \
+ file://0020-gobject-Drop-volatile-qualifier-from-GObject.ref_cou.patch \
+ file://0021-tests-Drop-unnecessary-volatile-qualifiers-from-test.patch \
+ file://0022-build-Drop-unnecessary-volatile-qualifiers-from-conf.patch \
+ file://0023-gdbusprivate-Avoid-a-warning-about-a-statement-with-.patch \
+ file://0024-tests-Add-comment-to-volatile-atomic-tests.patch \
+ file://0025-gthread-Use-g_atomic-primitives-correctly-in-destruc.patch \
+ file://0026-gtype-Fix-some-typos-in-comments.patch \
+ file://0027-gtype-Add-some-missing-atomic-accesses-to-init_state.patch \
+ file://0028-gresource-Fix-a-pointer-mismatch-with-an-atomic-load.patch \
+ file://0029-docs-Document-not-to-use-volatile-qualifiers.patch \
+"
SRC_URI_append_class-native = " file://relocate-modules.patch"
SRC_URI[sha256sum] = "09f158769f6f26b31074e15b1ac80ec39b13b53102dfae66cfe826fb2cc65502"
@@ -31,7 +61,7 @@ def find_meson_cross_files(d):
if bb.data.inherits_class('native', d):
return ""
- thisdir = d.getVar("THISDIR")
+ thisdir = os.path.normpath(d.getVar("THISDIR"))
import collections
sitedata = siteinfo_data(d)
# filename -> found
@@ -41,7 +71,8 @@ def find_meson_cross_files(d):
filename = os.path.normpath(os.path.join(path, "meson.cross.d", element))
sanitized_path = filename.replace(thisdir, "${THISDIR}")
if sanitized_path == filename:
- bb.error("Cannot add '%s' to --cross-file, because it's not relative to THISDIR '%s' and sstate signature would contain this full path" % (filename, thisdir))
+ if os.path.exists(filename):
+ bb.error("Cannot add '%s' to --cross-file, because it's not relative to THISDIR '%s' and sstate signature would contain this full path" % (filename, thisdir))
continue
files[filename.replace(thisdir, "${THISDIR}")] = os.path.exists(filename)
diff --git a/poky/meta/recipes-core/glibc/glibc/0001-nptl-Remove-private-futex-optimization-BZ-27304.patch b/poky/meta/recipes-core/glibc/glibc/0001-nptl-Remove-private-futex-optimization-BZ-27304.patch
new file mode 100644
index 000000000..39fde5b78
--- /dev/null
+++ b/poky/meta/recipes-core/glibc/glibc/0001-nptl-Remove-private-futex-optimization-BZ-27304.patch
@@ -0,0 +1,49 @@
+From c4ad832276f4dadfa40904109b26a521468f66bc Mon Sep 17 00:00:00 2001
+From: Florian Weimer <fweimer@redhat.com>
+Date: Thu, 4 Feb 2021 15:00:20 +0100
+Subject: [PATCH] nptl: Remove private futex optimization [BZ #27304]
+
+It is effectively used, unexcept for pthread_cond_destroy, where we do
+not want it; see bug 27304. The internal locks do not support a
+process-shared mode.
+
+This fixes commit dc6cfdc934db9997c33728082d63552b9eee4563 ("nptl:
+Move pthread_cond_destroy implementation into libc").
+
+Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+Upstream-Status: Backport [https://sourceware.org/bugzilla/show_bug.cgi?id=27304]
+Signed-off-by: Yanfei Xu <yanfei.xu@windriver.com>
+---
+ sysdeps/nptl/lowlevellock-futex.h | 14 +-------------
+ 1 file changed, 1 insertion(+), 13 deletions(-)
+
+diff --git a/sysdeps/nptl/lowlevellock-futex.h b/sysdeps/nptl/lowlevellock-futex.h
+index ecb729da6b..ca96397a4a 100644
+--- a/sysdeps/nptl/lowlevellock-futex.h
++++ b/sysdeps/nptl/lowlevellock-futex.h
+@@ -50,20 +50,8 @@
+ #define LLL_SHARED FUTEX_PRIVATE_FLAG
+
+ #ifndef __ASSEMBLER__
+-
+-# if IS_IN (libc) || IS_IN (rtld)
+-/* In libc.so or ld.so all futexes are private. */
+-# define __lll_private_flag(fl, private) \
+- ({ \
+- /* Prevent warnings in callers of this macro. */ \
+- int __lll_private_flag_priv __attribute__ ((unused)); \
+- __lll_private_flag_priv = (private); \
+- ((fl) | FUTEX_PRIVATE_FLAG); \
+- })
+-# else
+-# define __lll_private_flag(fl, private) \
++# define __lll_private_flag(fl, private) \
+ (((fl) | FUTEX_PRIVATE_FLAG) ^ (private))
+-# endif
+
+ # define lll_futex_syscall(nargs, futexp, op, ...) \
+ ({ \
+--
+2.27.0
+
diff --git a/poky/meta/recipes-core/glibc/glibc/0033-x86-Handle-_SC_LEVEL1_ICACHE_LINESIZE-BZ-27444.patch b/poky/meta/recipes-core/glibc/glibc/0033-x86-Handle-_SC_LEVEL1_ICACHE_LINESIZE-BZ-27444.patch
new file mode 100644
index 000000000..3a004e227
--- /dev/null
+++ b/poky/meta/recipes-core/glibc/glibc/0033-x86-Handle-_SC_LEVEL1_ICACHE_LINESIZE-BZ-27444.patch
@@ -0,0 +1,185 @@
+From 750b00a1ddae220403fd892a6fd4e0791ffd154a Mon Sep 17 00:00:00 2001
+From: "H.J. Lu" <hjl.tools@gmail.com>
+Date: Fri, 18 Sep 2020 07:55:14 -0700
+Subject: [PATCH] x86: Handle _SC_LEVEL1_ICACHE_LINESIZE [BZ #27444]
+
+ x86: Move x86 processor cache info to cpu_features
+
+missed _SC_LEVEL1_ICACHE_LINESIZE.
+
+1. Add level1_icache_linesize to struct cpu_features.
+2. Initialize level1_icache_linesize by calling handle_intel,
+handle_zhaoxin and handle_amd with _SC_LEVEL1_ICACHE_LINESIZE.
+3. Return level1_icache_linesize for _SC_LEVEL1_ICACHE_LINESIZE.
+
+Upstream-Status: Backport [https://sourceware.org/bugzilla/show_bug.cgi?id=27444]
+Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
+---
+ sysdeps/x86/Makefile | 8 +++
+ sysdeps/x86/cacheinfo.c | 3 +
+ sysdeps/x86/dl-cacheinfo.h | 6 ++
+ sysdeps/x86/include/cpu-features.h | 2 +
+ .../x86/tst-sysconf-cache-linesize-static.c | 1 +
+ sysdeps/x86/tst-sysconf-cache-linesize.c | 57 +++++++++++++++++++
+ 6 files changed, 77 insertions(+)
+ create mode 100644 sysdeps/x86/tst-sysconf-cache-linesize-static.c
+ create mode 100644 sysdeps/x86/tst-sysconf-cache-linesize.c
+
+diff --git a/sysdeps/x86/Makefile b/sysdeps/x86/Makefile
+index dd82674342..d231263051 100644
+--- a/sysdeps/x86/Makefile
++++ b/sysdeps/x86/Makefile
+@@ -208,3 +208,11 @@ $(objpfx)check-cet.out: $(..)sysdeps/x86/check-cet.awk \
+ generated += check-cet.out
+ endif
+ endif
++
++ifeq ($(subdir),posix)
++tests += \
++ tst-sysconf-cache-linesize \
++ tst-sysconf-cache-linesize-static
++tests-static += \
++ tst-sysconf-cache-linesize-static
++endif
+diff --git a/sysdeps/x86/cacheinfo.c b/sysdeps/x86/cacheinfo.c
+index 7b8df45e3b..5ea4723ca6 100644
+--- a/sysdeps/x86/cacheinfo.c
++++ b/sysdeps/x86/cacheinfo.c
+@@ -32,6 +32,9 @@ __cache_sysconf (int name)
+ case _SC_LEVEL1_ICACHE_SIZE:
+ return cpu_features->level1_icache_size;
+
++ case _SC_LEVEL1_ICACHE_LINESIZE:
++ return cpu_features->level1_icache_linesize;
++
+ case _SC_LEVEL1_DCACHE_SIZE:
+ return cpu_features->level1_dcache_size;
+
+diff --git a/sysdeps/x86/dl-cacheinfo.h b/sysdeps/x86/dl-cacheinfo.h
+index a31fa0783a..7cd00b92f1 100644
+--- a/sysdeps/x86/dl-cacheinfo.h
++++ b/sysdeps/x86/dl-cacheinfo.h
+@@ -707,6 +707,7 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+ long int core;
+ unsigned int threads = 0;
+ unsigned long int level1_icache_size = -1;
++ unsigned long int level1_icache_linesize = -1;
+ unsigned long int level1_dcache_size = -1;
+ unsigned long int level1_dcache_assoc = -1;
+ unsigned long int level1_dcache_linesize = -1;
+@@ -726,6 +727,8 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+
+ level1_icache_size
+ = handle_intel (_SC_LEVEL1_ICACHE_SIZE, cpu_features);
++ level1_icache_linesize
++ = handle_intel (_SC_LEVEL1_ICACHE_LINESIZE, cpu_features);
+ level1_dcache_size = data;
+ level1_dcache_assoc
+ = handle_intel (_SC_LEVEL1_DCACHE_ASSOC, cpu_features);
+@@ -753,6 +756,7 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+ shared = handle_zhaoxin (_SC_LEVEL3_CACHE_SIZE);
+
+ level1_icache_size = handle_zhaoxin (_SC_LEVEL1_ICACHE_SIZE);
++ level1_icache_linesize = handle_zhaoxin (_SC_LEVEL1_ICACHE_LINESIZE);
+ level1_dcache_size = data;
+ level1_dcache_assoc = handle_zhaoxin (_SC_LEVEL1_DCACHE_ASSOC);
+ level1_dcache_linesize = handle_zhaoxin (_SC_LEVEL1_DCACHE_LINESIZE);
+@@ -772,6 +776,7 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+ shared = handle_amd (_SC_LEVEL3_CACHE_SIZE);
+
+ level1_icache_size = handle_amd (_SC_LEVEL1_ICACHE_SIZE);
++ level1_icache_linesize = handle_amd (_SC_LEVEL1_ICACHE_LINESIZE);
+ level1_dcache_size = data;
+ level1_dcache_assoc = handle_amd (_SC_LEVEL1_DCACHE_ASSOC);
+ level1_dcache_linesize = handle_amd (_SC_LEVEL1_DCACHE_LINESIZE);
+@@ -833,6 +838,7 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+ }
+
+ cpu_features->level1_icache_size = level1_icache_size;
++ cpu_features->level1_icache_linesize = level1_icache_linesize;
+ cpu_features->level1_dcache_size = level1_dcache_size;
+ cpu_features->level1_dcache_assoc = level1_dcache_assoc;
+ cpu_features->level1_dcache_linesize = level1_dcache_linesize;
+diff --git a/sysdeps/x86/include/cpu-features.h b/sysdeps/x86/include/cpu-features.h
+index 624736b40e..39a3f4f311 100644
+--- a/sysdeps/x86/include/cpu-features.h
++++ b/sysdeps/x86/include/cpu-features.h
+@@ -874,6 +874,8 @@ struct cpu_features
+ unsigned long int rep_stosb_threshold;
+ /* _SC_LEVEL1_ICACHE_SIZE. */
+ unsigned long int level1_icache_size;
++ /* _SC_LEVEL1_ICACHE_LINESIZE. */
++ unsigned long int level1_icache_linesize;
+ /* _SC_LEVEL1_DCACHE_SIZE. */
+ unsigned long int level1_dcache_size;
+ /* _SC_LEVEL1_DCACHE_ASSOC. */
+diff --git a/sysdeps/x86/tst-sysconf-cache-linesize-static.c b/sysdeps/x86/tst-sysconf-cache-linesize-static.c
+new file mode 100644
+index 0000000000..152ae68821
+--- /dev/null
++++ b/sysdeps/x86/tst-sysconf-cache-linesize-static.c
+@@ -0,0 +1 @@
++#include "tst-sysconf-cache-linesize.c"
+diff --git a/sysdeps/x86/tst-sysconf-cache-linesize.c b/sysdeps/x86/tst-sysconf-cache-linesize.c
+new file mode 100644
+index 0000000000..642dbde5d2
+--- /dev/null
++++ b/sysdeps/x86/tst-sysconf-cache-linesize.c
+@@ -0,0 +1,57 @@
++/* Test system cache line sizes.
++ Copyright (C) 2021 Free Software Foundation, Inc.
++ This file is part of the GNU C Library.
++
++ The GNU C Library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Lesser General Public
++ License as published by the Free Software Foundation; either
++ version 2.1 of the License, or (at your option) any later version.
++
++ The GNU C Library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Lesser General Public License for more details.
++
++ You should have received a copy of the GNU Lesser General Public
++ License along with the GNU C Library; if not, see
++ <https://www.gnu.org/licenses/>. */
++
++#include <stdio.h>
++#include <stdlib.h>
++#include <unistd.h>
++#include <array_length.h>
++
++static struct
++{
++ const char *name;
++ int _SC_val;
++} sc_options[] =
++ {
++#define N(name) { "_SC_"#name, _SC_##name }
++ N (LEVEL1_ICACHE_LINESIZE),
++ N (LEVEL1_DCACHE_LINESIZE),
++ N (LEVEL2_CACHE_LINESIZE)
++ };
++
++static int
++do_test (void)
++{
++ int result = EXIT_SUCCESS;
++
++ for (int i = 0; i < array_length (sc_options); ++i)
++ {
++ long int scret = sysconf (sc_options[i]._SC_val);
++ if (scret < 0)
++ {
++ printf ("sysconf (%s) returned < 0 (%ld)\n",
++ sc_options[i].name, scret);
++ result = EXIT_FAILURE;
++ }
++ else
++ printf ("sysconf (%s): %ld\n", sc_options[i].name, scret);
++ }
++
++ return result;
++}
++
++#include <support/test-driver.c>
diff --git a/poky/meta/recipes-core/glibc/glibc/CVE-2021-27645.patch b/poky/meta/recipes-core/glibc/glibc/CVE-2021-27645.patch
new file mode 100644
index 000000000..26c5c0d2a
--- /dev/null
+++ b/poky/meta/recipes-core/glibc/glibc/CVE-2021-27645.patch
@@ -0,0 +1,51 @@
+From dca565886b5e8bd7966e15f0ca42ee5cff686673 Mon Sep 17 00:00:00 2001
+From: DJ Delorie <dj@redhat.com>
+Date: Thu, 25 Feb 2021 16:08:21 -0500
+Subject: [PATCH] nscd: Fix double free in netgroupcache [BZ #27462]
+
+In commit 745664bd798ec8fd50438605948eea594179fba1 a use-after-free
+was fixed, but this led to an occasional double-free. This patch
+tracks the "live" allocation better.
+
+Tested manually by a third party.
+
+Related: RHBZ 1927877
+
+Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
+Reviewed-by: Carlos O'Donell <carlos@redhat.com>
+
+Upstream-Status: Backport [https://sourceware.org/git/?p=glibc.git;a=commit;h=dca565886b5e8bd7966e15f0ca42ee5cff686673]
+
+CVE: CVE-2021-27645
+
+Reviewed-by: Carlos O'Donell <carlos@redhat.com>
+Signed-off-by: Khairul Rohaizzat Jamaluddin <khairul.rohaizzat.jamaluddin@intel.com>
+---
+ nscd/netgroupcache.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/nscd/netgroupcache.c b/nscd/netgroupcache.c
+index dba6ceec1b..ad2daddafd 100644
+--- a/nscd/netgroupcache.c
++++ b/nscd/netgroupcache.c
+@@ -248,7 +248,7 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req,
+ : NULL);
+ ndomain = (ndomain ? newbuf + ndomaindiff
+ : NULL);
+- buffer = newbuf;
++ *tofreep = buffer = newbuf;
+ }
+
+ nhost = memcpy (buffer + bufused,
+@@ -319,7 +319,7 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req,
+ else if (status == NSS_STATUS_TRYAGAIN && e == ERANGE)
+ {
+ buflen *= 2;
+- buffer = xrealloc (buffer, buflen);
++ *tofreep = buffer = xrealloc (buffer, buflen);
+ }
+ else if (status == NSS_STATUS_RETURN
+ || status == NSS_STATUS_NOTFOUND
+--
+2.27.0
+
diff --git a/poky/meta/recipes-core/glibc/glibc_2.33.bb b/poky/meta/recipes-core/glibc/glibc_2.33.bb
index c47826a51..5e0baa53e 100644
--- a/poky/meta/recipes-core/glibc/glibc_2.33.bb
+++ b/poky/meta/recipes-core/glibc/glibc_2.33.bb
@@ -45,6 +45,9 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \
file://0030-powerpc-Do-not-ask-compiler-for-finding-arch.patch \
file://0031-x86-Require-full-ISA-support-for-x86-64-level-marker.patch \
file://0032-string-Work-around-GCC-PR-98512-in-rawmemchr.patch \
+ file://0033-x86-Handle-_SC_LEVEL1_ICACHE_LINESIZE-BZ-27444.patch \
+ file://CVE-2021-27645.patch \
+ file://0001-nptl-Remove-private-futex-optimization-BZ-27304.patch \
"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build-${TARGET_SYS}"
diff --git a/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb
index 705ff63cf..1aeb952db 100644
--- a/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb
+++ b/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb
@@ -22,9 +22,9 @@ APPEND += "rootfstype=ext4 quiet"
DEPENDS = "zip-native python3-pip-native"
IMAGE_FSTYPES = "wic.vmdk wic.vhd wic.vhdx"
-inherit core-image module-base setuptools3
+inherit core-image setuptools3
-SRCREV ?= "e56305dd709ae2af2da7a7599984b3ad18c4970f"
+SRCREV ?= "42514ade8bdb9502f49a56752561f6c2e9f23348"
SRC_URI = "git://git.yoctoproject.org/poky \
file://Yocto_Build_Appliance.vmx \
file://Yocto_Build_Appliance.vmxf \
@@ -61,12 +61,6 @@ fakeroot do_populate_poky_src () {
# Place the README_VirtualBox_Toaster file in builders home folder.
cp ${WORKDIR}/README_VirtualBox_Toaster.txt ${IMAGE_ROOTFS}/home/builder/
- # Create a symlink, needed for out-of-tree kernel modules build
- if [ ! -e ${IMAGE_ROOTFS}/lib/modules/${KERNEL_VERSION}/build ]; then
- rm -f ${IMAGE_ROOTFS}/lib/modules/${KERNEL_VERSION}/build
- lnr ${IMAGE_ROOTFS}${KERNEL_SRC_PATH} ${IMAGE_ROOTFS}/lib/modules/${KERNEL_VERSION}/build
- fi
-
echo "INHERIT += \"rm_work\"" >> ${IMAGE_ROOTFS}/home/builder/poky/build/conf/auto.conf
echo "export LC_ALL=en_US.utf8" >> ${IMAGE_ROOTFS}/home/builder/.bashrc
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-framework/rootfs b/poky/meta/recipes-core/initrdscripts/initramfs-framework/rootfs
index ee24e82af..10b958317 100644
--- a/poky/meta/recipes-core/initrdscripts/initramfs-framework/rootfs
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-framework/rootfs
@@ -24,24 +24,13 @@ rootfs_run() {
if [ "`echo ${bootparam_root} | cut -c1-5`" = "UUID=" ]; then
root_uuid=`echo $bootparam_root | cut -c6-`
bootparam_root="/dev/disk/by-uuid/$root_uuid"
- fi
-
- if [ "`echo ${bootparam_root} | cut -c1-9`" = "PARTUUID=" ]; then
+ elif [ "`echo ${bootparam_root} | cut -c1-9`" = "PARTUUID=" ]; then
root_partuuid=`echo $bootparam_root | cut -c10-`
bootparam_root="/dev/disk/by-partuuid/$root_partuuid"
- fi
-
- if [ "`echo ${bootparam_root} | cut -c1-10`" = "PARTLABEL=" ]; then
- root_partlabel=`echo $bootparam_root | cut -c11-`
- bootparam_root="/dev/disk/by-partlabel/$root_partlabel"
- fi
-
- if [ "`echo ${bootparam_root} | cut -c1-10`" = "PARTLABEL=" ]; then
+ elif [ "`echo ${bootparam_root} | cut -c1-10`" = "PARTLABEL=" ]; then
root_partlabel=`echo $bootparam_root | cut -c11-`
bootparam_root="/dev/disk/by-partlabel/$root_partlabel"
- fi
-
- if [ "`echo ${bootparam_root} | cut -c1-6`" = "LABEL=" ]; then
+ elif [ "`echo ${bootparam_root} | cut -c1-6`" = "LABEL=" ]; then
root_label=`echo $bootparam_root | cut -c7-`
bootparam_root="/dev/disk/by-label/$root_label"
fi
diff --git a/poky/meta/recipes-core/libxcrypt/files/0001-configure.ac-do-not-use-compute-symver-floor.patch b/poky/meta/recipes-core/libxcrypt/files/0001-configure.ac-do-not-use-compute-symver-floor.patch
new file mode 100644
index 000000000..4e6b42710
--- /dev/null
+++ b/poky/meta/recipes-core/libxcrypt/files/0001-configure.ac-do-not-use-compute-symver-floor.patch
@@ -0,0 +1,32 @@
+From b28bb856ccebe8fded51d11362bf5920699eed59 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Thu, 18 Mar 2021 10:52:13 +0000
+Subject: [PATCH] configure.ac: do not use compute-symver-floor
+
+This script (newly introduced in 4.4.18) sporadically fails, without
+failing configure(), which has been reported at
+https://github.com/besser82/libxcrypt/issues/123
+
+Upstream-Status: Inappropriate
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ configure.ac | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 45b91b4..f3ba945 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -426,11 +426,7 @@ if test x$enable_shared != xyes; then enable_obsolete_api=0; fi
+ # need to be binary backward compatible with.
+ if test $enable_obsolete_api = 1; then
+ AC_MSG_CHECKING([minimum symbol version to use for compatibility symbols])
+- SYMVER_FLOOR=$(
+- $PERL ${srcdir}/build-aux/compute-symver-floor \
+- ${srcdir}/lib/libcrypt.minver $host_os $host_cpu \
+- 2>&AS_MESSAGE_LOG_FD
+- )
++ SYMVER_FLOOR=GLIBC_2.0
+ AC_MSG_RESULT([$SYMVER_FLOOR])
+ case "$SYMVER_FLOOR" in
+ ERROR)
diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt.inc b/poky/meta/recipes-core/libxcrypt/libxcrypt.inc
index e9f968b55..b5ca863d5 100644
--- a/poky/meta/recipes-core/libxcrypt/libxcrypt.inc
+++ b/poky/meta/recipes-core/libxcrypt/libxcrypt.inc
@@ -9,7 +9,9 @@ LIC_FILES_CHKSUM = "file://LICENSING;md5=bd5d9777dfe7076c4f2928f12fed226a \
inherit autotools pkgconfig
-SRC_URI = "git://github.com/besser82/libxcrypt.git;branch=${SRCBRANCH}"
+SRC_URI = "git://github.com/besser82/libxcrypt.git;branch=${SRCBRANCH} \
+ file://0001-configure.ac-do-not-use-compute-symver-floor.patch \
+ "
SRCREV = "94d84f92ca123d851586016c4678eb1f21c19029"
SRCBRANCH ?= "develop"
diff --git a/poky/meta/recipes-core/meta/cve-update-db-native.bb b/poky/meta/recipes-core/meta/cve-update-db-native.bb
index cf62e1e32..25ec6bac7 100644
--- a/poky/meta/recipes-core/meta/cve-update-db-native.bb
+++ b/poky/meta/recipes-core/meta/cve-update-db-native.bb
@@ -12,6 +12,8 @@ deltask do_compile
deltask do_install
deltask do_populate_sysroot
+NVDCVE_URL ?= "https://nvd.nist.gov/feeds/json/cve/1.1/nvdcve-1.1-"
+
python () {
if not bb.data.inherits_class("cve-check", d):
raise bb.parse.SkipRecipe("Skip recipe when cve-check class is not loaded.")
@@ -28,7 +30,6 @@ python do_fetch() {
bb.utils.export_proxies(d)
- BASE_URL = "https://nvd.nist.gov/feeds/json/cve/1.1/nvdcve-1.1-"
YEAR_START = 2002
db_file = d.getVar("CVE_CHECK_DB_FILE")
@@ -64,7 +65,7 @@ python do_fetch() {
for i, year in enumerate(range(YEAR_START, date.today().year + 1)):
bb.debug(2, "Updating %d" % year)
ph.update((float(i + 1) / total_years) * 100)
- year_url = BASE_URL + str(year)
+ year_url = (d.getVar('NVDCVE_URL')) + str(year)
meta_url = year_url + ".meta"
json_url = year_url + ".json.gz"
@@ -143,9 +144,14 @@ def parse_node_and_insert(c, node, cveId):
product = cpe23[4]
version = cpe23[5]
+ if cpe23[6] == '*' or cpe23[6] == '-':
+ version_suffix = ""
+ else:
+ version_suffix = "_" + cpe23[6]
+
if version != '*' and version != '-':
# Version is defined, this is a '=' match
- yield [cveId, vendor, product, version, '=', '', '']
+ yield [cveId, vendor, product, version + version_suffix, '=', '', '']
elif version == '-':
# no version information is available
yield [cveId, vendor, product, version, '', '', '']
diff --git a/poky/meta/recipes-core/meta/uninative-tarball.bb b/poky/meta/recipes-core/meta/uninative-tarball.bb
index c4a6c96b4..bbdaebad9 100644
--- a/poky/meta/recipes-core/meta/uninative-tarball.bb
+++ b/poky/meta/recipes-core/meta/uninative-tarball.bb
@@ -8,6 +8,7 @@ TOOLCHAIN_TARGET_TASK = ""
# utf-16, cp1252 - binutils-windres
TOOLCHAIN_HOST_TASK = "\
nativesdk-glibc \
+ nativesdk-glibc-dbg \
nativesdk-glibc-gconv-ibm850 \
nativesdk-glibc-gconv-iso8859-1 \
nativesdk-glibc-gconv-utf-16 \
diff --git a/poky/meta/recipes-core/musl/libucontext_git.bb b/poky/meta/recipes-core/musl/libucontext_git.bb
index 734ad9c95..11affebb4 100644
--- a/poky/meta/recipes-core/musl/libucontext_git.bb
+++ b/poky/meta/recipes-core/musl/libucontext_git.bb
@@ -40,8 +40,8 @@ def map_kernel_arch(a, d):
elif re.match('aarch64_be_ilp32$', a): return 'aarch64'
elif re.match('mips(isa|)(32|)(r6|)(el|)$', a): return 'mips'
elif re.match('mips(isa|)64(r6|)(el|)$', a): return 'mips64'
+ elif re.match('p(pc64|owerpc64)(le)', a): return 'ppc64'
elif re.match('p(pc|owerpc)', a): return 'ppc'
- elif re.match('p(pc64|owerpc64)', a): return 'ppc64'
elif re.match('riscv64$', a): return 'riscv64'
elif re.match('riscv32$', a): return 'riscv32'
else:
diff --git a/poky/meta/recipes-core/ovmf/ovmf/0003-ovmf-enable-long-path-file.patch b/poky/meta/recipes-core/ovmf/ovmf/0003-ovmf-enable-long-path-file.patch
deleted file mode 100644
index df1d15901..000000000
--- a/poky/meta/recipes-core/ovmf/ovmf/0003-ovmf-enable-long-path-file.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From e19481e5a64f8915ac118899b10c40d12c0f9daa Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@windriver.com>
-Date: Mon, 11 Sep 2017 02:21:55 -0400
-Subject: [PATCH 3/4] ovmf: enable long path file
-
-Upstream-Status: Pending
-Signed-off-by: Dengke Du <dengke.du@windriver.com>
-
----
- BaseTools/Source/C/Common/CommonLib.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/BaseTools/Source/C/Common/CommonLib.h b/BaseTools/Source/C/Common/CommonLib.h
-index e1cce985f7..d67d03c70c 100644
---- a/BaseTools/Source/C/Common/CommonLib.h
-+++ b/BaseTools/Source/C/Common/CommonLib.h
-@@ -14,7 +14,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
- #include <assert.h>
- #define PRINTED_GUID_BUFFER_SIZE 37 // including null-termination
-
--#define MAX_LONG_FILE_PATH 500
-+#define MAX_LONG_FILE_PATH 1023
-
- #define MAX_UINT64 ((UINT64)0xFFFFFFFFFFFFFFFFULL)
- #define MAX_UINT32 ((UINT32)0xFFFFFFFF)
---
-2.28.0
-
diff --git a/poky/meta/recipes-core/ovmf/ovmf/zero.patch b/poky/meta/recipes-core/ovmf/ovmf/zero.patch
new file mode 100644
index 000000000..af7a9d31f
--- /dev/null
+++ b/poky/meta/recipes-core/ovmf/ovmf/zero.patch
@@ -0,0 +1,84 @@
+Pass --zero to GenFw in release builds so that the sections that link back to
+the intermediate binaries (containing build paths) are removed.
+
+Upstream-Status: Pending (discussion at https://bugzilla.tianocore.org/show_bug.cgi?id=3256)
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+From 6303b065802c9427c718fda129360189b79316e7 Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@arm.com>
+Date: Tue, 16 Mar 2021 16:49:49 +0000
+Subject: [PATCH] Strip build paths
+
+---
+ OvmfPkg/AmdSev/AmdSevX64.dsc | 1 +
+ OvmfPkg/Bhyve/BhyveX64.dsc | 1 +
+ OvmfPkg/OvmfPkgIa32.dsc | 2 ++
+ OvmfPkg/OvmfPkgIa32X64.dsc | 1 +
+ OvmfPkg/OvmfPkgX64.dsc | 1 +
+ OvmfPkg/OvmfXen.dsc | 1 +
+ 6 files changed, 7 insertions(+)
+
+diff --git a/OvmfPkg/Bhyve/BhyveX64.dsc b/OvmfPkg/Bhyve/BhyveX64.dsc
+index 4a1cdf5aca..132f55cf69 100644
+--- a/OvmfPkg/Bhyve/BhyveX64.dsc
++++ b/OvmfPkg/Bhyve/BhyveX64.dsc
+@@ -76,6 +76,7 @@
+ GCC:*_*_X64_GENFW_FLAGS = --keepexceptiontable
+ INTEL:*_*_X64_GENFW_FLAGS = --keepexceptiontable
+ !endif
++ RELEASE_*_*_GENFW_FLAGS = --zero
+
+ #
+ # Disable deprecated APIs.
+diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc
+index 1eaf3e99c6..ce20f09df8 100644
+--- a/OvmfPkg/OvmfPkgIa32.dsc
++++ b/OvmfPkg/OvmfPkgIa32.dsc
+@@ -90,6 +90,8 @@
+
+ !include NetworkPkg/NetworkBuildOptions.dsc.inc
+
++ RELEASE_*_*_GENFW_FLAGS = --zero
++
+ [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
+ GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
+ XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
+diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc
+index 4a5a430147..97cc438250 100644
+--- a/OvmfPkg/OvmfPkgIa32X64.dsc
++++ b/OvmfPkg/OvmfPkgIa32X64.dsc
+@@ -84,6 +84,7 @@
+ GCC:*_*_X64_GENFW_FLAGS = --keepexceptiontable
+ INTEL:*_*_X64_GENFW_FLAGS = --keepexceptiontable
+ !endif
++ RELEASE_*_*_GENFW_FLAGS = --zero
+
+ #
+ # Disable deprecated APIs.
+diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc
+index d4d601b444..f544fb04bf 100644
+--- a/OvmfPkg/OvmfPkgX64.dsc
++++ b/OvmfPkg/OvmfPkgX64.dsc
+@@ -84,6 +84,7 @@
+ GCC:*_*_X64_GENFW_FLAGS = --keepexceptiontable
+ INTEL:*_*_X64_GENFW_FLAGS = --keepexceptiontable
+ !endif
++ RELEASE_*_*_GENFW_FLAGS = --zero
+
+ #
+ # Disable deprecated APIs.
+diff --git a/OvmfPkg/OvmfXen.dsc b/OvmfPkg/OvmfXen.dsc
+index 507029404f..fcaa35acf1 100644
+--- a/OvmfPkg/OvmfXen.dsc
++++ b/OvmfPkg/OvmfXen.dsc
+@@ -74,6 +74,7 @@
+ GCC:*_*_X64_GENFW_FLAGS = --keepexceptiontable
+ INTEL:*_*_X64_GENFW_FLAGS = --keepexceptiontable
+ !endif
++ RELEASE_*_*_GENFW_FLAGS = --zero
+
+ #
+ # Disable deprecated APIs.
+--
+2.25.1
+
diff --git a/poky/meta/recipes-core/ovmf/ovmf_git.bb b/poky/meta/recipes-core/ovmf/ovmf_git.bb
index d785ff670..896b3b632 100644
--- a/poky/meta/recipes-core/ovmf/ovmf_git.bb
+++ b/poky/meta/recipes-core/ovmf/ovmf_git.bb
@@ -15,12 +15,12 @@ PACKAGECONFIG[secureboot] = ",,,"
SRC_URI = "gitsm://github.com/tianocore/edk2.git;branch=master;protocol=https \
file://0001-ovmf-update-path-to-native-BaseTools.patch \
file://0002-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch \
- file://0003-ovmf-enable-long-path-file.patch \
file://0004-ovmf-Update-to-latest.patch \
+ file://zero.patch \
"
-PV = "edk2-stable202011"
-SRCREV = "872f953262d68a11da7bc2fb3ded16df234b8700"
+PV = "edk2-stable202102"
+SRCREV = "ef91b07388e1c0a50c604e5350eeda98428ccea6"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>edk2-stable.*)"
inherit deploy
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-base.bb b/poky/meta/recipes-core/packagegroups/packagegroup-base.bb
index c882e1526..6d4d7e6f7 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-base.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-base.bb
@@ -8,7 +8,6 @@ PACKAGE_ARCH = "${MACHINE_ARCH}"
inherit packagegroup
-PROVIDES = "${PACKAGES}"
PACKAGES = ' \
packagegroup-base \
packagegroup-base-extended \
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-nfs.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-nfs.bb
index b345e314a..20fe6fc09 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-core-nfs.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-nfs.bb
@@ -7,7 +7,6 @@ PR = "r2"
inherit packagegroup
-PROVIDES = "${PACKAGES}"
PACKAGES = "${PN}-server ${PN}-client"
SUMMARY_${PN}-client = "NFS client"
diff --git a/poky/meta/recipes-core/systemd/systemd-boot_247.3.bb b/poky/meta/recipes-core/systemd/systemd-boot_247.4.bb
index 249e620f4..249e620f4 100644
--- a/poky/meta/recipes-core/systemd/systemd-boot_247.3.bb
+++ b/poky/meta/recipes-core/systemd/systemd-boot_247.4.bb
diff --git a/poky/meta/recipes-core/systemd/systemd-conf/wired.network b/poky/meta/recipes-core/systemd/systemd-conf/wired.network
index 09367edb1..e7b69970d 100644
--- a/poky/meta/recipes-core/systemd/systemd-conf/wired.network
+++ b/poky/meta/recipes-core/systemd/systemd-conf/wired.network
@@ -1,6 +1,7 @@
[Match]
Type=ether
KernelCommandLine=!nfsroot
+KernelCommandLine=!ip
[Network]
DHCP=yes
diff --git a/poky/meta/recipes-core/systemd/systemd-conf_247.3.bb b/poky/meta/recipes-core/systemd/systemd-conf_247.3.bb
index 944b56ff8..ea35e83f4 100644
--- a/poky/meta/recipes-core/systemd/systemd-conf_247.3.bb
+++ b/poky/meta/recipes-core/systemd/systemd-conf_247.3.bb
@@ -29,9 +29,6 @@ do_install() {
# Based on change from YP bug 8141, OE commit 5196d7bacaef1076c361adaa2867be31759c1b52
do_install_append_qemuall() {
install -D -m0644 ${WORKDIR}/system.conf-qemuall ${D}${systemd_unitdir}/system.conf.d/01-${PN}.conf
-
- # Do not install wired.network for qemu bsps
- rm -rf ${D}${systemd_unitdir}/network
}
PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/poky/meta/recipes-core/systemd/systemd.inc b/poky/meta/recipes-core/systemd/systemd.inc
index ccff8c8b9..098bca98f 100644
--- a/poky/meta/recipes-core/systemd/systemd.inc
+++ b/poky/meta/recipes-core/systemd/systemd.inc
@@ -14,7 +14,7 @@ LICENSE = "GPLv2 & LGPLv2.1"
LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \
file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c"
-SRCREV = "551dd873b0bdfb9e7e47431b2933c8b910228f0c"
+SRCREV = "069525e84a67375e27429cb490e8d28af78e673a"
SRCBRANCH = "v247-stable"
SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=git;branch=${SRCBRANCH}"
diff --git a/poky/meta/recipes-core/systemd/systemd/0001-systemd.pc.in-use-ROOTPREFIX-without-suffixed-slash.patch b/poky/meta/recipes-core/systemd/systemd/0001-systemd.pc.in-use-ROOTPREFIX-without-suffixed-slash.patch
index e49e06672..752824688 100644
--- a/poky/meta/recipes-core/systemd/systemd/0001-systemd.pc.in-use-ROOTPREFIX-without-suffixed-slash.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0001-systemd.pc.in-use-ROOTPREFIX-without-suffixed-slash.patch
@@ -12,10 +12,12 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
src/core/systemd.pc.in | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
+diff --git a/src/core/systemd.pc.in b/src/core/systemd.pc.in
+index b5cc8f9..21dbf30 100644
--- a/src/core/systemd.pc.in
+++ b/src/core/systemd.pc.in
@@ -65,16 +65,16 @@ systemdshutdowndir=${systemd_shutdown_dir}
- tmpfiles_dir=/usr/lib/tmpfiles.d
+ tmpfiles_dir=${prefix}/lib/tmpfiles.d
tmpfilesdir=${tmpfiles_dir}
-sysusers_dir=${rootprefix}/lib/sysusers.d
@@ -34,4 +36,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
+modules_load_dir=${prefix}/lib/modules-load.d
modulesloaddir=${modules_load_dir}
- catalog_dir=/usr/lib/systemd/catalog
+ catalog_dir=${prefix}/lib/systemd/catalog
+--
+2.25.1
+
diff --git a/poky/meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch b/poky/meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch
index b689cf129..a978558b4 100644
--- a/poky/meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch
@@ -41,20 +41,22 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
src/network/netdev/netdev-gperf.gperf | 1 +
src/network/netdev/netdev.c | 1 +
src/network/networkd-brvlan.c | 1 +
- src/network/networkd-dhcp-common.c | 1 +
+ src/network/networkd-dhcp-common.c | 4 +++-
+ src/network/networkd-dhcp-server.c | 4 ++--
src/network/networkd-dhcp4.c | 2 +-
src/network/networkd-dhcp6.c | 2 +-
src/network/networkd-link.c | 2 +-
src/network/networkd-network.c | 1 +
+ src/network/networkd-route.c | 5 ++++-
src/network/test-network-tables.c | 1 +
src/shared/ethtool-util.c | 1 +
src/shared/ethtool-util.h | 1 +
src/udev/net/link-config.c | 1 +
src/udev/udev-builtin-net_setup_link.c | 1 +
- 19 files changed, 18 insertions(+), 4 deletions(-)
+ 21 files changed, 26 insertions(+), 8 deletions(-)
diff --git a/src/libsystemd-network/sd-dhcp6-client.c b/src/libsystemd-network/sd-dhcp6-client.c
-index 30ac526fc9..126077e13c 100644
+index 66f87c4b95..de1264ae46 100644
--- a/src/libsystemd-network/sd-dhcp6-client.c
+++ b/src/libsystemd-network/sd-dhcp6-client.c
@@ -5,7 +5,6 @@
@@ -158,7 +160,7 @@ index e53c73c30c..9bf0771b84 100644
#include <stdbool.h>
diff --git a/src/network/networkd-dhcp-common.c b/src/network/networkd-dhcp-common.c
-index c338c775a7..ab35d65c53 100644
+index 9f58121350..554d006cb8 100644
--- a/src/network/networkd-dhcp-common.c
+++ b/src/network/networkd-dhcp-common.c
@@ -1,7 +1,8 @@
@@ -171,7 +173,7 @@ index c338c775a7..ab35d65c53 100644
#include "dhcp-internal.h"
#include "dhcp6-internal.h"
-@@ -10,6 +10,7 @@
+@@ -10,6 +11,7 @@
#include "networkd-dhcp-common.h"
#include "networkd-link.h"
#include "networkd-manager.h"
@@ -195,7 +197,7 @@ index cf279c640d..bae541029b 100644
#include "sd-dhcp-server.h"
diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c
-index 02d33841b6..a30d8dd82c 100644
+index f3c1e5f609..e4ef6eca63 100644
--- a/src/network/networkd-dhcp4.c
+++ b/src/network/networkd-dhcp4.c
@@ -1,9 +1,9 @@
@@ -210,7 +212,7 @@ index 02d33841b6..a30d8dd82c 100644
#include "escape.h"
#include "alloc-util.h"
diff --git a/src/network/networkd-dhcp6.c b/src/network/networkd-dhcp6.c
-index d4d4182ee5..635d08f7d5 100644
+index 5c077c1ec8..fa98042aa5 100644
--- a/src/network/networkd-dhcp6.c
+++ b/src/network/networkd-dhcp6.c
@@ -3,9 +3,9 @@
@@ -225,7 +227,7 @@ index d4d4182ee5..635d08f7d5 100644
#include "sd-dhcp6-client.h"
diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
-index ced18de425..07b43770de 100644
+index 3bfe636691..e0c68c8ad3 100644
--- a/src/network/networkd-link.c
+++ b/src/network/networkd-link.c
@@ -1,8 +1,8 @@
@@ -250,7 +252,7 @@ index 3254641461..f0ada419fd 100644
#include <netinet/in.h>
#include <linux/netdevice.h>
diff --git a/src/network/networkd-route.c b/src/network/networkd-route.c
-index 10f30c1a7e..579885726c 100644
+index 0ed89584ef..e7e157c201 100644
--- a/src/network/networkd-route.c
+++ b/src/network/networkd-route.c
@@ -1,7 +1,10 @@
@@ -311,16 +313,16 @@ index d12fd0e299..636806dc23 100644
#include <netinet/ether.h>
#include <unistd.h>
diff --git a/src/udev/udev-builtin-net_setup_link.c b/src/udev/udev-builtin-net_setup_link.c
-index cb12b943fe..5a28c8b563 100644
+index 87e1fb133e..13876029d0 100644
--- a/src/udev/udev-builtin-net_setup_link.c
+++ b/src/udev/udev-builtin-net_setup_link.c
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <netinet/if_ether.h>
- #include "device-util.h"
#include "alloc-util.h"
- #include "link-config.h"
+ #include "device-util.h"
+ #include "errno-util.h"
--
-2.27.0
+2.25.1
diff --git a/poky/meta/recipes-core/systemd/systemd_247.3.bb b/poky/meta/recipes-core/systemd/systemd_247.4.bb
index c0073ad7b..cd67e65ab 100644
--- a/poky/meta/recipes-core/systemd/systemd_247.3.bb
+++ b/poky/meta/recipes-core/systemd/systemd_247.4.bb
@@ -484,10 +484,15 @@ FILES_${PN}-container = "${sysconfdir}/dbus-1/system.d/org.freedesktop.import1.c
${datadir}/polkit-1/actions/org.freedesktop.machine1.policy \
"
+# "machinectl import-tar" uses "tar --numeric-owner", not supported by busybox.
RRECOMMENDS_${PN}-container += "\
- ${PN}-journal-upload \
- ${PN}-journal-remote \
${PN}-journal-gatewayd \
+ ${PN}-journal-remote \
+ ${PN}-journal-upload \
+ kernel-module-dm-mod \
+ kernel-module-loop \
+ kernel-module-tun \
+ tar \
"
FILES_${PN}-extra-utils = "\
diff --git a/poky/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb b/poky/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
index d95d1a63f..0af116f35 100644
--- a/poky/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
+++ b/poky/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
@@ -53,6 +53,10 @@ EOF
fi
}
+do_install_append_qemuppc64 () {
+ echo "9:12345:respawn:${base_sbindir}/getty 38400 hvc0" >> ${D}${sysconfdir}/inittab
+}
+
pkg_postinst_${PN} () {
# run this on host and on target
if [ "${SERIAL_CONSOLES_CHECK}" = "" ]; then
diff --git a/poky/meta/recipes-core/util-linux/util-linux-libuuid_2.36.2.bb b/poky/meta/recipes-core/util-linux/util-linux-libuuid_2.36.2.bb
new file mode 100644
index 000000000..9612c491c
--- /dev/null
+++ b/poky/meta/recipes-core/util-linux/util-linux-libuuid_2.36.2.bb
@@ -0,0 +1,16 @@
+# To allow util-linux to optionally build-depend on cryptsetup, libuuid is
+# split out of the main recipe, as it's needed by cryptsetup
+
+require util-linux.inc
+
+inherit autotools gettext pkgconfig
+
+S = "${WORKDIR}/util-linux-${PV}"
+EXTRA_OECONF += "--disable-all-programs --enable-libuuid"
+LICENSE = "BSD-3-Clause"
+
+do_install_append() {
+ rm -rf ${D}${datadir} ${D}${bindir} ${D}${base_bindir} ${D}${sbindir} ${D}${base_sbindir} ${D}${exec_prefix}/sbin
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-core/util-linux/util-linux.inc b/poky/meta/recipes-core/util-linux/util-linux.inc
new file mode 100644
index 000000000..cbf6102ee
--- /dev/null
+++ b/poky/meta/recipes-core/util-linux/util-linux.inc
@@ -0,0 +1,41 @@
+SUMMARY = "A suite of basic system administration utilities"
+HOMEPAGE = "https://en.wikipedia.org/wiki/Util-linux"
+DESCRIPTION = "Util-linux includes a suite of basic system administration utilities \
+commonly found on most Linux systems. Some of the more important utilities include \
+disk partitioning, kernel message management, filesystem creation, and system login."
+
+SECTION = "base"
+
+LICENSE = "GPLv2+ & LGPLv2.1+ & BSD-3-Clause & BSD-4-Clause"
+LICENSE_${PN}-libblkid = "LGPLv2.1+"
+LICENSE_${PN}-libfdisk = "LGPLv2.1+"
+LICENSE_${PN}-libmount = "LGPLv2.1+"
+LICENSE_${PN}-libsmartcols = "LGPLv2.1+"
+
+LIC_FILES_CHKSUM = "file://README.licensing;md5=0fd5c050c6187d2bf0a4492b7f4e33da \
+ file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://Documentation/licenses/COPYING.GPL-2.0-or-later;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://Documentation/licenses/COPYING.LGPL-2.1-or-later;md5=4fbd65380cdd255951079008b364516c \
+ file://Documentation/licenses/COPYING.BSD-3-Clause;md5=58dcd8452651fc8b07d1f65ce07ca8af \
+ file://Documentation/licenses/COPYING.BSD-4-Clause-UC;md5=263860f8968d8bafa5392cab74285262 \
+ file://libuuid/COPYING;md5=6d2cafc999feb2c2de84d4d24b23290c \
+ file://libmount/COPYING;md5=7c7e39fb7d70ffe5d693a643e29987c2 \
+ file://libblkid/COPYING;md5=693bcbbe16d3a4a4b37bc906bc01cc04 \
+ file://libfdisk/COPYING;md5=693bcbbe16d3a4a4b37bc906bc01cc04 \
+ file://libsmartcols/COPYING;md5=693bcbbe16d3a4a4b37bc906bc01cc04 \
+"
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/util-linux:"
+MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:2])}"
+BPN = "util-linux"
+SRC_URI = "${KERNELORG_MIRROR}/linux/utils/${BPN}/v${MAJOR_VERSION}/${BP}.tar.xz \
+ file://configure-sbindir.patch \
+ file://runuser.pamd \
+ file://runuser-l.pamd \
+ file://ptest.patch \
+ file://run-ptest \
+ file://display_testname_for_subtest.patch \
+ file://avoid_parallel_tests.patch \
+ file://Automake-use-EXTRA_LTLIBRARIES-instead-of-noinst_LTL.patch \
+ "
+SRC_URI[sha256sum] = "f7516ba9d8689343594356f0e5e1a5f0da34adfbc89023437735872bb5024c5f"
diff --git a/poky/meta/recipes-core/util-linux/util-linux/Automake-use-EXTRA_LTLIBRARIES-instead-of-noinst_LTL.patch b/poky/meta/recipes-core/util-linux/util-linux/Automake-use-EXTRA_LTLIBRARIES-instead-of-noinst_LTL.patch
new file mode 100644
index 000000000..272518914
--- /dev/null
+++ b/poky/meta/recipes-core/util-linux/util-linux/Automake-use-EXTRA_LTLIBRARIES-instead-of-noinst_LTL.patch
@@ -0,0 +1,49 @@
+Author: Luca Boccassi <luca.boccassi@microsoft.com>
+Description: Automake: use EXTRA_LTLIBRARIES instead of noinst_LTLIBRARIES
+ noinst_LTLIBRARIES causes the libraries to be always built
+ unconditionally. EXTRA_LTLIBRARIES causes them to be built
+ only if other build target needs them.
+ In other words, avoid building libcommon.a and libtcolors.a
+ unless they are needed by another library/executable and
+ save some build time.
+Upstream-Status: backport, commit:c65953d72bbc7412f32e566d9fa6e780d84f0696
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -39,7 +39,7 @@ bashcompletiondir = @bashcompletiondir@
+
+ dist_noinst_HEADERS =
+ noinst_PROGRAMS =
+-noinst_LTLIBRARIES =
++EXTRA_LTLIBRARIES =
+ usrbin_exec_PROGRAMS =
+ usrsbin_exec_PROGRAMS =
+ dist_man_MANS =
+@@ -169,7 +169,7 @@ else
+ edit_cmd += -e 's|@vendordir[@]||g'
+ endif
+
+-CLEANFILES += $(PATHFILES)
++CLEANFILES += $(PATHFILES) $(EXTRA_LTLIBRARIES)
+ EXTRA_DIST += $(PATHFILES:=.in)
+
+ $(PATHFILES): Makefile
+--- a/lib/Makemodule.am
++++ b/lib/Makemodule.am
+@@ -9,7 +9,7 @@
+ # Note that you need "make install-strip" (or proper rpm / Debian build)
+ # to generate binaries with only relevant stuff.
+ #
+-noinst_LTLIBRARIES += libcommon.la
++EXTRA_LTLIBRARIES += libcommon.la
+ libcommon_la_CFLAGS = $(AM_CFLAGS)
+ libcommon_la_SOURCES = \
+ lib/blkdev.c \
+@@ -59,7 +59,7 @@ libcommon_la_SOURCES += lib/sysfs.c
+ endif
+ endif
+
+-noinst_LTLIBRARIES += libtcolors.la
++EXTRA_LTLIBRARIES += libtcolors.la
+ libtcolors_la_CFLAGS = $(AM_CFLAGS)
+ libtcolors_la_SOURCES = lib/colors.c lib/color-names.c include/colors.h include/color-names.h
+ libtcolors_la_LIBADD =
diff --git a/poky/meta/recipes-core/util-linux/util-linux_2.36.2.bb b/poky/meta/recipes-core/util-linux/util-linux_2.36.2.bb
index 19950a272..c79cf782d 100644
--- a/poky/meta/recipes-core/util-linux/util-linux_2.36.2.bb
+++ b/poky/meta/recipes-core/util-linux/util-linux_2.36.2.bb
@@ -1,46 +1,8 @@
-SUMMARY = "A suite of basic system administration utilities"
-HOMEPAGE = "https://en.wikipedia.org/wiki/Util-linux"
-DESCRIPTION = "Util-linux includes a suite of basic system administration utilities \
-commonly found on most Linux systems. Some of the more important utilities include \
-disk partitioning, kernel message management, filesystem creation, and system login."
-
-SECTION = "base"
-
-LICENSE = "GPLv2+ & LGPLv2.1+ & BSD-3-Clause & BSD-4-Clause"
-LICENSE_${PN}-libblkid = "LGPLv2.1+"
-LICENSE_${PN}-libfdisk = "LGPLv2.1+"
-LICENSE_${PN}-libmount = "LGPLv2.1+"
-LICENSE_${PN}-libsmartcols = "LGPLv2.1+"
-LICENSE_${PN}-libuuid = "BSD-3-Clause"
-
-LIC_FILES_CHKSUM = "file://README.licensing;md5=0fd5c050c6187d2bf0a4492b7f4e33da \
- file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://Documentation/licenses/COPYING.GPL-2.0-or-later;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://Documentation/licenses/COPYING.LGPL-2.1-or-later;md5=4fbd65380cdd255951079008b364516c \
- file://Documentation/licenses/COPYING.BSD-3-Clause;md5=58dcd8452651fc8b07d1f65ce07ca8af \
- file://Documentation/licenses/COPYING.BSD-4-Clause-UC;md5=263860f8968d8bafa5392cab74285262 \
- file://libuuid/COPYING;md5=6d2cafc999feb2c2de84d4d24b23290c \
- file://libmount/COPYING;md5=7c7e39fb7d70ffe5d693a643e29987c2 \
- file://libblkid/COPYING;md5=693bcbbe16d3a4a4b37bc906bc01cc04 \
- file://libfdisk/COPYING;md5=693bcbbe16d3a4a4b37bc906bc01cc04 \
- file://libsmartcols/COPYING;md5=693bcbbe16d3a4a4b37bc906bc01cc04 \
-"
+require util-linux.inc
#gtk-doc is not enabled as it requires xmlto which requires util-linux
inherit autotools gettext manpages pkgconfig systemd update-alternatives python3-dir bash-completion ptest
-DEPENDS = "libcap-ng ncurses virtual/crypt zlib"
-
-MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:2])}"
-SRC_URI = "${KERNELORG_MIRROR}/linux/utils/${BPN}/v${MAJOR_VERSION}/${BP}.tar.xz \
- file://configure-sbindir.patch \
- file://runuser.pamd \
- file://runuser-l.pamd \
- file://ptest.patch \
- file://run-ptest \
- file://display_testname_for_subtest.patch \
- file://avoid_parallel_tests.patch \
- "
-SRC_URI[sha256sum] = "f7516ba9d8689343594356f0e5e1a5f0da34adfbc89023437735872bb5024c5f"
+DEPENDS = "libcap-ng ncurses virtual/crypt zlib util-linux-libuuid"
PACKAGES =+ "${PN}-swaponoff"
PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'pylibmount', '${PN}-pylibmount', '', d)}"
@@ -87,8 +49,9 @@ python util_linux_binpackages () {
# we must execute before update-alternatives PACKAGE_PREPROCESS_FUNCS
PACKAGE_PREPROCESS_FUNCS =+ "util_linux_binpackages "
+# skip libuuid as it will be packaged by the util-linux-libuuid recipe
python util_linux_libpackages() {
- do_split_packages(d, root=d.getVar('UTIL_LINUX_LIBDIR'), file_regex=r'^lib(.*)\.so\..*$',
+ do_split_packages(d, root=d.getVar('UTIL_LINUX_LIBDIR'), file_regex=r'^lib(?!uuid)(.*)\.so\..*$',
output_pattern='${PN}-lib%s',
description='${PN} lib%s',
extra_depends='', prepend=True, allow_links=True)
@@ -141,6 +104,7 @@ PACKAGECONFIG[pylibmount] = "--with-python=3 --enable-pylibmount,--without-pytho
PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
# PCRE support in hardlink
PACKAGECONFIG[pcre2] = ",,libpcre2"
+PACKAGECONFIG[cryptsetup] = "--with-cryptsetup,--without-cryptsetup,cryptsetup"
EXTRA_OEMAKE = "ARCH=${TARGET_ARCH} CPU= CPUOPT= 'OPT=${CFLAGS}'"
@@ -165,7 +129,10 @@ RRECOMMENDS_${PN}_class-nativesdk = ""
RDEPENDS_${PN}_class-native = ""
RDEPENDS_${PN}_class-nativesdk = ""
-RPROVIDES_${PN}-dev = "${PN}-libblkid-dev ${PN}-libmount-dev ${PN}-libuuid-dev"
+RDEPENDS_${PN} += " util-linux-libuuid"
+RDEPENDS_${PN}-dev += " util-linux-libuuid-dev"
+
+RPROVIDES_${PN}-dev = "${PN}-libblkid-dev ${PN}-libmount-dev"
RDEPENDS_${PN}-bash-completion += "${PN}-lsblk"
RDEPENDS_${PN}-ptest += "bash bc btrfs-tools coreutils e2fsprogs grep iproute2 kmod mdadm procps sed socat which xz"
@@ -234,6 +201,12 @@ do_install_append_class-native () {
rm -f ${D}${base_bindir}/kill
}
+# dm-verity support introduces a circular build dependency, so util-linux-libuuid is split out for target builds
+# Need to build libuuid for uuidgen, but then delete it and let the other recipe ship it
+do_install_append () {
+ rm -rf ${D}${includedir}/uuid ${D}${libdir}/pkgconfig/uuid.pc ${D}${libdir}/libuuid* ${D}${base_libdir}/libuuid*
+}
+
ALTERNATIVE_PRIORITY = "80"
ALTERNATIVE_LINK_NAME[blkid] = "${base_sbindir}/blkid"
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch b/poky/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch
index cc422b74d..8b28ede8a 100644
--- a/poky/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch
+++ b/poky/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch
@@ -1,4 +1,4 @@
-From cd164b353ba7958d51b2f33f4079fb9787c983e2 Mon Sep 17 00:00:00 2001
+From f629d1c3fcfb560ed24efc3e73d4e4999b1eab33 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 10 May 2019 14:16:47 +0200
Subject: [PATCH] Disable documentation directory altogether
@@ -13,11 +13,11 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 83334ba..2cd4f8e 100644
+index 9745c13..7cfc9ee 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -232,7 +232,7 @@ add_subdirectory(apt-private)
- add_subdirectory(apt-inst)
+@@ -239,7 +239,7 @@ add_subdirectory(apt-pkg)
+ add_subdirectory(apt-private)
add_subdirectory(cmdline)
add_subdirectory(completions)
-add_subdirectory(doc)
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Do-not-configure-packages-on-installation.patch b/poky/meta/recipes-devtools/apt/apt/0001-Do-not-configure-packages-on-installation.patch
deleted file mode 100644
index 81b328a2e..000000000
--- a/poky/meta/recipes-devtools/apt/apt/0001-Do-not-configure-packages-on-installation.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 96d23fc57d1ff9c851d563d6d6a6c4752dc4f1b6 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Thu, 21 May 2020 20:28:12 +0000
-Subject: [PATCH] Do not configure packages on installation
-
-This is done separately in do_rootfs().
-
-Upstream-Status: Inappropriate [oe-core specific]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
-
----
- apt-pkg/packagemanager.cc | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc
-index 156f7ad..0f6a87c 100644
---- a/apt-pkg/packagemanager.cc
-+++ b/apt-pkg/packagemanager.cc
-@@ -1013,10 +1013,12 @@ bool pkgPackageManager::SmartUnPack(PkgIterator Pkg, bool const Immediate, int c
- return false;
-
- if (Immediate == true) {
-+#if 0
- // Perform immediate configuration of the package.
- if (SmartConfigure(Pkg, Depth + 1) == false)
- _error->Error(_("Could not perform immediate configuration on '%s'. "
- "Please see man 5 apt.conf under APT::Immediate-Configure for details. (%d)"),Pkg.FullName().c_str(),2);
-+#endif
- }
-
- return true;
-@@ -1111,6 +1113,7 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall()
- }
- }
-
-+#if 0
- // Final run through the configure phase
- if (ConfigureAll() == false)
- return Failed;
-@@ -1125,7 +1128,7 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall()
- return Failed;
- }
- }
--
-+#endif
- return Completed;
- }
- // PM::DoInstallPostFork - compat /*{{{*/
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch b/poky/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch
index 1417153e8..e0e7e0cd5 100644
--- a/poky/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch
+++ b/poky/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch
@@ -1,4 +1,4 @@
-From bf45c314867e5fb12141803fba06f3e45679d628 Mon Sep 17 00:00:00 2001
+From 382f8381ef8baf754057e376a6d9bf840ca6d543 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 10 May 2019 16:47:38 +0200
Subject: [PATCH] Do not init tables from dpkg configuration
@@ -13,7 +13,7 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/apt-pkg/init.cc b/apt-pkg/init.cc
-index a619368..6e5a6cf 100644
+index b9d9b15..1725c59 100644
--- a/apt-pkg/init.cc
+++ b/apt-pkg/init.cc
@@ -281,8 +281,8 @@ bool pkgInitSystem(Configuration &Cnf,pkgSystem *&Sys)
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch b/poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch
index 37f969690..c14dc2a41 100644
--- a/poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch
+++ b/poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch
@@ -1,4 +1,4 @@
-From 34700bebc52659e7e3eecd252f65bd36e669eee8 Mon Sep 17 00:00:00 2001
+From a603b3281f3f60a87531c8cec4843f970170d409 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Thu, 21 May 2020 20:13:25 +0000
Subject: [PATCH] Revert "always run 'dpkg --configure -a' at the end of our
@@ -20,10 +20,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc
-index ffa880d..5875e86 100644
+index 46a6dee..8617a9e 100644
--- a/apt-pkg/deb/dpkgpm.cc
+++ b/apt-pkg/deb/dpkgpm.cc
-@@ -1215,12 +1215,6 @@ void pkgDPkgPM::BuildPackagesProgressMap()
+@@ -1211,12 +1211,6 @@ void pkgDPkgPM::BuildPackagesProgressMap()
}
}
}
@@ -35,8 +35,8 @@ index ffa880d..5875e86 100644
- ++PackagesTotal;
}
/*}}}*/
- bool pkgDPkgPM::Go(int StatusFd) /*{{{*/
-@@ -1716,7 +1710,8 @@ bool pkgDPkgPM::Go(APT::Progress::PackageManager *progress)
+ void pkgDPkgPM::StartPtyMagic() /*{{{*/
+@@ -1710,7 +1704,8 @@ bool pkgDPkgPM::Go(APT::Progress::PackageManager *progress)
// support subpressing of triggers processing for special
// cases like d-i that runs the triggers handling manually
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-cmake-Do-not-build-po-files.patch b/poky/meta/recipes-devtools/apt/apt/0001-cmake-Do-not-build-po-files.patch
new file mode 100644
index 000000000..2837b7f1b
--- /dev/null
+++ b/poky/meta/recipes-devtools/apt/apt/0001-cmake-Do-not-build-po-files.patch
@@ -0,0 +1,37 @@
+From 33347f9f8301633b01af4e208b7be5fdfcb0df0c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 20 Mar 2021 14:45:18 -0700
+Subject: [PATCH] cmake: Do not build po files
+
+Fixes
+| CMake Error at CMakeLists.txt:252 (add_dependencies):
+| The dependency target "update-po4a" of target "update-po" does not exist.
+|
+
+Upstream-Status: Inappropriate [Cross-compile specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ CMakeLists.txt | 7 -------
+ 1 file changed, 7 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 3c8ec3f..821a24f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -245,13 +245,6 @@ add_subdirectory(ftparchive)
+ add_subdirectory(methods)
+ add_subdirectory(test)
+
+-if (USE_NLS)
+-add_subdirectory(po)
+-
+-# Link update-po4a into the update-po target
+-add_dependencies(update-po update-po4a)
+-endif()
+-
+ # Create our directories.
+ install_empty_directories(
+ ${CONF_DIR}/apt.conf.d
+--
+2.31.0
+
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-srvrec-Keep-support-for-older-resolver.patch b/poky/meta/recipes-devtools/apt/apt/0001-srvrec-Keep-support-for-older-resolver.patch
new file mode 100644
index 000000000..94d67a87a
--- /dev/null
+++ b/poky/meta/recipes-devtools/apt/apt/0001-srvrec-Keep-support-for-older-resolver.patch
@@ -0,0 +1,44 @@
+From f98c12b9f04ef3a9daec822c210044095b41a0ac Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 20 Mar 2021 12:33:34 -0700
+Subject: [PATCH] srvrec: Keep support for older resolver
+
+Some C libraries e.g. musl do not implement the new res_n* APIs
+therefore keep the old implementation as fallback and check __RES
+version macro to determine the API level
+
+Upstream-Status: Submitted [https://github.com/Debian/apt/pull/129]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Cc: Julian Andres Klode <julian.klode@canonical.com>
+---
+ apt-pkg/contrib/srvrec.cc | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/apt-pkg/contrib/srvrec.cc b/apt-pkg/contrib/srvrec.cc
+index 4ca208273..3eb5f1d4c 100644
+--- a/apt-pkg/contrib/srvrec.cc
++++ b/apt-pkg/contrib/srvrec.cc
+@@ -62,6 +62,7 @@ bool GetSrvRecords(std::string name, std::vector<SrvRec> &Result)
+ unsigned char answer[PACKETSZ];
+ int answer_len, compressed_name_len;
+ int answer_count;
++#if __RES >= 19991006
+ struct __res_state res;
+
+ if (res_ninit(&res) != 0)
+@@ -71,6 +72,12 @@ bool GetSrvRecords(std::string name, std::vector<SrvRec> &Result)
+ std::shared_ptr<void> guard(&res, res_nclose);
+
+ answer_len = res_nquery(&res, name.c_str(), C_IN, T_SRV, answer, sizeof(answer));
++#else
++ if (res_init() != 0)
++ return _error->Errno("res_init", "Failed to init resolver");
++
++ answer_len = res_query(name.c_str(), C_IN, T_SRV, answer, sizeof(answer));
++#endif //__RES >= 19991006
+ if (answer_len == -1)
+ return false;
+ if (answer_len < (int)sizeof(HEADER))
+--
+2.31.0
+
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-test-libapt-do-not-use-gtest-from-the-host.patch b/poky/meta/recipes-devtools/apt/apt/0001-test-libapt-do-not-use-gtest-from-the-host.patch
deleted file mode 100644
index 503b5a5c0..000000000
--- a/poky/meta/recipes-devtools/apt/apt/0001-test-libapt-do-not-use-gtest-from-the-host.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 28e389a0d1275e7693df84a7d4a58b28364be1a9 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Thu, 22 Oct 2020 17:33:38 +0200
-Subject: [PATCH] test/libapt: do not use gtest from the host
-
-This really does not work when cross-compiling.
-
-Upstream-Status: Inappropriate [oe-core specific]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- test/libapt/CMakeLists.txt | 16 ----------------
- 1 file changed, 16 deletions(-)
-
-diff --git a/test/libapt/CMakeLists.txt b/test/libapt/CMakeLists.txt
-index 035ff07..280b83c 100644
---- a/test/libapt/CMakeLists.txt
-+++ b/test/libapt/CMakeLists.txt
-@@ -6,22 +6,6 @@ find_path(GTEST_ROOT src/gtest.cc
- find_package(GTest)
- set(GTEST_DEPENDENCIES)
-
--if(NOT GTEST_FOUND AND EXISTS ${GTEST_ROOT})
-- include(ExternalProject)
-- ExternalProject_Add(gtest PREFIX ./gtest
-- SOURCE_DIR ${GTEST_ROOT}
-- INSTALL_COMMAND true)
--
-- link_directories(${CMAKE_CURRENT_BINARY_DIR}/gtest/src/gtest-build)
--
-- set(GTEST_LIBRARIES "-lgtest")
-- set(GTEST_DEPENDENCIES "gtest")
-- set(GTEST_FOUND TRUE)
-- find_path(GTEST_INCLUDE_DIRS NAMES gtest/gtest.h PATHS ${GTEST_ROOT}/include)
--
-- message(STATUS "Found GTest at ${GTEST_ROOT}, headers at ${GTEST_INCLUDE_DIRS}")
--endif()
--
- if(GTEST_FOUND)
- # gtest produces some warnings with the set of warnings we activate,
- # so disable the offending warnings while compiling tests for now
diff --git a/poky/meta/recipes-devtools/apt/apt_1.8.2.2.bb b/poky/meta/recipes-devtools/apt/apt_2.2.2.bb
index 6cda61a7d..7d1bce558 100644
--- a/poky/meta/recipes-devtools/apt/apt_1.8.2.2.bb
+++ b/poky/meta/recipes-devtools/apt/apt_2.2.2.bb
@@ -10,22 +10,21 @@ SRC_URI = "${DEBIAN_MIRROR}/main/a/apt/${BPN}_${PV}.tar.xz \
file://0001-Disable-documentation-directory-altogether.patch \
file://0001-Fix-musl-build.patch \
file://0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch \
- file://0001-test-libapt-do-not-use-gtest-from-the-host.patch \
+ file://0001-srvrec-Keep-support-for-older-resolver.patch \
+ file://0001-cmake-Do-not-build-po-files.patch \
"
-
+
SRC_URI_append_class-native = " \
file://0001-Do-not-init-tables-from-dpkg-configuration.patch \
file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \
- file://0001-Do-not-configure-packages-on-installation.patch \
"
SRC_URI_append_class-nativesdk = " \
file://0001-Do-not-init-tables-from-dpkg-configuration.patch \
file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \
- file://0001-Do-not-configure-packages-on-installation.patch \
"
-SRC_URI[sha256sum] = "f5030de22a5cc80db6fe0d42373b5df25d7dc56e94d9155f2eaa80dbd65e82fa"
+SRC_URI[sha256sum] = "c5449a4c2126a12497a9949cd10209926005d329f6ce7942a3781fa2fcf50487"
LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263"
# the package is taken from snapshots.debian.org; that source is static and goes stale
@@ -40,12 +39,13 @@ USERADD_PARAM_${PN} = "--system --home /nonexistent --no-create-home _apt"
BBCLASSEXTEND = "native nativesdk"
-DEPENDS += "virtual/libiconv virtual/libintl db gnutls lz4 zlib bzip2 xz"
+DEPENDS += "db gnutls lz4 zlib bzip2 xz libgcrypt xxhash"
EXTRA_OECMAKE_append = " -DCURRENT_VENDOR=debian -DWITH_DOC=False \
- -DUSE_NLS=False -DDPKG_DATADIR=${datadir}/dpkg \
+ -DDPKG_DATADIR=${datadir}/dpkg \
-DTRIEHASH_EXECUTABLE=${WORKDIR}/triehash \
- -DCMAKE_DISABLE_FIND_PACKAGE_Zstd=True \
+ -DCMAKE_DISABLE_FIND_PACKAGE_ZSTD=True \
+ -DWITH_TESTS=False \
"
do_configure_prepend () {
diff --git a/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch b/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch
deleted file mode 100644
index 0e84c4bf8..000000000
--- a/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 857c843d4bcf576467b505eb05a47f3e7d32caaa Mon Sep 17 00:00:00 2001
-From: Serhii Popovych <spopovyc@cisco.com>
-Date: Wed, 10 Feb 2016 17:07:32 +0000
-Subject: [PATCH] perl: Replace -w option in shebangs with modern "use
- warnings" In some builds we might provide ac_cv_path_PERL as /usr/bin/env
- perl to use newer version of the perl from users PATH rather than older from
- standard system path.
-
-However using /usr/bin/env perl -w from shebang line isn't
-possible because it translates to something like
-/usr/bin/env -w perl and env complains about illegal option.
-
-To address this we can remove -w option from perl shebang
-line and add "use warnings" statement.
-
-Upstream-Status: Pending
-Signed-off-by: Serhii Popovych <spopovyc@cisco.com>
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
-
----
- bin/aclocal.in | 3 ++-
- bin/automake.in | 3 ++-
- 2 files changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/bin/aclocal.in b/bin/aclocal.in
-index 9a20325..bd185d4 100644
---- a/bin/aclocal.in
-+++ b/bin/aclocal.in
-@@ -1,4 +1,4 @@
--#!@PERL@ -w
-+#!@PERL@
- # aclocal - create aclocal.m4 by scanning configure.ac -*- perl -*-
- # @configure_input@
- # Copyright (C) 1996-2020 Free Software Foundation, Inc.
-@@ -26,6 +26,7 @@ BEGIN
- }
-
- use strict;
-+use warnings;
-
- use Automake::Config;
- use Automake::General;
-diff --git a/bin/automake.in b/bin/automake.in
-index 5ed404a..d387b8e 100644
---- a/bin/automake.in
-+++ b/bin/automake.in
-@@ -1,4 +1,4 @@
--#!@PERL@ -w
-+#!@PERL@
- # automake - create Makefile.in from Makefile.am -*- perl -*-
- # @configure_input@
- # Copyright (C) 1994-2020 Free Software Foundation, Inc.
-@@ -23,6 +23,7 @@
- package Automake;
-
- use strict;
-+use warnings;
-
- BEGIN
- {
diff --git a/poky/meta/recipes-devtools/automake/automake/python-libdir.patch b/poky/meta/recipes-devtools/automake/automake/python-libdir.patch
index ee1f725f7..f319fc001 100644
--- a/poky/meta/recipes-devtools/automake/automake/python-libdir.patch
+++ b/poky/meta/recipes-devtools/automake/automake/python-libdir.patch
@@ -1,4 +1,4 @@
-From a80dacd5124d0713cf2c986b28d736e78dc6b0ca Mon Sep 17 00:00:00 2001
+From 61bd143910001aaf610416d7ca56c52c0b081318 Mon Sep 17 00:00:00 2001
From: Kumar Gala <galak@kernel.crashing.org>
Date: Thu, 11 Aug 2011 01:26:33 -0500
Subject: [PATCH] automake: Update for python.m4 to respect libdir
@@ -17,11 +17,11 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
1 file changed, 7 insertions(+), 20 deletions(-)
diff --git a/m4/python.m4 b/m4/python.m4
-index 63c0a0e..7bbd2d2 100644
+index b2302ba..dbc6954 100644
--- a/m4/python.m4
+++ b/m4/python.m4
-@@ -94,12 +94,13 @@ AC_DEFUN([AM_PATH_PYTHON],
- [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`])
+@@ -96,12 +96,13 @@ AC_DEFUN([AM_PATH_PYTHON],
+ [am_cv_python_version=`$PYTHON -c "import sys; print('%u.%u' % sys.version_info[[:2]])"`])
AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
- dnl Use the values of $prefix and $exec_prefix for the corresponding
@@ -36,7 +36,7 @@ index 63c0a0e..7bbd2d2 100644
AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}'])
dnl At times (like when building shared libraries) you may want
-@@ -144,14 +145,7 @@ except ImportError:
+@@ -146,14 +147,7 @@ except ImportError:
else
am_py_prefix=$prefix
fi
@@ -52,7 +52,7 @@ index 63c0a0e..7bbd2d2 100644
case $am_cv_python_pythondir in
$am_py_prefix*)
am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
-@@ -161,7 +155,7 @@ sys.stdout.write(sitedir)"`
+@@ -163,7 +157,7 @@ sys.stdout.write(sitedir)"`
case $am_py_prefix in
/usr|/System*) ;;
*)
@@ -61,7 +61,7 @@ index 63c0a0e..7bbd2d2 100644
;;
esac
;;
-@@ -186,14 +180,7 @@ sys.stdout.write(sitedir)"`
+@@ -188,14 +182,7 @@ sys.stdout.write(sitedir)"`
else
am_py_exec_prefix=$exec_prefix
fi
@@ -77,7 +77,7 @@ index 63c0a0e..7bbd2d2 100644
case $am_cv_python_pyexecdir in
$am_py_exec_prefix*)
am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
-@@ -203,7 +190,7 @@ sys.stdout.write(sitedir)"`
+@@ -205,7 +192,7 @@ sys.stdout.write(sitedir)"`
case $am_py_exec_prefix in
/usr|/System*) ;;
*)
diff --git a/poky/meta/recipes-devtools/automake/automake_1.16.2.bb b/poky/meta/recipes-devtools/automake/automake_1.16.3.bb
index 08ec03462..7dc59d9fe 100644
--- a/poky/meta/recipes-devtools/automake/automake_1.16.2.bb
+++ b/poky/meta/recipes-devtools/automake/automake_1.16.3.bb
@@ -19,16 +19,14 @@ RDEPENDS_${PN} += "\
RDEPENDS_${PN}_class-native = "autoconf-native hostperl-runtime-native"
SRC_URI += "file://python-libdir.patch \
- file://buildtest.patch \
- file://performance.patch \
- file://new_rt_path_for_test-driver.patch \
- file://automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch \
- file://0001-automake-Add-default-libtool_tag-to-cppasm.patch \
- file://0001-build-fix-race-in-parallel-builds.patch \
- "
-
-SRC_URI[md5sum] = "f1a14f2ab2b0fb861a011e1d94e589e0"
-SRC_URI[sha256sum] = "b2f361094b410b4acbf4efba7337bdb786335ca09eb2518635a09fb7319ca5c1"
+ file://buildtest.patch \
+ file://performance.patch \
+ file://new_rt_path_for_test-driver.patch \
+ file://0001-automake-Add-default-libtool_tag-to-cppasm.patch \
+ file://0001-build-fix-race-in-parallel-builds.patch \
+ "
+
+SRC_URI[sha256sum] = "ce010788b51f64511a1e9bb2a1ec626037c6d0e7ede32c1c103611b9d3cba65f"
PERL = "${USRBINPATH}/perl"
PERL_class-native = "${USRBINPATH}/env perl"
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0008-warn-for-uses-of-system-directories-when-cross-linki.patch b/poky/meta/recipes-devtools/binutils/binutils/0008-warn-for-uses-of-system-directories-when-cross-linki.patch
index 3f83d48f6..5c148eaa9 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0008-warn-for-uses-of-system-directories-when-cross-linki.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0008-warn-for-uses-of-system-directories-when-cross-linki.patch
@@ -1,4 +1,4 @@
-From a1d0ca24d3bbdf4cb37537cd84d04a17bf0f813b Mon Sep 17 00:00:00 2001
+From bb48edf1a87bbc711e8978dd1e9112fe953dc1bf Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 15 Jan 2016 06:31:09 +0000
Subject: [PATCH] warn for uses of system directories when cross linking
@@ -59,8 +59,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
ld/ldfile.c | 17 +++++++++++++++++
ld/ldlex.h | 2 ++
ld/ldmain.c | 2 ++
- ld/lexsup.c | 15 +++++++++++++++
- 9 files changed, 85 insertions(+)
+ ld/lexsup.c | 16 ++++++++++++++++
+ 9 files changed, 86 insertions(+)
diff --git a/ld/config.in b/ld/config.in
index 7b60d778587..37b8e9b6f6c 100644
@@ -77,7 +77,7 @@ index 7b60d778587..37b8e9b6f6c 100644
#undef EXTRA_SHLIB_EXTENSION
diff --git a/ld/configure b/ld/configure
-index d399d08d0c4..8355c433c76 100755
+index b0969791959..50bb04ce6a8 100755
--- a/ld/configure
+++ b/ld/configure
@@ -828,6 +828,7 @@ with_lib_path
@@ -235,7 +235,7 @@ index 080b1c4c6c2..78d8a2df278 100644
/* We initialize DEMANGLING based on the environment variable
COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the
diff --git a/ld/lexsup.c b/ld/lexsup.c
-index f005a58a045..c83292a9427 100644
+index f005a58a045..5eb8439fef7 100644
--- a/ld/lexsup.c
+++ b/ld/lexsup.c
@@ -591,6 +591,14 @@ static const struct ld_option ld_options[] =
@@ -253,17 +253,18 @@ index f005a58a045..c83292a9427 100644
};
#define OPTION_COUNT ARRAY_SIZE (ld_options)
-@@ -1674,6 +1682,13 @@ parse_args (unsigned argc, char **argv)
-
- case OPTION_PRINT_MAP_DISCARDED:
+@@ -1676,6 +1684,14 @@ parse_args (unsigned argc, char **argv)
config.print_map_discarded = TRUE;
-+
+ break;
+
+ case OPTION_NO_POISON_SYSTEM_DIRECTORIES:
+ command_line.poison_system_directories = FALSE;
+ break;
+
+ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES:
+ command_line.error_poison_system_directories = TRUE;
- break;
-
++ break;
++
case OPTION_DEPENDENCY_FILE:
+ config.dependency_file = optarg;
+ break;
diff --git a/poky/meta/recipes-devtools/dnf/dnf_4.5.2.bb b/poky/meta/recipes-devtools/dnf/dnf_4.6.0.bb
index c746dc30d..6651e6435 100644
--- a/poky/meta/recipes-devtools/dnf/dnf_4.5.2.bb
+++ b/poky/meta/recipes-devtools/dnf/dnf_4.6.0.bb
@@ -18,7 +18,7 @@ SRC_URI = "git://github.com/rpm-software-management/dnf.git \
file://0001-dnf-write-the-log-lock-to-root.patch \
"
-SRCREV = "36a3ffaee4db76a7efe7d40f4e42ce679b6a6920"
+SRCREV = "c826d7db401ebf9b59b2fa74570a919e4af2673e"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/elfutils/elfutils_0.183.bb b/poky/meta/recipes-devtools/elfutils/elfutils_0.183.bb
index 16ed7c9dd..c0833686d 100644
--- a/poky/meta/recipes-devtools/elfutils/elfutils_0.183.bb
+++ b/poky/meta/recipes-devtools/elfutils/elfutils_0.183.bb
@@ -14,7 +14,6 @@ SRC_URI = "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \
file://0001-dso-link-change.patch \
file://0002-Fix-elf_cvt_gunhash-if-dest-and-src-are-same.patch \
file://0003-fixheadercheck.patch \
- file://0004-Disable-the-test-to-convert-euc-jp.patch \
file://0006-Fix-build-on-aarch64-musl.patch \
file://0001-libasm-may-link-with-libbz2-if-found.patch \
file://0001-libelf-elf_end.c-check-data_list.data.d.d_buf-before.patch \
diff --git a/poky/meta/recipes-devtools/elfutils/files/0004-Disable-the-test-to-convert-euc-jp.patch b/poky/meta/recipes-devtools/elfutils/files/0004-Disable-the-test-to-convert-euc-jp.patch
deleted file mode 100644
index f407bdd0b..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/0004-Disable-the-test-to-convert-euc-jp.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From cd36f34c722dd0babd7beb13c968aa0780c9f726 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Tue, 15 Aug 2017 17:24:06 +0800
-Subject: [PATCH] Disable the test to convert euc-jp
-
-Remove the test "Test against HP-UX 11.11 bug:
-No converter from EUC-JP to UTF-8 is provided"
-since we don't support HP-UX and if the euc-jp is not
-installed on the host, the dependence will be built without
-iconv support and will cause guild-native building fail.
-
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Roy Li <rongqing.li@windriver.com>
-
-Rebase to 0.170
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
----
- m4/iconv.m4 | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/m4/iconv.m4 b/m4/iconv.m4
-index aa159c5..d16312b 100644
---- a/m4/iconv.m4
-+++ b/m4/iconv.m4
-@@ -165,6 +165,7 @@ AC_DEFUN([AM_ICONV_LINK],
- }
- }
- #endif
-+#if 0
- /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
- provided. */
- if (/* Try standardized names. */
-@@ -176,6 +177,7 @@ AC_DEFUN([AM_ICONV_LINK],
- /* Try HP-UX names. */
- && iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
- result |= 16;
-+#endif
- return result;
- ]])],
- [am_cv_func_iconv_works=yes], ,
diff --git a/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.6.bb b/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.7.bb
index 5112debf8..a697b74f9 100644
--- a/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.6.bb
+++ b/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.7.bb
@@ -10,7 +10,7 @@ DEPENDS = "util-linux"
SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${PV}/${BP}.tar.gz \
file://0001-gptcurses-correctly-include-curses.h.patch \
"
-SRC_URI[sha256sum] = "ddc551d643a53f0bd4440345d3ae32c49b04a797e9c01036ea460b6bb4168ca8"
+SRC_URI[sha256sum] = "754004b7f85b279287c7ac3c0469b1d7e0eae043a97a2e587b0560ca5f3828c0"
UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/gptfdisk/files/gptfdisk/"
UPSTREAM_CHECK_REGEX = "/gptfdisk/(?P<pver>(\d+[\.\-_]*)+)/"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross.inc b/poky/meta/recipes-devtools/gcc/gcc-cross.inc
index 6fa8c274c..e08807afa 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross.inc
@@ -21,7 +21,7 @@ require gcc-configure-common.inc
# gnu) will hit a QA failure.
LINKER_HASH_STYLE ?= "sysv"
-EXTRA_OECONF += "--enable-poison-system-directories"
+EXTRA_OECONF += "--enable-poison-system-directories=error"
EXTRA_OECONF_append_sh4 = " \
--with-multilib-list= \
--enable-incomplete-targets \
diff --git a/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc b/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
index 9e643ee27..d0348c481 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
@@ -83,10 +83,11 @@ COMPATIBLE_HOST = '(x86_64|i.86|powerpc|sparc|s390|arm|aarch64).*-linux'
# musl is currently broken entirely
COMPATIBLE_HOST_libc-musl = 'null'
-FILES_libasan += "${libdir}/libasan.so.*"
+FILES_libasan += "${libdir}/libasan.so.* ${libdir}/libhwasan.so.*"
FILES_libasan-dev += "\
${libdir}/libasan_preinit.o \
${libdir}/libasan.so \
+ ${libdir}/libhwasan.so \
${libdir}/libasan.la \
"
FILES_libasan-staticdev += "${libdir}/libasan.a"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-target.inc b/poky/meta/recipes-devtools/gcc/gcc-target.inc
index 1e25dad86..164a669aa 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-target.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-target.inc
@@ -45,6 +45,7 @@ FILES_${PN} = "\
${bindir}/${TARGET_PREFIX}lto* \
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/collect2* \
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1plus \
+ ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/g++-mapper-server \
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/lto* \
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/lib*${SOLIBS} \
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/liblto*${SOLIBSDEV} \
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch b/poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch
index 30a848601..697bdc821 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch
@@ -13,20 +13,21 @@ wants this to be a failure, they can add "-Werror=poison-system-directories".
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com>
Upstream-Status: Pending
---
gcc/common.opt | 4 ++++
- gcc/config.in | 6 ++++++
- gcc/configure | 16 ++++++++++++++++
- gcc/configure.ac | 10 ++++++++++
+ gcc/config.in | 10 ++++++++++
+ gcc/configure | 19 +++++++++++++++++++
+ gcc/configure.ac | 16 ++++++++++++++++
gcc/doc/invoke.texi | 9 +++++++++
- gcc/gcc.c | 2 ++
+ gcc/gcc.c | 9 +++++++--
gcc/incpath.c | 21 +++++++++++++++++++++
- 7 files changed, 68 insertions(+)
+ 7 files changed, 86 insertions(+), 2 deletions(-)
diff --git a/gcc/common.opt b/gcc/common.opt
-index 65a82410abc..415f38fa1f4 100644
+index 3ec7743ea..d3c3e51dc 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -682,6 +682,10 @@ Wreturn-local-addr
@@ -41,10 +42,10 @@ index 65a82410abc..415f38fa1f4 100644
Common Var(warn_shadow) Warning
Warn when one variable shadows another. Same as -Wshadow=global.
diff --git a/gcc/config.in b/gcc/config.in
-index 809e7b26823..5adeaeed36b 100644
+index 364eba477..7d2c3bbf1 100644
--- a/gcc/config.in
+++ b/gcc/config.in
-@@ -224,6 +224,12 @@
+@@ -224,6 +224,16 @@
#endif
@@ -52,13 +53,17 @@ index 809e7b26823..5adeaeed36b 100644
+#ifndef USED_FOR_TARGET
+#undef ENABLE_POISON_SYSTEM_DIRECTORIES
+#endif
++/* Define to warn for use of native system header directories */
++#ifndef USED_FOR_TARGET
++#undef POISON_BY_DEFAULT
++#endif
+
+
/* Define if you want all operations on RTL (the basic data structure of the
optimizer and back end) to be checked for dynamic type safety at runtime.
This is quite expensive. */
diff --git a/gcc/configure b/gcc/configure
-index cd3d9516fce..8de766a942c 100755
+index 2a9d646b4..a848792f2 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -1010,6 +1010,7 @@ with_system_zlib
@@ -78,7 +83,7 @@ index cd3d9516fce..8de766a942c 100755
--enable-plugin enable plugin support
--enable-host-shared build host code as shared libraries
--disable-libquadmath-support
-@@ -30235,6 +30238,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
+@@ -30280,6 +30283,22 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
fi
@@ -89,9 +94,12 @@ index cd3d9516fce..8de766a942c 100755
+ enable_poison_system_directories=no
+fi
+
-+if test "x${enable_poison_system_directories}" = "xyes"; then
++if test "x${enable_poison_system_directories}" != "xno"; then
+
+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h
++if test "$enable_poison_system_directories" = "error"; then
++$as_echo "#define POISON_BY_DEFAULT 1" >>confdefs.h
++fi
+
+fi
+
@@ -99,31 +107,37 @@ index cd3d9516fce..8de766a942c 100755
diff --git a/gcc/configure.ac b/gcc/configure.ac
-index 0de3b4bf97b..8bfd6feb780 100644
+index 51cce36ce..66ffde305 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
-@@ -6595,6 +6595,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
+@@ -6614,6 +6614,22 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
[specify that runtime libraries should be
installed in a compiler-specific directory])])
+AC_ARG_ENABLE([poison-system-directories],
+ AS_HELP_STRING([--enable-poison-system-directories],
-+ [warn for use of native system header directories]),,
++ [warn for use of native system header directories (no/yes/error)]),,
+ [enable_poison_system_directories=no])
-+if test "x${enable_poison_system_directories}" = "xyes"; then
++AC_MSG_NOTICE([poisoned directories $enable_poison_system_directories])
++if test "x${enable_poison_system_directories}" != "xno"; then
++ AC_MSG_NOTICE([poisoned directories enabled])
+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES],
+ [1],
+ [Define to warn for use of native system header directories])
++ if test $enable_poison_system_directories = "error"; then
++ AC_MSG_NOTICE([poisoned directories are fatal])
++ AC_DEFINE([POISON_BY_DEFAULT], [1], [Define to make poison warnings errors])
++ fi
+fi
+
# Substitute configuration variables
AC_SUBST(subdirs)
AC_SUBST(srcdir)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
-index f98161391a0..f12d8d12150 100644
+index d929eb109..aa5ff88b1 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
-@@ -348,6 +348,7 @@ Objective-C and Objective-C++ Dialects}.
+@@ -351,6 +351,7 @@ Objective-C and Objective-C++ Dialects}.
-Wpacked -Wno-packed-bitfield-compat -Wpacked-not-aligned -Wpadded @gol
-Wparentheses -Wno-pedantic-ms-format @gol
-Wpointer-arith -Wno-pointer-compare -Wno-pointer-to-int-cast @gol
@@ -131,7 +145,7 @@ index f98161391a0..f12d8d12150 100644
-Wno-pragmas -Wno-prio-ctor-dtor -Wredundant-decls @gol
-Wrestrict -Wno-return-local-addr -Wreturn-type @gol
-Wno-scalar-storage-order -Wsequence-point @gol
-@@ -6924,6 +6925,14 @@ made up of data only and thus requires no special treatment. But, for
+@@ -6928,6 +6929,14 @@ made up of data only and thus requires no special treatment. But, for
most targets, it is made up of code and thus requires the stack to be
made executable in order for the program to work properly.
@@ -147,10 +161,10 @@ index f98161391a0..f12d8d12150 100644
@opindex Wfloat-equal
@opindex Wno-float-equal
diff --git a/gcc/gcc.c b/gcc/gcc.c
-index 9f790db0daf..b2200c5185a 100644
+index 49c9c6c17..24a92bf27 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
-@@ -1041,6 +1041,8 @@ proper position among the other output files. */
+@@ -1044,6 +1044,8 @@ proper position among the other output files. */
"%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \
"%X %{o*} %{e*} %{N} %{n} %{r}\
%{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
@@ -159,8 +173,22 @@ index 9f790db0daf..b2200c5185a 100644
%{static|no-pie|static-pie:} %@{L*} %(mfwrap) %(link_libgcc) " \
VTABLE_VERIFICATION_SPEC " " SANITIZER_EARLY_SPEC " %o "" \
%{fopenacc|fopenmp|%:gt(%{ftree-parallelize-loops=*:%*} 1):\
+@@ -1138,8 +1140,11 @@ static const char *cpp_unique_options =
+ static const char *cpp_options =
+ "%(cpp_unique_options) %1 %{m*} %{std*&ansi&trigraphs} %{W*&pedantic*} %{w}\
+ %{f*} %{g*:%{%:debug-level-gt(0):%{g*}\
+- %{!fno-working-directory:-fworking-directory}}} %{O*}\
+- %{undef} %{save-temps*:-fpch-preprocess}";
++ %{!fno-working-directory:-fworking-directory}}} %{O*}"
++#ifdef POISON_BY_DEFAULT
++ " -Werror=poison-system-directories"
++#endif
++ " %{undef} %{save-temps*:-fpch-preprocess}";
+
+ /* This contains cpp options which are not passed when the preprocessor
+ output will be used by another program. */
diff --git a/gcc/incpath.c b/gcc/incpath.c
-index 8a2bda00f80..9098ab044ab 100644
+index 94eaba7b1..bfad4ebe3 100644
--- a/gcc/incpath.c
+++ b/gcc/incpath.c
@@ -26,6 +26,7 @@
@@ -198,3 +226,6 @@ index 8a2bda00f80..9098ab044ab 100644
}
/* Use given -I paths for #include "..." but not #include <...>, and
+--
+2.25.1
+
diff --git a/poky/meta/recipes-devtools/git/git.inc b/poky/meta/recipes-devtools/git/git.inc
index 0cc40b937..146983a91 100644
--- a/poky/meta/recipes-devtools/git/git.inc
+++ b/poky/meta/recipes-devtools/git/git.inc
@@ -9,7 +9,8 @@ PROVIDES_append_class-native = " git-replacement-native"
SRC_URI = "${KERNELORG_MIRROR}/software/scm/git/git-${PV}.tar.gz;name=tarball \
${KERNELORG_MIRROR}/software/scm/git/git-manpages-${PV}.tar.gz;name=manpages \
- file://fixsort.patch"
+ file://fixsort.patch \
+"
S = "${WORKDIR}/git-${PV}"
diff --git a/poky/meta/recipes-devtools/git/git_2.30.1.bb b/poky/meta/recipes-devtools/git/git_2.31.1.bb
index bc1635ada..6bfa1f7a1 100644
--- a/poky/meta/recipes-devtools/git/git_2.30.1.bb
+++ b/poky/meta/recipes-devtools/git/git_2.31.1.bb
@@ -5,5 +5,5 @@ EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \
"
EXTRA_OEMAKE += "NO_GETTEXT=1"
-SRC_URI[tarball.sha256sum] = "23a3e53f0d2dd3e62a8147b24a1a91d6ffe95b92123ef4dbae04e9a6205e71c0"
-SRC_URI[manpages.sha256sum] = "db323e1b242e9d0337363b1e538c8b879e4c46eedbf94d3bee9e65dab6d49138"
+SRC_URI[tarball.sha256sum] = "46d37c229e9d786510e0c53b60065704ce92d5aedc16f2c5111e3ed35093bfa7"
+SRC_URI[manpages.sha256sum] = "d330498aaaea6928b0abbbbb896f6f605efd8d35f23cbbb2de38c87a737d4543"
diff --git a/poky/meta/recipes-devtools/go/go-1.16.inc b/poky/meta/recipes-devtools/go/go-1.16.2.inc
index 1ebbbef83..e65caf819 100644
--- a/poky/meta/recipes-devtools/go/go-1.16.inc
+++ b/poky/meta/recipes-devtools/go/go-1.16.2.inc
@@ -1,7 +1,7 @@
require go-common.inc
GO_BASEVERSION = "1.16"
-PV = "1.16"
+PV = "1.16.2"
FILESEXTRAPATHS_prepend := "${FILE_DIRNAME}/go-${GO_BASEVERSION}:"
LIC_FILES_CHKSUM = "file://LICENSE;md5=5d4950ecb7b26d2c5e4e7b4e0dd74707"
@@ -17,4 +17,4 @@ SRC_URI += "\
file://0008-use-GOBUILDMODE-to-set-buildmode.patch \
file://0009-Revert-cmd-go-make-sure-CC-and-CXX-are-absolute.patch \
"
-SRC_URI[main.sha256sum] = "7688063d55656105898f323d90a79a39c378d86fe89ae192eb3b7fc46347c95a"
+SRC_URI[main.sha256sum] = "37ca14287a23cb8ba2ac3f5c3dd8adbc1f7a54b9701a57824bf19a0b271f83ea"
diff --git a/poky/meta/recipes-devtools/go/go-binary-native_1.16.bb b/poky/meta/recipes-devtools/go/go-binary-native_1.16.2.bb
index 155a475c9..4fb060173 100644
--- a/poky/meta/recipes-devtools/go/go-binary-native_1.16.bb
+++ b/poky/meta/recipes-devtools/go/go-binary-native_1.16.2.bb
@@ -8,8 +8,8 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=5d4950ecb7b26d2c5e4e7b4e0dd74707"
PROVIDES = "go-native"
SRC_URI = "https://dl.google.com/go/go${PV}.${BUILD_GOOS}-${BUILD_GOARCH}.tar.gz;name=go_${BUILD_GOTUPLE}"
-SRC_URI[go_linux_amd64.sha256sum] = "013a489ebb3e24ef3d915abe5b94c3286c070dfe0818d5bca8108f1d6e8440d2"
-SRC_URI[go_linux_arm64.sha256sum] = "3770f7eb22d05e25fbee8fb53c2a4e897da043eb83c69b9a14f8d98562cd8098"
+SRC_URI[go_linux_amd64.sha256sum] = "542e936b19542e62679766194364f45141fde55169db2d8d01046555ca9eb4b8"
+SRC_URI[go_linux_arm64.sha256sum] = "6924601d998a0917694fd14261347e3798bd2ad6b13c4d7f2edd70c9d57f62ab"
UPSTREAM_CHECK_URI = "https://golang.org/dl/"
UPSTREAM_CHECK_REGEX = "go(?P<pver>\d+(\.\d+)+)\.linux"
diff --git a/poky/meta/recipes-devtools/go/go-cross-canadian_1.16.bb b/poky/meta/recipes-devtools/go/go-cross-canadian_1.16.2.bb
index 7ac9449e4..7ac9449e4 100644
--- a/poky/meta/recipes-devtools/go/go-cross-canadian_1.16.bb
+++ b/poky/meta/recipes-devtools/go/go-cross-canadian_1.16.2.bb
diff --git a/poky/meta/recipes-devtools/go/go-cross_1.16.bb b/poky/meta/recipes-devtools/go/go-cross_1.16.2.bb
index 80b5a03f6..80b5a03f6 100644
--- a/poky/meta/recipes-devtools/go/go-cross_1.16.bb
+++ b/poky/meta/recipes-devtools/go/go-cross_1.16.2.bb
diff --git a/poky/meta/recipes-devtools/go/go-crosssdk_1.16.bb b/poky/meta/recipes-devtools/go/go-crosssdk_1.16.2.bb
index 1857c8a57..1857c8a57 100644
--- a/poky/meta/recipes-devtools/go/go-crosssdk_1.16.bb
+++ b/poky/meta/recipes-devtools/go/go-crosssdk_1.16.2.bb
diff --git a/poky/meta/recipes-devtools/go/go-dep/0001-Add-support-for-mips-mips64.patch b/poky/meta/recipes-devtools/go/go-dep/0001-Add-support-for-mips-mips64.patch
deleted file mode 100644
index 34ec9876f..000000000
--- a/poky/meta/recipes-devtools/go/go-dep/0001-Add-support-for-mips-mips64.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From f0fb80604385ae3266a472601ef685896b4cc0af Mon Sep 17 00:00:00 2001
-From: Vladimir Stefanovic <vladimir.stefanovic@imgtec.com>
-Date: Fri, 17 Feb 2017 20:44:43 +0100
-Subject: [PATCH] Add support for mips, mips64
-
----
-Upstream-Status: Submitted
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
- vendor/github.com/boltdb/bolt/bolt_mips64x.go | 12 ++++++++++++
- vendor/github.com/boltdb/bolt/bolt_mipsx.go | 12 ++++++++++++
- 2 files changed, 24 insertions(+)
- create mode 100644 vendor/github.com/boltdb/bolt/bolt_mips64x.go
- create mode 100644 vendor/github.com/boltdb/bolt/bolt_mipsx.go
-
-diff --git a/vendor/github.com/boltdb/bolt/bolt_mips64x.go b/vendor/github.com/boltdb/bolt/bolt_mips64x.go
-new file mode 100644
-index 00000000..134b578b
---- /dev/null
-+++ b/vendor/github.com/boltdb/bolt/bolt_mips64x.go
-@@ -0,0 +1,12 @@
-+// +build mips64 mips64le
-+
-+package bolt
-+
-+// maxMapSize represents the largest mmap size supported by Bolt.
-+const maxMapSize = 0x8000000000 // 512GB
-+
-+// maxAllocSize is the size used when creating array pointers.
-+const maxAllocSize = 0x7FFFFFFF
-+
-+// Are unaligned load/stores broken on this arch?
-+var brokenUnaligned = false
-diff --git a/vendor/github.com/boltdb/bolt/bolt_mipsx.go b/vendor/github.com/boltdb/bolt/bolt_mipsx.go
-new file mode 100644
-index 00000000..d5ecb059
---- /dev/null
-+++ b/vendor/github.com/boltdb/bolt/bolt_mipsx.go
-@@ -0,0 +1,12 @@
-+// +build mips mipsle
-+
-+package bolt
-+
-+// maxMapSize represents the largest mmap size supported by Bolt.
-+const maxMapSize = 0x40000000 // 1GB
-+
-+// maxAllocSize is the size used when creating array pointers.
-+const maxAllocSize = 0xFFFFFFF
-+
-+// Are unaligned load/stores broken on this arch?
-+var brokenUnaligned = false
---
-2.14.1
-
diff --git a/poky/meta/recipes-devtools/go/go-dep/0001-Update-sys-module-to-latest.patch b/poky/meta/recipes-devtools/go/go-dep/0001-Update-sys-module-to-latest.patch
deleted file mode 100644
index b13bb9e66..000000000
--- a/poky/meta/recipes-devtools/go/go-dep/0001-Update-sys-module-to-latest.patch
+++ /dev/null
@@ -1,145574 +0,0 @@
-From f7904cb91a1b18e893ffbd25b450926d145d0e0a Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 22 Apr 2020 18:44:48 -0700
-Subject: [PATCH] Update sys module to latest
-
-Gets us riscv support
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- Gopkg.lock | 4 +-
- .../golang.org/x/sys/unix/affinity_linux.go | 86 +
- vendor/golang.org/x/sys/unix/aliases.go | 14 +
- vendor/golang.org/x/sys/unix/asm_aix_ppc64.s | 17 +
- .../x/sys/unix/asm_dragonfly_amd64.s | 10 +-
- ...sm_linux_mips64x.s => asm_freebsd_arm64.s} | 11 +-
- vendor/golang.org/x/sys/unix/asm_linux_386.s | 36 +-
- .../golang.org/x/sys/unix/asm_linux_amd64.s | 30 +-
- vendor/golang.org/x/sys/unix/asm_linux_arm.s | 35 +-
- .../golang.org/x/sys/unix/asm_linux_arm64.s | 30 +-
- .../golang.org/x/sys/unix/asm_linux_mips64x.s | 36 +-
- .../golang.org/x/sys/unix/asm_linux_mipsx.s | 33 +-
- .../golang.org/x/sys/unix/asm_linux_ppc64x.s | 38 +-
- .../golang.org/x/sys/unix/asm_linux_riscv64.s | 47 +
- .../golang.org/x/sys/unix/asm_linux_s390x.s | 28 +
- ...asm_linux_mips64x.s => asm_netbsd_arm64.s} | 17 +-
- ...sm_linux_mips64x.s => asm_openbsd_arm64.s} | 9 +-
- .../golang.org/x/sys/unix/bluetooth_linux.go | 1 +
- vendor/golang.org/x/sys/unix/cap_freebsd.go | 30 +-
- vendor/golang.org/x/sys/unix/constants.go | 2 +-
- vendor/golang.org/x/sys/unix/dev_aix_ppc.go | 27 +
- vendor/golang.org/x/sys/unix/dev_aix_ppc64.go | 29 +
- vendor/golang.org/x/sys/unix/dev_darwin.go | 24 +
- vendor/golang.org/x/sys/unix/dev_dragonfly.go | 30 +
- vendor/golang.org/x/sys/unix/dev_freebsd.go | 30 +
- vendor/golang.org/x/sys/unix/dev_linux.go | 8 +-
- vendor/golang.org/x/sys/unix/dev_netbsd.go | 29 +
- vendor/golang.org/x/sys/unix/dev_openbsd.go | 29 +
- vendor/golang.org/x/sys/unix/dirent.go | 2 +-
- vendor/golang.org/x/sys/unix/endian_little.go | 2 +-
- vendor/golang.org/x/sys/unix/env_unix.go | 8 +-
- vendor/golang.org/x/sys/unix/env_unset.go | 14 -
- .../x/sys/unix/errors_freebsd_386.go | 6 +
- .../x/sys/unix/errors_freebsd_amd64.go | 6 +
- .../x/sys/unix/errors_freebsd_arm64.go | 17 +
- .../x/sys/unix/{flock.go => fcntl.go} | 18 +-
- vendor/golang.org/x/sys/unix/fcntl_darwin.go | 18 +
- ...ck_linux_32bit.go => fcntl_linux_32bit.go} | 0
- vendor/golang.org/x/sys/unix/fdset.go | 29 +
- vendor/golang.org/x/sys/unix/file_unix.go | 27 -
- vendor/golang.org/x/sys/unix/gccgo.go | 20 +-
- vendor/golang.org/x/sys/unix/gccgo_c.c | 12 +-
- .../x/sys/unix/gccgo_linux_amd64.go | 2 +-
- .../x/sys/unix/gccgo_linux_sparc64.go | 20 -
- vendor/golang.org/x/sys/unix/ioctl.go | 65 +
- vendor/golang.org/x/sys/unix/mkasm_darwin.go | 78 +
- vendor/golang.org/x/sys/unix/mkmerge.go | 521 +++
- vendor/golang.org/x/sys/unix/mkpost.go | 63 +-
- vendor/golang.org/x/sys/unix/mksyscall.go | 402 +++
- .../x/sys/unix/mksyscall_aix_ppc.go | 415 +++
- .../x/sys/unix/mksyscall_aix_ppc64.go | 614 ++++
- .../x/sys/unix/mksyscall_solaris.go | 341 ++
- .../golang.org/x/sys/unix/mksysctl_openbsd.go | 355 +++
- vendor/golang.org/x/sys/unix/mksysnum.go | 190 ++
- .../golang.org/x/sys/unix/openbsd_pledge.go | 38 -
- vendor/golang.org/x/sys/unix/pagesize_unix.go | 15 +
- .../golang.org/x/sys/unix/pledge_openbsd.go | 163 +
- vendor/golang.org/x/sys/unix/race.go | 2 +-
- vendor/golang.org/x/sys/unix/race0.go | 4 +-
- .../x/sys/unix/readdirent_getdents.go | 12 +
- .../x/sys/unix/readdirent_getdirentries.go | 19 +
- .../x/sys/unix/sockcmsg_dragonfly.go | 16 +
- .../golang.org/x/sys/unix/sockcmsg_linux.go | 4 +-
- vendor/golang.org/x/sys/unix/sockcmsg_unix.go | 28 +-
- .../x/sys/unix/sockcmsg_unix_other.go | 38 +
- vendor/golang.org/x/sys/unix/str.go | 2 +-
- vendor/golang.org/x/sys/unix/syscall.go | 38 +-
- vendor/golang.org/x/sys/unix/syscall_aix.go | 536 ++++
- .../golang.org/x/sys/unix/syscall_aix_ppc.go | 54 +
- .../x/sys/unix/syscall_aix_ppc64.go | 85 +
- vendor/golang.org/x/sys/unix/syscall_bsd.go | 112 +-
- .../x/sys/unix/syscall_darwin.1_12.go | 29 +
- .../x/sys/unix/syscall_darwin.1_13.go | 101 +
- .../golang.org/x/sys/unix/syscall_darwin.go | 263 +-
- .../x/sys/unix/syscall_darwin_386.1_11.go | 9 +
- .../x/sys/unix/syscall_darwin_386.go | 45 +-
- .../x/sys/unix/syscall_darwin_amd64.1_11.go | 9 +
- .../x/sys/unix/syscall_darwin_amd64.go | 45 +-
- .../x/sys/unix/syscall_darwin_arm.1_11.go | 11 +
- .../x/sys/unix/syscall_darwin_arm.go | 51 +-
- .../x/sys/unix/syscall_darwin_arm64.1_11.go | 11 +
- .../x/sys/unix/syscall_darwin_arm64.go | 47 +-
- .../x/sys/unix/syscall_darwin_libSystem.go | 33 +
- .../x/sys/unix/syscall_dragonfly.go | 136 +-
- .../x/sys/unix/syscall_dragonfly_amd64.go | 21 +-
- .../golang.org/x/sys/unix/syscall_freebsd.go | 592 ++--
- .../x/sys/unix/syscall_freebsd_386.go | 31 +-
- .../x/sys/unix/syscall_freebsd_amd64.go | 31 +-
- .../x/sys/unix/syscall_freebsd_arm.go | 27 +-
- ...nfly_amd64.go => syscall_freebsd_arm64.go} | 31 +-
- .../golang.org/x/sys/unix/syscall_illumos.go | 57 +
- vendor/golang.org/x/sys/unix/syscall_linux.go | 1030 +++++-
- .../x/sys/unix/syscall_linux_386.go | 47 +-
- .../x/sys/unix/syscall_linux_amd64.go | 80 +-
- .../x/sys/unix/syscall_linux_arm.go | 64 +-
- .../x/sys/unix/syscall_linux_arm64.go | 111 +-
- .../golang.org/x/sys/unix/syscall_linux_gc.go | 14 +
- .../x/sys/unix/syscall_linux_gc_386.go | 16 +
- .../x/sys/unix/syscall_linux_gccgo_386.go | 30 +
- .../x/sys/unix/syscall_linux_gccgo_arm.go | 20 +
- .../x/sys/unix/syscall_linux_mips64x.go | 53 +-
- .../x/sys/unix/syscall_linux_mipsx.go | 47 +-
- .../x/sys/unix/syscall_linux_ppc64x.go | 59 +-
- ...inux_arm64.go => syscall_linux_riscv64.go} | 118 +-
- .../x/sys/unix/syscall_linux_s390x.go | 44 +-
- .../x/sys/unix/syscall_linux_sparc64.go | 48 +-
- .../golang.org/x/sys/unix/syscall_netbsd.go | 156 +-
- .../x/sys/unix/syscall_netbsd_386.go | 21 +-
- .../x/sys/unix/syscall_netbsd_amd64.go | 21 +-
- .../x/sys/unix/syscall_netbsd_arm.go | 21 +-
- ...etbsd_amd64.go => syscall_netbsd_arm64.go} | 25 +-
- .../golang.org/x/sys/unix/syscall_no_getwd.go | 11 -
- .../golang.org/x/sys/unix/syscall_openbsd.go | 199 +-
- .../x/sys/unix/syscall_openbsd_386.go | 25 +-
- .../x/sys/unix/syscall_openbsd_amd64.go | 25 +-
- .../x/sys/unix/syscall_openbsd_arm.go | 27 +-
- .../x/sys/unix/syscall_openbsd_arm64.go | 41 +
- .../golang.org/x/sys/unix/syscall_solaris.go | 128 +-
- .../x/sys/unix/syscall_solaris_amd64.go | 24 +-
- vendor/golang.org/x/sys/unix/syscall_unix.go | 176 +-
- .../golang.org/x/sys/unix/syscall_unix_gc.go | 2 +-
- ...l_unix_gc.go => syscall_unix_gc_ppc64x.go} | 21 +-
- vendor/golang.org/x/sys/unix/timestruct.go | 82 +
- .../unix/{types_netbsd.go => types_aix.go} | 196 +-
- vendor/golang.org/x/sys/unix/types_darwin.go | 41 +-
- .../golang.org/x/sys/unix/types_dragonfly.go | 66 +-
- vendor/golang.org/x/sys/unix/types_freebsd.go | 178 +-
- vendor/golang.org/x/sys/unix/types_netbsd.go | 73 +-
- vendor/golang.org/x/sys/unix/types_openbsd.go | 78 +-
- vendor/golang.org/x/sys/unix/types_solaris.go | 54 +-
- .../golang.org/x/sys/unix/unveil_openbsd.go | 42 +
- vendor/golang.org/x/sys/unix/xattr_bsd.go | 240 ++
- .../golang.org/x/sys/unix/zerrors_aix_ppc.go | 1384 ++++++++
- .../x/sys/unix/zerrors_aix_ppc64.go | 1385 ++++++++
- .../x/sys/unix/zerrors_darwin_386.go | 391 ++-
- .../x/sys/unix/zerrors_darwin_amd64.go | 391 ++-
- .../x/sys/unix/zerrors_darwin_arm.go | 391 ++-
- .../x/sys/unix/zerrors_darwin_arm64.go | 391 ++-
- .../x/sys/unix/zerrors_dragonfly_amd64.go | 355 ++-
- .../x/sys/unix/zerrors_freebsd_386.go | 508 ++-
- .../x/sys/unix/zerrors_freebsd_amd64.go | 506 ++-
- .../x/sys/unix/zerrors_freebsd_arm.go | 368 ++-
- ...ebsd_amd64.go => zerrors_freebsd_arm64.go} | 509 ++-
- vendor/golang.org/x/sys/unix/zerrors_linux.go | 2469 +++++++++++++++
- .../x/sys/unix/zerrors_linux_386.go | 2690 ++++------------
- .../x/sys/unix/zerrors_linux_amd64.go | 2691 ++++------------
- .../x/sys/unix/zerrors_linux_arm.go | 2701 ++++------------
- .../x/sys/unix/zerrors_linux_arm64.go | 2673 ++++------------
- .../x/sys/unix/zerrors_linux_mips.go | 2702 ++++------------
- .../x/sys/unix/zerrors_linux_mips64.go | 2702 ++++------------
- .../x/sys/unix/zerrors_linux_mips64le.go | 2702 ++++------------
- .../x/sys/unix/zerrors_linux_mipsle.go | 2702 ++++------------
- .../x/sys/unix/zerrors_linux_ppc64.go | 2816 ++++-------------
- .../x/sys/unix/zerrors_linux_ppc64le.go | 2816 ++++-------------
- .../x/sys/unix/zerrors_linux_riscv64.go | 771 +++++
- .../x/sys/unix/zerrors_linux_s390x.go | 2812 ++++------------
- .../x/sys/unix/zerrors_linux_sparc64.go | 2013 +++---------
- .../x/sys/unix/zerrors_netbsd_386.go | 325 +-
- .../x/sys/unix/zerrors_netbsd_amd64.go | 325 +-
- .../x/sys/unix/zerrors_netbsd_arm.go | 325 +-
- ...etbsd_amd64.go => zerrors_netbsd_arm64.go} | 327 +-
- .../x/sys/unix/zerrors_openbsd_386.go | 339 +-
- .../x/sys/unix/zerrors_openbsd_amd64.go | 576 ++--
- .../x/sys/unix/zerrors_openbsd_arm.go | 333 +-
- ...nbsd_amd64.go => zerrors_openbsd_arm64.go} | 605 ++--
- .../x/sys/unix/zerrors_solaris_amd64.go | 380 ++-
- .../x/sys/unix/zptrace_armnn_linux.go | 41 +
- .../x/sys/unix/zptrace_linux_arm64.go | 17 +
- .../x/sys/unix/zptrace_mipsnn_linux.go | 50 +
- .../x/sys/unix/zptrace_mipsnnle_linux.go | 50 +
- .../x/sys/unix/zptrace_x86_linux.go | 80 +
- .../golang.org/x/sys/unix/zsyscall_aix_ppc.go | 1484 +++++++++
- ..._netbsd_amd64.go => zsyscall_aix_ppc64.go} | 936 +++---
- .../x/sys/unix/zsyscall_aix_ppc64_gc.go | 1192 +++++++
- .../x/sys/unix/zsyscall_aix_ppc64_gccgo.go | 1070 +++++++
- ...win_arm.go => zsyscall_darwin_386.1_11.go} | 416 ++-
- .../x/sys/unix/zsyscall_darwin_386.1_13.go | 41 +
- .../x/sys/unix/zsyscall_darwin_386.1_13.s | 12 +
- .../x/sys/unix/zsyscall_darwin_386.go | 1314 ++++++--
- .../x/sys/unix/zsyscall_darwin_386.s | 284 ++
- ...arm64.go => zsyscall_darwin_amd64.1_11.go} | 416 ++-
- .../x/sys/unix/zsyscall_darwin_amd64.1_13.go | 41 +
- .../x/sys/unix/zsyscall_darwin_amd64.1_13.s | 12 +
- .../x/sys/unix/zsyscall_darwin_amd64.go | 1314 ++++++--
- .../x/sys/unix/zsyscall_darwin_amd64.s | 284 ++
- ...win_arm.go => zsyscall_darwin_arm.1_11.go} | 389 ++-
- .../x/sys/unix/zsyscall_darwin_arm.1_13.go | 41 +
- .../x/sys/unix/zsyscall_darwin_arm.1_13.s | 12 +
- .../x/sys/unix/zsyscall_darwin_arm.go | 1301 ++++++--
- .../x/sys/unix/zsyscall_darwin_arm.s | 282 ++
- ...arm64.go => zsyscall_darwin_arm64.1_11.go} | 389 ++-
- .../x/sys/unix/zsyscall_darwin_arm64.1_13.go | 41 +
- .../x/sys/unix/zsyscall_darwin_arm64.1_13.s | 12 +
- .../x/sys/unix/zsyscall_darwin_arm64.go | 1301 ++++++--
- .../x/sys/unix/zsyscall_darwin_arm64.s | 282 ++
- .../x/sys/unix/zsyscall_dragonfly_amd64.go | 238 +-
- .../x/sys/unix/zsyscall_freebsd_386.go | 204 +-
- .../x/sys/unix/zsyscall_freebsd_amd64.go | 204 +-
- .../x/sys/unix/zsyscall_freebsd_arm.go | 204 +-
- ...bsd_amd64.go => zsyscall_freebsd_arm64.go} | 206 +-
- .../x/sys/unix/zsyscall_illumos_amd64.go | 87 +
- ...scall_linux_s390x.go => zsyscall_linux.go} | 774 ++---
- .../x/sys/unix/zsyscall_linux_386.go | 1573 +--------
- .../x/sys/unix/zsyscall_linux_amd64.go | 1607 +---------
- .../x/sys/unix/zsyscall_linux_arm.go | 1626 +---------
- .../x/sys/unix/zsyscall_linux_arm64.go | 1513 +--------
- .../x/sys/unix/zsyscall_linux_mips.go | 1567 +--------
- .../x/sys/unix/zsyscall_linux_mips64.go | 1552 +--------
- .../x/sys/unix/zsyscall_linux_mips64le.go | 1552 +--------
- .../x/sys/unix/zsyscall_linux_mipsle.go | 1567 +--------
- .../x/sys/unix/zsyscall_linux_ppc64.go | 1586 +---------
- .../x/sys/unix/zsyscall_linux_ppc64le.go | 1586 +---------
- .../x/sys/unix/zsyscall_linux_riscv64.go | 582 ++++
- .../x/sys/unix/zsyscall_linux_s390x.go | 1570 +--------
- .../x/sys/unix/zsyscall_linux_sparc64.go | 1247 +-------
- .../x/sys/unix/zsyscall_netbsd_386.go | 551 +++-
- .../x/sys/unix/zsyscall_netbsd_amd64.go | 551 +++-
- .../x/sys/unix/zsyscall_netbsd_arm.go | 551 +++-
- ...ebsd_amd64.go => zsyscall_netbsd_arm64.go} | 262 +-
- .../x/sys/unix/zsyscall_openbsd_386.go | 338 +-
- .../x/sys/unix/zsyscall_openbsd_amd64.go | 338 +-
- .../x/sys/unix/zsyscall_openbsd_arm.go | 338 +-
- ...arwin_386.go => zsyscall_openbsd_arm64.go} | 289 +-
- .../x/sys/unix/zsyscall_solaris_amd64.go | 382 ++-
- ...sctl_openbsd.go => zsysctl_openbsd_386.go} | 4 +-
- ...tl_openbsd.go => zsysctl_openbsd_amd64.go} | 42 +-
- ...sctl_openbsd.go => zsysctl_openbsd_arm.go} | 6 +-
- ...tl_openbsd.go => zsysctl_openbsd_arm64.go} | 47 +-
- .../x/sys/unix/zsysnum_darwin_386.go | 60 +-
- .../x/sys/unix/zsysnum_darwin_amd64.go | 62 +-
- .../x/sys/unix/zsysnum_darwin_arm.go | 14 +-
- .../x/sys/unix/zsysnum_darwin_arm64.go | 14 +-
- .../x/sys/unix/zsysnum_dragonfly_amd64.go | 176 +-
- .../x/sys/unix/zsysnum_freebsd_386.go | 731 +++--
- .../x/sys/unix/zsysnum_freebsd_amd64.go | 731 +++--
- .../x/sys/unix/zsysnum_freebsd_arm.go | 731 +++--
- .../x/sys/unix/zsysnum_freebsd_arm64.go | 396 +++
- .../x/sys/unix/zsysnum_linux_386.go | 808 ++---
- .../x/sys/unix/zsysnum_linux_amd64.go | 19 +-
- .../x/sys/unix/zsysnum_linux_arm.go | 745 ++---
- .../x/sys/unix/zsysnum_linux_arm64.go | 20 +-
- .../x/sys/unix/zsysnum_linux_mips.go | 779 ++---
- .../x/sys/unix/zsysnum_linux_mips64.go | 19 +-
- .../x/sys/unix/zsysnum_linux_mips64le.go | 19 +-
- .../x/sys/unix/zsysnum_linux_mipsle.go | 779 ++---
- .../x/sys/unix/zsysnum_linux_ppc64.go | 33 +-
- .../x/sys/unix/zsysnum_linux_ppc64le.go | 33 +-
- ...inux_arm64.go => zsysnum_linux_riscv64.go} | 23 +-
- .../x/sys/unix/zsysnum_linux_s390x.go | 80 +-
- .../x/sys/unix/zsysnum_linux_sparc64.go | 35 +-
- .../x/sys/unix/zsysnum_netbsd_386.go | 4 +-
- .../x/sys/unix/zsysnum_netbsd_amd64.go | 4 +-
- .../x/sys/unix/zsysnum_netbsd_arm.go | 4 +-
- ..._netbsd_386.go => zsysnum_netbsd_arm64.go} | 6 +-
- .../x/sys/unix/zsysnum_openbsd_386.go | 223 +-
- .../x/sys/unix/zsysnum_openbsd_amd64.go | 223 +-
- .../x/sys/unix/zsysnum_openbsd_arm.go | 217 +-
- ...penbsd_arm.go => zsysnum_openbsd_arm64.go} | 218 +-
- .../x/sys/unix/zsysnum_solaris_amd64.go | 13 -
- .../golang.org/x/sys/unix/ztypes_aix_ppc.go | 352 +++
- .../golang.org/x/sys/unix/ztypes_aix_ppc64.go | 356 +++
- .../x/sys/unix/ztypes_darwin_386.go | 195 +-
- .../x/sys/unix/ztypes_darwin_amd64.go | 241 +-
- .../x/sys/unix/ztypes_darwin_arm.go | 195 +-
- .../x/sys/unix/ztypes_darwin_arm64.go | 246 +-
- .../x/sys/unix/ztypes_dragonfly_amd64.go | 213 +-
- .../x/sys/unix/ztypes_freebsd_386.go | 426 ++-
- .../x/sys/unix/ztypes_freebsd_amd64.go | 448 ++-
- .../x/sys/unix/ztypes_freebsd_arm.go | 427 ++-
- ...eebsd_amd64.go => ztypes_freebsd_arm64.go} | 430 ++-
- vendor/golang.org/x/sys/unix/ztypes_linux.go | 2340 ++++++++++++++
- .../golang.org/x/sys/unix/ztypes_linux_386.go | 878 ++---
- .../x/sys/unix/ztypes_linux_amd64.go | 881 ++----
- .../golang.org/x/sys/unix/ztypes_linux_arm.go | 899 +++---
- .../x/sys/unix/ztypes_linux_arm64.go | 883 ++----
- .../x/sys/unix/ztypes_linux_mips.go | 864 ++---
- .../x/sys/unix/ztypes_linux_mips64.go | 880 ++----
- .../x/sys/unix/ztypes_linux_mips64le.go | 880 ++----
- .../x/sys/unix/ztypes_linux_mipsle.go | 864 ++---
- .../x/sys/unix/ztypes_linux_ppc64.go | 889 ++----
- .../x/sys/unix/ztypes_linux_ppc64le.go | 889 ++----
- .../x/sys/unix/ztypes_linux_riscv64.go | 621 ++++
- .../x/sys/unix/ztypes_linux_s390x.go | 842 ++---
- .../x/sys/unix/ztypes_linux_sparc64.go | 910 +++---
- .../x/sys/unix/ztypes_netbsd_386.go | 145 +-
- .../x/sys/unix/ztypes_netbsd_amd64.go | 152 +-
- .../x/sys/unix/ztypes_netbsd_arm.go | 151 +-
- ...netbsd_amd64.go => ztypes_netbsd_arm64.go} | 154 +-
- .../x/sys/unix/ztypes_openbsd_386.go | 173 +-
- .../x/sys/unix/ztypes_openbsd_amd64.go | 264 +-
- .../x/sys/unix/ztypes_openbsd_arm.go | 255 +-
- ...enbsd_amd64.go => ztypes_openbsd_arm64.go} | 260 +-
- .../x/sys/unix/ztypes_solaris_amd64.go | 239 +-
- 293 files changed, 60017 insertions(+), 59731 deletions(-)
- create mode 100644 vendor/golang.org/x/sys/unix/affinity_linux.go
- create mode 100644 vendor/golang.org/x/sys/unix/aliases.go
- create mode 100644 vendor/golang.org/x/sys/unix/asm_aix_ppc64.s
- copy vendor/golang.org/x/sys/unix/{asm_linux_mips64x.s => asm_freebsd_arm64.s} (71%)
- create mode 100644 vendor/golang.org/x/sys/unix/asm_linux_riscv64.s
- copy vendor/golang.org/x/sys/unix/{asm_linux_mips64x.s => asm_netbsd_arm64.s} (60%)
- copy vendor/golang.org/x/sys/unix/{asm_linux_mips64x.s => asm_openbsd_arm64.s} (76%)
- create mode 100644 vendor/golang.org/x/sys/unix/dev_aix_ppc.go
- create mode 100644 vendor/golang.org/x/sys/unix/dev_aix_ppc64.go
- create mode 100644 vendor/golang.org/x/sys/unix/dev_darwin.go
- create mode 100644 vendor/golang.org/x/sys/unix/dev_dragonfly.go
- create mode 100644 vendor/golang.org/x/sys/unix/dev_freebsd.go
- create mode 100644 vendor/golang.org/x/sys/unix/dev_netbsd.go
- create mode 100644 vendor/golang.org/x/sys/unix/dev_openbsd.go
- delete mode 100644 vendor/golang.org/x/sys/unix/env_unset.go
- create mode 100644 vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go
- rename vendor/golang.org/x/sys/unix/{flock.go => fcntl.go} (54%)
- create mode 100644 vendor/golang.org/x/sys/unix/fcntl_darwin.go
- rename vendor/golang.org/x/sys/unix/{flock_linux_32bit.go => fcntl_linux_32bit.go} (100%)
- create mode 100644 vendor/golang.org/x/sys/unix/fdset.go
- delete mode 100644 vendor/golang.org/x/sys/unix/file_unix.go
- delete mode 100644 vendor/golang.org/x/sys/unix/gccgo_linux_sparc64.go
- create mode 100644 vendor/golang.org/x/sys/unix/ioctl.go
- create mode 100644 vendor/golang.org/x/sys/unix/mkasm_darwin.go
- create mode 100644 vendor/golang.org/x/sys/unix/mkmerge.go
- create mode 100644 vendor/golang.org/x/sys/unix/mksyscall.go
- create mode 100644 vendor/golang.org/x/sys/unix/mksyscall_aix_ppc.go
- create mode 100644 vendor/golang.org/x/sys/unix/mksyscall_aix_ppc64.go
- create mode 100644 vendor/golang.org/x/sys/unix/mksyscall_solaris.go
- create mode 100644 vendor/golang.org/x/sys/unix/mksysctl_openbsd.go
- create mode 100644 vendor/golang.org/x/sys/unix/mksysnum.go
- delete mode 100644 vendor/golang.org/x/sys/unix/openbsd_pledge.go
- create mode 100644 vendor/golang.org/x/sys/unix/pagesize_unix.go
- create mode 100644 vendor/golang.org/x/sys/unix/pledge_openbsd.go
- create mode 100644 vendor/golang.org/x/sys/unix/readdirent_getdents.go
- create mode 100644 vendor/golang.org/x/sys/unix/readdirent_getdirentries.go
- create mode 100644 vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go
- create mode 100644 vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_aix.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_aix_ppc.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin.1_12.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go
- copy vendor/golang.org/x/sys/unix/{syscall_dragonfly_amd64.go => syscall_freebsd_arm64.go} (59%)
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_illumos.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_linux_gc.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go
- copy vendor/golang.org/x/sys/unix/{syscall_linux_arm64.go => syscall_linux_riscv64.go} (68%)
- copy vendor/golang.org/x/sys/unix/{syscall_netbsd_amd64.go => syscall_netbsd_arm64.go} (50%)
- delete mode 100644 vendor/golang.org/x/sys/unix/syscall_no_getwd.go
- create mode 100644 vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go
- copy vendor/golang.org/x/sys/unix/{syscall_unix_gc.go => syscall_unix_gc_ppc64x.go} (51%)
- create mode 100644 vendor/golang.org/x/sys/unix/timestruct.go
- copy vendor/golang.org/x/sys/unix/{types_netbsd.go => types_aix.go} (53%)
- create mode 100644 vendor/golang.org/x/sys/unix/unveil_openbsd.go
- create mode 100644 vendor/golang.org/x/sys/unix/xattr_bsd.go
- create mode 100644 vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go
- create mode 100644 vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go
- copy vendor/golang.org/x/sys/unix/{zerrors_freebsd_amd64.go => zerrors_freebsd_arm64.go} (80%)
- create mode 100644 vendor/golang.org/x/sys/unix/zerrors_linux.go
- create mode 100644 vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
- copy vendor/golang.org/x/sys/unix/{zerrors_netbsd_amd64.go => zerrors_netbsd_arm64.go} (89%)
- copy vendor/golang.org/x/sys/unix/{zerrors_openbsd_amd64.go => zerrors_openbsd_arm64.go} (76%)
- create mode 100644 vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go
- create mode 100644 vendor/golang.org/x/sys/unix/zptrace_linux_arm64.go
- create mode 100644 vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go
- create mode 100644 vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go
- create mode 100644 vendor/golang.org/x/sys/unix/zptrace_x86_linux.go
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go
- copy vendor/golang.org/x/sys/unix/{zsyscall_netbsd_amd64.go => zsyscall_aix_ppc64.go} (57%)
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go
- copy vendor/golang.org/x/sys/unix/{zsyscall_darwin_arm.go => zsyscall_darwin_386.1_11.go} (85%)
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s
- copy vendor/golang.org/x/sys/unix/{zsyscall_darwin_arm64.go => zsyscall_darwin_amd64.1_11.go} (85%)
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s
- copy vendor/golang.org/x/sys/unix/{zsyscall_darwin_arm.go => zsyscall_darwin_arm.1_11.go} (85%)
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s
- copy vendor/golang.org/x/sys/unix/{zsyscall_darwin_arm64.go => zsyscall_darwin_arm64.1_11.go} (84%)
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s
- copy vendor/golang.org/x/sys/unix/{zsyscall_freebsd_amd64.go => zsyscall_freebsd_arm64.go} (90%)
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go
- copy vendor/golang.org/x/sys/unix/{zsyscall_linux_s390x.go => zsyscall_linux.go} (79%)
- create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go
- copy vendor/golang.org/x/sys/unix/{zsyscall_freebsd_amd64.go => zsyscall_netbsd_arm64.go} (92%)
- copy vendor/golang.org/x/sys/unix/{zsyscall_darwin_386.go => zsyscall_openbsd_arm64.go} (87%)
- copy vendor/golang.org/x/sys/unix/{zsysctl_openbsd.go => zsysctl_openbsd_386.go} (99%)
- copy vendor/golang.org/x/sys/unix/{zsysctl_openbsd.go => zsysctl_openbsd_amd64.go} (91%)
- copy vendor/golang.org/x/sys/unix/{zsysctl_openbsd.go => zsysctl_openbsd_arm.go} (99%)
- rename vendor/golang.org/x/sys/unix/{zsysctl_openbsd.go => zsysctl_openbsd_arm64.go} (91%)
- create mode 100644 vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go
- copy vendor/golang.org/x/sys/unix/{zsysnum_linux_arm64.go => zsysnum_linux_riscv64.go} (92%)
- copy vendor/golang.org/x/sys/unix/{zsysnum_netbsd_386.go => zsysnum_netbsd_arm64.go} (99%)
- copy vendor/golang.org/x/sys/unix/{zsysnum_openbsd_arm.go => zsysnum_openbsd_arm64.go} (67%)
- delete mode 100644 vendor/golang.org/x/sys/unix/zsysnum_solaris_amd64.go
- create mode 100644 vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go
- create mode 100644 vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go
- copy vendor/golang.org/x/sys/unix/{ztypes_freebsd_amd64.go => ztypes_freebsd_arm64.go} (54%)
- create mode 100644 vendor/golang.org/x/sys/unix/ztypes_linux.go
- create mode 100644 vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
- copy vendor/golang.org/x/sys/unix/{ztypes_netbsd_amd64.go => ztypes_netbsd_arm64.go} (73%)
- copy vendor/golang.org/x/sys/unix/{ztypes_openbsd_amd64.go => ztypes_openbsd_arm64.go} (58%)
-
-diff --git a/Gopkg.lock b/Gopkg.lock
-index b4333103..01a867d5 100644
---- a/Gopkg.lock
-+++ b/Gopkg.lock
-@@ -112,11 +112,11 @@
-
- [[projects]]
- branch = "master"
-- digest = "1:51912e607c5e28a89fdc7e41d3377b92086ab7f76ded236765dbf98d0a704c5d"
-+ digest = "1:f8181d8aa1e268255316ec12ab5402d4f671b1da6d7ad40abdf2f92c0404b67d"
- name = "golang.org/x/sys"
- packages = ["unix"]
- pruneopts = "NUT"
-- revision = "bb24a47a89eac6c1227fbcb2ae37a8b9ed323366"
-+ revision = "1957bb5e6d1f523308b49060df02171d06ddfc77"
-
- [[projects]]
- branch = "v2"
-diff --git a/vendor/golang.org/x/sys/unix/affinity_linux.go b/vendor/golang.org/x/sys/unix/affinity_linux.go
-new file mode 100644
-index 00000000..6e5c81ac
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/affinity_linux.go
-@@ -0,0 +1,86 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// CPU affinity functions
-+
-+package unix
-+
-+import (
-+ "math/bits"
-+ "unsafe"
-+)
-+
-+const cpuSetSize = _CPU_SETSIZE / _NCPUBITS
-+
-+// CPUSet represents a CPU affinity mask.
-+type CPUSet [cpuSetSize]cpuMask
-+
-+func schedAffinity(trap uintptr, pid int, set *CPUSet) error {
-+ _, _, e := RawSyscall(trap, uintptr(pid), uintptr(unsafe.Sizeof(*set)), uintptr(unsafe.Pointer(set)))
-+ if e != 0 {
-+ return errnoErr(e)
-+ }
-+ return nil
-+}
-+
-+// SchedGetaffinity gets the CPU affinity mask of the thread specified by pid.
-+// If pid is 0 the calling thread is used.
-+func SchedGetaffinity(pid int, set *CPUSet) error {
-+ return schedAffinity(SYS_SCHED_GETAFFINITY, pid, set)
-+}
-+
-+// SchedSetaffinity sets the CPU affinity mask of the thread specified by pid.
-+// If pid is 0 the calling thread is used.
-+func SchedSetaffinity(pid int, set *CPUSet) error {
-+ return schedAffinity(SYS_SCHED_SETAFFINITY, pid, set)
-+}
-+
-+// Zero clears the set s, so that it contains no CPUs.
-+func (s *CPUSet) Zero() {
-+ for i := range s {
-+ s[i] = 0
-+ }
-+}
-+
-+func cpuBitsIndex(cpu int) int {
-+ return cpu / _NCPUBITS
-+}
-+
-+func cpuBitsMask(cpu int) cpuMask {
-+ return cpuMask(1 << (uint(cpu) % _NCPUBITS))
-+}
-+
-+// Set adds cpu to the set s.
-+func (s *CPUSet) Set(cpu int) {
-+ i := cpuBitsIndex(cpu)
-+ if i < len(s) {
-+ s[i] |= cpuBitsMask(cpu)
-+ }
-+}
-+
-+// Clear removes cpu from the set s.
-+func (s *CPUSet) Clear(cpu int) {
-+ i := cpuBitsIndex(cpu)
-+ if i < len(s) {
-+ s[i] &^= cpuBitsMask(cpu)
-+ }
-+}
-+
-+// IsSet reports whether cpu is in the set s.
-+func (s *CPUSet) IsSet(cpu int) bool {
-+ i := cpuBitsIndex(cpu)
-+ if i < len(s) {
-+ return s[i]&cpuBitsMask(cpu) != 0
-+ }
-+ return false
-+}
-+
-+// Count returns the number of CPUs in the set s.
-+func (s *CPUSet) Count() int {
-+ c := 0
-+ for _, b := range s {
-+ c += bits.OnesCount64(uint64(b))
-+ }
-+ return c
-+}
-diff --git a/vendor/golang.org/x/sys/unix/aliases.go b/vendor/golang.org/x/sys/unix/aliases.go
-new file mode 100644
-index 00000000..951fce4d
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/aliases.go
-@@ -0,0 +1,14 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
-+// +build go1.9
-+
-+package unix
-+
-+import "syscall"
-+
-+type Signal = syscall.Signal
-+type Errno = syscall.Errno
-+type SysProcAttr = syscall.SysProcAttr
-diff --git a/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s b/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s
-new file mode 100644
-index 00000000..06f84b85
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s
-@@ -0,0 +1,17 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build !gccgo
-+
-+#include "textflag.h"
-+
-+//
-+// System calls for ppc64, AIX are implemented in runtime/syscall_aix.go
-+//
-+
-+TEXT ·syscall6(SB),NOSPLIT,$0-88
-+ JMP syscall·syscall6(SB)
-+
-+TEXT ·rawSyscall6(SB),NOSPLIT,$0-88
-+ JMP syscall·rawSyscall6(SB)
-diff --git a/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s b/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s
-index d5ed6726..603dd572 100644
---- a/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s
-+++ b/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s
-@@ -13,17 +13,17 @@
- // Just jump to package syscall's implementation for all these functions.
- // The runtime may know about them.
-
--TEXT ·Syscall(SB),NOSPLIT,$0-64
-+TEXT ·Syscall(SB),NOSPLIT,$0-56
- JMP syscall·Syscall(SB)
-
--TEXT ·Syscall6(SB),NOSPLIT,$0-88
-+TEXT ·Syscall6(SB),NOSPLIT,$0-80
- JMP syscall·Syscall6(SB)
-
--TEXT ·Syscall9(SB),NOSPLIT,$0-112
-+TEXT ·Syscall9(SB),NOSPLIT,$0-104
- JMP syscall·Syscall9(SB)
-
--TEXT ·RawSyscall(SB),NOSPLIT,$0-64
-+TEXT ·RawSyscall(SB),NOSPLIT,$0-56
- JMP syscall·RawSyscall(SB)
-
--TEXT ·RawSyscall6(SB),NOSPLIT,$0-88
-+TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
- JMP syscall·RawSyscall6(SB)
-diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s b/vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s
-similarity index 71%
-copy from vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
-copy to vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s
-index 724e580c..d9318cbf 100644
---- a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
-+++ b/vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s
-@@ -1,15 +1,13 @@
--// Copyright 2015 The Go Authors. All rights reserved.
-+// Copyright 2018 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build linux
--// +build mips64 mips64le
- // +build !gccgo
-
- #include "textflag.h"
-
- //
--// System calls for mips64, Linux
-+// System call support for ARM64, FreeBSD
- //
-
- // Just jump to package syscall's implementation for all these functions.
-@@ -21,7 +19,10 @@ TEXT ·Syscall(SB),NOSPLIT,$0-56
- TEXT ·Syscall6(SB),NOSPLIT,$0-80
- JMP syscall·Syscall6(SB)
-
--TEXT ·RawSyscall(SB),NOSPLIT,$0-56
-+TEXT ·Syscall9(SB),NOSPLIT,$0-104
-+ JMP syscall·Syscall9(SB)
-+
-+TEXT ·RawSyscall(SB),NOSPLIT,$0-56
- JMP syscall·RawSyscall(SB)
-
- TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
-diff --git a/vendor/golang.org/x/sys/unix/asm_linux_386.s b/vendor/golang.org/x/sys/unix/asm_linux_386.s
-index 4db29093..448bebbb 100644
---- a/vendor/golang.org/x/sys/unix/asm_linux_386.s
-+++ b/vendor/golang.org/x/sys/unix/asm_linux_386.s
-@@ -10,21 +10,51 @@
- // System calls for 386, Linux
- //
-
-+// See ../runtime/sys_linux_386.s for the reason why we always use int 0x80
-+// instead of the glibc-specific "CALL 0x10(GS)".
-+#define INVOKE_SYSCALL INT $0x80
-+
- // Just jump to package syscall's implementation for all these functions.
- // The runtime may know about them.
-
--TEXT ·Syscall(SB),NOSPLIT,$0-28
-+TEXT ·Syscall(SB),NOSPLIT,$0-28
- JMP syscall·Syscall(SB)
-
--TEXT ·Syscall6(SB),NOSPLIT,$0-40
-+TEXT ·Syscall6(SB),NOSPLIT,$0-40
- JMP syscall·Syscall6(SB)
-
-+TEXT ·SyscallNoError(SB),NOSPLIT,$0-24
-+ CALL runtime·entersyscall(SB)
-+ MOVL trap+0(FP), AX // syscall entry
-+ MOVL a1+4(FP), BX
-+ MOVL a2+8(FP), CX
-+ MOVL a3+12(FP), DX
-+ MOVL $0, SI
-+ MOVL $0, DI
-+ INVOKE_SYSCALL
-+ MOVL AX, r1+16(FP)
-+ MOVL DX, r2+20(FP)
-+ CALL runtime·exitsyscall(SB)
-+ RET
-+
- TEXT ·RawSyscall(SB),NOSPLIT,$0-28
- JMP syscall·RawSyscall(SB)
-
--TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
-+TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
- JMP syscall·RawSyscall6(SB)
-
-+TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-24
-+ MOVL trap+0(FP), AX // syscall entry
-+ MOVL a1+4(FP), BX
-+ MOVL a2+8(FP), CX
-+ MOVL a3+12(FP), DX
-+ MOVL $0, SI
-+ MOVL $0, DI
-+ INVOKE_SYSCALL
-+ MOVL AX, r1+16(FP)
-+ MOVL DX, r2+20(FP)
-+ RET
-+
- TEXT ·socketcall(SB),NOSPLIT,$0-36
- JMP syscall·socketcall(SB)
-
-diff --git a/vendor/golang.org/x/sys/unix/asm_linux_amd64.s b/vendor/golang.org/x/sys/unix/asm_linux_amd64.s
-index 44e25c62..c6468a95 100644
---- a/vendor/golang.org/x/sys/unix/asm_linux_amd64.s
-+++ b/vendor/golang.org/x/sys/unix/asm_linux_amd64.s
-@@ -13,17 +13,45 @@
- // Just jump to package syscall's implementation for all these functions.
- // The runtime may know about them.
-
--TEXT ·Syscall(SB),NOSPLIT,$0-56
-+TEXT ·Syscall(SB),NOSPLIT,$0-56
- JMP syscall·Syscall(SB)
-
- TEXT ·Syscall6(SB),NOSPLIT,$0-80
- JMP syscall·Syscall6(SB)
-
-+TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
-+ CALL runtime·entersyscall(SB)
-+ MOVQ a1+8(FP), DI
-+ MOVQ a2+16(FP), SI
-+ MOVQ a3+24(FP), DX
-+ MOVQ $0, R10
-+ MOVQ $0, R8
-+ MOVQ $0, R9
-+ MOVQ trap+0(FP), AX // syscall entry
-+ SYSCALL
-+ MOVQ AX, r1+32(FP)
-+ MOVQ DX, r2+40(FP)
-+ CALL runtime·exitsyscall(SB)
-+ RET
-+
- TEXT ·RawSyscall(SB),NOSPLIT,$0-56
- JMP syscall·RawSyscall(SB)
-
- TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
- JMP syscall·RawSyscall6(SB)
-
-+TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
-+ MOVQ a1+8(FP), DI
-+ MOVQ a2+16(FP), SI
-+ MOVQ a3+24(FP), DX
-+ MOVQ $0, R10
-+ MOVQ $0, R8
-+ MOVQ $0, R9
-+ MOVQ trap+0(FP), AX // syscall entry
-+ SYSCALL
-+ MOVQ AX, r1+32(FP)
-+ MOVQ DX, r2+40(FP)
-+ RET
-+
- TEXT ·gettimeofday(SB),NOSPLIT,$0-16
- JMP syscall·gettimeofday(SB)
-diff --git a/vendor/golang.org/x/sys/unix/asm_linux_arm.s b/vendor/golang.org/x/sys/unix/asm_linux_arm.s
-index cf0b5746..cf0f3575 100644
---- a/vendor/golang.org/x/sys/unix/asm_linux_arm.s
-+++ b/vendor/golang.org/x/sys/unix/asm_linux_arm.s
-@@ -13,17 +13,44 @@
- // Just jump to package syscall's implementation for all these functions.
- // The runtime may know about them.
-
--TEXT ·Syscall(SB),NOSPLIT,$0-28
-+TEXT ·Syscall(SB),NOSPLIT,$0-28
- B syscall·Syscall(SB)
-
--TEXT ·Syscall6(SB),NOSPLIT,$0-40
-+TEXT ·Syscall6(SB),NOSPLIT,$0-40
- B syscall·Syscall6(SB)
-
-+TEXT ·SyscallNoError(SB),NOSPLIT,$0-24
-+ BL runtime·entersyscall(SB)
-+ MOVW trap+0(FP), R7
-+ MOVW a1+4(FP), R0
-+ MOVW a2+8(FP), R1
-+ MOVW a3+12(FP), R2
-+ MOVW $0, R3
-+ MOVW $0, R4
-+ MOVW $0, R5
-+ SWI $0
-+ MOVW R0, r1+16(FP)
-+ MOVW $0, R0
-+ MOVW R0, r2+20(FP)
-+ BL runtime·exitsyscall(SB)
-+ RET
-+
- TEXT ·RawSyscall(SB),NOSPLIT,$0-28
- B syscall·RawSyscall(SB)
-
--TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
-+TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
- B syscall·RawSyscall6(SB)
-
--TEXT ·seek(SB),NOSPLIT,$0-32
-+TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-24
-+ MOVW trap+0(FP), R7 // syscall entry
-+ MOVW a1+4(FP), R0
-+ MOVW a2+8(FP), R1
-+ MOVW a3+12(FP), R2
-+ SWI $0
-+ MOVW R0, r1+16(FP)
-+ MOVW $0, R0
-+ MOVW R0, r2+20(FP)
-+ RET
-+
-+TEXT ·seek(SB),NOSPLIT,$0-28
- B syscall·seek(SB)
-diff --git a/vendor/golang.org/x/sys/unix/asm_linux_arm64.s b/vendor/golang.org/x/sys/unix/asm_linux_arm64.s
-index 4be9bfed..afe6fdf6 100644
---- a/vendor/golang.org/x/sys/unix/asm_linux_arm64.s
-+++ b/vendor/golang.org/x/sys/unix/asm_linux_arm64.s
-@@ -11,14 +11,42 @@
- // Just jump to package syscall's implementation for all these functions.
- // The runtime may know about them.
-
--TEXT ·Syscall(SB),NOSPLIT,$0-56
-+TEXT ·Syscall(SB),NOSPLIT,$0-56
- B syscall·Syscall(SB)
-
- TEXT ·Syscall6(SB),NOSPLIT,$0-80
- B syscall·Syscall6(SB)
-
-+TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
-+ BL runtime·entersyscall(SB)
-+ MOVD a1+8(FP), R0
-+ MOVD a2+16(FP), R1
-+ MOVD a3+24(FP), R2
-+ MOVD $0, R3
-+ MOVD $0, R4
-+ MOVD $0, R5
-+ MOVD trap+0(FP), R8 // syscall entry
-+ SVC
-+ MOVD R0, r1+32(FP) // r1
-+ MOVD R1, r2+40(FP) // r2
-+ BL runtime·exitsyscall(SB)
-+ RET
-+
- TEXT ·RawSyscall(SB),NOSPLIT,$0-56
- B syscall·RawSyscall(SB)
-
- TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
- B syscall·RawSyscall6(SB)
-+
-+TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
-+ MOVD a1+8(FP), R0
-+ MOVD a2+16(FP), R1
-+ MOVD a3+24(FP), R2
-+ MOVD $0, R3
-+ MOVD $0, R4
-+ MOVD $0, R5
-+ MOVD trap+0(FP), R8 // syscall entry
-+ SVC
-+ MOVD R0, r1+32(FP)
-+ MOVD R1, r2+40(FP)
-+ RET
-diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s b/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
-index 724e580c..ab9d6383 100644
---- a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
-+++ b/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
-@@ -15,14 +15,42 @@
- // Just jump to package syscall's implementation for all these functions.
- // The runtime may know about them.
-
--TEXT ·Syscall(SB),NOSPLIT,$0-56
-+TEXT ·Syscall(SB),NOSPLIT,$0-56
- JMP syscall·Syscall(SB)
-
--TEXT ·Syscall6(SB),NOSPLIT,$0-80
-+TEXT ·Syscall6(SB),NOSPLIT,$0-80
- JMP syscall·Syscall6(SB)
-
--TEXT ·RawSyscall(SB),NOSPLIT,$0-56
-+TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
-+ JAL runtime·entersyscall(SB)
-+ MOVV a1+8(FP), R4
-+ MOVV a2+16(FP), R5
-+ MOVV a3+24(FP), R6
-+ MOVV R0, R7
-+ MOVV R0, R8
-+ MOVV R0, R9
-+ MOVV trap+0(FP), R2 // syscall entry
-+ SYSCALL
-+ MOVV R2, r1+32(FP)
-+ MOVV R3, r2+40(FP)
-+ JAL runtime·exitsyscall(SB)
-+ RET
-+
-+TEXT ·RawSyscall(SB),NOSPLIT,$0-56
- JMP syscall·RawSyscall(SB)
-
--TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
-+TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
- JMP syscall·RawSyscall6(SB)
-+
-+TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
-+ MOVV a1+8(FP), R4
-+ MOVV a2+16(FP), R5
-+ MOVV a3+24(FP), R6
-+ MOVV R0, R7
-+ MOVV R0, R8
-+ MOVV R0, R9
-+ MOVV trap+0(FP), R2 // syscall entry
-+ SYSCALL
-+ MOVV R2, r1+32(FP)
-+ MOVV R3, r2+40(FP)
-+ RET
-diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s b/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s
-index 2ea42575..99e53990 100644
---- a/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s
-+++ b/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s
-@@ -15,17 +15,40 @@
- // Just jump to package syscall's implementation for all these functions.
- // The runtime may know about them.
-
--TEXT ·Syscall(SB),NOSPLIT,$0-28
-+TEXT ·Syscall(SB),NOSPLIT,$0-28
- JMP syscall·Syscall(SB)
-
--TEXT ·Syscall6(SB),NOSPLIT,$0-40
-+TEXT ·Syscall6(SB),NOSPLIT,$0-40
- JMP syscall·Syscall6(SB)
-
--TEXT ·Syscall9(SB),NOSPLIT,$0-52
-+TEXT ·Syscall9(SB),NOSPLIT,$0-52
- JMP syscall·Syscall9(SB)
-
--TEXT ·RawSyscall(SB),NOSPLIT,$0-28
-+TEXT ·SyscallNoError(SB),NOSPLIT,$0-24
-+ JAL runtime·entersyscall(SB)
-+ MOVW a1+4(FP), R4
-+ MOVW a2+8(FP), R5
-+ MOVW a3+12(FP), R6
-+ MOVW R0, R7
-+ MOVW trap+0(FP), R2 // syscall entry
-+ SYSCALL
-+ MOVW R2, r1+16(FP) // r1
-+ MOVW R3, r2+20(FP) // r2
-+ JAL runtime·exitsyscall(SB)
-+ RET
-+
-+TEXT ·RawSyscall(SB),NOSPLIT,$0-28
- JMP syscall·RawSyscall(SB)
-
--TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
-+TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
- JMP syscall·RawSyscall6(SB)
-+
-+TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-24
-+ MOVW a1+4(FP), R4
-+ MOVW a2+8(FP), R5
-+ MOVW a3+12(FP), R6
-+ MOVW trap+0(FP), R2 // syscall entry
-+ SYSCALL
-+ MOVW R2, r1+16(FP)
-+ MOVW R3, r2+20(FP)
-+ RET
-diff --git a/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s b/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s
-index 8d231feb..88f71255 100644
---- a/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s
-+++ b/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s
-@@ -15,14 +15,30 @@
- // Just jump to package syscall's implementation for all these functions.
- // The runtime may know about them.
-
--TEXT ·Syscall(SB),NOSPLIT,$0-56
-- BR syscall·Syscall(SB)
--
--TEXT ·Syscall6(SB),NOSPLIT,$0-80
-- BR syscall·Syscall6(SB)
--
--TEXT ·RawSyscall(SB),NOSPLIT,$0-56
-- BR syscall·RawSyscall(SB)
--
--TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
-- BR syscall·RawSyscall6(SB)
-+TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
-+ BL runtime·entersyscall(SB)
-+ MOVD a1+8(FP), R3
-+ MOVD a2+16(FP), R4
-+ MOVD a3+24(FP), R5
-+ MOVD R0, R6
-+ MOVD R0, R7
-+ MOVD R0, R8
-+ MOVD trap+0(FP), R9 // syscall entry
-+ SYSCALL R9
-+ MOVD R3, r1+32(FP)
-+ MOVD R4, r2+40(FP)
-+ BL runtime·exitsyscall(SB)
-+ RET
-+
-+TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
-+ MOVD a1+8(FP), R3
-+ MOVD a2+16(FP), R4
-+ MOVD a3+24(FP), R5
-+ MOVD R0, R6
-+ MOVD R0, R7
-+ MOVD R0, R8
-+ MOVD trap+0(FP), R9 // syscall entry
-+ SYSCALL R9
-+ MOVD R3, r1+32(FP)
-+ MOVD R4, r2+40(FP)
-+ RET
-diff --git a/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s b/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s
-new file mode 100644
-index 00000000..3cfefed2
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s
-@@ -0,0 +1,47 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build riscv64,!gccgo
-+
-+#include "textflag.h"
-+
-+//
-+// System calls for linux/riscv64.
-+//
-+// Where available, just jump to package syscall's implementation of
-+// these functions.
-+
-+TEXT ·Syscall(SB),NOSPLIT,$0-56
-+ JMP syscall·Syscall(SB)
-+
-+TEXT ·Syscall6(SB),NOSPLIT,$0-80
-+ JMP syscall·Syscall6(SB)
-+
-+TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
-+ CALL runtime·entersyscall(SB)
-+ MOV a1+8(FP), A0
-+ MOV a2+16(FP), A1
-+ MOV a3+24(FP), A2
-+ MOV trap+0(FP), A7 // syscall entry
-+ ECALL
-+ MOV A0, r1+32(FP) // r1
-+ MOV A1, r2+40(FP) // r2
-+ CALL runtime·exitsyscall(SB)
-+ RET
-+
-+TEXT ·RawSyscall(SB),NOSPLIT,$0-56
-+ JMP syscall·RawSyscall(SB)
-+
-+TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
-+ JMP syscall·RawSyscall6(SB)
-+
-+TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
-+ MOV a1+8(FP), A0
-+ MOV a2+16(FP), A1
-+ MOV a3+24(FP), A2
-+ MOV trap+0(FP), A7 // syscall entry
-+ ECALL
-+ MOV A0, r1+32(FP)
-+ MOV A1, r2+40(FP)
-+ RET
-diff --git a/vendor/golang.org/x/sys/unix/asm_linux_s390x.s b/vendor/golang.org/x/sys/unix/asm_linux_s390x.s
-index 11889859..a5a863c6 100644
---- a/vendor/golang.org/x/sys/unix/asm_linux_s390x.s
-+++ b/vendor/golang.org/x/sys/unix/asm_linux_s390x.s
-@@ -21,8 +21,36 @@ TEXT ·Syscall(SB),NOSPLIT,$0-56
- TEXT ·Syscall6(SB),NOSPLIT,$0-80
- BR syscall·Syscall6(SB)
-
-+TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
-+ BL runtime·entersyscall(SB)
-+ MOVD a1+8(FP), R2
-+ MOVD a2+16(FP), R3
-+ MOVD a3+24(FP), R4
-+ MOVD $0, R5
-+ MOVD $0, R6
-+ MOVD $0, R7
-+ MOVD trap+0(FP), R1 // syscall entry
-+ SYSCALL
-+ MOVD R2, r1+32(FP)
-+ MOVD R3, r2+40(FP)
-+ BL runtime·exitsyscall(SB)
-+ RET
-+
- TEXT ·RawSyscall(SB),NOSPLIT,$0-56
- BR syscall·RawSyscall(SB)
-
- TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
- BR syscall·RawSyscall6(SB)
-+
-+TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
-+ MOVD a1+8(FP), R2
-+ MOVD a2+16(FP), R3
-+ MOVD a3+24(FP), R4
-+ MOVD $0, R5
-+ MOVD $0, R6
-+ MOVD $0, R7
-+ MOVD trap+0(FP), R1 // syscall entry
-+ SYSCALL
-+ MOVD R2, r1+32(FP)
-+ MOVD R3, r2+40(FP)
-+ RET
-diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s b/vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s
-similarity index 60%
-copy from vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
-copy to vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s
-index 724e580c..6f98ba5a 100644
---- a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
-+++ b/vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s
-@@ -1,28 +1,29 @@
--// Copyright 2015 The Go Authors. All rights reserved.
-+// Copyright 2019 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build linux
--// +build mips64 mips64le
- // +build !gccgo
-
- #include "textflag.h"
-
- //
--// System calls for mips64, Linux
-+// System call support for ARM64, NetBSD
- //
-
- // Just jump to package syscall's implementation for all these functions.
- // The runtime may know about them.
-
- TEXT ·Syscall(SB),NOSPLIT,$0-56
-- JMP syscall·Syscall(SB)
-+ B syscall·Syscall(SB)
-
- TEXT ·Syscall6(SB),NOSPLIT,$0-80
-- JMP syscall·Syscall6(SB)
-+ B syscall·Syscall6(SB)
-+
-+TEXT ·Syscall9(SB),NOSPLIT,$0-104
-+ B syscall·Syscall9(SB)
-
- TEXT ·RawSyscall(SB),NOSPLIT,$0-56
-- JMP syscall·RawSyscall(SB)
-+ B syscall·RawSyscall(SB)
-
- TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
-- JMP syscall·RawSyscall6(SB)
-+ B syscall·RawSyscall6(SB)
-diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s b/vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s
-similarity index 76%
-copy from vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
-copy to vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s
-index 724e580c..0cedea3d 100644
---- a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
-+++ b/vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s
-@@ -1,15 +1,13 @@
--// Copyright 2015 The Go Authors. All rights reserved.
-+// Copyright 2019 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build linux
--// +build mips64 mips64le
- // +build !gccgo
-
- #include "textflag.h"
-
- //
--// System calls for mips64, Linux
-+// System call support for arm64, OpenBSD
- //
-
- // Just jump to package syscall's implementation for all these functions.
-@@ -21,6 +19,9 @@ TEXT ·Syscall(SB),NOSPLIT,$0-56
- TEXT ·Syscall6(SB),NOSPLIT,$0-80
- JMP syscall·Syscall6(SB)
-
-+TEXT ·Syscall9(SB),NOSPLIT,$0-104
-+ JMP syscall·Syscall9(SB)
-+
- TEXT ·RawSyscall(SB),NOSPLIT,$0-56
- JMP syscall·RawSyscall(SB)
-
-diff --git a/vendor/golang.org/x/sys/unix/bluetooth_linux.go b/vendor/golang.org/x/sys/unix/bluetooth_linux.go
-index 6e322969..a178a614 100644
---- a/vendor/golang.org/x/sys/unix/bluetooth_linux.go
-+++ b/vendor/golang.org/x/sys/unix/bluetooth_linux.go
-@@ -23,6 +23,7 @@ const (
- HCI_CHANNEL_USER = 1
- HCI_CHANNEL_MONITOR = 2
- HCI_CHANNEL_CONTROL = 3
-+ HCI_CHANNEL_LOGGING = 4
- )
-
- // Socketoption Level
-diff --git a/vendor/golang.org/x/sys/unix/cap_freebsd.go b/vendor/golang.org/x/sys/unix/cap_freebsd.go
-index 83b6bcea..df520487 100644
---- a/vendor/golang.org/x/sys/unix/cap_freebsd.go
-+++ b/vendor/golang.org/x/sys/unix/cap_freebsd.go
-@@ -7,7 +7,7 @@
- package unix
-
- import (
-- errorspkg "errors"
-+ "errors"
- "fmt"
- )
-
-@@ -60,26 +60,26 @@ func CapRightsSet(rights *CapRights, setrights []uint64) error {
-
- n := caparsize(rights)
- if n < capArSizeMin || n > capArSizeMax {
-- return errorspkg.New("bad rights size")
-+ return errors.New("bad rights size")
- }
-
- for _, right := range setrights {
- if caprver(right) != CAP_RIGHTS_VERSION_00 {
-- return errorspkg.New("bad right version")
-+ return errors.New("bad right version")
- }
- i, err := rightToIndex(right)
- if err != nil {
- return err
- }
- if i >= n {
-- return errorspkg.New("index overflow")
-+ return errors.New("index overflow")
- }
- if capidxbit(rights.Rights[i]) != capidxbit(right) {
-- return errorspkg.New("index mismatch")
-+ return errors.New("index mismatch")
- }
- rights.Rights[i] |= right
- if capidxbit(rights.Rights[i]) != capidxbit(right) {
-- return errorspkg.New("index mismatch (after assign)")
-+ return errors.New("index mismatch (after assign)")
- }
- }
-
-@@ -95,26 +95,26 @@ func CapRightsClear(rights *CapRights, clearrights []uint64) error {
-
- n := caparsize(rights)
- if n < capArSizeMin || n > capArSizeMax {
-- return errorspkg.New("bad rights size")
-+ return errors.New("bad rights size")
- }
-
- for _, right := range clearrights {
- if caprver(right) != CAP_RIGHTS_VERSION_00 {
-- return errorspkg.New("bad right version")
-+ return errors.New("bad right version")
- }
- i, err := rightToIndex(right)
- if err != nil {
- return err
- }
- if i >= n {
-- return errorspkg.New("index overflow")
-+ return errors.New("index overflow")
- }
- if capidxbit(rights.Rights[i]) != capidxbit(right) {
-- return errorspkg.New("index mismatch")
-+ return errors.New("index mismatch")
- }
- rights.Rights[i] &= ^(right & 0x01FFFFFFFFFFFFFF)
- if capidxbit(rights.Rights[i]) != capidxbit(right) {
-- return errorspkg.New("index mismatch (after assign)")
-+ return errors.New("index mismatch (after assign)")
- }
- }
-
-@@ -130,22 +130,22 @@ func CapRightsIsSet(rights *CapRights, setrights []uint64) (bool, error) {
-
- n := caparsize(rights)
- if n < capArSizeMin || n > capArSizeMax {
-- return false, errorspkg.New("bad rights size")
-+ return false, errors.New("bad rights size")
- }
-
- for _, right := range setrights {
- if caprver(right) != CAP_RIGHTS_VERSION_00 {
-- return false, errorspkg.New("bad right version")
-+ return false, errors.New("bad right version")
- }
- i, err := rightToIndex(right)
- if err != nil {
- return false, err
- }
- if i >= n {
-- return false, errorspkg.New("index overflow")
-+ return false, errors.New("index overflow")
- }
- if capidxbit(rights.Rights[i]) != capidxbit(right) {
-- return false, errorspkg.New("index mismatch")
-+ return false, errors.New("index mismatch")
- }
- if (rights.Rights[i] & right) != right {
- return false, nil
-diff --git a/vendor/golang.org/x/sys/unix/constants.go b/vendor/golang.org/x/sys/unix/constants.go
-index a96f0ebc..3a6ac648 100644
---- a/vendor/golang.org/x/sys/unix/constants.go
-+++ b/vendor/golang.org/x/sys/unix/constants.go
-@@ -2,7 +2,7 @@
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build darwin dragonfly freebsd linux netbsd openbsd solaris
-+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
-
- package unix
-
-diff --git a/vendor/golang.org/x/sys/unix/dev_aix_ppc.go b/vendor/golang.org/x/sys/unix/dev_aix_ppc.go
-new file mode 100644
-index 00000000..5e5fb451
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/dev_aix_ppc.go
-@@ -0,0 +1,27 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build aix
-+// +build ppc
-+
-+// Functions to access/create device major and minor numbers matching the
-+// encoding used by AIX.
-+
-+package unix
-+
-+// Major returns the major component of a Linux device number.
-+func Major(dev uint64) uint32 {
-+ return uint32((dev >> 16) & 0xffff)
-+}
-+
-+// Minor returns the minor component of a Linux device number.
-+func Minor(dev uint64) uint32 {
-+ return uint32(dev & 0xffff)
-+}
-+
-+// Mkdev returns a Linux device number generated from the given major and minor
-+// components.
-+func Mkdev(major, minor uint32) uint64 {
-+ return uint64(((major) << 16) | (minor))
-+}
-diff --git a/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go b/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go
-new file mode 100644
-index 00000000..8b401244
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go
-@@ -0,0 +1,29 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build aix
-+// +build ppc64
-+
-+// Functions to access/create device major and minor numbers matching the
-+// encoding used AIX.
-+
-+package unix
-+
-+// Major returns the major component of a Linux device number.
-+func Major(dev uint64) uint32 {
-+ return uint32((dev & 0x3fffffff00000000) >> 32)
-+}
-+
-+// Minor returns the minor component of a Linux device number.
-+func Minor(dev uint64) uint32 {
-+ return uint32((dev & 0x00000000ffffffff) >> 0)
-+}
-+
-+// Mkdev returns a Linux device number generated from the given major and minor
-+// components.
-+func Mkdev(major, minor uint32) uint64 {
-+ var DEVNO64 uint64
-+ DEVNO64 = 0x8000000000000000
-+ return ((uint64(major) << 32) | (uint64(minor) & 0x00000000FFFFFFFF) | DEVNO64)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/dev_darwin.go b/vendor/golang.org/x/sys/unix/dev_darwin.go
-new file mode 100644
-index 00000000..8d1dc0fa
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/dev_darwin.go
-@@ -0,0 +1,24 @@
-+// Copyright 2017 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// Functions to access/create device major and minor numbers matching the
-+// encoding used in Darwin's sys/types.h header.
-+
-+package unix
-+
-+// Major returns the major component of a Darwin device number.
-+func Major(dev uint64) uint32 {
-+ return uint32((dev >> 24) & 0xff)
-+}
-+
-+// Minor returns the minor component of a Darwin device number.
-+func Minor(dev uint64) uint32 {
-+ return uint32(dev & 0xffffff)
-+}
-+
-+// Mkdev returns a Darwin device number generated from the given major and minor
-+// components.
-+func Mkdev(major, minor uint32) uint64 {
-+ return (uint64(major) << 24) | uint64(minor)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/dev_dragonfly.go b/vendor/golang.org/x/sys/unix/dev_dragonfly.go
-new file mode 100644
-index 00000000..8502f202
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/dev_dragonfly.go
-@@ -0,0 +1,30 @@
-+// Copyright 2017 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// Functions to access/create device major and minor numbers matching the
-+// encoding used in Dragonfly's sys/types.h header.
-+//
-+// The information below is extracted and adapted from sys/types.h:
-+//
-+// Minor gives a cookie instead of an index since in order to avoid changing the
-+// meanings of bits 0-15 or wasting time and space shifting bits 16-31 for
-+// devices that don't use them.
-+
-+package unix
-+
-+// Major returns the major component of a DragonFlyBSD device number.
-+func Major(dev uint64) uint32 {
-+ return uint32((dev >> 8) & 0xff)
-+}
-+
-+// Minor returns the minor component of a DragonFlyBSD device number.
-+func Minor(dev uint64) uint32 {
-+ return uint32(dev & 0xffff00ff)
-+}
-+
-+// Mkdev returns a DragonFlyBSD device number generated from the given major and
-+// minor components.
-+func Mkdev(major, minor uint32) uint64 {
-+ return (uint64(major) << 8) | uint64(minor)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/dev_freebsd.go b/vendor/golang.org/x/sys/unix/dev_freebsd.go
-new file mode 100644
-index 00000000..eba3b4bd
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/dev_freebsd.go
-@@ -0,0 +1,30 @@
-+// Copyright 2017 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// Functions to access/create device major and minor numbers matching the
-+// encoding used in FreeBSD's sys/types.h header.
-+//
-+// The information below is extracted and adapted from sys/types.h:
-+//
-+// Minor gives a cookie instead of an index since in order to avoid changing the
-+// meanings of bits 0-15 or wasting time and space shifting bits 16-31 for
-+// devices that don't use them.
-+
-+package unix
-+
-+// Major returns the major component of a FreeBSD device number.
-+func Major(dev uint64) uint32 {
-+ return uint32((dev >> 8) & 0xff)
-+}
-+
-+// Minor returns the minor component of a FreeBSD device number.
-+func Minor(dev uint64) uint32 {
-+ return uint32(dev & 0xffff00ff)
-+}
-+
-+// Mkdev returns a FreeBSD device number generated from the given major and
-+// minor components.
-+func Mkdev(major, minor uint32) uint64 {
-+ return (uint64(major) << 8) | uint64(minor)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/dev_linux.go b/vendor/golang.org/x/sys/unix/dev_linux.go
-index c902c39e..d165d6f3 100644
---- a/vendor/golang.org/x/sys/unix/dev_linux.go
-+++ b/vendor/golang.org/x/sys/unix/dev_linux.go
-@@ -34,9 +34,9 @@ func Minor(dev uint64) uint32 {
- // Mkdev returns a Linux device number generated from the given major and minor
- // components.
- func Mkdev(major, minor uint32) uint64 {
-- dev := uint64((major & 0x00000fff) << 8)
-- dev |= uint64((major & 0xfffff000) << 32)
-- dev |= uint64((minor & 0x000000ff) << 0)
-- dev |= uint64((minor & 0xffffff00) << 12)
-+ dev := (uint64(major) & 0x00000fff) << 8
-+ dev |= (uint64(major) & 0xfffff000) << 32
-+ dev |= (uint64(minor) & 0x000000ff) << 0
-+ dev |= (uint64(minor) & 0xffffff00) << 12
- return dev
- }
-diff --git a/vendor/golang.org/x/sys/unix/dev_netbsd.go b/vendor/golang.org/x/sys/unix/dev_netbsd.go
-new file mode 100644
-index 00000000..b4a203d0
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/dev_netbsd.go
-@@ -0,0 +1,29 @@
-+// Copyright 2017 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// Functions to access/create device major and minor numbers matching the
-+// encoding used in NetBSD's sys/types.h header.
-+
-+package unix
-+
-+// Major returns the major component of a NetBSD device number.
-+func Major(dev uint64) uint32 {
-+ return uint32((dev & 0x000fff00) >> 8)
-+}
-+
-+// Minor returns the minor component of a NetBSD device number.
-+func Minor(dev uint64) uint32 {
-+ minor := uint32((dev & 0x000000ff) >> 0)
-+ minor |= uint32((dev & 0xfff00000) >> 12)
-+ return minor
-+}
-+
-+// Mkdev returns a NetBSD device number generated from the given major and minor
-+// components.
-+func Mkdev(major, minor uint32) uint64 {
-+ dev := (uint64(major) << 8) & 0x000fff00
-+ dev |= (uint64(minor) << 12) & 0xfff00000
-+ dev |= (uint64(minor) << 0) & 0x000000ff
-+ return dev
-+}
-diff --git a/vendor/golang.org/x/sys/unix/dev_openbsd.go b/vendor/golang.org/x/sys/unix/dev_openbsd.go
-new file mode 100644
-index 00000000..f3430c42
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/dev_openbsd.go
-@@ -0,0 +1,29 @@
-+// Copyright 2017 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// Functions to access/create device major and minor numbers matching the
-+// encoding used in OpenBSD's sys/types.h header.
-+
-+package unix
-+
-+// Major returns the major component of an OpenBSD device number.
-+func Major(dev uint64) uint32 {
-+ return uint32((dev & 0x0000ff00) >> 8)
-+}
-+
-+// Minor returns the minor component of an OpenBSD device number.
-+func Minor(dev uint64) uint32 {
-+ minor := uint32((dev & 0x000000ff) >> 0)
-+ minor |= uint32((dev & 0xffff0000) >> 8)
-+ return minor
-+}
-+
-+// Mkdev returns an OpenBSD device number generated from the given major and minor
-+// components.
-+func Mkdev(major, minor uint32) uint64 {
-+ dev := (uint64(major) << 8) & 0x0000ff00
-+ dev |= (uint64(minor) << 8) & 0xffff0000
-+ dev |= (uint64(minor) << 0) & 0x000000ff
-+ return dev
-+}
-diff --git a/vendor/golang.org/x/sys/unix/dirent.go b/vendor/golang.org/x/sys/unix/dirent.go
-index bd475812..304016b6 100644
---- a/vendor/golang.org/x/sys/unix/dirent.go
-+++ b/vendor/golang.org/x/sys/unix/dirent.go
-@@ -2,7 +2,7 @@
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build darwin dragonfly freebsd linux nacl netbsd openbsd solaris
-+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
-
- package unix
-
-diff --git a/vendor/golang.org/x/sys/unix/endian_little.go b/vendor/golang.org/x/sys/unix/endian_little.go
-index 085df2d8..bcdb5d30 100644
---- a/vendor/golang.org/x/sys/unix/endian_little.go
-+++ b/vendor/golang.org/x/sys/unix/endian_little.go
-@@ -2,7 +2,7 @@
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
- //
--// +build 386 amd64 amd64p32 arm arm64 ppc64le mipsle mips64le
-+// +build 386 amd64 amd64p32 arm arm64 ppc64le mipsle mips64le riscv64
-
- package unix
-
-diff --git a/vendor/golang.org/x/sys/unix/env_unix.go b/vendor/golang.org/x/sys/unix/env_unix.go
-index 45e281a0..84178b0a 100644
---- a/vendor/golang.org/x/sys/unix/env_unix.go
-+++ b/vendor/golang.org/x/sys/unix/env_unix.go
-@@ -1,8 +1,8 @@
--// Copyright 2010 The Go Authors. All rights reserved.
-+// Copyright 2010 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build darwin dragonfly freebsd linux netbsd openbsd solaris
-+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
-
- // Unix environment variables.
-
-@@ -25,3 +25,7 @@ func Clearenv() {
- func Environ() []string {
- return syscall.Environ()
- }
-+
-+func Unsetenv(key string) error {
-+ return syscall.Unsetenv(key)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/env_unset.go b/vendor/golang.org/x/sys/unix/env_unset.go
-deleted file mode 100644
-index 92222625..00000000
---- a/vendor/golang.org/x/sys/unix/env_unset.go
-+++ /dev/null
-@@ -1,14 +0,0 @@
--// Copyright 2014 The Go Authors. All rights reserved.
--// Use of this source code is governed by a BSD-style
--// license that can be found in the LICENSE file.
--
--// +build go1.4
--
--package unix
--
--import "syscall"
--
--func Unsetenv(key string) error {
-- // This was added in Go 1.4.
-- return syscall.Unsetenv(key)
--}
-diff --git a/vendor/golang.org/x/sys/unix/errors_freebsd_386.go b/vendor/golang.org/x/sys/unix/errors_freebsd_386.go
-index c56bc8b0..761db66e 100644
---- a/vendor/golang.org/x/sys/unix/errors_freebsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/errors_freebsd_386.go
-@@ -8,6 +8,7 @@
- package unix
-
- const (
-+ DLT_HHDLC = 0x79
- IFF_SMART = 0x20
- IFT_1822 = 0x2
- IFT_A12MPPSWITCH = 0x82
-@@ -210,13 +211,18 @@ const (
- IFT_XETHER = 0x1a
- IPPROTO_MAXID = 0x34
- IPV6_FAITH = 0x1d
-+ IPV6_MIN_MEMBERSHIPS = 0x1f
- IP_FAITH = 0x16
-+ IP_MAX_SOURCE_FILTER = 0x400
-+ IP_MIN_MEMBERSHIPS = 0x1f
- MAP_NORESERVE = 0x40
- MAP_RENAME = 0x20
- NET_RT_MAXID = 0x6
- RTF_PRCLONING = 0x10000
- RTM_OLDADD = 0x9
- RTM_OLDDEL = 0xa
-+ RT_CACHING_CONTEXT = 0x1
-+ RT_NORTREF = 0x2
- SIOCADDRT = 0x8030720a
- SIOCALIFADDR = 0x8118691b
- SIOCDELRT = 0x8030720b
-diff --git a/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go
-index 3e977117..070f44b6 100644
---- a/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go
-@@ -8,6 +8,7 @@
- package unix
-
- const (
-+ DLT_HHDLC = 0x79
- IFF_SMART = 0x20
- IFT_1822 = 0x2
- IFT_A12MPPSWITCH = 0x82
-@@ -210,13 +211,18 @@ const (
- IFT_XETHER = 0x1a
- IPPROTO_MAXID = 0x34
- IPV6_FAITH = 0x1d
-+ IPV6_MIN_MEMBERSHIPS = 0x1f
- IP_FAITH = 0x16
-+ IP_MAX_SOURCE_FILTER = 0x400
-+ IP_MIN_MEMBERSHIPS = 0x1f
- MAP_NORESERVE = 0x40
- MAP_RENAME = 0x20
- NET_RT_MAXID = 0x6
- RTF_PRCLONING = 0x10000
- RTM_OLDADD = 0x9
- RTM_OLDDEL = 0xa
-+ RT_CACHING_CONTEXT = 0x1
-+ RT_NORTREF = 0x2
- SIOCADDRT = 0x8040720a
- SIOCALIFADDR = 0x8118691b
- SIOCDELRT = 0x8040720b
-diff --git a/vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go b/vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go
-new file mode 100644
-index 00000000..946dcf3f
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go
-@@ -0,0 +1,17 @@
-+// Copyright 2020 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// Constants that were deprecated or moved to enums in the FreeBSD headers. Keep
-+// them here for backwards compatibility.
-+
-+package unix
-+
-+const (
-+ DLT_HHDLC = 0x79
-+ IPV6_MIN_MEMBERSHIPS = 0x1f
-+ IP_MAX_SOURCE_FILTER = 0x400
-+ IP_MIN_MEMBERSHIPS = 0x1f
-+ RT_CACHING_CONTEXT = 0x1
-+ RT_NORTREF = 0x2
-+)
-diff --git a/vendor/golang.org/x/sys/unix/flock.go b/vendor/golang.org/x/sys/unix/fcntl.go
-similarity index 54%
-rename from vendor/golang.org/x/sys/unix/flock.go
-rename to vendor/golang.org/x/sys/unix/fcntl.go
-index 2994ce75..4dc53486 100644
---- a/vendor/golang.org/x/sys/unix/flock.go
-+++ b/vendor/golang.org/x/sys/unix/fcntl.go
-@@ -2,16 +2,30 @@
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build darwin dragonfly freebsd linux netbsd openbsd
-+// +build dragonfly freebsd linux netbsd openbsd
-
- package unix
-
- import "unsafe"
-
- // fcntl64Syscall is usually SYS_FCNTL, but is overridden on 32-bit Linux
--// systems by flock_linux_32bit.go to be SYS_FCNTL64.
-+// systems by fcntl_linux_32bit.go to be SYS_FCNTL64.
- var fcntl64Syscall uintptr = SYS_FCNTL
-
-+func fcntl(fd int, cmd, arg int) (int, error) {
-+ valptr, _, errno := Syscall(fcntl64Syscall, uintptr(fd), uintptr(cmd), uintptr(arg))
-+ var err error
-+ if errno != 0 {
-+ err = errno
-+ }
-+ return int(valptr), err
-+}
-+
-+// FcntlInt performs a fcntl syscall on fd with the provided command and argument.
-+func FcntlInt(fd uintptr, cmd, arg int) (int, error) {
-+ return fcntl(int(fd), cmd, arg)
-+}
-+
- // FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command.
- func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error {
- _, _, errno := Syscall(fcntl64Syscall, fd, uintptr(cmd), uintptr(unsafe.Pointer(lk)))
-diff --git a/vendor/golang.org/x/sys/unix/fcntl_darwin.go b/vendor/golang.org/x/sys/unix/fcntl_darwin.go
-new file mode 100644
-index 00000000..5868a4a4
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/fcntl_darwin.go
-@@ -0,0 +1,18 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+package unix
-+
-+import "unsafe"
-+
-+// FcntlInt performs a fcntl syscall on fd with the provided command and argument.
-+func FcntlInt(fd uintptr, cmd, arg int) (int, error) {
-+ return fcntl(int(fd), cmd, arg)
-+}
-+
-+// FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command.
-+func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error {
-+ _, err := fcntl(int(fd), cmd, int(uintptr(unsafe.Pointer(lk))))
-+ return err
-+}
-diff --git a/vendor/golang.org/x/sys/unix/flock_linux_32bit.go b/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go
-similarity index 100%
-rename from vendor/golang.org/x/sys/unix/flock_linux_32bit.go
-rename to vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go
-diff --git a/vendor/golang.org/x/sys/unix/fdset.go b/vendor/golang.org/x/sys/unix/fdset.go
-new file mode 100644
-index 00000000..b27be0a0
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/fdset.go
-@@ -0,0 +1,29 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
-+
-+package unix
-+
-+// Set adds fd to the set fds.
-+func (fds *FdSet) Set(fd int) {
-+ fds.Bits[fd/NFDBITS] |= (1 << (uintptr(fd) % NFDBITS))
-+}
-+
-+// Clear removes fd from the set fds.
-+func (fds *FdSet) Clear(fd int) {
-+ fds.Bits[fd/NFDBITS] &^= (1 << (uintptr(fd) % NFDBITS))
-+}
-+
-+// IsSet returns whether fd is in the set fds.
-+func (fds *FdSet) IsSet(fd int) bool {
-+ return fds.Bits[fd/NFDBITS]&(1<<(uintptr(fd)%NFDBITS)) != 0
-+}
-+
-+// Zero clears the set fds.
-+func (fds *FdSet) Zero() {
-+ for i := range fds.Bits {
-+ fds.Bits[i] = 0
-+ }
-+}
-diff --git a/vendor/golang.org/x/sys/unix/file_unix.go b/vendor/golang.org/x/sys/unix/file_unix.go
-deleted file mode 100644
-index 47f6a83f..00000000
---- a/vendor/golang.org/x/sys/unix/file_unix.go
-+++ /dev/null
-@@ -1,27 +0,0 @@
--// Copyright 2017 The Go Authors. All rights reserved.
--// Use of this source code is governed by a BSD-style
--// license that can be found in the LICENSE file.
--
--package unix
--
--import (
-- "os"
-- "syscall"
--)
--
--// FIXME: unexported function from os
--// syscallMode returns the syscall-specific mode bits from Go's portable mode bits.
--func syscallMode(i os.FileMode) (o uint32) {
-- o |= uint32(i.Perm())
-- if i&os.ModeSetuid != 0 {
-- o |= syscall.S_ISUID
-- }
-- if i&os.ModeSetgid != 0 {
-- o |= syscall.S_ISGID
-- }
-- if i&os.ModeSticky != 0 {
-- o |= syscall.S_ISVTX
-- }
-- // No mapping for Go's ModeTemporary (plan9 only).
-- return
--}
-diff --git a/vendor/golang.org/x/sys/unix/gccgo.go b/vendor/golang.org/x/sys/unix/gccgo.go
-index 94c82321..cd6f5a61 100644
---- a/vendor/golang.org/x/sys/unix/gccgo.go
-+++ b/vendor/golang.org/x/sys/unix/gccgo.go
-@@ -1,19 +1,30 @@
--// Copyright 2015 The Go Authors. All rights reserved.
-+// Copyright 2015 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
- // +build gccgo
-+// +build !aix
-
- package unix
-
- import "syscall"
-
--// We can't use the gc-syntax .s files for gccgo. On the plus side
-+// We can't use the gc-syntax .s files for gccgo. On the plus side
- // much of the functionality can be written directly in Go.
-
-+//extern gccgoRealSyscallNoError
-+func realSyscallNoError(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r uintptr)
-+
- //extern gccgoRealSyscall
- func realSyscall(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r, errno uintptr)
-
-+func SyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr) {
-+ syscall.Entersyscall()
-+ r := realSyscallNoError(trap, a1, a2, a3, 0, 0, 0, 0, 0, 0)
-+ syscall.Exitsyscall()
-+ return r, 0
-+}
-+
- func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) {
- syscall.Entersyscall()
- r, errno := realSyscall(trap, a1, a2, a3, 0, 0, 0, 0, 0, 0)
-@@ -35,6 +46,11 @@ func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
- return r, 0, syscall.Errno(errno)
- }
-
-+func RawSyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr) {
-+ r := realSyscallNoError(trap, a1, a2, a3, 0, 0, 0, 0, 0, 0)
-+ return r, 0
-+}
-+
- func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) {
- r, errno := realSyscall(trap, a1, a2, a3, 0, 0, 0, 0, 0, 0)
- return r, 0, syscall.Errno(errno)
-diff --git a/vendor/golang.org/x/sys/unix/gccgo_c.c b/vendor/golang.org/x/sys/unix/gccgo_c.c
-index 07f6be03..c44730c5 100644
---- a/vendor/golang.org/x/sys/unix/gccgo_c.c
-+++ b/vendor/golang.org/x/sys/unix/gccgo_c.c
-@@ -1,8 +1,9 @@
--// Copyright 2015 The Go Authors. All rights reserved.
-+// Copyright 2015 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
- // +build gccgo
-+// +build !aix
-
- #include <errno.h>
- #include <stdint.h>
-@@ -31,11 +32,8 @@ gccgoRealSyscall(uintptr_t trap, uintptr_t a1, uintptr_t a2, uintptr_t a3, uintp
- return r;
- }
-
--// Define the use function in C so that it is not inlined.
--
--extern void use(void *) __asm__ (GOSYM_PREFIX GOPKGPATH ".use") __attribute__((noinline));
--
--void
--use(void *p __attribute__ ((unused)))
-+uintptr_t
-+gccgoRealSyscallNoError(uintptr_t trap, uintptr_t a1, uintptr_t a2, uintptr_t a3, uintptr_t a4, uintptr_t a5, uintptr_t a6, uintptr_t a7, uintptr_t a8, uintptr_t a9)
- {
-+ return syscall(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9);
- }
-diff --git a/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go b/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go
-index bffe1a77..251a977a 100644
---- a/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go
-@@ -1,4 +1,4 @@
--// Copyright 2015 The Go Authors. All rights reserved.
-+// Copyright 2015 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
-diff --git a/vendor/golang.org/x/sys/unix/gccgo_linux_sparc64.go b/vendor/golang.org/x/sys/unix/gccgo_linux_sparc64.go
-deleted file mode 100644
-index 56332692..00000000
---- a/vendor/golang.org/x/sys/unix/gccgo_linux_sparc64.go
-+++ /dev/null
-@@ -1,20 +0,0 @@
--// Copyright 2016 The Go Authors. All rights reserved.
--// Use of this source code is governed by a BSD-style
--// license that can be found in the LICENSE file.
--
--// +build gccgo,linux,sparc64
--
--package unix
--
--import "syscall"
--
--//extern sysconf
--func realSysconf(name int) int64
--
--func sysconf(name int) (n int64, err syscall.Errno) {
-- r := realSysconf(name)
-- if r < 0 {
-- return 0, syscall.GetErrno()
-- }
-- return r, 0
--}
-diff --git a/vendor/golang.org/x/sys/unix/ioctl.go b/vendor/golang.org/x/sys/unix/ioctl.go
-new file mode 100644
-index 00000000..3559e5dc
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/ioctl.go
-@@ -0,0 +1,65 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
-+
-+package unix
-+
-+import (
-+ "runtime"
-+ "unsafe"
-+)
-+
-+// ioctl itself should not be exposed directly, but additional get/set
-+// functions for specific types are permissible.
-+
-+// IoctlSetInt performs an ioctl operation which sets an integer value
-+// on fd, using the specified request number.
-+func IoctlSetInt(fd int, req uint, value int) error {
-+ return ioctl(fd, req, uintptr(value))
-+}
-+
-+// IoctlSetWinsize performs an ioctl on fd with a *Winsize argument.
-+//
-+// To change fd's window size, the req argument should be TIOCSWINSZ.
-+func IoctlSetWinsize(fd int, req uint, value *Winsize) error {
-+ // TODO: if we get the chance, remove the req parameter and
-+ // hardcode TIOCSWINSZ.
-+ err := ioctl(fd, req, uintptr(unsafe.Pointer(value)))
-+ runtime.KeepAlive(value)
-+ return err
-+}
-+
-+// IoctlSetTermios performs an ioctl on fd with a *Termios.
-+//
-+// The req value will usually be TCSETA or TIOCSETA.
-+func IoctlSetTermios(fd int, req uint, value *Termios) error {
-+ // TODO: if we get the chance, remove the req parameter.
-+ err := ioctl(fd, req, uintptr(unsafe.Pointer(value)))
-+ runtime.KeepAlive(value)
-+ return err
-+}
-+
-+// IoctlGetInt performs an ioctl operation which gets an integer value
-+// from fd, using the specified request number.
-+//
-+// A few ioctl requests use the return value as an output parameter;
-+// for those, IoctlRetInt should be used instead of this function.
-+func IoctlGetInt(fd int, req uint) (int, error) {
-+ var value int
-+ err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-+ return value, err
-+}
-+
-+func IoctlGetWinsize(fd int, req uint) (*Winsize, error) {
-+ var value Winsize
-+ err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-+ return &value, err
-+}
-+
-+func IoctlGetTermios(fd int, req uint) (*Termios, error) {
-+ var value Termios
-+ err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-+ return &value, err
-+}
-diff --git a/vendor/golang.org/x/sys/unix/mkasm_darwin.go b/vendor/golang.org/x/sys/unix/mkasm_darwin.go
-new file mode 100644
-index 00000000..6f7bb6ed
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/mkasm_darwin.go
-@@ -0,0 +1,78 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build ignore
-+
-+// mkasm_darwin.go generates assembly trampolines to call libSystem routines from Go.
-+//This program must be run after mksyscall.go.
-+package main
-+
-+import (
-+ "bytes"
-+ "fmt"
-+ "io/ioutil"
-+ "log"
-+ "os"
-+ "strings"
-+)
-+
-+func writeASMFile(in string, fileName string, buildTags string) {
-+ trampolines := map[string]bool{}
-+
-+ var out bytes.Buffer
-+
-+ fmt.Fprintf(&out, "// go run mkasm_darwin.go %s\n", strings.Join(os.Args[1:], " "))
-+ fmt.Fprintf(&out, "// Code generated by the command above; DO NOT EDIT.\n")
-+ fmt.Fprintf(&out, "\n")
-+ fmt.Fprintf(&out, "// +build %s\n", buildTags)
-+ fmt.Fprintf(&out, "\n")
-+ fmt.Fprintf(&out, "#include \"textflag.h\"\n")
-+ for _, line := range strings.Split(in, "\n") {
-+ if !strings.HasPrefix(line, "func ") || !strings.HasSuffix(line, "_trampoline()") {
-+ continue
-+ }
-+ fn := line[5 : len(line)-13]
-+ if !trampolines[fn] {
-+ trampolines[fn] = true
-+ fmt.Fprintf(&out, "TEXT ·%s_trampoline(SB),NOSPLIT,$0-0\n", fn)
-+ fmt.Fprintf(&out, "\tJMP\t%s(SB)\n", fn)
-+ }
-+ }
-+ err := ioutil.WriteFile(fileName, out.Bytes(), 0644)
-+ if err != nil {
-+ log.Fatalf("can't write %s: %s", fileName, err)
-+ }
-+}
-+
-+func main() {
-+ in1, err := ioutil.ReadFile("syscall_darwin.go")
-+ if err != nil {
-+ log.Fatalf("can't open syscall_darwin.go: %s", err)
-+ }
-+ arch := os.Args[1]
-+ in2, err := ioutil.ReadFile(fmt.Sprintf("syscall_darwin_%s.go", arch))
-+ if err != nil {
-+ log.Fatalf("can't open syscall_darwin_%s.go: %s", arch, err)
-+ }
-+ in3, err := ioutil.ReadFile(fmt.Sprintf("zsyscall_darwin_%s.go", arch))
-+ if err != nil {
-+ log.Fatalf("can't open zsyscall_darwin_%s.go: %s", arch, err)
-+ }
-+ in := string(in1) + string(in2) + string(in3)
-+
-+ writeASMFile(in, fmt.Sprintf("zsyscall_darwin_%s.s", arch), "go1.12")
-+
-+ in1, err = ioutil.ReadFile("syscall_darwin.1_13.go")
-+ if err != nil {
-+ log.Fatalf("can't open syscall_darwin.1_13.go: %s", err)
-+ }
-+ in2, err = ioutil.ReadFile(fmt.Sprintf("zsyscall_darwin_%s.1_13.go", arch))
-+ if err != nil {
-+ log.Fatalf("can't open zsyscall_darwin_%s.1_13.go: %s", arch, err)
-+ }
-+
-+ in = string(in1) + string(in2)
-+
-+ writeASMFile(in, fmt.Sprintf("zsyscall_darwin_%s.1_13.s", arch), "go1.13")
-+}
-diff --git a/vendor/golang.org/x/sys/unix/mkmerge.go b/vendor/golang.org/x/sys/unix/mkmerge.go
-new file mode 100644
-index 00000000..8bde4501
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/mkmerge.go
-@@ -0,0 +1,521 @@
-+// Copyright 2020 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build ignore
-+
-+// mkmerge.go parses generated source files and merges common
-+// consts, funcs, and types into a common source file, per GOOS.
-+//
-+// Usage:
-+// $ go run mkmerge.go -out MERGED FILE [FILE ...]
-+//
-+// Example:
-+// # Remove all common consts, funcs, and types from zerrors_linux_*.go
-+// # and write the common code into zerrors_linux.go
-+// $ go run mkmerge.go -out zerrors_linux.go zerrors_linux_*.go
-+//
-+// mkmerge.go performs the merge in the following steps:
-+// 1. Construct the set of common code that is idential in all
-+// architecture-specific files.
-+// 2. Write this common code to the merged file.
-+// 3. Remove the common code from all architecture-specific files.
-+package main
-+
-+import (
-+ "bufio"
-+ "bytes"
-+ "flag"
-+ "fmt"
-+ "go/ast"
-+ "go/format"
-+ "go/parser"
-+ "go/token"
-+ "io"
-+ "io/ioutil"
-+ "log"
-+ "os"
-+ "path"
-+ "path/filepath"
-+ "regexp"
-+ "strconv"
-+ "strings"
-+)
-+
-+const validGOOS = "aix|darwin|dragonfly|freebsd|linux|netbsd|openbsd|solaris"
-+
-+// getValidGOOS returns GOOS, true if filename ends with a valid "_GOOS.go"
-+func getValidGOOS(filename string) (string, bool) {
-+ matches := regexp.MustCompile(`_(` + validGOOS + `)\.go$`).FindStringSubmatch(filename)
-+ if len(matches) != 2 {
-+ return "", false
-+ }
-+ return matches[1], true
-+}
-+
-+// codeElem represents an ast.Decl in a comparable way.
-+type codeElem struct {
-+ tok token.Token // e.g. token.CONST, token.TYPE, or token.FUNC
-+ src string // the declaration formatted as source code
-+}
-+
-+// newCodeElem returns a codeElem based on tok and node, or an error is returned.
-+func newCodeElem(tok token.Token, node ast.Node) (codeElem, error) {
-+ var b strings.Builder
-+ err := format.Node(&b, token.NewFileSet(), node)
-+ if err != nil {
-+ return codeElem{}, err
-+ }
-+ return codeElem{tok, b.String()}, nil
-+}
-+
-+// codeSet is a set of codeElems
-+type codeSet struct {
-+ set map[codeElem]bool // true for all codeElems in the set
-+}
-+
-+// newCodeSet returns a new codeSet
-+func newCodeSet() *codeSet { return &codeSet{make(map[codeElem]bool)} }
-+
-+// add adds elem to c
-+func (c *codeSet) add(elem codeElem) { c.set[elem] = true }
-+
-+// has returns true if elem is in c
-+func (c *codeSet) has(elem codeElem) bool { return c.set[elem] }
-+
-+// isEmpty returns true if the set is empty
-+func (c *codeSet) isEmpty() bool { return len(c.set) == 0 }
-+
-+// intersection returns a new set which is the intersection of c and a
-+func (c *codeSet) intersection(a *codeSet) *codeSet {
-+ res := newCodeSet()
-+
-+ for elem := range c.set {
-+ if a.has(elem) {
-+ res.add(elem)
-+ }
-+ }
-+ return res
-+}
-+
-+// keepCommon is a filterFn for filtering the merged file with common declarations.
-+func (c *codeSet) keepCommon(elem codeElem) bool {
-+ switch elem.tok {
-+ case token.VAR:
-+ // Remove all vars from the merged file
-+ return false
-+ case token.CONST, token.TYPE, token.FUNC, token.COMMENT:
-+ // Remove arch-specific consts, types, functions, and file-level comments from the merged file
-+ return c.has(elem)
-+ case token.IMPORT:
-+ // Keep imports, they are handled by filterImports
-+ return true
-+ }
-+
-+ log.Fatalf("keepCommon: invalid elem %v", elem)
-+ return true
-+}
-+
-+// keepArchSpecific is a filterFn for filtering the GOARC-specific files.
-+func (c *codeSet) keepArchSpecific(elem codeElem) bool {
-+ switch elem.tok {
-+ case token.CONST, token.TYPE, token.FUNC:
-+ // Remove common consts, types, or functions from the arch-specific file
-+ return !c.has(elem)
-+ }
-+ return true
-+}
-+
-+// srcFile represents a source file
-+type srcFile struct {
-+ name string
-+ src []byte
-+}
-+
-+// filterFn is a helper for filter
-+type filterFn func(codeElem) bool
-+
-+// filter parses and filters Go source code from src, removing top
-+// level declarations using keep as predicate.
-+// For src parameter, please see docs for parser.ParseFile.
-+func filter(src interface{}, keep filterFn) ([]byte, error) {
-+ // Parse the src into an ast
-+ fset := token.NewFileSet()
-+ f, err := parser.ParseFile(fset, "", src, parser.ParseComments)
-+ if err != nil {
-+ return nil, err
-+ }
-+ cmap := ast.NewCommentMap(fset, f, f.Comments)
-+
-+ // Group const/type specs on adjacent lines
-+ var groups specGroups = make(map[string]int)
-+ var groupID int
-+
-+ decls := f.Decls
-+ f.Decls = f.Decls[:0]
-+ for _, decl := range decls {
-+ switch decl := decl.(type) {
-+ case *ast.GenDecl:
-+ // Filter imports, consts, types, vars
-+ specs := decl.Specs
-+ decl.Specs = decl.Specs[:0]
-+ for i, spec := range specs {
-+ elem, err := newCodeElem(decl.Tok, spec)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ // Create new group if there are empty lines between this and the previous spec
-+ if i > 0 && fset.Position(specs[i-1].End()).Line < fset.Position(spec.Pos()).Line-1 {
-+ groupID++
-+ }
-+
-+ // Check if we should keep this spec
-+ if keep(elem) {
-+ decl.Specs = append(decl.Specs, spec)
-+ groups.add(elem.src, groupID)
-+ }
-+ }
-+ // Check if we should keep this decl
-+ if len(decl.Specs) > 0 {
-+ f.Decls = append(f.Decls, decl)
-+ }
-+ case *ast.FuncDecl:
-+ // Filter funcs
-+ elem, err := newCodeElem(token.FUNC, decl)
-+ if err != nil {
-+ return nil, err
-+ }
-+ if keep(elem) {
-+ f.Decls = append(f.Decls, decl)
-+ }
-+ }
-+ }
-+
-+ // Filter file level comments
-+ if cmap[f] != nil {
-+ commentGroups := cmap[f]
-+ cmap[f] = cmap[f][:0]
-+ for _, cGrp := range commentGroups {
-+ if keep(codeElem{token.COMMENT, cGrp.Text()}) {
-+ cmap[f] = append(cmap[f], cGrp)
-+ }
-+ }
-+ }
-+ f.Comments = cmap.Filter(f).Comments()
-+
-+ // Generate code for the filtered ast
-+ var buf bytes.Buffer
-+ if err = format.Node(&buf, fset, f); err != nil {
-+ return nil, err
-+ }
-+
-+ groupedSrc, err := groups.filterEmptyLines(&buf)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ return filterImports(groupedSrc)
-+}
-+
-+// getCommonSet returns the set of consts, types, and funcs that are present in every file.
-+func getCommonSet(files []srcFile) (*codeSet, error) {
-+ if len(files) == 0 {
-+ return nil, fmt.Errorf("no files provided")
-+ }
-+ // Use the first architecture file as the baseline
-+ baseSet, err := getCodeSet(files[0].src)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ // Compare baseline set with other architecture files: discard any element,
-+ // that doesn't exist in other architecture files.
-+ for _, f := range files[1:] {
-+ set, err := getCodeSet(f.src)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ baseSet = baseSet.intersection(set)
-+ }
-+ return baseSet, nil
-+}
-+
-+// getCodeSet returns the set of all top-level consts, types, and funcs from src.
-+// src must be string, []byte, or io.Reader (see go/parser.ParseFile docs)
-+func getCodeSet(src interface{}) (*codeSet, error) {
-+ set := newCodeSet()
-+
-+ fset := token.NewFileSet()
-+ f, err := parser.ParseFile(fset, "", src, parser.ParseComments)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ for _, decl := range f.Decls {
-+ switch decl := decl.(type) {
-+ case *ast.GenDecl:
-+ // Add const, and type declarations
-+ if !(decl.Tok == token.CONST || decl.Tok == token.TYPE) {
-+ break
-+ }
-+
-+ for _, spec := range decl.Specs {
-+ elem, err := newCodeElem(decl.Tok, spec)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ set.add(elem)
-+ }
-+ case *ast.FuncDecl:
-+ // Add func declarations
-+ elem, err := newCodeElem(token.FUNC, decl)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ set.add(elem)
-+ }
-+ }
-+
-+ // Add file level comments
-+ cmap := ast.NewCommentMap(fset, f, f.Comments)
-+ for _, cGrp := range cmap[f] {
-+ set.add(codeElem{token.COMMENT, cGrp.Text()})
-+ }
-+
-+ return set, nil
-+}
-+
-+// importName returns the identifier (PackageName) for an imported package
-+func importName(iSpec *ast.ImportSpec) (string, error) {
-+ if iSpec.Name == nil {
-+ name, err := strconv.Unquote(iSpec.Path.Value)
-+ if err != nil {
-+ return "", err
-+ }
-+ return path.Base(name), nil
-+ }
-+ return iSpec.Name.Name, nil
-+}
-+
-+// specGroups tracks grouped const/type specs with a map of line: groupID pairs
-+type specGroups map[string]int
-+
-+// add spec source to group
-+func (s specGroups) add(src string, groupID int) error {
-+ srcBytes, err := format.Source(bytes.TrimSpace([]byte(src)))
-+ if err != nil {
-+ return err
-+ }
-+ s[string(srcBytes)] = groupID
-+ return nil
-+}
-+
-+// filterEmptyLines removes empty lines within groups of const/type specs.
-+// Returns the filtered source.
-+func (s specGroups) filterEmptyLines(src io.Reader) ([]byte, error) {
-+ scanner := bufio.NewScanner(src)
-+ var out bytes.Buffer
-+
-+ var emptyLines bytes.Buffer
-+ prevGroupID := -1 // Initialize to invalid group
-+ for scanner.Scan() {
-+ line := bytes.TrimSpace(scanner.Bytes())
-+
-+ if len(line) == 0 {
-+ fmt.Fprintf(&emptyLines, "%s\n", scanner.Bytes())
-+ continue
-+ }
-+
-+ // Discard emptyLines if previous non-empty line belonged to the same
-+ // group as this line
-+ if src, err := format.Source(line); err == nil {
-+ groupID, ok := s[string(src)]
-+ if ok && groupID == prevGroupID {
-+ emptyLines.Reset()
-+ }
-+ prevGroupID = groupID
-+ }
-+
-+ emptyLines.WriteTo(&out)
-+ fmt.Fprintf(&out, "%s\n", scanner.Bytes())
-+ }
-+ if err := scanner.Err(); err != nil {
-+ return nil, err
-+ }
-+ return out.Bytes(), nil
-+}
-+
-+// filterImports removes unused imports from fileSrc, and returns a formatted src.
-+func filterImports(fileSrc []byte) ([]byte, error) {
-+ fset := token.NewFileSet()
-+ file, err := parser.ParseFile(fset, "", fileSrc, parser.ParseComments)
-+ if err != nil {
-+ return nil, err
-+ }
-+ cmap := ast.NewCommentMap(fset, file, file.Comments)
-+
-+ // create set of references to imported identifiers
-+ keepImport := make(map[string]bool)
-+ for _, u := range file.Unresolved {
-+ keepImport[u.Name] = true
-+ }
-+
-+ // filter import declarations
-+ decls := file.Decls
-+ file.Decls = file.Decls[:0]
-+ for _, decl := range decls {
-+ importDecl, ok := decl.(*ast.GenDecl)
-+
-+ // Keep non-import declarations
-+ if !ok || importDecl.Tok != token.IMPORT {
-+ file.Decls = append(file.Decls, decl)
-+ continue
-+ }
-+
-+ // Filter the import specs
-+ specs := importDecl.Specs
-+ importDecl.Specs = importDecl.Specs[:0]
-+ for _, spec := range specs {
-+ iSpec := spec.(*ast.ImportSpec)
-+ name, err := importName(iSpec)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ if keepImport[name] {
-+ importDecl.Specs = append(importDecl.Specs, iSpec)
-+ }
-+ }
-+ if len(importDecl.Specs) > 0 {
-+ file.Decls = append(file.Decls, importDecl)
-+ }
-+ }
-+
-+ // filter file.Imports
-+ imports := file.Imports
-+ file.Imports = file.Imports[:0]
-+ for _, spec := range imports {
-+ name, err := importName(spec)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ if keepImport[name] {
-+ file.Imports = append(file.Imports, spec)
-+ }
-+ }
-+ file.Comments = cmap.Filter(file).Comments()
-+
-+ var buf bytes.Buffer
-+ err = format.Node(&buf, fset, file)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ return buf.Bytes(), nil
-+}
-+
-+// merge extracts duplicate code from archFiles and merges it to mergeFile.
-+// 1. Construct commonSet: the set of code that is idential in all archFiles.
-+// 2. Write the code in commonSet to mergedFile.
-+// 3. Remove the commonSet code from all archFiles.
-+func merge(mergedFile string, archFiles ...string) error {
-+ // extract and validate the GOOS part of the merged filename
-+ goos, ok := getValidGOOS(mergedFile)
-+ if !ok {
-+ return fmt.Errorf("invalid GOOS in merged file name %s", mergedFile)
-+ }
-+
-+ // Read architecture files
-+ var inSrc []srcFile
-+ for _, file := range archFiles {
-+ src, err := ioutil.ReadFile(file)
-+ if err != nil {
-+ return fmt.Errorf("cannot read archfile %s: %w", file, err)
-+ }
-+
-+ inSrc = append(inSrc, srcFile{file, src})
-+ }
-+
-+ // 1. Construct the set of top-level declarations common for all files
-+ commonSet, err := getCommonSet(inSrc)
-+ if err != nil {
-+ return err
-+ }
-+ if commonSet.isEmpty() {
-+ // No common code => do not modify any files
-+ return nil
-+ }
-+
-+ // 2. Write the merged file
-+ mergedSrc, err := filter(inSrc[0].src, commonSet.keepCommon)
-+ if err != nil {
-+ return err
-+ }
-+
-+ f, err := os.Create(mergedFile)
-+ if err != nil {
-+ return err
-+ }
-+
-+ buf := bufio.NewWriter(f)
-+ fmt.Fprintln(buf, "// Code generated by mkmerge.go; DO NOT EDIT.")
-+ fmt.Fprintln(buf)
-+ fmt.Fprintf(buf, "// +build %s\n", goos)
-+ fmt.Fprintln(buf)
-+ buf.Write(mergedSrc)
-+
-+ err = buf.Flush()
-+ if err != nil {
-+ return err
-+ }
-+ err = f.Close()
-+ if err != nil {
-+ return err
-+ }
-+
-+ // 3. Remove duplicate declarations from the architecture files
-+ for _, inFile := range inSrc {
-+ src, err := filter(inFile.src, commonSet.keepArchSpecific)
-+ if err != nil {
-+ return err
-+ }
-+ err = ioutil.WriteFile(inFile.name, src, 0644)
-+ if err != nil {
-+ return err
-+ }
-+ }
-+ return nil
-+}
-+
-+func main() {
-+ var mergedFile string
-+ flag.StringVar(&mergedFile, "out", "", "Write merged code to `FILE`")
-+ flag.Parse()
-+
-+ // Expand wildcards
-+ var filenames []string
-+ for _, arg := range flag.Args() {
-+ matches, err := filepath.Glob(arg)
-+ if err != nil {
-+ fmt.Fprintf(os.Stderr, "Invalid command line argument %q: %v\n", arg, err)
-+ os.Exit(1)
-+ }
-+ filenames = append(filenames, matches...)
-+ }
-+
-+ if len(filenames) < 2 {
-+ // No need to merge
-+ return
-+ }
-+
-+ err := merge(mergedFile, filenames...)
-+ if err != nil {
-+ fmt.Fprintf(os.Stderr, "Merge failed with error: %v\n", err)
-+ os.Exit(1)
-+ }
-+}
-diff --git a/vendor/golang.org/x/sys/unix/mkpost.go b/vendor/golang.org/x/sys/unix/mkpost.go
-index d3ff659b..5ee1a16b 100644
---- a/vendor/golang.org/x/sys/unix/mkpost.go
-+++ b/vendor/golang.org/x/sys/unix/mkpost.go
-@@ -28,10 +28,10 @@ func main() {
- if goarch == "" {
- goarch = os.Getenv("GOARCH")
- }
-- // Check that we are using the new build system if we should be.
-- if goos == "linux" && goarch != "sparc64" {
-+ // Check that we are using the Docker-based build system if we should be.
-+ if goos == "linux" {
- if os.Getenv("GOLANG_SYS_BUILD") != "docker" {
-- os.Stderr.WriteString("In the new build system, mkpost should not be called directly.\n")
-+ os.Stderr.WriteString("In the Docker-based build system, mkpost should not be called directly.\n")
- os.Stderr.WriteString("See README.md\n")
- os.Exit(1)
- }
-@@ -42,6 +42,21 @@ func main() {
- log.Fatal(err)
- }
-
-+ if goos == "aix" {
-+ // Replace type of Atim, Mtim and Ctim by Timespec in Stat_t
-+ // to avoid having both StTimespec and Timespec.
-+ sttimespec := regexp.MustCompile(`_Ctype_struct_st_timespec`)
-+ b = sttimespec.ReplaceAll(b, []byte("Timespec"))
-+ }
-+
-+ // Intentionally export __val fields in Fsid and Sigset_t
-+ valRegex := regexp.MustCompile(`type (Fsid|Sigset_t) struct {(\s+)X__(bits|val)(\s+\S+\s+)}`)
-+ b = valRegex.ReplaceAll(b, []byte("type $1 struct {${2}Val$4}"))
-+
-+ // Intentionally export __fds_bits field in FdSet
-+ fdSetRegex := regexp.MustCompile(`type (FdSet) struct {(\s+)X__fds_bits(\s+\S+\s+)}`)
-+ b = fdSetRegex.ReplaceAll(b, []byte("type $1 struct {${2}Bits$3}"))
-+
- // If we have empty Ptrace structs, we should delete them. Only s390x emits
- // nonempty Ptrace structs.
- ptraceRexexp := regexp.MustCompile(`type Ptrace((Psw|Fpregs|Per) struct {\s*})`)
-@@ -56,16 +71,31 @@ func main() {
- removeFieldsRegex := regexp.MustCompile(`X__glibc\S*`)
- b = removeFieldsRegex.ReplaceAll(b, []byte("_"))
-
-- // We refuse to export private fields on s390x
-- if goarch == "s390x" && goos == "linux" {
-- // Remove cgo padding fields
-- removeFieldsRegex := regexp.MustCompile(`Pad_cgo_\d+`)
-- b = removeFieldsRegex.ReplaceAll(b, []byte("_"))
-+ // Convert [65]int8 to [65]byte in Utsname members to simplify
-+ // conversion to string; see golang.org/issue/20753
-+ convertUtsnameRegex := regexp.MustCompile(`((Sys|Node|Domain)name|Release|Version|Machine)(\s+)\[(\d+)\]u?int8`)
-+ b = convertUtsnameRegex.ReplaceAll(b, []byte("$1$3[$4]byte"))
-
-- // Remove padding, hidden, or unused fields
-- removeFieldsRegex = regexp.MustCompile(`X_\S+`)
-- b = removeFieldsRegex.ReplaceAll(b, []byte("_"))
-- }
-+ // Convert [n]int8 to [n]byte in Statvfs_t members to simplify
-+ // conversion to string.
-+ convertStatvfsRegex := regexp.MustCompile(`((Fstype|Mnton|Mntfrom)name)(\s+)\[(\d+)\]int8`)
-+ b = convertStatvfsRegex.ReplaceAll(b, []byte("$1$3[$4]byte"))
-+
-+ // Convert [1024]int8 to [1024]byte in Ptmget members
-+ convertPtmget := regexp.MustCompile(`([SC]n)(\s+)\[(\d+)\]u?int8`)
-+ b = convertPtmget.ReplaceAll(b, []byte("$1[$3]byte"))
-+
-+ // Remove spare fields (e.g. in Statx_t)
-+ spareFieldsRegex := regexp.MustCompile(`X__spare\S*`)
-+ b = spareFieldsRegex.ReplaceAll(b, []byte("_"))
-+
-+ // Remove cgo padding fields
-+ removePaddingFieldsRegex := regexp.MustCompile(`Pad_cgo_\d+`)
-+ b = removePaddingFieldsRegex.ReplaceAll(b, []byte("_"))
-+
-+ // Remove padding, hidden, or unused fields
-+ removeFieldsRegex = regexp.MustCompile(`\b(X_\S+|Padding)`)
-+ b = removeFieldsRegex.ReplaceAll(b, []byte("_"))
-
- // Remove the first line of warning from cgo
- b = b[bytes.IndexByte(b, '\n')+1:]
-@@ -78,6 +108,15 @@ func main() {
- cgoCommandRegex := regexp.MustCompile(`(cgo -godefs .*)`)
- b = cgoCommandRegex.ReplaceAll(b, []byte(replacement))
-
-+ // Rename Stat_t time fields
-+ if goos == "freebsd" && goarch == "386" {
-+ // Hide Stat_t.[AMCB]tim_ext fields
-+ renameStatTimeExtFieldsRegex := regexp.MustCompile(`[AMCB]tim_ext`)
-+ b = renameStatTimeExtFieldsRegex.ReplaceAll(b, []byte("_"))
-+ }
-+ renameStatTimeFieldsRegex := regexp.MustCompile(`([AMCB])(?:irth)?time?(?:spec)?\s+(Timespec|StTimespec)`)
-+ b = renameStatTimeFieldsRegex.ReplaceAll(b, []byte("${1}tim ${2}"))
-+
- // gofmt
- b, err = format.Source(b)
- if err != nil {
-diff --git a/vendor/golang.org/x/sys/unix/mksyscall.go b/vendor/golang.org/x/sys/unix/mksyscall.go
-new file mode 100644
-index 00000000..9e540cc8
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/mksyscall.go
-@@ -0,0 +1,402 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build ignore
-+
-+/*
-+This program reads a file containing function prototypes
-+(like syscall_darwin.go) and generates system call bodies.
-+The prototypes are marked by lines beginning with "//sys"
-+and read like func declarations if //sys is replaced by func, but:
-+ * The parameter lists must give a name for each argument.
-+ This includes return parameters.
-+ * The parameter lists must give a type for each argument:
-+ the (x, y, z int) shorthand is not allowed.
-+ * If the return parameter is an error number, it must be named errno.
-+
-+A line beginning with //sysnb is like //sys, except that the
-+goroutine will not be suspended during the execution of the system
-+call. This must only be used for system calls which can never
-+block, as otherwise the system call could cause all goroutines to
-+hang.
-+*/
-+package main
-+
-+import (
-+ "bufio"
-+ "flag"
-+ "fmt"
-+ "os"
-+ "regexp"
-+ "strings"
-+)
-+
-+var (
-+ b32 = flag.Bool("b32", false, "32bit big-endian")
-+ l32 = flag.Bool("l32", false, "32bit little-endian")
-+ plan9 = flag.Bool("plan9", false, "plan9")
-+ openbsd = flag.Bool("openbsd", false, "openbsd")
-+ netbsd = flag.Bool("netbsd", false, "netbsd")
-+ dragonfly = flag.Bool("dragonfly", false, "dragonfly")
-+ arm = flag.Bool("arm", false, "arm") // 64-bit value should use (even, odd)-pair
-+ tags = flag.String("tags", "", "build tags")
-+ filename = flag.String("output", "", "output file name (standard output if omitted)")
-+)
-+
-+// cmdLine returns this programs's commandline arguments
-+func cmdLine() string {
-+ return "go run mksyscall.go " + strings.Join(os.Args[1:], " ")
-+}
-+
-+// buildTags returns build tags
-+func buildTags() string {
-+ return *tags
-+}
-+
-+// Param is function parameter
-+type Param struct {
-+ Name string
-+ Type string
-+}
-+
-+// usage prints the program usage
-+func usage() {
-+ fmt.Fprintf(os.Stderr, "usage: go run mksyscall.go [-b32 | -l32] [-tags x,y] [file ...]\n")
-+ os.Exit(1)
-+}
-+
-+// parseParamList parses parameter list and returns a slice of parameters
-+func parseParamList(list string) []string {
-+ list = strings.TrimSpace(list)
-+ if list == "" {
-+ return []string{}
-+ }
-+ return regexp.MustCompile(`\s*,\s*`).Split(list, -1)
-+}
-+
-+// parseParam splits a parameter into name and type
-+func parseParam(p string) Param {
-+ ps := regexp.MustCompile(`^(\S*) (\S*)$`).FindStringSubmatch(p)
-+ if ps == nil {
-+ fmt.Fprintf(os.Stderr, "malformed parameter: %s\n", p)
-+ os.Exit(1)
-+ }
-+ return Param{ps[1], ps[2]}
-+}
-+
-+func main() {
-+ // Get the OS and architecture (using GOARCH_TARGET if it exists)
-+ goos := os.Getenv("GOOS")
-+ if goos == "" {
-+ fmt.Fprintln(os.Stderr, "GOOS not defined in environment")
-+ os.Exit(1)
-+ }
-+ goarch := os.Getenv("GOARCH_TARGET")
-+ if goarch == "" {
-+ goarch = os.Getenv("GOARCH")
-+ }
-+
-+ // Check that we are using the Docker-based build system if we should
-+ if goos == "linux" {
-+ if os.Getenv("GOLANG_SYS_BUILD") != "docker" {
-+ fmt.Fprintf(os.Stderr, "In the Docker-based build system, mksyscall should not be called directly.\n")
-+ fmt.Fprintf(os.Stderr, "See README.md\n")
-+ os.Exit(1)
-+ }
-+ }
-+
-+ flag.Usage = usage
-+ flag.Parse()
-+ if len(flag.Args()) <= 0 {
-+ fmt.Fprintf(os.Stderr, "no files to parse provided\n")
-+ usage()
-+ }
-+
-+ endianness := ""
-+ if *b32 {
-+ endianness = "big-endian"
-+ } else if *l32 {
-+ endianness = "little-endian"
-+ }
-+
-+ libc := false
-+ if goos == "darwin" && (strings.Contains(buildTags(), ",go1.12") || strings.Contains(buildTags(), ",go1.13")) {
-+ libc = true
-+ }
-+ trampolines := map[string]bool{}
-+
-+ text := ""
-+ for _, path := range flag.Args() {
-+ file, err := os.Open(path)
-+ if err != nil {
-+ fmt.Fprintf(os.Stderr, err.Error())
-+ os.Exit(1)
-+ }
-+ s := bufio.NewScanner(file)
-+ for s.Scan() {
-+ t := s.Text()
-+ t = strings.TrimSpace(t)
-+ t = regexp.MustCompile(`\s+`).ReplaceAllString(t, ` `)
-+ nonblock := regexp.MustCompile(`^\/\/sysnb `).FindStringSubmatch(t)
-+ if regexp.MustCompile(`^\/\/sys `).FindStringSubmatch(t) == nil && nonblock == nil {
-+ continue
-+ }
-+
-+ // Line must be of the form
-+ // func Open(path string, mode int, perm int) (fd int, errno error)
-+ // Split into name, in params, out params.
-+ f := regexp.MustCompile(`^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*((?i)SYS_[A-Z0-9_]+))?$`).FindStringSubmatch(t)
-+ if f == nil {
-+ fmt.Fprintf(os.Stderr, "%s:%s\nmalformed //sys declaration\n", path, t)
-+ os.Exit(1)
-+ }
-+ funct, inps, outps, sysname := f[2], f[3], f[4], f[5]
-+
-+ // ClockGettime doesn't have a syscall number on Darwin, only generate libc wrappers.
-+ if goos == "darwin" && !libc && funct == "ClockGettime" {
-+ continue
-+ }
-+
-+ // Split argument lists on comma.
-+ in := parseParamList(inps)
-+ out := parseParamList(outps)
-+
-+ // Try in vain to keep people from editing this file.
-+ // The theory is that they jump into the middle of the file
-+ // without reading the header.
-+ text += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
-+
-+ // Go function header.
-+ outDecl := ""
-+ if len(out) > 0 {
-+ outDecl = fmt.Sprintf(" (%s)", strings.Join(out, ", "))
-+ }
-+ text += fmt.Sprintf("func %s(%s)%s {\n", funct, strings.Join(in, ", "), outDecl)
-+
-+ // Check if err return available
-+ errvar := ""
-+ for _, param := range out {
-+ p := parseParam(param)
-+ if p.Type == "error" {
-+ errvar = p.Name
-+ break
-+ }
-+ }
-+
-+ // Prepare arguments to Syscall.
-+ var args []string
-+ n := 0
-+ for _, param := range in {
-+ p := parseParam(param)
-+ if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
-+ args = append(args, "uintptr(unsafe.Pointer("+p.Name+"))")
-+ } else if p.Type == "string" && errvar != "" {
-+ text += fmt.Sprintf("\tvar _p%d *byte\n", n)
-+ text += fmt.Sprintf("\t_p%d, %s = BytePtrFromString(%s)\n", n, errvar, p.Name)
-+ text += fmt.Sprintf("\tif %s != nil {\n\t\treturn\n\t}\n", errvar)
-+ args = append(args, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
-+ n++
-+ } else if p.Type == "string" {
-+ fmt.Fprintf(os.Stderr, path+":"+funct+" uses string arguments, but has no error return\n")
-+ text += fmt.Sprintf("\tvar _p%d *byte\n", n)
-+ text += fmt.Sprintf("\t_p%d, _ = BytePtrFromString(%s)\n", n, p.Name)
-+ args = append(args, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
-+ n++
-+ } else if regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type) != nil {
-+ // Convert slice into pointer, length.
-+ // Have to be careful not to take address of &a[0] if len == 0:
-+ // pass dummy pointer in that case.
-+ // Used to pass nil, but some OSes or simulators reject write(fd, nil, 0).
-+ text += fmt.Sprintf("\tvar _p%d unsafe.Pointer\n", n)
-+ text += fmt.Sprintf("\tif len(%s) > 0 {\n\t\t_p%d = unsafe.Pointer(&%s[0])\n\t}", p.Name, n, p.Name)
-+ text += fmt.Sprintf(" else {\n\t\t_p%d = unsafe.Pointer(&_zero)\n\t}\n", n)
-+ args = append(args, fmt.Sprintf("uintptr(_p%d)", n), fmt.Sprintf("uintptr(len(%s))", p.Name))
-+ n++
-+ } else if p.Type == "int64" && (*openbsd || *netbsd) {
-+ args = append(args, "0")
-+ if endianness == "big-endian" {
-+ args = append(args, fmt.Sprintf("uintptr(%s>>32)", p.Name), fmt.Sprintf("uintptr(%s)", p.Name))
-+ } else if endianness == "little-endian" {
-+ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name), fmt.Sprintf("uintptr(%s>>32)", p.Name))
-+ } else {
-+ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name))
-+ }
-+ } else if p.Type == "int64" && *dragonfly {
-+ if regexp.MustCompile(`^(?i)extp(read|write)`).FindStringSubmatch(funct) == nil {
-+ args = append(args, "0")
-+ }
-+ if endianness == "big-endian" {
-+ args = append(args, fmt.Sprintf("uintptr(%s>>32)", p.Name), fmt.Sprintf("uintptr(%s)", p.Name))
-+ } else if endianness == "little-endian" {
-+ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name), fmt.Sprintf("uintptr(%s>>32)", p.Name))
-+ } else {
-+ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name))
-+ }
-+ } else if (p.Type == "int64" || p.Type == "uint64") && endianness != "" {
-+ if len(args)%2 == 1 && *arm {
-+ // arm abi specifies 64-bit argument uses
-+ // (even, odd) pair
-+ args = append(args, "0")
-+ }
-+ if endianness == "big-endian" {
-+ args = append(args, fmt.Sprintf("uintptr(%s>>32)", p.Name), fmt.Sprintf("uintptr(%s)", p.Name))
-+ } else {
-+ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name), fmt.Sprintf("uintptr(%s>>32)", p.Name))
-+ }
-+ } else {
-+ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name))
-+ }
-+ }
-+
-+ // Determine which form to use; pad args with zeros.
-+ asm := "Syscall"
-+ if nonblock != nil {
-+ if errvar == "" && goos == "linux" {
-+ asm = "RawSyscallNoError"
-+ } else {
-+ asm = "RawSyscall"
-+ }
-+ } else {
-+ if errvar == "" && goos == "linux" {
-+ asm = "SyscallNoError"
-+ }
-+ }
-+ if len(args) <= 3 {
-+ for len(args) < 3 {
-+ args = append(args, "0")
-+ }
-+ } else if len(args) <= 6 {
-+ asm += "6"
-+ for len(args) < 6 {
-+ args = append(args, "0")
-+ }
-+ } else if len(args) <= 9 {
-+ asm += "9"
-+ for len(args) < 9 {
-+ args = append(args, "0")
-+ }
-+ } else {
-+ fmt.Fprintf(os.Stderr, "%s:%s too many arguments to system call\n", path, funct)
-+ }
-+
-+ // System call number.
-+ if sysname == "" {
-+ sysname = "SYS_" + funct
-+ sysname = regexp.MustCompile(`([a-z])([A-Z])`).ReplaceAllString(sysname, `${1}_$2`)
-+ sysname = strings.ToUpper(sysname)
-+ }
-+
-+ var libcFn string
-+ if libc {
-+ asm = "syscall_" + strings.ToLower(asm[:1]) + asm[1:] // internal syscall call
-+ sysname = strings.TrimPrefix(sysname, "SYS_") // remove SYS_
-+ sysname = strings.ToLower(sysname) // lowercase
-+ libcFn = sysname
-+ sysname = "funcPC(libc_" + sysname + "_trampoline)"
-+ }
-+
-+ // Actual call.
-+ arglist := strings.Join(args, ", ")
-+ call := fmt.Sprintf("%s(%s, %s)", asm, sysname, arglist)
-+
-+ // Assign return values.
-+ body := ""
-+ ret := []string{"_", "_", "_"}
-+ doErrno := false
-+ for i := 0; i < len(out); i++ {
-+ p := parseParam(out[i])
-+ reg := ""
-+ if p.Name == "err" && !*plan9 {
-+ reg = "e1"
-+ ret[2] = reg
-+ doErrno = true
-+ } else if p.Name == "err" && *plan9 {
-+ ret[0] = "r0"
-+ ret[2] = "e1"
-+ break
-+ } else {
-+ reg = fmt.Sprintf("r%d", i)
-+ ret[i] = reg
-+ }
-+ if p.Type == "bool" {
-+ reg = fmt.Sprintf("%s != 0", reg)
-+ }
-+ if p.Type == "int64" && endianness != "" {
-+ // 64-bit number in r1:r0 or r0:r1.
-+ if i+2 > len(out) {
-+ fmt.Fprintf(os.Stderr, "%s:%s not enough registers for int64 return\n", path, funct)
-+ }
-+ if endianness == "big-endian" {
-+ reg = fmt.Sprintf("int64(r%d)<<32 | int64(r%d)", i, i+1)
-+ } else {
-+ reg = fmt.Sprintf("int64(r%d)<<32 | int64(r%d)", i+1, i)
-+ }
-+ ret[i] = fmt.Sprintf("r%d", i)
-+ ret[i+1] = fmt.Sprintf("r%d", i+1)
-+ }
-+ if reg != "e1" || *plan9 {
-+ body += fmt.Sprintf("\t%s = %s(%s)\n", p.Name, p.Type, reg)
-+ }
-+ }
-+ if ret[0] == "_" && ret[1] == "_" && ret[2] == "_" {
-+ text += fmt.Sprintf("\t%s\n", call)
-+ } else {
-+ if errvar == "" && goos == "linux" {
-+ // raw syscall without error on Linux, see golang.org/issue/22924
-+ text += fmt.Sprintf("\t%s, %s := %s\n", ret[0], ret[1], call)
-+ } else {
-+ text += fmt.Sprintf("\t%s, %s, %s := %s\n", ret[0], ret[1], ret[2], call)
-+ }
-+ }
-+ text += body
-+
-+ if *plan9 && ret[2] == "e1" {
-+ text += "\tif int32(r0) == -1 {\n"
-+ text += "\t\terr = e1\n"
-+ text += "\t}\n"
-+ } else if doErrno {
-+ text += "\tif e1 != 0 {\n"
-+ text += "\t\terr = errnoErr(e1)\n"
-+ text += "\t}\n"
-+ }
-+ text += "\treturn\n"
-+ text += "}\n\n"
-+
-+ if libc && !trampolines[libcFn] {
-+ // some system calls share a trampoline, like read and readlen.
-+ trampolines[libcFn] = true
-+ // Declare assembly trampoline.
-+ text += fmt.Sprintf("func libc_%s_trampoline()\n", libcFn)
-+ // Assembly trampoline calls the libc_* function, which this magic
-+ // redirects to use the function from libSystem.
-+ text += fmt.Sprintf("//go:linkname libc_%s libc_%s\n", libcFn, libcFn)
-+ text += fmt.Sprintf("//go:cgo_import_dynamic libc_%s %s \"/usr/lib/libSystem.B.dylib\"\n", libcFn, libcFn)
-+ text += "\n"
-+ }
-+ }
-+ if err := s.Err(); err != nil {
-+ fmt.Fprintf(os.Stderr, err.Error())
-+ os.Exit(1)
-+ }
-+ file.Close()
-+ }
-+ fmt.Printf(srcTemplate, cmdLine(), buildTags(), text)
-+}
-+
-+const srcTemplate = `// %s
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build %s
-+
-+package unix
-+
-+import (
-+ "syscall"
-+ "unsafe"
-+)
-+
-+var _ syscall.Errno
-+
-+%s
-+`
-diff --git a/vendor/golang.org/x/sys/unix/mksyscall_aix_ppc.go b/vendor/golang.org/x/sys/unix/mksyscall_aix_ppc.go
-new file mode 100644
-index 00000000..3be3cdfc
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/mksyscall_aix_ppc.go
-@@ -0,0 +1,415 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build ignore
-+
-+/*
-+This program reads a file containing function prototypes
-+(like syscall_aix.go) and generates system call bodies.
-+The prototypes are marked by lines beginning with "//sys"
-+and read like func declarations if //sys is replaced by func, but:
-+ * The parameter lists must give a name for each argument.
-+ This includes return parameters.
-+ * The parameter lists must give a type for each argument:
-+ the (x, y, z int) shorthand is not allowed.
-+ * If the return parameter is an error number, it must be named err.
-+ * If go func name needs to be different than its libc name,
-+ * or the function is not in libc, name could be specified
-+ * at the end, after "=" sign, like
-+ //sys getsockopt(s int, level int, name int, val uintptr, vallen *_Socklen) (err error) = libsocket.getsockopt
-+*/
-+package main
-+
-+import (
-+ "bufio"
-+ "flag"
-+ "fmt"
-+ "os"
-+ "regexp"
-+ "strings"
-+)
-+
-+var (
-+ b32 = flag.Bool("b32", false, "32bit big-endian")
-+ l32 = flag.Bool("l32", false, "32bit little-endian")
-+ aix = flag.Bool("aix", false, "aix")
-+ tags = flag.String("tags", "", "build tags")
-+)
-+
-+// cmdLine returns this programs's commandline arguments
-+func cmdLine() string {
-+ return "go run mksyscall_aix_ppc.go " + strings.Join(os.Args[1:], " ")
-+}
-+
-+// buildTags returns build tags
-+func buildTags() string {
-+ return *tags
-+}
-+
-+// Param is function parameter
-+type Param struct {
-+ Name string
-+ Type string
-+}
-+
-+// usage prints the program usage
-+func usage() {
-+ fmt.Fprintf(os.Stderr, "usage: go run mksyscall_aix_ppc.go [-b32 | -l32] [-tags x,y] [file ...]\n")
-+ os.Exit(1)
-+}
-+
-+// parseParamList parses parameter list and returns a slice of parameters
-+func parseParamList(list string) []string {
-+ list = strings.TrimSpace(list)
-+ if list == "" {
-+ return []string{}
-+ }
-+ return regexp.MustCompile(`\s*,\s*`).Split(list, -1)
-+}
-+
-+// parseParam splits a parameter into name and type
-+func parseParam(p string) Param {
-+ ps := regexp.MustCompile(`^(\S*) (\S*)$`).FindStringSubmatch(p)
-+ if ps == nil {
-+ fmt.Fprintf(os.Stderr, "malformed parameter: %s\n", p)
-+ os.Exit(1)
-+ }
-+ return Param{ps[1], ps[2]}
-+}
-+
-+func main() {
-+ flag.Usage = usage
-+ flag.Parse()
-+ if len(flag.Args()) <= 0 {
-+ fmt.Fprintf(os.Stderr, "no files to parse provided\n")
-+ usage()
-+ }
-+
-+ endianness := ""
-+ if *b32 {
-+ endianness = "big-endian"
-+ } else if *l32 {
-+ endianness = "little-endian"
-+ }
-+
-+ pack := ""
-+ text := ""
-+ cExtern := "/*\n#include <stdint.h>\n#include <stddef.h>\n"
-+ for _, path := range flag.Args() {
-+ file, err := os.Open(path)
-+ if err != nil {
-+ fmt.Fprintf(os.Stderr, err.Error())
-+ os.Exit(1)
-+ }
-+ s := bufio.NewScanner(file)
-+ for s.Scan() {
-+ t := s.Text()
-+ t = strings.TrimSpace(t)
-+ t = regexp.MustCompile(`\s+`).ReplaceAllString(t, ` `)
-+ if p := regexp.MustCompile(`^package (\S+)$`).FindStringSubmatch(t); p != nil && pack == "" {
-+ pack = p[1]
-+ }
-+ nonblock := regexp.MustCompile(`^\/\/sysnb `).FindStringSubmatch(t)
-+ if regexp.MustCompile(`^\/\/sys `).FindStringSubmatch(t) == nil && nonblock == nil {
-+ continue
-+ }
-+
-+ // Line must be of the form
-+ // func Open(path string, mode int, perm int) (fd int, err error)
-+ // Split into name, in params, out params.
-+ f := regexp.MustCompile(`^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*(?:(\w*)\.)?(\w*))?$`).FindStringSubmatch(t)
-+ if f == nil {
-+ fmt.Fprintf(os.Stderr, "%s:%s\nmalformed //sys declaration\n", path, t)
-+ os.Exit(1)
-+ }
-+ funct, inps, outps, modname, sysname := f[2], f[3], f[4], f[5], f[6]
-+
-+ // Split argument lists on comma.
-+ in := parseParamList(inps)
-+ out := parseParamList(outps)
-+
-+ inps = strings.Join(in, ", ")
-+ outps = strings.Join(out, ", ")
-+
-+ // Try in vain to keep people from editing this file.
-+ // The theory is that they jump into the middle of the file
-+ // without reading the header.
-+ text += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
-+
-+ // Check if value return, err return available
-+ errvar := ""
-+ retvar := ""
-+ rettype := ""
-+ for _, param := range out {
-+ p := parseParam(param)
-+ if p.Type == "error" {
-+ errvar = p.Name
-+ } else {
-+ retvar = p.Name
-+ rettype = p.Type
-+ }
-+ }
-+
-+ // System call name.
-+ if sysname == "" {
-+ sysname = funct
-+ }
-+ sysname = regexp.MustCompile(`([a-z])([A-Z])`).ReplaceAllString(sysname, `${1}_$2`)
-+ sysname = strings.ToLower(sysname) // All libc functions are lowercase.
-+
-+ cRettype := ""
-+ if rettype == "unsafe.Pointer" {
-+ cRettype = "uintptr_t"
-+ } else if rettype == "uintptr" {
-+ cRettype = "uintptr_t"
-+ } else if regexp.MustCompile(`^_`).FindStringSubmatch(rettype) != nil {
-+ cRettype = "uintptr_t"
-+ } else if rettype == "int" {
-+ cRettype = "int"
-+ } else if rettype == "int32" {
-+ cRettype = "int"
-+ } else if rettype == "int64" {
-+ cRettype = "long long"
-+ } else if rettype == "uint32" {
-+ cRettype = "unsigned int"
-+ } else if rettype == "uint64" {
-+ cRettype = "unsigned long long"
-+ } else {
-+ cRettype = "int"
-+ }
-+ if sysname == "exit" {
-+ cRettype = "void"
-+ }
-+
-+ // Change p.Types to c
-+ var cIn []string
-+ for _, param := range in {
-+ p := parseParam(param)
-+ if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
-+ cIn = append(cIn, "uintptr_t")
-+ } else if p.Type == "string" {
-+ cIn = append(cIn, "uintptr_t")
-+ } else if regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type) != nil {
-+ cIn = append(cIn, "uintptr_t", "size_t")
-+ } else if p.Type == "unsafe.Pointer" {
-+ cIn = append(cIn, "uintptr_t")
-+ } else if p.Type == "uintptr" {
-+ cIn = append(cIn, "uintptr_t")
-+ } else if regexp.MustCompile(`^_`).FindStringSubmatch(p.Type) != nil {
-+ cIn = append(cIn, "uintptr_t")
-+ } else if p.Type == "int" {
-+ cIn = append(cIn, "int")
-+ } else if p.Type == "int32" {
-+ cIn = append(cIn, "int")
-+ } else if p.Type == "int64" {
-+ cIn = append(cIn, "long long")
-+ } else if p.Type == "uint32" {
-+ cIn = append(cIn, "unsigned int")
-+ } else if p.Type == "uint64" {
-+ cIn = append(cIn, "unsigned long long")
-+ } else {
-+ cIn = append(cIn, "int")
-+ }
-+ }
-+
-+ if funct != "fcntl" && funct != "FcntlInt" && funct != "readlen" && funct != "writelen" {
-+ if sysname == "select" {
-+ // select is a keyword of Go. Its name is
-+ // changed to c_select.
-+ cExtern += "#define c_select select\n"
-+ }
-+ // Imports of system calls from libc
-+ cExtern += fmt.Sprintf("%s %s", cRettype, sysname)
-+ cIn := strings.Join(cIn, ", ")
-+ cExtern += fmt.Sprintf("(%s);\n", cIn)
-+ }
-+
-+ // So file name.
-+ if *aix {
-+ if modname == "" {
-+ modname = "libc.a/shr_64.o"
-+ } else {
-+ fmt.Fprintf(os.Stderr, "%s: only syscall using libc are available\n", funct)
-+ os.Exit(1)
-+ }
-+ }
-+
-+ strconvfunc := "C.CString"
-+
-+ // Go function header.
-+ if outps != "" {
-+ outps = fmt.Sprintf(" (%s)", outps)
-+ }
-+ if text != "" {
-+ text += "\n"
-+ }
-+
-+ text += fmt.Sprintf("func %s(%s)%s {\n", funct, strings.Join(in, ", "), outps)
-+
-+ // Prepare arguments to Syscall.
-+ var args []string
-+ n := 0
-+ argN := 0
-+ for _, param := range in {
-+ p := parseParam(param)
-+ if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
-+ args = append(args, "C.uintptr_t(uintptr(unsafe.Pointer("+p.Name+")))")
-+ } else if p.Type == "string" && errvar != "" {
-+ text += fmt.Sprintf("\t_p%d := uintptr(unsafe.Pointer(%s(%s)))\n", n, strconvfunc, p.Name)
-+ args = append(args, fmt.Sprintf("C.uintptr_t(_p%d)", n))
-+ n++
-+ } else if p.Type == "string" {
-+ fmt.Fprintf(os.Stderr, path+":"+funct+" uses string arguments, but has no error return\n")
-+ text += fmt.Sprintf("\t_p%d := uintptr(unsafe.Pointer(%s(%s)))\n", n, strconvfunc, p.Name)
-+ args = append(args, fmt.Sprintf("C.uintptr_t(_p%d)", n))
-+ n++
-+ } else if m := regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type); m != nil {
-+ // Convert slice into pointer, length.
-+ // Have to be careful not to take address of &a[0] if len == 0:
-+ // pass nil in that case.
-+ text += fmt.Sprintf("\tvar _p%d *%s\n", n, m[1])
-+ text += fmt.Sprintf("\tif len(%s) > 0 {\n\t\t_p%d = &%s[0]\n\t}\n", p.Name, n, p.Name)
-+ args = append(args, fmt.Sprintf("C.uintptr_t(uintptr(unsafe.Pointer(_p%d)))", n))
-+ n++
-+ text += fmt.Sprintf("\tvar _p%d int\n", n)
-+ text += fmt.Sprintf("\t_p%d = len(%s)\n", n, p.Name)
-+ args = append(args, fmt.Sprintf("C.size_t(_p%d)", n))
-+ n++
-+ } else if p.Type == "int64" && endianness != "" {
-+ if endianness == "big-endian" {
-+ args = append(args, fmt.Sprintf("uintptr(%s>>32)", p.Name), fmt.Sprintf("uintptr(%s)", p.Name))
-+ } else {
-+ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name), fmt.Sprintf("uintptr(%s>>32)", p.Name))
-+ }
-+ n++
-+ } else if p.Type == "bool" {
-+ text += fmt.Sprintf("\tvar _p%d uint32\n", n)
-+ text += fmt.Sprintf("\tif %s {\n\t\t_p%d = 1\n\t} else {\n\t\t_p%d = 0\n\t}\n", p.Name, n, n)
-+ args = append(args, fmt.Sprintf("_p%d", n))
-+ } else if regexp.MustCompile(`^_`).FindStringSubmatch(p.Type) != nil {
-+ args = append(args, fmt.Sprintf("C.uintptr_t(uintptr(%s))", p.Name))
-+ } else if p.Type == "unsafe.Pointer" {
-+ args = append(args, fmt.Sprintf("C.uintptr_t(uintptr(%s))", p.Name))
-+ } else if p.Type == "int" {
-+ if (argN == 2) && ((funct == "readlen") || (funct == "writelen")) {
-+ args = append(args, fmt.Sprintf("C.size_t(%s)", p.Name))
-+ } else if argN == 0 && funct == "fcntl" {
-+ args = append(args, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
-+ } else if (argN == 2) && ((funct == "fcntl") || (funct == "FcntlInt")) {
-+ args = append(args, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
-+ } else {
-+ args = append(args, fmt.Sprintf("C.int(%s)", p.Name))
-+ }
-+ } else if p.Type == "int32" {
-+ args = append(args, fmt.Sprintf("C.int(%s)", p.Name))
-+ } else if p.Type == "int64" {
-+ args = append(args, fmt.Sprintf("C.longlong(%s)", p.Name))
-+ } else if p.Type == "uint32" {
-+ args = append(args, fmt.Sprintf("C.uint(%s)", p.Name))
-+ } else if p.Type == "uint64" {
-+ args = append(args, fmt.Sprintf("C.ulonglong(%s)", p.Name))
-+ } else if p.Type == "uintptr" {
-+ args = append(args, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
-+ } else {
-+ args = append(args, fmt.Sprintf("C.int(%s)", p.Name))
-+ }
-+ argN++
-+ }
-+
-+ // Actual call.
-+ arglist := strings.Join(args, ", ")
-+ call := ""
-+ if sysname == "exit" {
-+ if errvar != "" {
-+ call += "er :="
-+ } else {
-+ call += ""
-+ }
-+ } else if errvar != "" {
-+ call += "r0,er :="
-+ } else if retvar != "" {
-+ call += "r0,_ :="
-+ } else {
-+ call += ""
-+ }
-+ if sysname == "select" {
-+ // select is a keyword of Go. Its name is
-+ // changed to c_select.
-+ call += fmt.Sprintf("C.c_%s(%s)", sysname, arglist)
-+ } else {
-+ call += fmt.Sprintf("C.%s(%s)", sysname, arglist)
-+ }
-+
-+ // Assign return values.
-+ body := ""
-+ for i := 0; i < len(out); i++ {
-+ p := parseParam(out[i])
-+ reg := ""
-+ if p.Name == "err" {
-+ reg = "e1"
-+ } else {
-+ reg = "r0"
-+ }
-+ if reg != "e1" {
-+ body += fmt.Sprintf("\t%s = %s(%s)\n", p.Name, p.Type, reg)
-+ }
-+ }
-+
-+ // verify return
-+ if sysname != "exit" && errvar != "" {
-+ if regexp.MustCompile(`^uintptr`).FindStringSubmatch(cRettype) != nil {
-+ body += "\tif (uintptr(r0) ==^uintptr(0) && er != nil) {\n"
-+ body += fmt.Sprintf("\t\t%s = er\n", errvar)
-+ body += "\t}\n"
-+ } else {
-+ body += "\tif (r0 ==-1 && er != nil) {\n"
-+ body += fmt.Sprintf("\t\t%s = er\n", errvar)
-+ body += "\t}\n"
-+ }
-+ } else if errvar != "" {
-+ body += "\tif (er != nil) {\n"
-+ body += fmt.Sprintf("\t\t%s = er\n", errvar)
-+ body += "\t}\n"
-+ }
-+
-+ text += fmt.Sprintf("\t%s\n", call)
-+ text += body
-+
-+ text += "\treturn\n"
-+ text += "}\n"
-+ }
-+ if err := s.Err(); err != nil {
-+ fmt.Fprintf(os.Stderr, err.Error())
-+ os.Exit(1)
-+ }
-+ file.Close()
-+ }
-+ imp := ""
-+ if pack != "unix" {
-+ imp = "import \"golang.org/x/sys/unix\"\n"
-+
-+ }
-+ fmt.Printf(srcTemplate, cmdLine(), buildTags(), pack, cExtern, imp, text)
-+}
-+
-+const srcTemplate = `// %s
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build %s
-+
-+package %s
-+
-+
-+%s
-+*/
-+import "C"
-+import (
-+ "unsafe"
-+)
-+
-+
-+%s
-+
-+%s
-+`
-diff --git a/vendor/golang.org/x/sys/unix/mksyscall_aix_ppc64.go b/vendor/golang.org/x/sys/unix/mksyscall_aix_ppc64.go
-new file mode 100644
-index 00000000..c9600995
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/mksyscall_aix_ppc64.go
-@@ -0,0 +1,614 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build ignore
-+
-+/*
-+This program reads a file containing function prototypes
-+(like syscall_aix.go) and generates system call bodies.
-+The prototypes are marked by lines beginning with "//sys"
-+and read like func declarations if //sys is replaced by func, but:
-+ * The parameter lists must give a name for each argument.
-+ This includes return parameters.
-+ * The parameter lists must give a type for each argument:
-+ the (x, y, z int) shorthand is not allowed.
-+ * If the return parameter is an error number, it must be named err.
-+ * If go func name needs to be different than its libc name,
-+ * or the function is not in libc, name could be specified
-+ * at the end, after "=" sign, like
-+ //sys getsockopt(s int, level int, name int, val uintptr, vallen *_Socklen) (err error) = libsocket.getsockopt
-+
-+
-+This program will generate three files and handle both gc and gccgo implementation:
-+ - zsyscall_aix_ppc64.go: the common part of each implementation (error handler, pointer creation)
-+ - zsyscall_aix_ppc64_gc.go: gc part with //go_cgo_import_dynamic and a call to syscall6
-+ - zsyscall_aix_ppc64_gccgo.go: gccgo part with C function and conversion to C type.
-+
-+ The generated code looks like this
-+
-+zsyscall_aix_ppc64.go
-+func asyscall(...) (n int, err error) {
-+ // Pointer Creation
-+ r1, e1 := callasyscall(...)
-+ // Type Conversion
-+ // Error Handler
-+ return
-+}
-+
-+zsyscall_aix_ppc64_gc.go
-+//go:cgo_import_dynamic libc_asyscall asyscall "libc.a/shr_64.o"
-+//go:linkname libc_asyscall libc_asyscall
-+var asyscall syscallFunc
-+
-+func callasyscall(...) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_asyscall)), "nb_args", ... )
-+ return
-+}
-+
-+zsyscall_aix_ppc64_ggcgo.go
-+
-+// int asyscall(...)
-+
-+import "C"
-+
-+func callasyscall(...) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.asyscall(...))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+*/
-+
-+package main
-+
-+import (
-+ "bufio"
-+ "flag"
-+ "fmt"
-+ "io/ioutil"
-+ "os"
-+ "regexp"
-+ "strings"
-+)
-+
-+var (
-+ b32 = flag.Bool("b32", false, "32bit big-endian")
-+ l32 = flag.Bool("l32", false, "32bit little-endian")
-+ aix = flag.Bool("aix", false, "aix")
-+ tags = flag.String("tags", "", "build tags")
-+)
-+
-+// cmdLine returns this programs's commandline arguments
-+func cmdLine() string {
-+ return "go run mksyscall_aix_ppc64.go " + strings.Join(os.Args[1:], " ")
-+}
-+
-+// buildTags returns build tags
-+func buildTags() string {
-+ return *tags
-+}
-+
-+// Param is function parameter
-+type Param struct {
-+ Name string
-+ Type string
-+}
-+
-+// usage prints the program usage
-+func usage() {
-+ fmt.Fprintf(os.Stderr, "usage: go run mksyscall_aix_ppc64.go [-b32 | -l32] [-tags x,y] [file ...]\n")
-+ os.Exit(1)
-+}
-+
-+// parseParamList parses parameter list and returns a slice of parameters
-+func parseParamList(list string) []string {
-+ list = strings.TrimSpace(list)
-+ if list == "" {
-+ return []string{}
-+ }
-+ return regexp.MustCompile(`\s*,\s*`).Split(list, -1)
-+}
-+
-+// parseParam splits a parameter into name and type
-+func parseParam(p string) Param {
-+ ps := regexp.MustCompile(`^(\S*) (\S*)$`).FindStringSubmatch(p)
-+ if ps == nil {
-+ fmt.Fprintf(os.Stderr, "malformed parameter: %s\n", p)
-+ os.Exit(1)
-+ }
-+ return Param{ps[1], ps[2]}
-+}
-+
-+func main() {
-+ flag.Usage = usage
-+ flag.Parse()
-+ if len(flag.Args()) <= 0 {
-+ fmt.Fprintf(os.Stderr, "no files to parse provided\n")
-+ usage()
-+ }
-+
-+ endianness := ""
-+ if *b32 {
-+ endianness = "big-endian"
-+ } else if *l32 {
-+ endianness = "little-endian"
-+ }
-+
-+ pack := ""
-+ // GCCGO
-+ textgccgo := ""
-+ cExtern := "/*\n#include <stdint.h>\n"
-+ // GC
-+ textgc := ""
-+ dynimports := ""
-+ linknames := ""
-+ var vars []string
-+ // COMMON
-+ textcommon := ""
-+ for _, path := range flag.Args() {
-+ file, err := os.Open(path)
-+ if err != nil {
-+ fmt.Fprintf(os.Stderr, err.Error())
-+ os.Exit(1)
-+ }
-+ s := bufio.NewScanner(file)
-+ for s.Scan() {
-+ t := s.Text()
-+ t = strings.TrimSpace(t)
-+ t = regexp.MustCompile(`\s+`).ReplaceAllString(t, ` `)
-+ if p := regexp.MustCompile(`^package (\S+)$`).FindStringSubmatch(t); p != nil && pack == "" {
-+ pack = p[1]
-+ }
-+ nonblock := regexp.MustCompile(`^\/\/sysnb `).FindStringSubmatch(t)
-+ if regexp.MustCompile(`^\/\/sys `).FindStringSubmatch(t) == nil && nonblock == nil {
-+ continue
-+ }
-+
-+ // Line must be of the form
-+ // func Open(path string, mode int, perm int) (fd int, err error)
-+ // Split into name, in params, out params.
-+ f := regexp.MustCompile(`^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*(?:(\w*)\.)?(\w*))?$`).FindStringSubmatch(t)
-+ if f == nil {
-+ fmt.Fprintf(os.Stderr, "%s:%s\nmalformed //sys declaration\n", path, t)
-+ os.Exit(1)
-+ }
-+ funct, inps, outps, modname, sysname := f[2], f[3], f[4], f[5], f[6]
-+
-+ // Split argument lists on comma.
-+ in := parseParamList(inps)
-+ out := parseParamList(outps)
-+
-+ inps = strings.Join(in, ", ")
-+ outps = strings.Join(out, ", ")
-+
-+ if sysname == "" {
-+ sysname = funct
-+ }
-+
-+ onlyCommon := false
-+ if funct == "readlen" || funct == "writelen" || funct == "FcntlInt" || funct == "FcntlFlock" {
-+ // This function call another syscall which is already implemented.
-+ // Therefore, the gc and gccgo part must not be generated.
-+ onlyCommon = true
-+ }
-+
-+ // Try in vain to keep people from editing this file.
-+ // The theory is that they jump into the middle of the file
-+ // without reading the header.
-+
-+ textcommon += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
-+ if !onlyCommon {
-+ textgccgo += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
-+ textgc += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
-+ }
-+
-+ // Check if value return, err return available
-+ errvar := ""
-+ rettype := ""
-+ for _, param := range out {
-+ p := parseParam(param)
-+ if p.Type == "error" {
-+ errvar = p.Name
-+ } else {
-+ rettype = p.Type
-+ }
-+ }
-+
-+ sysname = regexp.MustCompile(`([a-z])([A-Z])`).ReplaceAllString(sysname, `${1}_$2`)
-+ sysname = strings.ToLower(sysname) // All libc functions are lowercase.
-+
-+ // GCCGO Prototype return type
-+ cRettype := ""
-+ if rettype == "unsafe.Pointer" {
-+ cRettype = "uintptr_t"
-+ } else if rettype == "uintptr" {
-+ cRettype = "uintptr_t"
-+ } else if regexp.MustCompile(`^_`).FindStringSubmatch(rettype) != nil {
-+ cRettype = "uintptr_t"
-+ } else if rettype == "int" {
-+ cRettype = "int"
-+ } else if rettype == "int32" {
-+ cRettype = "int"
-+ } else if rettype == "int64" {
-+ cRettype = "long long"
-+ } else if rettype == "uint32" {
-+ cRettype = "unsigned int"
-+ } else if rettype == "uint64" {
-+ cRettype = "unsigned long long"
-+ } else {
-+ cRettype = "int"
-+ }
-+ if sysname == "exit" {
-+ cRettype = "void"
-+ }
-+
-+ // GCCGO Prototype arguments type
-+ var cIn []string
-+ for i, param := range in {
-+ p := parseParam(param)
-+ if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
-+ cIn = append(cIn, "uintptr_t")
-+ } else if p.Type == "string" {
-+ cIn = append(cIn, "uintptr_t")
-+ } else if regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type) != nil {
-+ cIn = append(cIn, "uintptr_t", "size_t")
-+ } else if p.Type == "unsafe.Pointer" {
-+ cIn = append(cIn, "uintptr_t")
-+ } else if p.Type == "uintptr" {
-+ cIn = append(cIn, "uintptr_t")
-+ } else if regexp.MustCompile(`^_`).FindStringSubmatch(p.Type) != nil {
-+ cIn = append(cIn, "uintptr_t")
-+ } else if p.Type == "int" {
-+ if (i == 0 || i == 2) && funct == "fcntl" {
-+ // These fcntl arguments needs to be uintptr to be able to call FcntlInt and FcntlFlock
-+ cIn = append(cIn, "uintptr_t")
-+ } else {
-+ cIn = append(cIn, "int")
-+ }
-+
-+ } else if p.Type == "int32" {
-+ cIn = append(cIn, "int")
-+ } else if p.Type == "int64" {
-+ cIn = append(cIn, "long long")
-+ } else if p.Type == "uint32" {
-+ cIn = append(cIn, "unsigned int")
-+ } else if p.Type == "uint64" {
-+ cIn = append(cIn, "unsigned long long")
-+ } else {
-+ cIn = append(cIn, "int")
-+ }
-+ }
-+
-+ if !onlyCommon {
-+ // GCCGO Prototype Generation
-+ // Imports of system calls from libc
-+ if sysname == "select" {
-+ // select is a keyword of Go. Its name is
-+ // changed to c_select.
-+ cExtern += "#define c_select select\n"
-+ }
-+ cExtern += fmt.Sprintf("%s %s", cRettype, sysname)
-+ cIn := strings.Join(cIn, ", ")
-+ cExtern += fmt.Sprintf("(%s);\n", cIn)
-+ }
-+ // GC Library name
-+ if modname == "" {
-+ modname = "libc.a/shr_64.o"
-+ } else {
-+ fmt.Fprintf(os.Stderr, "%s: only syscall using libc are available\n", funct)
-+ os.Exit(1)
-+ }
-+ sysvarname := fmt.Sprintf("libc_%s", sysname)
-+
-+ if !onlyCommon {
-+ // GC Runtime import of function to allow cross-platform builds.
-+ dynimports += fmt.Sprintf("//go:cgo_import_dynamic %s %s \"%s\"\n", sysvarname, sysname, modname)
-+ // GC Link symbol to proc address variable.
-+ linknames += fmt.Sprintf("//go:linkname %s %s\n", sysvarname, sysvarname)
-+ // GC Library proc address variable.
-+ vars = append(vars, sysvarname)
-+ }
-+
-+ strconvfunc := "BytePtrFromString"
-+ strconvtype := "*byte"
-+
-+ // Go function header.
-+ if outps != "" {
-+ outps = fmt.Sprintf(" (%s)", outps)
-+ }
-+ if textcommon != "" {
-+ textcommon += "\n"
-+ }
-+
-+ textcommon += fmt.Sprintf("func %s(%s)%s {\n", funct, strings.Join(in, ", "), outps)
-+
-+ // Prepare arguments tocall.
-+ var argscommon []string // Arguments in the common part
-+ var argscall []string // Arguments for call prototype
-+ var argsgc []string // Arguments for gc call (with syscall6)
-+ var argsgccgo []string // Arguments for gccgo call (with C.name_of_syscall)
-+ n := 0
-+ argN := 0
-+ for _, param := range in {
-+ p := parseParam(param)
-+ if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
-+ argscommon = append(argscommon, fmt.Sprintf("uintptr(unsafe.Pointer(%s))", p.Name))
-+ argscall = append(argscall, fmt.Sprintf("%s uintptr", p.Name))
-+ argsgc = append(argsgc, p.Name)
-+ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
-+ } else if p.Type == "string" && errvar != "" {
-+ textcommon += fmt.Sprintf("\tvar _p%d %s\n", n, strconvtype)
-+ textcommon += fmt.Sprintf("\t_p%d, %s = %s(%s)\n", n, errvar, strconvfunc, p.Name)
-+ textcommon += fmt.Sprintf("\tif %s != nil {\n\t\treturn\n\t}\n", errvar)
-+
-+ argscommon = append(argscommon, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
-+ argscall = append(argscall, fmt.Sprintf("_p%d uintptr ", n))
-+ argsgc = append(argsgc, fmt.Sprintf("_p%d", n))
-+ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(_p%d)", n))
-+ n++
-+ } else if p.Type == "string" {
-+ fmt.Fprintf(os.Stderr, path+":"+funct+" uses string arguments, but has no error return\n")
-+ textcommon += fmt.Sprintf("\tvar _p%d %s\n", n, strconvtype)
-+ textcommon += fmt.Sprintf("\t_p%d, %s = %s(%s)\n", n, errvar, strconvfunc, p.Name)
-+ textcommon += fmt.Sprintf("\tif %s != nil {\n\t\treturn\n\t}\n", errvar)
-+
-+ argscommon = append(argscommon, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
-+ argscall = append(argscall, fmt.Sprintf("_p%d uintptr", n))
-+ argsgc = append(argsgc, fmt.Sprintf("_p%d", n))
-+ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(_p%d)", n))
-+ n++
-+ } else if m := regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type); m != nil {
-+ // Convert slice into pointer, length.
-+ // Have to be careful not to take address of &a[0] if len == 0:
-+ // pass nil in that case.
-+ textcommon += fmt.Sprintf("\tvar _p%d *%s\n", n, m[1])
-+ textcommon += fmt.Sprintf("\tif len(%s) > 0 {\n\t\t_p%d = &%s[0]\n\t}\n", p.Name, n, p.Name)
-+ argscommon = append(argscommon, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n), fmt.Sprintf("len(%s)", p.Name))
-+ argscall = append(argscall, fmt.Sprintf("_p%d uintptr", n), fmt.Sprintf("_lenp%d int", n))
-+ argsgc = append(argsgc, fmt.Sprintf("_p%d", n), fmt.Sprintf("uintptr(_lenp%d)", n))
-+ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(_p%d)", n), fmt.Sprintf("C.size_t(_lenp%d)", n))
-+ n++
-+ } else if p.Type == "int64" && endianness != "" {
-+ fmt.Fprintf(os.Stderr, path+":"+funct+" uses int64 with 32 bits mode. Case not yet implemented\n")
-+ } else if p.Type == "bool" {
-+ fmt.Fprintf(os.Stderr, path+":"+funct+" uses bool. Case not yet implemented\n")
-+ } else if regexp.MustCompile(`^_`).FindStringSubmatch(p.Type) != nil || p.Type == "unsafe.Pointer" {
-+ argscommon = append(argscommon, fmt.Sprintf("uintptr(%s)", p.Name))
-+ argscall = append(argscall, fmt.Sprintf("%s uintptr", p.Name))
-+ argsgc = append(argsgc, p.Name)
-+ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
-+ } else if p.Type == "int" {
-+ if (argN == 0 || argN == 2) && ((funct == "fcntl") || (funct == "FcntlInt") || (funct == "FcntlFlock")) {
-+ // These fcntl arguments need to be uintptr to be able to call FcntlInt and FcntlFlock
-+ argscommon = append(argscommon, fmt.Sprintf("uintptr(%s)", p.Name))
-+ argscall = append(argscall, fmt.Sprintf("%s uintptr", p.Name))
-+ argsgc = append(argsgc, p.Name)
-+ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
-+
-+ } else {
-+ argscommon = append(argscommon, p.Name)
-+ argscall = append(argscall, fmt.Sprintf("%s int", p.Name))
-+ argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
-+ argsgccgo = append(argsgccgo, fmt.Sprintf("C.int(%s)", p.Name))
-+ }
-+ } else if p.Type == "int32" {
-+ argscommon = append(argscommon, p.Name)
-+ argscall = append(argscall, fmt.Sprintf("%s int32", p.Name))
-+ argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
-+ argsgccgo = append(argsgccgo, fmt.Sprintf("C.int(%s)", p.Name))
-+ } else if p.Type == "int64" {
-+ argscommon = append(argscommon, p.Name)
-+ argscall = append(argscall, fmt.Sprintf("%s int64", p.Name))
-+ argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
-+ argsgccgo = append(argsgccgo, fmt.Sprintf("C.longlong(%s)", p.Name))
-+ } else if p.Type == "uint32" {
-+ argscommon = append(argscommon, p.Name)
-+ argscall = append(argscall, fmt.Sprintf("%s uint32", p.Name))
-+ argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
-+ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uint(%s)", p.Name))
-+ } else if p.Type == "uint64" {
-+ argscommon = append(argscommon, p.Name)
-+ argscall = append(argscall, fmt.Sprintf("%s uint64", p.Name))
-+ argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
-+ argsgccgo = append(argsgccgo, fmt.Sprintf("C.ulonglong(%s)", p.Name))
-+ } else if p.Type == "uintptr" {
-+ argscommon = append(argscommon, p.Name)
-+ argscall = append(argscall, fmt.Sprintf("%s uintptr", p.Name))
-+ argsgc = append(argsgc, p.Name)
-+ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
-+ } else {
-+ argscommon = append(argscommon, fmt.Sprintf("int(%s)", p.Name))
-+ argscall = append(argscall, fmt.Sprintf("%s int", p.Name))
-+ argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
-+ argsgccgo = append(argsgccgo, fmt.Sprintf("C.int(%s)", p.Name))
-+ }
-+ argN++
-+ }
-+ nargs := len(argsgc)
-+
-+ // COMMON function generation
-+ argscommonlist := strings.Join(argscommon, ", ")
-+ callcommon := fmt.Sprintf("call%s(%s)", sysname, argscommonlist)
-+ ret := []string{"_", "_"}
-+ body := ""
-+ doErrno := false
-+ for i := 0; i < len(out); i++ {
-+ p := parseParam(out[i])
-+ reg := ""
-+ if p.Name == "err" {
-+ reg = "e1"
-+ ret[1] = reg
-+ doErrno = true
-+ } else {
-+ reg = "r0"
-+ ret[0] = reg
-+ }
-+ if p.Type == "bool" {
-+ reg = fmt.Sprintf("%s != 0", reg)
-+ }
-+ if reg != "e1" {
-+ body += fmt.Sprintf("\t%s = %s(%s)\n", p.Name, p.Type, reg)
-+ }
-+ }
-+ if ret[0] == "_" && ret[1] == "_" {
-+ textcommon += fmt.Sprintf("\t%s\n", callcommon)
-+ } else {
-+ textcommon += fmt.Sprintf("\t%s, %s := %s\n", ret[0], ret[1], callcommon)
-+ }
-+ textcommon += body
-+
-+ if doErrno {
-+ textcommon += "\tif e1 != 0 {\n"
-+ textcommon += "\t\terr = errnoErr(e1)\n"
-+ textcommon += "\t}\n"
-+ }
-+ textcommon += "\treturn\n"
-+ textcommon += "}\n"
-+
-+ if onlyCommon {
-+ continue
-+ }
-+
-+ // CALL Prototype
-+ callProto := fmt.Sprintf("func call%s(%s) (r1 uintptr, e1 Errno) {\n", sysname, strings.Join(argscall, ", "))
-+
-+ // GC function generation
-+ asm := "syscall6"
-+ if nonblock != nil {
-+ asm = "rawSyscall6"
-+ }
-+
-+ if len(argsgc) <= 6 {
-+ for len(argsgc) < 6 {
-+ argsgc = append(argsgc, "0")
-+ }
-+ } else {
-+ fmt.Fprintf(os.Stderr, "%s: too many arguments to system call", funct)
-+ os.Exit(1)
-+ }
-+ argsgclist := strings.Join(argsgc, ", ")
-+ callgc := fmt.Sprintf("%s(uintptr(unsafe.Pointer(&%s)), %d, %s)", asm, sysvarname, nargs, argsgclist)
-+
-+ textgc += callProto
-+ textgc += fmt.Sprintf("\tr1, _, e1 = %s\n", callgc)
-+ textgc += "\treturn\n}\n"
-+
-+ // GCCGO function generation
-+ argsgccgolist := strings.Join(argsgccgo, ", ")
-+ var callgccgo string
-+ if sysname == "select" {
-+ // select is a keyword of Go. Its name is
-+ // changed to c_select.
-+ callgccgo = fmt.Sprintf("C.c_%s(%s)", sysname, argsgccgolist)
-+ } else {
-+ callgccgo = fmt.Sprintf("C.%s(%s)", sysname, argsgccgolist)
-+ }
-+ textgccgo += callProto
-+ textgccgo += fmt.Sprintf("\tr1 = uintptr(%s)\n", callgccgo)
-+ textgccgo += "\te1 = syscall.GetErrno()\n"
-+ textgccgo += "\treturn\n}\n"
-+ }
-+ if err := s.Err(); err != nil {
-+ fmt.Fprintf(os.Stderr, err.Error())
-+ os.Exit(1)
-+ }
-+ file.Close()
-+ }
-+ imp := ""
-+ if pack != "unix" {
-+ imp = "import \"golang.org/x/sys/unix\"\n"
-+
-+ }
-+
-+ // Print zsyscall_aix_ppc64.go
-+ err := ioutil.WriteFile("zsyscall_aix_ppc64.go",
-+ []byte(fmt.Sprintf(srcTemplate1, cmdLine(), buildTags(), pack, imp, textcommon)),
-+ 0644)
-+ if err != nil {
-+ fmt.Fprintf(os.Stderr, err.Error())
-+ os.Exit(1)
-+ }
-+
-+ // Print zsyscall_aix_ppc64_gc.go
-+ vardecls := "\t" + strings.Join(vars, ",\n\t")
-+ vardecls += " syscallFunc"
-+ err = ioutil.WriteFile("zsyscall_aix_ppc64_gc.go",
-+ []byte(fmt.Sprintf(srcTemplate2, cmdLine(), buildTags(), pack, imp, dynimports, linknames, vardecls, textgc)),
-+ 0644)
-+ if err != nil {
-+ fmt.Fprintf(os.Stderr, err.Error())
-+ os.Exit(1)
-+ }
-+
-+ // Print zsyscall_aix_ppc64_gccgo.go
-+ err = ioutil.WriteFile("zsyscall_aix_ppc64_gccgo.go",
-+ []byte(fmt.Sprintf(srcTemplate3, cmdLine(), buildTags(), pack, cExtern, imp, textgccgo)),
-+ 0644)
-+ if err != nil {
-+ fmt.Fprintf(os.Stderr, err.Error())
-+ os.Exit(1)
-+ }
-+}
-+
-+const srcTemplate1 = `// %s
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build %s
-+
-+package %s
-+
-+import (
-+ "unsafe"
-+)
-+
-+
-+%s
-+
-+%s
-+`
-+const srcTemplate2 = `// %s
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build %s
-+// +build !gccgo
-+
-+package %s
-+
-+import (
-+ "unsafe"
-+)
-+%s
-+%s
-+%s
-+type syscallFunc uintptr
-+
-+var (
-+%s
-+)
-+
-+// Implemented in runtime/syscall_aix.go.
-+func rawSyscall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
-+func syscall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
-+
-+%s
-+`
-+const srcTemplate3 = `// %s
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build %s
-+// +build gccgo
-+
-+package %s
-+
-+%s
-+*/
-+import "C"
-+import (
-+ "syscall"
-+)
-+
-+
-+%s
-+
-+%s
-+`
-diff --git a/vendor/golang.org/x/sys/unix/mksyscall_solaris.go b/vendor/golang.org/x/sys/unix/mksyscall_solaris.go
-new file mode 100644
-index 00000000..675597e4
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/mksyscall_solaris.go
-@@ -0,0 +1,341 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build ignore
-+
-+/*
-+ This program reads a file containing function prototypes
-+ (like syscall_solaris.go) and generates system call bodies.
-+ The prototypes are marked by lines beginning with "//sys"
-+ and read like func declarations if //sys is replaced by func, but:
-+ * The parameter lists must give a name for each argument.
-+ This includes return parameters.
-+ * The parameter lists must give a type for each argument:
-+ the (x, y, z int) shorthand is not allowed.
-+ * If the return parameter is an error number, it must be named err.
-+ * If go func name needs to be different than its libc name,
-+ * or the function is not in libc, name could be specified
-+ * at the end, after "=" sign, like
-+ //sys getsockopt(s int, level int, name int, val uintptr, vallen *_Socklen) (err error) = libsocket.getsockopt
-+*/
-+
-+package main
-+
-+import (
-+ "bufio"
-+ "flag"
-+ "fmt"
-+ "os"
-+ "regexp"
-+ "strings"
-+)
-+
-+var (
-+ b32 = flag.Bool("b32", false, "32bit big-endian")
-+ l32 = flag.Bool("l32", false, "32bit little-endian")
-+ tags = flag.String("tags", "", "build tags")
-+ illumos = flag.Bool("illumos", false, "illumos specific code generation")
-+)
-+
-+// cmdLine returns this programs's commandline arguments
-+func cmdLine() string {
-+ return "go run mksyscall_solaris.go " + strings.Join(os.Args[1:], " ")
-+}
-+
-+// buildTags returns build tags
-+func buildTags() string {
-+ return *tags
-+}
-+
-+// Param is function parameter
-+type Param struct {
-+ Name string
-+ Type string
-+}
-+
-+// usage prints the program usage
-+func usage() {
-+ fmt.Fprintf(os.Stderr, "usage: go run mksyscall_solaris.go [-b32 | -l32] [-tags x,y] [file ...]\n")
-+ os.Exit(1)
-+}
-+
-+// parseParamList parses parameter list and returns a slice of parameters
-+func parseParamList(list string) []string {
-+ list = strings.TrimSpace(list)
-+ if list == "" {
-+ return []string{}
-+ }
-+ return regexp.MustCompile(`\s*,\s*`).Split(list, -1)
-+}
-+
-+// parseParam splits a parameter into name and type
-+func parseParam(p string) Param {
-+ ps := regexp.MustCompile(`^(\S*) (\S*)$`).FindStringSubmatch(p)
-+ if ps == nil {
-+ fmt.Fprintf(os.Stderr, "malformed parameter: %s\n", p)
-+ os.Exit(1)
-+ }
-+ return Param{ps[1], ps[2]}
-+}
-+
-+func main() {
-+ flag.Usage = usage
-+ flag.Parse()
-+ if len(flag.Args()) <= 0 {
-+ fmt.Fprintf(os.Stderr, "no files to parse provided\n")
-+ usage()
-+ }
-+
-+ endianness := ""
-+ if *b32 {
-+ endianness = "big-endian"
-+ } else if *l32 {
-+ endianness = "little-endian"
-+ }
-+
-+ pack := ""
-+ text := ""
-+ dynimports := ""
-+ linknames := ""
-+ var vars []string
-+ for _, path := range flag.Args() {
-+ file, err := os.Open(path)
-+ if err != nil {
-+ fmt.Fprintf(os.Stderr, err.Error())
-+ os.Exit(1)
-+ }
-+ s := bufio.NewScanner(file)
-+ for s.Scan() {
-+ t := s.Text()
-+ t = strings.TrimSpace(t)
-+ t = regexp.MustCompile(`\s+`).ReplaceAllString(t, ` `)
-+ if p := regexp.MustCompile(`^package (\S+)$`).FindStringSubmatch(t); p != nil && pack == "" {
-+ pack = p[1]
-+ }
-+ nonblock := regexp.MustCompile(`^\/\/sysnb `).FindStringSubmatch(t)
-+ if regexp.MustCompile(`^\/\/sys `).FindStringSubmatch(t) == nil && nonblock == nil {
-+ continue
-+ }
-+
-+ // Line must be of the form
-+ // func Open(path string, mode int, perm int) (fd int, err error)
-+ // Split into name, in params, out params.
-+ f := regexp.MustCompile(`^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*(?:(\w*)\.)?(\w*))?$`).FindStringSubmatch(t)
-+ if f == nil {
-+ fmt.Fprintf(os.Stderr, "%s:%s\nmalformed //sys declaration\n", path, t)
-+ os.Exit(1)
-+ }
-+ funct, inps, outps, modname, sysname := f[2], f[3], f[4], f[5], f[6]
-+
-+ // Split argument lists on comma.
-+ in := parseParamList(inps)
-+ out := parseParamList(outps)
-+
-+ inps = strings.Join(in, ", ")
-+ outps = strings.Join(out, ", ")
-+
-+ // Try in vain to keep people from editing this file.
-+ // The theory is that they jump into the middle of the file
-+ // without reading the header.
-+ text += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
-+
-+ // So file name.
-+ if modname == "" {
-+ modname = "libc"
-+ }
-+
-+ // System call name.
-+ if sysname == "" {
-+ sysname = funct
-+ }
-+
-+ // System call pointer variable name.
-+ sysvarname := fmt.Sprintf("proc%s", sysname)
-+
-+ strconvfunc := "BytePtrFromString"
-+ strconvtype := "*byte"
-+
-+ sysname = strings.ToLower(sysname) // All libc functions are lowercase.
-+
-+ // Runtime import of function to allow cross-platform builds.
-+ dynimports += fmt.Sprintf("//go:cgo_import_dynamic libc_%s %s \"%s.so\"\n", sysname, sysname, modname)
-+ // Link symbol to proc address variable.
-+ linknames += fmt.Sprintf("//go:linkname %s libc_%s\n", sysvarname, sysname)
-+ // Library proc address variable.
-+ vars = append(vars, sysvarname)
-+
-+ // Go function header.
-+ outlist := strings.Join(out, ", ")
-+ if outlist != "" {
-+ outlist = fmt.Sprintf(" (%s)", outlist)
-+ }
-+ if text != "" {
-+ text += "\n"
-+ }
-+ text += fmt.Sprintf("func %s(%s)%s {\n", funct, strings.Join(in, ", "), outlist)
-+
-+ // Check if err return available
-+ errvar := ""
-+ for _, param := range out {
-+ p := parseParam(param)
-+ if p.Type == "error" {
-+ errvar = p.Name
-+ continue
-+ }
-+ }
-+
-+ // Prepare arguments to Syscall.
-+ var args []string
-+ n := 0
-+ for _, param := range in {
-+ p := parseParam(param)
-+ if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
-+ args = append(args, "uintptr(unsafe.Pointer("+p.Name+"))")
-+ } else if p.Type == "string" && errvar != "" {
-+ text += fmt.Sprintf("\tvar _p%d %s\n", n, strconvtype)
-+ text += fmt.Sprintf("\t_p%d, %s = %s(%s)\n", n, errvar, strconvfunc, p.Name)
-+ text += fmt.Sprintf("\tif %s != nil {\n\t\treturn\n\t}\n", errvar)
-+ args = append(args, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
-+ n++
-+ } else if p.Type == "string" {
-+ fmt.Fprintf(os.Stderr, path+":"+funct+" uses string arguments, but has no error return\n")
-+ text += fmt.Sprintf("\tvar _p%d %s\n", n, strconvtype)
-+ text += fmt.Sprintf("\t_p%d, _ = %s(%s)\n", n, strconvfunc, p.Name)
-+ args = append(args, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
-+ n++
-+ } else if s := regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type); s != nil {
-+ // Convert slice into pointer, length.
-+ // Have to be careful not to take address of &a[0] if len == 0:
-+ // pass nil in that case.
-+ text += fmt.Sprintf("\tvar _p%d *%s\n", n, s[1])
-+ text += fmt.Sprintf("\tif len(%s) > 0 {\n\t\t_p%d = &%s[0]\n\t}\n", p.Name, n, p.Name)
-+ args = append(args, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n), fmt.Sprintf("uintptr(len(%s))", p.Name))
-+ n++
-+ } else if p.Type == "int64" && endianness != "" {
-+ if endianness == "big-endian" {
-+ args = append(args, fmt.Sprintf("uintptr(%s>>32)", p.Name), fmt.Sprintf("uintptr(%s)", p.Name))
-+ } else {
-+ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name), fmt.Sprintf("uintptr(%s>>32)", p.Name))
-+ }
-+ } else if p.Type == "bool" {
-+ text += fmt.Sprintf("\tvar _p%d uint32\n", n)
-+ text += fmt.Sprintf("\tif %s {\n\t\t_p%d = 1\n\t} else {\n\t\t_p%d = 0\n\t}\n", p.Name, n, n)
-+ args = append(args, fmt.Sprintf("uintptr(_p%d)", n))
-+ n++
-+ } else {
-+ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name))
-+ }
-+ }
-+ nargs := len(args)
-+
-+ // Determine which form to use; pad args with zeros.
-+ asm := "sysvicall6"
-+ if nonblock != nil {
-+ asm = "rawSysvicall6"
-+ }
-+ if len(args) <= 6 {
-+ for len(args) < 6 {
-+ args = append(args, "0")
-+ }
-+ } else {
-+ fmt.Fprintf(os.Stderr, "%s: too many arguments to system call\n", path)
-+ os.Exit(1)
-+ }
-+
-+ // Actual call.
-+ arglist := strings.Join(args, ", ")
-+ call := fmt.Sprintf("%s(uintptr(unsafe.Pointer(&%s)), %d, %s)", asm, sysvarname, nargs, arglist)
-+
-+ // Assign return values.
-+ body := ""
-+ ret := []string{"_", "_", "_"}
-+ doErrno := false
-+ for i := 0; i < len(out); i++ {
-+ p := parseParam(out[i])
-+ reg := ""
-+ if p.Name == "err" {
-+ reg = "e1"
-+ ret[2] = reg
-+ doErrno = true
-+ } else {
-+ reg = fmt.Sprintf("r%d", i)
-+ ret[i] = reg
-+ }
-+ if p.Type == "bool" {
-+ reg = fmt.Sprintf("%d != 0", reg)
-+ }
-+ if p.Type == "int64" && endianness != "" {
-+ // 64-bit number in r1:r0 or r0:r1.
-+ if i+2 > len(out) {
-+ fmt.Fprintf(os.Stderr, "%s: not enough registers for int64 return\n", path)
-+ os.Exit(1)
-+ }
-+ if endianness == "big-endian" {
-+ reg = fmt.Sprintf("int64(r%d)<<32 | int64(r%d)", i, i+1)
-+ } else {
-+ reg = fmt.Sprintf("int64(r%d)<<32 | int64(r%d)", i+1, i)
-+ }
-+ ret[i] = fmt.Sprintf("r%d", i)
-+ ret[i+1] = fmt.Sprintf("r%d", i+1)
-+ }
-+ if reg != "e1" {
-+ body += fmt.Sprintf("\t%s = %s(%s)\n", p.Name, p.Type, reg)
-+ }
-+ }
-+ if ret[0] == "_" && ret[1] == "_" && ret[2] == "_" {
-+ text += fmt.Sprintf("\t%s\n", call)
-+ } else {
-+ text += fmt.Sprintf("\t%s, %s, %s := %s\n", ret[0], ret[1], ret[2], call)
-+ }
-+ text += body
-+
-+ if doErrno {
-+ text += "\tif e1 != 0 {\n"
-+ text += "\t\terr = e1\n"
-+ text += "\t}\n"
-+ }
-+ text += "\treturn\n"
-+ text += "}\n"
-+ }
-+ if err := s.Err(); err != nil {
-+ fmt.Fprintf(os.Stderr, err.Error())
-+ os.Exit(1)
-+ }
-+ file.Close()
-+ }
-+ imp := ""
-+ if pack != "unix" {
-+ imp = "import \"golang.org/x/sys/unix\"\n"
-+ }
-+
-+ syscallimp := ""
-+ if !*illumos {
-+ syscallimp = "\"syscall\""
-+ }
-+
-+ vardecls := "\t" + strings.Join(vars, ",\n\t")
-+ vardecls += " syscallFunc"
-+ fmt.Printf(srcTemplate, cmdLine(), buildTags(), pack, syscallimp, imp, dynimports, linknames, vardecls, text)
-+}
-+
-+const srcTemplate = `// %s
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build %s
-+
-+package %s
-+
-+import (
-+ "unsafe"
-+ %s
-+)
-+%s
-+%s
-+%s
-+var (
-+%s
-+)
-+
-+%s
-+`
-diff --git a/vendor/golang.org/x/sys/unix/mksysctl_openbsd.go b/vendor/golang.org/x/sys/unix/mksysctl_openbsd.go
-new file mode 100644
-index 00000000..b6b40990
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/mksysctl_openbsd.go
-@@ -0,0 +1,355 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build ignore
-+
-+// Parse the header files for OpenBSD and generate a Go usable sysctl MIB.
-+//
-+// Build a MIB with each entry being an array containing the level, type and
-+// a hash that will contain additional entries if the current entry is a node.
-+// We then walk this MIB and create a flattened sysctl name to OID hash.
-+
-+package main
-+
-+import (
-+ "bufio"
-+ "fmt"
-+ "os"
-+ "path/filepath"
-+ "regexp"
-+ "sort"
-+ "strings"
-+)
-+
-+var (
-+ goos, goarch string
-+)
-+
-+// cmdLine returns this programs's commandline arguments.
-+func cmdLine() string {
-+ return "go run mksysctl_openbsd.go " + strings.Join(os.Args[1:], " ")
-+}
-+
-+// buildTags returns build tags.
-+func buildTags() string {
-+ return fmt.Sprintf("%s,%s", goarch, goos)
-+}
-+
-+// reMatch performs regular expression match and stores the substring slice to value pointed by m.
-+func reMatch(re *regexp.Regexp, str string, m *[]string) bool {
-+ *m = re.FindStringSubmatch(str)
-+ if *m != nil {
-+ return true
-+ }
-+ return false
-+}
-+
-+type nodeElement struct {
-+ n int
-+ t string
-+ pE *map[string]nodeElement
-+}
-+
-+var (
-+ debugEnabled bool
-+ mib map[string]nodeElement
-+ node *map[string]nodeElement
-+ nodeMap map[string]string
-+ sysCtl []string
-+)
-+
-+var (
-+ ctlNames1RE = regexp.MustCompile(`^#define\s+(CTL_NAMES)\s+{`)
-+ ctlNames2RE = regexp.MustCompile(`^#define\s+(CTL_(.*)_NAMES)\s+{`)
-+ ctlNames3RE = regexp.MustCompile(`^#define\s+((.*)CTL_NAMES)\s+{`)
-+ netInetRE = regexp.MustCompile(`^netinet/`)
-+ netInet6RE = regexp.MustCompile(`^netinet6/`)
-+ netRE = regexp.MustCompile(`^net/`)
-+ bracesRE = regexp.MustCompile(`{.*}`)
-+ ctlTypeRE = regexp.MustCompile(`{\s+"(\w+)",\s+(CTLTYPE_[A-Z]+)\s+}`)
-+ fsNetKernRE = regexp.MustCompile(`^(fs|net|kern)_`)
-+)
-+
-+func debug(s string) {
-+ if debugEnabled {
-+ fmt.Fprintln(os.Stderr, s)
-+ }
-+}
-+
-+// Walk the MIB and build a sysctl name to OID mapping.
-+func buildSysctl(pNode *map[string]nodeElement, name string, oid []int) {
-+ lNode := pNode // local copy of pointer to node
-+ var keys []string
-+ for k := range *lNode {
-+ keys = append(keys, k)
-+ }
-+ sort.Strings(keys)
-+
-+ for _, key := range keys {
-+ nodename := name
-+ if name != "" {
-+ nodename += "."
-+ }
-+ nodename += key
-+
-+ nodeoid := append(oid, (*pNode)[key].n)
-+
-+ if (*pNode)[key].t == `CTLTYPE_NODE` {
-+ if _, ok := nodeMap[nodename]; ok {
-+ lNode = &mib
-+ ctlName := nodeMap[nodename]
-+ for _, part := range strings.Split(ctlName, ".") {
-+ lNode = ((*lNode)[part]).pE
-+ }
-+ } else {
-+ lNode = (*pNode)[key].pE
-+ }
-+ buildSysctl(lNode, nodename, nodeoid)
-+ } else if (*pNode)[key].t != "" {
-+ oidStr := []string{}
-+ for j := range nodeoid {
-+ oidStr = append(oidStr, fmt.Sprintf("%d", nodeoid[j]))
-+ }
-+ text := "\t{ \"" + nodename + "\", []_C_int{ " + strings.Join(oidStr, ", ") + " } }, \n"
-+ sysCtl = append(sysCtl, text)
-+ }
-+ }
-+}
-+
-+func main() {
-+ // Get the OS (using GOOS_TARGET if it exist)
-+ goos = os.Getenv("GOOS_TARGET")
-+ if goos == "" {
-+ goos = os.Getenv("GOOS")
-+ }
-+ // Get the architecture (using GOARCH_TARGET if it exists)
-+ goarch = os.Getenv("GOARCH_TARGET")
-+ if goarch == "" {
-+ goarch = os.Getenv("GOARCH")
-+ }
-+ // Check if GOOS and GOARCH environment variables are defined
-+ if goarch == "" || goos == "" {
-+ fmt.Fprintf(os.Stderr, "GOARCH or GOOS not defined in environment\n")
-+ os.Exit(1)
-+ }
-+
-+ mib = make(map[string]nodeElement)
-+ headers := [...]string{
-+ `sys/sysctl.h`,
-+ `sys/socket.h`,
-+ `sys/tty.h`,
-+ `sys/malloc.h`,
-+ `sys/mount.h`,
-+ `sys/namei.h`,
-+ `sys/sem.h`,
-+ `sys/shm.h`,
-+ `sys/vmmeter.h`,
-+ `uvm/uvmexp.h`,
-+ `uvm/uvm_param.h`,
-+ `uvm/uvm_swap_encrypt.h`,
-+ `ddb/db_var.h`,
-+ `net/if.h`,
-+ `net/if_pfsync.h`,
-+ `net/pipex.h`,
-+ `netinet/in.h`,
-+ `netinet/icmp_var.h`,
-+ `netinet/igmp_var.h`,
-+ `netinet/ip_ah.h`,
-+ `netinet/ip_carp.h`,
-+ `netinet/ip_divert.h`,
-+ `netinet/ip_esp.h`,
-+ `netinet/ip_ether.h`,
-+ `netinet/ip_gre.h`,
-+ `netinet/ip_ipcomp.h`,
-+ `netinet/ip_ipip.h`,
-+ `netinet/pim_var.h`,
-+ `netinet/tcp_var.h`,
-+ `netinet/udp_var.h`,
-+ `netinet6/in6.h`,
-+ `netinet6/ip6_divert.h`,
-+ `netinet6/pim6_var.h`,
-+ `netinet/icmp6.h`,
-+ `netmpls/mpls.h`,
-+ }
-+
-+ ctls := [...]string{
-+ `kern`,
-+ `vm`,
-+ `fs`,
-+ `net`,
-+ //debug /* Special handling required */
-+ `hw`,
-+ //machdep /* Arch specific */
-+ `user`,
-+ `ddb`,
-+ //vfs /* Special handling required */
-+ `fs.posix`,
-+ `kern.forkstat`,
-+ `kern.intrcnt`,
-+ `kern.malloc`,
-+ `kern.nchstats`,
-+ `kern.seminfo`,
-+ `kern.shminfo`,
-+ `kern.timecounter`,
-+ `kern.tty`,
-+ `kern.watchdog`,
-+ `net.bpf`,
-+ `net.ifq`,
-+ `net.inet`,
-+ `net.inet.ah`,
-+ `net.inet.carp`,
-+ `net.inet.divert`,
-+ `net.inet.esp`,
-+ `net.inet.etherip`,
-+ `net.inet.gre`,
-+ `net.inet.icmp`,
-+ `net.inet.igmp`,
-+ `net.inet.ip`,
-+ `net.inet.ip.ifq`,
-+ `net.inet.ipcomp`,
-+ `net.inet.ipip`,
-+ `net.inet.mobileip`,
-+ `net.inet.pfsync`,
-+ `net.inet.pim`,
-+ `net.inet.tcp`,
-+ `net.inet.udp`,
-+ `net.inet6`,
-+ `net.inet6.divert`,
-+ `net.inet6.ip6`,
-+ `net.inet6.icmp6`,
-+ `net.inet6.pim6`,
-+ `net.inet6.tcp6`,
-+ `net.inet6.udp6`,
-+ `net.mpls`,
-+ `net.mpls.ifq`,
-+ `net.key`,
-+ `net.pflow`,
-+ `net.pfsync`,
-+ `net.pipex`,
-+ `net.rt`,
-+ `vm.swapencrypt`,
-+ //vfsgenctl /* Special handling required */
-+ }
-+
-+ // Node name "fixups"
-+ ctlMap := map[string]string{
-+ "ipproto": "net.inet",
-+ "net.inet.ipproto": "net.inet",
-+ "net.inet6.ipv6proto": "net.inet6",
-+ "net.inet6.ipv6": "net.inet6.ip6",
-+ "net.inet.icmpv6": "net.inet6.icmp6",
-+ "net.inet6.divert6": "net.inet6.divert",
-+ "net.inet6.tcp6": "net.inet.tcp",
-+ "net.inet6.udp6": "net.inet.udp",
-+ "mpls": "net.mpls",
-+ "swpenc": "vm.swapencrypt",
-+ }
-+
-+ // Node mappings
-+ nodeMap = map[string]string{
-+ "net.inet.ip.ifq": "net.ifq",
-+ "net.inet.pfsync": "net.pfsync",
-+ "net.mpls.ifq": "net.ifq",
-+ }
-+
-+ mCtls := make(map[string]bool)
-+ for _, ctl := range ctls {
-+ mCtls[ctl] = true
-+ }
-+
-+ for _, header := range headers {
-+ debug("Processing " + header)
-+ file, err := os.Open(filepath.Join("/usr/include", header))
-+ if err != nil {
-+ fmt.Fprintf(os.Stderr, "%v\n", err)
-+ os.Exit(1)
-+ }
-+ s := bufio.NewScanner(file)
-+ for s.Scan() {
-+ var sub []string
-+ if reMatch(ctlNames1RE, s.Text(), &sub) ||
-+ reMatch(ctlNames2RE, s.Text(), &sub) ||
-+ reMatch(ctlNames3RE, s.Text(), &sub) {
-+ if sub[1] == `CTL_NAMES` {
-+ // Top level.
-+ node = &mib
-+ } else {
-+ // Node.
-+ nodename := strings.ToLower(sub[2])
-+ ctlName := ""
-+ if reMatch(netInetRE, header, &sub) {
-+ ctlName = "net.inet." + nodename
-+ } else if reMatch(netInet6RE, header, &sub) {
-+ ctlName = "net.inet6." + nodename
-+ } else if reMatch(netRE, header, &sub) {
-+ ctlName = "net." + nodename
-+ } else {
-+ ctlName = nodename
-+ ctlName = fsNetKernRE.ReplaceAllString(ctlName, `$1.`)
-+ }
-+
-+ if val, ok := ctlMap[ctlName]; ok {
-+ ctlName = val
-+ }
-+ if _, ok := mCtls[ctlName]; !ok {
-+ debug("Ignoring " + ctlName + "...")
-+ continue
-+ }
-+
-+ // Walk down from the top of the MIB.
-+ node = &mib
-+ for _, part := range strings.Split(ctlName, ".") {
-+ if _, ok := (*node)[part]; !ok {
-+ debug("Missing node " + part)
-+ (*node)[part] = nodeElement{n: 0, t: "", pE: &map[string]nodeElement{}}
-+ }
-+ node = (*node)[part].pE
-+ }
-+ }
-+
-+ // Populate current node with entries.
-+ i := -1
-+ for !strings.HasPrefix(s.Text(), "}") {
-+ s.Scan()
-+ if reMatch(bracesRE, s.Text(), &sub) {
-+ i++
-+ }
-+ if !reMatch(ctlTypeRE, s.Text(), &sub) {
-+ continue
-+ }
-+ (*node)[sub[1]] = nodeElement{n: i, t: sub[2], pE: &map[string]nodeElement{}}
-+ }
-+ }
-+ }
-+ err = s.Err()
-+ if err != nil {
-+ fmt.Fprintf(os.Stderr, "%v\n", err)
-+ os.Exit(1)
-+ }
-+ file.Close()
-+ }
-+ buildSysctl(&mib, "", []int{})
-+
-+ sort.Strings(sysCtl)
-+ text := strings.Join(sysCtl, "")
-+
-+ fmt.Printf(srcTemplate, cmdLine(), buildTags(), text)
-+}
-+
-+const srcTemplate = `// %s
-+// Code generated by the command above; DO NOT EDIT.
-+
-+// +build %s
-+
-+package unix
-+
-+type mibentry struct {
-+ ctlname string
-+ ctloid []_C_int
-+}
-+
-+var sysctlMib = []mibentry {
-+%s
-+}
-+`
-diff --git a/vendor/golang.org/x/sys/unix/mksysnum.go b/vendor/golang.org/x/sys/unix/mksysnum.go
-new file mode 100644
-index 00000000..baa6ecd8
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/mksysnum.go
-@@ -0,0 +1,190 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build ignore
-+
-+// Generate system call table for DragonFly, NetBSD,
-+// FreeBSD, OpenBSD or Darwin from master list
-+// (for example, /usr/src/sys/kern/syscalls.master or
-+// sys/syscall.h).
-+package main
-+
-+import (
-+ "bufio"
-+ "fmt"
-+ "io"
-+ "io/ioutil"
-+ "net/http"
-+ "os"
-+ "regexp"
-+ "strings"
-+)
-+
-+var (
-+ goos, goarch string
-+)
-+
-+// cmdLine returns this programs's commandline arguments
-+func cmdLine() string {
-+ return "go run mksysnum.go " + strings.Join(os.Args[1:], " ")
-+}
-+
-+// buildTags returns build tags
-+func buildTags() string {
-+ return fmt.Sprintf("%s,%s", goarch, goos)
-+}
-+
-+func checkErr(err error) {
-+ if err != nil {
-+ fmt.Fprintf(os.Stderr, "%v\n", err)
-+ os.Exit(1)
-+ }
-+}
-+
-+// source string and substring slice for regexp
-+type re struct {
-+ str string // source string
-+ sub []string // matched sub-string
-+}
-+
-+// Match performs regular expression match
-+func (r *re) Match(exp string) bool {
-+ r.sub = regexp.MustCompile(exp).FindStringSubmatch(r.str)
-+ if r.sub != nil {
-+ return true
-+ }
-+ return false
-+}
-+
-+// fetchFile fetches a text file from URL
-+func fetchFile(URL string) io.Reader {
-+ resp, err := http.Get(URL)
-+ checkErr(err)
-+ defer resp.Body.Close()
-+ body, err := ioutil.ReadAll(resp.Body)
-+ checkErr(err)
-+ return strings.NewReader(string(body))
-+}
-+
-+// readFile reads a text file from path
-+func readFile(path string) io.Reader {
-+ file, err := os.Open(os.Args[1])
-+ checkErr(err)
-+ return file
-+}
-+
-+func format(name, num, proto string) string {
-+ name = strings.ToUpper(name)
-+ // There are multiple entries for enosys and nosys, so comment them out.
-+ nm := re{str: name}
-+ if nm.Match(`^SYS_E?NOSYS$`) {
-+ name = fmt.Sprintf("// %s", name)
-+ }
-+ if name == `SYS_SYS_EXIT` {
-+ name = `SYS_EXIT`
-+ }
-+ return fmt.Sprintf(" %s = %s; // %s\n", name, num, proto)
-+}
-+
-+func main() {
-+ // Get the OS (using GOOS_TARGET if it exist)
-+ goos = os.Getenv("GOOS_TARGET")
-+ if goos == "" {
-+ goos = os.Getenv("GOOS")
-+ }
-+ // Get the architecture (using GOARCH_TARGET if it exists)
-+ goarch = os.Getenv("GOARCH_TARGET")
-+ if goarch == "" {
-+ goarch = os.Getenv("GOARCH")
-+ }
-+ // Check if GOOS and GOARCH environment variables are defined
-+ if goarch == "" || goos == "" {
-+ fmt.Fprintf(os.Stderr, "GOARCH or GOOS not defined in environment\n")
-+ os.Exit(1)
-+ }
-+
-+ file := strings.TrimSpace(os.Args[1])
-+ var syscalls io.Reader
-+ if strings.HasPrefix(file, "https://") || strings.HasPrefix(file, "http://") {
-+ // Download syscalls.master file
-+ syscalls = fetchFile(file)
-+ } else {
-+ syscalls = readFile(file)
-+ }
-+
-+ var text, line string
-+ s := bufio.NewScanner(syscalls)
-+ for s.Scan() {
-+ t := re{str: line}
-+ if t.Match(`^(.*)\\$`) {
-+ // Handle continuation
-+ line = t.sub[1]
-+ line += strings.TrimLeft(s.Text(), " \t")
-+ } else {
-+ // New line
-+ line = s.Text()
-+ }
-+ t = re{str: line}
-+ if t.Match(`\\$`) {
-+ continue
-+ }
-+ t = re{str: line}
-+
-+ switch goos {
-+ case "dragonfly":
-+ if t.Match(`^([0-9]+)\s+STD\s+({ \S+\s+(\w+).*)$`) {
-+ num, proto := t.sub[1], t.sub[2]
-+ name := fmt.Sprintf("SYS_%s", t.sub[3])
-+ text += format(name, num, proto)
-+ }
-+ case "freebsd":
-+ if t.Match(`^([0-9]+)\s+\S+\s+(?:(?:NO)?STD|COMPAT10)\s+({ \S+\s+(\w+).*)$`) {
-+ num, proto := t.sub[1], t.sub[2]
-+ name := fmt.Sprintf("SYS_%s", t.sub[3])
-+ text += format(name, num, proto)
-+ }
-+ case "openbsd":
-+ if t.Match(`^([0-9]+)\s+STD\s+(NOLOCK\s+)?({ \S+\s+\*?(\w+).*)$`) {
-+ num, proto, name := t.sub[1], t.sub[3], t.sub[4]
-+ text += format(name, num, proto)
-+ }
-+ case "netbsd":
-+ if t.Match(`^([0-9]+)\s+((STD)|(NOERR))\s+(RUMP\s+)?({\s+\S+\s*\*?\s*\|(\S+)\|(\S*)\|(\w+).*\s+})(\s+(\S+))?$`) {
-+ num, proto, compat := t.sub[1], t.sub[6], t.sub[8]
-+ name := t.sub[7] + "_" + t.sub[9]
-+ if t.sub[11] != "" {
-+ name = t.sub[7] + "_" + t.sub[11]
-+ }
-+ name = strings.ToUpper(name)
-+ if compat == "" || compat == "13" || compat == "30" || compat == "50" {
-+ text += fmt.Sprintf(" %s = %s; // %s\n", name, num, proto)
-+ }
-+ }
-+ case "darwin":
-+ if t.Match(`^#define\s+SYS_(\w+)\s+([0-9]+)`) {
-+ name, num := t.sub[1], t.sub[2]
-+ name = strings.ToUpper(name)
-+ text += fmt.Sprintf(" SYS_%s = %s;\n", name, num)
-+ }
-+ default:
-+ fmt.Fprintf(os.Stderr, "unrecognized GOOS=%s\n", goos)
-+ os.Exit(1)
-+
-+ }
-+ }
-+ err := s.Err()
-+ checkErr(err)
-+
-+ fmt.Printf(template, cmdLine(), buildTags(), text)
-+}
-+
-+const template = `// %s
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build %s
-+
-+package unix
-+
-+const(
-+%s)`
-diff --git a/vendor/golang.org/x/sys/unix/openbsd_pledge.go b/vendor/golang.org/x/sys/unix/openbsd_pledge.go
-deleted file mode 100644
-index db4f72ea..00000000
---- a/vendor/golang.org/x/sys/unix/openbsd_pledge.go
-+++ /dev/null
-@@ -1,38 +0,0 @@
--// Copyright 2016 The Go Authors. All rights reserved.
--// Use of this source code is governed by a BSD-style
--// license that can be found in the LICENSE file.
--
--// +build openbsd
--// +build 386 amd64 arm
--
--package unix
--
--import (
-- "syscall"
-- "unsafe"
--)
--
--const (
-- SYS_PLEDGE = 108
--)
--
--// Pledge implements the pledge syscall. For more information see pledge(2).
--func Pledge(promises string, paths []string) error {
-- promisesPtr, err := syscall.BytePtrFromString(promises)
-- if err != nil {
-- return err
-- }
-- promisesUnsafe, pathsUnsafe := unsafe.Pointer(promisesPtr), unsafe.Pointer(nil)
-- if paths != nil {
-- var pathsPtr []*byte
-- if pathsPtr, err = syscall.SlicePtrFromStrings(paths); err != nil {
-- return err
-- }
-- pathsUnsafe = unsafe.Pointer(&pathsPtr[0])
-- }
-- _, _, e := syscall.Syscall(SYS_PLEDGE, uintptr(promisesUnsafe), uintptr(pathsUnsafe), 0)
-- if e != 0 {
-- return e
-- }
-- return nil
--}
-diff --git a/vendor/golang.org/x/sys/unix/pagesize_unix.go b/vendor/golang.org/x/sys/unix/pagesize_unix.go
-new file mode 100644
-index 00000000..bc2f3629
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/pagesize_unix.go
-@@ -0,0 +1,15 @@
-+// Copyright 2017 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
-+
-+// For Unix, get the pagesize from the runtime.
-+
-+package unix
-+
-+import "syscall"
-+
-+func Getpagesize() int {
-+ return syscall.Getpagesize()
-+}
-diff --git a/vendor/golang.org/x/sys/unix/pledge_openbsd.go b/vendor/golang.org/x/sys/unix/pledge_openbsd.go
-new file mode 100644
-index 00000000..eb48294b
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/pledge_openbsd.go
-@@ -0,0 +1,163 @@
-+// Copyright 2016 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+package unix
-+
-+import (
-+ "errors"
-+ "fmt"
-+ "strconv"
-+ "syscall"
-+ "unsafe"
-+)
-+
-+// Pledge implements the pledge syscall.
-+//
-+// The pledge syscall does not accept execpromises on OpenBSD releases
-+// before 6.3.
-+//
-+// execpromises must be empty when Pledge is called on OpenBSD
-+// releases predating 6.3, otherwise an error will be returned.
-+//
-+// For more information see pledge(2).
-+func Pledge(promises, execpromises string) error {
-+ maj, min, err := majmin()
-+ if err != nil {
-+ return err
-+ }
-+
-+ err = pledgeAvailable(maj, min, execpromises)
-+ if err != nil {
-+ return err
-+ }
-+
-+ pptr, err := syscall.BytePtrFromString(promises)
-+ if err != nil {
-+ return err
-+ }
-+
-+ // This variable will hold either a nil unsafe.Pointer or
-+ // an unsafe.Pointer to a string (execpromises).
-+ var expr unsafe.Pointer
-+
-+ // If we're running on OpenBSD > 6.2, pass execpromises to the syscall.
-+ if maj > 6 || (maj == 6 && min > 2) {
-+ exptr, err := syscall.BytePtrFromString(execpromises)
-+ if err != nil {
-+ return err
-+ }
-+ expr = unsafe.Pointer(exptr)
-+ }
-+
-+ _, _, e := syscall.Syscall(SYS_PLEDGE, uintptr(unsafe.Pointer(pptr)), uintptr(expr), 0)
-+ if e != 0 {
-+ return e
-+ }
-+
-+ return nil
-+}
-+
-+// PledgePromises implements the pledge syscall.
-+//
-+// This changes the promises and leaves the execpromises untouched.
-+//
-+// For more information see pledge(2).
-+func PledgePromises(promises string) error {
-+ maj, min, err := majmin()
-+ if err != nil {
-+ return err
-+ }
-+
-+ err = pledgeAvailable(maj, min, "")
-+ if err != nil {
-+ return err
-+ }
-+
-+ // This variable holds the execpromises and is always nil.
-+ var expr unsafe.Pointer
-+
-+ pptr, err := syscall.BytePtrFromString(promises)
-+ if err != nil {
-+ return err
-+ }
-+
-+ _, _, e := syscall.Syscall(SYS_PLEDGE, uintptr(unsafe.Pointer(pptr)), uintptr(expr), 0)
-+ if e != 0 {
-+ return e
-+ }
-+
-+ return nil
-+}
-+
-+// PledgeExecpromises implements the pledge syscall.
-+//
-+// This changes the execpromises and leaves the promises untouched.
-+//
-+// For more information see pledge(2).
-+func PledgeExecpromises(execpromises string) error {
-+ maj, min, err := majmin()
-+ if err != nil {
-+ return err
-+ }
-+
-+ err = pledgeAvailable(maj, min, execpromises)
-+ if err != nil {
-+ return err
-+ }
-+
-+ // This variable holds the promises and is always nil.
-+ var pptr unsafe.Pointer
-+
-+ exptr, err := syscall.BytePtrFromString(execpromises)
-+ if err != nil {
-+ return err
-+ }
-+
-+ _, _, e := syscall.Syscall(SYS_PLEDGE, uintptr(pptr), uintptr(unsafe.Pointer(exptr)), 0)
-+ if e != 0 {
-+ return e
-+ }
-+
-+ return nil
-+}
-+
-+// majmin returns major and minor version number for an OpenBSD system.
-+func majmin() (major int, minor int, err error) {
-+ var v Utsname
-+ err = Uname(&v)
-+ if err != nil {
-+ return
-+ }
-+
-+ major, err = strconv.Atoi(string(v.Release[0]))
-+ if err != nil {
-+ err = errors.New("cannot parse major version number returned by uname")
-+ return
-+ }
-+
-+ minor, err = strconv.Atoi(string(v.Release[2]))
-+ if err != nil {
-+ err = errors.New("cannot parse minor version number returned by uname")
-+ return
-+ }
-+
-+ return
-+}
-+
-+// pledgeAvailable checks for availability of the pledge(2) syscall
-+// based on the running OpenBSD version.
-+func pledgeAvailable(maj, min int, execpromises string) error {
-+ // If OpenBSD <= 5.9, pledge is not available.
-+ if (maj == 5 && min != 9) || maj < 5 {
-+ return fmt.Errorf("pledge syscall is not available on OpenBSD %d.%d", maj, min)
-+ }
-+
-+ // If OpenBSD <= 6.2 and execpromises is not empty,
-+ // return an error - execpromises is not available before 6.3
-+ if (maj < 6 || (maj == 6 && min <= 2)) && execpromises != "" {
-+ return fmt.Errorf("cannot use execpromises on OpenBSD %d.%d", maj, min)
-+ }
-+
-+ return nil
-+}
-diff --git a/vendor/golang.org/x/sys/unix/race.go b/vendor/golang.org/x/sys/unix/race.go
-index 3c7627eb..61712b51 100644
---- a/vendor/golang.org/x/sys/unix/race.go
-+++ b/vendor/golang.org/x/sys/unix/race.go
-@@ -1,4 +1,4 @@
--// Copyright 2012 The Go Authors. All rights reserved.
-+// Copyright 2012 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
-diff --git a/vendor/golang.org/x/sys/unix/race0.go b/vendor/golang.org/x/sys/unix/race0.go
-index f8678e0d..ad026678 100644
---- a/vendor/golang.org/x/sys/unix/race0.go
-+++ b/vendor/golang.org/x/sys/unix/race0.go
-@@ -1,8 +1,8 @@
--// Copyright 2012 The Go Authors. All rights reserved.
-+// Copyright 2012 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build darwin,!race linux,!race freebsd,!race netbsd openbsd solaris dragonfly
-+// +build aix darwin,!race linux,!race freebsd,!race netbsd openbsd solaris dragonfly
-
- package unix
-
-diff --git a/vendor/golang.org/x/sys/unix/readdirent_getdents.go b/vendor/golang.org/x/sys/unix/readdirent_getdents.go
-new file mode 100644
-index 00000000..3a90aa6d
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/readdirent_getdents.go
-@@ -0,0 +1,12 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build aix dragonfly freebsd linux netbsd openbsd
-+
-+package unix
-+
-+// ReadDirent reads directory entries from fd and writes them into buf.
-+func ReadDirent(fd int, buf []byte) (n int, err error) {
-+ return Getdents(fd, buf)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go b/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go
-new file mode 100644
-index 00000000..5fdae40b
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go
-@@ -0,0 +1,19 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build darwin
-+
-+package unix
-+
-+import "unsafe"
-+
-+// ReadDirent reads directory entries from fd and writes them into buf.
-+func ReadDirent(fd int, buf []byte) (n int, err error) {
-+ // Final argument is (basep *uintptr) and the syscall doesn't take nil.
-+ // 64 bits should be enough. (32 bits isn't even on 386). Since the
-+ // actual system call is getdirentries64, 64 is a good guess.
-+ // TODO(rsc): Can we use a single global basep for all calls?
-+ var base = (*uintptr)(unsafe.Pointer(new(uint64)))
-+ return Getdirentries(fd, buf, base)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go b/vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go
-new file mode 100644
-index 00000000..5144deec
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go
-@@ -0,0 +1,16 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+package unix
-+
-+// Round the length of a raw sockaddr up to align it properly.
-+func cmsgAlignOf(salen int) int {
-+ salign := SizeofPtr
-+ if SizeofPtr == 8 && !supportsABI(_dragonflyABIChangeVersion) {
-+ // 64-bit Dragonfly before the September 2019 ABI changes still requires
-+ // 32-bit aligned access to network subsystem.
-+ salign = 4
-+ }
-+ return (salen + salign - 1) & ^(salign - 1)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/sockcmsg_linux.go b/vendor/golang.org/x/sys/unix/sockcmsg_linux.go
-index d9ff4731..8bf45705 100644
---- a/vendor/golang.org/x/sys/unix/sockcmsg_linux.go
-+++ b/vendor/golang.org/x/sys/unix/sockcmsg_linux.go
-@@ -1,4 +1,4 @@
--// Copyright 2011 The Go Authors. All rights reserved.
-+// Copyright 2011 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
-@@ -17,7 +17,7 @@ func UnixCredentials(ucred *Ucred) []byte {
- h.Level = SOL_SOCKET
- h.Type = SCM_CREDENTIALS
- h.SetLen(CmsgLen(SizeofUcred))
-- *((*Ucred)(cmsgData(h))) = *ucred
-+ *(*Ucred)(h.data(0)) = *ucred
- return b
- }
-
-diff --git a/vendor/golang.org/x/sys/unix/sockcmsg_unix.go b/vendor/golang.org/x/sys/unix/sockcmsg_unix.go
-index bb756ece..003916ed 100644
---- a/vendor/golang.org/x/sys/unix/sockcmsg_unix.go
-+++ b/vendor/golang.org/x/sys/unix/sockcmsg_unix.go
-@@ -2,25 +2,15 @@
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build darwin dragonfly freebsd linux netbsd openbsd solaris
-+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
-
- // Socket control messages
-
- package unix
-
--import "unsafe"
--
--// Round the length of a raw sockaddr up to align it properly.
--func cmsgAlignOf(salen int) int {
-- salign := sizeofPtr
-- // NOTE: It seems like 64-bit Darwin, DragonFly BSD and
-- // Solaris kernels still require 32-bit aligned access to
-- // network subsystem.
-- if darwin64Bit || dragonfly64Bit || solaris64Bit {
-- salign = 4
-- }
-- return (salen + salign - 1) & ^(salign - 1)
--}
-+import (
-+ "unsafe"
-+)
-
- // CmsgLen returns the value to store in the Len field of the Cmsghdr
- // structure, taking into account any necessary alignment.
-@@ -34,8 +24,8 @@ func CmsgSpace(datalen int) int {
- return cmsgAlignOf(SizeofCmsghdr) + cmsgAlignOf(datalen)
- }
-
--func cmsgData(h *Cmsghdr) unsafe.Pointer {
-- return unsafe.Pointer(uintptr(unsafe.Pointer(h)) + uintptr(cmsgAlignOf(SizeofCmsghdr)))
-+func (h *Cmsghdr) data(offset uintptr) unsafe.Pointer {
-+ return unsafe.Pointer(uintptr(unsafe.Pointer(h)) + uintptr(cmsgAlignOf(SizeofCmsghdr)) + offset)
- }
-
- // SocketControlMessage represents a socket control message.
-@@ -78,10 +68,8 @@ func UnixRights(fds ...int) []byte {
- h.Level = SOL_SOCKET
- h.Type = SCM_RIGHTS
- h.SetLen(CmsgLen(datalen))
-- data := cmsgData(h)
-- for _, fd := range fds {
-- *(*int32)(data) = int32(fd)
-- data = unsafe.Pointer(uintptr(data) + 4)
-+ for i, fd := range fds {
-+ *(*int32)(h.data(4 * uintptr(i))) = int32(fd)
- }
- return b
- }
-diff --git a/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go b/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go
-new file mode 100644
-index 00000000..7d08dae5
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go
-@@ -0,0 +1,38 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build aix darwin freebsd linux netbsd openbsd solaris
-+
-+package unix
-+
-+import (
-+ "runtime"
-+)
-+
-+// Round the length of a raw sockaddr up to align it properly.
-+func cmsgAlignOf(salen int) int {
-+ salign := SizeofPtr
-+
-+ // dragonfly needs to check ABI version at runtime, see cmsgAlignOf in
-+ // sockcmsg_dragonfly.go
-+ switch runtime.GOOS {
-+ case "aix":
-+ // There is no alignment on AIX.
-+ salign = 1
-+ case "darwin", "illumos", "solaris":
-+ // NOTE: It seems like 64-bit Darwin, Illumos and Solaris
-+ // kernels still require 32-bit aligned access to network
-+ // subsystem.
-+ if SizeofPtr == 8 {
-+ salign = 4
-+ }
-+ case "netbsd", "openbsd":
-+ // NetBSD and OpenBSD armv7 require 64-bit alignment.
-+ if runtime.GOARCH == "arm" {
-+ salign = 8
-+ }
-+ }
-+
-+ return (salen + salign - 1) & ^(salign - 1)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/str.go b/vendor/golang.org/x/sys/unix/str.go
-index 35ed6643..17fb6986 100644
---- a/vendor/golang.org/x/sys/unix/str.go
-+++ b/vendor/golang.org/x/sys/unix/str.go
-@@ -2,7 +2,7 @@
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build darwin dragonfly freebsd linux netbsd openbsd solaris
-+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
-
- package unix
-
-diff --git a/vendor/golang.org/x/sys/unix/syscall.go b/vendor/golang.org/x/sys/unix/syscall.go
-index 85e35020..fd4ee8eb 100644
---- a/vendor/golang.org/x/sys/unix/syscall.go
-+++ b/vendor/golang.org/x/sys/unix/syscall.go
-@@ -2,33 +2,36 @@
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build darwin dragonfly freebsd linux netbsd openbsd solaris
-+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
-
- // Package unix contains an interface to the low-level operating system
--// primitives. OS details vary depending on the underlying system, and
-+// primitives. OS details vary depending on the underlying system, and
- // by default, godoc will display OS-specific documentation for the current
--// system. If you want godoc to display OS documentation for another
--// system, set $GOOS and $GOARCH to the desired system. For example, if
-+// system. If you want godoc to display OS documentation for another
-+// system, set $GOOS and $GOARCH to the desired system. For example, if
- // you want to view documentation for freebsd/arm on linux/amd64, set $GOOS
- // to freebsd and $GOARCH to arm.
-+//
- // The primary use of this package is inside other packages that provide a more
- // portable interface to the system, such as "os", "time" and "net". Use
- // those packages rather than this one if you can.
-+//
- // For details of the functions and data types in this package consult
- // the manuals for the appropriate operating system.
-+//
- // These calls return err == nil to indicate success; otherwise
- // err represents an operating system error describing the failure and
- // holds a value of type syscall.Errno.
- package unix // import "golang.org/x/sys/unix"
-
-+import "strings"
-+
- // ByteSliceFromString returns a NUL-terminated slice of bytes
- // containing the text of s. If s contains a NUL byte at any
- // location, it returns (nil, EINVAL).
- func ByteSliceFromString(s string) ([]byte, error) {
-- for i := 0; i < len(s); i++ {
-- if s[i] == 0 {
-- return nil, EINVAL
-- }
-+ if strings.IndexByte(s, 0) != -1 {
-+ return nil, EINVAL
- }
- a := make([]byte, len(s)+1)
- copy(a, s)
-@@ -47,23 +50,4 @@ func BytePtrFromString(s string) (*byte, error) {
- }
-
- // Single-word zero for use when we need a valid pointer to 0 bytes.
--// See mkunix.pl.
- var _zero uintptr
--
--func (ts *Timespec) Unix() (sec int64, nsec int64) {
-- return int64(ts.Sec), int64(ts.Nsec)
--}
--
--func (tv *Timeval) Unix() (sec int64, nsec int64) {
-- return int64(tv.Sec), int64(tv.Usec) * 1000
--}
--
--func (ts *Timespec) Nano() int64 {
-- return int64(ts.Sec)*1e9 + int64(ts.Nsec)
--}
--
--func (tv *Timeval) Nano() int64 {
-- return int64(tv.Sec)*1e9 + int64(tv.Usec)*1000
--}
--
--func TimevalToNsec(tv Timeval) int64 { return int64(tv.Sec)*1e9 + int64(tv.Usec)*1e3 }
-diff --git a/vendor/golang.org/x/sys/unix/syscall_aix.go b/vendor/golang.org/x/sys/unix/syscall_aix.go
-new file mode 100644
-index 00000000..9ad8a0d4
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_aix.go
-@@ -0,0 +1,536 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build aix
-+
-+// Aix system calls.
-+// This file is compiled as ordinary Go code,
-+// but it is also input to mksyscall,
-+// which parses the //sys lines and generates system call stubs.
-+// Note that sometimes we use a lowercase //sys name and
-+// wrap it in our own nicer implementation.
-+
-+package unix
-+
-+import "unsafe"
-+
-+/*
-+ * Wrapped
-+ */
-+
-+//sys utimes(path string, times *[2]Timeval) (err error)
-+func Utimes(path string, tv []Timeval) error {
-+ if len(tv) != 2 {
-+ return EINVAL
-+ }
-+ return utimes(path, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
-+}
-+
-+//sys utimensat(dirfd int, path string, times *[2]Timespec, flag int) (err error)
-+func UtimesNano(path string, ts []Timespec) error {
-+ if len(ts) != 2 {
-+ return EINVAL
-+ }
-+ return utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
-+}
-+
-+func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error {
-+ if ts == nil {
-+ return utimensat(dirfd, path, nil, flags)
-+ }
-+ if len(ts) != 2 {
-+ return EINVAL
-+ }
-+ return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), flags)
-+}
-+
-+func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
-+ if sa.Port < 0 || sa.Port > 0xFFFF {
-+ return nil, 0, EINVAL
-+ }
-+ sa.raw.Family = AF_INET
-+ p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port))
-+ p[0] = byte(sa.Port >> 8)
-+ p[1] = byte(sa.Port)
-+ for i := 0; i < len(sa.Addr); i++ {
-+ sa.raw.Addr[i] = sa.Addr[i]
-+ }
-+ return unsafe.Pointer(&sa.raw), SizeofSockaddrInet4, nil
-+}
-+
-+func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, _Socklen, error) {
-+ if sa.Port < 0 || sa.Port > 0xFFFF {
-+ return nil, 0, EINVAL
-+ }
-+ sa.raw.Family = AF_INET6
-+ p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port))
-+ p[0] = byte(sa.Port >> 8)
-+ p[1] = byte(sa.Port)
-+ sa.raw.Scope_id = sa.ZoneId
-+ for i := 0; i < len(sa.Addr); i++ {
-+ sa.raw.Addr[i] = sa.Addr[i]
-+ }
-+ return unsafe.Pointer(&sa.raw), SizeofSockaddrInet6, nil
-+}
-+
-+func (sa *SockaddrUnix) sockaddr() (unsafe.Pointer, _Socklen, error) {
-+ name := sa.Name
-+ n := len(name)
-+ if n > len(sa.raw.Path) {
-+ return nil, 0, EINVAL
-+ }
-+ if n == len(sa.raw.Path) && name[0] != '@' {
-+ return nil, 0, EINVAL
-+ }
-+ sa.raw.Family = AF_UNIX
-+ for i := 0; i < n; i++ {
-+ sa.raw.Path[i] = uint8(name[i])
-+ }
-+ // length is family (uint16), name, NUL.
-+ sl := _Socklen(2)
-+ if n > 0 {
-+ sl += _Socklen(n) + 1
-+ }
-+ if sa.raw.Path[0] == '@' {
-+ sa.raw.Path[0] = 0
-+ // Don't count trailing NUL for abstract address.
-+ sl--
-+ }
-+
-+ return unsafe.Pointer(&sa.raw), sl, nil
-+}
-+
-+func Getsockname(fd int) (sa Sockaddr, err error) {
-+ var rsa RawSockaddrAny
-+ var len _Socklen = SizeofSockaddrAny
-+ if err = getsockname(fd, &rsa, &len); err != nil {
-+ return
-+ }
-+ return anyToSockaddr(fd, &rsa)
-+}
-+
-+//sys getcwd(buf []byte) (err error)
-+
-+const ImplementsGetwd = true
-+
-+func Getwd() (ret string, err error) {
-+ for len := uint64(4096); ; len *= 2 {
-+ b := make([]byte, len)
-+ err := getcwd(b)
-+ if err == nil {
-+ i := 0
-+ for b[i] != 0 {
-+ i++
-+ }
-+ return string(b[0:i]), nil
-+ }
-+ if err != ERANGE {
-+ return "", err
-+ }
-+ }
-+}
-+
-+func Getcwd(buf []byte) (n int, err error) {
-+ err = getcwd(buf)
-+ if err == nil {
-+ i := 0
-+ for buf[i] != 0 {
-+ i++
-+ }
-+ n = i + 1
-+ }
-+ return
-+}
-+
-+func Getgroups() (gids []int, err error) {
-+ n, err := getgroups(0, nil)
-+ if err != nil {
-+ return nil, err
-+ }
-+ if n == 0 {
-+ return nil, nil
-+ }
-+
-+ // Sanity check group count. Max is 16 on BSD.
-+ if n < 0 || n > 1000 {
-+ return nil, EINVAL
-+ }
-+
-+ a := make([]_Gid_t, n)
-+ n, err = getgroups(n, &a[0])
-+ if err != nil {
-+ return nil, err
-+ }
-+ gids = make([]int, n)
-+ for i, v := range a[0:n] {
-+ gids[i] = int(v)
-+ }
-+ return
-+}
-+
-+func Setgroups(gids []int) (err error) {
-+ if len(gids) == 0 {
-+ return setgroups(0, nil)
-+ }
-+
-+ a := make([]_Gid_t, len(gids))
-+ for i, v := range gids {
-+ a[i] = _Gid_t(v)
-+ }
-+ return setgroups(len(a), &a[0])
-+}
-+
-+/*
-+ * Socket
-+ */
-+
-+//sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
-+
-+func Accept(fd int) (nfd int, sa Sockaddr, err error) {
-+ var rsa RawSockaddrAny
-+ var len _Socklen = SizeofSockaddrAny
-+ nfd, err = accept(fd, &rsa, &len)
-+ if nfd == -1 {
-+ return
-+ }
-+ sa, err = anyToSockaddr(fd, &rsa)
-+ if err != nil {
-+ Close(nfd)
-+ nfd = 0
-+ }
-+ return
-+}
-+
-+func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) {
-+ // Recvmsg not implemented on AIX
-+ sa := new(SockaddrUnix)
-+ return -1, -1, -1, sa, ENOSYS
-+}
-+
-+func Sendmsg(fd int, p, oob []byte, to Sockaddr, flags int) (err error) {
-+ _, err = SendmsgN(fd, p, oob, to, flags)
-+ return
-+}
-+
-+func SendmsgN(fd int, p, oob []byte, to Sockaddr, flags int) (n int, err error) {
-+ // SendmsgN not implemented on AIX
-+ return -1, ENOSYS
-+}
-+
-+func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
-+ switch rsa.Addr.Family {
-+
-+ case AF_UNIX:
-+ pp := (*RawSockaddrUnix)(unsafe.Pointer(rsa))
-+ sa := new(SockaddrUnix)
-+
-+ // Some versions of AIX have a bug in getsockname (see IV78655).
-+ // We can't rely on sa.Len being set correctly.
-+ n := SizeofSockaddrUnix - 3 // subtract leading Family, Len, terminating NUL.
-+ for i := 0; i < n; i++ {
-+ if pp.Path[i] == 0 {
-+ n = i
-+ break
-+ }
-+ }
-+
-+ bytes := (*[10000]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
-+ sa.Name = string(bytes)
-+ return sa, nil
-+
-+ case AF_INET:
-+ pp := (*RawSockaddrInet4)(unsafe.Pointer(rsa))
-+ sa := new(SockaddrInet4)
-+ p := (*[2]byte)(unsafe.Pointer(&pp.Port))
-+ sa.Port = int(p[0])<<8 + int(p[1])
-+ for i := 0; i < len(sa.Addr); i++ {
-+ sa.Addr[i] = pp.Addr[i]
-+ }
-+ return sa, nil
-+
-+ case AF_INET6:
-+ pp := (*RawSockaddrInet6)(unsafe.Pointer(rsa))
-+ sa := new(SockaddrInet6)
-+ p := (*[2]byte)(unsafe.Pointer(&pp.Port))
-+ sa.Port = int(p[0])<<8 + int(p[1])
-+ sa.ZoneId = pp.Scope_id
-+ for i := 0; i < len(sa.Addr); i++ {
-+ sa.Addr[i] = pp.Addr[i]
-+ }
-+ return sa, nil
-+ }
-+ return nil, EAFNOSUPPORT
-+}
-+
-+func Gettimeofday(tv *Timeval) (err error) {
-+ err = gettimeofday(tv, nil)
-+ return
-+}
-+
-+func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-+ if raceenabled {
-+ raceReleaseMerge(unsafe.Pointer(&ioSync))
-+ }
-+ return sendfile(outfd, infd, offset, count)
-+}
-+
-+// TODO
-+func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-+ return -1, ENOSYS
-+}
-+
-+func direntIno(buf []byte) (uint64, bool) {
-+ return readInt(buf, unsafe.Offsetof(Dirent{}.Ino), unsafe.Sizeof(Dirent{}.Ino))
-+}
-+
-+func direntReclen(buf []byte) (uint64, bool) {
-+ return readInt(buf, unsafe.Offsetof(Dirent{}.Reclen), unsafe.Sizeof(Dirent{}.Reclen))
-+}
-+
-+func direntNamlen(buf []byte) (uint64, bool) {
-+ reclen, ok := direntReclen(buf)
-+ if !ok {
-+ return 0, false
-+ }
-+ return reclen - uint64(unsafe.Offsetof(Dirent{}.Name)), true
-+}
-+
-+//sys getdirent(fd int, buf []byte) (n int, err error)
-+func Getdents(fd int, buf []byte) (n int, err error) {
-+ return getdirent(fd, buf)
-+}
-+
-+//sys wait4(pid Pid_t, status *_C_int, options int, rusage *Rusage) (wpid Pid_t, err error)
-+func Wait4(pid int, wstatus *WaitStatus, options int, rusage *Rusage) (wpid int, err error) {
-+ var status _C_int
-+ var r Pid_t
-+ err = ERESTART
-+ // AIX wait4 may return with ERESTART errno, while the processus is still
-+ // active.
-+ for err == ERESTART {
-+ r, err = wait4(Pid_t(pid), &status, options, rusage)
-+ }
-+ wpid = int(r)
-+ if wstatus != nil {
-+ *wstatus = WaitStatus(status)
-+ }
-+ return
-+}
-+
-+/*
-+ * Wait
-+ */
-+
-+type WaitStatus uint32
-+
-+func (w WaitStatus) Stopped() bool { return w&0x40 != 0 }
-+func (w WaitStatus) StopSignal() Signal {
-+ if !w.Stopped() {
-+ return -1
-+ }
-+ return Signal(w>>8) & 0xFF
-+}
-+
-+func (w WaitStatus) Exited() bool { return w&0xFF == 0 }
-+func (w WaitStatus) ExitStatus() int {
-+ if !w.Exited() {
-+ return -1
-+ }
-+ return int((w >> 8) & 0xFF)
-+}
-+
-+func (w WaitStatus) Signaled() bool { return w&0x40 == 0 && w&0xFF != 0 }
-+func (w WaitStatus) Signal() Signal {
-+ if !w.Signaled() {
-+ return -1
-+ }
-+ return Signal(w>>16) & 0xFF
-+}
-+
-+func (w WaitStatus) Continued() bool { return w&0x01000000 != 0 }
-+
-+func (w WaitStatus) CoreDump() bool { return w&0x80 == 0x80 }
-+
-+func (w WaitStatus) TrapCause() int { return -1 }
-+
-+//sys ioctl(fd int, req uint, arg uintptr) (err error)
-+
-+// fcntl must never be called with cmd=F_DUP2FD because it doesn't work on AIX
-+// There is no way to create a custom fcntl and to keep //sys fcntl easily,
-+// Therefore, the programmer must call dup2 instead of fcntl in this case.
-+
-+// FcntlInt performs a fcntl syscall on fd with the provided command and argument.
-+//sys FcntlInt(fd uintptr, cmd int, arg int) (r int,err error) = fcntl
-+
-+// FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command.
-+//sys FcntlFlock(fd uintptr, cmd int, lk *Flock_t) (err error) = fcntl
-+
-+//sys fcntl(fd int, cmd int, arg int) (val int, err error)
-+
-+/*
-+ * Direct access
-+ */
-+
-+//sys Acct(path string) (err error)
-+//sys Chdir(path string) (err error)
-+//sys Chroot(path string) (err error)
-+//sys Close(fd int) (err error)
-+//sys Dup(oldfd int) (fd int, err error)
-+//sys Exit(code int)
-+//sys Faccessat(dirfd int, path string, mode uint32, flags int) (err error)
-+//sys Fchdir(fd int) (err error)
-+//sys Fchmod(fd int, mode uint32) (err error)
-+//sys Fchmodat(dirfd int, path string, mode uint32, flags int) (err error)
-+//sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
-+//sys Fdatasync(fd int) (err error)
-+//sys Fsync(fd int) (err error)
-+// readdir_r
-+//sysnb Getpgid(pid int) (pgid int, err error)
-+
-+//sys Getpgrp() (pid int)
-+
-+//sysnb Getpid() (pid int)
-+//sysnb Getppid() (ppid int)
-+//sys Getpriority(which int, who int) (prio int, err error)
-+//sysnb Getrusage(who int, rusage *Rusage) (err error)
-+//sysnb Getsid(pid int) (sid int, err error)
-+//sysnb Kill(pid int, sig Signal) (err error)
-+//sys Klogctl(typ int, buf []byte) (n int, err error) = syslog
-+//sys Mkdir(dirfd int, path string, mode uint32) (err error)
-+//sys Mkdirat(dirfd int, path string, mode uint32) (err error)
-+//sys Mkfifo(path string, mode uint32) (err error)
-+//sys Mknod(path string, mode uint32, dev int) (err error)
-+//sys Mknodat(dirfd int, path string, mode uint32, dev int) (err error)
-+//sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
-+//sys Open(path string, mode int, perm uint32) (fd int, err error) = open64
-+//sys Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error)
-+//sys read(fd int, p []byte) (n int, err error)
-+//sys Readlink(path string, buf []byte) (n int, err error)
-+//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
-+//sys Setdomainname(p []byte) (err error)
-+//sys Sethostname(p []byte) (err error)
-+//sysnb Setpgid(pid int, pgid int) (err error)
-+//sysnb Setsid() (pid int, err error)
-+//sysnb Settimeofday(tv *Timeval) (err error)
-+
-+//sys Setuid(uid int) (err error)
-+//sys Setgid(uid int) (err error)
-+
-+//sys Setpriority(which int, who int, prio int) (err error)
-+//sys Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error)
-+//sys Sync()
-+//sysnb Times(tms *Tms) (ticks uintptr, err error)
-+//sysnb Umask(mask int) (oldmask int)
-+//sysnb Uname(buf *Utsname) (err error)
-+//sys Unlink(path string) (err error)
-+//sys Unlinkat(dirfd int, path string, flags int) (err error)
-+//sys Ustat(dev int, ubuf *Ustat_t) (err error)
-+//sys write(fd int, p []byte) (n int, err error)
-+//sys readlen(fd int, p *byte, np int) (n int, err error) = read
-+//sys writelen(fd int, p *byte, np int) (n int, err error) = write
-+
-+//sys Dup2(oldfd int, newfd int) (err error)
-+//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = posix_fadvise64
-+//sys Fchown(fd int, uid int, gid int) (err error)
-+//sys fstat(fd int, stat *Stat_t) (err error)
-+//sys fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = fstatat
-+//sys Fstatfs(fd int, buf *Statfs_t) (err error)
-+//sys Ftruncate(fd int, length int64) (err error)
-+//sysnb Getegid() (egid int)
-+//sysnb Geteuid() (euid int)
-+//sysnb Getgid() (gid int)
-+//sysnb Getuid() (uid int)
-+//sys Lchown(path string, uid int, gid int) (err error)
-+//sys Listen(s int, n int) (err error)
-+//sys lstat(path string, stat *Stat_t) (err error)
-+//sys Pause() (err error)
-+//sys Pread(fd int, p []byte, offset int64) (n int, err error) = pread64
-+//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = pwrite64
-+//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
-+//sys Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error)
-+//sysnb Setregid(rgid int, egid int) (err error)
-+//sysnb Setreuid(ruid int, euid int) (err error)
-+//sys Shutdown(fd int, how int) (err error)
-+//sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error)
-+//sys stat(path string, statptr *Stat_t) (err error)
-+//sys Statfs(path string, buf *Statfs_t) (err error)
-+//sys Truncate(path string, length int64) (err error)
-+
-+//sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
-+//sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
-+//sysnb getgroups(n int, list *_Gid_t) (nn int, err error)
-+//sysnb setgroups(n int, list *_Gid_t) (err error)
-+//sys getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error)
-+//sys setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error)
-+//sysnb socket(domain int, typ int, proto int) (fd int, err error)
-+//sysnb socketpair(domain int, typ int, proto int, fd *[2]int32) (err error)
-+//sysnb getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error)
-+//sysnb getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error)
-+//sys recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error)
-+//sys sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error)
-+
-+// In order to use msghdr structure with Control, Controllen, nrecvmsg and nsendmsg must be used.
-+//sys recvmsg(s int, msg *Msghdr, flags int) (n int, err error) = nrecvmsg
-+//sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error) = nsendmsg
-+
-+//sys munmap(addr uintptr, length uintptr) (err error)
-+
-+var mapper = &mmapper{
-+ active: make(map[*byte][]byte),
-+ mmap: mmap,
-+ munmap: munmap,
-+}
-+
-+func Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, err error) {
-+ return mapper.Mmap(fd, offset, length, prot, flags)
-+}
-+
-+func Munmap(b []byte) (err error) {
-+ return mapper.Munmap(b)
-+}
-+
-+//sys Madvise(b []byte, advice int) (err error)
-+//sys Mprotect(b []byte, prot int) (err error)
-+//sys Mlock(b []byte) (err error)
-+//sys Mlockall(flags int) (err error)
-+//sys Msync(b []byte, flags int) (err error)
-+//sys Munlock(b []byte) (err error)
-+//sys Munlockall() (err error)
-+
-+//sysnb pipe(p *[2]_C_int) (err error)
-+
-+func Pipe(p []int) (err error) {
-+ if len(p) != 2 {
-+ return EINVAL
-+ }
-+ var pp [2]_C_int
-+ err = pipe(&pp)
-+ p[0] = int(pp[0])
-+ p[1] = int(pp[1])
-+ return
-+}
-+
-+//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error)
-+
-+func Poll(fds []PollFd, timeout int) (n int, err error) {
-+ if len(fds) == 0 {
-+ return poll(nil, 0, timeout)
-+ }
-+ return poll(&fds[0], len(fds), timeout)
-+}
-+
-+//sys gettimeofday(tv *Timeval, tzp *Timezone) (err error)
-+//sysnb Time(t *Time_t) (tt Time_t, err error)
-+//sys Utime(path string, buf *Utimbuf) (err error)
-+
-+//sys Getsystemcfg(label int) (n uint64)
-+
-+//sys umount(target string) (err error)
-+func Unmount(target string, flags int) (err error) {
-+ if flags != 0 {
-+ // AIX doesn't have any flags for umount.
-+ return ENOSYS
-+ }
-+ return umount(target)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go b/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go
-new file mode 100644
-index 00000000..b3c8e330
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go
-@@ -0,0 +1,54 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build aix
-+// +build ppc
-+
-+package unix
-+
-+//sysnb Getrlimit(resource int, rlim *Rlimit) (err error) = getrlimit64
-+//sysnb Setrlimit(resource int, rlim *Rlimit) (err error) = setrlimit64
-+//sys Seek(fd int, offset int64, whence int) (off int64, err error) = lseek64
-+
-+//sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
-+
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
-+}
-+
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: int32(sec), Usec: int32(usec)}
-+}
-+
-+func (iov *Iovec) SetLen(length int) {
-+ iov.Len = uint32(length)
-+}
-+
-+func (msghdr *Msghdr) SetControllen(length int) {
-+ msghdr.Controllen = uint32(length)
-+}
-+
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
-+}
-+
-+func (cmsg *Cmsghdr) SetLen(length int) {
-+ cmsg.Len = uint32(length)
-+}
-+
-+func Fstat(fd int, stat *Stat_t) error {
-+ return fstat(fd, stat)
-+}
-+
-+func Fstatat(dirfd int, path string, stat *Stat_t, flags int) error {
-+ return fstatat(dirfd, path, stat, flags)
-+}
-+
-+func Lstat(path string, stat *Stat_t) error {
-+ return lstat(path, stat)
-+}
-+
-+func Stat(path string, statptr *Stat_t) error {
-+ return stat(path, statptr)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go b/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go
-new file mode 100644
-index 00000000..9a6e0241
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go
-@@ -0,0 +1,85 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build aix
-+// +build ppc64
-+
-+package unix
-+
-+//sysnb Getrlimit(resource int, rlim *Rlimit) (err error)
-+//sysnb Setrlimit(resource int, rlim *Rlimit) (err error)
-+//sys Seek(fd int, offset int64, whence int) (off int64, err error) = lseek
-+
-+//sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) = mmap64
-+
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
-+}
-+
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: int64(sec), Usec: int32(usec)}
-+}
-+
-+func (iov *Iovec) SetLen(length int) {
-+ iov.Len = uint64(length)
-+}
-+
-+func (msghdr *Msghdr) SetControllen(length int) {
-+ msghdr.Controllen = uint32(length)
-+}
-+
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
-+}
-+
-+func (cmsg *Cmsghdr) SetLen(length int) {
-+ cmsg.Len = uint32(length)
-+}
-+
-+// In order to only have Timespec structure, type of Stat_t's fields
-+// Atim, Mtim and Ctim is changed from StTimespec to Timespec during
-+// ztypes generation.
-+// On ppc64, Timespec.Nsec is an int64 while StTimespec.Nsec is an
-+// int32, so the fields' value must be modified.
-+func fixStatTimFields(stat *Stat_t) {
-+ stat.Atim.Nsec >>= 32
-+ stat.Mtim.Nsec >>= 32
-+ stat.Ctim.Nsec >>= 32
-+}
-+
-+func Fstat(fd int, stat *Stat_t) error {
-+ err := fstat(fd, stat)
-+ if err != nil {
-+ return err
-+ }
-+ fixStatTimFields(stat)
-+ return nil
-+}
-+
-+func Fstatat(dirfd int, path string, stat *Stat_t, flags int) error {
-+ err := fstatat(dirfd, path, stat, flags)
-+ if err != nil {
-+ return err
-+ }
-+ fixStatTimFields(stat)
-+ return nil
-+}
-+
-+func Lstat(path string, stat *Stat_t) error {
-+ err := lstat(path, stat)
-+ if err != nil {
-+ return err
-+ }
-+ fixStatTimFields(stat)
-+ return nil
-+}
-+
-+func Stat(path string, statptr *Stat_t) error {
-+ err := stat(path, statptr)
-+ if err != nil {
-+ return err
-+ }
-+ fixStatTimFields(statptr)
-+ return nil
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_bsd.go b/vendor/golang.org/x/sys/unix/syscall_bsd.go
-index c2846b32..68605db6 100644
---- a/vendor/golang.org/x/sys/unix/syscall_bsd.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_bsd.go
-@@ -34,7 +34,7 @@ func Getgroups() (gids []int, err error) {
- return nil, nil
- }
-
-- // Sanity check group count. Max is 16 on BSD.
-+ // Sanity check group count. Max is 16 on BSD.
- if n < 0 || n > 1000 {
- return nil, EINVAL
- }
-@@ -63,15 +63,6 @@ func Setgroups(gids []int) (err error) {
- return setgroups(len(a), &a[0])
- }
-
--func ReadDirent(fd int, buf []byte) (n int, err error) {
-- // Final argument is (basep *uintptr) and the syscall doesn't take nil.
-- // 64 bits should be enough. (32 bits isn't even on 386). Since the
-- // actual system call is getdirentries64, 64 is a good guess.
-- // TODO(rsc): Can we use a single global basep for all calls?
-- var base = (*uintptr)(unsafe.Pointer(new(uint64)))
-- return Getdirentries(fd, buf, base)
--}
--
- // Wait status is 7 bits at bottom, either 0 (exited),
- // 0x7F (stopped), or a signal number that caused an exit.
- // The 0x80 bit is whether there was a core dump.
-@@ -86,6 +77,7 @@ const (
- shift = 8
-
- exited = 0
-+ killed = 9
- stopped = 0x7F
- )
-
-@@ -112,6 +104,8 @@ func (w WaitStatus) CoreDump() bool { return w.Signaled() && w&core != 0 }
-
- func (w WaitStatus) Stopped() bool { return w&mask == stopped && syscall.Signal(w>>shift) != SIGSTOP }
-
-+func (w WaitStatus) Killed() bool { return w&mask == killed && syscall.Signal(w>>shift) != SIGKILL }
-+
- func (w WaitStatus) Continued() bool { return w&mask == stopped && syscall.Signal(w>>shift) == SIGSTOP }
-
- func (w WaitStatus) StopSignal() syscall.Signal {
-@@ -206,7 +200,7 @@ func (sa *SockaddrDatalink) sockaddr() (unsafe.Pointer, _Socklen, error) {
- return unsafe.Pointer(&sa.raw), SizeofSockaddrDatalink, nil
- }
-
--func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
-+func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
- switch rsa.Addr.Family {
- case AF_LINK:
- pp := (*RawSockaddrDatalink)(unsafe.Pointer(rsa))
-@@ -243,7 +237,7 @@ func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
- break
- }
- }
-- bytes := (*[10000]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
-+ bytes := (*[len(pp.Path)]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
- sa.Name = string(bytes)
- return sa, nil
-
-@@ -286,7 +280,7 @@ func Accept(fd int) (nfd int, sa Sockaddr, err error) {
- Close(nfd)
- return 0, nil, ECONNABORTED
- }
-- sa, err = anyToSockaddr(&rsa)
-+ sa, err = anyToSockaddr(fd, &rsa)
- if err != nil {
- Close(nfd)
- nfd = 0
-@@ -306,50 +300,21 @@ func Getsockname(fd int) (sa Sockaddr, err error) {
- rsa.Addr.Family = AF_UNIX
- rsa.Addr.Len = SizeofSockaddrUnix
- }
-- return anyToSockaddr(&rsa)
-+ return anyToSockaddr(fd, &rsa)
- }
-
- //sysnb socketpair(domain int, typ int, proto int, fd *[2]int32) (err error)
-
--func GetsockoptByte(fd, level, opt int) (value byte, err error) {
-- var n byte
-- vallen := _Socklen(1)
-- err = getsockopt(fd, level, opt, unsafe.Pointer(&n), &vallen)
-- return n, err
--}
--
--func GetsockoptInet4Addr(fd, level, opt int) (value [4]byte, err error) {
-- vallen := _Socklen(4)
-- err = getsockopt(fd, level, opt, unsafe.Pointer(&value[0]), &vallen)
-- return value, err
--}
--
--func GetsockoptIPMreq(fd, level, opt int) (*IPMreq, error) {
-- var value IPMreq
-- vallen := _Socklen(SizeofIPMreq)
-- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
-- return &value, err
--}
--
--func GetsockoptIPv6Mreq(fd, level, opt int) (*IPv6Mreq, error) {
-- var value IPv6Mreq
-- vallen := _Socklen(SizeofIPv6Mreq)
-- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
-- return &value, err
--}
--
--func GetsockoptIPv6MTUInfo(fd, level, opt int) (*IPv6MTUInfo, error) {
-- var value IPv6MTUInfo
-- vallen := _Socklen(SizeofIPv6MTUInfo)
-- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
-- return &value, err
--}
--
--func GetsockoptICMPv6Filter(fd, level, opt int) (*ICMPv6Filter, error) {
-- var value ICMPv6Filter
-- vallen := _Socklen(SizeofICMPv6Filter)
-- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
-- return &value, err
-+// GetsockoptString returns the string value of the socket option opt for the
-+// socket associated with fd at the given socket level.
-+func GetsockoptString(fd, level, opt int) (string, error) {
-+ buf := make([]byte, 256)
-+ vallen := _Socklen(len(buf))
-+ err := getsockopt(fd, level, opt, unsafe.Pointer(&buf[0]), &vallen)
-+ if err != nil {
-+ return "", err
-+ }
-+ return string(buf[:vallen-1]), nil
- }
-
- //sys recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error)
-@@ -385,7 +350,7 @@ func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from
- recvflags = int(msg.Flags)
- // source address is only specified if the socket is unconnected
- if rsa.Addr.Family != AF_UNSPEC {
-- from, err = anyToSockaddr(&rsa)
-+ from, err = anyToSockaddr(fd, &rsa)
- }
- return
- }
-@@ -448,8 +413,6 @@ func Kevent(kq int, changes, events []Kevent_t, timeout *Timespec) (n int, err e
- return kevent(kq, change, len(changes), event, len(events), timeout)
- }
-
--//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL
--
- // sysctlmib translates name to mib number and appends any additional args.
- func sysctlmib(name string, args ...int) ([]_C_int, error) {
- // Translate name to mib number.
-@@ -547,6 +510,23 @@ func SysctlRaw(name string, args ...int) ([]byte, error) {
- return buf[:n], nil
- }
-
-+func SysctlClockinfo(name string) (*Clockinfo, error) {
-+ mib, err := sysctlmib(name)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ n := uintptr(SizeofClockinfo)
-+ var ci Clockinfo
-+ if err := sysctl(mib, (*byte)(unsafe.Pointer(&ci)), &n, nil, 0); err != nil {
-+ return nil, err
-+ }
-+ if n != SizeofClockinfo {
-+ return nil, EIO
-+ }
-+ return &ci, nil
-+}
-+
- //sys utimes(path string, timeval *[2]Timeval) (err error)
-
- func Utimes(path string, tv []Timeval) error {
-@@ -570,7 +550,12 @@ func UtimesNano(path string, ts []Timespec) error {
- if len(ts) != 2 {
- return EINVAL
- }
-- err := utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
-+ // Darwin setattrlist can set nanosecond timestamps
-+ err := setattrlistTimes(path, ts, 0)
-+ if err != ENOSYS {
-+ return err
-+ }
-+ err = utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
- if err != ENOSYS {
- return err
- }
-@@ -590,6 +575,10 @@ func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error {
- if len(ts) != 2 {
- return EINVAL
- }
-+ err := setattrlistTimes(path, ts, flags)
-+ if err != ENOSYS {
-+ return err
-+ }
- return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), flags)
- }
-
-@@ -605,7 +594,14 @@ func Futimes(fd int, tv []Timeval) error {
- return futimes(fd, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
- }
-
--//sys fcntl(fd int, cmd int, arg int) (val int, err error)
-+//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error)
-+
-+func Poll(fds []PollFd, timeout int) (n int, err error) {
-+ if len(fds) == 0 {
-+ return poll(nil, 0, timeout)
-+ }
-+ return poll(&fds[0], len(fds), timeout)
-+}
-
- // TODO: wrap
- // Acct(name nil-string) (err error)
-diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin.1_12.go b/vendor/golang.org/x/sys/unix/syscall_darwin.1_12.go
-new file mode 100644
-index 00000000..6a15cba6
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_darwin.1_12.go
-@@ -0,0 +1,29 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build darwin,go1.12,!go1.13
-+
-+package unix
-+
-+import (
-+ "unsafe"
-+)
-+
-+func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-+ // To implement this using libSystem we'd need syscall_syscallPtr for
-+ // fdopendir. However, syscallPtr was only added in Go 1.13, so we fall
-+ // back to raw syscalls for this func on Go 1.12.
-+ var p unsafe.Pointer
-+ if len(buf) > 0 {
-+ p = unsafe.Pointer(&buf[0])
-+ } else {
-+ p = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(p), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ return n, errnoErr(e1)
-+ }
-+ return n, nil
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go b/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go
-new file mode 100644
-index 00000000..f911617b
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go
-@@ -0,0 +1,101 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build darwin,go1.13
-+
-+package unix
-+
-+import "unsafe"
-+
-+//sys closedir(dir uintptr) (err error)
-+//sys readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno)
-+
-+func fdopendir(fd int) (dir uintptr, err error) {
-+ r0, _, e1 := syscall_syscallPtr(funcPC(libc_fdopendir_trampoline), uintptr(fd), 0, 0)
-+ dir = uintptr(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fdopendir_trampoline()
-+
-+//go:linkname libc_fdopendir libc_fdopendir
-+//go:cgo_import_dynamic libc_fdopendir fdopendir "/usr/lib/libSystem.B.dylib"
-+
-+func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-+ // Simulate Getdirentries using fdopendir/readdir_r/closedir.
-+ // We store the number of entries to skip in the seek
-+ // offset of fd. See issue #31368.
-+ // It's not the full required semantics, but should handle the case
-+ // of calling Getdirentries or ReadDirent repeatedly.
-+ // It won't handle assigning the results of lseek to *basep, or handle
-+ // the directory being edited underfoot.
-+ skip, err := Seek(fd, 0, 1 /* SEEK_CUR */)
-+ if err != nil {
-+ return 0, err
-+ }
-+
-+ // We need to duplicate the incoming file descriptor
-+ // because the caller expects to retain control of it, but
-+ // fdopendir expects to take control of its argument.
-+ // Just Dup'ing the file descriptor is not enough, as the
-+ // result shares underlying state. Use Openat to make a really
-+ // new file descriptor referring to the same directory.
-+ fd2, err := Openat(fd, ".", O_RDONLY, 0)
-+ if err != nil {
-+ return 0, err
-+ }
-+ d, err := fdopendir(fd2)
-+ if err != nil {
-+ Close(fd2)
-+ return 0, err
-+ }
-+ defer closedir(d)
-+
-+ var cnt int64
-+ for {
-+ var entry Dirent
-+ var entryp *Dirent
-+ e := readdir_r(d, &entry, &entryp)
-+ if e != 0 {
-+ return n, errnoErr(e)
-+ }
-+ if entryp == nil {
-+ break
-+ }
-+ if skip > 0 {
-+ skip--
-+ cnt++
-+ continue
-+ }
-+ reclen := int(entry.Reclen)
-+ if reclen > len(buf) {
-+ // Not enough room. Return for now.
-+ // The counter will let us know where we should start up again.
-+ // Note: this strategy for suspending in the middle and
-+ // restarting is O(n^2) in the length of the directory. Oh well.
-+ break
-+ }
-+ // Copy entry into return buffer.
-+ s := struct {
-+ ptr unsafe.Pointer
-+ siz int
-+ cap int
-+ }{ptr: unsafe.Pointer(&entry), siz: reclen, cap: reclen}
-+ copy(buf, *(*[]byte)(unsafe.Pointer(&s)))
-+ buf = buf[reclen:]
-+ n += reclen
-+ cnt++
-+ }
-+ // Set the seek offset of the input fd to record
-+ // how many files we've already returned.
-+ _, err = Seek(fd, cnt, 0 /* SEEK_SET */)
-+ if err != nil {
-+ return n, err
-+ }
-+
-+ return n, nil
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin.go b/vendor/golang.org/x/sys/unix/syscall_darwin.go
-index ad74a11f..9a5a6ee5 100644
---- a/vendor/golang.org/x/sys/unix/syscall_darwin.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_darwin.go
-@@ -13,7 +13,7 @@
- package unix
-
- import (
-- errorspkg "errors"
-+ "errors"
- "syscall"
- "unsafe"
- )
-@@ -36,6 +36,7 @@ func Getwd() (string, error) {
- return "", ENOTSUP
- }
-
-+// SockaddrDatalink implements the Sockaddr interface for AF_LINK type sockets.
- type SockaddrDatalink struct {
- Len uint8
- Family uint8
-@@ -54,7 +55,7 @@ func nametomib(name string) (mib []_C_int, err error) {
-
- // NOTE(rsc): It seems strange to set the buffer to have
- // size CTL_MAXNAME+2 but use only CTL_MAXNAME
-- // as the size. I don't know why the +2 is here, but the
-+ // as the size. I don't know why the +2 is here, but the
- // kernel uses +2 for its own implementation of this function.
- // I am scared that if we don't include the +2 here, the kernel
- // will silently write 2 words farther than we specify
-@@ -88,7 +89,6 @@ func direntNamlen(buf []byte) (uint64, bool) {
- return readInt(buf, unsafe.Offsetof(Dirent{}.Namlen), unsafe.Sizeof(Dirent{}.Namlen))
- }
-
--//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error)
- func PtraceAttach(pid int) (err error) { return ptrace(PT_ATTACH, pid, 0, 0) }
- func PtraceDetach(pid int) (err error) { return ptrace(PT_DETACH, pid, 0, 0) }
-
-@@ -109,7 +109,7 @@ type attrList struct {
-
- func getAttrList(path string, attrList attrList, attrBuf []byte, options uint) (attrs [][]byte, err error) {
- if len(attrBuf) < 4 {
-- return nil, errorspkg.New("attrBuf too small")
-+ return nil, errors.New("attrBuf too small")
- }
- attrList.bitmapCount = attrBitMapCount
-
-@@ -119,17 +119,8 @@ func getAttrList(path string, attrList attrList, attrBuf []byte, options uint) (
- return nil, err
- }
-
-- _, _, e1 := Syscall6(
-- SYS_GETATTRLIST,
-- uintptr(unsafe.Pointer(_p0)),
-- uintptr(unsafe.Pointer(&attrList)),
-- uintptr(unsafe.Pointer(&attrBuf[0])),
-- uintptr(len(attrBuf)),
-- uintptr(options),
-- 0,
-- )
-- if e1 != 0 {
-- return nil, e1
-+ if err := getattrlist(_p0, unsafe.Pointer(&attrList), unsafe.Pointer(&attrBuf[0]), uintptr(len(attrBuf)), int(options)); err != nil {
-+ return nil, err
- }
- size := *(*uint32)(unsafe.Pointer(&attrBuf[0]))
-
-@@ -145,12 +136,12 @@ func getAttrList(path string, attrList attrList, attrBuf []byte, options uint) (
- for i := uint32(0); int(i) < len(dat); {
- header := dat[i:]
- if len(header) < 8 {
-- return attrs, errorspkg.New("truncated attribute header")
-+ return attrs, errors.New("truncated attribute header")
- }
- datOff := *(*int32)(unsafe.Pointer(&header[0]))
- attrLen := *(*uint32)(unsafe.Pointer(&header[4]))
- if datOff < 0 || uint32(datOff)+attrLen > uint32(len(dat)) {
-- return attrs, errorspkg.New("truncated results; attrBuf too small")
-+ return attrs, errors.New("truncated results; attrBuf too small")
- }
- end := uint32(datOff) + attrLen
- attrs = append(attrs, dat[datOff:end])
-@@ -162,6 +153,8 @@ func getAttrList(path string, attrList attrList, attrBuf []byte, options uint) (
- return
- }
-
-+//sys getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error)
-+
- //sysnb pipe() (r int, w int, err error)
-
- func Pipe(p []int) (err error) {
-@@ -179,14 +172,141 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- _p0 = unsafe.Pointer(&buf[0])
- bufsize = unsafe.Sizeof(Statfs_t{}) * uintptr(len(buf))
- }
-- r0, _, e1 := Syscall(SYS_GETFSSTAT64, uintptr(_p0), bufsize, uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = e1
-+ return getfsstat(_p0, bufsize, flags)
-+}
-+
-+func xattrPointer(dest []byte) *byte {
-+ // It's only when dest is set to NULL that the OS X implementations of
-+ // getxattr() and listxattr() return the current sizes of the named attributes.
-+ // An empty byte array is not sufficient. To maintain the same behaviour as the
-+ // linux implementation, we wrap around the system calls and pass in NULL when
-+ // dest is empty.
-+ var destp *byte
-+ if len(dest) > 0 {
-+ destp = &dest[0]
- }
-- return
-+ return destp
-+}
-+
-+//sys getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error)
-+
-+func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-+ return getxattr(path, attr, xattrPointer(dest), len(dest), 0, 0)
-+}
-+
-+func Lgetxattr(link string, attr string, dest []byte) (sz int, err error) {
-+ return getxattr(link, attr, xattrPointer(dest), len(dest), 0, XATTR_NOFOLLOW)
-+}
-+
-+//sys fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error)
-+
-+func Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-+ return fgetxattr(fd, attr, xattrPointer(dest), len(dest), 0, 0)
-+}
-+
-+//sys setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error)
-+
-+func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-+ // The parameters for the OS X implementation vary slightly compared to the
-+ // linux system call, specifically the position parameter:
-+ //
-+ // linux:
-+ // int setxattr(
-+ // const char *path,
-+ // const char *name,
-+ // const void *value,
-+ // size_t size,
-+ // int flags
-+ // );
-+ //
-+ // darwin:
-+ // int setxattr(
-+ // const char *path,
-+ // const char *name,
-+ // void *value,
-+ // size_t size,
-+ // u_int32_t position,
-+ // int options
-+ // );
-+ //
-+ // position specifies the offset within the extended attribute. In the
-+ // current implementation, only the resource fork extended attribute makes
-+ // use of this argument. For all others, position is reserved. We simply
-+ // default to setting it to zero.
-+ return setxattr(path, attr, xattrPointer(data), len(data), 0, flags)
-+}
-+
-+func Lsetxattr(link string, attr string, data []byte, flags int) (err error) {
-+ return setxattr(link, attr, xattrPointer(data), len(data), 0, flags|XATTR_NOFOLLOW)
-+}
-+
-+//sys fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error)
-+
-+func Fsetxattr(fd int, attr string, data []byte, flags int) (err error) {
-+ return fsetxattr(fd, attr, xattrPointer(data), len(data), 0, 0)
-+}
-+
-+//sys removexattr(path string, attr string, options int) (err error)
-+
-+func Removexattr(path string, attr string) (err error) {
-+ // We wrap around and explicitly zero out the options provided to the OS X
-+ // implementation of removexattr, we do so for interoperability with the
-+ // linux variant.
-+ return removexattr(path, attr, 0)
-+}
-+
-+func Lremovexattr(link string, attr string) (err error) {
-+ return removexattr(link, attr, XATTR_NOFOLLOW)
-+}
-+
-+//sys fremovexattr(fd int, attr string, options int) (err error)
-+
-+func Fremovexattr(fd int, attr string) (err error) {
-+ return fremovexattr(fd, attr, 0)
-+}
-+
-+//sys listxattr(path string, dest *byte, size int, options int) (sz int, err error)
-+
-+func Listxattr(path string, dest []byte) (sz int, err error) {
-+ return listxattr(path, xattrPointer(dest), len(dest), 0)
- }
-
-+func Llistxattr(link string, dest []byte) (sz int, err error) {
-+ return listxattr(link, xattrPointer(dest), len(dest), XATTR_NOFOLLOW)
-+}
-+
-+//sys flistxattr(fd int, dest *byte, size int, options int) (sz int, err error)
-+
-+func Flistxattr(fd int, dest []byte) (sz int, err error) {
-+ return flistxattr(fd, xattrPointer(dest), len(dest), 0)
-+}
-+
-+func setattrlistTimes(path string, times []Timespec, flags int) error {
-+ _p0, err := BytePtrFromString(path)
-+ if err != nil {
-+ return err
-+ }
-+
-+ var attrList attrList
-+ attrList.bitmapCount = ATTR_BIT_MAP_COUNT
-+ attrList.CommonAttr = ATTR_CMN_MODTIME | ATTR_CMN_ACCTIME
-+
-+ // order is mtime, atime: the opposite of Chtimes
-+ attributes := [2]Timespec{times[1], times[0]}
-+ options := 0
-+ if flags&AT_SYMLINK_NOFOLLOW != 0 {
-+ options |= FSOPT_NOFOLLOW
-+ }
-+ return setattrlist(
-+ _p0,
-+ unsafe.Pointer(&attrList),
-+ unsafe.Pointer(&attributes),
-+ unsafe.Sizeof(attributes),
-+ options)
-+}
-+
-+//sys setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error)
-+
- func utimensat(dirfd int, path string, times *[2]Timespec, flags int) error {
- // Darwin doesn't support SYS_UTIMENSAT
- return ENOSYS
-@@ -196,49 +316,74 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) error {
- * Wrapped
- */
-
-+//sys fcntl(fd int, cmd int, arg int) (val int, err error)
-+
- //sys kill(pid int, signum int, posix int) (err error)
-
- func Kill(pid int, signum syscall.Signal) (err error) { return kill(pid, int(signum), 1) }
-
- //sys ioctl(fd int, req uint, arg uintptr) (err error)
-
--// ioctl itself should not be exposed directly, but additional get/set
--// functions for specific types are permissible.
-+//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS_SYSCTL
-
--// IoctlSetInt performs an ioctl operation which sets an integer value
--// on fd, using the specified request number.
--func IoctlSetInt(fd int, req uint, value int) error {
-- return ioctl(fd, req, uintptr(value))
--}
-+func Uname(uname *Utsname) error {
-+ mib := []_C_int{CTL_KERN, KERN_OSTYPE}
-+ n := unsafe.Sizeof(uname.Sysname)
-+ if err := sysctl(mib, &uname.Sysname[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-
--func IoctlSetWinsize(fd int, req uint, value *Winsize) error {
-- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
--}
-+ mib = []_C_int{CTL_KERN, KERN_HOSTNAME}
-+ n = unsafe.Sizeof(uname.Nodename)
-+ if err := sysctl(mib, &uname.Nodename[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-
--func IoctlSetTermios(fd int, req uint, value *Termios) error {
-- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
--}
-+ mib = []_C_int{CTL_KERN, KERN_OSRELEASE}
-+ n = unsafe.Sizeof(uname.Release)
-+ if err := sysctl(mib, &uname.Release[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-
--// IoctlGetInt performs an ioctl operation which gets an integer value
--// from fd, using the specified request number.
--func IoctlGetInt(fd int, req uint) (int, error) {
-- var value int
-- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-- return value, err
--}
-+ mib = []_C_int{CTL_KERN, KERN_VERSION}
-+ n = unsafe.Sizeof(uname.Version)
-+ if err := sysctl(mib, &uname.Version[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-
--func IoctlGetWinsize(fd int, req uint) (*Winsize, error) {
-- var value Winsize
-- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-- return &value, err
-+ // The version might have newlines or tabs in it, convert them to
-+ // spaces.
-+ for i, b := range uname.Version {
-+ if b == '\n' || b == '\t' {
-+ if i == len(uname.Version)-1 {
-+ uname.Version[i] = 0
-+ } else {
-+ uname.Version[i] = ' '
-+ }
-+ }
-+ }
-+
-+ mib = []_C_int{CTL_HW, HW_MACHINE}
-+ n = unsafe.Sizeof(uname.Machine)
-+ if err := sysctl(mib, &uname.Machine[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-+
-+ return nil
- }
-
--func IoctlGetTermios(fd int, req uint) (*Termios, error) {
-- var value Termios
-- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-- return &value, err
-+func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-+ if raceenabled {
-+ raceReleaseMerge(unsafe.Pointer(&ioSync))
-+ }
-+ var length = int64(count)
-+ err = sendfile(infd, outfd, *offset, &length, nil, 0)
-+ written = int(length)
-+ return
- }
-
-+//sys sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error)
-+
- /*
- * Exposed directly
- */
-@@ -249,6 +394,7 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
- //sys Chmod(path string, mode uint32) (err error)
- //sys Chown(path string, uid int, gid int) (err error)
- //sys Chroot(path string) (err error)
-+//sys ClockGettime(clockid int32, time *Timespec) (err error)
- //sys Close(fd int) (err error)
- //sys Dup(fd int) (nfd int, err error)
- //sys Dup2(from int, to int) (err error)
-@@ -263,11 +409,8 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
- //sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
- //sys Flock(fd int, how int) (err error)
- //sys Fpathconf(fd int, name int) (val int, err error)
--//sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
--//sys Fstatfs(fd int, stat *Statfs_t) (err error) = SYS_FSTATFS64
- //sys Fsync(fd int) (err error)
- //sys Ftruncate(fd int, length int64) (err error)
--//sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) = SYS_GETDIRENTRIES64
- //sys Getdtablesize() (size int)
- //sysnb Getegid() (egid int)
- //sysnb Geteuid() (uid int)
-@@ -287,7 +430,6 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
- //sys Link(path string, link string) (err error)
- //sys Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error)
- //sys Listen(s int, backlog int) (err error)
--//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
- //sys Mkdir(path string, mode uint32) (err error)
- //sys Mkdirat(dirfd int, path string, mode uint32) (err error)
- //sys Mkfifo(path string, mode uint32) (err error)
-@@ -305,7 +447,7 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
- //sys Revoke(path string) (err error)
- //sys Rmdir(path string) (err error)
- //sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = SYS_LSEEK
--//sys Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error)
-+//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
- //sys Setegid(egid int) (err error)
- //sysnb Seteuid(euid int) (err error)
- //sysnb Setgid(gid int) (err error)
-@@ -319,8 +461,6 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
- //sysnb Setsid() (pid int, err error)
- //sysnb Settimeofday(tp *Timeval) (err error)
- //sysnb Setuid(uid int) (err error)
--//sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64
--//sys Statfs(path string, stat *Statfs_t) (err error) = SYS_STATFS64
- //sys Symlink(path string, link string) (err error)
- //sys Symlinkat(oldpath string, newdirfd int, newpath string) (err error)
- //sys Sync() (err error)
-@@ -377,18 +517,9 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
- // Searchfs
- // Delete
- // Copyfile
--// Poll
- // Watchevent
- // Waitevent
- // Modwatch
--// Getxattr
--// Fgetxattr
--// Setxattr
--// Fsetxattr
--// Removexattr
--// Fremovexattr
--// Listxattr
--// Flistxattr
- // Fsctl
- // Initgroups
- // Posix_spawn
-diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go b/vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go
-new file mode 100644
-index 00000000..6b223f91
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go
-@@ -0,0 +1,9 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build darwin,386,!go1.12
-+
-+package unix
-+
-+//sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) = SYS_GETDIRENTRIES64
-diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_386.go b/vendor/golang.org/x/sys/unix/syscall_darwin_386.go
-index c172a3da..707ba4f5 100644
---- a/vendor/golang.org/x/sys/unix/syscall_darwin_386.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_386.go
-@@ -8,30 +8,22 @@ package unix
-
- import (
- "syscall"
-- "unsafe"
- )
-
--func Getpagesize() int { return 4096 }
-+//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error)
-
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = int32(nsec / 1e9)
-- ts.Nsec = int32(nsec % 1e9)
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- tv.Sec = int32(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: int32(sec), Usec: int32(usec)}
- }
-
- //sysnb gettimeofday(tp *Timeval) (sec int32, usec int32, err error)
- func Gettimeofday(tv *Timeval) (err error) {
- // The tv passed to gettimeofday must be non-nil
-- // but is otherwise unused. The answers come back
-+ // but is otherwise unused. The answers come back
- // in the two registers.
- sec, usec, err := gettimeofday(tv)
- tv.Sec = int32(sec)
-@@ -53,21 +45,12 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
--func (cmsg *Cmsghdr) SetLen(length int) {
-- cmsg.Len = uint32(length)
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
- }
-
--func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-- var length = uint64(count)
--
-- _, _, e1 := Syscall9(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(*offset), uintptr(*offset>>32), uintptr(unsafe.Pointer(&length)), 0, 0, 0, 0)
--
-- written = int(length)
--
-- if e1 != 0 {
-- err = e1
-- }
-- return
-+func (cmsg *Cmsghdr) SetLen(length int) {
-+ cmsg.Len = uint32(length)
- }
-
- func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
-@@ -75,3 +58,11 @@ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
- // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
- // of darwin/386 the syscall is called sysctl instead of __sysctl.
- const SYS___SYSCTL = SYS_SYSCTL
-+
-+//sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
-+//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64
-+//sys Fstatfs(fd int, stat *Statfs_t) (err error) = SYS_FSTATFS64
-+//sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT64
-+//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
-+//sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64
-+//sys Statfs(path string, stat *Statfs_t) (err error) = SYS_STATFS64
-diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go
-new file mode 100644
-index 00000000..68ebd6fa
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go
-@@ -0,0 +1,9 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build darwin,amd64,!go1.12
-+
-+package unix
-+
-+//sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) = SYS_GETDIRENTRIES64
-diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go
-index c6c99c13..fdbfb591 100644
---- a/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go
-@@ -8,30 +8,22 @@ package unix
-
- import (
- "syscall"
-- "unsafe"
- )
-
--func Getpagesize() int { return 4096 }
-+//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error)
-
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- tv.Sec = int64(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: int32(usec)}
- }
-
- //sysnb gettimeofday(tp *Timeval) (sec int64, usec int32, err error)
- func Gettimeofday(tv *Timeval) (err error) {
- // The tv passed to gettimeofday must be non-nil
-- // but is otherwise unused. The answers come back
-+ // but is otherwise unused. The answers come back
- // in the two registers.
- sec, usec, err := gettimeofday(tv)
- tv.Sec = sec
-@@ -53,21 +45,12 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
--func (cmsg *Cmsghdr) SetLen(length int) {
-- cmsg.Len = uint32(length)
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
- }
-
--func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-- var length = uint64(count)
--
-- _, _, e1 := Syscall6(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(*offset), uintptr(unsafe.Pointer(&length)), 0, 0)
--
-- written = int(length)
--
-- if e1 != 0 {
-- err = e1
-- }
-- return
-+func (cmsg *Cmsghdr) SetLen(length int) {
-+ cmsg.Len = uint32(length)
- }
-
- func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
-@@ -75,3 +58,11 @@ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
- // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
- // of darwin/amd64 the syscall is called sysctl instead of __sysctl.
- const SYS___SYSCTL = SYS_SYSCTL
-+
-+//sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
-+//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64
-+//sys Fstatfs(fd int, stat *Statfs_t) (err error) = SYS_FSTATFS64
-+//sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT64
-+//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
-+//sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64
-+//sys Statfs(path string, stat *Statfs_t) (err error) = SYS_STATFS64
-diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go
-new file mode 100644
-index 00000000..0e3f25ac
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go
-@@ -0,0 +1,11 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build darwin,arm,!go1.12
-+
-+package unix
-+
-+func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-+ return 0, ENOSYS
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go
-index d286cf40..f8bc4cfb 100644
---- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go
-@@ -6,30 +6,24 @@ package unix
-
- import (
- "syscall"
-- "unsafe"
- )
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
-+func ptrace(request int, pid int, addr uintptr, data uintptr) error {
-+ return ENOTSUP
-+}
-
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = int32(nsec / 1e9)
-- ts.Nsec = int32(nsec % 1e9)
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- tv.Sec = int32(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: int32(sec), Usec: int32(usec)}
- }
-
- //sysnb gettimeofday(tp *Timeval) (sec int32, usec int32, err error)
- func Gettimeofday(tv *Timeval) (err error) {
- // The tv passed to gettimeofday must be non-nil
-- // but is otherwise unused. The answers come back
-+ // but is otherwise unused. The answers come back
- // in the two registers.
- sec, usec, err := gettimeofday(tv)
- tv.Sec = int32(sec)
-@@ -51,21 +45,24 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
--func (cmsg *Cmsghdr) SetLen(length int) {
-- cmsg.Len = uint32(length)
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
- }
-
--func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-- var length = uint64(count)
--
-- _, _, e1 := Syscall9(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(*offset), uintptr(*offset>>32), uintptr(unsafe.Pointer(&length)), 0, 0, 0, 0)
--
-- written = int(length)
--
-- if e1 != 0 {
-- err = e1
-- }
-- return
-+func (cmsg *Cmsghdr) SetLen(length int) {
-+ cmsg.Len = uint32(length)
- }
-
- func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) // sic
-+
-+// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
-+// of darwin/arm the syscall is called sysctl instead of __sysctl.
-+const SYS___SYSCTL = SYS_SYSCTL
-+
-+//sys Fstat(fd int, stat *Stat_t) (err error)
-+//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
-+//sys Fstatfs(fd int, stat *Statfs_t) (err error)
-+//sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT
-+//sys Lstat(path string, stat *Stat_t) (err error)
-+//sys Stat(path string, stat *Stat_t) (err error)
-+//sys Statfs(path string, stat *Statfs_t) (err error)
-diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go
-new file mode 100644
-index 00000000..01d45040
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go
-@@ -0,0 +1,11 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build darwin,arm64,!go1.12
-+
-+package unix
-+
-+func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-+ return 0, ENOSYS
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go
-index c33905cd..5ede3ac3 100644
---- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go
-@@ -8,30 +8,24 @@ package unix
-
- import (
- "syscall"
-- "unsafe"
- )
-
--func Getpagesize() int { return 16384 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
-+func ptrace(request int, pid int, addr uintptr, data uintptr) error {
-+ return ENOTSUP
-+}
-
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- tv.Sec = int64(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: int32(usec)}
- }
-
- //sysnb gettimeofday(tp *Timeval) (sec int64, usec int32, err error)
- func Gettimeofday(tv *Timeval) (err error) {
- // The tv passed to gettimeofday must be non-nil
-- // but is otherwise unused. The answers come back
-+ // but is otherwise unused. The answers come back
- // in the two registers.
- sec, usec, err := gettimeofday(tv)
- tv.Sec = sec
-@@ -53,21 +47,12 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
--func (cmsg *Cmsghdr) SetLen(length int) {
-- cmsg.Len = uint32(length)
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
- }
-
--func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-- var length = uint64(count)
--
-- _, _, e1 := Syscall6(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(*offset), uintptr(unsafe.Pointer(&length)), 0, 0)
--
-- written = int(length)
--
-- if e1 != 0 {
-- err = e1
-- }
-- return
-+func (cmsg *Cmsghdr) SetLen(length int) {
-+ cmsg.Len = uint32(length)
- }
-
- func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) // sic
-@@ -75,3 +60,11 @@ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
- // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
- // of darwin/arm64 the syscall is called sysctl instead of __sysctl.
- const SYS___SYSCTL = SYS_SYSCTL
-+
-+//sys Fstat(fd int, stat *Stat_t) (err error)
-+//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
-+//sys Fstatfs(fd int, stat *Statfs_t) (err error)
-+//sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT
-+//sys Lstat(path string, stat *Stat_t) (err error)
-+//sys Stat(path string, stat *Stat_t) (err error)
-+//sys Statfs(path string, stat *Statfs_t) (err error)
-diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go b/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go
-new file mode 100644
-index 00000000..f34c86c8
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go
-@@ -0,0 +1,33 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build darwin,go1.12
-+
-+package unix
-+
-+import "unsafe"
-+
-+// Implemented in the runtime package (runtime/sys_darwin.go)
-+func syscall_syscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno)
-+func syscall_syscall6(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
-+func syscall_syscall6X(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
-+func syscall_syscall9(fn, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err Errno) // 32-bit only
-+func syscall_rawSyscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno)
-+func syscall_rawSyscall6(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
-+func syscall_syscallPtr(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno)
-+
-+//go:linkname syscall_syscall syscall.syscall
-+//go:linkname syscall_syscall6 syscall.syscall6
-+//go:linkname syscall_syscall6X syscall.syscall6X
-+//go:linkname syscall_syscall9 syscall.syscall9
-+//go:linkname syscall_rawSyscall syscall.rawSyscall
-+//go:linkname syscall_rawSyscall6 syscall.rawSyscall6
-+//go:linkname syscall_syscallPtr syscall.syscallPtr
-+
-+// Find the entry point for f. See comments in runtime/proc.go for the
-+// function of the same name.
-+//go:nosplit
-+func funcPC(f func()) uintptr {
-+ return **(**uintptr)(unsafe.Pointer(&f))
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_dragonfly.go b/vendor/golang.org/x/sys/unix/syscall_dragonfly.go
-index 3a483373..8a195ae5 100644
---- a/vendor/golang.org/x/sys/unix/syscall_dragonfly.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_dragonfly.go
-@@ -12,8 +12,27 @@
-
- package unix
-
--import "unsafe"
-+import (
-+ "sync"
-+ "unsafe"
-+)
-
-+// See version list in https://github.com/DragonFlyBSD/DragonFlyBSD/blob/master/sys/sys/param.h
-+var (
-+ osreldateOnce sync.Once
-+ osreldate uint32
-+)
-+
-+// First __DragonFly_version after September 2019 ABI changes
-+// http://lists.dragonflybsd.org/pipermail/users/2019-September/358280.html
-+const _dragonflyABIChangeVersion = 500705
-+
-+func supportsABI(ver uint32) bool {
-+ osreldateOnce.Do(func() { osreldate, _ = SysctlUint32("kern.osreldate") })
-+ return osreldate >= ver
-+}
-+
-+// SockaddrDatalink implements the Sockaddr interface for AF_LINK type sockets.
- type SockaddrDatalink struct {
- Len uint8
- Family uint8
-@@ -102,7 +121,7 @@ func Accept4(fd, flags int) (nfd int, sa Sockaddr, err error) {
- if len > SizeofSockaddrAny {
- panic("RawSockaddrAny too small")
- }
-- sa, err = anyToSockaddr(&rsa)
-+ sa, err = anyToSockaddr(fd, &rsa)
- if err != nil {
- Close(nfd)
- nfd = 0
-@@ -110,6 +129,23 @@ func Accept4(fd, flags int) (nfd int, sa Sockaddr, err error) {
- return
- }
-
-+const ImplementsGetwd = true
-+
-+//sys Getcwd(buf []byte) (n int, err error) = SYS___GETCWD
-+
-+func Getwd() (string, error) {
-+ var buf [PathMax]byte
-+ _, err := Getcwd(buf[0:])
-+ if err != nil {
-+ return "", err
-+ }
-+ n := clen(buf[:])
-+ if n < 1 {
-+ return "", EINVAL
-+ }
-+ return string(buf[:n]), nil
-+}
-+
- func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- var _p0 unsafe.Pointer
- var bufsize uintptr
-@@ -125,6 +161,85 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- return
- }
-
-+func setattrlistTimes(path string, times []Timespec, flags int) error {
-+ // used on Darwin for UtimesNano
-+ return ENOSYS
-+}
-+
-+//sys ioctl(fd int, req uint, arg uintptr) (err error)
-+
-+//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL
-+
-+func sysctlUname(mib []_C_int, old *byte, oldlen *uintptr) error {
-+ err := sysctl(mib, old, oldlen, nil, 0)
-+ if err != nil {
-+ // Utsname members on Dragonfly are only 32 bytes and
-+ // the syscall returns ENOMEM in case the actual value
-+ // is longer.
-+ if err == ENOMEM {
-+ err = nil
-+ }
-+ }
-+ return err
-+}
-+
-+func Uname(uname *Utsname) error {
-+ mib := []_C_int{CTL_KERN, KERN_OSTYPE}
-+ n := unsafe.Sizeof(uname.Sysname)
-+ if err := sysctlUname(mib, &uname.Sysname[0], &n); err != nil {
-+ return err
-+ }
-+ uname.Sysname[unsafe.Sizeof(uname.Sysname)-1] = 0
-+
-+ mib = []_C_int{CTL_KERN, KERN_HOSTNAME}
-+ n = unsafe.Sizeof(uname.Nodename)
-+ if err := sysctlUname(mib, &uname.Nodename[0], &n); err != nil {
-+ return err
-+ }
-+ uname.Nodename[unsafe.Sizeof(uname.Nodename)-1] = 0
-+
-+ mib = []_C_int{CTL_KERN, KERN_OSRELEASE}
-+ n = unsafe.Sizeof(uname.Release)
-+ if err := sysctlUname(mib, &uname.Release[0], &n); err != nil {
-+ return err
-+ }
-+ uname.Release[unsafe.Sizeof(uname.Release)-1] = 0
-+
-+ mib = []_C_int{CTL_KERN, KERN_VERSION}
-+ n = unsafe.Sizeof(uname.Version)
-+ if err := sysctlUname(mib, &uname.Version[0], &n); err != nil {
-+ return err
-+ }
-+
-+ // The version might have newlines or tabs in it, convert them to
-+ // spaces.
-+ for i, b := range uname.Version {
-+ if b == '\n' || b == '\t' {
-+ if i == len(uname.Version)-1 {
-+ uname.Version[i] = 0
-+ } else {
-+ uname.Version[i] = ' '
-+ }
-+ }
-+ }
-+
-+ mib = []_C_int{CTL_HW, HW_MACHINE}
-+ n = unsafe.Sizeof(uname.Machine)
-+ if err := sysctlUname(mib, &uname.Machine[0], &n); err != nil {
-+ return err
-+ }
-+ uname.Machine[unsafe.Sizeof(uname.Machine)-1] = 0
-+
-+ return nil
-+}
-+
-+func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-+ if raceenabled {
-+ raceReleaseMerge(unsafe.Pointer(&ioSync))
-+ }
-+ return sendfile(outfd, infd, offset, count)
-+}
-+
- /*
- * Exposed directly
- */
-@@ -139,16 +254,21 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- //sys Dup(fd int) (nfd int, err error)
- //sys Dup2(from int, to int) (err error)
- //sys Exit(code int)
-+//sys Faccessat(dirfd int, path string, mode uint32, flags int) (err error)
- //sys Fchdir(fd int) (err error)
- //sys Fchflags(fd int, flags int) (err error)
- //sys Fchmod(fd int, mode uint32) (err error)
-+//sys Fchmodat(dirfd int, path string, mode uint32, flags int) (err error)
- //sys Fchown(fd int, uid int, gid int) (err error)
-+//sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
- //sys Flock(fd int, how int) (err error)
- //sys Fpathconf(fd int, name int) (val int, err error)
- //sys Fstat(fd int, stat *Stat_t) (err error)
-+//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
- //sys Fstatfs(fd int, stat *Statfs_t) (err error)
- //sys Fsync(fd int) (err error)
- //sys Ftruncate(fd int, length int64) (err error)
-+//sys Getdents(fd int, buf []byte) (n int, err error)
- //sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error)
- //sys Getdtablesize() (size int)
- //sysnb Getegid() (egid int)
-@@ -169,21 +289,26 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- //sys Kqueue() (fd int, err error)
- //sys Lchown(path string, uid int, gid int) (err error)
- //sys Link(path string, link string) (err error)
-+//sys Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error)
- //sys Listen(s int, backlog int) (err error)
- //sys Lstat(path string, stat *Stat_t) (err error)
- //sys Mkdir(path string, mode uint32) (err error)
-+//sys Mkdirat(dirfd int, path string, mode uint32) (err error)
- //sys Mkfifo(path string, mode uint32) (err error)
- //sys Mknod(path string, mode uint32, dev int) (err error)
-+//sys Mknodat(fd int, path string, mode uint32, dev int) (err error)
- //sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
- //sys Open(path string, mode int, perm uint32) (fd int, err error)
-+//sys Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error)
- //sys Pathconf(path string, name int) (val int, err error)
- //sys read(fd int, p []byte) (n int, err error)
- //sys Readlink(path string, buf []byte) (n int, err error)
- //sys Rename(from string, to string) (err error)
-+//sys Renameat(fromfd int, from string, tofd int, to string) (err error)
- //sys Revoke(path string) (err error)
- //sys Rmdir(path string) (err error)
- //sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = SYS_LSEEK
--//sys Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error)
-+//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
- //sysnb Setegid(egid int) (err error)
- //sysnb Seteuid(euid int) (err error)
- //sysnb Setgid(gid int) (err error)
-@@ -201,11 +326,13 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- //sys Stat(path string, stat *Stat_t) (err error)
- //sys Statfs(path string, stat *Statfs_t) (err error)
- //sys Symlink(path string, link string) (err error)
-+//sys Symlinkat(oldpath string, newdirfd int, newpath string) (err error)
- //sys Sync() (err error)
- //sys Truncate(path string, length int64) (err error)
- //sys Umask(newmask int) (oldmask int)
- //sys Undelete(path string) (err error)
- //sys Unlink(path string) (err error)
-+//sys Unlinkat(dirfd int, path string, flags int) (err error)
- //sys Unmount(path string, flags int) (err error)
- //sys write(fd int, p []byte) (n int, err error)
- //sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error)
-@@ -225,7 +352,6 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- // Getlogin
- // Sigpending
- // Sigaltstack
--// Ioctl
- // Reboot
- // Execve
- // Vfork
-@@ -257,7 +383,6 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- // Searchfs
- // Delete
- // Copyfile
--// Poll
- // Watchevent
- // Waitevent
- // Modwatch
-@@ -403,7 +528,6 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- // Pread_nocancel
- // Pwrite_nocancel
- // Waitid_nocancel
--// Poll_nocancel
- // Msgsnd_nocancel
- // Msgrcv_nocancel
- // Sem_wait_nocancel
-diff --git a/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
-index da7cb798..a6b4830a 100644
---- a/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
-@@ -11,21 +11,12 @@ import (
- "unsafe"
- )
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = nsec % 1e9 / 1e3
-- tv.Sec = int64(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: usec}
- }
-
- func SetKevent(k *Kevent_t, fd, mode, flags int) {
-@@ -42,6 +33,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd.go b/vendor/golang.org/x/sys/unix/syscall_freebsd.go
-index d26e52ea..6932e7c2 100644
---- a/vendor/golang.org/x/sys/unix/syscall_freebsd.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd.go
-@@ -12,8 +12,36 @@
-
- package unix
-
--import "unsafe"
-+import (
-+ "sync"
-+ "unsafe"
-+)
-+
-+const (
-+ SYS_FSTAT_FREEBSD12 = 551 // { int fstat(int fd, _Out_ struct stat *sb); }
-+ SYS_FSTATAT_FREEBSD12 = 552 // { int fstatat(int fd, _In_z_ char *path, \
-+ SYS_GETDIRENTRIES_FREEBSD12 = 554 // { ssize_t getdirentries(int fd, \
-+ SYS_STATFS_FREEBSD12 = 555 // { int statfs(_In_z_ char *path, \
-+ SYS_FSTATFS_FREEBSD12 = 556 // { int fstatfs(int fd, \
-+ SYS_GETFSSTAT_FREEBSD12 = 557 // { int getfsstat( \
-+ SYS_MKNODAT_FREEBSD12 = 559 // { int mknodat(int fd, _In_z_ char *path, \
-+)
-+
-+// See https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/versions.html.
-+var (
-+ osreldateOnce sync.Once
-+ osreldate uint32
-+)
-+
-+// INO64_FIRST from /usr/src/lib/libc/sys/compat-ino64.h
-+const _ino64First = 1200031
-+
-+func supportsABI(ver uint32) bool {
-+ osreldateOnce.Do(func() { osreldate, _ = SysctlUint32("kern.osreldate") })
-+ return osreldate >= ver
-+}
-
-+// SockaddrDatalink implements the Sockaddr interface for AF_LINK type sockets.
- type SockaddrDatalink struct {
- Len uint8
- Family uint8
-@@ -32,7 +60,7 @@ func nametomib(name string) (mib []_C_int, err error) {
-
- // NOTE(rsc): It seems strange to set the buffer to have
- // size CTL_MAXNAME+2 but use only CTL_MAXNAME
-- // as the size. I don't know why the +2 is here, but the
-+ // as the size. I don't know why the +2 is here, but the
- // kernel uses +2 for its own implementation of this function.
- // I am scared that if we don't include the +2 here, the kernel
- // will silently write 2 words farther than we specify
-@@ -66,14 +94,21 @@ func direntNamlen(buf []byte) (uint64, bool) {
- return readInt(buf, unsafe.Offsetof(Dirent{}.Namlen), unsafe.Sizeof(Dirent{}.Namlen))
- }
-
--//sysnb pipe() (r int, w int, err error)
--
- func Pipe(p []int) (err error) {
-+ return Pipe2(p, 0)
-+}
-+
-+//sysnb pipe2(p *[2]_C_int, flags int) (err error)
-+
-+func Pipe2(p []int, flags int) error {
- if len(p) != 2 {
- return EINVAL
- }
-- p[0], p[1], err = pipe()
-- return
-+ var pp [2]_C_int
-+ err := pipe2(&pp, flags)
-+ p[0] = int(pp[0])
-+ p[1] = int(pp[1])
-+ return err
- }
-
- func GetsockoptIPMreqn(fd, level, opt int) (*IPMreqn, error) {
-@@ -97,7 +132,7 @@ func Accept4(fd, flags int) (nfd int, sa Sockaddr, err error) {
- if len > SizeofSockaddrAny {
- panic("RawSockaddrAny too small")
- }
-- sa, err = anyToSockaddr(&rsa)
-+ sa, err = anyToSockaddr(fd, &rsa)
- if err != nil {
- Close(nfd)
- nfd = 0
-@@ -105,290 +140,421 @@ func Accept4(fd, flags int) (nfd int, sa Sockaddr, err error) {
- return
- }
-
-+const ImplementsGetwd = true
-+
-+//sys Getcwd(buf []byte) (n int, err error) = SYS___GETCWD
-+
-+func Getwd() (string, error) {
-+ var buf [PathMax]byte
-+ _, err := Getcwd(buf[0:])
-+ if err != nil {
-+ return "", err
-+ }
-+ n := clen(buf[:])
-+ if n < 1 {
-+ return "", EINVAL
-+ }
-+ return string(buf[:n]), nil
-+}
-+
- func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- var bufsize uintptr
-+ var (
-+ _p0 unsafe.Pointer
-+ bufsize uintptr
-+ oldBuf []statfs_freebsd11_t
-+ needsConvert bool
-+ )
-+
- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- bufsize = unsafe.Sizeof(Statfs_t{}) * uintptr(len(buf))
-+ if supportsABI(_ino64First) {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ bufsize = unsafe.Sizeof(Statfs_t{}) * uintptr(len(buf))
-+ } else {
-+ n := len(buf)
-+ oldBuf = make([]statfs_freebsd11_t, n)
-+ _p0 = unsafe.Pointer(&oldBuf[0])
-+ bufsize = unsafe.Sizeof(statfs_freebsd11_t{}) * uintptr(n)
-+ needsConvert = true
-+ }
-+ }
-+ var sysno uintptr = SYS_GETFSSTAT
-+ if supportsABI(_ino64First) {
-+ sysno = SYS_GETFSSTAT_FREEBSD12
- }
-- r0, _, e1 := Syscall(SYS_GETFSSTAT, uintptr(_p0), bufsize, uintptr(flags))
-+ r0, _, e1 := Syscall(sysno, uintptr(_p0), bufsize, uintptr(flags))
- n = int(r0)
- if e1 != 0 {
- err = e1
- }
-+ if e1 == 0 && needsConvert {
-+ for i := range oldBuf {
-+ buf[i].convertFrom(&oldBuf[i])
-+ }
-+ }
- return
- }
-
--// Derive extattr namespace and attribute name
-+func setattrlistTimes(path string, times []Timespec, flags int) error {
-+ // used on Darwin for UtimesNano
-+ return ENOSYS
-+}
-
--func xattrnamespace(fullattr string) (ns int, attr string, err error) {
-- s := -1
-- for idx, val := range fullattr {
-- if val == '.' {
-- s = idx
-- break
-- }
-+//sys ioctl(fd int, req uint, arg uintptr) (err error)
-+
-+//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL
-+
-+func Uname(uname *Utsname) error {
-+ mib := []_C_int{CTL_KERN, KERN_OSTYPE}
-+ n := unsafe.Sizeof(uname.Sysname)
-+ if err := sysctl(mib, &uname.Sysname[0], &n, nil, 0); err != nil {
-+ return err
- }
-
-- if s == -1 {
-- return -1, "", ENOATTR
-+ mib = []_C_int{CTL_KERN, KERN_HOSTNAME}
-+ n = unsafe.Sizeof(uname.Nodename)
-+ if err := sysctl(mib, &uname.Nodename[0], &n, nil, 0); err != nil {
-+ return err
- }
-
-- namespace := fullattr[0:s]
-- attr = fullattr[s+1:]
-+ mib = []_C_int{CTL_KERN, KERN_OSRELEASE}
-+ n = unsafe.Sizeof(uname.Release)
-+ if err := sysctl(mib, &uname.Release[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-
-- switch namespace {
-- case "user":
-- return EXTATTR_NAMESPACE_USER, attr, nil
-- case "system":
-- return EXTATTR_NAMESPACE_SYSTEM, attr, nil
-- default:
-- return -1, "", ENOATTR
-+ mib = []_C_int{CTL_KERN, KERN_VERSION}
-+ n = unsafe.Sizeof(uname.Version)
-+ if err := sysctl(mib, &uname.Version[0], &n, nil, 0); err != nil {
-+ return err
- }
--}
-
--func initxattrdest(dest []byte, idx int) (d unsafe.Pointer) {
-- if len(dest) > idx {
-- return unsafe.Pointer(&dest[idx])
-- } else {
-- return unsafe.Pointer(_zero)
-+ // The version might have newlines or tabs in it, convert them to
-+ // spaces.
-+ for i, b := range uname.Version {
-+ if b == '\n' || b == '\t' {
-+ if i == len(uname.Version)-1 {
-+ uname.Version[i] = 0
-+ } else {
-+ uname.Version[i] = ' '
-+ }
-+ }
- }
--}
-
--// FreeBSD implements its own syscalls to handle extended attributes
-+ mib = []_C_int{CTL_HW, HW_MACHINE}
-+ n = unsafe.Sizeof(uname.Machine)
-+ if err := sysctl(mib, &uname.Machine[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-
--func Getxattr(file string, attr string, dest []byte) (sz int, err error) {
-- d := initxattrdest(dest, 0)
-- destsize := len(dest)
-+ return nil
-+}
-
-- nsid, a, err := xattrnamespace(attr)
-+func Stat(path string, st *Stat_t) (err error) {
-+ var oldStat stat_freebsd11_t
-+ if supportsABI(_ino64First) {
-+ return fstatat_freebsd12(AT_FDCWD, path, st, 0)
-+ }
-+ err = stat(path, &oldStat)
- if err != nil {
-- return -1, err
-+ return err
- }
-
-- return ExtattrGetFile(file, nsid, a, uintptr(d), destsize)
-+ st.convertFrom(&oldStat)
-+ return nil
- }
-
--func Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-- d := initxattrdest(dest, 0)
-- destsize := len(dest)
--
-- nsid, a, err := xattrnamespace(attr)
-+func Lstat(path string, st *Stat_t) (err error) {
-+ var oldStat stat_freebsd11_t
-+ if supportsABI(_ino64First) {
-+ return fstatat_freebsd12(AT_FDCWD, path, st, AT_SYMLINK_NOFOLLOW)
-+ }
-+ err = lstat(path, &oldStat)
- if err != nil {
-- return -1, err
-+ return err
- }
-
-- return ExtattrGetFd(fd, nsid, a, uintptr(d), destsize)
-+ st.convertFrom(&oldStat)
-+ return nil
- }
-
--func Lgetxattr(link string, attr string, dest []byte) (sz int, err error) {
-- d := initxattrdest(dest, 0)
-- destsize := len(dest)
--
-- nsid, a, err := xattrnamespace(attr)
-+func Fstat(fd int, st *Stat_t) (err error) {
-+ var oldStat stat_freebsd11_t
-+ if supportsABI(_ino64First) {
-+ return fstat_freebsd12(fd, st)
-+ }
-+ err = fstat(fd, &oldStat)
- if err != nil {
-- return -1, err
-+ return err
- }
-
-- return ExtattrGetLink(link, nsid, a, uintptr(d), destsize)
-+ st.convertFrom(&oldStat)
-+ return nil
- }
-
--// flags are unused on FreeBSD
--
--func Fsetxattr(fd int, attr string, data []byte, flags int) (err error) {
-- d := unsafe.Pointer(&data[0])
-- datasiz := len(data)
--
-- nsid, a, err := xattrnamespace(attr)
-+func Fstatat(fd int, path string, st *Stat_t, flags int) (err error) {
-+ var oldStat stat_freebsd11_t
-+ if supportsABI(_ino64First) {
-+ return fstatat_freebsd12(fd, path, st, flags)
-+ }
-+ err = fstatat(fd, path, &oldStat, flags)
- if err != nil {
-- return
-+ return err
- }
-
-- _, err = ExtattrSetFd(fd, nsid, a, uintptr(d), datasiz)
-- return
-+ st.convertFrom(&oldStat)
-+ return nil
- }
-
--func Setxattr(file string, attr string, data []byte, flags int) (err error) {
-- d := unsafe.Pointer(&data[0])
-- datasiz := len(data)
--
-- nsid, a, err := xattrnamespace(attr)
-+func Statfs(path string, st *Statfs_t) (err error) {
-+ var oldStatfs statfs_freebsd11_t
-+ if supportsABI(_ino64First) {
-+ return statfs_freebsd12(path, st)
-+ }
-+ err = statfs(path, &oldStatfs)
- if err != nil {
-- return
-+ return err
- }
-
-- _, err = ExtattrSetFile(file, nsid, a, uintptr(d), datasiz)
-- return
-+ st.convertFrom(&oldStatfs)
-+ return nil
- }
-
--func Lsetxattr(link string, attr string, data []byte, flags int) (err error) {
-- d := unsafe.Pointer(&data[0])
-- datasiz := len(data)
--
-- nsid, a, err := xattrnamespace(attr)
-+func Fstatfs(fd int, st *Statfs_t) (err error) {
-+ var oldStatfs statfs_freebsd11_t
-+ if supportsABI(_ino64First) {
-+ return fstatfs_freebsd12(fd, st)
-+ }
-+ err = fstatfs(fd, &oldStatfs)
- if err != nil {
-- return
-+ return err
- }
-
-- _, err = ExtattrSetLink(link, nsid, a, uintptr(d), datasiz)
-- return
-+ st.convertFrom(&oldStatfs)
-+ return nil
- }
-
--func Removexattr(file string, attr string) (err error) {
-- nsid, a, err := xattrnamespace(attr)
-- if err != nil {
-+func Getdents(fd int, buf []byte) (n int, err error) {
-+ return Getdirentries(fd, buf, nil)
-+}
-+
-+func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-+ if supportsABI(_ino64First) {
-+ if basep == nil || unsafe.Sizeof(*basep) == 8 {
-+ return getdirentries_freebsd12(fd, buf, (*uint64)(unsafe.Pointer(basep)))
-+ }
-+ // The freebsd12 syscall needs a 64-bit base. On 32-bit machines
-+ // we can't just use the basep passed in. See #32498.
-+ var base uint64 = uint64(*basep)
-+ n, err = getdirentries_freebsd12(fd, buf, &base)
-+ *basep = uintptr(base)
-+ if base>>32 != 0 {
-+ // We can't stuff the base back into a uintptr, so any
-+ // future calls would be suspect. Generate an error.
-+ // EIO is allowed by getdirentries.
-+ err = EIO
-+ }
- return
- }
-
-- err = ExtattrDeleteFile(file, nsid, a)
-+ // The old syscall entries are smaller than the new. Use 1/4 of the original
-+ // buffer size rounded up to DIRBLKSIZ (see /usr/src/lib/libc/sys/getdirentries.c).
-+ oldBufLen := roundup(len(buf)/4, _dirblksiz)
-+ oldBuf := make([]byte, oldBufLen)
-+ n, err = getdirentries(fd, oldBuf, basep)
-+ if err == nil && n > 0 {
-+ n = convertFromDirents11(buf, oldBuf[:n])
-+ }
- return
- }
-
--func Fremovexattr(fd int, attr string) (err error) {
-- nsid, a, err := xattrnamespace(attr)
-- if err != nil {
-- return
-+func Mknod(path string, mode uint32, dev uint64) (err error) {
-+ var oldDev int
-+ if supportsABI(_ino64First) {
-+ return mknodat_freebsd12(AT_FDCWD, path, mode, dev)
- }
--
-- err = ExtattrDeleteFd(fd, nsid, a)
-- return
-+ oldDev = int(dev)
-+ return mknod(path, mode, oldDev)
- }
-
--func Lremovexattr(link string, attr string) (err error) {
-- nsid, a, err := xattrnamespace(attr)
-- if err != nil {
-- return
-+func Mknodat(fd int, path string, mode uint32, dev uint64) (err error) {
-+ var oldDev int
-+ if supportsABI(_ino64First) {
-+ return mknodat_freebsd12(fd, path, mode, dev)
- }
-+ oldDev = int(dev)
-+ return mknodat(fd, path, mode, oldDev)
-+}
-
-- err = ExtattrDeleteLink(link, nsid, a)
-- return
-+// round x to the nearest multiple of y, larger or equal to x.
-+//
-+// from /usr/include/sys/param.h Macros for counting and rounding.
-+// #define roundup(x, y) ((((x)+((y)-1))/(y))*(y))
-+func roundup(x, y int) int {
-+ return ((x + y - 1) / y) * y
- }
-
--func Listxattr(file string, dest []byte) (sz int, err error) {
-- d := initxattrdest(dest, 0)
-- destsiz := len(dest)
--
-- // FreeBSD won't allow you to list xattrs from multiple namespaces
-- s := 0
-- var e error
-- for _, nsid := range [...]int{EXTATTR_NAMESPACE_USER, EXTATTR_NAMESPACE_SYSTEM} {
-- stmp, e := ExtattrListFile(file, nsid, uintptr(d), destsiz)
--
-- /* Errors accessing system attrs are ignored so that
-- * we can implement the Linux-like behavior of omitting errors that
-- * we don't have read permissions on
-- *
-- * Linux will still error if we ask for user attributes on a file that
-- * we don't have read permissions on, so don't ignore those errors
-- */
-- if e != nil && e == EPERM && nsid != EXTATTR_NAMESPACE_USER {
-- e = nil
-- continue
-- } else if e != nil {
-- return s, e
-- }
-+func (s *Stat_t) convertFrom(old *stat_freebsd11_t) {
-+ *s = Stat_t{
-+ Dev: uint64(old.Dev),
-+ Ino: uint64(old.Ino),
-+ Nlink: uint64(old.Nlink),
-+ Mode: old.Mode,
-+ Uid: old.Uid,
-+ Gid: old.Gid,
-+ Rdev: uint64(old.Rdev),
-+ Atim: old.Atim,
-+ Mtim: old.Mtim,
-+ Ctim: old.Ctim,
-+ Btim: old.Btim,
-+ Size: old.Size,
-+ Blocks: old.Blocks,
-+ Blksize: old.Blksize,
-+ Flags: old.Flags,
-+ Gen: uint64(old.Gen),
-+ }
-+}
-
-- s += stmp
-- destsiz -= s
-- if destsiz < 0 {
-- destsiz = 0
-- }
-- d = initxattrdest(dest, s)
-+func (s *Statfs_t) convertFrom(old *statfs_freebsd11_t) {
-+ *s = Statfs_t{
-+ Version: _statfsVersion,
-+ Type: old.Type,
-+ Flags: old.Flags,
-+ Bsize: old.Bsize,
-+ Iosize: old.Iosize,
-+ Blocks: old.Blocks,
-+ Bfree: old.Bfree,
-+ Bavail: old.Bavail,
-+ Files: old.Files,
-+ Ffree: old.Ffree,
-+ Syncwrites: old.Syncwrites,
-+ Asyncwrites: old.Asyncwrites,
-+ Syncreads: old.Syncreads,
-+ Asyncreads: old.Asyncreads,
-+ // Spare
-+ Namemax: old.Namemax,
-+ Owner: old.Owner,
-+ Fsid: old.Fsid,
-+ // Charspare
-+ // Fstypename
-+ // Mntfromname
-+ // Mntonname
- }
-
-- return s, e
-+ sl := old.Fstypename[:]
-+ n := clen(*(*[]byte)(unsafe.Pointer(&sl)))
-+ copy(s.Fstypename[:], old.Fstypename[:n])
-+
-+ sl = old.Mntfromname[:]
-+ n = clen(*(*[]byte)(unsafe.Pointer(&sl)))
-+ copy(s.Mntfromname[:], old.Mntfromname[:n])
-+
-+ sl = old.Mntonname[:]
-+ n = clen(*(*[]byte)(unsafe.Pointer(&sl)))
-+ copy(s.Mntonname[:], old.Mntonname[:n])
- }
-
--func Flistxattr(fd int, dest []byte) (sz int, err error) {
-- d := initxattrdest(dest, 0)
-- destsiz := len(dest)
-+func convertFromDirents11(buf []byte, old []byte) int {
-+ const (
-+ fixedSize = int(unsafe.Offsetof(Dirent{}.Name))
-+ oldFixedSize = int(unsafe.Offsetof(dirent_freebsd11{}.Name))
-+ )
-+
-+ dstPos := 0
-+ srcPos := 0
-+ for dstPos+fixedSize < len(buf) && srcPos+oldFixedSize < len(old) {
-+ var dstDirent Dirent
-+ var srcDirent dirent_freebsd11
-
-- s := 0
-- var e error
-- for _, nsid := range [...]int{EXTATTR_NAMESPACE_USER, EXTATTR_NAMESPACE_SYSTEM} {
-- stmp, e := ExtattrListFd(fd, nsid, uintptr(d), destsiz)
-- if e != nil && e == EPERM && nsid != EXTATTR_NAMESPACE_USER {
-- e = nil
-- continue
-- } else if e != nil {
-- return s, e
-+ // If multiple direntries are written, sometimes when we reach the final one,
-+ // we may have cap of old less than size of dirent_freebsd11.
-+ copy((*[unsafe.Sizeof(srcDirent)]byte)(unsafe.Pointer(&srcDirent))[:], old[srcPos:])
-+
-+ reclen := roundup(fixedSize+int(srcDirent.Namlen)+1, 8)
-+ if dstPos+reclen > len(buf) {
-+ break
- }
-
-- s += stmp
-- destsiz -= s
-- if destsiz < 0 {
-- destsiz = 0
-+ dstDirent.Fileno = uint64(srcDirent.Fileno)
-+ dstDirent.Off = 0
-+ dstDirent.Reclen = uint16(reclen)
-+ dstDirent.Type = srcDirent.Type
-+ dstDirent.Pad0 = 0
-+ dstDirent.Namlen = uint16(srcDirent.Namlen)
-+ dstDirent.Pad1 = 0
-+
-+ copy(dstDirent.Name[:], srcDirent.Name[:srcDirent.Namlen])
-+ copy(buf[dstPos:], (*[unsafe.Sizeof(dstDirent)]byte)(unsafe.Pointer(&dstDirent))[:])
-+ padding := buf[dstPos+fixedSize+int(dstDirent.Namlen) : dstPos+reclen]
-+ for i := range padding {
-+ padding[i] = 0
- }
-- d = initxattrdest(dest, s)
-+
-+ dstPos += int(dstDirent.Reclen)
-+ srcPos += int(srcDirent.Reclen)
- }
-
-- return s, e
-+ return dstPos
- }
-
--func Llistxattr(link string, dest []byte) (sz int, err error) {
-- d := initxattrdest(dest, 0)
-- destsiz := len(dest)
-+func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-+ if raceenabled {
-+ raceReleaseMerge(unsafe.Pointer(&ioSync))
-+ }
-+ return sendfile(outfd, infd, offset, count)
-+}
-
-- s := 0
-- var e error
-- for _, nsid := range [...]int{EXTATTR_NAMESPACE_USER, EXTATTR_NAMESPACE_SYSTEM} {
-- stmp, e := ExtattrListLink(link, nsid, uintptr(d), destsiz)
-- if e != nil && e == EPERM && nsid != EXTATTR_NAMESPACE_USER {
-- e = nil
-- continue
-- } else if e != nil {
-- return s, e
-- }
-+//sys ptrace(request int, pid int, addr uintptr, data int) (err error)
-
-- s += stmp
-- destsiz -= s
-- if destsiz < 0 {
-- destsiz = 0
-- }
-- d = initxattrdest(dest, s)
-- }
-+func PtraceAttach(pid int) (err error) {
-+ return ptrace(PTRACE_ATTACH, pid, 0, 0)
-+}
-
-- return s, e
-+func PtraceCont(pid int, signal int) (err error) {
-+ return ptrace(PTRACE_CONT, pid, 1, signal)
- }
-
--//sys ioctl(fd int, req uint, arg uintptr) (err error)
-+func PtraceDetach(pid int) (err error) {
-+ return ptrace(PTRACE_DETACH, pid, 1, 0)
-+}
-+
-+func PtraceGetFpRegs(pid int, fpregsout *FpReg) (err error) {
-+ return ptrace(PTRACE_GETFPREGS, pid, uintptr(unsafe.Pointer(fpregsout)), 0)
-+}
-
--// ioctl itself should not be exposed directly, but additional get/set
--// functions for specific types are permissible.
-+func PtraceGetRegs(pid int, regsout *Reg) (err error) {
-+ return ptrace(PTRACE_GETREGS, pid, uintptr(unsafe.Pointer(regsout)), 0)
-+}
-+
-+func PtraceLwpEvents(pid int, enable int) (err error) {
-+ return ptrace(PTRACE_LWPEVENTS, pid, 0, enable)
-+}
-+
-+func PtraceLwpInfo(pid int, info uintptr) (err error) {
-+ return ptrace(PTRACE_LWPINFO, pid, info, int(unsafe.Sizeof(PtraceLwpInfoStruct{})))
-+}
-
--// IoctlSetInt performs an ioctl operation which sets an integer value
--// on fd, using the specified request number.
--func IoctlSetInt(fd int, req uint, value int) error {
-- return ioctl(fd, req, uintptr(value))
-+func PtracePeekData(pid int, addr uintptr, out []byte) (count int, err error) {
-+ return PtraceIO(PIOD_READ_D, pid, addr, out, SizeofLong)
- }
-
--func IoctlSetWinsize(fd int, req uint, value *Winsize) error {
-- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
-+func PtracePeekText(pid int, addr uintptr, out []byte) (count int, err error) {
-+ return PtraceIO(PIOD_READ_I, pid, addr, out, SizeofLong)
- }
-
--func IoctlSetTermios(fd int, req uint, value *Termios) error {
-- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
-+func PtracePokeData(pid int, addr uintptr, data []byte) (count int, err error) {
-+ return PtraceIO(PIOD_WRITE_D, pid, addr, data, SizeofLong)
- }
-
--// IoctlGetInt performs an ioctl operation which gets an integer value
--// from fd, using the specified request number.
--func IoctlGetInt(fd int, req uint) (int, error) {
-- var value int
-- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-- return value, err
-+func PtracePokeText(pid int, addr uintptr, data []byte) (count int, err error) {
-+ return PtraceIO(PIOD_WRITE_I, pid, addr, data, SizeofLong)
- }
-
--func IoctlGetWinsize(fd int, req uint) (*Winsize, error) {
-- var value Winsize
-- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-- return &value, err
-+func PtraceSetRegs(pid int, regs *Reg) (err error) {
-+ return ptrace(PTRACE_SETREGS, pid, uintptr(unsafe.Pointer(regs)), 0)
- }
-
--func IoctlGetTermios(fd int, req uint) (*Termios, error) {
-- var value Termios
-- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-- return &value, err
-+func PtraceSingleStep(pid int) (err error) {
-+ return ptrace(PTRACE_SINGLESTEP, pid, 1, 0)
- }
-
- /*
-@@ -430,11 +596,16 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
- //sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
- //sys Flock(fd int, how int) (err error)
- //sys Fpathconf(fd int, name int) (val int, err error)
--//sys Fstat(fd int, stat *Stat_t) (err error)
--//sys Fstatfs(fd int, stat *Statfs_t) (err error)
-+//sys fstat(fd int, stat *stat_freebsd11_t) (err error)
-+//sys fstat_freebsd12(fd int, stat *Stat_t) (err error)
-+//sys fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error)
-+//sys fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error)
-+//sys fstatfs(fd int, stat *statfs_freebsd11_t) (err error)
-+//sys fstatfs_freebsd12(fd int, stat *Statfs_t) (err error)
- //sys Fsync(fd int) (err error)
- //sys Ftruncate(fd int, length int64) (err error)
--//sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error)
-+//sys getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error)
-+//sys getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error)
- //sys Getdtablesize() (size int)
- //sysnb Getegid() (egid int)
- //sysnb Geteuid() (uid int)
-@@ -456,11 +627,13 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
- //sys Link(path string, link string) (err error)
- //sys Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error)
- //sys Listen(s int, backlog int) (err error)
--//sys Lstat(path string, stat *Stat_t) (err error)
-+//sys lstat(path string, stat *stat_freebsd11_t) (err error)
- //sys Mkdir(path string, mode uint32) (err error)
- //sys Mkdirat(dirfd int, path string, mode uint32) (err error)
- //sys Mkfifo(path string, mode uint32) (err error)
--//sys Mknod(path string, mode uint32, dev int) (err error)
-+//sys mknod(path string, mode uint32, dev int) (err error)
-+//sys mknodat(fd int, path string, mode uint32, dev int) (err error)
-+//sys mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error)
- //sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
- //sys Open(path string, mode int, perm uint32) (fd int, err error)
- //sys Openat(fdat int, path string, mode int, perm uint32) (fd int, err error)
-@@ -475,7 +648,7 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
- //sys Revoke(path string) (err error)
- //sys Rmdir(path string) (err error)
- //sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = SYS_LSEEK
--//sys Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error)
-+//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
- //sysnb Setegid(egid int) (err error)
- //sysnb Seteuid(euid int) (err error)
- //sysnb Setgid(gid int) (err error)
-@@ -490,8 +663,9 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
- //sysnb Setsid() (pid int, err error)
- //sysnb Settimeofday(tp *Timeval) (err error)
- //sysnb Setuid(uid int) (err error)
--//sys Stat(path string, stat *Stat_t) (err error)
--//sys Statfs(path string, stat *Statfs_t) (err error)
-+//sys stat(path string, stat *stat_freebsd11_t) (err error)
-+//sys statfs(path string, stat *statfs_freebsd11_t) (err error)
-+//sys statfs_freebsd12(path string, stat *Statfs_t) (err error)
- //sys Symlink(path string, link string) (err error)
- //sys Symlinkat(oldpath string, newdirfd int, newpath string) (err error)
- //sys Sync() (err error)
-@@ -546,22 +720,14 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
- // Kqueue_portset
- // Getattrlist
- // Setattrlist
-+// Getdents
- // Getdirentriesattr
- // Searchfs
- // Delete
- // Copyfile
--// Poll
- // Watchevent
- // Waitevent
- // Modwatch
--// Getxattr
--// Fgetxattr
--// Setxattr
--// Fsetxattr
--// Removexattr
--// Fremovexattr
--// Listxattr
--// Flistxattr
- // Fsctl
- // Initgroups
- // Posix_spawn
-diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go
-index 6a0cd804..72a506dd 100644
---- a/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go
-@@ -11,21 +11,12 @@ import (
- "unsafe"
- )
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = int32(nsec / 1e9)
-- ts.Nsec = int32(nsec % 1e9)
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- tv.Sec = int32(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: int32(sec), Usec: int32(usec)}
- }
-
- func SetKevent(k *Kevent_t, fd, mode, flags int) {
-@@ -42,6 +33,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-@@ -59,3 +54,13 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
- }
-
- func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
-+
-+func PtraceGetFsBase(pid int, fsbase *int64) (err error) {
-+ return ptrace(PTRACE_GETFSBASE, pid, uintptr(unsafe.Pointer(fsbase)), 0)
-+}
-+
-+func PtraceIO(req int, pid int, addr uintptr, out []byte, countin int) (count int, err error) {
-+ ioDesc := PtraceIoDesc{Op: int32(req), Offs: (*byte)(unsafe.Pointer(addr)), Addr: (*byte)(unsafe.Pointer(&out[0])), Len: uint32(countin)}
-+ err = ptrace(PTRACE_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0)
-+ return int(ioDesc.Len), err
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go
-index e142540e..d5e376ac 100644
---- a/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go
-@@ -11,21 +11,12 @@ import (
- "unsafe"
- )
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = nsec % 1e9 / 1e3
-- tv.Sec = int64(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: usec}
- }
-
- func SetKevent(k *Kevent_t, fd, mode, flags int) {
-@@ -42,6 +33,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-@@ -59,3 +54,13 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
- }
-
- func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
-+
-+func PtraceGetFsBase(pid int, fsbase *int64) (err error) {
-+ return ptrace(PTRACE_GETFSBASE, pid, uintptr(unsafe.Pointer(fsbase)), 0)
-+}
-+
-+func PtraceIO(req int, pid int, addr uintptr, out []byte, countin int) (count int, err error) {
-+ ioDesc := PtraceIoDesc{Op: int32(req), Offs: (*byte)(unsafe.Pointer(addr)), Addr: (*byte)(unsafe.Pointer(&out[0])), Len: uint64(countin)}
-+ err = ptrace(PTRACE_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0)
-+ return int(ioDesc.Len), err
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go
-index 5504cb12..4ea45bce 100644
---- a/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go
-@@ -11,21 +11,12 @@ import (
- "unsafe"
- )
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return ts.Sec*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = int32(nsec % 1e9)
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: int32(nsec)}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- tv.Sec = nsec / 1e9
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: int32(usec)}
- }
-
- func SetKevent(k *Kevent_t, fd, mode, flags int) {
-@@ -42,6 +33,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-@@ -59,3 +54,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
- }
-
- func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
-+
-+func PtraceIO(req int, pid int, addr uintptr, out []byte, countin int) (count int, err error) {
-+ ioDesc := PtraceIoDesc{Op: int32(req), Offs: (*byte)(unsafe.Pointer(addr)), Addr: (*byte)(unsafe.Pointer(&out[0])), Len: uint32(countin)}
-+ err = ptrace(PTRACE_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0)
-+ return int(ioDesc.Len), err
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go
-similarity index 59%
-copy from vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
-copy to vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go
-index da7cb798..aa5326db 100644
---- a/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go
-@@ -1,8 +1,8 @@
--// Copyright 2009 The Go Authors. All rights reserved.
-+// Copyright 2018 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build amd64,dragonfly
-+// +build arm64,freebsd
-
- package unix
-
-@@ -11,21 +11,12 @@ import (
- "unsafe"
- )
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = nsec % 1e9 / 1e3
-- tv.Sec = int64(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: usec}
- }
-
- func SetKevent(k *Kevent_t, fd, mode, flags int) {
-@@ -42,6 +33,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-@@ -59,3 +54,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
- }
-
- func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
-+
-+func PtraceIO(req int, pid int, addr uintptr, out []byte, countin int) (count int, err error) {
-+ ioDesc := PtraceIoDesc{Op: int32(req), Offs: (*byte)(unsafe.Pointer(addr)), Addr: (*byte)(unsafe.Pointer(&out[0])), Len: uint64(countin)}
-+ err = ptrace(PTRACE_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0)
-+ return int(ioDesc.Len), err
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_illumos.go b/vendor/golang.org/x/sys/unix/syscall_illumos.go
-new file mode 100644
-index 00000000..99e62dcd
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_illumos.go
-@@ -0,0 +1,57 @@
-+// Copyright 2009 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// illumos system calls not present on Solaris.
-+
-+// +build amd64,illumos
-+
-+package unix
-+
-+import "unsafe"
-+
-+func bytes2iovec(bs [][]byte) []Iovec {
-+ iovecs := make([]Iovec, len(bs))
-+ for i, b := range bs {
-+ iovecs[i].SetLen(len(b))
-+ if len(b) > 0 {
-+ // somehow Iovec.Base on illumos is (*int8), not (*byte)
-+ iovecs[i].Base = (*int8)(unsafe.Pointer(&b[0]))
-+ } else {
-+ iovecs[i].Base = (*int8)(unsafe.Pointer(&_zero))
-+ }
-+ }
-+ return iovecs
-+}
-+
-+//sys readv(fd int, iovs []Iovec) (n int, err error)
-+
-+func Readv(fd int, iovs [][]byte) (n int, err error) {
-+ iovecs := bytes2iovec(iovs)
-+ n, err = readv(fd, iovecs)
-+ return n, err
-+}
-+
-+//sys preadv(fd int, iovs []Iovec, off int64) (n int, err error)
-+
-+func Preadv(fd int, iovs [][]byte, off int64) (n int, err error) {
-+ iovecs := bytes2iovec(iovs)
-+ n, err = preadv(fd, iovecs, off)
-+ return n, err
-+}
-+
-+//sys writev(fd int, iovs []Iovec) (n int, err error)
-+
-+func Writev(fd int, iovs [][]byte) (n int, err error) {
-+ iovecs := bytes2iovec(iovs)
-+ n, err = writev(fd, iovecs)
-+ return n, err
-+}
-+
-+//sys pwritev(fd int, iovs []Iovec, off int64) (n int, err error)
-+
-+func Pwritev(fd int, iovs [][]byte, off int64) (n int, err error) {
-+ iovecs := bytes2iovec(iovs)
-+ n, err = pwritev(fd, iovecs, off)
-+ return n, err
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux.go b/vendor/golang.org/x/sys/unix/syscall_linux.go
-index 1b7d59d8..bbe1abbc 100644
---- a/vendor/golang.org/x/sys/unix/syscall_linux.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux.go
-@@ -12,6 +12,8 @@
- package unix
-
- import (
-+ "encoding/binary"
-+ "runtime"
- "syscall"
- "unsafe"
- )
-@@ -36,6 +38,20 @@ func Creat(path string, mode uint32) (fd int, err error) {
- return Open(path, O_CREAT|O_WRONLY|O_TRUNC, mode)
- }
-
-+//sys FanotifyInit(flags uint, event_f_flags uint) (fd int, err error)
-+//sys fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error)
-+
-+func FanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname string) (err error) {
-+ if pathname == "" {
-+ return fanotifyMark(fd, flags, mask, dirFd, nil)
-+ }
-+ p, err := BytePtrFromString(pathname)
-+ if err != nil {
-+ return err
-+ }
-+ return fanotifyMark(fd, flags, mask, dirFd, p)
-+}
-+
- //sys fchmodat(dirfd int, path string, mode uint32) (err error)
-
- func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-@@ -55,37 +71,41 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
- // ioctl itself should not be exposed directly, but additional get/set
- // functions for specific types are permissible.
-
--// IoctlSetInt performs an ioctl operation which sets an integer value
--// on fd, using the specified request number.
--func IoctlSetInt(fd int, req uint, value int) error {
-- return ioctl(fd, req, uintptr(value))
-+// IoctlRetInt performs an ioctl operation specified by req on a device
-+// associated with opened file descriptor fd, and returns a non-negative
-+// integer that is returned by the ioctl syscall.
-+func IoctlRetInt(fd int, req uint) (int, error) {
-+ ret, _, err := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), 0)
-+ if err != 0 {
-+ return 0, err
-+ }
-+ return int(ret), nil
- }
-
--func IoctlSetWinsize(fd int, req uint, value *Winsize) error {
-- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
-+// IoctlSetPointerInt performs an ioctl operation which sets an
-+// integer value on fd, using the specified request number. The ioctl
-+// argument is called with a pointer to the integer value, rather than
-+// passing the integer value directly.
-+func IoctlSetPointerInt(fd int, req uint, value int) error {
-+ v := int32(value)
-+ return ioctl(fd, req, uintptr(unsafe.Pointer(&v)))
- }
-
--func IoctlSetTermios(fd int, req uint, value *Termios) error {
-- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
-+func IoctlSetRTCTime(fd int, value *RTCTime) error {
-+ err := ioctl(fd, RTC_SET_TIME, uintptr(unsafe.Pointer(value)))
-+ runtime.KeepAlive(value)
-+ return err
- }
-
--// IoctlGetInt performs an ioctl operation which gets an integer value
--// from fd, using the specified request number.
--func IoctlGetInt(fd int, req uint) (int, error) {
-- var value int
-+func IoctlGetUint32(fd int, req uint) (uint32, error) {
-+ var value uint32
- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
- return value, err
- }
-
--func IoctlGetWinsize(fd int, req uint) (*Winsize, error) {
-- var value Winsize
-- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-- return &value, err
--}
--
--func IoctlGetTermios(fd int, req uint) (*Termios, error) {
-- var value Termios
-- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-+func IoctlGetRTCTime(fd int) (*RTCTime, error) {
-+ var value RTCTime
-+ err := ioctl(fd, RTC_RD_TIME, uintptr(unsafe.Pointer(&value)))
- return &value, err
- }
-
-@@ -148,8 +168,6 @@ func Unlink(path string) error {
-
- //sys Unlinkat(dirfd int, path string, flags int) (err error)
-
--//sys utimes(path string, times *[2]Timeval) (err error)
--
- func Utimes(path string, tv []Timeval) error {
- if tv == nil {
- err := utimensat(AT_FDCWD, path, nil, 0)
-@@ -207,20 +225,14 @@ func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error {
- return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), flags)
- }
-
--//sys futimesat(dirfd int, path *byte, times *[2]Timeval) (err error)
--
- func Futimesat(dirfd int, path string, tv []Timeval) error {
-- pathp, err := BytePtrFromString(path)
-- if err != nil {
-- return err
-- }
- if tv == nil {
-- return futimesat(dirfd, pathp, nil)
-+ return futimesat(dirfd, path, nil)
- }
- if len(tv) != 2 {
- return EINVAL
- }
-- return futimesat(dirfd, pathp, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
-+ return futimesat(dirfd, path, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
- }
-
- func Futimes(fd int, tv []Timeval) (err error) {
-@@ -255,7 +267,7 @@ func Getgroups() (gids []int, err error) {
- return nil, nil
- }
-
-- // Sanity check group count. Max is 1<<16 on Linux.
-+ // Sanity check group count. Max is 1<<16 on Linux.
- if n < 0 || n > 1<<20 {
- return nil, EINVAL
- }
-@@ -290,8 +302,8 @@ type WaitStatus uint32
- // 0x7F (stopped), or a signal number that caused an exit.
- // The 0x80 bit is whether there was a core dump.
- // An extra number (exit code, signal causing a stop)
--// is in the high bits. At least that's the idea.
--// There are various irregularities. For example, the
-+// is in the high bits. At least that's the idea.
-+// There are various irregularities. For example, the
- // "continued" status is 0xFFFF, distinguishing itself
- // from stopped via the core dump bit.
-
-@@ -413,6 +425,7 @@ func (sa *SockaddrUnix) sockaddr() (unsafe.Pointer, _Socklen, error) {
- return unsafe.Pointer(&sa.raw), sl, nil
- }
-
-+// SockaddrLinklayer implements the Sockaddr interface for AF_PACKET type sockets.
- type SockaddrLinklayer struct {
- Protocol uint16
- Ifindex int
-@@ -439,6 +452,7 @@ func (sa *SockaddrLinklayer) sockaddr() (unsafe.Pointer, _Socklen, error) {
- return unsafe.Pointer(&sa.raw), SizeofSockaddrLinklayer, nil
- }
-
-+// SockaddrNetlink implements the Sockaddr interface for AF_NETLINK type sockets.
- type SockaddrNetlink struct {
- Family uint16
- Pad uint16
-@@ -455,6 +469,8 @@ func (sa *SockaddrNetlink) sockaddr() (unsafe.Pointer, _Socklen, error) {
- return unsafe.Pointer(&sa.raw), SizeofSockaddrNetlink, nil
- }
-
-+// SockaddrHCI implements the Sockaddr interface for AF_BLUETOOTH type sockets
-+// using the HCI protocol.
- type SockaddrHCI struct {
- Dev uint16
- Channel uint16
-@@ -468,6 +484,72 @@ func (sa *SockaddrHCI) sockaddr() (unsafe.Pointer, _Socklen, error) {
- return unsafe.Pointer(&sa.raw), SizeofSockaddrHCI, nil
- }
-
-+// SockaddrL2 implements the Sockaddr interface for AF_BLUETOOTH type sockets
-+// using the L2CAP protocol.
-+type SockaddrL2 struct {
-+ PSM uint16
-+ CID uint16
-+ Addr [6]uint8
-+ AddrType uint8
-+ raw RawSockaddrL2
-+}
-+
-+func (sa *SockaddrL2) sockaddr() (unsafe.Pointer, _Socklen, error) {
-+ sa.raw.Family = AF_BLUETOOTH
-+ psm := (*[2]byte)(unsafe.Pointer(&sa.raw.Psm))
-+ psm[0] = byte(sa.PSM)
-+ psm[1] = byte(sa.PSM >> 8)
-+ for i := 0; i < len(sa.Addr); i++ {
-+ sa.raw.Bdaddr[i] = sa.Addr[len(sa.Addr)-1-i]
-+ }
-+ cid := (*[2]byte)(unsafe.Pointer(&sa.raw.Cid))
-+ cid[0] = byte(sa.CID)
-+ cid[1] = byte(sa.CID >> 8)
-+ sa.raw.Bdaddr_type = sa.AddrType
-+ return unsafe.Pointer(&sa.raw), SizeofSockaddrL2, nil
-+}
-+
-+// SockaddrRFCOMM implements the Sockaddr interface for AF_BLUETOOTH type sockets
-+// using the RFCOMM protocol.
-+//
-+// Server example:
-+//
-+// fd, _ := Socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM)
-+// _ = unix.Bind(fd, &unix.SockaddrRFCOMM{
-+// Channel: 1,
-+// Addr: [6]uint8{0, 0, 0, 0, 0, 0}, // BDADDR_ANY or 00:00:00:00:00:00
-+// })
-+// _ = Listen(fd, 1)
-+// nfd, sa, _ := Accept(fd)
-+// fmt.Printf("conn addr=%v fd=%d", sa.(*unix.SockaddrRFCOMM).Addr, nfd)
-+// Read(nfd, buf)
-+//
-+// Client example:
-+//
-+// fd, _ := Socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM)
-+// _ = Connect(fd, &SockaddrRFCOMM{
-+// Channel: 1,
-+// Addr: [6]byte{0x11, 0x22, 0x33, 0xaa, 0xbb, 0xcc}, // CC:BB:AA:33:22:11
-+// })
-+// Write(fd, []byte(`hello`))
-+type SockaddrRFCOMM struct {
-+ // Addr represents a bluetooth address, byte ordering is little-endian.
-+ Addr [6]uint8
-+
-+ // Channel is a designated bluetooth channel, only 1-30 are available for use.
-+ // Since Linux 2.6.7 and further zero value is the first available channel.
-+ Channel uint8
-+
-+ raw RawSockaddrRFCOMM
-+}
-+
-+func (sa *SockaddrRFCOMM) sockaddr() (unsafe.Pointer, _Socklen, error) {
-+ sa.raw.Family = AF_BLUETOOTH
-+ sa.raw.Channel = sa.Channel
-+ sa.raw.Bdaddr = sa.Addr
-+ return unsafe.Pointer(&sa.raw), SizeofSockaddrRFCOMM, nil
-+}
-+
- // SockaddrCAN implements the Sockaddr interface for AF_CAN type sockets.
- // The RxID and TxID fields are used for transport protocol addressing in
- // (CAN_TP16, CAN_TP20, CAN_MCNET, and CAN_ISOTP), they can be left with
-@@ -630,7 +712,168 @@ func (sa *SockaddrVM) sockaddr() (unsafe.Pointer, _Socklen, error) {
- return unsafe.Pointer(&sa.raw), SizeofSockaddrVM, nil
- }
-
--func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
-+type SockaddrXDP struct {
-+ Flags uint16
-+ Ifindex uint32
-+ QueueID uint32
-+ SharedUmemFD uint32
-+ raw RawSockaddrXDP
-+}
-+
-+func (sa *SockaddrXDP) sockaddr() (unsafe.Pointer, _Socklen, error) {
-+ sa.raw.Family = AF_XDP
-+ sa.raw.Flags = sa.Flags
-+ sa.raw.Ifindex = sa.Ifindex
-+ sa.raw.Queue_id = sa.QueueID
-+ sa.raw.Shared_umem_fd = sa.SharedUmemFD
-+
-+ return unsafe.Pointer(&sa.raw), SizeofSockaddrXDP, nil
-+}
-+
-+// This constant mirrors the #define of PX_PROTO_OE in
-+// linux/if_pppox.h. We're defining this by hand here instead of
-+// autogenerating through mkerrors.sh because including
-+// linux/if_pppox.h causes some declaration conflicts with other
-+// includes (linux/if_pppox.h includes linux/in.h, which conflicts
-+// with netinet/in.h). Given that we only need a single zero constant
-+// out of that file, it's cleaner to just define it by hand here.
-+const px_proto_oe = 0
-+
-+type SockaddrPPPoE struct {
-+ SID uint16
-+ Remote []byte
-+ Dev string
-+ raw RawSockaddrPPPoX
-+}
-+
-+func (sa *SockaddrPPPoE) sockaddr() (unsafe.Pointer, _Socklen, error) {
-+ if len(sa.Remote) != 6 {
-+ return nil, 0, EINVAL
-+ }
-+ if len(sa.Dev) > IFNAMSIZ-1 {
-+ return nil, 0, EINVAL
-+ }
-+
-+ *(*uint16)(unsafe.Pointer(&sa.raw[0])) = AF_PPPOX
-+ // This next field is in host-endian byte order. We can't use the
-+ // same unsafe pointer cast as above, because this value is not
-+ // 32-bit aligned and some architectures don't allow unaligned
-+ // access.
-+ //
-+ // However, the value of px_proto_oe is 0, so we can use
-+ // encoding/binary helpers to write the bytes without worrying
-+ // about the ordering.
-+ binary.BigEndian.PutUint32(sa.raw[2:6], px_proto_oe)
-+ // This field is deliberately big-endian, unlike the previous
-+ // one. The kernel expects SID to be in network byte order.
-+ binary.BigEndian.PutUint16(sa.raw[6:8], sa.SID)
-+ copy(sa.raw[8:14], sa.Remote)
-+ for i := 14; i < 14+IFNAMSIZ; i++ {
-+ sa.raw[i] = 0
-+ }
-+ copy(sa.raw[14:], sa.Dev)
-+ return unsafe.Pointer(&sa.raw), SizeofSockaddrPPPoX, nil
-+}
-+
-+// SockaddrTIPC implements the Sockaddr interface for AF_TIPC type sockets.
-+// For more information on TIPC, see: http://tipc.sourceforge.net/.
-+type SockaddrTIPC struct {
-+ // Scope is the publication scopes when binding service/service range.
-+ // Should be set to TIPC_CLUSTER_SCOPE or TIPC_NODE_SCOPE.
-+ Scope int
-+
-+ // Addr is the type of address used to manipulate a socket. Addr must be
-+ // one of:
-+ // - *TIPCSocketAddr: "id" variant in the C addr union
-+ // - *TIPCServiceRange: "nameseq" variant in the C addr union
-+ // - *TIPCServiceName: "name" variant in the C addr union
-+ //
-+ // If nil, EINVAL will be returned when the structure is used.
-+ Addr TIPCAddr
-+
-+ raw RawSockaddrTIPC
-+}
-+
-+// TIPCAddr is implemented by types that can be used as an address for
-+// SockaddrTIPC. It is only implemented by *TIPCSocketAddr, *TIPCServiceRange,
-+// and *TIPCServiceName.
-+type TIPCAddr interface {
-+ tipcAddrtype() uint8
-+ tipcAddr() [12]byte
-+}
-+
-+func (sa *TIPCSocketAddr) tipcAddr() [12]byte {
-+ var out [12]byte
-+ copy(out[:], (*(*[unsafe.Sizeof(TIPCSocketAddr{})]byte)(unsafe.Pointer(sa)))[:])
-+ return out
-+}
-+
-+func (sa *TIPCSocketAddr) tipcAddrtype() uint8 { return TIPC_SOCKET_ADDR }
-+
-+func (sa *TIPCServiceRange) tipcAddr() [12]byte {
-+ var out [12]byte
-+ copy(out[:], (*(*[unsafe.Sizeof(TIPCServiceRange{})]byte)(unsafe.Pointer(sa)))[:])
-+ return out
-+}
-+
-+func (sa *TIPCServiceRange) tipcAddrtype() uint8 { return TIPC_SERVICE_RANGE }
-+
-+func (sa *TIPCServiceName) tipcAddr() [12]byte {
-+ var out [12]byte
-+ copy(out[:], (*(*[unsafe.Sizeof(TIPCServiceName{})]byte)(unsafe.Pointer(sa)))[:])
-+ return out
-+}
-+
-+func (sa *TIPCServiceName) tipcAddrtype() uint8 { return TIPC_SERVICE_ADDR }
-+
-+func (sa *SockaddrTIPC) sockaddr() (unsafe.Pointer, _Socklen, error) {
-+ if sa.Addr == nil {
-+ return nil, 0, EINVAL
-+ }
-+
-+ sa.raw.Family = AF_TIPC
-+ sa.raw.Scope = int8(sa.Scope)
-+ sa.raw.Addrtype = sa.Addr.tipcAddrtype()
-+ sa.raw.Addr = sa.Addr.tipcAddr()
-+
-+ return unsafe.Pointer(&sa.raw), SizeofSockaddrTIPC, nil
-+}
-+
-+// SockaddrL2TPIP implements the Sockaddr interface for IPPROTO_L2TP/AF_INET sockets.
-+type SockaddrL2TPIP struct {
-+ Addr [4]byte
-+ ConnId uint32
-+ raw RawSockaddrL2TPIP
-+}
-+
-+func (sa *SockaddrL2TPIP) sockaddr() (unsafe.Pointer, _Socklen, error) {
-+ sa.raw.Family = AF_INET
-+ sa.raw.Conn_id = sa.ConnId
-+ for i := 0; i < len(sa.Addr); i++ {
-+ sa.raw.Addr[i] = sa.Addr[i]
-+ }
-+ return unsafe.Pointer(&sa.raw), SizeofSockaddrL2TPIP, nil
-+}
-+
-+// SockaddrL2TPIP6 implements the Sockaddr interface for IPPROTO_L2TP/AF_INET6 sockets.
-+type SockaddrL2TPIP6 struct {
-+ Addr [16]byte
-+ ZoneId uint32
-+ ConnId uint32
-+ raw RawSockaddrL2TPIP6
-+}
-+
-+func (sa *SockaddrL2TPIP6) sockaddr() (unsafe.Pointer, _Socklen, error) {
-+ sa.raw.Family = AF_INET6
-+ sa.raw.Conn_id = sa.ConnId
-+ sa.raw.Scope_id = sa.ZoneId
-+ for i := 0; i < len(sa.Addr); i++ {
-+ sa.raw.Addr[i] = sa.Addr[i]
-+ }
-+ return unsafe.Pointer(&sa.raw), SizeofSockaddrL2TPIP6, nil
-+}
-+
-+func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
- switch rsa.Addr.Family {
- case AF_NETLINK:
- pp := (*RawSockaddrNetlink)(unsafe.Pointer(rsa))
-@@ -675,30 +918,63 @@ func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
- for n < len(pp.Path) && pp.Path[n] != 0 {
- n++
- }
-- bytes := (*[10000]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
-+ bytes := (*[len(pp.Path)]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
- sa.Name = string(bytes)
- return sa, nil
-
- case AF_INET:
-- pp := (*RawSockaddrInet4)(unsafe.Pointer(rsa))
-- sa := new(SockaddrInet4)
-- p := (*[2]byte)(unsafe.Pointer(&pp.Port))
-- sa.Port = int(p[0])<<8 + int(p[1])
-- for i := 0; i < len(sa.Addr); i++ {
-- sa.Addr[i] = pp.Addr[i]
-+ proto, err := GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ switch proto {
-+ case IPPROTO_L2TP:
-+ pp := (*RawSockaddrL2TPIP)(unsafe.Pointer(rsa))
-+ sa := new(SockaddrL2TPIP)
-+ sa.ConnId = pp.Conn_id
-+ for i := 0; i < len(sa.Addr); i++ {
-+ sa.Addr[i] = pp.Addr[i]
-+ }
-+ return sa, nil
-+ default:
-+ pp := (*RawSockaddrInet4)(unsafe.Pointer(rsa))
-+ sa := new(SockaddrInet4)
-+ p := (*[2]byte)(unsafe.Pointer(&pp.Port))
-+ sa.Port = int(p[0])<<8 + int(p[1])
-+ for i := 0; i < len(sa.Addr); i++ {
-+ sa.Addr[i] = pp.Addr[i]
-+ }
-+ return sa, nil
- }
-- return sa, nil
-
- case AF_INET6:
-- pp := (*RawSockaddrInet6)(unsafe.Pointer(rsa))
-- sa := new(SockaddrInet6)
-- p := (*[2]byte)(unsafe.Pointer(&pp.Port))
-- sa.Port = int(p[0])<<8 + int(p[1])
-- sa.ZoneId = pp.Scope_id
-- for i := 0; i < len(sa.Addr); i++ {
-- sa.Addr[i] = pp.Addr[i]
-+ proto, err := GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ switch proto {
-+ case IPPROTO_L2TP:
-+ pp := (*RawSockaddrL2TPIP6)(unsafe.Pointer(rsa))
-+ sa := new(SockaddrL2TPIP6)
-+ sa.ConnId = pp.Conn_id
-+ sa.ZoneId = pp.Scope_id
-+ for i := 0; i < len(sa.Addr); i++ {
-+ sa.Addr[i] = pp.Addr[i]
-+ }
-+ return sa, nil
-+ default:
-+ pp := (*RawSockaddrInet6)(unsafe.Pointer(rsa))
-+ sa := new(SockaddrInet6)
-+ p := (*[2]byte)(unsafe.Pointer(&pp.Port))
-+ sa.Port = int(p[0])<<8 + int(p[1])
-+ sa.ZoneId = pp.Scope_id
-+ for i := 0; i < len(sa.Addr); i++ {
-+ sa.Addr[i] = pp.Addr[i]
-+ }
-+ return sa, nil
- }
-- return sa, nil
-
- case AF_VSOCK:
- pp := (*RawSockaddrVM)(unsafe.Pointer(rsa))
-@@ -706,6 +982,76 @@ func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
- CID: pp.Cid,
- Port: pp.Port,
- }
-+ return sa, nil
-+ case AF_BLUETOOTH:
-+ proto, err := GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL)
-+ if err != nil {
-+ return nil, err
-+ }
-+ // only BTPROTO_L2CAP and BTPROTO_RFCOMM can accept connections
-+ switch proto {
-+ case BTPROTO_L2CAP:
-+ pp := (*RawSockaddrL2)(unsafe.Pointer(rsa))
-+ sa := &SockaddrL2{
-+ PSM: pp.Psm,
-+ CID: pp.Cid,
-+ Addr: pp.Bdaddr,
-+ AddrType: pp.Bdaddr_type,
-+ }
-+ return sa, nil
-+ case BTPROTO_RFCOMM:
-+ pp := (*RawSockaddrRFCOMM)(unsafe.Pointer(rsa))
-+ sa := &SockaddrRFCOMM{
-+ Channel: pp.Channel,
-+ Addr: pp.Bdaddr,
-+ }
-+ return sa, nil
-+ }
-+ case AF_XDP:
-+ pp := (*RawSockaddrXDP)(unsafe.Pointer(rsa))
-+ sa := &SockaddrXDP{
-+ Flags: pp.Flags,
-+ Ifindex: pp.Ifindex,
-+ QueueID: pp.Queue_id,
-+ SharedUmemFD: pp.Shared_umem_fd,
-+ }
-+ return sa, nil
-+ case AF_PPPOX:
-+ pp := (*RawSockaddrPPPoX)(unsafe.Pointer(rsa))
-+ if binary.BigEndian.Uint32(pp[2:6]) != px_proto_oe {
-+ return nil, EINVAL
-+ }
-+ sa := &SockaddrPPPoE{
-+ SID: binary.BigEndian.Uint16(pp[6:8]),
-+ Remote: pp[8:14],
-+ }
-+ for i := 14; i < 14+IFNAMSIZ; i++ {
-+ if pp[i] == 0 {
-+ sa.Dev = string(pp[14:i])
-+ break
-+ }
-+ }
-+ return sa, nil
-+ case AF_TIPC:
-+ pp := (*RawSockaddrTIPC)(unsafe.Pointer(rsa))
-+
-+ sa := &SockaddrTIPC{
-+ Scope: int(pp.Scope),
-+ }
-+
-+ // Determine which union variant is present in pp.Addr by checking
-+ // pp.Addrtype.
-+ switch pp.Addrtype {
-+ case TIPC_SERVICE_RANGE:
-+ sa.Addr = (*TIPCServiceRange)(unsafe.Pointer(&pp.Addr))
-+ case TIPC_SERVICE_ADDR:
-+ sa.Addr = (*TIPCServiceName)(unsafe.Pointer(&pp.Addr))
-+ case TIPC_SOCKET_ADDR:
-+ sa.Addr = (*TIPCSocketAddr)(unsafe.Pointer(&pp.Addr))
-+ default:
-+ return nil, EINVAL
-+ }
-+
- return sa, nil
- }
- return nil, EAFNOSUPPORT
-@@ -718,7 +1064,7 @@ func Accept(fd int) (nfd int, sa Sockaddr, err error) {
- if err != nil {
- return
- }
-- sa, err = anyToSockaddr(&rsa)
-+ sa, err = anyToSockaddr(fd, &rsa)
- if err != nil {
- Close(nfd)
- nfd = 0
-@@ -736,7 +1082,7 @@ func Accept4(fd int, flags int) (nfd int, sa Sockaddr, err error) {
- if len > SizeofSockaddrAny {
- panic("RawSockaddrAny too small")
- }
-- sa, err = anyToSockaddr(&rsa)
-+ sa, err = anyToSockaddr(fd, &rsa)
- if err != nil {
- Close(nfd)
- nfd = 0
-@@ -750,20 +1096,7 @@ func Getsockname(fd int) (sa Sockaddr, err error) {
- if err = getsockname(fd, &rsa, &len); err != nil {
- return
- }
-- return anyToSockaddr(&rsa)
--}
--
--func GetsockoptInet4Addr(fd, level, opt int) (value [4]byte, err error) {
-- vallen := _Socklen(4)
-- err = getsockopt(fd, level, opt, unsafe.Pointer(&value[0]), &vallen)
-- return value, err
--}
--
--func GetsockoptIPMreq(fd, level, opt int) (*IPMreq, error) {
-- var value IPMreq
-- vallen := _Socklen(SizeofIPMreq)
-- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
-- return &value, err
-+ return anyToSockaddr(fd, &rsa)
- }
-
- func GetsockoptIPMreqn(fd, level, opt int) (*IPMreqn, error) {
-@@ -773,37 +1106,48 @@ func GetsockoptIPMreqn(fd, level, opt int) (*IPMreqn, error) {
- return &value, err
- }
-
--func GetsockoptIPv6Mreq(fd, level, opt int) (*IPv6Mreq, error) {
-- var value IPv6Mreq
-- vallen := _Socklen(SizeofIPv6Mreq)
-+func GetsockoptUcred(fd, level, opt int) (*Ucred, error) {
-+ var value Ucred
-+ vallen := _Socklen(SizeofUcred)
- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
- return &value, err
- }
-
--func GetsockoptIPv6MTUInfo(fd, level, opt int) (*IPv6MTUInfo, error) {
-- var value IPv6MTUInfo
-- vallen := _Socklen(SizeofIPv6MTUInfo)
-+func GetsockoptTCPInfo(fd, level, opt int) (*TCPInfo, error) {
-+ var value TCPInfo
-+ vallen := _Socklen(SizeofTCPInfo)
- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
- return &value, err
- }
-
--func GetsockoptICMPv6Filter(fd, level, opt int) (*ICMPv6Filter, error) {
-- var value ICMPv6Filter
-- vallen := _Socklen(SizeofICMPv6Filter)
-- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
-- return &value, err
-+// GetsockoptString returns the string value of the socket option opt for the
-+// socket associated with fd at the given socket level.
-+func GetsockoptString(fd, level, opt int) (string, error) {
-+ buf := make([]byte, 256)
-+ vallen := _Socklen(len(buf))
-+ err := getsockopt(fd, level, opt, unsafe.Pointer(&buf[0]), &vallen)
-+ if err != nil {
-+ if err == ERANGE {
-+ buf = make([]byte, vallen)
-+ err = getsockopt(fd, level, opt, unsafe.Pointer(&buf[0]), &vallen)
-+ }
-+ if err != nil {
-+ return "", err
-+ }
-+ }
-+ return string(buf[:vallen-1]), nil
- }
-
--func GetsockoptUcred(fd, level, opt int) (*Ucred, error) {
-- var value Ucred
-- vallen := _Socklen(SizeofUcred)
-+func GetsockoptTpacketStats(fd, level, opt int) (*TpacketStats, error) {
-+ var value TpacketStats
-+ vallen := _Socklen(SizeofTpacketStats)
- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
- return &value, err
- }
-
--func GetsockoptTCPInfo(fd, level, opt int) (*TCPInfo, error) {
-- var value TCPInfo
-- vallen := _Socklen(SizeofTCPInfo)
-+func GetsockoptTpacketStatsV3(fd, level, opt int) (*TpacketStatsV3, error) {
-+ var value TpacketStatsV3
-+ vallen := _Socklen(SizeofTpacketStatsV3)
- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
- return &value, err
- }
-@@ -812,6 +1156,32 @@ func SetsockoptIPMreqn(fd, level, opt int, mreq *IPMreqn) (err error) {
- return setsockopt(fd, level, opt, unsafe.Pointer(mreq), unsafe.Sizeof(*mreq))
- }
-
-+func SetsockoptPacketMreq(fd, level, opt int, mreq *PacketMreq) error {
-+ return setsockopt(fd, level, opt, unsafe.Pointer(mreq), unsafe.Sizeof(*mreq))
-+}
-+
-+// SetsockoptSockFprog attaches a classic BPF or an extended BPF program to a
-+// socket to filter incoming packets. See 'man 7 socket' for usage information.
-+func SetsockoptSockFprog(fd, level, opt int, fprog *SockFprog) error {
-+ return setsockopt(fd, level, opt, unsafe.Pointer(fprog), unsafe.Sizeof(*fprog))
-+}
-+
-+func SetsockoptCanRawFilter(fd, level, opt int, filter []CanFilter) error {
-+ var p unsafe.Pointer
-+ if len(filter) > 0 {
-+ p = unsafe.Pointer(&filter[0])
-+ }
-+ return setsockopt(fd, level, opt, p, uintptr(len(filter)*SizeofCanFilter))
-+}
-+
-+func SetsockoptTpacketReq(fd, level, opt int, tp *TpacketReq) error {
-+ return setsockopt(fd, level, opt, unsafe.Pointer(tp), unsafe.Sizeof(*tp))
-+}
-+
-+func SetsockoptTpacketReq3(fd, level, opt int, tp *TpacketReq3) error {
-+ return setsockopt(fd, level, opt, unsafe.Pointer(tp), unsafe.Sizeof(*tp))
-+}
-+
- // Keyctl Commands (http://man7.org/linux/man-pages/man2/keyctl.2.html)
-
- // KeyctlInt calls keyctl commands in which each argument is an int.
-@@ -919,6 +1289,34 @@ func KeyctlDHCompute(params *KeyctlDHParams, buffer []byte) (size int, err error
- return keyctlDH(KEYCTL_DH_COMPUTE, params, buffer)
- }
-
-+// KeyctlRestrictKeyring implements the KEYCTL_RESTRICT_KEYRING command. This
-+// command limits the set of keys that can be linked to the keyring, regardless
-+// of keyring permissions. The command requires the "setattr" permission.
-+//
-+// When called with an empty keyType the command locks the keyring, preventing
-+// any further keys from being linked to the keyring.
-+//
-+// The "asymmetric" keyType defines restrictions requiring key payloads to be
-+// DER encoded X.509 certificates signed by keys in another keyring. Restrictions
-+// for "asymmetric" include "builtin_trusted", "builtin_and_secondary_trusted",
-+// "key_or_keyring:<key>", and "key_or_keyring:<key>:chain".
-+//
-+// As of Linux 4.12, only the "asymmetric" keyType defines type-specific
-+// restrictions.
-+//
-+// See the full documentation at:
-+// http://man7.org/linux/man-pages/man3/keyctl_restrict_keyring.3.html
-+// http://man7.org/linux/man-pages/man2/keyctl.2.html
-+func KeyctlRestrictKeyring(ringid int, keyType string, restriction string) error {
-+ if keyType == "" {
-+ return keyctlRestrictKeyring(KEYCTL_RESTRICT_KEYRING, ringid)
-+ }
-+ return keyctlRestrictKeyringByType(KEYCTL_RESTRICT_KEYRING, ringid, keyType, restriction)
-+}
-+
-+//sys keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) = SYS_KEYCTL
-+//sys keyctlRestrictKeyring(cmd int, arg2 int) (err error) = SYS_KEYCTL
-+
- func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) {
- var msg Msghdr
- var rsa RawSockaddrAny
-@@ -926,22 +1324,24 @@ func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from
- msg.Namelen = uint32(SizeofSockaddrAny)
- var iov Iovec
- if len(p) > 0 {
-- iov.Base = (*byte)(unsafe.Pointer(&p[0]))
-+ iov.Base = &p[0]
- iov.SetLen(len(p))
- }
- var dummy byte
- if len(oob) > 0 {
-- var sockType int
-- sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
-- if err != nil {
-- return
-+ if len(p) == 0 {
-+ var sockType int
-+ sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
-+ if err != nil {
-+ return
-+ }
-+ // receive at least one normal byte
-+ if sockType != SOCK_DGRAM {
-+ iov.Base = &dummy
-+ iov.SetLen(1)
-+ }
- }
-- // receive at least one normal byte
-- if sockType != SOCK_DGRAM && len(p) == 0 {
-- iov.Base = &dummy
-- iov.SetLen(1)
-- }
-- msg.Control = (*byte)(unsafe.Pointer(&oob[0]))
-+ msg.Control = &oob[0]
- msg.SetControllen(len(oob))
- }
- msg.Iov = &iov
-@@ -953,7 +1353,7 @@ func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from
- recvflags = int(msg.Flags)
- // source address is only specified if the socket is unconnected
- if rsa.Addr.Family != AF_UNSPEC {
-- from, err = anyToSockaddr(&rsa)
-+ from, err = anyToSockaddr(fd, &rsa)
- }
- return
- }
-@@ -974,26 +1374,28 @@ func SendmsgN(fd int, p, oob []byte, to Sockaddr, flags int) (n int, err error)
- }
- }
- var msg Msghdr
-- msg.Name = (*byte)(unsafe.Pointer(ptr))
-+ msg.Name = (*byte)(ptr)
- msg.Namelen = uint32(salen)
- var iov Iovec
- if len(p) > 0 {
-- iov.Base = (*byte)(unsafe.Pointer(&p[0]))
-+ iov.Base = &p[0]
- iov.SetLen(len(p))
- }
- var dummy byte
- if len(oob) > 0 {
-- var sockType int
-- sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
-- if err != nil {
-- return 0, err
-+ if len(p) == 0 {
-+ var sockType int
-+ sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
-+ if err != nil {
-+ return 0, err
-+ }
-+ // send at least one normal byte
-+ if sockType != SOCK_DGRAM {
-+ iov.Base = &dummy
-+ iov.SetLen(1)
-+ }
- }
-- // send at least one normal byte
-- if sockType != SOCK_DGRAM && len(p) == 0 {
-- iov.Base = &dummy
-- iov.SetLen(1)
-- }
-- msg.Control = (*byte)(unsafe.Pointer(&oob[0]))
-+ msg.Control = &oob[0]
- msg.SetControllen(len(oob))
- }
- msg.Iov = &iov
-@@ -1021,20 +1423,20 @@ func ptracePeek(req int, pid int, addr uintptr, out []byte) (count int, err erro
- // The ptrace syscall differs from glibc's ptrace.
- // Peeks returns the word in *data, not as the return value.
-
-- var buf [sizeofPtr]byte
-+ var buf [SizeofPtr]byte
-
-- // Leading edge. PEEKTEXT/PEEKDATA don't require aligned
-+ // Leading edge. PEEKTEXT/PEEKDATA don't require aligned
- // access (PEEKUSER warns that it might), but if we don't
- // align our reads, we might straddle an unmapped page
- // boundary and not get the bytes leading up to the page
- // boundary.
- n := 0
-- if addr%sizeofPtr != 0 {
-- err = ptrace(req, pid, addr-addr%sizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
-+ if addr%SizeofPtr != 0 {
-+ err = ptrace(req, pid, addr-addr%SizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
- if err != nil {
- return 0, err
- }
-- n += copy(out, buf[addr%sizeofPtr:])
-+ n += copy(out, buf[addr%SizeofPtr:])
- out = out[n:]
- }
-
-@@ -1072,15 +1474,15 @@ func ptracePoke(pokeReq int, peekReq int, pid int, addr uintptr, data []byte) (c
-
- // Leading edge.
- n := 0
-- if addr%sizeofPtr != 0 {
-- var buf [sizeofPtr]byte
-- err = ptrace(peekReq, pid, addr-addr%sizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
-+ if addr%SizeofPtr != 0 {
-+ var buf [SizeofPtr]byte
-+ err = ptrace(peekReq, pid, addr-addr%SizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
- if err != nil {
- return 0, err
- }
-- n += copy(buf[addr%sizeofPtr:], data)
-+ n += copy(buf[addr%SizeofPtr:], data)
- word := *((*uintptr)(unsafe.Pointer(&buf[0])))
-- err = ptrace(pokeReq, pid, addr-addr%sizeofPtr, word)
-+ err = ptrace(pokeReq, pid, addr-addr%SizeofPtr, word)
- if err != nil {
- return 0, err
- }
-@@ -1088,19 +1490,19 @@ func ptracePoke(pokeReq int, peekReq int, pid int, addr uintptr, data []byte) (c
- }
-
- // Interior.
-- for len(data) > sizeofPtr {
-+ for len(data) > SizeofPtr {
- word := *((*uintptr)(unsafe.Pointer(&data[0])))
- err = ptrace(pokeReq, pid, addr+uintptr(n), word)
- if err != nil {
- return n, err
- }
-- n += sizeofPtr
-- data = data[sizeofPtr:]
-+ n += SizeofPtr
-+ data = data[SizeofPtr:]
- }
-
- // Trailing edge.
- if len(data) > 0 {
-- var buf [sizeofPtr]byte
-+ var buf [SizeofPtr]byte
- err = ptrace(peekReq, pid, addr+uintptr(n), uintptr(unsafe.Pointer(&buf[0])))
- if err != nil {
- return n, err
-@@ -1125,6 +1527,10 @@ func PtracePokeData(pid int, addr uintptr, data []byte) (count int, err error) {
- return ptracePoke(PTRACE_POKEDATA, PTRACE_PEEKDATA, pid, addr, data)
- }
-
-+func PtracePokeUser(pid int, addr uintptr, data []byte) (count int, err error) {
-+ return ptracePoke(PTRACE_POKEUSR, PTRACE_PEEKUSR, pid, addr, data)
-+}
-+
- func PtraceGetRegs(pid int, regsout *PtraceRegs) (err error) {
- return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
- }
-@@ -1154,8 +1560,12 @@ func PtraceSyscall(pid int, signal int) (err error) {
-
- func PtraceSingleStep(pid int) (err error) { return ptrace(PTRACE_SINGLESTEP, pid, 0, 0) }
-
-+func PtraceInterrupt(pid int) (err error) { return ptrace(PTRACE_INTERRUPT, pid, 0, 0) }
-+
- func PtraceAttach(pid int) (err error) { return ptrace(PTRACE_ATTACH, pid, 0, 0) }
-
-+func PtraceSeize(pid int) (err error) { return ptrace(PTRACE_SEIZE, pid, 0, 0) }
-+
- func PtraceDetach(pid int) (err error) { return ptrace(PTRACE_DETACH, pid, 0, 0) }
-
- //sys reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error)
-@@ -1164,10 +1574,6 @@ func Reboot(cmd int) (err error) {
- return reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, cmd, "")
- }
-
--func ReadDirent(fd int, buf []byte) (n int, err error) {
-- return Getdents(fd, buf)
--}
--
- func direntIno(buf []byte) (uint64, bool) {
- return readInt(buf, unsafe.Offsetof(Dirent{}.Ino), unsafe.Sizeof(Dirent{}.Ino))
- }
-@@ -1199,6 +1605,13 @@ func Mount(source string, target string, fstype string, flags uintptr, data stri
- return mount(source, target, fstype, flags, datap)
- }
-
-+func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-+ if raceenabled {
-+ raceReleaseMerge(unsafe.Pointer(&ioSync))
-+ }
-+ return sendfile(outfd, infd, offset, count)
-+}
-+
- // Sendto
- // Recvfrom
- // Socketpair
-@@ -1209,26 +1622,33 @@ func Mount(source string, target string, fstype string, flags uintptr, data stri
- //sys Acct(path string) (err error)
- //sys AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error)
- //sys Adjtimex(buf *Timex) (state int, err error)
-+//sysnb Capget(hdr *CapUserHeader, data *CapUserData) (err error)
-+//sysnb Capset(hdr *CapUserHeader, data *CapUserData) (err error)
- //sys Chdir(path string) (err error)
- //sys Chroot(path string) (err error)
-+//sys ClockGetres(clockid int32, res *Timespec) (err error)
- //sys ClockGettime(clockid int32, time *Timespec) (err error)
-+//sys ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error)
- //sys Close(fd int) (err error)
- //sys CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error)
-+//sys DeleteModule(name string, flags int) (err error)
- //sys Dup(oldfd int) (fd int, err error)
- //sys Dup3(oldfd int, newfd int, flags int) (err error)
--//sysnb EpollCreate(size int) (fd int, err error)
- //sysnb EpollCreate1(flag int) (fd int, err error)
- //sysnb EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error)
- //sys Eventfd(initval uint, flags int) (fd int, err error) = SYS_EVENTFD2
- //sys Exit(code int) = SYS_EXIT_GROUP
--//sys Faccessat(dirfd int, path string, mode uint32, flags int) (err error)
- //sys Fallocate(fd int, mode uint32, off int64, len int64) (err error)
- //sys Fchdir(fd int) (err error)
- //sys Fchmod(fd int, mode uint32) (err error)
- //sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
--//sys fcntl(fd int, cmd int, arg int) (val int, err error)
- //sys Fdatasync(fd int) (err error)
-+//sys Fgetxattr(fd int, attr string, dest []byte) (sz int, err error)
-+//sys FinitModule(fd int, params string, flags int) (err error)
-+//sys Flistxattr(fd int, dest []byte) (sz int, err error)
- //sys Flock(fd int, how int) (err error)
-+//sys Fremovexattr(fd int, attr string) (err error)
-+//sys Fsetxattr(fd int, attr string, dest []byte, flags int) (err error)
- //sys Fsync(fd int) (err error)
- //sys Getdents(fd int, buf []byte) (n int, err error) = SYS_GETDENTS64
- //sysnb Getpgid(pid int) (pgid int, err error)
-@@ -1246,6 +1666,7 @@ func Getpgrp() (pid int) {
- //sysnb Getsid(pid int) (sid int, err error)
- //sysnb Gettid() (tid int)
- //sys Getxattr(path string, attr string, dest []byte) (sz int, err error)
-+//sys InitModule(moduleImage []byte, params string) (err error)
- //sys InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error)
- //sysnb InotifyInit1(flags int) (fd int, err error)
- //sysnb InotifyRmWatch(fd int, watchdesc uint32) (success int, err error)
-@@ -1256,15 +1677,18 @@ func Getpgrp() (pid int) {
- //sys Llistxattr(path string, dest []byte) (sz int, err error)
- //sys Lremovexattr(path string, attr string) (err error)
- //sys Lsetxattr(path string, attr string, data []byte, flags int) (err error)
-+//sys MemfdCreate(name string, flags int) (fd int, err error)
- //sys Mkdirat(dirfd int, path string, mode uint32) (err error)
- //sys Mknodat(dirfd int, path string, mode uint32, dev int) (err error)
- //sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
-+//sys PerfEventOpen(attr *PerfEventAttr, pid int, cpu int, groupFd int, flags int) (fd int, err error)
- //sys PivotRoot(newroot string, putold string) (err error) = SYS_PIVOT_ROOT
- //sysnb prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) = SYS_PRLIMIT64
- //sys Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error)
-+//sys Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) = SYS_PSELECT6
- //sys read(fd int, p []byte) (n int, err error)
- //sys Removexattr(path string, attr string) (err error)
--//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
-+//sys Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error)
- //sys RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error)
- //sys Setdomainname(p []byte) (err error)
- //sys Sethostname(p []byte) (err error)
-@@ -1273,6 +1697,17 @@ func Getpgrp() (pid int) {
- //sysnb Settimeofday(tv *Timeval) (err error)
- //sys Setns(fd int, nstype int) (err error)
-
-+// PrctlRetInt performs a prctl operation specified by option and further
-+// optional arguments arg2 through arg5 depending on option. It returns a
-+// non-negative integer that is returned by the prctl syscall.
-+func PrctlRetInt(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (int, error) {
-+ ret, _, err := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-+ if err != 0 {
-+ return 0, err
-+ }
-+ return int(ret), nil
-+}
-+
- // issue 1435.
- // On linux Setuid and Setgid only affects the current thread, not the process.
- // This does not match what most callers expect so we must return an error
-@@ -1286,8 +1721,38 @@ func Setgid(uid int) (err error) {
- return EOPNOTSUPP
- }
-
-+// SetfsgidRetGid sets fsgid for current thread and returns previous fsgid set.
-+// setfsgid(2) will return a non-nil error only if its caller lacks CAP_SETUID capability.
-+// If the call fails due to other reasons, current fsgid will be returned.
-+func SetfsgidRetGid(gid int) (int, error) {
-+ return setfsgid(gid)
-+}
-+
-+// SetfsuidRetUid sets fsuid for current thread and returns previous fsuid set.
-+// setfsgid(2) will return a non-nil error only if its caller lacks CAP_SETUID capability
-+// If the call fails due to other reasons, current fsuid will be returned.
-+func SetfsuidRetUid(uid int) (int, error) {
-+ return setfsuid(uid)
-+}
-+
-+func Setfsgid(gid int) error {
-+ _, err := setfsgid(gid)
-+ return err
-+}
-+
-+func Setfsuid(uid int) error {
-+ _, err := setfsuid(uid)
-+ return err
-+}
-+
-+func Signalfd(fd int, sigmask *Sigset_t, flags int) (newfd int, err error) {
-+ return signalfd(fd, sigmask, _C__NSIG/8, flags)
-+}
-+
- //sys Setpriority(which int, who int, prio int) (err error)
- //sys Setxattr(path string, attr string, data []byte, flags int) (err error)
-+//sys signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) = SYS_SIGNALFD4
-+//sys Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error)
- //sys Sync()
- //sys Syncfs(fd int) (err error)
- //sysnb Sysinfo(info *Sysinfo_t) (err error)
-@@ -1298,11 +1763,127 @@ func Setgid(uid int) (err error) {
- //sysnb Uname(buf *Utsname) (err error)
- //sys Unmount(target string, flags int) (err error) = SYS_UMOUNT2
- //sys Unshare(flags int) (err error)
--//sys Ustat(dev int, ubuf *Ustat_t) (err error)
- //sys write(fd int, p []byte) (n int, err error)
- //sys exitThread(code int) (err error) = SYS_EXIT
- //sys readlen(fd int, p *byte, np int) (n int, err error) = SYS_READ
- //sys writelen(fd int, p *byte, np int) (n int, err error) = SYS_WRITE
-+//sys readv(fd int, iovs []Iovec) (n int, err error) = SYS_READV
-+//sys writev(fd int, iovs []Iovec) (n int, err error) = SYS_WRITEV
-+//sys preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) = SYS_PREADV
-+//sys pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) = SYS_PWRITEV
-+//sys preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) = SYS_PREADV2
-+//sys pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) = SYS_PWRITEV2
-+
-+func bytes2iovec(bs [][]byte) []Iovec {
-+ iovecs := make([]Iovec, len(bs))
-+ for i, b := range bs {
-+ iovecs[i].SetLen(len(b))
-+ if len(b) > 0 {
-+ iovecs[i].Base = &b[0]
-+ } else {
-+ iovecs[i].Base = (*byte)(unsafe.Pointer(&_zero))
-+ }
-+ }
-+ return iovecs
-+}
-+
-+// offs2lohi splits offs into its lower and upper unsigned long. On 64-bit
-+// systems, hi will always be 0. On 32-bit systems, offs will be split in half.
-+// preadv/pwritev chose this calling convention so they don't need to add a
-+// padding-register for alignment on ARM.
-+func offs2lohi(offs int64) (lo, hi uintptr) {
-+ return uintptr(offs), uintptr(uint64(offs) >> SizeofLong)
-+}
-+
-+func Readv(fd int, iovs [][]byte) (n int, err error) {
-+ iovecs := bytes2iovec(iovs)
-+ n, err = readv(fd, iovecs)
-+ readvRacedetect(iovecs, n, err)
-+ return n, err
-+}
-+
-+func Preadv(fd int, iovs [][]byte, offset int64) (n int, err error) {
-+ iovecs := bytes2iovec(iovs)
-+ lo, hi := offs2lohi(offset)
-+ n, err = preadv(fd, iovecs, lo, hi)
-+ readvRacedetect(iovecs, n, err)
-+ return n, err
-+}
-+
-+func Preadv2(fd int, iovs [][]byte, offset int64, flags int) (n int, err error) {
-+ iovecs := bytes2iovec(iovs)
-+ lo, hi := offs2lohi(offset)
-+ n, err = preadv2(fd, iovecs, lo, hi, flags)
-+ readvRacedetect(iovecs, n, err)
-+ return n, err
-+}
-+
-+func readvRacedetect(iovecs []Iovec, n int, err error) {
-+ if !raceenabled {
-+ return
-+ }
-+ for i := 0; n > 0 && i < len(iovecs); i++ {
-+ m := int(iovecs[i].Len)
-+ if m > n {
-+ m = n
-+ }
-+ n -= m
-+ if m > 0 {
-+ raceWriteRange(unsafe.Pointer(iovecs[i].Base), m)
-+ }
-+ }
-+ if err == nil {
-+ raceAcquire(unsafe.Pointer(&ioSync))
-+ }
-+}
-+
-+func Writev(fd int, iovs [][]byte) (n int, err error) {
-+ iovecs := bytes2iovec(iovs)
-+ if raceenabled {
-+ raceReleaseMerge(unsafe.Pointer(&ioSync))
-+ }
-+ n, err = writev(fd, iovecs)
-+ writevRacedetect(iovecs, n)
-+ return n, err
-+}
-+
-+func Pwritev(fd int, iovs [][]byte, offset int64) (n int, err error) {
-+ iovecs := bytes2iovec(iovs)
-+ if raceenabled {
-+ raceReleaseMerge(unsafe.Pointer(&ioSync))
-+ }
-+ lo, hi := offs2lohi(offset)
-+ n, err = pwritev(fd, iovecs, lo, hi)
-+ writevRacedetect(iovecs, n)
-+ return n, err
-+}
-+
-+func Pwritev2(fd int, iovs [][]byte, offset int64, flags int) (n int, err error) {
-+ iovecs := bytes2iovec(iovs)
-+ if raceenabled {
-+ raceReleaseMerge(unsafe.Pointer(&ioSync))
-+ }
-+ lo, hi := offs2lohi(offset)
-+ n, err = pwritev2(fd, iovecs, lo, hi, flags)
-+ writevRacedetect(iovecs, n)
-+ return n, err
-+}
-+
-+func writevRacedetect(iovecs []Iovec, n int) {
-+ if !raceenabled {
-+ return
-+ }
-+ for i := 0; n > 0 && i < len(iovecs); i++ {
-+ m := int(iovecs[i].Len)
-+ if m > n {
-+ m = n
-+ }
-+ n -= m
-+ if m > 0 {
-+ raceReadRange(unsafe.Pointer(iovecs[i].Base), m)
-+ }
-+ }
-+}
-
- // mmap varies by architecture; see syscall_linux_*.go.
- //sys munmap(addr uintptr, length uintptr) (err error)
-@@ -1332,15 +1913,12 @@ func Munmap(b []byte) (err error) {
- // Vmsplice splices user pages from a slice of Iovecs into a pipe specified by fd,
- // using the specified flags.
- func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) {
-- n, _, errno := Syscall6(
-- SYS_VMSPLICE,
-- uintptr(fd),
-- uintptr(unsafe.Pointer(&iovs[0])),
-- uintptr(len(iovs)),
-- uintptr(flags),
-- 0,
-- 0,
-- )
-+ var p unsafe.Pointer
-+ if len(iovs) > 0 {
-+ p = unsafe.Pointer(&iovs[0])
-+ }
-+
-+ n, _, errno := Syscall6(SYS_VMSPLICE, uintptr(fd), uintptr(p), uintptr(len(iovs)), uintptr(flags), 0, 0)
- if errno != 0 {
- return 0, syscall.Errno(errno)
- }
-@@ -1348,6 +1926,164 @@ func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) {
- return int(n), nil
- }
-
-+//sys faccessat(dirfd int, path string, mode uint32) (err error)
-+
-+func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ if flags & ^(AT_SYMLINK_NOFOLLOW|AT_EACCESS) != 0 {
-+ return EINVAL
-+ }
-+
-+ // The Linux kernel faccessat system call does not take any flags.
-+ // The glibc faccessat implements the flags itself; see
-+ // https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/faccessat.c;hb=HEAD
-+ // Because people naturally expect syscall.Faccessat to act
-+ // like C faccessat, we do the same.
-+
-+ if flags == 0 {
-+ return faccessat(dirfd, path, mode)
-+ }
-+
-+ var st Stat_t
-+ if err := Fstatat(dirfd, path, &st, flags&AT_SYMLINK_NOFOLLOW); err != nil {
-+ return err
-+ }
-+
-+ mode &= 7
-+ if mode == 0 {
-+ return nil
-+ }
-+
-+ var uid int
-+ if flags&AT_EACCESS != 0 {
-+ uid = Geteuid()
-+ } else {
-+ uid = Getuid()
-+ }
-+
-+ if uid == 0 {
-+ if mode&1 == 0 {
-+ // Root can read and write any file.
-+ return nil
-+ }
-+ if st.Mode&0111 != 0 {
-+ // Root can execute any file that anybody can execute.
-+ return nil
-+ }
-+ return EACCES
-+ }
-+
-+ var fmode uint32
-+ if uint32(uid) == st.Uid {
-+ fmode = (st.Mode >> 6) & 7
-+ } else {
-+ var gid int
-+ if flags&AT_EACCESS != 0 {
-+ gid = Getegid()
-+ } else {
-+ gid = Getgid()
-+ }
-+
-+ if uint32(gid) == st.Gid {
-+ fmode = (st.Mode >> 3) & 7
-+ } else {
-+ fmode = st.Mode & 7
-+ }
-+ }
-+
-+ if fmode&mode == mode {
-+ return nil
-+ }
-+
-+ return EACCES
-+}
-+
-+//sys nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int, flags int) (err error) = SYS_NAME_TO_HANDLE_AT
-+//sys openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) = SYS_OPEN_BY_HANDLE_AT
-+
-+// fileHandle is the argument to nameToHandleAt and openByHandleAt. We
-+// originally tried to generate it via unix/linux/types.go with "type
-+// fileHandle C.struct_file_handle" but that generated empty structs
-+// for mips64 and mips64le. Instead, hard code it for now (it's the
-+// same everywhere else) until the mips64 generator issue is fixed.
-+type fileHandle struct {
-+ Bytes uint32
-+ Type int32
-+}
-+
-+// FileHandle represents the C struct file_handle used by
-+// name_to_handle_at (see NameToHandleAt) and open_by_handle_at (see
-+// OpenByHandleAt).
-+type FileHandle struct {
-+ *fileHandle
-+}
-+
-+// NewFileHandle constructs a FileHandle.
-+func NewFileHandle(handleType int32, handle []byte) FileHandle {
-+ const hdrSize = unsafe.Sizeof(fileHandle{})
-+ buf := make([]byte, hdrSize+uintptr(len(handle)))
-+ copy(buf[hdrSize:], handle)
-+ fh := (*fileHandle)(unsafe.Pointer(&buf[0]))
-+ fh.Type = handleType
-+ fh.Bytes = uint32(len(handle))
-+ return FileHandle{fh}
-+}
-+
-+func (fh *FileHandle) Size() int { return int(fh.fileHandle.Bytes) }
-+func (fh *FileHandle) Type() int32 { return fh.fileHandle.Type }
-+func (fh *FileHandle) Bytes() []byte {
-+ n := fh.Size()
-+ if n == 0 {
-+ return nil
-+ }
-+ return (*[1 << 30]byte)(unsafe.Pointer(uintptr(unsafe.Pointer(&fh.fileHandle.Type)) + 4))[:n:n]
-+}
-+
-+// NameToHandleAt wraps the name_to_handle_at system call; it obtains
-+// a handle for a path name.
-+func NameToHandleAt(dirfd int, path string, flags int) (handle FileHandle, mountID int, err error) {
-+ var mid _C_int
-+ // Try first with a small buffer, assuming the handle will
-+ // only be 32 bytes.
-+ size := uint32(32 + unsafe.Sizeof(fileHandle{}))
-+ didResize := false
-+ for {
-+ buf := make([]byte, size)
-+ fh := (*fileHandle)(unsafe.Pointer(&buf[0]))
-+ fh.Bytes = size - uint32(unsafe.Sizeof(fileHandle{}))
-+ err = nameToHandleAt(dirfd, path, fh, &mid, flags)
-+ if err == EOVERFLOW {
-+ if didResize {
-+ // We shouldn't need to resize more than once
-+ return
-+ }
-+ didResize = true
-+ size = fh.Bytes + uint32(unsafe.Sizeof(fileHandle{}))
-+ continue
-+ }
-+ if err != nil {
-+ return
-+ }
-+ return FileHandle{fh}, int(mid), nil
-+ }
-+}
-+
-+// OpenByHandleAt wraps the open_by_handle_at system call; it opens a
-+// file via a handle as previously returned by NameToHandleAt.
-+func OpenByHandleAt(mountFD int, handle FileHandle, flags int) (fd int, err error) {
-+ return openByHandleAt(mountFD, handle.fileHandle, flags)
-+}
-+
-+// Klogset wraps the sys_syslog system call; it sets console_loglevel to
-+// the value specified by arg and passes a dummy pointer to bufp.
-+func Klogset(typ int, arg int) (err error) {
-+ var p unsafe.Pointer
-+ _, _, errno := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(p), uintptr(arg))
-+ if errno != 0 {
-+ return errnoErr(errno)
-+ }
-+ return nil
-+}
-+
- /*
- * Unimplemented
- */
-@@ -1355,23 +2091,14 @@ func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) {
- // Alarm
- // ArchPrctl
- // Brk
--// Capget
--// Capset
--// ClockGetres
- // ClockNanosleep
- // ClockSettime
- // Clone
--// CreateModule
--// DeleteModule
- // EpollCtlOld
- // EpollPwait
- // EpollWaitOld
- // Execve
--// Fgetxattr
--// Flistxattr
- // Fork
--// Fremovexattr
--// Fsetxattr
- // Futex
- // GetKernelSyms
- // GetMempolicy
-@@ -1405,13 +2132,11 @@ func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) {
- // Msgget
- // Msgrcv
- // Msgsnd
--// Newfstatat
- // Nfsservctl
- // Personality
- // Pselect6
- // Ptrace
- // Putpmsg
--// QueryModule
- // Quotactl
- // Readahead
- // Readv
-@@ -1426,11 +2151,9 @@ func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) {
- // RtSigtimedwait
- // SchedGetPriorityMax
- // SchedGetPriorityMin
--// SchedGetaffinity
- // SchedGetparam
- // SchedGetscheduler
- // SchedRrGetInterval
--// SchedSetaffinity
- // SchedSetparam
- // SchedYield
- // Security
-@@ -1447,7 +2170,6 @@ func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) {
- // Shmdt
- // Shmget
- // Sigaltstack
--// Signalfd
- // Swapoff
- // Swapon
- // Sysfs
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_386.go b/vendor/golang.org/x/sys/unix/syscall_linux_386.go
-index 2b881b97..a8374b67 100644
---- a/vendor/golang.org/x/sys/unix/syscall_linux_386.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_386.go
-@@ -10,25 +10,15 @@
- package unix
-
- import (
-- "syscall"
- "unsafe"
- )
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = int32(nsec / 1e9)
-- ts.Nsec = int32(nsec % 1e9)
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Sec = int32(nsec / 1e9)
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: int32(sec), Usec: int32(usec)}
- }
-
- //sysnb pipe(p *[2]_C_int) (err error)
-@@ -60,9 +50,12 @@ func Pipe2(p []int, flags int) (err error) {
- // 64-bit file system and 32-bit uid calls
- // (386 default is 32-bit file system and 16-bit uid).
- //sys Dup2(oldfd int, newfd int) (err error)
-+//sysnb EpollCreate(size int) (fd int, err error)
-+//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
- //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64_64
- //sys Fchown(fd int, uid int, gid int) (err error) = SYS_FCHOWN32
- //sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
-+//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64
- //sys Ftruncate(fd int, length int64) (err error) = SYS_FTRUNCATE64
- //sysnb Getegid() (egid int) = SYS_GETEGID32
- //sysnb Geteuid() (euid int) = SYS_GETEUID32
-@@ -75,9 +68,10 @@ func Pipe2(p []int, flags int) (err error) {
- //sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
- //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
- //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
-+//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
- //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64
--//sys Setfsgid(gid int) (err error) = SYS_SETFSGID32
--//sys Setfsuid(uid int) (err error) = SYS_SETFSUID32
-+//sys setfsgid(gid int) (prev int, err error) = SYS_SETFSGID32
-+//sys setfsuid(uid int) (prev int, err error) = SYS_SETFSUID32
- //sysnb Setregid(rgid int, egid int) (err error) = SYS_SETREGID32
- //sysnb Setresgid(rgid int, egid int, sgid int) (err error) = SYS_SETRESGID32
- //sysnb Setresuid(ruid int, euid int, suid int) (err error) = SYS_SETRESUID32
-@@ -86,12 +80,12 @@ func Pipe2(p []int, flags int) (err error) {
- //sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64
- //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
- //sys Truncate(path string, length int64) (err error) = SYS_TRUNCATE64
-+//sys Ustat(dev int, ubuf *Ustat_t) (err error)
- //sysnb getgroups(n int, list *_Gid_t) (nn int, err error) = SYS_GETGROUPS32
- //sysnb setgroups(n int, list *_Gid_t) (err error) = SYS_SETGROUPS32
- //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
-
- //sys mmap2(addr uintptr, length uintptr, prot int, flags int, fd int, pageOffset uintptr) (xaddr uintptr, err error)
--//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
- //sys Pause() (err error)
-
- func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) {
-@@ -165,10 +159,6 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) {
- return setrlimit(resource, &rl)
- }
-
--// Underlying system call writes to newoffset via pointer.
--// Implemented in assembly to avoid allocation.
--func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno)
--
- func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
- newoffset, errno := seek(fd, offset, whence)
- if errno != 0 {
-@@ -177,17 +167,17 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
- return newoffset, nil
- }
-
--// Vsyscalls on amd64.
-+//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
- //sysnb Gettimeofday(tv *Timeval) (err error)
- //sysnb Time(t *Time_t) (tt Time_t, err error)
--
- //sys Utime(path string, buf *Utimbuf) (err error)
-+//sys utimes(path string, times *[2]Timeval) (err error)
-
- // On x86 Linux, all the socket calls go through an extra indirection,
- // I think because the 5-register system call interface can't handle
--// the 6-argument calls like sendto and recvfrom. Instead the
-+// the 6-argument calls like sendto and recvfrom. Instead the
- // arguments to the underlying system call are the number below
--// and a pointer to an array of uintptr. We hide the pointer in the
-+// and a pointer to an array of uintptr. We hide the pointer in the
- // socketcall assembly to avoid allocation on every system call.
-
- const (
-@@ -214,9 +204,6 @@ const (
- _SENDMMSG = 20
- )
-
--func socketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno)
--func rawsocketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno)
--
- func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
- fd, e := socketcall(_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), 0, 0, 0)
- if e != 0 {
-@@ -385,6 +372,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go b/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
-index 9516a3fd..8ed1d546 100644
---- a/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
-@@ -7,10 +7,12 @@
- package unix
-
- //sys Dup2(oldfd int, newfd int) (err error)
-+//sysnb EpollCreate(size int) (fd int, err error)
- //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
- //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
- //sys Fchown(fd int, uid int, gid int) (err error)
- //sys Fstat(fd int, stat *Stat_t) (err error)
-+//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_NEWFSTATAT
- //sys Fstatfs(fd int, buf *Statfs_t) (err error)
- //sys Ftruncate(fd int, length int64) (err error)
- //sysnb Getegid() (egid int)
-@@ -18,20 +20,43 @@ package unix
- //sysnb Getgid() (gid int)
- //sysnb Getrlimit(resource int, rlim *Rlimit) (err error)
- //sysnb Getuid() (uid int)
--//sysnb InotifyInit() (fd int, err error)
-+//sysnb inotifyInit() (fd int, err error)
-+
-+func InotifyInit() (fd int, err error) {
-+ // First try inotify_init1, because Android's seccomp policy blocks the latter.
-+ fd, err = InotifyInit1(0)
-+ if err == ENOSYS {
-+ fd, err = inotifyInit()
-+ }
-+ return
-+}
-+
- //sys Ioperm(from int, num int, on int) (err error)
- //sys Iopl(level int) (err error)
- //sys Lchown(path string, uid int, gid int) (err error)
- //sys Listen(s int, n int) (err error)
--//sys Lstat(path string, stat *Stat_t) (err error)
-+
-+func Lstat(path string, stat *Stat_t) (err error) {
-+ return Fstatat(AT_FDCWD, path, stat, AT_SYMLINK_NOFOLLOW)
-+}
-+
- //sys Pause() (err error)
- //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
- //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
-+//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
- //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
--//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
-+
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ var ts *Timespec
-+ if timeout != nil {
-+ ts = &Timespec{Sec: timeout.Sec, Nsec: timeout.Usec * 1000}
-+ }
-+ return Pselect(nfd, r, w, e, ts, nil)
-+}
-+
- //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
--//sys Setfsgid(gid int) (err error)
--//sys Setfsuid(uid int) (err error)
-+//sys setfsgid(gid int) (prev int, err error)
-+//sys setfsuid(uid int) (prev int, err error)
- //sysnb Setregid(rgid int, egid int) (err error)
- //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
- //sysnb Setresuid(ruid int, euid int, suid int) (err error)
-@@ -39,10 +64,16 @@ package unix
- //sysnb Setreuid(ruid int, euid int) (err error)
- //sys Shutdown(fd int, how int) (err error)
- //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error)
--//sys Stat(path string, stat *Stat_t) (err error)
-+
-+func Stat(path string, stat *Stat_t) (err error) {
-+ // Use fstatat, because Android's seccomp policy blocks stat.
-+ return Fstatat(AT_FDCWD, path, stat, 0)
-+}
-+
- //sys Statfs(path string, buf *Statfs_t) (err error)
- //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
- //sys Truncate(path string, length int64) (err error)
-+//sys Ustat(dev int, ubuf *Ustat_t) (err error)
- //sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
- //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error)
- //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
-@@ -61,6 +92,8 @@ package unix
- //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
- //sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
-
-+//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
-+
- func Gettimeofday(tv *Timeval) (err error) {
- errno := gettimeofday(tv)
- if errno != 0 {
-@@ -69,8 +102,6 @@ func Gettimeofday(tv *Timeval) (err error) {
- return nil
- }
-
--func Getpagesize() int { return 4096 }
--
- func Time(t *Time_t) (tt Time_t, err error) {
- var tv Timeval
- errno := gettimeofday(&tv)
-@@ -84,20 +115,14 @@ func Time(t *Time_t) (tt Time_t, err error) {
- }
-
- //sys Utime(path string, buf *Utimbuf) (err error)
-+//sys utimes(path string, times *[2]Timeval) (err error)
-
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Sec = nsec / 1e9
-- tv.Usec = nsec % 1e9 / 1e3
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: usec}
- }
-
- //sysnb pipe(p *[2]_C_int) (err error)
-@@ -138,6 +163,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint64(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint64(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint64(length)
- }
-@@ -150,3 +179,16 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
- }
- return poll(&fds[0], len(fds), timeout)
- }
-+
-+//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
-+
-+func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error {
-+ cmdlineLen := len(cmdline)
-+ if cmdlineLen > 0 {
-+ // Account for the additional NULL byte added by
-+ // BytePtrFromString in kexecFileLoad. The kexec_file_load
-+ // syscall expects a NULL-terminated string.
-+ cmdlineLen++
-+ }
-+ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_arm.go b/vendor/golang.org/x/sys/unix/syscall_linux_arm.go
-index 71d87022..99ae6137 100644
---- a/vendor/golang.org/x/sys/unix/syscall_linux_arm.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_arm.go
-@@ -11,29 +11,26 @@ import (
- "unsafe"
- )
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = int32(nsec / 1e9)
-- ts.Nsec = int32(nsec % 1e9)
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Sec = int32(nsec / 1e9)
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: int32(sec), Usec: int32(usec)}
- }
-
-+//sysnb pipe(p *[2]_C_int) (err error)
-+
- func Pipe(p []int) (err error) {
- if len(p) != 2 {
- return EINVAL
- }
- var pp [2]_C_int
-+ // Try pipe2 first for Android O, then try pipe for kernel 2.6.23.
- err = pipe2(&pp, 0)
-+ if err == ENOSYS {
-+ err = pipe(&pp)
-+ }
- p[0] = int(pp[0])
- p[1] = int(pp[1])
- return
-@@ -84,8 +81,11 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
- // 64-bit file system and 32-bit uid calls
- // (16-bit uid calls are not always supported in newer kernels)
- //sys Dup2(oldfd int, newfd int) (err error)
-+//sysnb EpollCreate(size int) (fd int, err error)
-+//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
- //sys Fchown(fd int, uid int, gid int) (err error) = SYS_FCHOWN32
- //sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
-+//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64
- //sysnb Getegid() (egid int) = SYS_GETEGID32
- //sysnb Geteuid() (euid int) = SYS_GETEUID32
- //sysnb Getgid() (gid int) = SYS_GETGID32
-@@ -94,10 +94,12 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
- //sys Lchown(path string, uid int, gid int) (err error) = SYS_LCHOWN32
- //sys Listen(s int, n int) (err error)
- //sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
-+//sys Pause() (err error)
-+//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
- //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64
- //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
--//sys Setfsgid(gid int) (err error) = SYS_SETFSGID32
--//sys Setfsuid(uid int) (err error) = SYS_SETFSUID32
-+//sys setfsgid(gid int) (prev int, err error) = SYS_SETFSGID32
-+//sys setfsuid(uid int) (prev int, err error) = SYS_SETFSUID32
- //sysnb Setregid(rgid int, egid int) (err error) = SYS_SETREGID32
- //sysnb Setresgid(rgid int, egid int, sgid int) (err error) = SYS_SETRESGID32
- //sysnb Setresuid(ruid int, euid int, suid int) (err error) = SYS_SETRESUID32
-@@ -105,11 +107,10 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
- //sys Shutdown(fd int, how int) (err error)
- //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error)
- //sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64
-+//sys Ustat(dev int, ubuf *Ustat_t) (err error)
-
--// Vsyscalls on amd64.
-+//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
- //sysnb Gettimeofday(tv *Timeval) (err error)
--//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
--//sys Pause() (err error)
-
- func Time(t *Time_t) (Time_t, error) {
- var tv Timeval
-@@ -131,6 +132,8 @@ func Utime(path string, buf *Utimbuf) error {
- return Utimes(path, tv)
- }
-
-+//sys utimes(path string, times *[2]Timeval) (err error)
-+
- //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
- //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
- //sys Truncate(path string, length int64) (err error) = SYS_TRUNCATE64
-@@ -249,6 +252,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-@@ -261,3 +268,24 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
- }
- return poll(&fds[0], len(fds), timeout)
- }
-+
-+//sys armSyncFileRange(fd int, flags int, off int64, n int64) (err error) = SYS_ARM_SYNC_FILE_RANGE
-+
-+func SyncFileRange(fd int, off int64, n int64, flags int) error {
-+ // The sync_file_range and arm_sync_file_range syscalls differ only in the
-+ // order of their arguments.
-+ return armSyncFileRange(fd, flags, off, n)
-+}
-+
-+//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
-+
-+func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error {
-+ cmdlineLen := len(cmdline)
-+ if cmdlineLen > 0 {
-+ // Account for the additional NULL byte added by
-+ // BytePtrFromString in kexecFileLoad. The kexec_file_load
-+ // syscall expects a NULL-terminated string.
-+ cmdlineLen++
-+ }
-+ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go b/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
-index 4a136396..807a0b20 100644
---- a/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
-@@ -6,7 +6,17 @@
-
- package unix
-
-+import "unsafe"
-+
-+func EpollCreate(size int) (fd int, err error) {
-+ if size <= 0 {
-+ return -1, EINVAL
-+ }
-+ return EpollCreate1(0)
-+}
-+
- //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) = SYS_EPOLL_PWAIT
-+//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
- //sys Fchown(fd int, uid int, gid int) (err error)
- //sys Fstat(fd int, stat *Stat_t) (err error)
- //sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
-@@ -20,11 +30,20 @@ package unix
- //sys Listen(s int, n int) (err error)
- //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
- //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
-+//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
- //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
--//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS_PSELECT6
-+
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ var ts *Timespec
-+ if timeout != nil {
-+ ts = &Timespec{Sec: timeout.Sec, Nsec: timeout.Usec * 1000}
-+ }
-+ return Pselect(nfd, r, w, e, ts, nil)
-+}
-+
- //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
--//sys Setfsgid(gid int) (err error)
--//sys Setfsuid(uid int) (err error)
-+//sys setfsgid(gid int) (prev int, err error)
-+//sys setfsuid(uid int) (prev int, err error)
- //sysnb Setregid(rgid int, egid int) (err error)
- //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
- //sysnb Setresuid(ruid int, euid int, suid int) (err error)
-@@ -48,6 +67,11 @@ func Lstat(path string, stat *Stat_t) (err error) {
- //sys Statfs(path string, buf *Statfs_t) (err error)
- //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
- //sys Truncate(path string, length int64) (err error)
-+
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ return ENOSYS
-+}
-+
- //sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
- //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error)
- //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
-@@ -66,23 +90,26 @@ func Lstat(path string, stat *Stat_t) (err error) {
- //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
- //sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
-
--func Getpagesize() int { return 65536 }
--
- //sysnb Gettimeofday(tv *Timeval) (err error)
-
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
-+}
-
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: usec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Sec = nsec / 1e9
-- tv.Usec = nsec % 1e9 / 1e3
-- return
-+func futimesat(dirfd int, path string, tv *[2]Timeval) (err error) {
-+ if tv == nil {
-+ return utimensat(dirfd, path, nil, 0)
-+ }
-+
-+ ts := []Timespec{
-+ NsecToTimespec(TimevalToNsec(tv[0])),
-+ NsecToTimespec(TimevalToNsec(tv[1])),
-+ }
-+ return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
- }
-
- func Time(t *Time_t) (Time_t, error) {
-@@ -105,6 +132,18 @@ func Utime(path string, buf *Utimbuf) error {
- return Utimes(path, tv)
- }
-
-+func utimes(path string, tv *[2]Timeval) (err error) {
-+ if tv == nil {
-+ return utimensat(AT_FDCWD, path, nil, 0)
-+ }
-+
-+ ts := []Timespec{
-+ NsecToTimespec(TimevalToNsec(tv[0])),
-+ NsecToTimespec(TimevalToNsec(tv[1])),
-+ }
-+ return utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
-+}
-+
- func Pipe(p []int) (err error) {
- if len(p) != 2 {
- return EINVAL
-@@ -141,6 +180,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint64(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint64(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint64(length)
- }
-@@ -153,30 +196,11 @@ func Dup2(oldfd int, newfd int) (err error) {
- return Dup3(oldfd, newfd, 0)
- }
-
--func Pause() (err error) {
-- _, _, e1 := Syscall6(SYS_PPOLL, 0, 0, 0, 0, 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
-+func Pause() error {
-+ _, err := ppoll(nil, 0, nil, nil)
-+ return err
- }
-
--// TODO(dfc): constants that should be in zsysnum_linux_arm64.go, remove
--// these when the deprecated syscalls that the syscall package relies on
--// are removed.
--const (
-- SYS_GETPGRP = 1060
-- SYS_UTIMES = 1037
-- SYS_FUTIMESAT = 1066
-- SYS_PAUSE = 1061
-- SYS_USTAT = 1070
-- SYS_UTIME = 1063
-- SYS_LCHOWN = 1032
-- SYS_TIME = 1062
-- SYS_EPOLL_CREATE = 1042
-- SYS_EPOLL_WAIT = 1069
--)
--
- func Poll(fds []PollFd, timeout int) (n int, err error) {
- var ts *Timespec
- if timeout >= 0 {
-@@ -188,3 +212,16 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
- }
- return ppoll(&fds[0], len(fds), ts, nil)
- }
-+
-+//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
-+
-+func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error {
-+ cmdlineLen := len(cmdline)
-+ if cmdlineLen > 0 {
-+ // Account for the additional NULL byte added by
-+ // BytePtrFromString in kexecFileLoad. The kexec_file_load
-+ // syscall expects a NULL-terminated string.
-+ cmdlineLen++
-+ }
-+ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_gc.go b/vendor/golang.org/x/sys/unix/syscall_linux_gc.go
-new file mode 100644
-index 00000000..c26e6ec2
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_gc.go
-@@ -0,0 +1,14 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build linux,!gccgo
-+
-+package unix
-+
-+// SyscallNoError may be used instead of Syscall for syscalls that don't fail.
-+func SyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr)
-+
-+// RawSyscallNoError may be used instead of RawSyscall for syscalls that don't
-+// fail.
-+func RawSyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr)
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go b/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go
-new file mode 100644
-index 00000000..070bd389
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go
-@@ -0,0 +1,16 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build linux,!gccgo,386
-+
-+package unix
-+
-+import "syscall"
-+
-+// Underlying system call writes to newoffset via pointer.
-+// Implemented in assembly to avoid allocation.
-+func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno)
-+
-+func socketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno)
-+func rawsocketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno)
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go b/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go
-new file mode 100644
-index 00000000..308eb7ae
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go
-@@ -0,0 +1,30 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build linux,gccgo,386
-+
-+package unix
-+
-+import (
-+ "syscall"
-+ "unsafe"
-+)
-+
-+func seek(fd int, offset int64, whence int) (int64, syscall.Errno) {
-+ var newoffset int64
-+ offsetLow := uint32(offset & 0xffffffff)
-+ offsetHigh := uint32((offset >> 32) & 0xffffffff)
-+ _, _, err := Syscall6(SYS__LLSEEK, uintptr(fd), uintptr(offsetHigh), uintptr(offsetLow), uintptr(unsafe.Pointer(&newoffset)), uintptr(whence), 0)
-+ return newoffset, err
-+}
-+
-+func socketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (int, syscall.Errno) {
-+ fd, _, err := Syscall(SYS_SOCKETCALL, uintptr(call), uintptr(unsafe.Pointer(&a0)), 0)
-+ return int(fd), err
-+}
-+
-+func rawsocketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (int, syscall.Errno) {
-+ fd, _, err := RawSyscall(SYS_SOCKETCALL, uintptr(call), uintptr(unsafe.Pointer(&a0)), 0)
-+ return int(fd), err
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go b/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go
-new file mode 100644
-index 00000000..aa7fc9e1
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go
-@@ -0,0 +1,20 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build linux,gccgo,arm
-+
-+package unix
-+
-+import (
-+ "syscall"
-+ "unsafe"
-+)
-+
-+func seek(fd int, offset int64, whence int) (int64, syscall.Errno) {
-+ var newoffset int64
-+ offsetLow := uint32(offset & 0xffffffff)
-+ offsetHigh := uint32((offset >> 32) & 0xffffffff)
-+ _, _, err := Syscall6(SYS__LLSEEK, uintptr(fd), uintptr(offsetHigh), uintptr(offsetLow), uintptr(unsafe.Pointer(&newoffset)), uintptr(whence), 0)
-+ return newoffset, err
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go b/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
-index 73318e5c..af77e6e2 100644
---- a/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
-@@ -8,7 +8,9 @@
- package unix
-
- //sys Dup2(oldfd int, newfd int) (err error)
-+//sysnb EpollCreate(size int) (fd int, err error)
- //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
-+//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
- //sys Fchown(fd int, uid int, gid int) (err error)
- //sys Fstatfs(fd int, buf *Statfs_t) (err error)
- //sys Ftruncate(fd int, length int64) (err error)
-@@ -22,11 +24,20 @@ package unix
- //sys Pause() (err error)
- //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
- //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
-+//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
- //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
--//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS_PSELECT6
-+
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ var ts *Timespec
-+ if timeout != nil {
-+ ts = &Timespec{Sec: timeout.Sec, Nsec: timeout.Usec * 1000}
-+ }
-+ return Pselect(nfd, r, w, e, ts, nil)
-+}
-+
- //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
--//sys Setfsgid(gid int) (err error)
--//sys Setfsuid(uid int) (err error)
-+//sys setfsgid(gid int) (prev int, err error)
-+//sys setfsuid(uid int) (prev int, err error)
- //sysnb Setregid(rgid int, egid int) (err error)
- //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
- //sysnb Setresuid(ruid int, euid int, suid int) (err error)
-@@ -37,6 +48,7 @@ package unix
- //sys Statfs(path string, buf *Statfs_t) (err error)
- //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
- //sys Truncate(path string, length int64) (err error)
-+//sys Ustat(dev int, ubuf *Ustat_t) (err error)
- //sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
- //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error)
- //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
-@@ -55,8 +67,7 @@ package unix
- //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
- //sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
-
--func Getpagesize() int { return 65536 }
--
-+//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
- //sysnb Gettimeofday(tv *Timeval) (err error)
-
- func Time(t *Time_t) (tt Time_t, err error) {
-@@ -72,20 +83,14 @@ func Time(t *Time_t) (tt Time_t, err error) {
- }
-
- //sys Utime(path string, buf *Utimbuf) (err error)
-+//sys utimes(path string, times *[2]Timeval) (err error)
-
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Sec = nsec / 1e9
-- tv.Usec = nsec % 1e9 / 1e3
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: usec}
- }
-
- func Pipe(p []int) (err error) {
-@@ -143,6 +148,7 @@ type stat_t struct {
- }
-
- //sys fstat(fd int, st *stat_t) (err error)
-+//sys fstatat(dirfd int, path string, st *stat_t, flags int) (err error) = SYS_NEWFSTATAT
- //sys lstat(path string, st *stat_t) (err error)
- //sys stat(path string, st *stat_t) (err error)
-
-@@ -153,6 +159,13 @@ func Fstat(fd int, s *Stat_t) (err error) {
- return
- }
-
-+func Fstatat(dirfd int, path string, s *Stat_t, flags int) (err error) {
-+ st := &stat_t{}
-+ err = fstatat(dirfd, path, st, flags)
-+ fillStat_t(s, st)
-+ return
-+}
-+
- func Lstat(path string, s *Stat_t) (err error) {
- st := &stat_t{}
- err = lstat(path, st)
-@@ -195,10 +208,18 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint64(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint64(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint64(length)
- }
-
-+func InotifyInit() (fd int, err error) {
-+ return InotifyInit1(0)
-+}
-+
- //sys poll(fds *PollFd, nfds int, timeout int) (n int, err error)
-
- func Poll(fds []PollFd, timeout int) (n int, err error) {
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go b/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go
-index b83d93fd..e286c6ba 100644
---- a/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go
-@@ -15,6 +15,9 @@ import (
- func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
-
- //sys Dup2(oldfd int, newfd int) (err error)
-+//sysnb EpollCreate(size int) (fd int, err error)
-+//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
-+//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
- //sys Fchown(fd int, uid int, gid int) (err error)
- //sys Ftruncate(fd int, length int64) (err error) = SYS_FTRUNCATE64
- //sysnb Getegid() (egid int)
-@@ -25,20 +28,20 @@ func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
- //sys Listen(s int, n int) (err error)
- //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
- //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
-+//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
- //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
- //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64
--//sys Setfsgid(gid int) (err error)
--//sys Setfsuid(uid int) (err error)
-+//sys setfsgid(gid int) (prev int, err error)
-+//sys setfsuid(uid int) (prev int, err error)
- //sysnb Setregid(rgid int, egid int) (err error)
- //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
- //sysnb Setresuid(ruid int, euid int, suid int) (err error)
--
- //sysnb Setreuid(ruid int, euid int) (err error)
- //sys Shutdown(fd int, how int) (err error)
--//sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error)
--
-+//sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error)
- //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
- //sys Truncate(path string, length int64) (err error) = SYS_TRUNCATE64
-+//sys Ustat(dev int, ubuf *Ustat_t) (err error)
- //sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
- //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error)
- //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
-@@ -60,15 +63,17 @@ func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
- //sys Ioperm(from int, num int, on int) (err error)
- //sys Iopl(level int) (err error)
-
-+//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
- //sysnb Gettimeofday(tv *Timeval) (err error)
- //sysnb Time(t *Time_t) (tt Time_t, err error)
-+//sys Utime(path string, buf *Utimbuf) (err error)
-+//sys utimes(path string, times *[2]Timeval) (err error)
-
- //sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
- //sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
-+//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64
- //sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64
-
--//sys Utime(path string, buf *Utimbuf) (err error)
--//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
- //sys Pause() (err error)
-
- func Fstatfs(fd int, buf *Statfs_t) (err error) {
-@@ -99,19 +104,12 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
- return
- }
-
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = int32(nsec / 1e9)
-- ts.Nsec = int32(nsec % 1e9)
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Sec = int32(nsec / 1e9)
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: int32(sec), Usec: int32(usec)}
- }
-
- //sysnb pipe2(p *[2]_C_int, flags int) (err error)
-@@ -127,14 +125,13 @@ func Pipe2(p []int, flags int) (err error) {
- return
- }
-
-+//sysnb pipe() (p1 int, p2 int, err error)
-+
- func Pipe(p []int) (err error) {
- if len(p) != 2 {
- return EINVAL
- }
-- var pp [2]_C_int
-- err = pipe2(&pp, 0)
-- p[0] = int(pp[0])
-- p[1] = int(pp[1])
-+ p[0], p[1], err = pipe()
- return
- }
-
-@@ -223,6 +220,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-@@ -235,5 +236,3 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
- }
- return poll(&fds[0], len(fds), timeout)
- }
--
--func Getpagesize() int { return 4096 }
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go b/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
-index 60770f62..ca0345aa 100644
---- a/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
-@@ -7,10 +7,13 @@
-
- package unix
-
--//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
- //sys Dup2(oldfd int, newfd int) (err error)
-+//sysnb EpollCreate(size int) (fd int, err error)
-+//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
-+//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
- //sys Fchown(fd int, uid int, gid int) (err error)
- //sys Fstat(fd int, stat *Stat_t) (err error)
-+//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_NEWFSTATAT
- //sys Fstatfs(fd int, buf *Statfs_t) (err error)
- //sys Ftruncate(fd int, length int64) (err error)
- //sysnb Getegid() (egid int)
-@@ -27,11 +30,12 @@ package unix
- //sys Pause() (err error)
- //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
- //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
-+//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
- //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
--//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
-+//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
- //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
--//sys Setfsgid(gid int) (err error)
--//sys Setfsuid(uid int) (err error)
-+//sys setfsgid(gid int) (prev int, err error)
-+//sys setfsuid(uid int) (prev int, err error)
- //sysnb Setregid(rgid int, egid int) (err error)
- //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
- //sysnb Setresuid(ruid int, euid int, suid int) (err error)
-@@ -41,8 +45,8 @@ package unix
- //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error)
- //sys Stat(path string, stat *Stat_t) (err error)
- //sys Statfs(path string, buf *Statfs_t) (err error)
--//sys SyncFileRange(fd int, off int64, n int64, flags int) (err error) = SYS_SYNC_FILE_RANGE2
- //sys Truncate(path string, length int64) (err error)
-+//sys Ustat(dev int, ubuf *Ustat_t) (err error)
- //sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
- //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error)
- //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
-@@ -61,26 +65,18 @@ package unix
- //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
- //sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
-
--func Getpagesize() int { return 65536 }
--
-+//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
- //sysnb Gettimeofday(tv *Timeval) (err error)
- //sysnb Time(t *Time_t) (tt Time_t, err error)
--
- //sys Utime(path string, buf *Utimbuf) (err error)
-+//sys utimes(path string, times *[2]Timeval) (err error)
-
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Sec = nsec / 1e9
-- tv.Usec = nsec % 1e9 / 1e3
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: usec}
- }
-
- func (r *PtraceRegs) PC() uint64 { return r.Nip }
-@@ -95,6 +91,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint64(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint64(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint64(length)
- }
-@@ -133,3 +133,24 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
- }
- return poll(&fds[0], len(fds), timeout)
- }
-+
-+//sys syncFileRange2(fd int, flags int, off int64, n int64) (err error) = SYS_SYNC_FILE_RANGE2
-+
-+func SyncFileRange(fd int, off int64, n int64, flags int) error {
-+ // The sync_file_range and sync_file_range2 syscalls differ only in the
-+ // order of their arguments.
-+ return syncFileRange2(fd, flags, off, n)
-+}
-+
-+//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
-+
-+func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error {
-+ cmdlineLen := len(cmdline)
-+ if cmdlineLen > 0 {
-+ // Account for the additional NULL byte added by
-+ // BytePtrFromString in kexecFileLoad. The kexec_file_load
-+ // syscall expects a NULL-terminated string.
-+ cmdlineLen++
-+ }
-+ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go b/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go
-similarity index 68%
-copy from vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
-copy to vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go
-index 4a136396..abdabbac 100644
---- a/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go
-@@ -1,12 +1,22 @@
--// Copyright 2015 The Go Authors. All rights reserved.
-+// Copyright 2018 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build arm64,linux
-+// +build riscv64,linux
-
- package unix
-
-+import "unsafe"
-+
-+func EpollCreate(size int) (fd int, err error) {
-+ if size <= 0 {
-+ return -1, EINVAL
-+ }
-+ return EpollCreate1(0)
-+}
-+
- //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) = SYS_EPOLL_PWAIT
-+//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
- //sys Fchown(fd int, uid int, gid int) (err error)
- //sys Fstat(fd int, stat *Stat_t) (err error)
- //sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
-@@ -21,10 +31,18 @@ package unix
- //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
- //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
- //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
--//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS_PSELECT6
-+
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ var ts *Timespec
-+ if timeout != nil {
-+ ts = &Timespec{Sec: timeout.Sec, Nsec: timeout.Usec * 1000}
-+ }
-+ return Pselect(nfd, r, w, e, ts, nil)
-+}
-+
- //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
--//sys Setfsgid(gid int) (err error)
--//sys Setfsuid(uid int) (err error)
-+//sys setfsgid(gid int) (prev int, err error)
-+//sys setfsuid(uid int) (prev int, err error)
- //sysnb Setregid(rgid int, egid int) (err error)
- //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
- //sysnb Setresuid(ruid int, euid int, suid int) (err error)
-@@ -48,6 +66,11 @@ func Lstat(path string, stat *Stat_t) (err error) {
- //sys Statfs(path string, buf *Statfs_t) (err error)
- //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
- //sys Truncate(path string, length int64) (err error)
-+
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ return ENOSYS
-+}
-+
- //sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
- //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error)
- //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
-@@ -66,23 +89,26 @@ func Lstat(path string, stat *Stat_t) (err error) {
- //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
- //sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
-
--func Getpagesize() int { return 65536 }
--
- //sysnb Gettimeofday(tv *Timeval) (err error)
-
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
-+}
-
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: usec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Sec = nsec / 1e9
-- tv.Usec = nsec % 1e9 / 1e3
-- return
-+func futimesat(dirfd int, path string, tv *[2]Timeval) (err error) {
-+ if tv == nil {
-+ return utimensat(dirfd, path, nil, 0)
-+ }
-+
-+ ts := []Timespec{
-+ NsecToTimespec(TimevalToNsec(tv[0])),
-+ NsecToTimespec(TimevalToNsec(tv[1])),
-+ }
-+ return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
- }
-
- func Time(t *Time_t) (Time_t, error) {
-@@ -105,6 +131,18 @@ func Utime(path string, buf *Utimbuf) error {
- return Utimes(path, tv)
- }
-
-+func utimes(path string, tv *[2]Timeval) (err error) {
-+ if tv == nil {
-+ return utimensat(AT_FDCWD, path, nil, 0)
-+ }
-+
-+ ts := []Timespec{
-+ NsecToTimespec(TimevalToNsec(tv[0])),
-+ NsecToTimespec(TimevalToNsec(tv[1])),
-+ }
-+ return utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
-+}
-+
- func Pipe(p []int) (err error) {
- if len(p) != 2 {
- return EINVAL
-@@ -141,6 +179,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint64(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint64(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint64(length)
- }
-@@ -153,30 +195,11 @@ func Dup2(oldfd int, newfd int) (err error) {
- return Dup3(oldfd, newfd, 0)
- }
-
--func Pause() (err error) {
-- _, _, e1 := Syscall6(SYS_PPOLL, 0, 0, 0, 0, 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
-+func Pause() error {
-+ _, err := ppoll(nil, 0, nil, nil)
-+ return err
- }
-
--// TODO(dfc): constants that should be in zsysnum_linux_arm64.go, remove
--// these when the deprecated syscalls that the syscall package relies on
--// are removed.
--const (
-- SYS_GETPGRP = 1060
-- SYS_UTIMES = 1037
-- SYS_FUTIMESAT = 1066
-- SYS_PAUSE = 1061
-- SYS_USTAT = 1070
-- SYS_UTIME = 1063
-- SYS_LCHOWN = 1032
-- SYS_TIME = 1062
-- SYS_EPOLL_CREATE = 1042
-- SYS_EPOLL_WAIT = 1069
--)
--
- func Poll(fds []PollFd, timeout int) (n int, err error) {
- var ts *Timespec
- if timeout >= 0 {
-@@ -188,3 +211,20 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
- }
- return ppoll(&fds[0], len(fds), ts, nil)
- }
-+
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ return Renameat2(olddirfd, oldpath, newdirfd, newpath, 0)
-+}
-+
-+//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
-+
-+func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error {
-+ cmdlineLen := len(cmdline)
-+ if cmdlineLen > 0 {
-+ // Account for the additional NULL byte added by
-+ // BytePtrFromString in kexecFileLoad. The kexec_file_load
-+ // syscall expects a NULL-terminated string.
-+ cmdlineLen++
-+ }
-+ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go b/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
-index 1708a4bb..533e9305 100644
---- a/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
-@@ -11,10 +11,12 @@ import (
- )
-
- //sys Dup2(oldfd int, newfd int) (err error)
-+//sysnb EpollCreate(size int) (fd int, err error)
- //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
- //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
- //sys Fchown(fd int, uid int, gid int) (err error)
- //sys Fstat(fd int, stat *Stat_t) (err error)
-+//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_NEWFSTATAT
- //sys Fstatfs(fd int, buf *Statfs_t) (err error)
- //sys Ftruncate(fd int, length int64) (err error)
- //sysnb Getegid() (egid int)
-@@ -28,11 +30,12 @@ import (
- //sys Pause() (err error)
- //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
- //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
-+//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
- //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
- //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
- //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
--//sys Setfsgid(gid int) (err error)
--//sys Setfsuid(uid int) (err error)
-+//sys setfsgid(gid int) (prev int, err error)
-+//sys setfsuid(uid int) (prev int, err error)
- //sysnb Setregid(rgid int, egid int) (err error)
- //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
- //sysnb Setresuid(ruid int, euid int, suid int) (err error)
-@@ -43,11 +46,11 @@ import (
- //sys Statfs(path string, buf *Statfs_t) (err error)
- //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
- //sys Truncate(path string, length int64) (err error)
-+//sys Ustat(dev int, ubuf *Ustat_t) (err error)
- //sysnb getgroups(n int, list *_Gid_t) (nn int, err error)
- //sysnb setgroups(n int, list *_Gid_t) (err error)
-
--func Getpagesize() int { return 4096 }
--
-+//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
- //sysnb Gettimeofday(tv *Timeval) (err error)
-
- func Time(t *Time_t) (tt Time_t, err error) {
-@@ -63,20 +66,14 @@ func Time(t *Time_t) (tt Time_t, err error) {
- }
-
- //sys Utime(path string, buf *Utimbuf) (err error)
-+//sys utimes(path string, times *[2]Timeval) (err error)
-
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Sec = nsec / 1e9
-- tv.Usec = nsec % 1e9 / 1e3
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: usec}
- }
-
- //sysnb pipe2(p *[2]_C_int, flags int) (err error)
-@@ -123,6 +120,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint64(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint64(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint64(length)
- }
-@@ -326,3 +327,16 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
- }
- return poll(&fds[0], len(fds), timeout)
- }
-+
-+//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
-+
-+func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error {
-+ cmdlineLen := len(cmdline)
-+ if cmdlineLen > 0 {
-+ // Account for the additional NULL byte added by
-+ // BytePtrFromString in kexecFileLoad. The kexec_file_load
-+ // syscall expects a NULL-terminated string.
-+ cmdlineLen++
-+ }
-+ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go b/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go
-index 20b7454d..d890a227 100644
---- a/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go
-@@ -6,15 +6,12 @@
-
- package unix
-
--import (
-- "sync/atomic"
-- "syscall"
--)
--
- //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
-+//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
- //sys Dup2(oldfd int, newfd int) (err error)
- //sys Fchown(fd int, uid int, gid int) (err error)
- //sys Fstat(fd int, stat *Stat_t) (err error)
-+//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64
- //sys Fstatfs(fd int, buf *Statfs_t) (err error)
- //sys Ftruncate(fd int, length int64) (err error)
- //sysnb Getegid() (egid int)
-@@ -29,11 +26,12 @@ import (
- //sys Pause() (err error)
- //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
- //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
-+//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
- //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
- //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
- //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
--//sys Setfsgid(gid int) (err error)
--//sys Setfsuid(uid int) (err error)
-+//sys setfsgid(gid int) (prev int, err error)
-+//sys setfsuid(uid int) (prev int, err error)
- //sysnb Setregid(rgid int, egid int) (err error)
- //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
- //sysnb Setresuid(ruid int, euid int, suid int) (err error)
-@@ -63,21 +61,6 @@ import (
- //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
- //sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
-
--func sysconf(name int) (n int64, err syscall.Errno)
--
--// pageSize caches the value of Getpagesize, since it can't change
--// once the system is booted.
--var pageSize int64 // accessed atomically
--
--func Getpagesize() int {
-- n := atomic.LoadInt64(&pageSize)
-- if n == 0 {
-- n, _ = sysconf(_SC_PAGESIZE)
-- atomic.StoreInt64(&pageSize, n)
-- }
-- return int(n)
--}
--
- func Ioperm(from int, num int, on int) (err error) {
- return ENOSYS
- }
-@@ -86,6 +69,7 @@ func Iopl(level int) (err error) {
- return ENOSYS
- }
-
-+//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
- //sysnb Gettimeofday(tv *Timeval) (err error)
-
- func Time(t *Time_t) (tt Time_t, err error) {
-@@ -101,20 +85,14 @@ func Time(t *Time_t) (tt Time_t, err error) {
- }
-
- //sys Utime(path string, buf *Utimbuf) (err error)
-+//sys utimes(path string, times *[2]Timeval) (err error)
-
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Sec = nsec / 1e9
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: int32(usec)}
- }
-
- func (r *PtraceRegs) PC() uint64 { return r.Tpc }
-@@ -129,6 +107,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint64(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint64(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint64(length)
- }
-diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd.go b/vendor/golang.org/x/sys/unix/syscall_netbsd.go
-index e1296684..45b50a61 100644
---- a/vendor/golang.org/x/sys/unix/syscall_netbsd.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_netbsd.go
-@@ -13,10 +13,12 @@
- package unix
-
- import (
-+ "runtime"
- "syscall"
- "unsafe"
- )
-
-+// SockaddrDatalink implements the Sockaddr interface for AF_LINK type sockets.
- type SockaddrDatalink struct {
- Len uint8
- Family uint8
-@@ -55,7 +57,6 @@ func sysctlNodes(mib []_C_int) (nodes []Sysctlnode, err error) {
- }
-
- func nametomib(name string) (mib []_C_int, err error) {
--
- // Split name into components.
- var parts []string
- last := 0
-@@ -114,9 +115,47 @@ func Pipe(p []int) (err error) {
- return
- }
-
--//sys getdents(fd int, buf []byte) (n int, err error)
-+//sys Getdents(fd int, buf []byte) (n int, err error)
- func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-- return getdents(fd, buf)
-+ n, err = Getdents(fd, buf)
-+ if err != nil || basep == nil {
-+ return
-+ }
-+
-+ var off int64
-+ off, err = Seek(fd, 0, 1 /* SEEK_CUR */)
-+ if err != nil {
-+ *basep = ^uintptr(0)
-+ return
-+ }
-+ *basep = uintptr(off)
-+ if unsafe.Sizeof(*basep) == 8 {
-+ return
-+ }
-+ if off>>32 != 0 {
-+ // We can't stuff the offset back into a uintptr, so any
-+ // future calls would be suspect. Generate an error.
-+ // EIO is allowed by getdirentries.
-+ err = EIO
-+ }
-+ return
-+}
-+
-+const ImplementsGetwd = true
-+
-+//sys Getcwd(buf []byte) (n int, err error) = SYS___GETCWD
-+
-+func Getwd() (string, error) {
-+ var buf [PathMax]byte
-+ _, err := Getcwd(buf[0:])
-+ if err != nil {
-+ return "", err
-+ }
-+ n := clen(buf[:])
-+ if n < 1 {
-+ return "", EINVAL
-+ }
-+ return string(buf[:n]), nil
- }
-
- // TODO
-@@ -124,6 +163,83 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
- return -1, ENOSYS
- }
-
-+func setattrlistTimes(path string, times []Timespec, flags int) error {
-+ // used on Darwin for UtimesNano
-+ return ENOSYS
-+}
-+
-+//sys ioctl(fd int, req uint, arg uintptr) (err error)
-+
-+//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL
-+
-+func IoctlGetPtmget(fd int, req uint) (*Ptmget, error) {
-+ var value Ptmget
-+ err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-+ runtime.KeepAlive(value)
-+ return &value, err
-+}
-+
-+func Uname(uname *Utsname) error {
-+ mib := []_C_int{CTL_KERN, KERN_OSTYPE}
-+ n := unsafe.Sizeof(uname.Sysname)
-+ if err := sysctl(mib, &uname.Sysname[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-+
-+ mib = []_C_int{CTL_KERN, KERN_HOSTNAME}
-+ n = unsafe.Sizeof(uname.Nodename)
-+ if err := sysctl(mib, &uname.Nodename[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-+
-+ mib = []_C_int{CTL_KERN, KERN_OSRELEASE}
-+ n = unsafe.Sizeof(uname.Release)
-+ if err := sysctl(mib, &uname.Release[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-+
-+ mib = []_C_int{CTL_KERN, KERN_VERSION}
-+ n = unsafe.Sizeof(uname.Version)
-+ if err := sysctl(mib, &uname.Version[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-+
-+ // The version might have newlines or tabs in it, convert them to
-+ // spaces.
-+ for i, b := range uname.Version {
-+ if b == '\n' || b == '\t' {
-+ if i == len(uname.Version)-1 {
-+ uname.Version[i] = 0
-+ } else {
-+ uname.Version[i] = ' '
-+ }
-+ }
-+ }
-+
-+ mib = []_C_int{CTL_HW, HW_MACHINE}
-+ n = unsafe.Sizeof(uname.Machine)
-+ if err := sysctl(mib, &uname.Machine[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-+
-+ return nil
-+}
-+
-+func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-+ if raceenabled {
-+ raceReleaseMerge(unsafe.Pointer(&ioSync))
-+ }
-+ return sendfile(outfd, infd, offset, count)
-+}
-+
-+func Fstatvfs(fd int, buf *Statvfs_t) (err error) {
-+ return Fstatvfs1(fd, buf, ST_WAIT)
-+}
-+
-+func Statvfs(path string, buf *Statvfs_t) (err error) {
-+ return Statvfs1(path, buf, ST_WAIT)
-+}
-+
- /*
- * Exposed directly
- */
-@@ -137,14 +253,33 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
- //sys Close(fd int) (err error)
- //sys Dup(fd int) (nfd int, err error)
- //sys Dup2(from int, to int) (err error)
-+//sys Dup3(from int, to int, flags int) (err error)
- //sys Exit(code int)
-+//sys ExtattrGetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error)
-+//sys ExtattrSetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error)
-+//sys ExtattrDeleteFd(fd int, attrnamespace int, attrname string) (err error)
-+//sys ExtattrListFd(fd int, attrnamespace int, data uintptr, nbytes int) (ret int, err error)
-+//sys ExtattrGetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error)
-+//sys ExtattrSetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error)
-+//sys ExtattrDeleteFile(file string, attrnamespace int, attrname string) (err error)
-+//sys ExtattrListFile(file string, attrnamespace int, data uintptr, nbytes int) (ret int, err error)
-+//sys ExtattrGetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error)
-+//sys ExtattrSetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error)
-+//sys ExtattrDeleteLink(link string, attrnamespace int, attrname string) (err error)
-+//sys ExtattrListLink(link string, attrnamespace int, data uintptr, nbytes int) (ret int, err error)
-+//sys Faccessat(dirfd int, path string, mode uint32, flags int) (err error)
-+//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_POSIX_FADVISE
- //sys Fchdir(fd int) (err error)
- //sys Fchflags(fd int, flags int) (err error)
- //sys Fchmod(fd int, mode uint32) (err error)
-+//sys Fchmodat(dirfd int, path string, mode uint32, flags int) (err error)
- //sys Fchown(fd int, uid int, gid int) (err error)
-+//sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
- //sys Flock(fd int, how int) (err error)
- //sys Fpathconf(fd int, name int) (val int, err error)
- //sys Fstat(fd int, stat *Stat_t) (err error)
-+//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
-+//sys Fstatvfs1(fd int, buf *Statvfs_t, flags int) (err error) = SYS_FSTATVFS1
- //sys Fsync(fd int) (err error)
- //sys Ftruncate(fd int, length int64) (err error)
- //sysnb Getegid() (egid int)
-@@ -165,23 +300,30 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
- //sys Kqueue() (fd int, err error)
- //sys Lchown(path string, uid int, gid int) (err error)
- //sys Link(path string, link string) (err error)
-+//sys Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error)
- //sys Listen(s int, backlog int) (err error)
- //sys Lstat(path string, stat *Stat_t) (err error)
- //sys Mkdir(path string, mode uint32) (err error)
-+//sys Mkdirat(dirfd int, path string, mode uint32) (err error)
- //sys Mkfifo(path string, mode uint32) (err error)
-+//sys Mkfifoat(dirfd int, path string, mode uint32) (err error)
- //sys Mknod(path string, mode uint32, dev int) (err error)
-+//sys Mknodat(dirfd int, path string, mode uint32, dev int) (err error)
- //sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
- //sys Open(path string, mode int, perm uint32) (fd int, err error)
-+//sys Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error)
- //sys Pathconf(path string, name int) (val int, err error)
- //sys Pread(fd int, p []byte, offset int64) (n int, err error)
- //sys Pwrite(fd int, p []byte, offset int64) (n int, err error)
- //sys read(fd int, p []byte) (n int, err error)
- //sys Readlink(path string, buf []byte) (n int, err error)
-+//sys Readlinkat(dirfd int, path string, buf []byte) (n int, err error)
- //sys Rename(from string, to string) (err error)
-+//sys Renameat(fromfd int, from string, tofd int, to string) (err error)
- //sys Revoke(path string) (err error)
- //sys Rmdir(path string) (err error)
- //sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = SYS_LSEEK
--//sys Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error)
-+//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
- //sysnb Setegid(egid int) (err error)
- //sysnb Seteuid(euid int) (err error)
- //sysnb Setgid(gid int) (err error)
-@@ -194,11 +336,14 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
- //sysnb Settimeofday(tp *Timeval) (err error)
- //sysnb Setuid(uid int) (err error)
- //sys Stat(path string, stat *Stat_t) (err error)
-+//sys Statvfs1(path string, buf *Statvfs_t, flags int) (err error) = SYS_STATVFS1
- //sys Symlink(path string, link string) (err error)
-+//sys Symlinkat(oldpath string, newdirfd int, newpath string) (err error)
- //sys Sync() (err error)
- //sys Truncate(path string, length int64) (err error)
- //sys Umask(newmask int) (oldmask int)
- //sys Unlink(path string) (err error)
-+//sys Unlinkat(dirfd int, path string, flags int) (err error)
- //sys Unmount(path string, flags int) (err error)
- //sys write(fd int, p []byte) (n int, err error)
- //sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error)
-@@ -225,7 +370,6 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
- // __msync13
- // __ntp_gettime30
- // __posix_chown
--// __posix_fadvise50
- // __posix_fchown
- // __posix_lchown
- // __posix_rename
-@@ -384,7 +528,6 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
- // getitimer
- // getvfsstat
- // getxattr
--// ioctl
- // ktrace
- // lchflags
- // lchmod
-@@ -422,7 +565,6 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
- // ntp_adjtime
- // pmc_control
- // pmc_get_info
--// poll
- // pollts
- // preadv
- // profil
-diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go
-index afaca098..24da8b52 100644
---- a/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go
-@@ -6,21 +6,12 @@
-
- package unix
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = int64(nsec / 1e9)
-- ts.Nsec = int32(nsec % 1e9)
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: int32(nsec)}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- tv.Sec = int64(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: int32(usec)}
- }
-
- func SetKevent(k *Kevent_t, fd, mode, flags int) {
-@@ -37,6 +28,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
-index a6ff04ce..25a0ac82 100644
---- a/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
-@@ -6,21 +6,12 @@
-
- package unix
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = int64(nsec / 1e9)
-- ts.Nsec = int64(nsec % 1e9)
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- tv.Sec = int64(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: int32(usec)}
- }
-
- func SetKevent(k *Kevent_t, fd, mode, flags int) {
-@@ -37,6 +28,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go
-index 68a6969b..21591ecd 100644
---- a/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go
-@@ -6,21 +6,12 @@
-
- package unix
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = int64(nsec / 1e9)
-- ts.Nsec = int32(nsec % 1e9)
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: int32(nsec)}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- tv.Sec = int64(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: int32(usec)}
- }
-
- func SetKevent(k *Kevent_t, fd, mode, flags int) {
-@@ -37,6 +28,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go
-similarity index 50%
-copy from vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
-copy to vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go
-index a6ff04ce..80474963 100644
---- a/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go
-@@ -1,26 +1,17 @@
--// Copyright 2009 The Go Authors. All rights reserved.
-+// Copyright 2019 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build amd64,netbsd
-+// +build arm64,netbsd
-
- package unix
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = int64(nsec / 1e9)
-- ts.Nsec = int64(nsec % 1e9)
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- tv.Sec = int64(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: int32(usec)}
- }
-
- func SetKevent(k *Kevent_t, fd, mode, flags int) {
-@@ -37,6 +28,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-diff --git a/vendor/golang.org/x/sys/unix/syscall_no_getwd.go b/vendor/golang.org/x/sys/unix/syscall_no_getwd.go
-deleted file mode 100644
-index 530792ea..00000000
---- a/vendor/golang.org/x/sys/unix/syscall_no_getwd.go
-+++ /dev/null
-@@ -1,11 +0,0 @@
--// Copyright 2013 The Go Authors. All rights reserved.
--// Use of this source code is governed by a BSD-style
--// license that can be found in the LICENSE file.
--
--// +build dragonfly freebsd netbsd openbsd
--
--package unix
--
--const ImplementsGetwd = false
--
--func Getwd() (string, error) { return "", ENOTSUP }
-diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd.go b/vendor/golang.org/x/sys/unix/syscall_openbsd.go
-index 408e6308..a266e92a 100644
---- a/vendor/golang.org/x/sys/unix/syscall_openbsd.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_openbsd.go
-@@ -13,10 +13,12 @@
- package unix
-
- import (
-+ "sort"
- "syscall"
- "unsafe"
- )
-
-+// SockaddrDatalink implements the Sockaddr interface for AF_LINK type sockets.
- type SockaddrDatalink struct {
- Len uint8
- Family uint8
-@@ -32,23 +34,11 @@ type SockaddrDatalink struct {
- func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
-
- func nametomib(name string) (mib []_C_int, err error) {
--
-- // Perform lookup via a binary search
-- left := 0
-- right := len(sysctlMib) - 1
-- for {
-- idx := left + (right-left)/2
-- switch {
-- case name == sysctlMib[idx].ctlname:
-- return sysctlMib[idx].ctloid, nil
-- case name > sysctlMib[idx].ctlname:
-- left = idx + 1
-- default:
-- right = idx - 1
-- }
-- if left > right {
-- break
-- }
-+ i := sort.Search(len(sysctlMib), func(i int) bool {
-+ return sysctlMib[i].ctlname >= name
-+ })
-+ if i < len(sysctlMib) && sysctlMib[i].ctlname == name {
-+ return sysctlMib[i].ctloid, nil
- }
- return nil, EINVAL
- }
-@@ -65,21 +55,87 @@ func direntNamlen(buf []byte) (uint64, bool) {
- return readInt(buf, unsafe.Offsetof(Dirent{}.Namlen), unsafe.Sizeof(Dirent{}.Namlen))
- }
-
--//sysnb pipe(p *[2]_C_int) (err error)
-+func SysctlUvmexp(name string) (*Uvmexp, error) {
-+ mib, err := sysctlmib(name)
-+ if err != nil {
-+ return nil, err
-+ }
-+
-+ n := uintptr(SizeofUvmexp)
-+ var u Uvmexp
-+ if err := sysctl(mib, (*byte)(unsafe.Pointer(&u)), &n, nil, 0); err != nil {
-+ return nil, err
-+ }
-+ if n != SizeofUvmexp {
-+ return nil, EIO
-+ }
-+ return &u, nil
-+}
-+
- func Pipe(p []int) (err error) {
-+ return Pipe2(p, 0)
-+}
-+
-+//sysnb pipe2(p *[2]_C_int, flags int) (err error)
-+func Pipe2(p []int, flags int) error {
- if len(p) != 2 {
- return EINVAL
- }
- var pp [2]_C_int
-- err = pipe(&pp)
-+ err := pipe2(&pp, flags)
- p[0] = int(pp[0])
- p[1] = int(pp[1])
-- return
-+ return err
- }
-
--//sys getdents(fd int, buf []byte) (n int, err error)
-+//sys Getdents(fd int, buf []byte) (n int, err error)
- func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-- return getdents(fd, buf)
-+ n, err = Getdents(fd, buf)
-+ if err != nil || basep == nil {
-+ return
-+ }
-+
-+ var off int64
-+ off, err = Seek(fd, 0, 1 /* SEEK_CUR */)
-+ if err != nil {
-+ *basep = ^uintptr(0)
-+ return
-+ }
-+ *basep = uintptr(off)
-+ if unsafe.Sizeof(*basep) == 8 {
-+ return
-+ }
-+ if off>>32 != 0 {
-+ // We can't stuff the offset back into a uintptr, so any
-+ // future calls would be suspect. Generate an error.
-+ // EIO was allowed by getdirentries.
-+ err = EIO
-+ }
-+ return
-+}
-+
-+const ImplementsGetwd = true
-+
-+//sys Getcwd(buf []byte) (n int, err error) = SYS___GETCWD
-+
-+func Getwd() (string, error) {
-+ var buf [PathMax]byte
-+ _, err := Getcwd(buf[0:])
-+ if err != nil {
-+ return "", err
-+ }
-+ n := clen(buf[:])
-+ if n < 1 {
-+ return "", EINVAL
-+ }
-+ return string(buf[:n]), nil
-+}
-+
-+func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-+ if raceenabled {
-+ raceReleaseMerge(unsafe.Pointer(&ioSync))
-+ }
-+ return sendfile(outfd, infd, offset, count)
- }
-
- // TODO
-@@ -102,6 +158,70 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- return
- }
-
-+func setattrlistTimes(path string, times []Timespec, flags int) error {
-+ // used on Darwin for UtimesNano
-+ return ENOSYS
-+}
-+
-+//sys ioctl(fd int, req uint, arg uintptr) (err error)
-+
-+//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL
-+
-+//sys ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error)
-+
-+func Ppoll(fds []PollFd, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-+ if len(fds) == 0 {
-+ return ppoll(nil, 0, timeout, sigmask)
-+ }
-+ return ppoll(&fds[0], len(fds), timeout, sigmask)
-+}
-+
-+func Uname(uname *Utsname) error {
-+ mib := []_C_int{CTL_KERN, KERN_OSTYPE}
-+ n := unsafe.Sizeof(uname.Sysname)
-+ if err := sysctl(mib, &uname.Sysname[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-+
-+ mib = []_C_int{CTL_KERN, KERN_HOSTNAME}
-+ n = unsafe.Sizeof(uname.Nodename)
-+ if err := sysctl(mib, &uname.Nodename[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-+
-+ mib = []_C_int{CTL_KERN, KERN_OSRELEASE}
-+ n = unsafe.Sizeof(uname.Release)
-+ if err := sysctl(mib, &uname.Release[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-+
-+ mib = []_C_int{CTL_KERN, KERN_VERSION}
-+ n = unsafe.Sizeof(uname.Version)
-+ if err := sysctl(mib, &uname.Version[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-+
-+ // The version might have newlines or tabs in it, convert them to
-+ // spaces.
-+ for i, b := range uname.Version {
-+ if b == '\n' || b == '\t' {
-+ if i == len(uname.Version)-1 {
-+ uname.Version[i] = 0
-+ } else {
-+ uname.Version[i] = ' '
-+ }
-+ }
-+ }
-+
-+ mib = []_C_int{CTL_HW, HW_MACHINE}
-+ n = unsafe.Sizeof(uname.Machine)
-+ if err := sysctl(mib, &uname.Machine[0], &n, nil, 0); err != nil {
-+ return err
-+ }
-+
-+ return nil
-+}
-+
- /*
- * Exposed directly
- */
-@@ -115,14 +235,19 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- //sys Close(fd int) (err error)
- //sys Dup(fd int) (nfd int, err error)
- //sys Dup2(from int, to int) (err error)
-+//sys Dup3(from int, to int, flags int) (err error)
- //sys Exit(code int)
-+//sys Faccessat(dirfd int, path string, mode uint32, flags int) (err error)
- //sys Fchdir(fd int) (err error)
- //sys Fchflags(fd int, flags int) (err error)
- //sys Fchmod(fd int, mode uint32) (err error)
-+//sys Fchmodat(dirfd int, path string, mode uint32, flags int) (err error)
- //sys Fchown(fd int, uid int, gid int) (err error)
-+//sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
- //sys Flock(fd int, how int) (err error)
- //sys Fpathconf(fd int, name int) (val int, err error)
- //sys Fstat(fd int, stat *Stat_t) (err error)
-+//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
- //sys Fstatfs(fd int, stat *Statfs_t) (err error)
- //sys Fsync(fd int) (err error)
- //sys Ftruncate(fd int, length int64) (err error)
-@@ -135,6 +260,7 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- //sysnb Getppid() (ppid int)
- //sys Getpriority(which int, who int) (prio int, err error)
- //sysnb Getrlimit(which int, lim *Rlimit) (err error)
-+//sysnb Getrtable() (rtable int, err error)
- //sysnb Getrusage(who int, rusage *Rusage) (err error)
- //sysnb Getsid(pid int) (sid int, err error)
- //sysnb Gettimeofday(tv *Timeval) (err error)
-@@ -144,23 +270,30 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- //sys Kqueue() (fd int, err error)
- //sys Lchown(path string, uid int, gid int) (err error)
- //sys Link(path string, link string) (err error)
-+//sys Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error)
- //sys Listen(s int, backlog int) (err error)
- //sys Lstat(path string, stat *Stat_t) (err error)
- //sys Mkdir(path string, mode uint32) (err error)
-+//sys Mkdirat(dirfd int, path string, mode uint32) (err error)
- //sys Mkfifo(path string, mode uint32) (err error)
-+//sys Mkfifoat(dirfd int, path string, mode uint32) (err error)
- //sys Mknod(path string, mode uint32, dev int) (err error)
-+//sys Mknodat(dirfd int, path string, mode uint32, dev int) (err error)
- //sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
- //sys Open(path string, mode int, perm uint32) (fd int, err error)
-+//sys Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error)
- //sys Pathconf(path string, name int) (val int, err error)
- //sys Pread(fd int, p []byte, offset int64) (n int, err error)
- //sys Pwrite(fd int, p []byte, offset int64) (n int, err error)
- //sys read(fd int, p []byte) (n int, err error)
- //sys Readlink(path string, buf []byte) (n int, err error)
-+//sys Readlinkat(dirfd int, path string, buf []byte) (n int, err error)
- //sys Rename(from string, to string) (err error)
-+//sys Renameat(fromfd int, from string, tofd int, to string) (err error)
- //sys Revoke(path string) (err error)
- //sys Rmdir(path string) (err error)
- //sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = SYS_LSEEK
--//sys Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error)
-+//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
- //sysnb Setegid(egid int) (err error)
- //sysnb Seteuid(euid int) (err error)
- //sysnb Setgid(gid int) (err error)
-@@ -172,16 +305,19 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
- //sysnb Setresuid(ruid int, euid int, suid int) (err error)
- //sysnb Setrlimit(which int, lim *Rlimit) (err error)
-+//sysnb Setrtable(rtable int) (err error)
- //sysnb Setsid() (pid int, err error)
- //sysnb Settimeofday(tp *Timeval) (err error)
- //sysnb Setuid(uid int) (err error)
- //sys Stat(path string, stat *Stat_t) (err error)
- //sys Statfs(path string, stat *Statfs_t) (err error)
- //sys Symlink(path string, link string) (err error)
-+//sys Symlinkat(oldpath string, newdirfd int, newpath string) (err error)
- //sys Sync() (err error)
- //sys Truncate(path string, length int64) (err error)
- //sys Umask(newmask int) (oldmask int)
- //sys Unlink(path string) (err error)
-+//sys Unlinkat(dirfd int, path string, flags int) (err error)
- //sys Unmount(path string, flags int) (err error)
- //sys write(fd int, p []byte) (n int, err error)
- //sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error)
-@@ -204,15 +340,10 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- // clock_settime
- // closefrom
- // execve
--// faccessat
--// fchmodat
--// fchownat
--// fcntl
- // fhopen
- // fhstat
- // fhstatfs
- // fork
--// fstatat
- // futimens
- // getfh
- // getgid
-@@ -220,20 +351,14 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- // getlogin
- // getresgid
- // getresuid
--// getrtable
- // getthrid
--// ioctl
- // ktrace
- // lfs_bmapv
- // lfs_markv
- // lfs_segclean
- // lfs_segwait
--// linkat
- // mincore
- // minherit
--// mkdirat
--// mkfifoat
--// mknodat
- // mount
- // mquery
- // msgctl
-@@ -242,13 +367,10 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- // msgsnd
- // nfssvc
- // nnpfspioctl
--// openat
--// poll
- // preadv
- // profil
- // pwritev
- // quotactl
--// readlinkat
- // readv
- // reboot
- // renameat
-@@ -258,7 +380,6 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- // semop
- // setgroups
- // setitimer
--// setrtable
- // setsockopt
- // shmat
- // shmctl
-@@ -270,13 +391,11 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
- // sigprocmask
- // sigreturn
- // sigsuspend
--// symlinkat
- // sysarch
- // syscall
- // threxit
- // thrsigdivert
- // thrsleep
- // thrwakeup
--// unlinkat
- // vfork
- // writev
-diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go
-index a66ddc59..42b5a0e5 100644
---- a/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go
-@@ -6,21 +6,12 @@
-
- package unix
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = int64(nsec / 1e9)
-- ts.Nsec = int32(nsec % 1e9)
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: int32(nsec)}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- tv.Sec = int64(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: int32(usec)}
- }
-
- func SetKevent(k *Kevent_t, fd, mode, flags int) {
-@@ -37,6 +28,14 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-+
-+// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
-+// of openbsd/386 the syscall is called sysctl instead of __sysctl.
-+const SYS___SYSCTL = SYS_SYSCTL
-diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go
-index 0776c1fa..6ea4b488 100644
---- a/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go
-@@ -6,21 +6,12 @@
-
- package unix
-
--func Getpagesize() int { return 4096 }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = nsec % 1e9 / 1e3
-- tv.Sec = nsec / 1e9
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: usec}
- }
-
- func SetKevent(k *Kevent_t, fd, mode, flags int) {
-@@ -37,6 +28,14 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-+
-+// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
-+// of openbsd/amd64 the syscall is called sysctl instead of __sysctl.
-+const SYS___SYSCTL = SYS_SYSCTL
-diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go
-index 14ddaf3f..1c3d26fa 100644
---- a/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go
-@@ -6,23 +6,12 @@
-
- package unix
-
--import "syscall"
--
--func Getpagesize() int { return syscall.Getpagesize() }
--
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = int64(nsec / 1e9)
-- ts.Nsec = int32(nsec % 1e9)
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: int32(nsec)}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = int32(nsec % 1e9 / 1e3)
-- tv.Sec = int64(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: int32(usec)}
- }
-
- func SetKevent(k *Kevent_t, fd, mode, flags int) {
-@@ -39,6 +28,14 @@ func (msghdr *Msghdr) SetControllen(length int) {
- msghdr.Controllen = uint32(length)
- }
-
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint32(length)
-+}
-+
- func (cmsg *Cmsghdr) SetLen(length int) {
- cmsg.Len = uint32(length)
- }
-+
-+// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
-+// of openbsd/arm the syscall is called sysctl instead of __sysctl.
-+const SYS___SYSCTL = SYS_SYSCTL
-diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go
-new file mode 100644
-index 00000000..a8c458cb
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go
-@@ -0,0 +1,41 @@
-+// Copyright 2019 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build arm64,openbsd
-+
-+package unix
-+
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
-+}
-+
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: usec}
-+}
-+
-+func SetKevent(k *Kevent_t, fd, mode, flags int) {
-+ k.Ident = uint64(fd)
-+ k.Filter = int16(mode)
-+ k.Flags = uint16(flags)
-+}
-+
-+func (iov *Iovec) SetLen(length int) {
-+ iov.Len = uint64(length)
-+}
-+
-+func (msghdr *Msghdr) SetControllen(length int) {
-+ msghdr.Controllen = uint32(length)
-+}
-+
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = uint32(length)
-+}
-+
-+func (cmsg *Cmsghdr) SetLen(length int) {
-+ cmsg.Len = uint32(length)
-+}
-+
-+// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
-+// of openbsd/amd64 the syscall is called sysctl instead of __sysctl.
-+const SYS___SYSCTL = SYS_SYSCTL
-diff --git a/vendor/golang.org/x/sys/unix/syscall_solaris.go b/vendor/golang.org/x/sys/unix/syscall_solaris.go
-index 0d4e5c4e..0e2a696a 100644
---- a/vendor/golang.org/x/sys/unix/syscall_solaris.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_solaris.go
-@@ -13,7 +13,6 @@
- package unix
-
- import (
-- "sync/atomic"
- "syscall"
- "unsafe"
- )
-@@ -24,6 +23,7 @@ type syscallFunc uintptr
- func rawSysvicall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno)
- func sysvicall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno)
-
-+// SockaddrDatalink implements the Sockaddr interface for AF_LINK type sockets.
- type SockaddrDatalink struct {
- Family uint16
- Index uint16
-@@ -35,15 +35,6 @@ type SockaddrDatalink struct {
- raw RawSockaddrDatalink
- }
-
--func clen(n []byte) int {
-- for i := 0; i < len(n); i++ {
-- if n[i] == 0 {
-- return i
-- }
-- }
-- return len(n)
--}
--
- func direntIno(buf []byte) (uint64, bool) {
- return readInt(buf, unsafe.Offsetof(Dirent{}.Ino), unsafe.Sizeof(Dirent{}.Ino))
- }
-@@ -137,7 +128,19 @@ func Getsockname(fd int) (sa Sockaddr, err error) {
- if err = getsockname(fd, &rsa, &len); err != nil {
- return
- }
-- return anyToSockaddr(&rsa)
-+ return anyToSockaddr(fd, &rsa)
-+}
-+
-+// GetsockoptString returns the string value of the socket option opt for the
-+// socket associated with fd at the given socket level.
-+func GetsockoptString(fd, level, opt int) (string, error) {
-+ buf := make([]byte, 256)
-+ vallen := _Socklen(len(buf))
-+ err := getsockopt(fd, level, opt, unsafe.Pointer(&buf[0]), &vallen)
-+ if err != nil {
-+ return "", err
-+ }
-+ return string(buf[:vallen-1]), nil
- }
-
- const ImplementsGetwd = true
-@@ -167,7 +170,7 @@ func Getwd() (wd string, err error) {
-
- func Getgroups() (gids []int, err error) {
- n, err := getgroups(0, nil)
-- // Check for error and sanity check group count. Newer versions of
-+ // Check for error and sanity check group count. Newer versions of
- // Solaris allow up to 1024 (NGROUPS_MAX).
- if n < 0 || n > 1024 {
- if err != nil {
-@@ -202,6 +205,7 @@ func Setgroups(gids []int) (err error) {
- return setgroups(len(a), &a[0])
- }
-
-+// ReadDirent reads directory entries from fd and writes them into buf.
- func ReadDirent(fd int, buf []byte) (n int, err error) {
- // Final argument is (basep *uintptr) and the syscall doesn't take nil.
- // TODO(rsc): Can we use a single global basep for all calls?
-@@ -325,6 +329,16 @@ func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error {
-
- //sys fcntl(fd int, cmd int, arg int) (val int, err error)
-
-+// FcntlInt performs a fcntl syscall on fd with the provided command and argument.
-+func FcntlInt(fd uintptr, cmd, arg int) (int, error) {
-+ valptr, _, errno := sysvicall6(uintptr(unsafe.Pointer(&procfcntl)), 3, uintptr(fd), uintptr(cmd), uintptr(arg), 0, 0, 0)
-+ var err error
-+ if errno != 0 {
-+ err = errno
-+ }
-+ return int(valptr), err
-+}
-+
- // FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command.
- func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procfcntl)), 3, uintptr(fd), uintptr(cmd), uintptr(unsafe.Pointer(lk)), 0, 0, 0)
-@@ -351,7 +365,7 @@ func Futimesat(dirfd int, path string, tv []Timeval) error {
- }
-
- // Solaris doesn't have an futimes function because it allows NULL to be
--// specified as the path for futimesat. However, Go doesn't like
-+// specified as the path for futimesat. However, Go doesn't like
- // NULL-style string interfaces, so this simple wrapper is provided.
- func Futimes(fd int, tv []Timeval) error {
- if tv == nil {
-@@ -363,7 +377,7 @@ func Futimes(fd int, tv []Timeval) error {
- return futimesat(fd, nil, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
- }
-
--func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
-+func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
- switch rsa.Addr.Family {
- case AF_UNIX:
- pp := (*RawSockaddrUnix)(unsafe.Pointer(rsa))
-@@ -377,7 +391,7 @@ func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
- for n < len(pp.Path) && pp.Path[n] != 0 {
- n++
- }
-- bytes := (*[10000]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
-+ bytes := (*[len(pp.Path)]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
- sa.Name = string(bytes)
- return sa, nil
-
-@@ -414,7 +428,7 @@ func Accept(fd int) (nfd int, sa Sockaddr, err error) {
- if nfd == -1 {
- return
- }
-- sa, err = anyToSockaddr(&rsa)
-+ sa, err = anyToSockaddr(fd, &rsa)
- if err != nil {
- Close(nfd)
- nfd = 0
-@@ -451,7 +465,7 @@ func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from
- oobn = int(msg.Accrightslen)
- // source address is only specified if the socket is unconnected
- if rsa.Addr.Family != AF_UNSPEC {
-- from, err = anyToSockaddr(&rsa)
-+ from, err = anyToSockaddr(fd, &rsa)
- }
- return
- }
-@@ -515,50 +529,54 @@ func Acct(path string) (err error) {
- return acct(pathp)
- }
-
--/*
-- * Expose the ioctl function
-- */
-+//sys __makedev(version int, major uint, minor uint) (val uint64)
-
--//sys ioctl(fd int, req uint, arg uintptr) (err error)
--
--func IoctlSetInt(fd int, req uint, value int) (err error) {
-- return ioctl(fd, req, uintptr(value))
-+func Mkdev(major, minor uint32) uint64 {
-+ return __makedev(NEWDEV, uint(major), uint(minor))
- }
-
--func IoctlSetWinsize(fd int, req uint, value *Winsize) (err error) {
-- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
-+//sys __major(version int, dev uint64) (val uint)
-+
-+func Major(dev uint64) uint32 {
-+ return uint32(__major(NEWDEV, dev))
- }
-
--func IoctlSetTermios(fd int, req uint, value *Termios) (err error) {
-- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
-+//sys __minor(version int, dev uint64) (val uint)
-+
-+func Minor(dev uint64) uint32 {
-+ return uint32(__minor(NEWDEV, dev))
- }
-
-+/*
-+ * Expose the ioctl function
-+ */
-+
-+//sys ioctl(fd int, req uint, arg uintptr) (err error)
-+
- func IoctlSetTermio(fd int, req uint, value *Termio) (err error) {
- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
- }
-
--func IoctlGetInt(fd int, req uint) (int, error) {
-- var value int
-- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-- return value, err
--}
--
--func IoctlGetWinsize(fd int, req uint) (*Winsize, error) {
-- var value Winsize
-+func IoctlGetTermio(fd int, req uint) (*Termio, error) {
-+ var value Termio
- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
- return &value, err
- }
-
--func IoctlGetTermios(fd int, req uint) (*Termios, error) {
-- var value Termios
-- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-- return &value, err
-+//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error)
-+
-+func Poll(fds []PollFd, timeout int) (n int, err error) {
-+ if len(fds) == 0 {
-+ return poll(nil, 0, timeout)
-+ }
-+ return poll(&fds[0], len(fds), timeout)
- }
-
--func IoctlGetTermio(fd int, req uint) (*Termio, error) {
-- var value Termio
-- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
-- return &value, err
-+func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-+ if raceenabled {
-+ raceReleaseMerge(unsafe.Pointer(&ioSync))
-+ }
-+ return sendfile(outfd, infd, offset, count)
- }
-
- /*
-@@ -575,15 +593,17 @@ func IoctlGetTermio(fd int, req uint) (*Termio, error) {
- //sys Dup(fd int) (nfd int, err error)
- //sys Dup2(oldfd int, newfd int) (err error)
- //sys Exit(code int)
-+//sys Faccessat(dirfd int, path string, mode uint32, flags int) (err error)
- //sys Fchdir(fd int) (err error)
- //sys Fchmod(fd int, mode uint32) (err error)
- //sys Fchmodat(dirfd int, path string, mode uint32, flags int) (err error)
- //sys Fchown(fd int, uid int, gid int) (err error)
- //sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
- //sys Fdatasync(fd int) (err error)
--//sys Flock(fd int, how int) (err error)
-+//sys Flock(fd int, how int) (err error)
- //sys Fpathconf(fd int, name int) (val int, err error)
- //sys Fstat(fd int, stat *Stat_t) (err error)
-+//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
- //sys Fstatvfs(fd int, vfsstat *Statvfs_t) (err error)
- //sys Getdents(fd int, buf []byte, basep *uintptr) (n int, err error)
- //sysnb Getgid() (gid int)
-@@ -613,6 +633,7 @@ func IoctlGetTermio(fd int, req uint) (*Termio, error) {
- //sys Mlock(b []byte) (err error)
- //sys Mlockall(flags int) (err error)
- //sys Mprotect(b []byte, prot int) (err error)
-+//sys Msync(b []byte, flags int) (err error)
- //sys Munlock(b []byte) (err error)
- //sys Munlockall() (err error)
- //sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
-@@ -628,6 +649,7 @@ func IoctlGetTermio(fd int, req uint) (*Termio, error) {
- //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
- //sys Rmdir(path string) (err error)
- //sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = lseek
-+//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
- //sysnb Setegid(egid int) (err error)
- //sysnb Seteuid(euid int) (err error)
- //sysnb Setgid(gid int) (err error)
-@@ -659,6 +681,7 @@ func IoctlGetTermio(fd int, req uint) (*Termio, error) {
- //sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) = libsocket.__xnet_connect
- //sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error)
- //sys munmap(addr uintptr, length uintptr) (err error)
-+//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = libsendfile.sendfile
- //sys sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) = libsocket.__xnet_sendto
- //sys socket(domain int, typ int, proto int) (fd int, err error) = libsocket.__xnet_socket
- //sysnb socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) = libsocket.__xnet_socketpair
-@@ -699,18 +722,3 @@ func Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, e
- func Munmap(b []byte) (err error) {
- return mapper.Munmap(b)
- }
--
--//sys sysconf(name int) (n int64, err error)
--
--// pageSize caches the value of Getpagesize, since it can't change
--// once the system is booted.
--var pageSize int64 // accessed atomically
--
--func Getpagesize() int {
-- n := atomic.LoadInt64(&pageSize)
-- if n == 0 {
-- n, _ = sysconf(_SC_PAGESIZE)
-- atomic.StoreInt64(&pageSize, n)
-- }
-- return int(n)
--}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go b/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go
-index 5aff62c3..b22a34d7 100644
---- a/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go
-@@ -6,30 +6,22 @@
-
- package unix
-
--func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
--
--func NsecToTimespec(nsec int64) (ts Timespec) {
-- ts.Sec = nsec / 1e9
-- ts.Nsec = nsec % 1e9
-- return
-+func setTimespec(sec, nsec int64) Timespec {
-+ return Timespec{Sec: sec, Nsec: nsec}
- }
-
--func NsecToTimeval(nsec int64) (tv Timeval) {
-- nsec += 999 // round up to microsecond
-- tv.Usec = nsec % 1e9 / 1e3
-- tv.Sec = int64(nsec / 1e9)
-- return
-+func setTimeval(sec, usec int64) Timeval {
-+ return Timeval{Sec: sec, Usec: usec}
- }
-
- func (iov *Iovec) SetLen(length int) {
- iov.Len = uint64(length)
- }
-
--func (cmsg *Cmsghdr) SetLen(length int) {
-- cmsg.Len = uint32(length)
-+func (msghdr *Msghdr) SetIovlen(length int) {
-+ msghdr.Iovlen = int32(length)
- }
-
--func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-- // TODO(aram): implement this, see issue 5847.
-- panic("unimplemented")
-+func (cmsg *Cmsghdr) SetLen(length int) {
-+ cmsg.Len = uint32(length)
- }
-diff --git a/vendor/golang.org/x/sys/unix/syscall_unix.go b/vendor/golang.org/x/sys/unix/syscall_unix.go
-index 3ed8a91f..8f710d01 100644
---- a/vendor/golang.org/x/sys/unix/syscall_unix.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_unix.go
-@@ -2,12 +2,13 @@
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build darwin dragonfly freebsd linux netbsd openbsd solaris
-+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
-
- package unix
-
- import (
-- "runtime"
-+ "bytes"
-+ "sort"
- "sync"
- "syscall"
- "unsafe"
-@@ -19,13 +20,6 @@ var (
- Stderr = 2
- )
-
--const (
-- darwin64Bit = runtime.GOOS == "darwin" && sizeofPtr == 8
-- dragonfly64Bit = runtime.GOOS == "dragonfly" && sizeofPtr == 8
-- netbsd32Bit = runtime.GOOS == "netbsd" && sizeofPtr == 4
-- solaris64Bit = runtime.GOOS == "solaris" && sizeofPtr == 8
--)
--
- // Do the interface allocations only once for common
- // Errno values.
- var (
-@@ -34,6 +28,11 @@ var (
- errENOENT error = syscall.ENOENT
- )
-
-+var (
-+ signalNameMapOnce sync.Once
-+ signalNameMap map[string]syscall.Signal
-+)
-+
- // errnoErr returns common boxed Errno values, to prevent
- // allocations at runtime.
- func errnoErr(e syscall.Errno) error {
-@@ -50,6 +49,50 @@ func errnoErr(e syscall.Errno) error {
- return e
- }
-
-+// ErrnoName returns the error name for error number e.
-+func ErrnoName(e syscall.Errno) string {
-+ i := sort.Search(len(errorList), func(i int) bool {
-+ return errorList[i].num >= e
-+ })
-+ if i < len(errorList) && errorList[i].num == e {
-+ return errorList[i].name
-+ }
-+ return ""
-+}
-+
-+// SignalName returns the signal name for signal number s.
-+func SignalName(s syscall.Signal) string {
-+ i := sort.Search(len(signalList), func(i int) bool {
-+ return signalList[i].num >= s
-+ })
-+ if i < len(signalList) && signalList[i].num == s {
-+ return signalList[i].name
-+ }
-+ return ""
-+}
-+
-+// SignalNum returns the syscall.Signal for signal named s,
-+// or 0 if a signal with such name is not found.
-+// The signal name should start with "SIG".
-+func SignalNum(s string) syscall.Signal {
-+ signalNameMapOnce.Do(func() {
-+ signalNameMap = make(map[string]syscall.Signal, len(signalList))
-+ for _, signal := range signalList {
-+ signalNameMap[signal.name] = signal.num
-+ }
-+ })
-+ return signalNameMap[s]
-+}
-+
-+// clen returns the index of the first NULL byte in n or len(n) if n contains no NULL byte.
-+func clen(n []byte) int {
-+ i := bytes.IndexByte(n, 0)
-+ if i == -1 {
-+ i = len(n)
-+ }
-+ return i
-+}
-+
- // Mmap manager, for use by operating system-specific implementations.
-
- type mmapper struct {
-@@ -138,16 +181,19 @@ func Write(fd int, p []byte) (n int, err error) {
- // creation of IPv6 sockets to return EAFNOSUPPORT.
- var SocketDisableIPv6 bool
-
-+// Sockaddr represents a socket address.
- type Sockaddr interface {
- sockaddr() (ptr unsafe.Pointer, len _Socklen, err error) // lowercase; only we can define Sockaddrs
- }
-
-+// SockaddrInet4 implements the Sockaddr interface for AF_INET type sockets.
- type SockaddrInet4 struct {
- Port int
- Addr [4]byte
- raw RawSockaddrInet4
- }
-
-+// SockaddrInet6 implements the Sockaddr interface for AF_INET6 type sockets.
- type SockaddrInet6 struct {
- Port int
- ZoneId uint32
-@@ -155,6 +201,7 @@ type SockaddrInet6 struct {
- raw RawSockaddrInet6
- }
-
-+// SockaddrUnix implements the Sockaddr interface for AF_UNIX type sockets.
- type SockaddrUnix struct {
- Name string
- raw RawSockaddrUnix
-@@ -182,7 +229,14 @@ func Getpeername(fd int) (sa Sockaddr, err error) {
- if err = getpeername(fd, &rsa, &len); err != nil {
- return
- }
-- return anyToSockaddr(&rsa)
-+ return anyToSockaddr(fd, &rsa)
-+}
-+
-+func GetsockoptByte(fd, level, opt int) (value byte, err error) {
-+ var n byte
-+ vallen := _Socklen(1)
-+ err = getsockopt(fd, level, opt, unsafe.Pointer(&n), &vallen)
-+ return n, err
- }
-
- func GetsockoptInt(fd, level, opt int) (value int, err error) {
-@@ -192,6 +246,61 @@ func GetsockoptInt(fd, level, opt int) (value int, err error) {
- return int(n), err
- }
-
-+func GetsockoptInet4Addr(fd, level, opt int) (value [4]byte, err error) {
-+ vallen := _Socklen(4)
-+ err = getsockopt(fd, level, opt, unsafe.Pointer(&value[0]), &vallen)
-+ return value, err
-+}
-+
-+func GetsockoptIPMreq(fd, level, opt int) (*IPMreq, error) {
-+ var value IPMreq
-+ vallen := _Socklen(SizeofIPMreq)
-+ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
-+ return &value, err
-+}
-+
-+func GetsockoptIPv6Mreq(fd, level, opt int) (*IPv6Mreq, error) {
-+ var value IPv6Mreq
-+ vallen := _Socklen(SizeofIPv6Mreq)
-+ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
-+ return &value, err
-+}
-+
-+func GetsockoptIPv6MTUInfo(fd, level, opt int) (*IPv6MTUInfo, error) {
-+ var value IPv6MTUInfo
-+ vallen := _Socklen(SizeofIPv6MTUInfo)
-+ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
-+ return &value, err
-+}
-+
-+func GetsockoptICMPv6Filter(fd, level, opt int) (*ICMPv6Filter, error) {
-+ var value ICMPv6Filter
-+ vallen := _Socklen(SizeofICMPv6Filter)
-+ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
-+ return &value, err
-+}
-+
-+func GetsockoptLinger(fd, level, opt int) (*Linger, error) {
-+ var linger Linger
-+ vallen := _Socklen(SizeofLinger)
-+ err := getsockopt(fd, level, opt, unsafe.Pointer(&linger), &vallen)
-+ return &linger, err
-+}
-+
-+func GetsockoptTimeval(fd, level, opt int) (*Timeval, error) {
-+ var tv Timeval
-+ vallen := _Socklen(unsafe.Sizeof(tv))
-+ err := getsockopt(fd, level, opt, unsafe.Pointer(&tv), &vallen)
-+ return &tv, err
-+}
-+
-+func GetsockoptUint64(fd, level, opt int) (value uint64, err error) {
-+ var n uint64
-+ vallen := _Socklen(8)
-+ err = getsockopt(fd, level, opt, unsafe.Pointer(&n), &vallen)
-+ return n, err
-+}
-+
- func Recvfrom(fd int, p []byte, flags int) (n int, from Sockaddr, err error) {
- var rsa RawSockaddrAny
- var len _Socklen = SizeofSockaddrAny
-@@ -199,7 +308,7 @@ func Recvfrom(fd int, p []byte, flags int) (n int, from Sockaddr, err error) {
- return
- }
- if rsa.Addr.Family != AF_UNSPEC {
-- from, err = anyToSockaddr(&rsa)
-+ from, err = anyToSockaddr(fd, &rsa)
- }
- return
- }
-@@ -242,13 +351,21 @@ func SetsockoptLinger(fd, level, opt int, l *Linger) (err error) {
- }
-
- func SetsockoptString(fd, level, opt int, s string) (err error) {
-- return setsockopt(fd, level, opt, unsafe.Pointer(&[]byte(s)[0]), uintptr(len(s)))
-+ var p unsafe.Pointer
-+ if len(s) > 0 {
-+ p = unsafe.Pointer(&[]byte(s)[0])
-+ }
-+ return setsockopt(fd, level, opt, p, uintptr(len(s)))
- }
-
- func SetsockoptTimeval(fd, level, opt int, tv *Timeval) (err error) {
- return setsockopt(fd, level, opt, unsafe.Pointer(tv), unsafe.Sizeof(*tv))
- }
-
-+func SetsockoptUint64(fd, level, opt int, value uint64) (err error) {
-+ return setsockopt(fd, level, opt, unsafe.Pointer(&value), 8)
-+}
-+
- func Socket(domain, typ, proto int) (fd int, err error) {
- if domain == AF_INET6 && SocketDisableIPv6 {
- return -1, EAFNOSUPPORT
-@@ -267,13 +384,6 @@ func Socketpair(domain, typ, proto int) (fd [2]int, err error) {
- return
- }
-
--func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-- if raceenabled {
-- raceReleaseMerge(unsafe.Pointer(&ioSync))
-- }
-- return sendfile(outfd, infd, offset, count)
--}
--
- var ioSync int64
-
- func CloseOnExec(fd int) { fcntl(fd, F_SETFD, FD_CLOEXEC) }
-@@ -291,3 +401,31 @@ func SetNonblock(fd int, nonblocking bool) (err error) {
- _, err = fcntl(fd, F_SETFL, flag)
- return err
- }
-+
-+// Exec calls execve(2), which replaces the calling executable in the process
-+// tree. argv0 should be the full path to an executable ("/bin/ls") and the
-+// executable name should also be the first argument in argv (["ls", "-l"]).
-+// envv are the environment variables that should be passed to the new
-+// process (["USER=go", "PWD=/tmp"]).
-+func Exec(argv0 string, argv []string, envv []string) error {
-+ return syscall.Exec(argv0, argv, envv)
-+}
-+
-+// Lutimes sets the access and modification times tv on path. If path refers to
-+// a symlink, it is not dereferenced and the timestamps are set on the symlink.
-+// If tv is nil, the access and modification times are set to the current time.
-+// Otherwise tv must contain exactly 2 elements, with access time as the first
-+// element and modification time as the second element.
-+func Lutimes(path string, tv []Timeval) error {
-+ if tv == nil {
-+ return UtimesNanoAt(AT_FDCWD, path, nil, AT_SYMLINK_NOFOLLOW)
-+ }
-+ if len(tv) != 2 {
-+ return EINVAL
-+ }
-+ ts := []Timespec{
-+ NsecToTimespec(TimevalToNsec(tv[0])),
-+ NsecToTimespec(TimevalToNsec(tv[1])),
-+ }
-+ return UtimesNanoAt(AT_FDCWD, path, ts, AT_SYMLINK_NOFOLLOW)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/syscall_unix_gc.go b/vendor/golang.org/x/sys/unix/syscall_unix_gc.go
-index 4cb8e8ed..1c70d1b6 100644
---- a/vendor/golang.org/x/sys/unix/syscall_unix_gc.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_unix_gc.go
-@@ -3,7 +3,7 @@
- // license that can be found in the LICENSE file.
-
- // +build darwin dragonfly freebsd linux netbsd openbsd solaris
--// +build !gccgo
-+// +build !gccgo,!ppc64le,!ppc64
-
- package unix
-
-diff --git a/vendor/golang.org/x/sys/unix/syscall_unix_gc.go b/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go
-similarity index 51%
-copy from vendor/golang.org/x/sys/unix/syscall_unix_gc.go
-copy to vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go
-index 4cb8e8ed..86dc765a 100644
---- a/vendor/golang.org/x/sys/unix/syscall_unix_gc.go
-+++ b/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go
-@@ -1,15 +1,24 @@
--// Copyright 2016 The Go Authors. All rights reserved.
-+// Copyright 2018 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build darwin dragonfly freebsd linux netbsd openbsd solaris
-+// +build linux
-+// +build ppc64le ppc64
- // +build !gccgo
-
- package unix
-
- import "syscall"
-
--func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno)
--func Syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno)
--func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno)
--func RawSyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno)
-+func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) {
-+ return syscall.Syscall(trap, a1, a2, a3)
-+}
-+func Syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) {
-+ return syscall.Syscall6(trap, a1, a2, a3, a4, a5, a6)
-+}
-+func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) {
-+ return syscall.RawSyscall(trap, a1, a2, a3)
-+}
-+func RawSyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) {
-+ return syscall.RawSyscall6(trap, a1, a2, a3, a4, a5, a6)
-+}
-diff --git a/vendor/golang.org/x/sys/unix/timestruct.go b/vendor/golang.org/x/sys/unix/timestruct.go
-new file mode 100644
-index 00000000..4a672f56
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/timestruct.go
-@@ -0,0 +1,82 @@
-+// Copyright 2017 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
-+
-+package unix
-+
-+import "time"
-+
-+// TimespecToNsec converts a Timespec value into a number of
-+// nanoseconds since the Unix epoch.
-+func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
-+
-+// NsecToTimespec takes a number of nanoseconds since the Unix epoch
-+// and returns the corresponding Timespec value.
-+func NsecToTimespec(nsec int64) Timespec {
-+ sec := nsec / 1e9
-+ nsec = nsec % 1e9
-+ if nsec < 0 {
-+ nsec += 1e9
-+ sec--
-+ }
-+ return setTimespec(sec, nsec)
-+}
-+
-+// TimeToTimespec converts t into a Timespec.
-+// On some 32-bit systems the range of valid Timespec values are smaller
-+// than that of time.Time values. So if t is out of the valid range of
-+// Timespec, it returns a zero Timespec and ERANGE.
-+func TimeToTimespec(t time.Time) (Timespec, error) {
-+ sec := t.Unix()
-+ nsec := int64(t.Nanosecond())
-+ ts := setTimespec(sec, nsec)
-+
-+ // Currently all targets have either int32 or int64 for Timespec.Sec.
-+ // If there were a new target with floating point type for it, we have
-+ // to consider the rounding error.
-+ if int64(ts.Sec) != sec {
-+ return Timespec{}, ERANGE
-+ }
-+ return ts, nil
-+}
-+
-+// TimevalToNsec converts a Timeval value into a number of nanoseconds
-+// since the Unix epoch.
-+func TimevalToNsec(tv Timeval) int64 { return int64(tv.Sec)*1e9 + int64(tv.Usec)*1e3 }
-+
-+// NsecToTimeval takes a number of nanoseconds since the Unix epoch
-+// and returns the corresponding Timeval value.
-+func NsecToTimeval(nsec int64) Timeval {
-+ nsec += 999 // round up to microsecond
-+ usec := nsec % 1e9 / 1e3
-+ sec := nsec / 1e9
-+ if usec < 0 {
-+ usec += 1e6
-+ sec--
-+ }
-+ return setTimeval(sec, usec)
-+}
-+
-+// Unix returns ts as the number of seconds and nanoseconds elapsed since the
-+// Unix epoch.
-+func (ts *Timespec) Unix() (sec int64, nsec int64) {
-+ return int64(ts.Sec), int64(ts.Nsec)
-+}
-+
-+// Unix returns tv as the number of seconds and nanoseconds elapsed since the
-+// Unix epoch.
-+func (tv *Timeval) Unix() (sec int64, nsec int64) {
-+ return int64(tv.Sec), int64(tv.Usec) * 1000
-+}
-+
-+// Nano returns ts as the number of nanoseconds elapsed since the Unix epoch.
-+func (ts *Timespec) Nano() int64 {
-+ return int64(ts.Sec)*1e9 + int64(ts.Nsec)
-+}
-+
-+// Nano returns tv as the number of nanoseconds elapsed since the Unix epoch.
-+func (tv *Timeval) Nano() int64 {
-+ return int64(tv.Sec)*1e9 + int64(tv.Usec)*1000
-+}
-diff --git a/vendor/golang.org/x/sys/unix/types_netbsd.go b/vendor/golang.org/x/sys/unix/types_aix.go
-similarity index 53%
-copy from vendor/golang.org/x/sys/unix/types_netbsd.go
-copy to vendor/golang.org/x/sys/unix/types_aix.go
-index cb95c80a..40d2beed 100644
---- a/vendor/golang.org/x/sys/unix/types_netbsd.go
-+++ b/vendor/golang.org/x/sys/unix/types_aix.go
-@@ -1,11 +1,12 @@
--// Copyright 2009 The Go Authors. All rights reserved.
-+// Copyright 2018 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
- // +build ignore
-+// +build aix
-
- /*
--Input to cgo -godefs. See README.md
-+Input to cgo -godefs. See also mkerrors.sh and mkall.sh
- */
-
- // +godefs map struct_in_addr [4]byte /* in_addr */
-@@ -14,44 +15,37 @@ Input to cgo -godefs. See README.md
- package unix
-
- /*
--#define KERNEL
--#include <dirent.h>
--#include <fcntl.h>
--#include <signal.h>
--#include <termios.h>
--#include <stdio.h>
--#include <unistd.h>
--#include <sys/param.h>
- #include <sys/types.h>
--#include <sys/event.h>
--#include <sys/mman.h>
--#include <sys/mount.h>
--#include <sys/ptrace.h>
--#include <sys/resource.h>
--#include <sys/select.h>
--#include <sys/signal.h>
--#include <sys/socket.h>
--#include <sys/stat.h>
--#include <sys/sysctl.h>
- #include <sys/time.h>
--#include <sys/uio.h>
-+#include <sys/limits.h>
- #include <sys/un.h>
--#include <sys/wait.h>
--#include <net/bpf.h>
-+#include <utime.h>
-+#include <sys/utsname.h>
-+#include <sys/poll.h>
-+#include <sys/resource.h>
-+#include <sys/stat.h>
-+#include <sys/statfs.h>
-+#include <sys/termio.h>
-+#include <sys/ioctl.h>
-+
-+#include <termios.h>
-+
- #include <net/if.h>
- #include <net/if_dl.h>
--#include <net/route.h>
- #include <netinet/in.h>
- #include <netinet/icmp6.h>
--#include <netinet/tcp.h>
-+
-+
-+#include <dirent.h>
-+#include <fcntl.h>
-
- enum {
- sizeofPtr = sizeof(void*),
- };
-
- union sockaddr_all {
-- struct sockaddr s1; // this one gets used for fields
-- struct sockaddr_in s2; // these pad it out
-+ struct sockaddr s1; // this one gets used for fields
-+ struct sockaddr_in s2; // these pad it out
- struct sockaddr_in6 s3;
- struct sockaddr_un s4;
- struct sockaddr_dl s5;
-@@ -65,14 +59,15 @@ struct sockaddr_any {
- */
- import "C"
-
--// Machine characteristics; for internal use.
-+// Machine characteristics
-
- const (
-- sizeofPtr = C.sizeofPtr
-- sizeofShort = C.sizeof_short
-- sizeofInt = C.sizeof_int
-- sizeofLong = C.sizeof_long
-- sizeofLongLong = C.sizeof_longlong
-+ SizeofPtr = C.sizeofPtr
-+ SizeofShort = C.sizeof_short
-+ SizeofInt = C.sizeof_int
-+ SizeofLong = C.sizeof_long
-+ SizeofLongLong = C.sizeof_longlong
-+ PathMax = C.PATH_MAX
- )
-
- // Basic types
-@@ -84,32 +79,50 @@ type (
- _C_long_long C.longlong
- )
-
-+type off64 C.off64_t
-+type off C.off_t
-+type Mode_t C.mode_t
-+
- // Time
-
- type Timespec C.struct_timespec
-
- type Timeval C.struct_timeval
-
-+type Timeval32 C.struct_timeval32
-+
-+type Timex C.struct_timex
-+
-+type Time_t C.time_t
-+
-+type Tms C.struct_tms
-+
-+type Utimbuf C.struct_utimbuf
-+
-+type Timezone C.struct_timezone
-+
- // Processes
-
- type Rusage C.struct_rusage
-
--type Rlimit C.struct_rlimit
-+type Rlimit C.struct_rlimit64
-+
-+type Pid_t C.pid_t
-
- type _Gid_t C.gid_t
-
-+type dev_t C.dev_t
-+
- // Files
-
- type Stat_t C.struct_stat
-
--type Statfs_t C.struct_statfs
-+type StatxTimestamp C.struct_statx_timestamp
-
--type Flock_t C.struct_flock
-+type Statx_t C.struct_statx
-
- type Dirent C.struct_dirent
-
--type Fsid C.fsid_t
--
- // Sockets
-
- type RawSockaddrInet4 C.struct_sockaddr_in
-@@ -126,7 +139,9 @@ type RawSockaddrAny C.struct_sockaddr_any
-
- type _Socklen C.socklen_t
-
--type Linger C.struct_linger
-+type Cmsghdr C.struct_cmsghdr
-+
-+type ICMPv6Filter C.struct_icmp6_filter
-
- type Iovec C.struct_iovec
-
-@@ -134,15 +149,11 @@ type IPMreq C.struct_ip_mreq
-
- type IPv6Mreq C.struct_ipv6_mreq
-
--type Msghdr C.struct_msghdr
--
--type Cmsghdr C.struct_cmsghdr
--
--type Inet6Pktinfo C.struct_in6_pktinfo
--
- type IPv6MTUInfo C.struct_ip6_mtuinfo
-
--type ICMPv6Filter C.struct_icmp6_filter
-+type Linger C.struct_linger
-+
-+type Msghdr C.struct_msghdr
-
- const (
- SizeofSockaddrInet4 = C.sizeof_struct_sockaddr_in
-@@ -153,87 +164,74 @@ const (
- SizeofLinger = C.sizeof_struct_linger
- SizeofIPMreq = C.sizeof_struct_ip_mreq
- SizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
-+ SizeofIPv6MTUInfo = C.sizeof_struct_ip6_mtuinfo
- SizeofMsghdr = C.sizeof_struct_msghdr
- SizeofCmsghdr = C.sizeof_struct_cmsghdr
-- SizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo
-- SizeofIPv6MTUInfo = C.sizeof_struct_ip6_mtuinfo
- SizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
- )
-
--// Ptrace requests
-+// Routing and interface messages
-
- const (
-- PTRACE_TRACEME = C.PT_TRACE_ME
-- PTRACE_CONT = C.PT_CONTINUE
-- PTRACE_KILL = C.PT_KILL
-+ SizeofIfMsghdr = C.sizeof_struct_if_msghdr
- )
-
--// Events (kqueue, kevent)
--
--type Kevent_t C.struct_kevent
-+type IfMsgHdr C.struct_if_msghdr
-
--// Select
-+// Misc
-
- type FdSet C.fd_set
-
--// Routing and interface messages
-+type Utsname C.struct_utsname
-
--const (
-- SizeofIfMsghdr = C.sizeof_struct_if_msghdr
-- SizeofIfData = C.sizeof_struct_if_data
-- SizeofIfaMsghdr = C.sizeof_struct_ifa_msghdr
-- SizeofIfAnnounceMsghdr = C.sizeof_struct_if_announcemsghdr
-- SizeofRtMsghdr = C.sizeof_struct_rt_msghdr
-- SizeofRtMetrics = C.sizeof_struct_rt_metrics
--)
-+type Ustat_t C.struct_ustat
-
--type IfMsghdr C.struct_if_msghdr
-+type Sigset_t C.sigset_t
-
--type IfData C.struct_if_data
-+const (
-+ AT_FDCWD = C.AT_FDCWD
-+ AT_REMOVEDIR = C.AT_REMOVEDIR
-+ AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
-+)
-
--type IfaMsghdr C.struct_ifa_msghdr
-+// Terminal handling
-
--type IfAnnounceMsghdr C.struct_if_announcemsghdr
-+type Termios C.struct_termios
-
--type RtMsghdr C.struct_rt_msghdr
-+type Termio C.struct_termio
-
--type RtMetrics C.struct_rt_metrics
-+type Winsize C.struct_winsize
-
--type Mclpool C.struct_mclpool
-+//poll
-
--// Berkeley packet filter
-+type PollFd struct {
-+ Fd int32
-+ Events uint16
-+ Revents uint16
-+}
-
- const (
-- SizeofBpfVersion = C.sizeof_struct_bpf_version
-- SizeofBpfStat = C.sizeof_struct_bpf_stat
-- SizeofBpfProgram = C.sizeof_struct_bpf_program
-- SizeofBpfInsn = C.sizeof_struct_bpf_insn
-- SizeofBpfHdr = C.sizeof_struct_bpf_hdr
-+ POLLERR = C.POLLERR
-+ POLLHUP = C.POLLHUP
-+ POLLIN = C.POLLIN
-+ POLLNVAL = C.POLLNVAL
-+ POLLOUT = C.POLLOUT
-+ POLLPRI = C.POLLPRI
-+ POLLRDBAND = C.POLLRDBAND
-+ POLLRDNORM = C.POLLRDNORM
-+ POLLWRBAND = C.POLLWRBAND
-+ POLLWRNORM = C.POLLWRNORM
- )
-
--type BpfVersion C.struct_bpf_version
--
--type BpfStat C.struct_bpf_stat
--
--type BpfProgram C.struct_bpf_program
--
--type BpfInsn C.struct_bpf_insn
--
--type BpfHdr C.struct_bpf_hdr
--
--type BpfTimeval C.struct_bpf_timeval
-+//flock_t
-
--// Terminal handling
--
--type Termios C.struct_termios
-+type Flock_t C.struct_flock64
-
--// fchmodat-like syscalls.
-+// Statfs
-
--const (
-- AT_FDCWD = C.AT_FDCWD
-- AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
--)
-+type Fsid_t C.struct_fsid_t
-+type Fsid64_t C.struct_fsid64_t
-
--// Sysctl
-+type Statfs_t C.struct_statfs
-
--type Sysctlnode C.struct_sysctlnode
-+const RNDGETENTCNT = 0x80045200
-diff --git a/vendor/golang.org/x/sys/unix/types_darwin.go b/vendor/golang.org/x/sys/unix/types_darwin.go
-index 415124d4..155c2e69 100644
---- a/vendor/golang.org/x/sys/unix/types_darwin.go
-+++ b/vendor/golang.org/x/sys/unix/types_darwin.go
-@@ -19,6 +19,7 @@ package unix
- #define _DARWIN_USE_64_BIT_INODE
- #include <dirent.h>
- #include <fcntl.h>
-+#include <poll.h>
- #include <signal.h>
- #include <termios.h>
- #include <unistd.h>
-@@ -38,6 +39,7 @@ package unix
- #include <sys/types.h>
- #include <sys/uio.h>
- #include <sys/un.h>
-+#include <sys/utsname.h>
- #include <sys/wait.h>
- #include <net/bpf.h>
- #include <net/if.h>
-@@ -68,14 +70,14 @@ struct sockaddr_any {
- */
- import "C"
-
--// Machine characteristics; for internal use.
-+// Machine characteristics
-
- const (
-- sizeofPtr = C.sizeofPtr
-- sizeofShort = C.sizeof_short
-- sizeofInt = C.sizeof_int
-- sizeofLong = C.sizeof_long
-- sizeofLongLong = C.sizeof_longlong
-+ SizeofPtr = C.sizeofPtr
-+ SizeofShort = C.sizeof_short
-+ SizeofInt = C.sizeof_int
-+ SizeofLong = C.sizeof_long
-+ SizeofLongLong = C.sizeof_longlong
- )
-
- // Basic types
-@@ -252,3 +254,30 @@ const (
- AT_SYMLINK_FOLLOW = C.AT_SYMLINK_FOLLOW
- AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
- )
-+
-+// poll
-+
-+type PollFd C.struct_pollfd
-+
-+const (
-+ POLLERR = C.POLLERR
-+ POLLHUP = C.POLLHUP
-+ POLLIN = C.POLLIN
-+ POLLNVAL = C.POLLNVAL
-+ POLLOUT = C.POLLOUT
-+ POLLPRI = C.POLLPRI
-+ POLLRDBAND = C.POLLRDBAND
-+ POLLRDNORM = C.POLLRDNORM
-+ POLLWRBAND = C.POLLWRBAND
-+ POLLWRNORM = C.POLLWRNORM
-+)
-+
-+// uname
-+
-+type Utsname C.struct_utsname
-+
-+// Clockinfo
-+
-+const SizeofClockinfo = C.sizeof_struct_clockinfo
-+
-+type Clockinfo C.struct_clockinfo
-diff --git a/vendor/golang.org/x/sys/unix/types_dragonfly.go b/vendor/golang.org/x/sys/unix/types_dragonfly.go
-index 80b27781..6574f6b6 100644
---- a/vendor/golang.org/x/sys/unix/types_dragonfly.go
-+++ b/vendor/golang.org/x/sys/unix/types_dragonfly.go
-@@ -17,6 +17,7 @@ package unix
- #define KERNEL
- #include <dirent.h>
- #include <fcntl.h>
-+#include <poll.h>
- #include <signal.h>
- #include <termios.h>
- #include <stdio.h>
-@@ -34,6 +35,7 @@ package unix
- #include <sys/time.h>
- #include <sys/types.h>
- #include <sys/un.h>
-+#include <sys/utsname.h>
- #include <sys/wait.h>
- #include <net/bpf.h>
- #include <net/if.h>
-@@ -63,14 +65,14 @@ struct sockaddr_any {
- */
- import "C"
-
--// Machine characteristics; for internal use.
-+// Machine characteristics
-
- const (
-- sizeofPtr = C.sizeofPtr
-- sizeofShort = C.sizeof_short
-- sizeofInt = C.sizeof_int
-- sizeofLong = C.sizeof_long
-- sizeofLongLong = C.sizeof_longlong
-+ SizeofPtr = C.sizeofPtr
-+ SizeofShort = C.sizeof_short
-+ SizeofInt = C.sizeof_int
-+ SizeofLong = C.sizeof_long
-+ SizeofLongLong = C.sizeof_longlong
- )
-
- // Basic types
-@@ -98,23 +100,6 @@ type _Gid_t C.gid_t
-
- // Files
-
--const ( // Directory mode bits
-- S_IFMT = C.S_IFMT
-- S_IFIFO = C.S_IFIFO
-- S_IFCHR = C.S_IFCHR
-- S_IFDIR = C.S_IFDIR
-- S_IFBLK = C.S_IFBLK
-- S_IFREG = C.S_IFREG
-- S_IFLNK = C.S_IFLNK
-- S_IFSOCK = C.S_IFSOCK
-- S_ISUID = C.S_ISUID
-- S_ISGID = C.S_ISGID
-- S_ISVTX = C.S_ISVTX
-- S_IRUSR = C.S_IRUSR
-- S_IWUSR = C.S_IWUSR
-- S_IXUSR = C.S_IXUSR
--)
--
- type Stat_t C.struct_stat
-
- type Statfs_t C.struct_statfs
-@@ -125,6 +110,12 @@ type Dirent C.struct_dirent
-
- type Fsid C.struct_fsid
-
-+// File system limits
-+
-+const (
-+ PathMax = C.PATH_MAX
-+)
-+
- // Sockets
-
- type RawSockaddrInet4 C.struct_sockaddr_in
-@@ -241,9 +232,38 @@ type BpfHdr C.struct_bpf_hdr
-
- type Termios C.struct_termios
-
-+type Winsize C.struct_winsize
-+
- // fchmodat-like syscalls.
-
- const (
- AT_FDCWD = C.AT_FDCWD
- AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
- )
-+
-+// poll
-+
-+type PollFd C.struct_pollfd
-+
-+const (
-+ POLLERR = C.POLLERR
-+ POLLHUP = C.POLLHUP
-+ POLLIN = C.POLLIN
-+ POLLNVAL = C.POLLNVAL
-+ POLLOUT = C.POLLOUT
-+ POLLPRI = C.POLLPRI
-+ POLLRDBAND = C.POLLRDBAND
-+ POLLRDNORM = C.POLLRDNORM
-+ POLLWRBAND = C.POLLWRBAND
-+ POLLWRNORM = C.POLLWRNORM
-+)
-+
-+// Uname
-+
-+type Utsname C.struct_utsname
-+
-+// Clockinfo
-+
-+const SizeofClockinfo = C.sizeof_struct_clockinfo
-+
-+type Clockinfo C.struct_clockinfo
-diff --git a/vendor/golang.org/x/sys/unix/types_freebsd.go b/vendor/golang.org/x/sys/unix/types_freebsd.go
-index 934fd7ac..c6fde424 100644
---- a/vendor/golang.org/x/sys/unix/types_freebsd.go
-+++ b/vendor/golang.org/x/sys/unix/types_freebsd.go
-@@ -14,14 +14,19 @@ Input to cgo -godefs. See README.md
- package unix
-
- /*
--#define KERNEL
-+#define _WANT_FREEBSD11_STAT 1
-+#define _WANT_FREEBSD11_STATFS 1
-+#define _WANT_FREEBSD11_DIRENT 1
-+#define _WANT_FREEBSD11_KEVENT 1
-+
- #include <dirent.h>
- #include <fcntl.h>
-+#include <poll.h>
- #include <signal.h>
- #include <termios.h>
- #include <stdio.h>
- #include <unistd.h>
--#include <sys/capability.h>
-+#include <sys/capsicum.h>
- #include <sys/event.h>
- #include <sys/mman.h>
- #include <sys/mount.h>
-@@ -35,6 +40,7 @@ package unix
- #include <sys/time.h>
- #include <sys/types.h>
- #include <sys/un.h>
-+#include <sys/utsname.h>
- #include <sys/wait.h>
- #include <net/bpf.h>
- #include <net/if.h>
-@@ -61,50 +67,6 @@ struct sockaddr_any {
- char pad[sizeof(union sockaddr_all) - sizeof(struct sockaddr)];
- };
-
--// This structure is a duplicate of stat on FreeBSD 8-STABLE.
--// See /usr/include/sys/stat.h.
--struct stat8 {
--#undef st_atimespec st_atim
--#undef st_mtimespec st_mtim
--#undef st_ctimespec st_ctim
--#undef st_birthtimespec st_birthtim
-- __dev_t st_dev;
-- ino_t st_ino;
-- mode_t st_mode;
-- nlink_t st_nlink;
-- uid_t st_uid;
-- gid_t st_gid;
-- __dev_t st_rdev;
--#if __BSD_VISIBLE
-- struct timespec st_atimespec;
-- struct timespec st_mtimespec;
-- struct timespec st_ctimespec;
--#else
-- time_t st_atime;
-- long __st_atimensec;
-- time_t st_mtime;
-- long __st_mtimensec;
-- time_t st_ctime;
-- long __st_ctimensec;
--#endif
-- off_t st_size;
-- blkcnt_t st_blocks;
-- blksize_t st_blksize;
-- fflags_t st_flags;
-- __uint32_t st_gen;
-- __int32_t st_lspare;
--#if __BSD_VISIBLE
-- struct timespec st_birthtimespec;
-- unsigned int :(8 / 2) * (16 - (int)sizeof(struct timespec));
-- unsigned int :(8 / 2) * (16 - (int)sizeof(struct timespec));
--#else
-- time_t st_birthtime;
-- long st_birthtimensec;
-- unsigned int :(8 / 2) * (16 - (int)sizeof(struct __timespec));
-- unsigned int :(8 / 2) * (16 - (int)sizeof(struct __timespec));
--#endif
--};
--
- // This structure is a duplicate of if_data on FreeBSD 8-STABLE.
- // See /usr/include/net/if.h.
- struct if_data8 {
-@@ -152,14 +114,14 @@ struct if_msghdr8 {
- */
- import "C"
-
--// Machine characteristics; for internal use.
-+// Machine characteristics
-
- const (
-- sizeofPtr = C.sizeofPtr
-- sizeofShort = C.sizeof_short
-- sizeofInt = C.sizeof_int
-- sizeofLong = C.sizeof_long
-- sizeofLongLong = C.sizeof_longlong
-+ SizeofPtr = C.sizeofPtr
-+ SizeofShort = C.sizeof_short
-+ SizeofInt = C.sizeof_int
-+ SizeofLong = C.sizeof_long
-+ SizeofLongLong = C.sizeof_longlong
- )
-
- // Basic types
-@@ -187,33 +149,33 @@ type _Gid_t C.gid_t
-
- // Files
-
--const ( // Directory mode bits
-- S_IFMT = C.S_IFMT
-- S_IFIFO = C.S_IFIFO
-- S_IFCHR = C.S_IFCHR
-- S_IFDIR = C.S_IFDIR
-- S_IFBLK = C.S_IFBLK
-- S_IFREG = C.S_IFREG
-- S_IFLNK = C.S_IFLNK
-- S_IFSOCK = C.S_IFSOCK
-- S_ISUID = C.S_ISUID
-- S_ISGID = C.S_ISGID
-- S_ISVTX = C.S_ISVTX
-- S_IRUSR = C.S_IRUSR
-- S_IWUSR = C.S_IWUSR
-- S_IXUSR = C.S_IXUSR
-+const (
-+ _statfsVersion = C.STATFS_VERSION
-+ _dirblksiz = C.DIRBLKSIZ
- )
-
--type Stat_t C.struct_stat8
-+type Stat_t C.struct_stat
-+
-+type stat_freebsd11_t C.struct_freebsd11_stat
-
- type Statfs_t C.struct_statfs
-
-+type statfs_freebsd11_t C.struct_freebsd11_statfs
-+
- type Flock_t C.struct_flock
-
- type Dirent C.struct_dirent
-
-+type dirent_freebsd11 C.struct_freebsd11_dirent
-+
- type Fsid C.struct_fsid
-
-+// File system limits
-+
-+const (
-+ PathMax = C.PATH_MAX
-+)
-+
- // Advice to Fadvise
-
- const (
-@@ -281,14 +243,58 @@ const (
- // Ptrace requests
-
- const (
-- PTRACE_TRACEME = C.PT_TRACE_ME
-- PTRACE_CONT = C.PT_CONTINUE
-- PTRACE_KILL = C.PT_KILL
-+ PTRACE_ATTACH = C.PT_ATTACH
-+ PTRACE_CONT = C.PT_CONTINUE
-+ PTRACE_DETACH = C.PT_DETACH
-+ PTRACE_GETFPREGS = C.PT_GETFPREGS
-+ PTRACE_GETFSBASE = C.PT_GETFSBASE
-+ PTRACE_GETLWPLIST = C.PT_GETLWPLIST
-+ PTRACE_GETNUMLWPS = C.PT_GETNUMLWPS
-+ PTRACE_GETREGS = C.PT_GETREGS
-+ PTRACE_GETXSTATE = C.PT_GETXSTATE
-+ PTRACE_IO = C.PT_IO
-+ PTRACE_KILL = C.PT_KILL
-+ PTRACE_LWPEVENTS = C.PT_LWP_EVENTS
-+ PTRACE_LWPINFO = C.PT_LWPINFO
-+ PTRACE_SETFPREGS = C.PT_SETFPREGS
-+ PTRACE_SETREGS = C.PT_SETREGS
-+ PTRACE_SINGLESTEP = C.PT_STEP
-+ PTRACE_TRACEME = C.PT_TRACE_ME
-+)
-+
-+const (
-+ PIOD_READ_D = C.PIOD_READ_D
-+ PIOD_WRITE_D = C.PIOD_WRITE_D
-+ PIOD_READ_I = C.PIOD_READ_I
-+ PIOD_WRITE_I = C.PIOD_WRITE_I
-+)
-+
-+const (
-+ PL_FLAG_BORN = C.PL_FLAG_BORN
-+ PL_FLAG_EXITED = C.PL_FLAG_EXITED
-+ PL_FLAG_SI = C.PL_FLAG_SI
-+)
-+
-+const (
-+ TRAP_BRKPT = C.TRAP_BRKPT
-+ TRAP_TRACE = C.TRAP_TRACE
- )
-
-+type PtraceLwpInfoStruct C.struct_ptrace_lwpinfo
-+
-+type __Siginfo C.struct___siginfo
-+
-+type Sigset_t C.sigset_t
-+
-+type Reg C.struct_reg
-+
-+type FpReg C.struct_fpreg
-+
-+type PtraceIoDesc C.struct_ptrace_io_desc
-+
- // Events (kqueue, kevent)
-
--type Kevent_t C.struct_kevent
-+type Kevent_t C.struct_kevent_freebsd11
-
- // Select
-
-@@ -367,6 +373,34 @@ const (
- AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
- )
-
-+// poll
-+
-+type PollFd C.struct_pollfd
-+
-+const (
-+ POLLERR = C.POLLERR
-+ POLLHUP = C.POLLHUP
-+ POLLIN = C.POLLIN
-+ POLLINIGNEOF = C.POLLINIGNEOF
-+ POLLNVAL = C.POLLNVAL
-+ POLLOUT = C.POLLOUT
-+ POLLPRI = C.POLLPRI
-+ POLLRDBAND = C.POLLRDBAND
-+ POLLRDNORM = C.POLLRDNORM
-+ POLLWRBAND = C.POLLWRBAND
-+ POLLWRNORM = C.POLLWRNORM
-+)
-+
- // Capabilities
-
- type CapRights C.struct_cap_rights
-+
-+// Uname
-+
-+type Utsname C.struct_utsname
-+
-+// Clockinfo
-+
-+const SizeofClockinfo = C.sizeof_struct_clockinfo
-+
-+type Clockinfo C.struct_clockinfo
-diff --git a/vendor/golang.org/x/sys/unix/types_netbsd.go b/vendor/golang.org/x/sys/unix/types_netbsd.go
-index cb95c80a..0a81aadb 100644
---- a/vendor/golang.org/x/sys/unix/types_netbsd.go
-+++ b/vendor/golang.org/x/sys/unix/types_netbsd.go
-@@ -17,6 +17,7 @@ package unix
- #define KERNEL
- #include <dirent.h>
- #include <fcntl.h>
-+#include <poll.h>
- #include <signal.h>
- #include <termios.h>
- #include <stdio.h>
-@@ -32,10 +33,12 @@ package unix
- #include <sys/signal.h>
- #include <sys/socket.h>
- #include <sys/stat.h>
-+#include <sys/statvfs.h>
- #include <sys/sysctl.h>
- #include <sys/time.h>
- #include <sys/uio.h>
- #include <sys/un.h>
-+#include <sys/utsname.h>
- #include <sys/wait.h>
- #include <net/bpf.h>
- #include <net/if.h>
-@@ -65,14 +68,14 @@ struct sockaddr_any {
- */
- import "C"
-
--// Machine characteristics; for internal use.
-+// Machine characteristics
-
- const (
-- sizeofPtr = C.sizeofPtr
-- sizeofShort = C.sizeof_short
-- sizeofInt = C.sizeof_int
-- sizeofLong = C.sizeof_long
-- sizeofLongLong = C.sizeof_longlong
-+ SizeofPtr = C.sizeofPtr
-+ SizeofShort = C.sizeof_short
-+ SizeofInt = C.sizeof_int
-+ SizeofLong = C.sizeof_long
-+ SizeofLongLong = C.sizeof_longlong
- )
-
- // Basic types
-@@ -104,12 +107,38 @@ type Stat_t C.struct_stat
-
- type Statfs_t C.struct_statfs
-
-+type Statvfs_t C.struct_statvfs
-+
- type Flock_t C.struct_flock
-
- type Dirent C.struct_dirent
-
- type Fsid C.fsid_t
-
-+// File system limits
-+
-+const (
-+ PathMax = C.PATH_MAX
-+)
-+
-+// Fstatvfs/Statvfs flags
-+
-+const (
-+ ST_WAIT = C.ST_WAIT
-+ ST_NOWAIT = C.ST_NOWAIT
-+)
-+
-+// Advice to Fadvise
-+
-+const (
-+ FADV_NORMAL = C.POSIX_FADV_NORMAL
-+ FADV_RANDOM = C.POSIX_FADV_RANDOM
-+ FADV_SEQUENTIAL = C.POSIX_FADV_SEQUENTIAL
-+ FADV_WILLNEED = C.POSIX_FADV_WILLNEED
-+ FADV_DONTNEED = C.POSIX_FADV_DONTNEED
-+ FADV_NOREUSE = C.POSIX_FADV_NOREUSE
-+)
-+
- // Sockets
-
- type RawSockaddrInet4 C.struct_sockaddr_in
-@@ -227,13 +256,45 @@ type BpfTimeval C.struct_bpf_timeval
-
- type Termios C.struct_termios
-
-+type Winsize C.struct_winsize
-+
-+type Ptmget C.struct_ptmget
-+
- // fchmodat-like syscalls.
-
- const (
- AT_FDCWD = C.AT_FDCWD
-+ AT_SYMLINK_FOLLOW = C.AT_SYMLINK_FOLLOW
- AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
- )
-
-+// poll
-+
-+type PollFd C.struct_pollfd
-+
-+const (
-+ POLLERR = C.POLLERR
-+ POLLHUP = C.POLLHUP
-+ POLLIN = C.POLLIN
-+ POLLNVAL = C.POLLNVAL
-+ POLLOUT = C.POLLOUT
-+ POLLPRI = C.POLLPRI
-+ POLLRDBAND = C.POLLRDBAND
-+ POLLRDNORM = C.POLLRDNORM
-+ POLLWRBAND = C.POLLWRBAND
-+ POLLWRNORM = C.POLLWRNORM
-+)
-+
- // Sysctl
-
- type Sysctlnode C.struct_sysctlnode
-+
-+// Uname
-+
-+type Utsname C.struct_utsname
-+
-+// Clockinfo
-+
-+const SizeofClockinfo = C.sizeof_struct_clockinfo
-+
-+type Clockinfo C.struct_clockinfo
-diff --git a/vendor/golang.org/x/sys/unix/types_openbsd.go b/vendor/golang.org/x/sys/unix/types_openbsd.go
-index 392da69b..775cb57d 100644
---- a/vendor/golang.org/x/sys/unix/types_openbsd.go
-+++ b/vendor/golang.org/x/sys/unix/types_openbsd.go
-@@ -17,6 +17,7 @@ package unix
- #define KERNEL
- #include <dirent.h>
- #include <fcntl.h>
-+#include <poll.h>
- #include <signal.h>
- #include <termios.h>
- #include <stdio.h>
-@@ -35,7 +36,9 @@ package unix
- #include <sys/time.h>
- #include <sys/uio.h>
- #include <sys/un.h>
-+#include <sys/utsname.h>
- #include <sys/wait.h>
-+#include <uvm/uvmexp.h>
- #include <net/bpf.h>
- #include <net/if.h>
- #include <net/if_dl.h>
-@@ -64,14 +67,14 @@ struct sockaddr_any {
- */
- import "C"
-
--// Machine characteristics; for internal use.
-+// Machine characteristics
-
- const (
-- sizeofPtr = C.sizeofPtr
-- sizeofShort = C.sizeof_short
-- sizeofInt = C.sizeof_int
-- sizeofLong = C.sizeof_long
-- sizeofLongLong = C.sizeof_longlong
-+ SizeofPtr = C.sizeofPtr
-+ SizeofShort = C.sizeof_short
-+ SizeofInt = C.sizeof_int
-+ SizeofLong = C.sizeof_long
-+ SizeofLongLong = C.sizeof_longlong
- )
-
- // Basic types
-@@ -99,23 +102,6 @@ type _Gid_t C.gid_t
-
- // Files
-
--const ( // Directory mode bits
-- S_IFMT = C.S_IFMT
-- S_IFIFO = C.S_IFIFO
-- S_IFCHR = C.S_IFCHR
-- S_IFDIR = C.S_IFDIR
-- S_IFBLK = C.S_IFBLK
-- S_IFREG = C.S_IFREG
-- S_IFLNK = C.S_IFLNK
-- S_IFSOCK = C.S_IFSOCK
-- S_ISUID = C.S_ISUID
-- S_ISGID = C.S_ISGID
-- S_ISVTX = C.S_ISVTX
-- S_IRUSR = C.S_IRUSR
-- S_IWUSR = C.S_IWUSR
-- S_IXUSR = C.S_IXUSR
--)
--
- type Stat_t C.struct_stat
-
- type Statfs_t C.struct_statfs
-@@ -126,6 +112,12 @@ type Dirent C.struct_dirent
-
- type Fsid C.fsid_t
-
-+// File system limits
-+
-+const (
-+ PathMax = C.PATH_MAX
-+)
-+
- // Sockets
-
- type RawSockaddrInet4 C.struct_sockaddr_in
-@@ -243,9 +235,49 @@ type BpfTimeval C.struct_bpf_timeval
-
- type Termios C.struct_termios
-
-+type Winsize C.struct_winsize
-+
- // fchmodat-like syscalls.
-
- const (
- AT_FDCWD = C.AT_FDCWD
-+ AT_SYMLINK_FOLLOW = C.AT_SYMLINK_FOLLOW
- AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
- )
-+
-+// poll
-+
-+type PollFd C.struct_pollfd
-+
-+const (
-+ POLLERR = C.POLLERR
-+ POLLHUP = C.POLLHUP
-+ POLLIN = C.POLLIN
-+ POLLNVAL = C.POLLNVAL
-+ POLLOUT = C.POLLOUT
-+ POLLPRI = C.POLLPRI
-+ POLLRDBAND = C.POLLRDBAND
-+ POLLRDNORM = C.POLLRDNORM
-+ POLLWRBAND = C.POLLWRBAND
-+ POLLWRNORM = C.POLLWRNORM
-+)
-+
-+// Signal Sets
-+
-+type Sigset_t C.sigset_t
-+
-+// Uname
-+
-+type Utsname C.struct_utsname
-+
-+// Uvmexp
-+
-+const SizeofUvmexp = C.sizeof_struct_uvmexp
-+
-+type Uvmexp C.struct_uvmexp
-+
-+// Clockinfo
-+
-+const SizeofClockinfo = C.sizeof_struct_clockinfo
-+
-+type Clockinfo C.struct_clockinfo
-diff --git a/vendor/golang.org/x/sys/unix/types_solaris.go b/vendor/golang.org/x/sys/unix/types_solaris.go
-index 393c7f04..d713f09e 100644
---- a/vendor/golang.org/x/sys/unix/types_solaris.go
-+++ b/vendor/golang.org/x/sys/unix/types_solaris.go
-@@ -24,6 +24,7 @@ package unix
- #include <fcntl.h>
- #include <netdb.h>
- #include <limits.h>
-+#include <poll.h>
- #include <signal.h>
- #include <termios.h>
- #include <termio.h>
-@@ -74,14 +75,14 @@ struct sockaddr_any {
- */
- import "C"
-
--// Machine characteristics; for internal use.
-+// Machine characteristics
-
- const (
-- sizeofPtr = C.sizeofPtr
-- sizeofShort = C.sizeof_short
-- sizeofInt = C.sizeof_int
-- sizeofLong = C.sizeof_long
-- sizeofLongLong = C.sizeof_longlong
-+ SizeofPtr = C.sizeofPtr
-+ SizeofShort = C.sizeof_short
-+ SizeofInt = C.sizeof_int
-+ SizeofLong = C.sizeof_long
-+ SizeofLongLong = C.sizeof_longlong
- PathMax = C.PATH_MAX
- MaxHostNameLen = C.MAXHOSTNAMELEN
- )
-@@ -117,23 +118,6 @@ type _Gid_t C.gid_t
-
- // Files
-
--const ( // Directory mode bits
-- S_IFMT = C.S_IFMT
-- S_IFIFO = C.S_IFIFO
-- S_IFCHR = C.S_IFCHR
-- S_IFDIR = C.S_IFDIR
-- S_IFBLK = C.S_IFBLK
-- S_IFREG = C.S_IFREG
-- S_IFLNK = C.S_IFLNK
-- S_IFSOCK = C.S_IFSOCK
-- S_ISUID = C.S_ISUID
-- S_ISGID = C.S_ISGID
-- S_ISVTX = C.S_ISVTX
-- S_IRUSR = C.S_IRUSR
-- S_IWUSR = C.S_IWUSR
-- S_IXUSR = C.S_IXUSR
--)
--
- type Stat_t C.struct_stat
-
- type Flock_t C.struct_flock
-@@ -174,6 +158,8 @@ type Msghdr C.struct_msghdr
-
- type Cmsghdr C.struct_cmsghdr
-
-+type Inet4Pktinfo C.struct_in_pktinfo
-+
- type Inet6Pktinfo C.struct_in6_pktinfo
-
- type IPv6MTUInfo C.struct_ip6_mtuinfo
-@@ -191,6 +177,7 @@ const (
- SizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
- SizeofMsghdr = C.sizeof_struct_msghdr
- SizeofCmsghdr = C.sizeof_struct_cmsghdr
-+ SizeofInet4Pktinfo = C.sizeof_struct_in_pktinfo
- SizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo
- SizeofIPv6MTUInfo = C.sizeof_struct_ip6_mtuinfo
- SizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
-@@ -256,10 +243,6 @@ type BpfTimeval C.struct_bpf_timeval
-
- type BpfHdr C.struct_bpf_hdr
-
--// sysconf information
--
--const _SC_PAGESIZE = C._SC_PAGESIZE
--
- // Terminal handling
-
- type Termios C.struct_termios
-@@ -267,3 +250,20 @@ type Termios C.struct_termios
- type Termio C.struct_termio
-
- type Winsize C.struct_winsize
-+
-+// poll
-+
-+type PollFd C.struct_pollfd
-+
-+const (
-+ POLLERR = C.POLLERR
-+ POLLHUP = C.POLLHUP
-+ POLLIN = C.POLLIN
-+ POLLNVAL = C.POLLNVAL
-+ POLLOUT = C.POLLOUT
-+ POLLPRI = C.POLLPRI
-+ POLLRDBAND = C.POLLRDBAND
-+ POLLRDNORM = C.POLLRDNORM
-+ POLLWRBAND = C.POLLWRBAND
-+ POLLWRNORM = C.POLLWRNORM
-+)
-diff --git a/vendor/golang.org/x/sys/unix/unveil_openbsd.go b/vendor/golang.org/x/sys/unix/unveil_openbsd.go
-new file mode 100644
-index 00000000..168d5ae7
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/unveil_openbsd.go
-@@ -0,0 +1,42 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+package unix
-+
-+import (
-+ "syscall"
-+ "unsafe"
-+)
-+
-+// Unveil implements the unveil syscall.
-+// For more information see unveil(2).
-+// Note that the special case of blocking further
-+// unveil calls is handled by UnveilBlock.
-+func Unveil(path string, flags string) error {
-+ pathPtr, err := syscall.BytePtrFromString(path)
-+ if err != nil {
-+ return err
-+ }
-+ flagsPtr, err := syscall.BytePtrFromString(flags)
-+ if err != nil {
-+ return err
-+ }
-+ _, _, e := syscall.Syscall(SYS_UNVEIL, uintptr(unsafe.Pointer(pathPtr)), uintptr(unsafe.Pointer(flagsPtr)), 0)
-+ if e != 0 {
-+ return e
-+ }
-+ return nil
-+}
-+
-+// UnveilBlock blocks future unveil calls.
-+// For more information see unveil(2).
-+func UnveilBlock() error {
-+ // Both pointers must be nil.
-+ var pathUnsafe, flagsUnsafe unsafe.Pointer
-+ _, _, e := syscall.Syscall(SYS_UNVEIL, uintptr(pathUnsafe), uintptr(flagsUnsafe), 0)
-+ if e != 0 {
-+ return e
-+ }
-+ return nil
-+}
-diff --git a/vendor/golang.org/x/sys/unix/xattr_bsd.go b/vendor/golang.org/x/sys/unix/xattr_bsd.go
-new file mode 100644
-index 00000000..30c1d71f
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/xattr_bsd.go
-@@ -0,0 +1,240 @@
-+// Copyright 2018 The Go Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style
-+// license that can be found in the LICENSE file.
-+
-+// +build freebsd netbsd
-+
-+package unix
-+
-+import (
-+ "strings"
-+ "unsafe"
-+)
-+
-+// Derive extattr namespace and attribute name
-+
-+func xattrnamespace(fullattr string) (ns int, attr string, err error) {
-+ s := strings.IndexByte(fullattr, '.')
-+ if s == -1 {
-+ return -1, "", ENOATTR
-+ }
-+
-+ namespace := fullattr[0:s]
-+ attr = fullattr[s+1:]
-+
-+ switch namespace {
-+ case "user":
-+ return EXTATTR_NAMESPACE_USER, attr, nil
-+ case "system":
-+ return EXTATTR_NAMESPACE_SYSTEM, attr, nil
-+ default:
-+ return -1, "", ENOATTR
-+ }
-+}
-+
-+func initxattrdest(dest []byte, idx int) (d unsafe.Pointer) {
-+ if len(dest) > idx {
-+ return unsafe.Pointer(&dest[idx])
-+ } else {
-+ return unsafe.Pointer(_zero)
-+ }
-+}
-+
-+// FreeBSD and NetBSD implement their own syscalls to handle extended attributes
-+
-+func Getxattr(file string, attr string, dest []byte) (sz int, err error) {
-+ d := initxattrdest(dest, 0)
-+ destsize := len(dest)
-+
-+ nsid, a, err := xattrnamespace(attr)
-+ if err != nil {
-+ return -1, err
-+ }
-+
-+ return ExtattrGetFile(file, nsid, a, uintptr(d), destsize)
-+}
-+
-+func Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-+ d := initxattrdest(dest, 0)
-+ destsize := len(dest)
-+
-+ nsid, a, err := xattrnamespace(attr)
-+ if err != nil {
-+ return -1, err
-+ }
-+
-+ return ExtattrGetFd(fd, nsid, a, uintptr(d), destsize)
-+}
-+
-+func Lgetxattr(link string, attr string, dest []byte) (sz int, err error) {
-+ d := initxattrdest(dest, 0)
-+ destsize := len(dest)
-+
-+ nsid, a, err := xattrnamespace(attr)
-+ if err != nil {
-+ return -1, err
-+ }
-+
-+ return ExtattrGetLink(link, nsid, a, uintptr(d), destsize)
-+}
-+
-+// flags are unused on FreeBSD
-+
-+func Fsetxattr(fd int, attr string, data []byte, flags int) (err error) {
-+ var d unsafe.Pointer
-+ if len(data) > 0 {
-+ d = unsafe.Pointer(&data[0])
-+ }
-+ datasiz := len(data)
-+
-+ nsid, a, err := xattrnamespace(attr)
-+ if err != nil {
-+ return
-+ }
-+
-+ _, err = ExtattrSetFd(fd, nsid, a, uintptr(d), datasiz)
-+ return
-+}
-+
-+func Setxattr(file string, attr string, data []byte, flags int) (err error) {
-+ var d unsafe.Pointer
-+ if len(data) > 0 {
-+ d = unsafe.Pointer(&data[0])
-+ }
-+ datasiz := len(data)
-+
-+ nsid, a, err := xattrnamespace(attr)
-+ if err != nil {
-+ return
-+ }
-+
-+ _, err = ExtattrSetFile(file, nsid, a, uintptr(d), datasiz)
-+ return
-+}
-+
-+func Lsetxattr(link string, attr string, data []byte, flags int) (err error) {
-+ var d unsafe.Pointer
-+ if len(data) > 0 {
-+ d = unsafe.Pointer(&data[0])
-+ }
-+ datasiz := len(data)
-+
-+ nsid, a, err := xattrnamespace(attr)
-+ if err != nil {
-+ return
-+ }
-+
-+ _, err = ExtattrSetLink(link, nsid, a, uintptr(d), datasiz)
-+ return
-+}
-+
-+func Removexattr(file string, attr string) (err error) {
-+ nsid, a, err := xattrnamespace(attr)
-+ if err != nil {
-+ return
-+ }
-+
-+ err = ExtattrDeleteFile(file, nsid, a)
-+ return
-+}
-+
-+func Fremovexattr(fd int, attr string) (err error) {
-+ nsid, a, err := xattrnamespace(attr)
-+ if err != nil {
-+ return
-+ }
-+
-+ err = ExtattrDeleteFd(fd, nsid, a)
-+ return
-+}
-+
-+func Lremovexattr(link string, attr string) (err error) {
-+ nsid, a, err := xattrnamespace(attr)
-+ if err != nil {
-+ return
-+ }
-+
-+ err = ExtattrDeleteLink(link, nsid, a)
-+ return
-+}
-+
-+func Listxattr(file string, dest []byte) (sz int, err error) {
-+ d := initxattrdest(dest, 0)
-+ destsiz := len(dest)
-+
-+ // FreeBSD won't allow you to list xattrs from multiple namespaces
-+ s := 0
-+ for _, nsid := range [...]int{EXTATTR_NAMESPACE_USER, EXTATTR_NAMESPACE_SYSTEM} {
-+ stmp, e := ExtattrListFile(file, nsid, uintptr(d), destsiz)
-+
-+ /* Errors accessing system attrs are ignored so that
-+ * we can implement the Linux-like behavior of omitting errors that
-+ * we don't have read permissions on
-+ *
-+ * Linux will still error if we ask for user attributes on a file that
-+ * we don't have read permissions on, so don't ignore those errors
-+ */
-+ if e != nil && e == EPERM && nsid != EXTATTR_NAMESPACE_USER {
-+ continue
-+ } else if e != nil {
-+ return s, e
-+ }
-+
-+ s += stmp
-+ destsiz -= s
-+ if destsiz < 0 {
-+ destsiz = 0
-+ }
-+ d = initxattrdest(dest, s)
-+ }
-+
-+ return s, nil
-+}
-+
-+func Flistxattr(fd int, dest []byte) (sz int, err error) {
-+ d := initxattrdest(dest, 0)
-+ destsiz := len(dest)
-+
-+ s := 0
-+ for _, nsid := range [...]int{EXTATTR_NAMESPACE_USER, EXTATTR_NAMESPACE_SYSTEM} {
-+ stmp, e := ExtattrListFd(fd, nsid, uintptr(d), destsiz)
-+ if e != nil && e == EPERM && nsid != EXTATTR_NAMESPACE_USER {
-+ continue
-+ } else if e != nil {
-+ return s, e
-+ }
-+
-+ s += stmp
-+ destsiz -= s
-+ if destsiz < 0 {
-+ destsiz = 0
-+ }
-+ d = initxattrdest(dest, s)
-+ }
-+
-+ return s, nil
-+}
-+
-+func Llistxattr(link string, dest []byte) (sz int, err error) {
-+ d := initxattrdest(dest, 0)
-+ destsiz := len(dest)
-+
-+ s := 0
-+ for _, nsid := range [...]int{EXTATTR_NAMESPACE_USER, EXTATTR_NAMESPACE_SYSTEM} {
-+ stmp, e := ExtattrListLink(link, nsid, uintptr(d), destsiz)
-+ if e != nil && e == EPERM && nsid != EXTATTR_NAMESPACE_USER {
-+ continue
-+ } else if e != nil {
-+ return s, e
-+ }
-+
-+ s += stmp
-+ destsiz -= s
-+ if destsiz < 0 {
-+ destsiz = 0
-+ }
-+ d = initxattrdest(dest, s)
-+ }
-+
-+ return s, nil
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go b/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go
-new file mode 100644
-index 00000000..104994bc
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go
-@@ -0,0 +1,1384 @@
-+// mkerrors.sh -maix32
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build ppc,aix
-+
-+// Created by cgo -godefs - DO NOT EDIT
-+// cgo -godefs -- -maix32 _const.go
-+
-+package unix
-+
-+import "syscall"
-+
-+const (
-+ AF_APPLETALK = 0x10
-+ AF_BYPASS = 0x19
-+ AF_CCITT = 0xa
-+ AF_CHAOS = 0x5
-+ AF_DATAKIT = 0x9
-+ AF_DECnet = 0xc
-+ AF_DLI = 0xd
-+ AF_ECMA = 0x8
-+ AF_HYLINK = 0xf
-+ AF_IMPLINK = 0x3
-+ AF_INET = 0x2
-+ AF_INET6 = 0x18
-+ AF_INTF = 0x14
-+ AF_ISO = 0x7
-+ AF_LAT = 0xe
-+ AF_LINK = 0x12
-+ AF_LOCAL = 0x1
-+ AF_MAX = 0x1e
-+ AF_NDD = 0x17
-+ AF_NETWARE = 0x16
-+ AF_NS = 0x6
-+ AF_OSI = 0x7
-+ AF_PUP = 0x4
-+ AF_RIF = 0x15
-+ AF_ROUTE = 0x11
-+ AF_SNA = 0xb
-+ AF_UNIX = 0x1
-+ AF_UNSPEC = 0x0
-+ ALTWERASE = 0x400000
-+ ARPHRD_802_3 = 0x6
-+ ARPHRD_802_5 = 0x6
-+ ARPHRD_ETHER = 0x1
-+ ARPHRD_FDDI = 0x1
-+ B0 = 0x0
-+ B110 = 0x3
-+ B1200 = 0x9
-+ B134 = 0x4
-+ B150 = 0x5
-+ B1800 = 0xa
-+ B19200 = 0xe
-+ B200 = 0x6
-+ B2400 = 0xb
-+ B300 = 0x7
-+ B38400 = 0xf
-+ B4800 = 0xc
-+ B50 = 0x1
-+ B600 = 0x8
-+ B75 = 0x2
-+ B9600 = 0xd
-+ BRKINT = 0x2
-+ BS0 = 0x0
-+ BS1 = 0x1000
-+ BSDLY = 0x1000
-+ CAP_AACCT = 0x6
-+ CAP_ARM_APPLICATION = 0x5
-+ CAP_BYPASS_RAC_VMM = 0x3
-+ CAP_CLEAR = 0x0
-+ CAP_CREDENTIALS = 0x7
-+ CAP_EFFECTIVE = 0x1
-+ CAP_EWLM_AGENT = 0x4
-+ CAP_INHERITABLE = 0x2
-+ CAP_MAXIMUM = 0x7
-+ CAP_NUMA_ATTACH = 0x2
-+ CAP_PERMITTED = 0x3
-+ CAP_PROPAGATE = 0x1
-+ CAP_PROPOGATE = 0x1
-+ CAP_SET = 0x1
-+ CBAUD = 0xf
-+ CFLUSH = 0xf
-+ CIBAUD = 0xf0000
-+ CLOCAL = 0x800
-+ CLOCK_MONOTONIC = 0xa
-+ CLOCK_PROCESS_CPUTIME_ID = 0xb
-+ CLOCK_REALTIME = 0x9
-+ CLOCK_THREAD_CPUTIME_ID = 0xc
-+ CR0 = 0x0
-+ CR1 = 0x100
-+ CR2 = 0x200
-+ CR3 = 0x300
-+ CRDLY = 0x300
-+ CREAD = 0x80
-+ CS5 = 0x0
-+ CS6 = 0x10
-+ CS7 = 0x20
-+ CS8 = 0x30
-+ CSIOCGIFCONF = -0x3ff796dc
-+ CSIZE = 0x30
-+ CSMAP_DIR = "/usr/lib/nls/csmap/"
-+ CSTART = '\021'
-+ CSTOP = '\023'
-+ CSTOPB = 0x40
-+ CSUSP = 0x1a
-+ ECHO = 0x8
-+ ECHOCTL = 0x20000
-+ ECHOE = 0x10
-+ ECHOK = 0x20
-+ ECHOKE = 0x80000
-+ ECHONL = 0x40
-+ ECHOPRT = 0x40000
-+ ECH_ICMPID = 0x2
-+ ETHERNET_CSMACD = 0x6
-+ EVENP = 0x80
-+ EXCONTINUE = 0x0
-+ EXDLOK = 0x3
-+ EXIO = 0x2
-+ EXPGIO = 0x0
-+ EXRESUME = 0x2
-+ EXRETURN = 0x1
-+ EXSIG = 0x4
-+ EXTA = 0xe
-+ EXTB = 0xf
-+ EXTRAP = 0x1
-+ EYEC_RTENTRYA = 0x257274656e747241
-+ EYEC_RTENTRYF = 0x257274656e747246
-+ E_ACC = 0x0
-+ FD_CLOEXEC = 0x1
-+ FD_SETSIZE = 0xfffe
-+ FF0 = 0x0
-+ FF1 = 0x2000
-+ FFDLY = 0x2000
-+ FLUSHBAND = 0x40
-+ FLUSHLOW = 0x8
-+ FLUSHO = 0x100000
-+ FLUSHR = 0x1
-+ FLUSHRW = 0x3
-+ FLUSHW = 0x2
-+ F_CLOSEM = 0xa
-+ F_DUP2FD = 0xe
-+ F_DUPFD = 0x0
-+ F_GETFD = 0x1
-+ F_GETFL = 0x3
-+ F_GETLK = 0x5
-+ F_GETLK64 = 0xb
-+ F_GETOWN = 0x8
-+ F_LOCK = 0x1
-+ F_OK = 0x0
-+ F_RDLCK = 0x1
-+ F_SETFD = 0x2
-+ F_SETFL = 0x4
-+ F_SETLK = 0x6
-+ F_SETLK64 = 0xc
-+ F_SETLKW = 0x7
-+ F_SETLKW64 = 0xd
-+ F_SETOWN = 0x9
-+ F_TEST = 0x3
-+ F_TLOCK = 0x2
-+ F_TSTLK = 0xf
-+ F_ULOCK = 0x0
-+ F_UNLCK = 0x3
-+ F_WRLCK = 0x2
-+ HUPCL = 0x400
-+ IBSHIFT = 0x10
-+ ICANON = 0x2
-+ ICMP6_FILTER = 0x26
-+ ICMP6_SEC_SEND_DEL = 0x46
-+ ICMP6_SEC_SEND_GET = 0x47
-+ ICMP6_SEC_SEND_SET = 0x44
-+ ICMP6_SEC_SEND_SET_CGA_ADDR = 0x45
-+ ICRNL = 0x100
-+ IEXTEN = 0x200000
-+ IFA_FIRSTALIAS = 0x2000
-+ IFA_ROUTE = 0x1
-+ IFF_64BIT = 0x4000000
-+ IFF_ALLCAST = 0x20000
-+ IFF_ALLMULTI = 0x200
-+ IFF_BPF = 0x8000000
-+ IFF_BRIDGE = 0x40000
-+ IFF_BROADCAST = 0x2
-+ IFF_CANTCHANGE = 0x80c52
-+ IFF_CHECKSUM_OFFLOAD = 0x10000000
-+ IFF_D1 = 0x8000
-+ IFF_D2 = 0x4000
-+ IFF_D3 = 0x2000
-+ IFF_D4 = 0x1000
-+ IFF_DEBUG = 0x4
-+ IFF_DEVHEALTH = 0x4000
-+ IFF_DO_HW_LOOPBACK = 0x10000
-+ IFF_GROUP_ROUTING = 0x2000000
-+ IFF_IFBUFMGT = 0x800000
-+ IFF_LINK0 = 0x100000
-+ IFF_LINK1 = 0x200000
-+ IFF_LINK2 = 0x400000
-+ IFF_LOOPBACK = 0x8
-+ IFF_MULTICAST = 0x80000
-+ IFF_NOARP = 0x80
-+ IFF_NOECHO = 0x800
-+ IFF_NOTRAILERS = 0x20
-+ IFF_OACTIVE = 0x400
-+ IFF_POINTOPOINT = 0x10
-+ IFF_PROMISC = 0x100
-+ IFF_PSEG = 0x40000000
-+ IFF_RUNNING = 0x40
-+ IFF_SIMPLEX = 0x800
-+ IFF_SNAP = 0x8000
-+ IFF_TCP_DISABLE_CKSUM = 0x20000000
-+ IFF_TCP_NOCKSUM = 0x1000000
-+ IFF_UP = 0x1
-+ IFF_VIPA = 0x80000000
-+ IFNAMSIZ = 0x10
-+ IFO_FLUSH = 0x1
-+ IFT_1822 = 0x2
-+ IFT_AAL5 = 0x31
-+ IFT_ARCNET = 0x23
-+ IFT_ARCNETPLUS = 0x24
-+ IFT_ATM = 0x25
-+ IFT_CEPT = 0x13
-+ IFT_CLUSTER = 0x3e
-+ IFT_DS3 = 0x1e
-+ IFT_EON = 0x19
-+ IFT_ETHER = 0x6
-+ IFT_FCS = 0x3a
-+ IFT_FDDI = 0xf
-+ IFT_FRELAY = 0x20
-+ IFT_FRELAYDCE = 0x2c
-+ IFT_GIFTUNNEL = 0x3c
-+ IFT_HDH1822 = 0x3
-+ IFT_HF = 0x3d
-+ IFT_HIPPI = 0x2f
-+ IFT_HSSI = 0x2e
-+ IFT_HY = 0xe
-+ IFT_IB = 0xc7
-+ IFT_ISDNBASIC = 0x14
-+ IFT_ISDNPRIMARY = 0x15
-+ IFT_ISO88022LLC = 0x29
-+ IFT_ISO88023 = 0x7
-+ IFT_ISO88024 = 0x8
-+ IFT_ISO88025 = 0x9
-+ IFT_ISO88026 = 0xa
-+ IFT_LAPB = 0x10
-+ IFT_LOCALTALK = 0x2a
-+ IFT_LOOP = 0x18
-+ IFT_MIOX25 = 0x26
-+ IFT_MODEM = 0x30
-+ IFT_NSIP = 0x1b
-+ IFT_OTHER = 0x1
-+ IFT_P10 = 0xc
-+ IFT_P80 = 0xd
-+ IFT_PARA = 0x22
-+ IFT_PPP = 0x17
-+ IFT_PROPMUX = 0x36
-+ IFT_PROPVIRTUAL = 0x35
-+ IFT_PTPSERIAL = 0x16
-+ IFT_RS232 = 0x21
-+ IFT_SDLC = 0x11
-+ IFT_SIP = 0x1f
-+ IFT_SLIP = 0x1c
-+ IFT_SMDSDXI = 0x2b
-+ IFT_SMDSICIP = 0x34
-+ IFT_SN = 0x38
-+ IFT_SONET = 0x27
-+ IFT_SONETPATH = 0x32
-+ IFT_SONETVT = 0x33
-+ IFT_SP = 0x39
-+ IFT_STARLAN = 0xb
-+ IFT_T1 = 0x12
-+ IFT_TUNNEL = 0x3b
-+ IFT_ULTRA = 0x1d
-+ IFT_V35 = 0x2d
-+ IFT_VIPA = 0x37
-+ IFT_X25 = 0x5
-+ IFT_X25DDN = 0x4
-+ IFT_X25PLE = 0x28
-+ IFT_XETHER = 0x1a
-+ IGNBRK = 0x1
-+ IGNCR = 0x80
-+ IGNPAR = 0x4
-+ IMAXBEL = 0x10000
-+ INLCR = 0x40
-+ INPCK = 0x10
-+ IN_CLASSA_HOST = 0xffffff
-+ IN_CLASSA_MAX = 0x80
-+ IN_CLASSA_NET = 0xff000000
-+ IN_CLASSA_NSHIFT = 0x18
-+ IN_CLASSB_HOST = 0xffff
-+ IN_CLASSB_MAX = 0x10000
-+ IN_CLASSB_NET = 0xffff0000
-+ IN_CLASSB_NSHIFT = 0x10
-+ IN_CLASSC_HOST = 0xff
-+ IN_CLASSC_NET = 0xffffff00
-+ IN_CLASSC_NSHIFT = 0x8
-+ IN_CLASSD_HOST = 0xfffffff
-+ IN_CLASSD_NET = 0xf0000000
-+ IN_CLASSD_NSHIFT = 0x1c
-+ IN_LOOPBACKNET = 0x7f
-+ IN_USE = 0x1
-+ IPPROTO_AH = 0x33
-+ IPPROTO_BIP = 0x53
-+ IPPROTO_DSTOPTS = 0x3c
-+ IPPROTO_EGP = 0x8
-+ IPPROTO_EON = 0x50
-+ IPPROTO_ESP = 0x32
-+ IPPROTO_FRAGMENT = 0x2c
-+ IPPROTO_GGP = 0x3
-+ IPPROTO_GIF = 0x8c
-+ IPPROTO_GRE = 0x2f
-+ IPPROTO_HOPOPTS = 0x0
-+ IPPROTO_ICMP = 0x1
-+ IPPROTO_ICMPV6 = 0x3a
-+ IPPROTO_IDP = 0x16
-+ IPPROTO_IGMP = 0x2
-+ IPPROTO_IP = 0x0
-+ IPPROTO_IPIP = 0x4
-+ IPPROTO_IPV6 = 0x29
-+ IPPROTO_LOCAL = 0x3f
-+ IPPROTO_MAX = 0x100
-+ IPPROTO_MH = 0x87
-+ IPPROTO_NONE = 0x3b
-+ IPPROTO_PUP = 0xc
-+ IPPROTO_QOS = 0x2d
-+ IPPROTO_RAW = 0xff
-+ IPPROTO_ROUTING = 0x2b
-+ IPPROTO_RSVP = 0x2e
-+ IPPROTO_SCTP = 0x84
-+ IPPROTO_TCP = 0x6
-+ IPPROTO_TP = 0x1d
-+ IPPROTO_UDP = 0x11
-+ IPV6_ADDRFORM = 0x16
-+ IPV6_ADDR_PREFERENCES = 0x4a
-+ IPV6_ADD_MEMBERSHIP = 0xc
-+ IPV6_AIXRAWSOCKET = 0x39
-+ IPV6_CHECKSUM = 0x27
-+ IPV6_DONTFRAG = 0x2d
-+ IPV6_DROP_MEMBERSHIP = 0xd
-+ IPV6_DSTOPTS = 0x36
-+ IPV6_FLOWINFO_FLOWLABEL = 0xffffff
-+ IPV6_FLOWINFO_PRIFLOW = 0xfffffff
-+ IPV6_FLOWINFO_PRIORITY = 0xf000000
-+ IPV6_FLOWINFO_SRFLAG = 0x10000000
-+ IPV6_FLOWINFO_VERSION = 0xf0000000
-+ IPV6_HOPLIMIT = 0x28
-+ IPV6_HOPOPTS = 0x34
-+ IPV6_JOIN_GROUP = 0xc
-+ IPV6_LEAVE_GROUP = 0xd
-+ IPV6_MIPDSTOPTS = 0x36
-+ IPV6_MULTICAST_HOPS = 0xa
-+ IPV6_MULTICAST_IF = 0x9
-+ IPV6_MULTICAST_LOOP = 0xb
-+ IPV6_NEXTHOP = 0x30
-+ IPV6_NOPROBE = 0x1c
-+ IPV6_PATHMTU = 0x2e
-+ IPV6_PKTINFO = 0x21
-+ IPV6_PKTOPTIONS = 0x24
-+ IPV6_PRIORITY_10 = 0xa000000
-+ IPV6_PRIORITY_11 = 0xb000000
-+ IPV6_PRIORITY_12 = 0xc000000
-+ IPV6_PRIORITY_13 = 0xd000000
-+ IPV6_PRIORITY_14 = 0xe000000
-+ IPV6_PRIORITY_15 = 0xf000000
-+ IPV6_PRIORITY_8 = 0x8000000
-+ IPV6_PRIORITY_9 = 0x9000000
-+ IPV6_PRIORITY_BULK = 0x4000000
-+ IPV6_PRIORITY_CONTROL = 0x7000000
-+ IPV6_PRIORITY_FILLER = 0x1000000
-+ IPV6_PRIORITY_INTERACTIVE = 0x6000000
-+ IPV6_PRIORITY_RESERVED1 = 0x3000000
-+ IPV6_PRIORITY_RESERVED2 = 0x5000000
-+ IPV6_PRIORITY_UNATTENDED = 0x2000000
-+ IPV6_PRIORITY_UNCHARACTERIZED = 0x0
-+ IPV6_RECVDSTOPTS = 0x38
-+ IPV6_RECVHOPLIMIT = 0x29
-+ IPV6_RECVHOPOPTS = 0x35
-+ IPV6_RECVHOPS = 0x22
-+ IPV6_RECVIF = 0x1e
-+ IPV6_RECVPATHMTU = 0x2f
-+ IPV6_RECVPKTINFO = 0x23
-+ IPV6_RECVRTHDR = 0x33
-+ IPV6_RECVSRCRT = 0x1d
-+ IPV6_RECVTCLASS = 0x2a
-+ IPV6_RTHDR = 0x32
-+ IPV6_RTHDRDSTOPTS = 0x37
-+ IPV6_RTHDR_TYPE_0 = 0x0
-+ IPV6_RTHDR_TYPE_2 = 0x2
-+ IPV6_SENDIF = 0x1f
-+ IPV6_SRFLAG_LOOSE = 0x0
-+ IPV6_SRFLAG_STRICT = 0x10000000
-+ IPV6_TCLASS = 0x2b
-+ IPV6_TOKEN_LENGTH = 0x40
-+ IPV6_UNICAST_HOPS = 0x4
-+ IPV6_USE_MIN_MTU = 0x2c
-+ IPV6_V6ONLY = 0x25
-+ IPV6_VERSION = 0x60000000
-+ IP_ADDRFORM = 0x16
-+ IP_ADD_MEMBERSHIP = 0xc
-+ IP_ADD_SOURCE_MEMBERSHIP = 0x3c
-+ IP_BLOCK_SOURCE = 0x3a
-+ IP_BROADCAST_IF = 0x10
-+ IP_CACHE_LINE_SIZE = 0x80
-+ IP_DEFAULT_MULTICAST_LOOP = 0x1
-+ IP_DEFAULT_MULTICAST_TTL = 0x1
-+ IP_DF = 0x4000
-+ IP_DHCPMODE = 0x11
-+ IP_DONTFRAG = 0x19
-+ IP_DROP_MEMBERSHIP = 0xd
-+ IP_DROP_SOURCE_MEMBERSHIP = 0x3d
-+ IP_FINDPMTU = 0x1a
-+ IP_HDRINCL = 0x2
-+ IP_INC_MEMBERSHIPS = 0x14
-+ IP_INIT_MEMBERSHIP = 0x14
-+ IP_MAXPACKET = 0xffff
-+ IP_MF = 0x2000
-+ IP_MSS = 0x240
-+ IP_MULTICAST_HOPS = 0xa
-+ IP_MULTICAST_IF = 0x9
-+ IP_MULTICAST_LOOP = 0xb
-+ IP_MULTICAST_TTL = 0xa
-+ IP_OPT = 0x1b
-+ IP_OPTIONS = 0x1
-+ IP_PMTUAGE = 0x1b
-+ IP_RECVDSTADDR = 0x7
-+ IP_RECVIF = 0x14
-+ IP_RECVIFINFO = 0xf
-+ IP_RECVINTERFACE = 0x20
-+ IP_RECVMACHDR = 0xe
-+ IP_RECVOPTS = 0x5
-+ IP_RECVRETOPTS = 0x6
-+ IP_RECVTTL = 0x22
-+ IP_RETOPTS = 0x8
-+ IP_SOURCE_FILTER = 0x48
-+ IP_TOS = 0x3
-+ IP_TTL = 0x4
-+ IP_UNBLOCK_SOURCE = 0x3b
-+ IP_UNICAST_HOPS = 0x4
-+ ISIG = 0x1
-+ ISTRIP = 0x20
-+ IUCLC = 0x800
-+ IXANY = 0x1000
-+ IXOFF = 0x400
-+ IXON = 0x200
-+ I_FLUSH = 0x20005305
-+ LNOFLSH = 0x8000
-+ LOCK_EX = 0x2
-+ LOCK_NB = 0x4
-+ LOCK_SH = 0x1
-+ LOCK_UN = 0x8
-+ MADV_DONTNEED = 0x4
-+ MADV_NORMAL = 0x0
-+ MADV_RANDOM = 0x1
-+ MADV_SEQUENTIAL = 0x2
-+ MADV_SPACEAVAIL = 0x5
-+ MADV_WILLNEED = 0x3
-+ MAP_ANON = 0x10
-+ MAP_ANONYMOUS = 0x10
-+ MAP_FILE = 0x0
-+ MAP_FIXED = 0x100
-+ MAP_PRIVATE = 0x2
-+ MAP_SHARED = 0x1
-+ MAP_TYPE = 0xf0
-+ MAP_VARIABLE = 0x0
-+ MCAST_BLOCK_SOURCE = 0x40
-+ MCAST_EXCLUDE = 0x2
-+ MCAST_INCLUDE = 0x1
-+ MCAST_JOIN_GROUP = 0x3e
-+ MCAST_JOIN_SOURCE_GROUP = 0x42
-+ MCAST_LEAVE_GROUP = 0x3f
-+ MCAST_LEAVE_SOURCE_GROUP = 0x43
-+ MCAST_SOURCE_FILTER = 0x49
-+ MCAST_UNBLOCK_SOURCE = 0x41
-+ MCL_CURRENT = 0x100
-+ MCL_FUTURE = 0x200
-+ MSG_ANY = 0x4
-+ MSG_ARGEXT = 0x400
-+ MSG_BAND = 0x2
-+ MSG_COMPAT = 0x8000
-+ MSG_CTRUNC = 0x20
-+ MSG_DONTROUTE = 0x4
-+ MSG_EOR = 0x8
-+ MSG_HIPRI = 0x1
-+ MSG_MAXIOVLEN = 0x10
-+ MSG_MPEG2 = 0x80
-+ MSG_NONBLOCK = 0x4000
-+ MSG_NOSIGNAL = 0x100
-+ MSG_OOB = 0x1
-+ MSG_PEEK = 0x2
-+ MSG_TRUNC = 0x10
-+ MSG_WAITALL = 0x40
-+ MSG_WAITFORONE = 0x200
-+ MS_ASYNC = 0x10
-+ MS_EINTR = 0x80
-+ MS_INVALIDATE = 0x40
-+ MS_PER_SEC = 0x3e8
-+ MS_SYNC = 0x20
-+ NFDBITS = 0x20
-+ NL0 = 0x0
-+ NL1 = 0x4000
-+ NL2 = 0x8000
-+ NL3 = 0xc000
-+ NLDLY = 0x4000
-+ NOFLSH = 0x80
-+ NOFLUSH = 0x80000000
-+ OCRNL = 0x8
-+ OFDEL = 0x80
-+ OFILL = 0x40
-+ OLCUC = 0x2
-+ ONLCR = 0x4
-+ ONLRET = 0x20
-+ ONOCR = 0x10
-+ ONOEOT = 0x80000
-+ OPOST = 0x1
-+ OXTABS = 0x40000
-+ O_ACCMODE = 0x23
-+ O_APPEND = 0x8
-+ O_CIO = 0x80
-+ O_CIOR = 0x800000000
-+ O_CLOEXEC = 0x800000
-+ O_CREAT = 0x100
-+ O_DEFER = 0x2000
-+ O_DELAY = 0x4000
-+ O_DIRECT = 0x8000000
-+ O_DIRECTORY = 0x80000
-+ O_DSYNC = 0x400000
-+ O_EFSOFF = 0x400000000
-+ O_EFSON = 0x200000000
-+ O_EXCL = 0x400
-+ O_EXEC = 0x20
-+ O_LARGEFILE = 0x4000000
-+ O_NDELAY = 0x8000
-+ O_NOCACHE = 0x100000
-+ O_NOCTTY = 0x800
-+ O_NOFOLLOW = 0x1000000
-+ O_NONBLOCK = 0x4
-+ O_NONE = 0x3
-+ O_NSHARE = 0x10000
-+ O_RAW = 0x100000000
-+ O_RDONLY = 0x0
-+ O_RDWR = 0x2
-+ O_RSHARE = 0x1000
-+ O_RSYNC = 0x200000
-+ O_SEARCH = 0x20
-+ O_SNAPSHOT = 0x40
-+ O_SYNC = 0x10
-+ O_TRUNC = 0x200
-+ O_TTY_INIT = 0x0
-+ O_WRONLY = 0x1
-+ PARENB = 0x100
-+ PAREXT = 0x100000
-+ PARMRK = 0x8
-+ PARODD = 0x200
-+ PENDIN = 0x20000000
-+ PRIO_PGRP = 0x1
-+ PRIO_PROCESS = 0x0
-+ PRIO_USER = 0x2
-+ PROT_EXEC = 0x4
-+ PROT_NONE = 0x0
-+ PROT_READ = 0x1
-+ PROT_WRITE = 0x2
-+ PR_64BIT = 0x20
-+ PR_ADDR = 0x2
-+ PR_ARGEXT = 0x400
-+ PR_ATOMIC = 0x1
-+ PR_CONNREQUIRED = 0x4
-+ PR_FASTHZ = 0x5
-+ PR_INP = 0x40
-+ PR_INTRLEVEL = 0x8000
-+ PR_MLS = 0x100
-+ PR_MLS_1_LABEL = 0x200
-+ PR_NOEOR = 0x4000
-+ PR_RIGHTS = 0x10
-+ PR_SLOWHZ = 0x2
-+ PR_WANTRCVD = 0x8
-+ RLIMIT_AS = 0x6
-+ RLIMIT_CORE = 0x4
-+ RLIMIT_CPU = 0x0
-+ RLIMIT_DATA = 0x2
-+ RLIMIT_FSIZE = 0x1
-+ RLIMIT_NOFILE = 0x7
-+ RLIMIT_NPROC = 0x9
-+ RLIMIT_RSS = 0x5
-+ RLIMIT_STACK = 0x3
-+ RLIM_INFINITY = 0x7fffffff
-+ RTAX_AUTHOR = 0x6
-+ RTAX_BRD = 0x7
-+ RTAX_DST = 0x0
-+ RTAX_GATEWAY = 0x1
-+ RTAX_GENMASK = 0x3
-+ RTAX_IFA = 0x5
-+ RTAX_IFP = 0x4
-+ RTAX_MAX = 0x8
-+ RTAX_NETMASK = 0x2
-+ RTA_AUTHOR = 0x40
-+ RTA_BRD = 0x80
-+ RTA_DOWNSTREAM = 0x100
-+ RTA_DST = 0x1
-+ RTA_GATEWAY = 0x2
-+ RTA_GENMASK = 0x8
-+ RTA_IFA = 0x20
-+ RTA_IFP = 0x10
-+ RTA_NETMASK = 0x4
-+ RTC_IA64 = 0x3
-+ RTC_POWER = 0x1
-+ RTC_POWER_PC = 0x2
-+ RTF_ACTIVE_DGD = 0x1000000
-+ RTF_BCE = 0x80000
-+ RTF_BLACKHOLE = 0x1000
-+ RTF_BROADCAST = 0x400000
-+ RTF_BUL = 0x2000
-+ RTF_CLONE = 0x10000
-+ RTF_CLONED = 0x20000
-+ RTF_CLONING = 0x100
-+ RTF_DONE = 0x40
-+ RTF_DYNAMIC = 0x10
-+ RTF_FREE_IN_PROG = 0x4000000
-+ RTF_GATEWAY = 0x2
-+ RTF_HOST = 0x4
-+ RTF_LLINFO = 0x400
-+ RTF_LOCAL = 0x200000
-+ RTF_MASK = 0x80
-+ RTF_MODIFIED = 0x20
-+ RTF_MULTICAST = 0x800000
-+ RTF_PERMANENT6 = 0x8000000
-+ RTF_PINNED = 0x100000
-+ RTF_PROTO1 = 0x8000
-+ RTF_PROTO2 = 0x4000
-+ RTF_PROTO3 = 0x40000
-+ RTF_REJECT = 0x8
-+ RTF_SMALLMTU = 0x40000
-+ RTF_STATIC = 0x800
-+ RTF_STOPSRCH = 0x2000000
-+ RTF_UNREACHABLE = 0x10000000
-+ RTF_UP = 0x1
-+ RTF_XRESOLVE = 0x200
-+ RTM_ADD = 0x1
-+ RTM_CHANGE = 0x3
-+ RTM_DELADDR = 0xd
-+ RTM_DELETE = 0x2
-+ RTM_EXPIRE = 0xf
-+ RTM_GET = 0x4
-+ RTM_GETNEXT = 0x11
-+ RTM_IFINFO = 0xe
-+ RTM_LOCK = 0x8
-+ RTM_LOSING = 0x5
-+ RTM_MISS = 0x7
-+ RTM_NEWADDR = 0xc
-+ RTM_OLDADD = 0x9
-+ RTM_OLDDEL = 0xa
-+ RTM_REDIRECT = 0x6
-+ RTM_RESOLVE = 0xb
-+ RTM_RTLOST = 0x10
-+ RTM_RTTUNIT = 0xf4240
-+ RTM_SAMEADDR = 0x12
-+ RTM_SET = 0x13
-+ RTM_VERSION = 0x2
-+ RTM_VERSION_GR = 0x4
-+ RTM_VERSION_GR_COMPAT = 0x3
-+ RTM_VERSION_POLICY = 0x5
-+ RTM_VERSION_POLICY_EXT = 0x6
-+ RTM_VERSION_POLICY_PRFN = 0x7
-+ RTV_EXPIRE = 0x4
-+ RTV_HOPCOUNT = 0x2
-+ RTV_MTU = 0x1
-+ RTV_RPIPE = 0x8
-+ RTV_RTT = 0x40
-+ RTV_RTTVAR = 0x80
-+ RTV_SPIPE = 0x10
-+ RTV_SSTHRESH = 0x20
-+ RUSAGE_CHILDREN = -0x1
-+ RUSAGE_SELF = 0x0
-+ RUSAGE_THREAD = 0x1
-+ SCM_RIGHTS = 0x1
-+ SHUT_RD = 0x0
-+ SHUT_RDWR = 0x2
-+ SHUT_WR = 0x1
-+ SIGMAX64 = 0xff
-+ SIGQUEUE_MAX = 0x20
-+ SIOCADDIFVIPA = 0x20006942
-+ SIOCADDMTU = -0x7ffb9690
-+ SIOCADDMULTI = -0x7fdf96cf
-+ SIOCADDNETID = -0x7fd796a9
-+ SIOCADDRT = -0x7fcf8df6
-+ SIOCAIFADDR = -0x7fbf96e6
-+ SIOCATMARK = 0x40047307
-+ SIOCDARP = -0x7fb396e0
-+ SIOCDELIFVIPA = 0x20006943
-+ SIOCDELMTU = -0x7ffb968f
-+ SIOCDELMULTI = -0x7fdf96ce
-+ SIOCDELPMTU = -0x7fd78ff6
-+ SIOCDELRT = -0x7fcf8df5
-+ SIOCDIFADDR = -0x7fd796e7
-+ SIOCDNETOPT = -0x3ffe9680
-+ SIOCDX25XLATE = -0x7fd7969b
-+ SIOCFIFADDR = -0x7fdf966d
-+ SIOCGARP = -0x3fb396da
-+ SIOCGETMTUS = 0x2000696f
-+ SIOCGETSGCNT = -0x3feb8acc
-+ SIOCGETVIFCNT = -0x3feb8acd
-+ SIOCGHIWAT = 0x40047301
-+ SIOCGIFADDR = -0x3fd796df
-+ SIOCGIFADDRS = 0x2000698c
-+ SIOCGIFBAUDRATE = -0x3fdf9669
-+ SIOCGIFBRDADDR = -0x3fd796dd
-+ SIOCGIFCONF = -0x3ff796bb
-+ SIOCGIFCONFGLOB = -0x3ff79670
-+ SIOCGIFDSTADDR = -0x3fd796de
-+ SIOCGIFFLAGS = -0x3fd796ef
-+ SIOCGIFGIDLIST = 0x20006968
-+ SIOCGIFHWADDR = -0x3fab966b
-+ SIOCGIFMETRIC = -0x3fd796e9
-+ SIOCGIFMTU = -0x3fd796aa
-+ SIOCGIFNETMASK = -0x3fd796db
-+ SIOCGIFOPTIONS = -0x3fd796d6
-+ SIOCGISNO = -0x3fd79695
-+ SIOCGLOADF = -0x3ffb967e
-+ SIOCGLOWAT = 0x40047303
-+ SIOCGNETOPT = -0x3ffe96a5
-+ SIOCGNETOPT1 = -0x3fdf967f
-+ SIOCGNMTUS = 0x2000696e
-+ SIOCGPGRP = 0x40047309
-+ SIOCGSIZIFCONF = 0x4004696a
-+ SIOCGSRCFILTER = -0x3fe796cb
-+ SIOCGTUNEPHASE = -0x3ffb9676
-+ SIOCGX25XLATE = -0x3fd7969c
-+ SIOCIFATTACH = -0x7fdf9699
-+ SIOCIFDETACH = -0x7fdf969a
-+ SIOCIFGETPKEY = -0x7fdf969b
-+ SIOCIF_ATM_DARP = -0x7fdf9683
-+ SIOCIF_ATM_DUMPARP = -0x7fdf9685
-+ SIOCIF_ATM_GARP = -0x7fdf9682
-+ SIOCIF_ATM_IDLE = -0x7fdf9686
-+ SIOCIF_ATM_SARP = -0x7fdf9681
-+ SIOCIF_ATM_SNMPARP = -0x7fdf9687
-+ SIOCIF_ATM_SVC = -0x7fdf9684
-+ SIOCIF_ATM_UBR = -0x7fdf9688
-+ SIOCIF_DEVHEALTH = -0x7ffb966c
-+ SIOCIF_IB_ARP_INCOMP = -0x7fdf9677
-+ SIOCIF_IB_ARP_TIMER = -0x7fdf9678
-+ SIOCIF_IB_CLEAR_PINFO = -0x3fdf966f
-+ SIOCIF_IB_DEL_ARP = -0x7fdf967f
-+ SIOCIF_IB_DEL_PINFO = -0x3fdf9670
-+ SIOCIF_IB_DUMP_ARP = -0x7fdf9680
-+ SIOCIF_IB_GET_ARP = -0x7fdf967e
-+ SIOCIF_IB_GET_INFO = -0x3f879675
-+ SIOCIF_IB_GET_STATS = -0x3f879672
-+ SIOCIF_IB_NOTIFY_ADDR_REM = -0x3f87966a
-+ SIOCIF_IB_RESET_STATS = -0x3f879671
-+ SIOCIF_IB_RESIZE_CQ = -0x7fdf9679
-+ SIOCIF_IB_SET_ARP = -0x7fdf967d
-+ SIOCIF_IB_SET_PKEY = -0x7fdf967c
-+ SIOCIF_IB_SET_PORT = -0x7fdf967b
-+ SIOCIF_IB_SET_QKEY = -0x7fdf9676
-+ SIOCIF_IB_SET_QSIZE = -0x7fdf967a
-+ SIOCLISTIFVIPA = 0x20006944
-+ SIOCSARP = -0x7fb396e2
-+ SIOCSHIWAT = 0x80047300
-+ SIOCSIFADDR = -0x7fd796f4
-+ SIOCSIFADDRORI = -0x7fdb9673
-+ SIOCSIFBRDADDR = -0x7fd796ed
-+ SIOCSIFDSTADDR = -0x7fd796f2
-+ SIOCSIFFLAGS = -0x7fd796f0
-+ SIOCSIFGIDLIST = 0x20006969
-+ SIOCSIFMETRIC = -0x7fd796e8
-+ SIOCSIFMTU = -0x7fd796a8
-+ SIOCSIFNETDUMP = -0x7fd796e4
-+ SIOCSIFNETMASK = -0x7fd796ea
-+ SIOCSIFOPTIONS = -0x7fd796d7
-+ SIOCSIFSUBCHAN = -0x7fd796e5
-+ SIOCSISNO = -0x7fd79694
-+ SIOCSLOADF = -0x3ffb967d
-+ SIOCSLOWAT = 0x80047302
-+ SIOCSNETOPT = -0x7ffe96a6
-+ SIOCSPGRP = 0x80047308
-+ SIOCSX25XLATE = -0x7fd7969d
-+ SOCK_CONN_DGRAM = 0x6
-+ SOCK_DGRAM = 0x2
-+ SOCK_RAW = 0x3
-+ SOCK_RDM = 0x4
-+ SOCK_SEQPACKET = 0x5
-+ SOCK_STREAM = 0x1
-+ SOL_SOCKET = 0xffff
-+ SOMAXCONN = 0x400
-+ SO_ACCEPTCONN = 0x2
-+ SO_AUDIT = 0x8000
-+ SO_BROADCAST = 0x20
-+ SO_CKSUMRECV = 0x800
-+ SO_DEBUG = 0x1
-+ SO_DONTROUTE = 0x10
-+ SO_ERROR = 0x1007
-+ SO_KEEPALIVE = 0x8
-+ SO_KERNACCEPT = 0x2000
-+ SO_LINGER = 0x80
-+ SO_NOMULTIPATH = 0x4000
-+ SO_NOREUSEADDR = 0x1000
-+ SO_OOBINLINE = 0x100
-+ SO_PEERID = 0x1009
-+ SO_RCVBUF = 0x1002
-+ SO_RCVLOWAT = 0x1004
-+ SO_RCVTIMEO = 0x1006
-+ SO_REUSEADDR = 0x4
-+ SO_REUSEPORT = 0x200
-+ SO_SNDBUF = 0x1001
-+ SO_SNDLOWAT = 0x1003
-+ SO_SNDTIMEO = 0x1005
-+ SO_TIMESTAMPNS = 0x100a
-+ SO_TYPE = 0x1008
-+ SO_USELOOPBACK = 0x40
-+ SO_USE_IFBUFS = 0x400
-+ S_BANDURG = 0x400
-+ S_EMODFMT = 0x3c000000
-+ S_ENFMT = 0x400
-+ S_ERROR = 0x100
-+ S_HANGUP = 0x200
-+ S_HIPRI = 0x2
-+ S_ICRYPTO = 0x80000
-+ S_IEXEC = 0x40
-+ S_IFBLK = 0x6000
-+ S_IFCHR = 0x2000
-+ S_IFDIR = 0x4000
-+ S_IFIFO = 0x1000
-+ S_IFJOURNAL = 0x10000
-+ S_IFLNK = 0xa000
-+ S_IFMPX = 0x2200
-+ S_IFMT = 0xf000
-+ S_IFPDIR = 0x4000000
-+ S_IFPSDIR = 0x8000000
-+ S_IFPSSDIR = 0xc000000
-+ S_IFREG = 0x8000
-+ S_IFSOCK = 0xc000
-+ S_IFSYSEA = 0x30000000
-+ S_INPUT = 0x1
-+ S_IREAD = 0x100
-+ S_IRGRP = 0x20
-+ S_IROTH = 0x4
-+ S_IRUSR = 0x100
-+ S_IRWXG = 0x38
-+ S_IRWXO = 0x7
-+ S_IRWXU = 0x1c0
-+ S_ISGID = 0x400
-+ S_ISUID = 0x800
-+ S_ISVTX = 0x200
-+ S_ITCB = 0x1000000
-+ S_ITP = 0x800000
-+ S_IWGRP = 0x10
-+ S_IWOTH = 0x2
-+ S_IWRITE = 0x80
-+ S_IWUSR = 0x80
-+ S_IXACL = 0x2000000
-+ S_IXATTR = 0x40000
-+ S_IXGRP = 0x8
-+ S_IXINTERFACE = 0x100000
-+ S_IXMOD = 0x40000000
-+ S_IXOTH = 0x1
-+ S_IXUSR = 0x40
-+ S_MSG = 0x8
-+ S_OUTPUT = 0x4
-+ S_RDBAND = 0x20
-+ S_RDNORM = 0x10
-+ S_RESERVED1 = 0x20000
-+ S_RESERVED2 = 0x200000
-+ S_RESERVED3 = 0x400000
-+ S_RESERVED4 = 0x80000000
-+ S_RESFMT1 = 0x10000000
-+ S_RESFMT10 = 0x34000000
-+ S_RESFMT11 = 0x38000000
-+ S_RESFMT12 = 0x3c000000
-+ S_RESFMT2 = 0x14000000
-+ S_RESFMT3 = 0x18000000
-+ S_RESFMT4 = 0x1c000000
-+ S_RESFMT5 = 0x20000000
-+ S_RESFMT6 = 0x24000000
-+ S_RESFMT7 = 0x28000000
-+ S_RESFMT8 = 0x2c000000
-+ S_WRBAND = 0x80
-+ S_WRNORM = 0x40
-+ TAB0 = 0x0
-+ TAB1 = 0x400
-+ TAB2 = 0x800
-+ TAB3 = 0xc00
-+ TABDLY = 0xc00
-+ TCFLSH = 0x540c
-+ TCGETA = 0x5405
-+ TCGETS = 0x5401
-+ TCIFLUSH = 0x0
-+ TCIOFF = 0x2
-+ TCIOFLUSH = 0x2
-+ TCION = 0x3
-+ TCOFLUSH = 0x1
-+ TCOOFF = 0x0
-+ TCOON = 0x1
-+ TCP_24DAYS_WORTH_OF_SLOWTICKS = 0x3f4800
-+ TCP_ACLADD = 0x23
-+ TCP_ACLBIND = 0x26
-+ TCP_ACLCLEAR = 0x22
-+ TCP_ACLDEL = 0x24
-+ TCP_ACLDENY = 0x8
-+ TCP_ACLFLUSH = 0x21
-+ TCP_ACLGID = 0x1
-+ TCP_ACLLS = 0x25
-+ TCP_ACLSUBNET = 0x4
-+ TCP_ACLUID = 0x2
-+ TCP_CWND_DF = 0x16
-+ TCP_CWND_IF = 0x15
-+ TCP_DELAY_ACK_FIN = 0x2
-+ TCP_DELAY_ACK_SYN = 0x1
-+ TCP_FASTNAME = 0x101080a
-+ TCP_KEEPCNT = 0x13
-+ TCP_KEEPIDLE = 0x11
-+ TCP_KEEPINTVL = 0x12
-+ TCP_LSPRIV = 0x29
-+ TCP_LUID = 0x20
-+ TCP_MAXBURST = 0x8
-+ TCP_MAXDF = 0x64
-+ TCP_MAXIF = 0x64
-+ TCP_MAXSEG = 0x2
-+ TCP_MAXWIN = 0xffff
-+ TCP_MAXWINDOWSCALE = 0xe
-+ TCP_MAX_SACK = 0x4
-+ TCP_MSS = 0x5b4
-+ TCP_NODELAY = 0x1
-+ TCP_NODELAYACK = 0x14
-+ TCP_NOREDUCE_CWND_EXIT_FRXMT = 0x19
-+ TCP_NOREDUCE_CWND_IN_FRXMT = 0x18
-+ TCP_NOTENTER_SSTART = 0x17
-+ TCP_OPT = 0x19
-+ TCP_RFC1323 = 0x4
-+ TCP_SETPRIV = 0x27
-+ TCP_STDURG = 0x10
-+ TCP_TIMESTAMP_OPTLEN = 0xc
-+ TCP_UNSETPRIV = 0x28
-+ TCSAFLUSH = 0x2
-+ TCSBRK = 0x5409
-+ TCSETA = 0x5406
-+ TCSETAF = 0x5408
-+ TCSETAW = 0x5407
-+ TCSETS = 0x5402
-+ TCSETSF = 0x5404
-+ TCSETSW = 0x5403
-+ TCXONC = 0x540b
-+ TIMER_ABSTIME = 0x3e7
-+ TIMER_MAX = 0x20
-+ TIOC = 0x5400
-+ TIOCCBRK = 0x2000747a
-+ TIOCCDTR = 0x20007478
-+ TIOCCONS = 0x80047462
-+ TIOCEXCL = 0x2000740d
-+ TIOCFLUSH = 0x80047410
-+ TIOCGETC = 0x40067412
-+ TIOCGETD = 0x40047400
-+ TIOCGETP = 0x40067408
-+ TIOCGLTC = 0x40067474
-+ TIOCGPGRP = 0x40047477
-+ TIOCGSID = 0x40047448
-+ TIOCGSIZE = 0x40087468
-+ TIOCGWINSZ = 0x40087468
-+ TIOCHPCL = 0x20007402
-+ TIOCLBIC = 0x8004747e
-+ TIOCLBIS = 0x8004747f
-+ TIOCLGET = 0x4004747c
-+ TIOCLSET = 0x8004747d
-+ TIOCMBIC = 0x8004746b
-+ TIOCMBIS = 0x8004746c
-+ TIOCMGET = 0x4004746a
-+ TIOCMIWAIT = 0x80047464
-+ TIOCMODG = 0x40047403
-+ TIOCMODS = 0x80047404
-+ TIOCMSET = 0x8004746d
-+ TIOCM_CAR = 0x40
-+ TIOCM_CD = 0x40
-+ TIOCM_CTS = 0x20
-+ TIOCM_DSR = 0x100
-+ TIOCM_DTR = 0x2
-+ TIOCM_LE = 0x1
-+ TIOCM_RI = 0x80
-+ TIOCM_RNG = 0x80
-+ TIOCM_RTS = 0x4
-+ TIOCM_SR = 0x10
-+ TIOCM_ST = 0x8
-+ TIOCNOTTY = 0x20007471
-+ TIOCNXCL = 0x2000740e
-+ TIOCOUTQ = 0x40047473
-+ TIOCPKT = 0x80047470
-+ TIOCPKT_DATA = 0x0
-+ TIOCPKT_DOSTOP = 0x20
-+ TIOCPKT_FLUSHREAD = 0x1
-+ TIOCPKT_FLUSHWRITE = 0x2
-+ TIOCPKT_NOSTOP = 0x10
-+ TIOCPKT_START = 0x8
-+ TIOCPKT_STOP = 0x4
-+ TIOCREMOTE = 0x80047469
-+ TIOCSBRK = 0x2000747b
-+ TIOCSDTR = 0x20007479
-+ TIOCSETC = 0x80067411
-+ TIOCSETD = 0x80047401
-+ TIOCSETN = 0x8006740a
-+ TIOCSETP = 0x80067409
-+ TIOCSLTC = 0x80067475
-+ TIOCSPGRP = 0x80047476
-+ TIOCSSIZE = 0x80087467
-+ TIOCSTART = 0x2000746e
-+ TIOCSTI = 0x80017472
-+ TIOCSTOP = 0x2000746f
-+ TIOCSWINSZ = 0x80087467
-+ TIOCUCNTL = 0x80047466
-+ TOSTOP = 0x10000
-+ UTIME_NOW = -0x2
-+ UTIME_OMIT = -0x3
-+ VDISCRD = 0xc
-+ VDSUSP = 0xa
-+ VEOF = 0x4
-+ VEOL = 0x5
-+ VEOL2 = 0x6
-+ VERASE = 0x2
-+ VINTR = 0x0
-+ VKILL = 0x3
-+ VLNEXT = 0xe
-+ VMIN = 0x4
-+ VQUIT = 0x1
-+ VREPRINT = 0xb
-+ VSTART = 0x7
-+ VSTOP = 0x8
-+ VSTRT = 0x7
-+ VSUSP = 0x9
-+ VT0 = 0x0
-+ VT1 = 0x8000
-+ VTDELAY = 0x2000
-+ VTDLY = 0x8000
-+ VTIME = 0x5
-+ VWERSE = 0xd
-+ WPARSTART = 0x1
-+ WPARSTOP = 0x2
-+ WPARTTYNAME = "Global"
-+ XCASE = 0x4
-+ XTABS = 0xc00
-+ _FDATAFLUSH = 0x2000000000
-+)
-+
-+// Errors
-+const (
-+ E2BIG = syscall.Errno(0x7)
-+ EACCES = syscall.Errno(0xd)
-+ EADDRINUSE = syscall.Errno(0x43)
-+ EADDRNOTAVAIL = syscall.Errno(0x44)
-+ EAFNOSUPPORT = syscall.Errno(0x42)
-+ EAGAIN = syscall.Errno(0xb)
-+ EALREADY = syscall.Errno(0x38)
-+ EBADF = syscall.Errno(0x9)
-+ EBADMSG = syscall.Errno(0x78)
-+ EBUSY = syscall.Errno(0x10)
-+ ECANCELED = syscall.Errno(0x75)
-+ ECHILD = syscall.Errno(0xa)
-+ ECHRNG = syscall.Errno(0x25)
-+ ECLONEME = syscall.Errno(0x52)
-+ ECONNABORTED = syscall.Errno(0x48)
-+ ECONNREFUSED = syscall.Errno(0x4f)
-+ ECONNRESET = syscall.Errno(0x49)
-+ ECORRUPT = syscall.Errno(0x59)
-+ EDEADLK = syscall.Errno(0x2d)
-+ EDESTADDREQ = syscall.Errno(0x3a)
-+ EDESTADDRREQ = syscall.Errno(0x3a)
-+ EDIST = syscall.Errno(0x35)
-+ EDOM = syscall.Errno(0x21)
-+ EDQUOT = syscall.Errno(0x58)
-+ EEXIST = syscall.Errno(0x11)
-+ EFAULT = syscall.Errno(0xe)
-+ EFBIG = syscall.Errno(0x1b)
-+ EFORMAT = syscall.Errno(0x30)
-+ EHOSTDOWN = syscall.Errno(0x50)
-+ EHOSTUNREACH = syscall.Errno(0x51)
-+ EIDRM = syscall.Errno(0x24)
-+ EILSEQ = syscall.Errno(0x74)
-+ EINPROGRESS = syscall.Errno(0x37)
-+ EINTR = syscall.Errno(0x4)
-+ EINVAL = syscall.Errno(0x16)
-+ EIO = syscall.Errno(0x5)
-+ EISCONN = syscall.Errno(0x4b)
-+ EISDIR = syscall.Errno(0x15)
-+ EL2HLT = syscall.Errno(0x2c)
-+ EL2NSYNC = syscall.Errno(0x26)
-+ EL3HLT = syscall.Errno(0x27)
-+ EL3RST = syscall.Errno(0x28)
-+ ELNRNG = syscall.Errno(0x29)
-+ ELOOP = syscall.Errno(0x55)
-+ EMEDIA = syscall.Errno(0x6e)
-+ EMFILE = syscall.Errno(0x18)
-+ EMLINK = syscall.Errno(0x1f)
-+ EMSGSIZE = syscall.Errno(0x3b)
-+ EMULTIHOP = syscall.Errno(0x7d)
-+ ENAMETOOLONG = syscall.Errno(0x56)
-+ ENETDOWN = syscall.Errno(0x45)
-+ ENETRESET = syscall.Errno(0x47)
-+ ENETUNREACH = syscall.Errno(0x46)
-+ ENFILE = syscall.Errno(0x17)
-+ ENOATTR = syscall.Errno(0x70)
-+ ENOBUFS = syscall.Errno(0x4a)
-+ ENOCONNECT = syscall.Errno(0x32)
-+ ENOCSI = syscall.Errno(0x2b)
-+ ENODATA = syscall.Errno(0x7a)
-+ ENODEV = syscall.Errno(0x13)
-+ ENOENT = syscall.Errno(0x2)
-+ ENOEXEC = syscall.Errno(0x8)
-+ ENOLCK = syscall.Errno(0x31)
-+ ENOLINK = syscall.Errno(0x7e)
-+ ENOMEM = syscall.Errno(0xc)
-+ ENOMSG = syscall.Errno(0x23)
-+ ENOPROTOOPT = syscall.Errno(0x3d)
-+ ENOSPC = syscall.Errno(0x1c)
-+ ENOSR = syscall.Errno(0x76)
-+ ENOSTR = syscall.Errno(0x7b)
-+ ENOSYS = syscall.Errno(0x6d)
-+ ENOTBLK = syscall.Errno(0xf)
-+ ENOTCONN = syscall.Errno(0x4c)
-+ ENOTDIR = syscall.Errno(0x14)
-+ ENOTEMPTY = syscall.Errno(0x11)
-+ ENOTREADY = syscall.Errno(0x2e)
-+ ENOTRECOVERABLE = syscall.Errno(0x5e)
-+ ENOTRUST = syscall.Errno(0x72)
-+ ENOTSOCK = syscall.Errno(0x39)
-+ ENOTSUP = syscall.Errno(0x7c)
-+ ENOTTY = syscall.Errno(0x19)
-+ ENXIO = syscall.Errno(0x6)
-+ EOPNOTSUPP = syscall.Errno(0x40)
-+ EOVERFLOW = syscall.Errno(0x7f)
-+ EOWNERDEAD = syscall.Errno(0x5f)
-+ EPERM = syscall.Errno(0x1)
-+ EPFNOSUPPORT = syscall.Errno(0x41)
-+ EPIPE = syscall.Errno(0x20)
-+ EPROCLIM = syscall.Errno(0x53)
-+ EPROTO = syscall.Errno(0x79)
-+ EPROTONOSUPPORT = syscall.Errno(0x3e)
-+ EPROTOTYPE = syscall.Errno(0x3c)
-+ ERANGE = syscall.Errno(0x22)
-+ EREMOTE = syscall.Errno(0x5d)
-+ ERESTART = syscall.Errno(0x52)
-+ EROFS = syscall.Errno(0x1e)
-+ ESAD = syscall.Errno(0x71)
-+ ESHUTDOWN = syscall.Errno(0x4d)
-+ ESOCKTNOSUPPORT = syscall.Errno(0x3f)
-+ ESOFT = syscall.Errno(0x6f)
-+ ESPIPE = syscall.Errno(0x1d)
-+ ESRCH = syscall.Errno(0x3)
-+ ESTALE = syscall.Errno(0x34)
-+ ESYSERROR = syscall.Errno(0x5a)
-+ ETIME = syscall.Errno(0x77)
-+ ETIMEDOUT = syscall.Errno(0x4e)
-+ ETOOMANYREFS = syscall.Errno(0x73)
-+ ETXTBSY = syscall.Errno(0x1a)
-+ EUNATCH = syscall.Errno(0x2a)
-+ EUSERS = syscall.Errno(0x54)
-+ EWOULDBLOCK = syscall.Errno(0xb)
-+ EWRPROTECT = syscall.Errno(0x2f)
-+ EXDEV = syscall.Errno(0x12)
-+)
-+
-+// Signals
-+const (
-+ SIGABRT = syscall.Signal(0x6)
-+ SIGAIO = syscall.Signal(0x17)
-+ SIGALRM = syscall.Signal(0xe)
-+ SIGALRM1 = syscall.Signal(0x26)
-+ SIGBUS = syscall.Signal(0xa)
-+ SIGCAPI = syscall.Signal(0x31)
-+ SIGCHLD = syscall.Signal(0x14)
-+ SIGCLD = syscall.Signal(0x14)
-+ SIGCONT = syscall.Signal(0x13)
-+ SIGCPUFAIL = syscall.Signal(0x3b)
-+ SIGDANGER = syscall.Signal(0x21)
-+ SIGEMT = syscall.Signal(0x7)
-+ SIGFPE = syscall.Signal(0x8)
-+ SIGGRANT = syscall.Signal(0x3c)
-+ SIGHUP = syscall.Signal(0x1)
-+ SIGILL = syscall.Signal(0x4)
-+ SIGINT = syscall.Signal(0x2)
-+ SIGIO = syscall.Signal(0x17)
-+ SIGIOINT = syscall.Signal(0x10)
-+ SIGIOT = syscall.Signal(0x6)
-+ SIGKAP = syscall.Signal(0x3c)
-+ SIGKILL = syscall.Signal(0x9)
-+ SIGLOST = syscall.Signal(0x6)
-+ SIGMAX = syscall.Signal(0x3f)
-+ SIGMAX32 = syscall.Signal(0x3f)
-+ SIGMIGRATE = syscall.Signal(0x23)
-+ SIGMSG = syscall.Signal(0x1b)
-+ SIGPIPE = syscall.Signal(0xd)
-+ SIGPOLL = syscall.Signal(0x17)
-+ SIGPRE = syscall.Signal(0x24)
-+ SIGPROF = syscall.Signal(0x20)
-+ SIGPTY = syscall.Signal(0x17)
-+ SIGPWR = syscall.Signal(0x1d)
-+ SIGQUIT = syscall.Signal(0x3)
-+ SIGRECONFIG = syscall.Signal(0x3a)
-+ SIGRETRACT = syscall.Signal(0x3d)
-+ SIGSAK = syscall.Signal(0x3f)
-+ SIGSEGV = syscall.Signal(0xb)
-+ SIGSOUND = syscall.Signal(0x3e)
-+ SIGSTOP = syscall.Signal(0x11)
-+ SIGSYS = syscall.Signal(0xc)
-+ SIGSYSERROR = syscall.Signal(0x30)
-+ SIGTALRM = syscall.Signal(0x26)
-+ SIGTERM = syscall.Signal(0xf)
-+ SIGTRAP = syscall.Signal(0x5)
-+ SIGTSTP = syscall.Signal(0x12)
-+ SIGTTIN = syscall.Signal(0x15)
-+ SIGTTOU = syscall.Signal(0x16)
-+ SIGURG = syscall.Signal(0x10)
-+ SIGUSR1 = syscall.Signal(0x1e)
-+ SIGUSR2 = syscall.Signal(0x1f)
-+ SIGVIRT = syscall.Signal(0x25)
-+ SIGVTALRM = syscall.Signal(0x22)
-+ SIGWAITING = syscall.Signal(0x27)
-+ SIGWINCH = syscall.Signal(0x1c)
-+ SIGXCPU = syscall.Signal(0x18)
-+ SIGXFSZ = syscall.Signal(0x19)
-+)
-+
-+// Error table
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "not owner"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "I/O error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "arg list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file number"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EWOULDBLOCK", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "not enough space"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "ENOTEMPTY", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "file table overflow"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "not a typewriter"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "ENOMSG", "no message of desired type"},
-+ {36, "EIDRM", "identifier removed"},
-+ {37, "ECHRNG", "channel number out of range"},
-+ {38, "EL2NSYNC", "level 2 not synchronized"},
-+ {39, "EL3HLT", "level 3 halted"},
-+ {40, "EL3RST", "level 3 reset"},
-+ {41, "ELNRNG", "link number out of range"},
-+ {42, "EUNATCH", "protocol driver not attached"},
-+ {43, "ENOCSI", "no CSI structure available"},
-+ {44, "EL2HLT", "level 2 halted"},
-+ {45, "EDEADLK", "deadlock condition if locked"},
-+ {46, "ENOTREADY", "device not ready"},
-+ {47, "EWRPROTECT", "write-protected media"},
-+ {48, "EFORMAT", "unformatted or incompatible media"},
-+ {49, "ENOLCK", "no locks available"},
-+ {50, "ENOCONNECT", "cannot Establish Connection"},
-+ {52, "ESTALE", "missing file or filesystem"},
-+ {53, "EDIST", "requests blocked by Administrator"},
-+ {55, "EINPROGRESS", "operation now in progress"},
-+ {56, "EALREADY", "operation already in progress"},
-+ {57, "ENOTSOCK", "socket operation on non-socket"},
-+ {58, "EDESTADDREQ", "destination address required"},
-+ {59, "EMSGSIZE", "message too long"},
-+ {60, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {61, "ENOPROTOOPT", "protocol not available"},
-+ {62, "EPROTONOSUPPORT", "protocol not supported"},
-+ {63, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {64, "EOPNOTSUPP", "operation not supported on socket"},
-+ {65, "EPFNOSUPPORT", "protocol family not supported"},
-+ {66, "EAFNOSUPPORT", "addr family not supported by protocol"},
-+ {67, "EADDRINUSE", "address already in use"},
-+ {68, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {69, "ENETDOWN", "network is down"},
-+ {70, "ENETUNREACH", "network is unreachable"},
-+ {71, "ENETRESET", "network dropped connection on reset"},
-+ {72, "ECONNABORTED", "software caused connection abort"},
-+ {73, "ECONNRESET", "connection reset by peer"},
-+ {74, "ENOBUFS", "no buffer space available"},
-+ {75, "EISCONN", "socket is already connected"},
-+ {76, "ENOTCONN", "socket is not connected"},
-+ {77, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {78, "ETIMEDOUT", "connection timed out"},
-+ {79, "ECONNREFUSED", "connection refused"},
-+ {80, "EHOSTDOWN", "host is down"},
-+ {81, "EHOSTUNREACH", "no route to host"},
-+ {82, "ERESTART", "restart the system call"},
-+ {83, "EPROCLIM", "too many processes"},
-+ {84, "EUSERS", "too many users"},
-+ {85, "ELOOP", "too many levels of symbolic links"},
-+ {86, "ENAMETOOLONG", "file name too long"},
-+ {88, "EDQUOT", "disk quota exceeded"},
-+ {89, "ECORRUPT", "invalid file system control data detected"},
-+ {90, "ESYSERROR", "for future use "},
-+ {93, "EREMOTE", "item is not local to host"},
-+ {94, "ENOTRECOVERABLE", "state not recoverable "},
-+ {95, "EOWNERDEAD", "previous owner died "},
-+ {109, "ENOSYS", "function not implemented"},
-+ {110, "EMEDIA", "media surface error"},
-+ {111, "ESOFT", "I/O completed, but needs relocation"},
-+ {112, "ENOATTR", "no attribute found"},
-+ {113, "ESAD", "security Authentication Denied"},
-+ {114, "ENOTRUST", "not a Trusted Program"},
-+ {115, "ETOOMANYREFS", "too many references: can't splice"},
-+ {116, "EILSEQ", "invalid wide character"},
-+ {117, "ECANCELED", "asynchronous I/O cancelled"},
-+ {118, "ENOSR", "out of STREAMS resources"},
-+ {119, "ETIME", "system call timed out"},
-+ {120, "EBADMSG", "next message has wrong type"},
-+ {121, "EPROTO", "error in protocol"},
-+ {122, "ENODATA", "no message on stream head read q"},
-+ {123, "ENOSTR", "fd not associated with a stream"},
-+ {124, "ENOTSUP", "unsupported attribute value"},
-+ {125, "EMULTIHOP", "multihop is not allowed"},
-+ {126, "ENOLINK", "the server link has been severed"},
-+ {127, "EOVERFLOW", "value too large to be stored in data type"},
-+}
-+
-+// Signal table
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGIOT", "IOT/Abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "stopped (signal)"},
-+ {18, "SIGTSTP", "stopped"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible/complete"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {27, "SIGMSG", "input device data"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGPWR", "power-failure"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGPROF", "profiling timer expired"},
-+ {33, "SIGDANGER", "paging space low"},
-+ {34, "SIGVTALRM", "virtual timer expired"},
-+ {35, "SIGMIGRATE", "signal 35"},
-+ {36, "SIGPRE", "signal 36"},
-+ {37, "SIGVIRT", "signal 37"},
-+ {38, "SIGTALRM", "signal 38"},
-+ {39, "SIGWAITING", "signal 39"},
-+ {48, "SIGSYSERROR", "signal 48"},
-+ {49, "SIGCAPI", "signal 49"},
-+ {58, "SIGRECONFIG", "signal 58"},
-+ {59, "SIGCPUFAIL", "CPU Failure Predicted"},
-+ {60, "SIGKAP", "monitor mode granted"},
-+ {61, "SIGRETRACT", "monitor mode retracted"},
-+ {62, "SIGSOUND", "sound completed"},
-+ {63, "SIGSAK", "secure attention"},
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go b/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go
-new file mode 100644
-index 00000000..4fc8d306
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go
-@@ -0,0 +1,1385 @@
-+// mkerrors.sh -maix64
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build ppc64,aix
-+
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
-+// cgo -godefs -- -maix64 _const.go
-+
-+package unix
-+
-+import "syscall"
-+
-+const (
-+ AF_APPLETALK = 0x10
-+ AF_BYPASS = 0x19
-+ AF_CCITT = 0xa
-+ AF_CHAOS = 0x5
-+ AF_DATAKIT = 0x9
-+ AF_DECnet = 0xc
-+ AF_DLI = 0xd
-+ AF_ECMA = 0x8
-+ AF_HYLINK = 0xf
-+ AF_IMPLINK = 0x3
-+ AF_INET = 0x2
-+ AF_INET6 = 0x18
-+ AF_INTF = 0x14
-+ AF_ISO = 0x7
-+ AF_LAT = 0xe
-+ AF_LINK = 0x12
-+ AF_LOCAL = 0x1
-+ AF_MAX = 0x1e
-+ AF_NDD = 0x17
-+ AF_NETWARE = 0x16
-+ AF_NS = 0x6
-+ AF_OSI = 0x7
-+ AF_PUP = 0x4
-+ AF_RIF = 0x15
-+ AF_ROUTE = 0x11
-+ AF_SNA = 0xb
-+ AF_UNIX = 0x1
-+ AF_UNSPEC = 0x0
-+ ALTWERASE = 0x400000
-+ ARPHRD_802_3 = 0x6
-+ ARPHRD_802_5 = 0x6
-+ ARPHRD_ETHER = 0x1
-+ ARPHRD_FDDI = 0x1
-+ B0 = 0x0
-+ B110 = 0x3
-+ B1200 = 0x9
-+ B134 = 0x4
-+ B150 = 0x5
-+ B1800 = 0xa
-+ B19200 = 0xe
-+ B200 = 0x6
-+ B2400 = 0xb
-+ B300 = 0x7
-+ B38400 = 0xf
-+ B4800 = 0xc
-+ B50 = 0x1
-+ B600 = 0x8
-+ B75 = 0x2
-+ B9600 = 0xd
-+ BRKINT = 0x2
-+ BS0 = 0x0
-+ BS1 = 0x1000
-+ BSDLY = 0x1000
-+ CAP_AACCT = 0x6
-+ CAP_ARM_APPLICATION = 0x5
-+ CAP_BYPASS_RAC_VMM = 0x3
-+ CAP_CLEAR = 0x0
-+ CAP_CREDENTIALS = 0x7
-+ CAP_EFFECTIVE = 0x1
-+ CAP_EWLM_AGENT = 0x4
-+ CAP_INHERITABLE = 0x2
-+ CAP_MAXIMUM = 0x7
-+ CAP_NUMA_ATTACH = 0x2
-+ CAP_PERMITTED = 0x3
-+ CAP_PROPAGATE = 0x1
-+ CAP_PROPOGATE = 0x1
-+ CAP_SET = 0x1
-+ CBAUD = 0xf
-+ CFLUSH = 0xf
-+ CIBAUD = 0xf0000
-+ CLOCAL = 0x800
-+ CLOCK_MONOTONIC = 0xa
-+ CLOCK_PROCESS_CPUTIME_ID = 0xb
-+ CLOCK_REALTIME = 0x9
-+ CLOCK_THREAD_CPUTIME_ID = 0xc
-+ CR0 = 0x0
-+ CR1 = 0x100
-+ CR2 = 0x200
-+ CR3 = 0x300
-+ CRDLY = 0x300
-+ CREAD = 0x80
-+ CS5 = 0x0
-+ CS6 = 0x10
-+ CS7 = 0x20
-+ CS8 = 0x30
-+ CSIOCGIFCONF = -0x3fef96dc
-+ CSIZE = 0x30
-+ CSMAP_DIR = "/usr/lib/nls/csmap/"
-+ CSTART = '\021'
-+ CSTOP = '\023'
-+ CSTOPB = 0x40
-+ CSUSP = 0x1a
-+ ECHO = 0x8
-+ ECHOCTL = 0x20000
-+ ECHOE = 0x10
-+ ECHOK = 0x20
-+ ECHOKE = 0x80000
-+ ECHONL = 0x40
-+ ECHOPRT = 0x40000
-+ ECH_ICMPID = 0x2
-+ ETHERNET_CSMACD = 0x6
-+ EVENP = 0x80
-+ EXCONTINUE = 0x0
-+ EXDLOK = 0x3
-+ EXIO = 0x2
-+ EXPGIO = 0x0
-+ EXRESUME = 0x2
-+ EXRETURN = 0x1
-+ EXSIG = 0x4
-+ EXTA = 0xe
-+ EXTB = 0xf
-+ EXTRAP = 0x1
-+ EYEC_RTENTRYA = 0x257274656e747241
-+ EYEC_RTENTRYF = 0x257274656e747246
-+ E_ACC = 0x0
-+ FD_CLOEXEC = 0x1
-+ FD_SETSIZE = 0xfffe
-+ FF0 = 0x0
-+ FF1 = 0x2000
-+ FFDLY = 0x2000
-+ FLUSHBAND = 0x40
-+ FLUSHLOW = 0x8
-+ FLUSHO = 0x100000
-+ FLUSHR = 0x1
-+ FLUSHRW = 0x3
-+ FLUSHW = 0x2
-+ F_CLOSEM = 0xa
-+ F_DUP2FD = 0xe
-+ F_DUPFD = 0x0
-+ F_GETFD = 0x1
-+ F_GETFL = 0x3
-+ F_GETLK = 0xb
-+ F_GETLK64 = 0xb
-+ F_GETOWN = 0x8
-+ F_LOCK = 0x1
-+ F_OK = 0x0
-+ F_RDLCK = 0x1
-+ F_SETFD = 0x2
-+ F_SETFL = 0x4
-+ F_SETLK = 0xc
-+ F_SETLK64 = 0xc
-+ F_SETLKW = 0xd
-+ F_SETLKW64 = 0xd
-+ F_SETOWN = 0x9
-+ F_TEST = 0x3
-+ F_TLOCK = 0x2
-+ F_TSTLK = 0xf
-+ F_ULOCK = 0x0
-+ F_UNLCK = 0x3
-+ F_WRLCK = 0x2
-+ HUPCL = 0x400
-+ IBSHIFT = 0x10
-+ ICANON = 0x2
-+ ICMP6_FILTER = 0x26
-+ ICMP6_SEC_SEND_DEL = 0x46
-+ ICMP6_SEC_SEND_GET = 0x47
-+ ICMP6_SEC_SEND_SET = 0x44
-+ ICMP6_SEC_SEND_SET_CGA_ADDR = 0x45
-+ ICRNL = 0x100
-+ IEXTEN = 0x200000
-+ IFA_FIRSTALIAS = 0x2000
-+ IFA_ROUTE = 0x1
-+ IFF_64BIT = 0x4000000
-+ IFF_ALLCAST = 0x20000
-+ IFF_ALLMULTI = 0x200
-+ IFF_BPF = 0x8000000
-+ IFF_BRIDGE = 0x40000
-+ IFF_BROADCAST = 0x2
-+ IFF_CANTCHANGE = 0x80c52
-+ IFF_CHECKSUM_OFFLOAD = 0x10000000
-+ IFF_D1 = 0x8000
-+ IFF_D2 = 0x4000
-+ IFF_D3 = 0x2000
-+ IFF_D4 = 0x1000
-+ IFF_DEBUG = 0x4
-+ IFF_DEVHEALTH = 0x4000
-+ IFF_DO_HW_LOOPBACK = 0x10000
-+ IFF_GROUP_ROUTING = 0x2000000
-+ IFF_IFBUFMGT = 0x800000
-+ IFF_LINK0 = 0x100000
-+ IFF_LINK1 = 0x200000
-+ IFF_LINK2 = 0x400000
-+ IFF_LOOPBACK = 0x8
-+ IFF_MULTICAST = 0x80000
-+ IFF_NOARP = 0x80
-+ IFF_NOECHO = 0x800
-+ IFF_NOTRAILERS = 0x20
-+ IFF_OACTIVE = 0x400
-+ IFF_POINTOPOINT = 0x10
-+ IFF_PROMISC = 0x100
-+ IFF_PSEG = 0x40000000
-+ IFF_RUNNING = 0x40
-+ IFF_SIMPLEX = 0x800
-+ IFF_SNAP = 0x8000
-+ IFF_TCP_DISABLE_CKSUM = 0x20000000
-+ IFF_TCP_NOCKSUM = 0x1000000
-+ IFF_UP = 0x1
-+ IFF_VIPA = 0x80000000
-+ IFNAMSIZ = 0x10
-+ IFO_FLUSH = 0x1
-+ IFT_1822 = 0x2
-+ IFT_AAL5 = 0x31
-+ IFT_ARCNET = 0x23
-+ IFT_ARCNETPLUS = 0x24
-+ IFT_ATM = 0x25
-+ IFT_CEPT = 0x13
-+ IFT_CLUSTER = 0x3e
-+ IFT_DS3 = 0x1e
-+ IFT_EON = 0x19
-+ IFT_ETHER = 0x6
-+ IFT_FCS = 0x3a
-+ IFT_FDDI = 0xf
-+ IFT_FRELAY = 0x20
-+ IFT_FRELAYDCE = 0x2c
-+ IFT_GIFTUNNEL = 0x3c
-+ IFT_HDH1822 = 0x3
-+ IFT_HF = 0x3d
-+ IFT_HIPPI = 0x2f
-+ IFT_HSSI = 0x2e
-+ IFT_HY = 0xe
-+ IFT_IB = 0xc7
-+ IFT_ISDNBASIC = 0x14
-+ IFT_ISDNPRIMARY = 0x15
-+ IFT_ISO88022LLC = 0x29
-+ IFT_ISO88023 = 0x7
-+ IFT_ISO88024 = 0x8
-+ IFT_ISO88025 = 0x9
-+ IFT_ISO88026 = 0xa
-+ IFT_LAPB = 0x10
-+ IFT_LOCALTALK = 0x2a
-+ IFT_LOOP = 0x18
-+ IFT_MIOX25 = 0x26
-+ IFT_MODEM = 0x30
-+ IFT_NSIP = 0x1b
-+ IFT_OTHER = 0x1
-+ IFT_P10 = 0xc
-+ IFT_P80 = 0xd
-+ IFT_PARA = 0x22
-+ IFT_PPP = 0x17
-+ IFT_PROPMUX = 0x36
-+ IFT_PROPVIRTUAL = 0x35
-+ IFT_PTPSERIAL = 0x16
-+ IFT_RS232 = 0x21
-+ IFT_SDLC = 0x11
-+ IFT_SIP = 0x1f
-+ IFT_SLIP = 0x1c
-+ IFT_SMDSDXI = 0x2b
-+ IFT_SMDSICIP = 0x34
-+ IFT_SN = 0x38
-+ IFT_SONET = 0x27
-+ IFT_SONETPATH = 0x32
-+ IFT_SONETVT = 0x33
-+ IFT_SP = 0x39
-+ IFT_STARLAN = 0xb
-+ IFT_T1 = 0x12
-+ IFT_TUNNEL = 0x3b
-+ IFT_ULTRA = 0x1d
-+ IFT_V35 = 0x2d
-+ IFT_VIPA = 0x37
-+ IFT_X25 = 0x5
-+ IFT_X25DDN = 0x4
-+ IFT_X25PLE = 0x28
-+ IFT_XETHER = 0x1a
-+ IGNBRK = 0x1
-+ IGNCR = 0x80
-+ IGNPAR = 0x4
-+ IMAXBEL = 0x10000
-+ INLCR = 0x40
-+ INPCK = 0x10
-+ IN_CLASSA_HOST = 0xffffff
-+ IN_CLASSA_MAX = 0x80
-+ IN_CLASSA_NET = 0xff000000
-+ IN_CLASSA_NSHIFT = 0x18
-+ IN_CLASSB_HOST = 0xffff
-+ IN_CLASSB_MAX = 0x10000
-+ IN_CLASSB_NET = 0xffff0000
-+ IN_CLASSB_NSHIFT = 0x10
-+ IN_CLASSC_HOST = 0xff
-+ IN_CLASSC_NET = 0xffffff00
-+ IN_CLASSC_NSHIFT = 0x8
-+ IN_CLASSD_HOST = 0xfffffff
-+ IN_CLASSD_NET = 0xf0000000
-+ IN_CLASSD_NSHIFT = 0x1c
-+ IN_LOOPBACKNET = 0x7f
-+ IN_USE = 0x1
-+ IPPROTO_AH = 0x33
-+ IPPROTO_BIP = 0x53
-+ IPPROTO_DSTOPTS = 0x3c
-+ IPPROTO_EGP = 0x8
-+ IPPROTO_EON = 0x50
-+ IPPROTO_ESP = 0x32
-+ IPPROTO_FRAGMENT = 0x2c
-+ IPPROTO_GGP = 0x3
-+ IPPROTO_GIF = 0x8c
-+ IPPROTO_GRE = 0x2f
-+ IPPROTO_HOPOPTS = 0x0
-+ IPPROTO_ICMP = 0x1
-+ IPPROTO_ICMPV6 = 0x3a
-+ IPPROTO_IDP = 0x16
-+ IPPROTO_IGMP = 0x2
-+ IPPROTO_IP = 0x0
-+ IPPROTO_IPIP = 0x4
-+ IPPROTO_IPV6 = 0x29
-+ IPPROTO_LOCAL = 0x3f
-+ IPPROTO_MAX = 0x100
-+ IPPROTO_MH = 0x87
-+ IPPROTO_NONE = 0x3b
-+ IPPROTO_PUP = 0xc
-+ IPPROTO_QOS = 0x2d
-+ IPPROTO_RAW = 0xff
-+ IPPROTO_ROUTING = 0x2b
-+ IPPROTO_RSVP = 0x2e
-+ IPPROTO_SCTP = 0x84
-+ IPPROTO_TCP = 0x6
-+ IPPROTO_TP = 0x1d
-+ IPPROTO_UDP = 0x11
-+ IPV6_ADDRFORM = 0x16
-+ IPV6_ADDR_PREFERENCES = 0x4a
-+ IPV6_ADD_MEMBERSHIP = 0xc
-+ IPV6_AIXRAWSOCKET = 0x39
-+ IPV6_CHECKSUM = 0x27
-+ IPV6_DONTFRAG = 0x2d
-+ IPV6_DROP_MEMBERSHIP = 0xd
-+ IPV6_DSTOPTS = 0x36
-+ IPV6_FLOWINFO_FLOWLABEL = 0xffffff
-+ IPV6_FLOWINFO_PRIFLOW = 0xfffffff
-+ IPV6_FLOWINFO_PRIORITY = 0xf000000
-+ IPV6_FLOWINFO_SRFLAG = 0x10000000
-+ IPV6_FLOWINFO_VERSION = 0xf0000000
-+ IPV6_HOPLIMIT = 0x28
-+ IPV6_HOPOPTS = 0x34
-+ IPV6_JOIN_GROUP = 0xc
-+ IPV6_LEAVE_GROUP = 0xd
-+ IPV6_MIPDSTOPTS = 0x36
-+ IPV6_MULTICAST_HOPS = 0xa
-+ IPV6_MULTICAST_IF = 0x9
-+ IPV6_MULTICAST_LOOP = 0xb
-+ IPV6_NEXTHOP = 0x30
-+ IPV6_NOPROBE = 0x1c
-+ IPV6_PATHMTU = 0x2e
-+ IPV6_PKTINFO = 0x21
-+ IPV6_PKTOPTIONS = 0x24
-+ IPV6_PRIORITY_10 = 0xa000000
-+ IPV6_PRIORITY_11 = 0xb000000
-+ IPV6_PRIORITY_12 = 0xc000000
-+ IPV6_PRIORITY_13 = 0xd000000
-+ IPV6_PRIORITY_14 = 0xe000000
-+ IPV6_PRIORITY_15 = 0xf000000
-+ IPV6_PRIORITY_8 = 0x8000000
-+ IPV6_PRIORITY_9 = 0x9000000
-+ IPV6_PRIORITY_BULK = 0x4000000
-+ IPV6_PRIORITY_CONTROL = 0x7000000
-+ IPV6_PRIORITY_FILLER = 0x1000000
-+ IPV6_PRIORITY_INTERACTIVE = 0x6000000
-+ IPV6_PRIORITY_RESERVED1 = 0x3000000
-+ IPV6_PRIORITY_RESERVED2 = 0x5000000
-+ IPV6_PRIORITY_UNATTENDED = 0x2000000
-+ IPV6_PRIORITY_UNCHARACTERIZED = 0x0
-+ IPV6_RECVDSTOPTS = 0x38
-+ IPV6_RECVHOPLIMIT = 0x29
-+ IPV6_RECVHOPOPTS = 0x35
-+ IPV6_RECVHOPS = 0x22
-+ IPV6_RECVIF = 0x1e
-+ IPV6_RECVPATHMTU = 0x2f
-+ IPV6_RECVPKTINFO = 0x23
-+ IPV6_RECVRTHDR = 0x33
-+ IPV6_RECVSRCRT = 0x1d
-+ IPV6_RECVTCLASS = 0x2a
-+ IPV6_RTHDR = 0x32
-+ IPV6_RTHDRDSTOPTS = 0x37
-+ IPV6_RTHDR_TYPE_0 = 0x0
-+ IPV6_RTHDR_TYPE_2 = 0x2
-+ IPV6_SENDIF = 0x1f
-+ IPV6_SRFLAG_LOOSE = 0x0
-+ IPV6_SRFLAG_STRICT = 0x10000000
-+ IPV6_TCLASS = 0x2b
-+ IPV6_TOKEN_LENGTH = 0x40
-+ IPV6_UNICAST_HOPS = 0x4
-+ IPV6_USE_MIN_MTU = 0x2c
-+ IPV6_V6ONLY = 0x25
-+ IPV6_VERSION = 0x60000000
-+ IP_ADDRFORM = 0x16
-+ IP_ADD_MEMBERSHIP = 0xc
-+ IP_ADD_SOURCE_MEMBERSHIP = 0x3c
-+ IP_BLOCK_SOURCE = 0x3a
-+ IP_BROADCAST_IF = 0x10
-+ IP_CACHE_LINE_SIZE = 0x80
-+ IP_DEFAULT_MULTICAST_LOOP = 0x1
-+ IP_DEFAULT_MULTICAST_TTL = 0x1
-+ IP_DF = 0x4000
-+ IP_DHCPMODE = 0x11
-+ IP_DONTFRAG = 0x19
-+ IP_DROP_MEMBERSHIP = 0xd
-+ IP_DROP_SOURCE_MEMBERSHIP = 0x3d
-+ IP_FINDPMTU = 0x1a
-+ IP_HDRINCL = 0x2
-+ IP_INC_MEMBERSHIPS = 0x14
-+ IP_INIT_MEMBERSHIP = 0x14
-+ IP_MAXPACKET = 0xffff
-+ IP_MF = 0x2000
-+ IP_MSS = 0x240
-+ IP_MULTICAST_HOPS = 0xa
-+ IP_MULTICAST_IF = 0x9
-+ IP_MULTICAST_LOOP = 0xb
-+ IP_MULTICAST_TTL = 0xa
-+ IP_OPT = 0x1b
-+ IP_OPTIONS = 0x1
-+ IP_PMTUAGE = 0x1b
-+ IP_RECVDSTADDR = 0x7
-+ IP_RECVIF = 0x14
-+ IP_RECVIFINFO = 0xf
-+ IP_RECVINTERFACE = 0x20
-+ IP_RECVMACHDR = 0xe
-+ IP_RECVOPTS = 0x5
-+ IP_RECVRETOPTS = 0x6
-+ IP_RECVTTL = 0x22
-+ IP_RETOPTS = 0x8
-+ IP_SOURCE_FILTER = 0x48
-+ IP_TOS = 0x3
-+ IP_TTL = 0x4
-+ IP_UNBLOCK_SOURCE = 0x3b
-+ IP_UNICAST_HOPS = 0x4
-+ ISIG = 0x1
-+ ISTRIP = 0x20
-+ IUCLC = 0x800
-+ IXANY = 0x1000
-+ IXOFF = 0x400
-+ IXON = 0x200
-+ I_FLUSH = 0x20005305
-+ LNOFLSH = 0x8000
-+ LOCK_EX = 0x2
-+ LOCK_NB = 0x4
-+ LOCK_SH = 0x1
-+ LOCK_UN = 0x8
-+ MADV_DONTNEED = 0x4
-+ MADV_NORMAL = 0x0
-+ MADV_RANDOM = 0x1
-+ MADV_SEQUENTIAL = 0x2
-+ MADV_SPACEAVAIL = 0x5
-+ MADV_WILLNEED = 0x3
-+ MAP_ANON = 0x10
-+ MAP_ANONYMOUS = 0x10
-+ MAP_FILE = 0x0
-+ MAP_FIXED = 0x100
-+ MAP_PRIVATE = 0x2
-+ MAP_SHARED = 0x1
-+ MAP_TYPE = 0xf0
-+ MAP_VARIABLE = 0x0
-+ MCAST_BLOCK_SOURCE = 0x40
-+ MCAST_EXCLUDE = 0x2
-+ MCAST_INCLUDE = 0x1
-+ MCAST_JOIN_GROUP = 0x3e
-+ MCAST_JOIN_SOURCE_GROUP = 0x42
-+ MCAST_LEAVE_GROUP = 0x3f
-+ MCAST_LEAVE_SOURCE_GROUP = 0x43
-+ MCAST_SOURCE_FILTER = 0x49
-+ MCAST_UNBLOCK_SOURCE = 0x41
-+ MCL_CURRENT = 0x100
-+ MCL_FUTURE = 0x200
-+ MSG_ANY = 0x4
-+ MSG_ARGEXT = 0x400
-+ MSG_BAND = 0x2
-+ MSG_COMPAT = 0x8000
-+ MSG_CTRUNC = 0x20
-+ MSG_DONTROUTE = 0x4
-+ MSG_EOR = 0x8
-+ MSG_HIPRI = 0x1
-+ MSG_MAXIOVLEN = 0x10
-+ MSG_MPEG2 = 0x80
-+ MSG_NONBLOCK = 0x4000
-+ MSG_NOSIGNAL = 0x100
-+ MSG_OOB = 0x1
-+ MSG_PEEK = 0x2
-+ MSG_TRUNC = 0x10
-+ MSG_WAITALL = 0x40
-+ MSG_WAITFORONE = 0x200
-+ MS_ASYNC = 0x10
-+ MS_EINTR = 0x80
-+ MS_INVALIDATE = 0x40
-+ MS_PER_SEC = 0x3e8
-+ MS_SYNC = 0x20
-+ NFDBITS = 0x40
-+ NL0 = 0x0
-+ NL1 = 0x4000
-+ NL2 = 0x8000
-+ NL3 = 0xc000
-+ NLDLY = 0x4000
-+ NOFLSH = 0x80
-+ NOFLUSH = 0x80000000
-+ OCRNL = 0x8
-+ OFDEL = 0x80
-+ OFILL = 0x40
-+ OLCUC = 0x2
-+ ONLCR = 0x4
-+ ONLRET = 0x20
-+ ONOCR = 0x10
-+ ONOEOT = 0x80000
-+ OPOST = 0x1
-+ OXTABS = 0x40000
-+ O_ACCMODE = 0x23
-+ O_APPEND = 0x8
-+ O_CIO = 0x80
-+ O_CIOR = 0x800000000
-+ O_CLOEXEC = 0x800000
-+ O_CREAT = 0x100
-+ O_DEFER = 0x2000
-+ O_DELAY = 0x4000
-+ O_DIRECT = 0x8000000
-+ O_DIRECTORY = 0x80000
-+ O_DSYNC = 0x400000
-+ O_EFSOFF = 0x400000000
-+ O_EFSON = 0x200000000
-+ O_EXCL = 0x400
-+ O_EXEC = 0x20
-+ O_LARGEFILE = 0x4000000
-+ O_NDELAY = 0x8000
-+ O_NOCACHE = 0x100000
-+ O_NOCTTY = 0x800
-+ O_NOFOLLOW = 0x1000000
-+ O_NONBLOCK = 0x4
-+ O_NONE = 0x3
-+ O_NSHARE = 0x10000
-+ O_RAW = 0x100000000
-+ O_RDONLY = 0x0
-+ O_RDWR = 0x2
-+ O_RSHARE = 0x1000
-+ O_RSYNC = 0x200000
-+ O_SEARCH = 0x20
-+ O_SNAPSHOT = 0x40
-+ O_SYNC = 0x10
-+ O_TRUNC = 0x200
-+ O_TTY_INIT = 0x0
-+ O_WRONLY = 0x1
-+ PARENB = 0x100
-+ PAREXT = 0x100000
-+ PARMRK = 0x8
-+ PARODD = 0x200
-+ PENDIN = 0x20000000
-+ PRIO_PGRP = 0x1
-+ PRIO_PROCESS = 0x0
-+ PRIO_USER = 0x2
-+ PROT_EXEC = 0x4
-+ PROT_NONE = 0x0
-+ PROT_READ = 0x1
-+ PROT_WRITE = 0x2
-+ PR_64BIT = 0x20
-+ PR_ADDR = 0x2
-+ PR_ARGEXT = 0x400
-+ PR_ATOMIC = 0x1
-+ PR_CONNREQUIRED = 0x4
-+ PR_FASTHZ = 0x5
-+ PR_INP = 0x40
-+ PR_INTRLEVEL = 0x8000
-+ PR_MLS = 0x100
-+ PR_MLS_1_LABEL = 0x200
-+ PR_NOEOR = 0x4000
-+ PR_RIGHTS = 0x10
-+ PR_SLOWHZ = 0x2
-+ PR_WANTRCVD = 0x8
-+ RLIMIT_AS = 0x6
-+ RLIMIT_CORE = 0x4
-+ RLIMIT_CPU = 0x0
-+ RLIMIT_DATA = 0x2
-+ RLIMIT_FSIZE = 0x1
-+ RLIMIT_NOFILE = 0x7
-+ RLIMIT_NPROC = 0x9
-+ RLIMIT_RSS = 0x5
-+ RLIMIT_STACK = 0x3
-+ RLIM_INFINITY = 0x7fffffffffffffff
-+ RTAX_AUTHOR = 0x6
-+ RTAX_BRD = 0x7
-+ RTAX_DST = 0x0
-+ RTAX_GATEWAY = 0x1
-+ RTAX_GENMASK = 0x3
-+ RTAX_IFA = 0x5
-+ RTAX_IFP = 0x4
-+ RTAX_MAX = 0x8
-+ RTAX_NETMASK = 0x2
-+ RTA_AUTHOR = 0x40
-+ RTA_BRD = 0x80
-+ RTA_DOWNSTREAM = 0x100
-+ RTA_DST = 0x1
-+ RTA_GATEWAY = 0x2
-+ RTA_GENMASK = 0x8
-+ RTA_IFA = 0x20
-+ RTA_IFP = 0x10
-+ RTA_NETMASK = 0x4
-+ RTC_IA64 = 0x3
-+ RTC_POWER = 0x1
-+ RTC_POWER_PC = 0x2
-+ RTF_ACTIVE_DGD = 0x1000000
-+ RTF_BCE = 0x80000
-+ RTF_BLACKHOLE = 0x1000
-+ RTF_BROADCAST = 0x400000
-+ RTF_BUL = 0x2000
-+ RTF_CLONE = 0x10000
-+ RTF_CLONED = 0x20000
-+ RTF_CLONING = 0x100
-+ RTF_DONE = 0x40
-+ RTF_DYNAMIC = 0x10
-+ RTF_FREE_IN_PROG = 0x4000000
-+ RTF_GATEWAY = 0x2
-+ RTF_HOST = 0x4
-+ RTF_LLINFO = 0x400
-+ RTF_LOCAL = 0x200000
-+ RTF_MASK = 0x80
-+ RTF_MODIFIED = 0x20
-+ RTF_MULTICAST = 0x800000
-+ RTF_PERMANENT6 = 0x8000000
-+ RTF_PINNED = 0x100000
-+ RTF_PROTO1 = 0x8000
-+ RTF_PROTO2 = 0x4000
-+ RTF_PROTO3 = 0x40000
-+ RTF_REJECT = 0x8
-+ RTF_SMALLMTU = 0x40000
-+ RTF_STATIC = 0x800
-+ RTF_STOPSRCH = 0x2000000
-+ RTF_UNREACHABLE = 0x10000000
-+ RTF_UP = 0x1
-+ RTF_XRESOLVE = 0x200
-+ RTM_ADD = 0x1
-+ RTM_CHANGE = 0x3
-+ RTM_DELADDR = 0xd
-+ RTM_DELETE = 0x2
-+ RTM_EXPIRE = 0xf
-+ RTM_GET = 0x4
-+ RTM_GETNEXT = 0x11
-+ RTM_IFINFO = 0xe
-+ RTM_LOCK = 0x8
-+ RTM_LOSING = 0x5
-+ RTM_MISS = 0x7
-+ RTM_NEWADDR = 0xc
-+ RTM_OLDADD = 0x9
-+ RTM_OLDDEL = 0xa
-+ RTM_REDIRECT = 0x6
-+ RTM_RESOLVE = 0xb
-+ RTM_RTLOST = 0x10
-+ RTM_RTTUNIT = 0xf4240
-+ RTM_SAMEADDR = 0x12
-+ RTM_SET = 0x13
-+ RTM_VERSION = 0x2
-+ RTM_VERSION_GR = 0x4
-+ RTM_VERSION_GR_COMPAT = 0x3
-+ RTM_VERSION_POLICY = 0x5
-+ RTM_VERSION_POLICY_EXT = 0x6
-+ RTM_VERSION_POLICY_PRFN = 0x7
-+ RTV_EXPIRE = 0x4
-+ RTV_HOPCOUNT = 0x2
-+ RTV_MTU = 0x1
-+ RTV_RPIPE = 0x8
-+ RTV_RTT = 0x40
-+ RTV_RTTVAR = 0x80
-+ RTV_SPIPE = 0x10
-+ RTV_SSTHRESH = 0x20
-+ RUSAGE_CHILDREN = -0x1
-+ RUSAGE_SELF = 0x0
-+ RUSAGE_THREAD = 0x1
-+ SCM_RIGHTS = 0x1
-+ SHUT_RD = 0x0
-+ SHUT_RDWR = 0x2
-+ SHUT_WR = 0x1
-+ SIGMAX64 = 0xff
-+ SIGQUEUE_MAX = 0x20
-+ SIOCADDIFVIPA = 0x20006942
-+ SIOCADDMTU = -0x7ffb9690
-+ SIOCADDMULTI = -0x7fdf96cf
-+ SIOCADDNETID = -0x7fd796a9
-+ SIOCADDRT = -0x7fc78df6
-+ SIOCAIFADDR = -0x7fbf96e6
-+ SIOCATMARK = 0x40047307
-+ SIOCDARP = -0x7fb396e0
-+ SIOCDELIFVIPA = 0x20006943
-+ SIOCDELMTU = -0x7ffb968f
-+ SIOCDELMULTI = -0x7fdf96ce
-+ SIOCDELPMTU = -0x7fd78ff6
-+ SIOCDELRT = -0x7fc78df5
-+ SIOCDIFADDR = -0x7fd796e7
-+ SIOCDNETOPT = -0x3ffe9680
-+ SIOCDX25XLATE = -0x7fd7969b
-+ SIOCFIFADDR = -0x7fdf966d
-+ SIOCGARP = -0x3fb396da
-+ SIOCGETMTUS = 0x2000696f
-+ SIOCGETSGCNT = -0x3feb8acc
-+ SIOCGETVIFCNT = -0x3feb8acd
-+ SIOCGHIWAT = 0x40047301
-+ SIOCGIFADDR = -0x3fd796df
-+ SIOCGIFADDRS = 0x2000698c
-+ SIOCGIFBAUDRATE = -0x3fdf9669
-+ SIOCGIFBRDADDR = -0x3fd796dd
-+ SIOCGIFCONF = -0x3fef96bb
-+ SIOCGIFCONFGLOB = -0x3fef9670
-+ SIOCGIFDSTADDR = -0x3fd796de
-+ SIOCGIFFLAGS = -0x3fd796ef
-+ SIOCGIFGIDLIST = 0x20006968
-+ SIOCGIFHWADDR = -0x3fab966b
-+ SIOCGIFMETRIC = -0x3fd796e9
-+ SIOCGIFMTU = -0x3fd796aa
-+ SIOCGIFNETMASK = -0x3fd796db
-+ SIOCGIFOPTIONS = -0x3fd796d6
-+ SIOCGISNO = -0x3fd79695
-+ SIOCGLOADF = -0x3ffb967e
-+ SIOCGLOWAT = 0x40047303
-+ SIOCGNETOPT = -0x3ffe96a5
-+ SIOCGNETOPT1 = -0x3fdf967f
-+ SIOCGNMTUS = 0x2000696e
-+ SIOCGPGRP = 0x40047309
-+ SIOCGSIZIFCONF = 0x4004696a
-+ SIOCGSRCFILTER = -0x3fe796cb
-+ SIOCGTUNEPHASE = -0x3ffb9676
-+ SIOCGX25XLATE = -0x3fd7969c
-+ SIOCIFATTACH = -0x7fdf9699
-+ SIOCIFDETACH = -0x7fdf969a
-+ SIOCIFGETPKEY = -0x7fdf969b
-+ SIOCIF_ATM_DARP = -0x7fdf9683
-+ SIOCIF_ATM_DUMPARP = -0x7fdf9685
-+ SIOCIF_ATM_GARP = -0x7fdf9682
-+ SIOCIF_ATM_IDLE = -0x7fdf9686
-+ SIOCIF_ATM_SARP = -0x7fdf9681
-+ SIOCIF_ATM_SNMPARP = -0x7fdf9687
-+ SIOCIF_ATM_SVC = -0x7fdf9684
-+ SIOCIF_ATM_UBR = -0x7fdf9688
-+ SIOCIF_DEVHEALTH = -0x7ffb966c
-+ SIOCIF_IB_ARP_INCOMP = -0x7fdf9677
-+ SIOCIF_IB_ARP_TIMER = -0x7fdf9678
-+ SIOCIF_IB_CLEAR_PINFO = -0x3fdf966f
-+ SIOCIF_IB_DEL_ARP = -0x7fdf967f
-+ SIOCIF_IB_DEL_PINFO = -0x3fdf9670
-+ SIOCIF_IB_DUMP_ARP = -0x7fdf9680
-+ SIOCIF_IB_GET_ARP = -0x7fdf967e
-+ SIOCIF_IB_GET_INFO = -0x3f879675
-+ SIOCIF_IB_GET_STATS = -0x3f879672
-+ SIOCIF_IB_NOTIFY_ADDR_REM = -0x3f87966a
-+ SIOCIF_IB_RESET_STATS = -0x3f879671
-+ SIOCIF_IB_RESIZE_CQ = -0x7fdf9679
-+ SIOCIF_IB_SET_ARP = -0x7fdf967d
-+ SIOCIF_IB_SET_PKEY = -0x7fdf967c
-+ SIOCIF_IB_SET_PORT = -0x7fdf967b
-+ SIOCIF_IB_SET_QKEY = -0x7fdf9676
-+ SIOCIF_IB_SET_QSIZE = -0x7fdf967a
-+ SIOCLISTIFVIPA = 0x20006944
-+ SIOCSARP = -0x7fb396e2
-+ SIOCSHIWAT = 0xffffffff80047300
-+ SIOCSIFADDR = -0x7fd796f4
-+ SIOCSIFADDRORI = -0x7fdb9673
-+ SIOCSIFBRDADDR = -0x7fd796ed
-+ SIOCSIFDSTADDR = -0x7fd796f2
-+ SIOCSIFFLAGS = -0x7fd796f0
-+ SIOCSIFGIDLIST = 0x20006969
-+ SIOCSIFMETRIC = -0x7fd796e8
-+ SIOCSIFMTU = -0x7fd796a8
-+ SIOCSIFNETDUMP = -0x7fd796e4
-+ SIOCSIFNETMASK = -0x7fd796ea
-+ SIOCSIFOPTIONS = -0x7fd796d7
-+ SIOCSIFSUBCHAN = -0x7fd796e5
-+ SIOCSISNO = -0x7fd79694
-+ SIOCSLOADF = -0x3ffb967d
-+ SIOCSLOWAT = 0xffffffff80047302
-+ SIOCSNETOPT = -0x7ffe96a6
-+ SIOCSPGRP = 0xffffffff80047308
-+ SIOCSX25XLATE = -0x7fd7969d
-+ SOCK_CONN_DGRAM = 0x6
-+ SOCK_DGRAM = 0x2
-+ SOCK_RAW = 0x3
-+ SOCK_RDM = 0x4
-+ SOCK_SEQPACKET = 0x5
-+ SOCK_STREAM = 0x1
-+ SOL_SOCKET = 0xffff
-+ SOMAXCONN = 0x400
-+ SO_ACCEPTCONN = 0x2
-+ SO_AUDIT = 0x8000
-+ SO_BROADCAST = 0x20
-+ SO_CKSUMRECV = 0x800
-+ SO_DEBUG = 0x1
-+ SO_DONTROUTE = 0x10
-+ SO_ERROR = 0x1007
-+ SO_KEEPALIVE = 0x8
-+ SO_KERNACCEPT = 0x2000
-+ SO_LINGER = 0x80
-+ SO_NOMULTIPATH = 0x4000
-+ SO_NOREUSEADDR = 0x1000
-+ SO_OOBINLINE = 0x100
-+ SO_PEERID = 0x1009
-+ SO_RCVBUF = 0x1002
-+ SO_RCVLOWAT = 0x1004
-+ SO_RCVTIMEO = 0x1006
-+ SO_REUSEADDR = 0x4
-+ SO_REUSEPORT = 0x200
-+ SO_SNDBUF = 0x1001
-+ SO_SNDLOWAT = 0x1003
-+ SO_SNDTIMEO = 0x1005
-+ SO_TIMESTAMPNS = 0x100a
-+ SO_TYPE = 0x1008
-+ SO_USELOOPBACK = 0x40
-+ SO_USE_IFBUFS = 0x400
-+ S_BANDURG = 0x400
-+ S_EMODFMT = 0x3c000000
-+ S_ENFMT = 0x400
-+ S_ERROR = 0x100
-+ S_HANGUP = 0x200
-+ S_HIPRI = 0x2
-+ S_ICRYPTO = 0x80000
-+ S_IEXEC = 0x40
-+ S_IFBLK = 0x6000
-+ S_IFCHR = 0x2000
-+ S_IFDIR = 0x4000
-+ S_IFIFO = 0x1000
-+ S_IFJOURNAL = 0x10000
-+ S_IFLNK = 0xa000
-+ S_IFMPX = 0x2200
-+ S_IFMT = 0xf000
-+ S_IFPDIR = 0x4000000
-+ S_IFPSDIR = 0x8000000
-+ S_IFPSSDIR = 0xc000000
-+ S_IFREG = 0x8000
-+ S_IFSOCK = 0xc000
-+ S_IFSYSEA = 0x30000000
-+ S_INPUT = 0x1
-+ S_IREAD = 0x100
-+ S_IRGRP = 0x20
-+ S_IROTH = 0x4
-+ S_IRUSR = 0x100
-+ S_IRWXG = 0x38
-+ S_IRWXO = 0x7
-+ S_IRWXU = 0x1c0
-+ S_ISGID = 0x400
-+ S_ISUID = 0x800
-+ S_ISVTX = 0x200
-+ S_ITCB = 0x1000000
-+ S_ITP = 0x800000
-+ S_IWGRP = 0x10
-+ S_IWOTH = 0x2
-+ S_IWRITE = 0x80
-+ S_IWUSR = 0x80
-+ S_IXACL = 0x2000000
-+ S_IXATTR = 0x40000
-+ S_IXGRP = 0x8
-+ S_IXINTERFACE = 0x100000
-+ S_IXMOD = 0x40000000
-+ S_IXOTH = 0x1
-+ S_IXUSR = 0x40
-+ S_MSG = 0x8
-+ S_OUTPUT = 0x4
-+ S_RDBAND = 0x20
-+ S_RDNORM = 0x10
-+ S_RESERVED1 = 0x20000
-+ S_RESERVED2 = 0x200000
-+ S_RESERVED3 = 0x400000
-+ S_RESERVED4 = 0x80000000
-+ S_RESFMT1 = 0x10000000
-+ S_RESFMT10 = 0x34000000
-+ S_RESFMT11 = 0x38000000
-+ S_RESFMT12 = 0x3c000000
-+ S_RESFMT2 = 0x14000000
-+ S_RESFMT3 = 0x18000000
-+ S_RESFMT4 = 0x1c000000
-+ S_RESFMT5 = 0x20000000
-+ S_RESFMT6 = 0x24000000
-+ S_RESFMT7 = 0x28000000
-+ S_RESFMT8 = 0x2c000000
-+ S_WRBAND = 0x80
-+ S_WRNORM = 0x40
-+ TAB0 = 0x0
-+ TAB1 = 0x400
-+ TAB2 = 0x800
-+ TAB3 = 0xc00
-+ TABDLY = 0xc00
-+ TCFLSH = 0x540c
-+ TCGETA = 0x5405
-+ TCGETS = 0x5401
-+ TCIFLUSH = 0x0
-+ TCIOFF = 0x2
-+ TCIOFLUSH = 0x2
-+ TCION = 0x3
-+ TCOFLUSH = 0x1
-+ TCOOFF = 0x0
-+ TCOON = 0x1
-+ TCP_24DAYS_WORTH_OF_SLOWTICKS = 0x3f4800
-+ TCP_ACLADD = 0x23
-+ TCP_ACLBIND = 0x26
-+ TCP_ACLCLEAR = 0x22
-+ TCP_ACLDEL = 0x24
-+ TCP_ACLDENY = 0x8
-+ TCP_ACLFLUSH = 0x21
-+ TCP_ACLGID = 0x1
-+ TCP_ACLLS = 0x25
-+ TCP_ACLSUBNET = 0x4
-+ TCP_ACLUID = 0x2
-+ TCP_CWND_DF = 0x16
-+ TCP_CWND_IF = 0x15
-+ TCP_DELAY_ACK_FIN = 0x2
-+ TCP_DELAY_ACK_SYN = 0x1
-+ TCP_FASTNAME = 0x101080a
-+ TCP_KEEPCNT = 0x13
-+ TCP_KEEPIDLE = 0x11
-+ TCP_KEEPINTVL = 0x12
-+ TCP_LSPRIV = 0x29
-+ TCP_LUID = 0x20
-+ TCP_MAXBURST = 0x8
-+ TCP_MAXDF = 0x64
-+ TCP_MAXIF = 0x64
-+ TCP_MAXSEG = 0x2
-+ TCP_MAXWIN = 0xffff
-+ TCP_MAXWINDOWSCALE = 0xe
-+ TCP_MAX_SACK = 0x4
-+ TCP_MSS = 0x5b4
-+ TCP_NODELAY = 0x1
-+ TCP_NODELAYACK = 0x14
-+ TCP_NOREDUCE_CWND_EXIT_FRXMT = 0x19
-+ TCP_NOREDUCE_CWND_IN_FRXMT = 0x18
-+ TCP_NOTENTER_SSTART = 0x17
-+ TCP_OPT = 0x19
-+ TCP_RFC1323 = 0x4
-+ TCP_SETPRIV = 0x27
-+ TCP_STDURG = 0x10
-+ TCP_TIMESTAMP_OPTLEN = 0xc
-+ TCP_UNSETPRIV = 0x28
-+ TCSAFLUSH = 0x2
-+ TCSBRK = 0x5409
-+ TCSETA = 0x5406
-+ TCSETAF = 0x5408
-+ TCSETAW = 0x5407
-+ TCSETS = 0x5402
-+ TCSETSF = 0x5404
-+ TCSETSW = 0x5403
-+ TCXONC = 0x540b
-+ TIMER_ABSTIME = 0x3e7
-+ TIMER_MAX = 0x20
-+ TIOC = 0x5400
-+ TIOCCBRK = 0x2000747a
-+ TIOCCDTR = 0x20007478
-+ TIOCCONS = 0xffffffff80047462
-+ TIOCEXCL = 0x2000740d
-+ TIOCFLUSH = 0xffffffff80047410
-+ TIOCGETC = 0x40067412
-+ TIOCGETD = 0x40047400
-+ TIOCGETP = 0x40067408
-+ TIOCGLTC = 0x40067474
-+ TIOCGPGRP = 0x40047477
-+ TIOCGSID = 0x40047448
-+ TIOCGSIZE = 0x40087468
-+ TIOCGWINSZ = 0x40087468
-+ TIOCHPCL = 0x20007402
-+ TIOCLBIC = 0xffffffff8004747e
-+ TIOCLBIS = 0xffffffff8004747f
-+ TIOCLGET = 0x4004747c
-+ TIOCLSET = 0xffffffff8004747d
-+ TIOCMBIC = 0xffffffff8004746b
-+ TIOCMBIS = 0xffffffff8004746c
-+ TIOCMGET = 0x4004746a
-+ TIOCMIWAIT = 0xffffffff80047464
-+ TIOCMODG = 0x40047403
-+ TIOCMODS = 0xffffffff80047404
-+ TIOCMSET = 0xffffffff8004746d
-+ TIOCM_CAR = 0x40
-+ TIOCM_CD = 0x40
-+ TIOCM_CTS = 0x20
-+ TIOCM_DSR = 0x100
-+ TIOCM_DTR = 0x2
-+ TIOCM_LE = 0x1
-+ TIOCM_RI = 0x80
-+ TIOCM_RNG = 0x80
-+ TIOCM_RTS = 0x4
-+ TIOCM_SR = 0x10
-+ TIOCM_ST = 0x8
-+ TIOCNOTTY = 0x20007471
-+ TIOCNXCL = 0x2000740e
-+ TIOCOUTQ = 0x40047473
-+ TIOCPKT = 0xffffffff80047470
-+ TIOCPKT_DATA = 0x0
-+ TIOCPKT_DOSTOP = 0x20
-+ TIOCPKT_FLUSHREAD = 0x1
-+ TIOCPKT_FLUSHWRITE = 0x2
-+ TIOCPKT_NOSTOP = 0x10
-+ TIOCPKT_START = 0x8
-+ TIOCPKT_STOP = 0x4
-+ TIOCREMOTE = 0xffffffff80047469
-+ TIOCSBRK = 0x2000747b
-+ TIOCSDTR = 0x20007479
-+ TIOCSETC = 0xffffffff80067411
-+ TIOCSETD = 0xffffffff80047401
-+ TIOCSETN = 0xffffffff8006740a
-+ TIOCSETP = 0xffffffff80067409
-+ TIOCSLTC = 0xffffffff80067475
-+ TIOCSPGRP = 0xffffffff80047476
-+ TIOCSSIZE = 0xffffffff80087467
-+ TIOCSTART = 0x2000746e
-+ TIOCSTI = 0xffffffff80017472
-+ TIOCSTOP = 0x2000746f
-+ TIOCSWINSZ = 0xffffffff80087467
-+ TIOCUCNTL = 0xffffffff80047466
-+ TOSTOP = 0x10000
-+ UTIME_NOW = -0x2
-+ UTIME_OMIT = -0x3
-+ VDISCRD = 0xc
-+ VDSUSP = 0xa
-+ VEOF = 0x4
-+ VEOL = 0x5
-+ VEOL2 = 0x6
-+ VERASE = 0x2
-+ VINTR = 0x0
-+ VKILL = 0x3
-+ VLNEXT = 0xe
-+ VMIN = 0x4
-+ VQUIT = 0x1
-+ VREPRINT = 0xb
-+ VSTART = 0x7
-+ VSTOP = 0x8
-+ VSTRT = 0x7
-+ VSUSP = 0x9
-+ VT0 = 0x0
-+ VT1 = 0x8000
-+ VTDELAY = 0x2000
-+ VTDLY = 0x8000
-+ VTIME = 0x5
-+ VWERSE = 0xd
-+ WPARSTART = 0x1
-+ WPARSTOP = 0x2
-+ WPARTTYNAME = "Global"
-+ XCASE = 0x4
-+ XTABS = 0xc00
-+ _FDATAFLUSH = 0x2000000000
-+)
-+
-+// Errors
-+const (
-+ E2BIG = syscall.Errno(0x7)
-+ EACCES = syscall.Errno(0xd)
-+ EADDRINUSE = syscall.Errno(0x43)
-+ EADDRNOTAVAIL = syscall.Errno(0x44)
-+ EAFNOSUPPORT = syscall.Errno(0x42)
-+ EAGAIN = syscall.Errno(0xb)
-+ EALREADY = syscall.Errno(0x38)
-+ EBADF = syscall.Errno(0x9)
-+ EBADMSG = syscall.Errno(0x78)
-+ EBUSY = syscall.Errno(0x10)
-+ ECANCELED = syscall.Errno(0x75)
-+ ECHILD = syscall.Errno(0xa)
-+ ECHRNG = syscall.Errno(0x25)
-+ ECLONEME = syscall.Errno(0x52)
-+ ECONNABORTED = syscall.Errno(0x48)
-+ ECONNREFUSED = syscall.Errno(0x4f)
-+ ECONNRESET = syscall.Errno(0x49)
-+ ECORRUPT = syscall.Errno(0x59)
-+ EDEADLK = syscall.Errno(0x2d)
-+ EDESTADDREQ = syscall.Errno(0x3a)
-+ EDESTADDRREQ = syscall.Errno(0x3a)
-+ EDIST = syscall.Errno(0x35)
-+ EDOM = syscall.Errno(0x21)
-+ EDQUOT = syscall.Errno(0x58)
-+ EEXIST = syscall.Errno(0x11)
-+ EFAULT = syscall.Errno(0xe)
-+ EFBIG = syscall.Errno(0x1b)
-+ EFORMAT = syscall.Errno(0x30)
-+ EHOSTDOWN = syscall.Errno(0x50)
-+ EHOSTUNREACH = syscall.Errno(0x51)
-+ EIDRM = syscall.Errno(0x24)
-+ EILSEQ = syscall.Errno(0x74)
-+ EINPROGRESS = syscall.Errno(0x37)
-+ EINTR = syscall.Errno(0x4)
-+ EINVAL = syscall.Errno(0x16)
-+ EIO = syscall.Errno(0x5)
-+ EISCONN = syscall.Errno(0x4b)
-+ EISDIR = syscall.Errno(0x15)
-+ EL2HLT = syscall.Errno(0x2c)
-+ EL2NSYNC = syscall.Errno(0x26)
-+ EL3HLT = syscall.Errno(0x27)
-+ EL3RST = syscall.Errno(0x28)
-+ ELNRNG = syscall.Errno(0x29)
-+ ELOOP = syscall.Errno(0x55)
-+ EMEDIA = syscall.Errno(0x6e)
-+ EMFILE = syscall.Errno(0x18)
-+ EMLINK = syscall.Errno(0x1f)
-+ EMSGSIZE = syscall.Errno(0x3b)
-+ EMULTIHOP = syscall.Errno(0x7d)
-+ ENAMETOOLONG = syscall.Errno(0x56)
-+ ENETDOWN = syscall.Errno(0x45)
-+ ENETRESET = syscall.Errno(0x47)
-+ ENETUNREACH = syscall.Errno(0x46)
-+ ENFILE = syscall.Errno(0x17)
-+ ENOATTR = syscall.Errno(0x70)
-+ ENOBUFS = syscall.Errno(0x4a)
-+ ENOCONNECT = syscall.Errno(0x32)
-+ ENOCSI = syscall.Errno(0x2b)
-+ ENODATA = syscall.Errno(0x7a)
-+ ENODEV = syscall.Errno(0x13)
-+ ENOENT = syscall.Errno(0x2)
-+ ENOEXEC = syscall.Errno(0x8)
-+ ENOLCK = syscall.Errno(0x31)
-+ ENOLINK = syscall.Errno(0x7e)
-+ ENOMEM = syscall.Errno(0xc)
-+ ENOMSG = syscall.Errno(0x23)
-+ ENOPROTOOPT = syscall.Errno(0x3d)
-+ ENOSPC = syscall.Errno(0x1c)
-+ ENOSR = syscall.Errno(0x76)
-+ ENOSTR = syscall.Errno(0x7b)
-+ ENOSYS = syscall.Errno(0x6d)
-+ ENOTBLK = syscall.Errno(0xf)
-+ ENOTCONN = syscall.Errno(0x4c)
-+ ENOTDIR = syscall.Errno(0x14)
-+ ENOTEMPTY = syscall.Errno(0x11)
-+ ENOTREADY = syscall.Errno(0x2e)
-+ ENOTRECOVERABLE = syscall.Errno(0x5e)
-+ ENOTRUST = syscall.Errno(0x72)
-+ ENOTSOCK = syscall.Errno(0x39)
-+ ENOTSUP = syscall.Errno(0x7c)
-+ ENOTTY = syscall.Errno(0x19)
-+ ENXIO = syscall.Errno(0x6)
-+ EOPNOTSUPP = syscall.Errno(0x40)
-+ EOVERFLOW = syscall.Errno(0x7f)
-+ EOWNERDEAD = syscall.Errno(0x5f)
-+ EPERM = syscall.Errno(0x1)
-+ EPFNOSUPPORT = syscall.Errno(0x41)
-+ EPIPE = syscall.Errno(0x20)
-+ EPROCLIM = syscall.Errno(0x53)
-+ EPROTO = syscall.Errno(0x79)
-+ EPROTONOSUPPORT = syscall.Errno(0x3e)
-+ EPROTOTYPE = syscall.Errno(0x3c)
-+ ERANGE = syscall.Errno(0x22)
-+ EREMOTE = syscall.Errno(0x5d)
-+ ERESTART = syscall.Errno(0x52)
-+ EROFS = syscall.Errno(0x1e)
-+ ESAD = syscall.Errno(0x71)
-+ ESHUTDOWN = syscall.Errno(0x4d)
-+ ESOCKTNOSUPPORT = syscall.Errno(0x3f)
-+ ESOFT = syscall.Errno(0x6f)
-+ ESPIPE = syscall.Errno(0x1d)
-+ ESRCH = syscall.Errno(0x3)
-+ ESTALE = syscall.Errno(0x34)
-+ ESYSERROR = syscall.Errno(0x5a)
-+ ETIME = syscall.Errno(0x77)
-+ ETIMEDOUT = syscall.Errno(0x4e)
-+ ETOOMANYREFS = syscall.Errno(0x73)
-+ ETXTBSY = syscall.Errno(0x1a)
-+ EUNATCH = syscall.Errno(0x2a)
-+ EUSERS = syscall.Errno(0x54)
-+ EWOULDBLOCK = syscall.Errno(0xb)
-+ EWRPROTECT = syscall.Errno(0x2f)
-+ EXDEV = syscall.Errno(0x12)
-+)
-+
-+// Signals
-+const (
-+ SIGABRT = syscall.Signal(0x6)
-+ SIGAIO = syscall.Signal(0x17)
-+ SIGALRM = syscall.Signal(0xe)
-+ SIGALRM1 = syscall.Signal(0x26)
-+ SIGBUS = syscall.Signal(0xa)
-+ SIGCAPI = syscall.Signal(0x31)
-+ SIGCHLD = syscall.Signal(0x14)
-+ SIGCLD = syscall.Signal(0x14)
-+ SIGCONT = syscall.Signal(0x13)
-+ SIGCPUFAIL = syscall.Signal(0x3b)
-+ SIGDANGER = syscall.Signal(0x21)
-+ SIGEMT = syscall.Signal(0x7)
-+ SIGFPE = syscall.Signal(0x8)
-+ SIGGRANT = syscall.Signal(0x3c)
-+ SIGHUP = syscall.Signal(0x1)
-+ SIGILL = syscall.Signal(0x4)
-+ SIGINT = syscall.Signal(0x2)
-+ SIGIO = syscall.Signal(0x17)
-+ SIGIOINT = syscall.Signal(0x10)
-+ SIGIOT = syscall.Signal(0x6)
-+ SIGKAP = syscall.Signal(0x3c)
-+ SIGKILL = syscall.Signal(0x9)
-+ SIGLOST = syscall.Signal(0x6)
-+ SIGMAX = syscall.Signal(0xff)
-+ SIGMAX32 = syscall.Signal(0x3f)
-+ SIGMIGRATE = syscall.Signal(0x23)
-+ SIGMSG = syscall.Signal(0x1b)
-+ SIGPIPE = syscall.Signal(0xd)
-+ SIGPOLL = syscall.Signal(0x17)
-+ SIGPRE = syscall.Signal(0x24)
-+ SIGPROF = syscall.Signal(0x20)
-+ SIGPTY = syscall.Signal(0x17)
-+ SIGPWR = syscall.Signal(0x1d)
-+ SIGQUIT = syscall.Signal(0x3)
-+ SIGRECONFIG = syscall.Signal(0x3a)
-+ SIGRETRACT = syscall.Signal(0x3d)
-+ SIGSAK = syscall.Signal(0x3f)
-+ SIGSEGV = syscall.Signal(0xb)
-+ SIGSOUND = syscall.Signal(0x3e)
-+ SIGSTOP = syscall.Signal(0x11)
-+ SIGSYS = syscall.Signal(0xc)
-+ SIGSYSERROR = syscall.Signal(0x30)
-+ SIGTALRM = syscall.Signal(0x26)
-+ SIGTERM = syscall.Signal(0xf)
-+ SIGTRAP = syscall.Signal(0x5)
-+ SIGTSTP = syscall.Signal(0x12)
-+ SIGTTIN = syscall.Signal(0x15)
-+ SIGTTOU = syscall.Signal(0x16)
-+ SIGURG = syscall.Signal(0x10)
-+ SIGUSR1 = syscall.Signal(0x1e)
-+ SIGUSR2 = syscall.Signal(0x1f)
-+ SIGVIRT = syscall.Signal(0x25)
-+ SIGVTALRM = syscall.Signal(0x22)
-+ SIGWAITING = syscall.Signal(0x27)
-+ SIGWINCH = syscall.Signal(0x1c)
-+ SIGXCPU = syscall.Signal(0x18)
-+ SIGXFSZ = syscall.Signal(0x19)
-+)
-+
-+// Error table
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "not owner"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "I/O error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "arg list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file number"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EWOULDBLOCK", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "not enough space"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "ENOTEMPTY", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "file table overflow"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "not a typewriter"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "ENOMSG", "no message of desired type"},
-+ {36, "EIDRM", "identifier removed"},
-+ {37, "ECHRNG", "channel number out of range"},
-+ {38, "EL2NSYNC", "level 2 not synchronized"},
-+ {39, "EL3HLT", "level 3 halted"},
-+ {40, "EL3RST", "level 3 reset"},
-+ {41, "ELNRNG", "link number out of range"},
-+ {42, "EUNATCH", "protocol driver not attached"},
-+ {43, "ENOCSI", "no CSI structure available"},
-+ {44, "EL2HLT", "level 2 halted"},
-+ {45, "EDEADLK", "deadlock condition if locked"},
-+ {46, "ENOTREADY", "device not ready"},
-+ {47, "EWRPROTECT", "write-protected media"},
-+ {48, "EFORMAT", "unformatted or incompatible media"},
-+ {49, "ENOLCK", "no locks available"},
-+ {50, "ENOCONNECT", "cannot Establish Connection"},
-+ {52, "ESTALE", "missing file or filesystem"},
-+ {53, "EDIST", "requests blocked by Administrator"},
-+ {55, "EINPROGRESS", "operation now in progress"},
-+ {56, "EALREADY", "operation already in progress"},
-+ {57, "ENOTSOCK", "socket operation on non-socket"},
-+ {58, "EDESTADDREQ", "destination address required"},
-+ {59, "EMSGSIZE", "message too long"},
-+ {60, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {61, "ENOPROTOOPT", "protocol not available"},
-+ {62, "EPROTONOSUPPORT", "protocol not supported"},
-+ {63, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {64, "EOPNOTSUPP", "operation not supported on socket"},
-+ {65, "EPFNOSUPPORT", "protocol family not supported"},
-+ {66, "EAFNOSUPPORT", "addr family not supported by protocol"},
-+ {67, "EADDRINUSE", "address already in use"},
-+ {68, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {69, "ENETDOWN", "network is down"},
-+ {70, "ENETUNREACH", "network is unreachable"},
-+ {71, "ENETRESET", "network dropped connection on reset"},
-+ {72, "ECONNABORTED", "software caused connection abort"},
-+ {73, "ECONNRESET", "connection reset by peer"},
-+ {74, "ENOBUFS", "no buffer space available"},
-+ {75, "EISCONN", "socket is already connected"},
-+ {76, "ENOTCONN", "socket is not connected"},
-+ {77, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {78, "ETIMEDOUT", "connection timed out"},
-+ {79, "ECONNREFUSED", "connection refused"},
-+ {80, "EHOSTDOWN", "host is down"},
-+ {81, "EHOSTUNREACH", "no route to host"},
-+ {82, "ERESTART", "restart the system call"},
-+ {83, "EPROCLIM", "too many processes"},
-+ {84, "EUSERS", "too many users"},
-+ {85, "ELOOP", "too many levels of symbolic links"},
-+ {86, "ENAMETOOLONG", "file name too long"},
-+ {88, "EDQUOT", "disk quota exceeded"},
-+ {89, "ECORRUPT", "invalid file system control data detected"},
-+ {90, "ESYSERROR", "for future use "},
-+ {93, "EREMOTE", "item is not local to host"},
-+ {94, "ENOTRECOVERABLE", "state not recoverable "},
-+ {95, "EOWNERDEAD", "previous owner died "},
-+ {109, "ENOSYS", "function not implemented"},
-+ {110, "EMEDIA", "media surface error"},
-+ {111, "ESOFT", "I/O completed, but needs relocation"},
-+ {112, "ENOATTR", "no attribute found"},
-+ {113, "ESAD", "security Authentication Denied"},
-+ {114, "ENOTRUST", "not a Trusted Program"},
-+ {115, "ETOOMANYREFS", "too many references: can't splice"},
-+ {116, "EILSEQ", "invalid wide character"},
-+ {117, "ECANCELED", "asynchronous I/O cancelled"},
-+ {118, "ENOSR", "out of STREAMS resources"},
-+ {119, "ETIME", "system call timed out"},
-+ {120, "EBADMSG", "next message has wrong type"},
-+ {121, "EPROTO", "error in protocol"},
-+ {122, "ENODATA", "no message on stream head read q"},
-+ {123, "ENOSTR", "fd not associated with a stream"},
-+ {124, "ENOTSUP", "unsupported attribute value"},
-+ {125, "EMULTIHOP", "multihop is not allowed"},
-+ {126, "ENOLINK", "the server link has been severed"},
-+ {127, "EOVERFLOW", "value too large to be stored in data type"},
-+}
-+
-+// Signal table
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGIOT", "IOT/Abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "stopped (signal)"},
-+ {18, "SIGTSTP", "stopped"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible/complete"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {27, "SIGMSG", "input device data"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGPWR", "power-failure"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGPROF", "profiling timer expired"},
-+ {33, "SIGDANGER", "paging space low"},
-+ {34, "SIGVTALRM", "virtual timer expired"},
-+ {35, "SIGMIGRATE", "signal 35"},
-+ {36, "SIGPRE", "signal 36"},
-+ {37, "SIGVIRT", "signal 37"},
-+ {38, "SIGTALRM", "signal 38"},
-+ {39, "SIGWAITING", "signal 39"},
-+ {48, "SIGSYSERROR", "signal 48"},
-+ {49, "SIGCAPI", "signal 49"},
-+ {58, "SIGRECONFIG", "signal 58"},
-+ {59, "SIGCPUFAIL", "CPU Failure Predicted"},
-+ {60, "SIGGRANT", "monitor mode granted"},
-+ {61, "SIGRETRACT", "monitor mode retracted"},
-+ {62, "SIGSOUND", "sound completed"},
-+ {63, "SIGMAX32", "secure attention"},
-+ {255, "SIGMAX", "signal 255"},
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go
-index 1c68758b..6217cdba 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go
-@@ -3,7 +3,7 @@
-
- // +build 386,darwin
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m32 _const.go
-
- package unix
-@@ -49,6 +49,86 @@ const (
- AF_UNSPEC = 0x0
- AF_UTUN = 0x26
- ALTWERASE = 0x200
-+ ATTR_BIT_MAP_COUNT = 0x5
-+ ATTR_CMN_ACCESSMASK = 0x20000
-+ ATTR_CMN_ACCTIME = 0x1000
-+ ATTR_CMN_ADDEDTIME = 0x10000000
-+ ATTR_CMN_BKUPTIME = 0x2000
-+ ATTR_CMN_CHGTIME = 0x800
-+ ATTR_CMN_CRTIME = 0x200
-+ ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000
-+ ATTR_CMN_DEVID = 0x2
-+ ATTR_CMN_DOCUMENT_ID = 0x100000
-+ ATTR_CMN_ERROR = 0x20000000
-+ ATTR_CMN_EXTENDED_SECURITY = 0x400000
-+ ATTR_CMN_FILEID = 0x2000000
-+ ATTR_CMN_FLAGS = 0x40000
-+ ATTR_CMN_FNDRINFO = 0x4000
-+ ATTR_CMN_FSID = 0x4
-+ ATTR_CMN_FULLPATH = 0x8000000
-+ ATTR_CMN_GEN_COUNT = 0x80000
-+ ATTR_CMN_GRPID = 0x10000
-+ ATTR_CMN_GRPUUID = 0x1000000
-+ ATTR_CMN_MODTIME = 0x400
-+ ATTR_CMN_NAME = 0x1
-+ ATTR_CMN_NAMEDATTRCOUNT = 0x80000
-+ ATTR_CMN_NAMEDATTRLIST = 0x100000
-+ ATTR_CMN_OBJID = 0x20
-+ ATTR_CMN_OBJPERMANENTID = 0x40
-+ ATTR_CMN_OBJTAG = 0x10
-+ ATTR_CMN_OBJTYPE = 0x8
-+ ATTR_CMN_OWNERID = 0x8000
-+ ATTR_CMN_PARENTID = 0x4000000
-+ ATTR_CMN_PAROBJID = 0x80
-+ ATTR_CMN_RETURNED_ATTRS = 0x80000000
-+ ATTR_CMN_SCRIPT = 0x100
-+ ATTR_CMN_SETMASK = 0x41c7ff00
-+ ATTR_CMN_USERACCESS = 0x200000
-+ ATTR_CMN_UUID = 0x800000
-+ ATTR_CMN_VALIDMASK = 0xffffffff
-+ ATTR_CMN_VOLSETMASK = 0x6700
-+ ATTR_FILE_ALLOCSIZE = 0x4
-+ ATTR_FILE_CLUMPSIZE = 0x10
-+ ATTR_FILE_DATAALLOCSIZE = 0x400
-+ ATTR_FILE_DATAEXTENTS = 0x800
-+ ATTR_FILE_DATALENGTH = 0x200
-+ ATTR_FILE_DEVTYPE = 0x20
-+ ATTR_FILE_FILETYPE = 0x40
-+ ATTR_FILE_FORKCOUNT = 0x80
-+ ATTR_FILE_FORKLIST = 0x100
-+ ATTR_FILE_IOBLOCKSIZE = 0x8
-+ ATTR_FILE_LINKCOUNT = 0x1
-+ ATTR_FILE_RSRCALLOCSIZE = 0x2000
-+ ATTR_FILE_RSRCEXTENTS = 0x4000
-+ ATTR_FILE_RSRCLENGTH = 0x1000
-+ ATTR_FILE_SETMASK = 0x20
-+ ATTR_FILE_TOTALSIZE = 0x2
-+ ATTR_FILE_VALIDMASK = 0x37ff
-+ ATTR_VOL_ALLOCATIONCLUMP = 0x40
-+ ATTR_VOL_ATTRIBUTES = 0x40000000
-+ ATTR_VOL_CAPABILITIES = 0x20000
-+ ATTR_VOL_DIRCOUNT = 0x400
-+ ATTR_VOL_ENCODINGSUSED = 0x10000
-+ ATTR_VOL_FILECOUNT = 0x200
-+ ATTR_VOL_FSTYPE = 0x1
-+ ATTR_VOL_INFO = 0x80000000
-+ ATTR_VOL_IOBLOCKSIZE = 0x80
-+ ATTR_VOL_MAXOBJCOUNT = 0x800
-+ ATTR_VOL_MINALLOCATION = 0x20
-+ ATTR_VOL_MOUNTEDDEVICE = 0x8000
-+ ATTR_VOL_MOUNTFLAGS = 0x4000
-+ ATTR_VOL_MOUNTPOINT = 0x1000
-+ ATTR_VOL_NAME = 0x2000
-+ ATTR_VOL_OBJCOUNT = 0x100
-+ ATTR_VOL_QUOTA_SIZE = 0x10000000
-+ ATTR_VOL_RESERVED_SIZE = 0x20000000
-+ ATTR_VOL_SETMASK = 0x80002000
-+ ATTR_VOL_SIGNATURE = 0x2
-+ ATTR_VOL_SIZE = 0x4
-+ ATTR_VOL_SPACEAVAIL = 0x10
-+ ATTR_VOL_SPACEFREE = 0x8
-+ ATTR_VOL_UUID = 0x40000
-+ ATTR_VOL_VALIDMASK = 0xf007ffff
- B0 = 0x0
- B110 = 0x6e
- B115200 = 0x1c200
-@@ -169,6 +249,8 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0xc
- CTL_NET = 0x4
- DLT_A429 = 0xb8
-@@ -390,6 +472,11 @@ const (
- FF1 = 0x4000
- FFDLY = 0x4000
- FLUSHO = 0x800000
-+ FSOPT_ATTR_CMN_EXTENDED = 0x20
-+ FSOPT_NOFOLLOW = 0x1
-+ FSOPT_NOINMEMUPDATE = 0x2
-+ FSOPT_PACK_INVAL_ATTRS = 0x8
-+ FSOPT_REPORT_FULLSIZE = 0x4
- F_ADDFILESIGS = 0x3d
- F_ADDFILESIGS_FOR_DYLD_SIM = 0x53
- F_ADDFILESIGS_RETURN = 0x61
-@@ -425,6 +512,7 @@ const (
- F_PATHPKG_CHECK = 0x34
- F_PEOFPOSMODE = 0x3
- F_PREALLOCATE = 0x2a
-+ F_PUNCHHOLE = 0x63
- F_RDADVISE = 0x2c
- F_RDAHEAD = 0x2d
- F_RDLCK = 0x1
-@@ -441,10 +529,12 @@ const (
- F_SINGLE_WRITER = 0x4c
- F_THAW_FS = 0x36
- F_TRANSCODEKEY = 0x4b
-+ F_TRIM_ACTIVE_FILE = 0x64
- F_UNLCK = 0x2
- F_VOLPOSMODE = 0x4
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
-@@ -681,6 +771,7 @@ const (
- IPV6_FAITH = 0x1d
- IPV6_FLOWINFO_MASK = 0xffffff0f
- IPV6_FLOWLABEL_MASK = 0xffff0f00
-+ IPV6_FLOW_ECN_MASK = 0x300
- IPV6_FRAGTTL = 0x3c
- IPV6_FW_ADD = 0x1e
- IPV6_FW_DEL = 0x1f
-@@ -771,6 +862,7 @@ const (
- IP_RECVOPTS = 0x5
- IP_RECVPKTINFO = 0x1a
- IP_RECVRETOPTS = 0x6
-+ IP_RECVTOS = 0x1b
- IP_RECVTTL = 0x18
- IP_RETOPTS = 0x8
- IP_RF = 0x8000
-@@ -789,6 +881,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LOCK_EX = 0x2
- LOCK_NB = 0x4
- LOCK_SH = 0x1
-@@ -884,6 +980,7 @@ const (
- NET_RT_MAXID = 0xa
- NET_RT_STAT = 0x4
- NET_RT_TRASH = 0x5
-+ NFDBITS = 0x20
- NL0 = 0x0
- NL1 = 0x100
- NL2 = 0x200
-@@ -1377,6 +1474,12 @@ const (
- WORDSIZE = 0x20
- WSTOPPED = 0x8
- WUNTRACED = 0x2
-+ XATTR_CREATE = 0x2
-+ XATTR_NODEFAULT = 0x10
-+ XATTR_NOFOLLOW = 0x1
-+ XATTR_NOSECURITY = 0x8
-+ XATTR_REPLACE = 0x4
-+ XATTR_SHOWCOMPRESSION = 0x20
- )
-
- // Errors
-@@ -1528,146 +1631,154 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "resource busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "operation timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "device power is off",
-- 83: "device error",
-- 84: "value too large to be stored in data type",
-- 85: "bad executable (or shared library)",
-- 86: "bad CPU type in executable",
-- 87: "shared library version mismatch",
-- 88: "malformed Mach-o file",
-- 89: "operation canceled",
-- 90: "identifier removed",
-- 91: "no message of desired type",
-- 92: "illegal byte sequence",
-- 93: "attribute not found",
-- 94: "bad message",
-- 95: "EMULTIHOP (Reserved)",
-- 96: "no message available on STREAM",
-- 97: "ENOLINK (Reserved)",
-- 98: "no STREAM resources",
-- 99: "not a STREAM",
-- 100: "protocol error",
-- 101: "STREAM ioctl timeout",
-- 102: "operation not supported on socket",
-- 103: "policy not found",
-- 104: "state not recoverable",
-- 105: "previous owner died",
-- 106: "interface output queue is full",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "ENOTSUP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "operation timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disc quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EPWROFF", "device power is off"},
-+ {83, "EDEVERR", "device error"},
-+ {84, "EOVERFLOW", "value too large to be stored in data type"},
-+ {85, "EBADEXEC", "bad executable (or shared library)"},
-+ {86, "EBADARCH", "bad CPU type in executable"},
-+ {87, "ESHLIBVERS", "shared library version mismatch"},
-+ {88, "EBADMACHO", "malformed Mach-o file"},
-+ {89, "ECANCELED", "operation canceled"},
-+ {90, "EIDRM", "identifier removed"},
-+ {91, "ENOMSG", "no message of desired type"},
-+ {92, "EILSEQ", "illegal byte sequence"},
-+ {93, "ENOATTR", "attribute not found"},
-+ {94, "EBADMSG", "bad message"},
-+ {95, "EMULTIHOP", "EMULTIHOP (Reserved)"},
-+ {96, "ENODATA", "no message available on STREAM"},
-+ {97, "ENOLINK", "ENOLINK (Reserved)"},
-+ {98, "ENOSR", "no STREAM resources"},
-+ {99, "ENOSTR", "not a STREAM"},
-+ {100, "EPROTO", "protocol error"},
-+ {101, "ETIME", "STREAM ioctl timeout"},
-+ {102, "EOPNOTSUPP", "operation not supported on socket"},
-+ {103, "ENOPOLICY", "policy not found"},
-+ {104, "ENOTRECOVERABLE", "state not recoverable"},
-+ {105, "EOWNERDEAD", "previous owner died"},
-+ {106, "EQFULL", "interface output queue is full"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "suspended (signal)",
-- 18: "suspended",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGABRT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "suspended (signal)"},
-+ {18, "SIGTSTP", "suspended"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
-index 48f63d4f..e3ff2ee3 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
-@@ -3,7 +3,7 @@
-
- // +build amd64,darwin
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m64 _const.go
-
- package unix
-@@ -49,6 +49,86 @@ const (
- AF_UNSPEC = 0x0
- AF_UTUN = 0x26
- ALTWERASE = 0x200
-+ ATTR_BIT_MAP_COUNT = 0x5
-+ ATTR_CMN_ACCESSMASK = 0x20000
-+ ATTR_CMN_ACCTIME = 0x1000
-+ ATTR_CMN_ADDEDTIME = 0x10000000
-+ ATTR_CMN_BKUPTIME = 0x2000
-+ ATTR_CMN_CHGTIME = 0x800
-+ ATTR_CMN_CRTIME = 0x200
-+ ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000
-+ ATTR_CMN_DEVID = 0x2
-+ ATTR_CMN_DOCUMENT_ID = 0x100000
-+ ATTR_CMN_ERROR = 0x20000000
-+ ATTR_CMN_EXTENDED_SECURITY = 0x400000
-+ ATTR_CMN_FILEID = 0x2000000
-+ ATTR_CMN_FLAGS = 0x40000
-+ ATTR_CMN_FNDRINFO = 0x4000
-+ ATTR_CMN_FSID = 0x4
-+ ATTR_CMN_FULLPATH = 0x8000000
-+ ATTR_CMN_GEN_COUNT = 0x80000
-+ ATTR_CMN_GRPID = 0x10000
-+ ATTR_CMN_GRPUUID = 0x1000000
-+ ATTR_CMN_MODTIME = 0x400
-+ ATTR_CMN_NAME = 0x1
-+ ATTR_CMN_NAMEDATTRCOUNT = 0x80000
-+ ATTR_CMN_NAMEDATTRLIST = 0x100000
-+ ATTR_CMN_OBJID = 0x20
-+ ATTR_CMN_OBJPERMANENTID = 0x40
-+ ATTR_CMN_OBJTAG = 0x10
-+ ATTR_CMN_OBJTYPE = 0x8
-+ ATTR_CMN_OWNERID = 0x8000
-+ ATTR_CMN_PARENTID = 0x4000000
-+ ATTR_CMN_PAROBJID = 0x80
-+ ATTR_CMN_RETURNED_ATTRS = 0x80000000
-+ ATTR_CMN_SCRIPT = 0x100
-+ ATTR_CMN_SETMASK = 0x41c7ff00
-+ ATTR_CMN_USERACCESS = 0x200000
-+ ATTR_CMN_UUID = 0x800000
-+ ATTR_CMN_VALIDMASK = 0xffffffff
-+ ATTR_CMN_VOLSETMASK = 0x6700
-+ ATTR_FILE_ALLOCSIZE = 0x4
-+ ATTR_FILE_CLUMPSIZE = 0x10
-+ ATTR_FILE_DATAALLOCSIZE = 0x400
-+ ATTR_FILE_DATAEXTENTS = 0x800
-+ ATTR_FILE_DATALENGTH = 0x200
-+ ATTR_FILE_DEVTYPE = 0x20
-+ ATTR_FILE_FILETYPE = 0x40
-+ ATTR_FILE_FORKCOUNT = 0x80
-+ ATTR_FILE_FORKLIST = 0x100
-+ ATTR_FILE_IOBLOCKSIZE = 0x8
-+ ATTR_FILE_LINKCOUNT = 0x1
-+ ATTR_FILE_RSRCALLOCSIZE = 0x2000
-+ ATTR_FILE_RSRCEXTENTS = 0x4000
-+ ATTR_FILE_RSRCLENGTH = 0x1000
-+ ATTR_FILE_SETMASK = 0x20
-+ ATTR_FILE_TOTALSIZE = 0x2
-+ ATTR_FILE_VALIDMASK = 0x37ff
-+ ATTR_VOL_ALLOCATIONCLUMP = 0x40
-+ ATTR_VOL_ATTRIBUTES = 0x40000000
-+ ATTR_VOL_CAPABILITIES = 0x20000
-+ ATTR_VOL_DIRCOUNT = 0x400
-+ ATTR_VOL_ENCODINGSUSED = 0x10000
-+ ATTR_VOL_FILECOUNT = 0x200
-+ ATTR_VOL_FSTYPE = 0x1
-+ ATTR_VOL_INFO = 0x80000000
-+ ATTR_VOL_IOBLOCKSIZE = 0x80
-+ ATTR_VOL_MAXOBJCOUNT = 0x800
-+ ATTR_VOL_MINALLOCATION = 0x20
-+ ATTR_VOL_MOUNTEDDEVICE = 0x8000
-+ ATTR_VOL_MOUNTFLAGS = 0x4000
-+ ATTR_VOL_MOUNTPOINT = 0x1000
-+ ATTR_VOL_NAME = 0x2000
-+ ATTR_VOL_OBJCOUNT = 0x100
-+ ATTR_VOL_QUOTA_SIZE = 0x10000000
-+ ATTR_VOL_RESERVED_SIZE = 0x20000000
-+ ATTR_VOL_SETMASK = 0x80002000
-+ ATTR_VOL_SIGNATURE = 0x2
-+ ATTR_VOL_SIZE = 0x4
-+ ATTR_VOL_SPACEAVAIL = 0x10
-+ ATTR_VOL_SPACEFREE = 0x8
-+ ATTR_VOL_UUID = 0x40000
-+ ATTR_VOL_VALIDMASK = 0xf007ffff
- B0 = 0x0
- B110 = 0x6e
- B115200 = 0x1c200
-@@ -169,6 +249,8 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0xc
- CTL_NET = 0x4
- DLT_A429 = 0xb8
-@@ -390,6 +472,11 @@ const (
- FF1 = 0x4000
- FFDLY = 0x4000
- FLUSHO = 0x800000
-+ FSOPT_ATTR_CMN_EXTENDED = 0x20
-+ FSOPT_NOFOLLOW = 0x1
-+ FSOPT_NOINMEMUPDATE = 0x2
-+ FSOPT_PACK_INVAL_ATTRS = 0x8
-+ FSOPT_REPORT_FULLSIZE = 0x4
- F_ADDFILESIGS = 0x3d
- F_ADDFILESIGS_FOR_DYLD_SIM = 0x53
- F_ADDFILESIGS_RETURN = 0x61
-@@ -425,6 +512,7 @@ const (
- F_PATHPKG_CHECK = 0x34
- F_PEOFPOSMODE = 0x3
- F_PREALLOCATE = 0x2a
-+ F_PUNCHHOLE = 0x63
- F_RDADVISE = 0x2c
- F_RDAHEAD = 0x2d
- F_RDLCK = 0x1
-@@ -441,10 +529,12 @@ const (
- F_SINGLE_WRITER = 0x4c
- F_THAW_FS = 0x36
- F_TRANSCODEKEY = 0x4b
-+ F_TRIM_ACTIVE_FILE = 0x64
- F_UNLCK = 0x2
- F_VOLPOSMODE = 0x4
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
-@@ -681,6 +771,7 @@ const (
- IPV6_FAITH = 0x1d
- IPV6_FLOWINFO_MASK = 0xffffff0f
- IPV6_FLOWLABEL_MASK = 0xffff0f00
-+ IPV6_FLOW_ECN_MASK = 0x300
- IPV6_FRAGTTL = 0x3c
- IPV6_FW_ADD = 0x1e
- IPV6_FW_DEL = 0x1f
-@@ -771,6 +862,7 @@ const (
- IP_RECVOPTS = 0x5
- IP_RECVPKTINFO = 0x1a
- IP_RECVRETOPTS = 0x6
-+ IP_RECVTOS = 0x1b
- IP_RECVTTL = 0x18
- IP_RETOPTS = 0x8
- IP_RF = 0x8000
-@@ -789,6 +881,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LOCK_EX = 0x2
- LOCK_NB = 0x4
- LOCK_SH = 0x1
-@@ -884,6 +980,7 @@ const (
- NET_RT_MAXID = 0xa
- NET_RT_STAT = 0x4
- NET_RT_TRASH = 0x5
-+ NFDBITS = 0x20
- NL0 = 0x0
- NL1 = 0x100
- NL2 = 0x200
-@@ -1377,6 +1474,12 @@ const (
- WORDSIZE = 0x40
- WSTOPPED = 0x8
- WUNTRACED = 0x2
-+ XATTR_CREATE = 0x2
-+ XATTR_NODEFAULT = 0x10
-+ XATTR_NOFOLLOW = 0x1
-+ XATTR_NOSECURITY = 0x8
-+ XATTR_REPLACE = 0x4
-+ XATTR_SHOWCOMPRESSION = 0x20
- )
-
- // Errors
-@@ -1528,146 +1631,154 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "resource busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "operation timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "device power is off",
-- 83: "device error",
-- 84: "value too large to be stored in data type",
-- 85: "bad executable (or shared library)",
-- 86: "bad CPU type in executable",
-- 87: "shared library version mismatch",
-- 88: "malformed Mach-o file",
-- 89: "operation canceled",
-- 90: "identifier removed",
-- 91: "no message of desired type",
-- 92: "illegal byte sequence",
-- 93: "attribute not found",
-- 94: "bad message",
-- 95: "EMULTIHOP (Reserved)",
-- 96: "no message available on STREAM",
-- 97: "ENOLINK (Reserved)",
-- 98: "no STREAM resources",
-- 99: "not a STREAM",
-- 100: "protocol error",
-- 101: "STREAM ioctl timeout",
-- 102: "operation not supported on socket",
-- 103: "policy not found",
-- 104: "state not recoverable",
-- 105: "previous owner died",
-- 106: "interface output queue is full",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "ENOTSUP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "operation timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disc quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EPWROFF", "device power is off"},
-+ {83, "EDEVERR", "device error"},
-+ {84, "EOVERFLOW", "value too large to be stored in data type"},
-+ {85, "EBADEXEC", "bad executable (or shared library)"},
-+ {86, "EBADARCH", "bad CPU type in executable"},
-+ {87, "ESHLIBVERS", "shared library version mismatch"},
-+ {88, "EBADMACHO", "malformed Mach-o file"},
-+ {89, "ECANCELED", "operation canceled"},
-+ {90, "EIDRM", "identifier removed"},
-+ {91, "ENOMSG", "no message of desired type"},
-+ {92, "EILSEQ", "illegal byte sequence"},
-+ {93, "ENOATTR", "attribute not found"},
-+ {94, "EBADMSG", "bad message"},
-+ {95, "EMULTIHOP", "EMULTIHOP (Reserved)"},
-+ {96, "ENODATA", "no message available on STREAM"},
-+ {97, "ENOLINK", "ENOLINK (Reserved)"},
-+ {98, "ENOSR", "no STREAM resources"},
-+ {99, "ENOSTR", "not a STREAM"},
-+ {100, "EPROTO", "protocol error"},
-+ {101, "ETIME", "STREAM ioctl timeout"},
-+ {102, "EOPNOTSUPP", "operation not supported on socket"},
-+ {103, "ENOPOLICY", "policy not found"},
-+ {104, "ENOTRECOVERABLE", "state not recoverable"},
-+ {105, "EOWNERDEAD", "previous owner died"},
-+ {106, "EQFULL", "interface output queue is full"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "suspended (signal)",
-- 18: "suspended",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGABRT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "suspended (signal)"},
-+ {18, "SIGTSTP", "suspended"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go
-index 24cb522d..3e417571 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go
-@@ -3,7 +3,7 @@
-
- // +build arm,darwin
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- _const.go
-
- package unix
-@@ -49,6 +49,86 @@ const (
- AF_UNSPEC = 0x0
- AF_UTUN = 0x26
- ALTWERASE = 0x200
-+ ATTR_BIT_MAP_COUNT = 0x5
-+ ATTR_CMN_ACCESSMASK = 0x20000
-+ ATTR_CMN_ACCTIME = 0x1000
-+ ATTR_CMN_ADDEDTIME = 0x10000000
-+ ATTR_CMN_BKUPTIME = 0x2000
-+ ATTR_CMN_CHGTIME = 0x800
-+ ATTR_CMN_CRTIME = 0x200
-+ ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000
-+ ATTR_CMN_DEVID = 0x2
-+ ATTR_CMN_DOCUMENT_ID = 0x100000
-+ ATTR_CMN_ERROR = 0x20000000
-+ ATTR_CMN_EXTENDED_SECURITY = 0x400000
-+ ATTR_CMN_FILEID = 0x2000000
-+ ATTR_CMN_FLAGS = 0x40000
-+ ATTR_CMN_FNDRINFO = 0x4000
-+ ATTR_CMN_FSID = 0x4
-+ ATTR_CMN_FULLPATH = 0x8000000
-+ ATTR_CMN_GEN_COUNT = 0x80000
-+ ATTR_CMN_GRPID = 0x10000
-+ ATTR_CMN_GRPUUID = 0x1000000
-+ ATTR_CMN_MODTIME = 0x400
-+ ATTR_CMN_NAME = 0x1
-+ ATTR_CMN_NAMEDATTRCOUNT = 0x80000
-+ ATTR_CMN_NAMEDATTRLIST = 0x100000
-+ ATTR_CMN_OBJID = 0x20
-+ ATTR_CMN_OBJPERMANENTID = 0x40
-+ ATTR_CMN_OBJTAG = 0x10
-+ ATTR_CMN_OBJTYPE = 0x8
-+ ATTR_CMN_OWNERID = 0x8000
-+ ATTR_CMN_PARENTID = 0x4000000
-+ ATTR_CMN_PAROBJID = 0x80
-+ ATTR_CMN_RETURNED_ATTRS = 0x80000000
-+ ATTR_CMN_SCRIPT = 0x100
-+ ATTR_CMN_SETMASK = 0x41c7ff00
-+ ATTR_CMN_USERACCESS = 0x200000
-+ ATTR_CMN_UUID = 0x800000
-+ ATTR_CMN_VALIDMASK = 0xffffffff
-+ ATTR_CMN_VOLSETMASK = 0x6700
-+ ATTR_FILE_ALLOCSIZE = 0x4
-+ ATTR_FILE_CLUMPSIZE = 0x10
-+ ATTR_FILE_DATAALLOCSIZE = 0x400
-+ ATTR_FILE_DATAEXTENTS = 0x800
-+ ATTR_FILE_DATALENGTH = 0x200
-+ ATTR_FILE_DEVTYPE = 0x20
-+ ATTR_FILE_FILETYPE = 0x40
-+ ATTR_FILE_FORKCOUNT = 0x80
-+ ATTR_FILE_FORKLIST = 0x100
-+ ATTR_FILE_IOBLOCKSIZE = 0x8
-+ ATTR_FILE_LINKCOUNT = 0x1
-+ ATTR_FILE_RSRCALLOCSIZE = 0x2000
-+ ATTR_FILE_RSRCEXTENTS = 0x4000
-+ ATTR_FILE_RSRCLENGTH = 0x1000
-+ ATTR_FILE_SETMASK = 0x20
-+ ATTR_FILE_TOTALSIZE = 0x2
-+ ATTR_FILE_VALIDMASK = 0x37ff
-+ ATTR_VOL_ALLOCATIONCLUMP = 0x40
-+ ATTR_VOL_ATTRIBUTES = 0x40000000
-+ ATTR_VOL_CAPABILITIES = 0x20000
-+ ATTR_VOL_DIRCOUNT = 0x400
-+ ATTR_VOL_ENCODINGSUSED = 0x10000
-+ ATTR_VOL_FILECOUNT = 0x200
-+ ATTR_VOL_FSTYPE = 0x1
-+ ATTR_VOL_INFO = 0x80000000
-+ ATTR_VOL_IOBLOCKSIZE = 0x80
-+ ATTR_VOL_MAXOBJCOUNT = 0x800
-+ ATTR_VOL_MINALLOCATION = 0x20
-+ ATTR_VOL_MOUNTEDDEVICE = 0x8000
-+ ATTR_VOL_MOUNTFLAGS = 0x4000
-+ ATTR_VOL_MOUNTPOINT = 0x1000
-+ ATTR_VOL_NAME = 0x2000
-+ ATTR_VOL_OBJCOUNT = 0x100
-+ ATTR_VOL_QUOTA_SIZE = 0x10000000
-+ ATTR_VOL_RESERVED_SIZE = 0x20000000
-+ ATTR_VOL_SETMASK = 0x80002000
-+ ATTR_VOL_SIGNATURE = 0x2
-+ ATTR_VOL_SIZE = 0x4
-+ ATTR_VOL_SPACEAVAIL = 0x10
-+ ATTR_VOL_SPACEFREE = 0x8
-+ ATTR_VOL_UUID = 0x40000
-+ ATTR_VOL_VALIDMASK = 0xf007ffff
- B0 = 0x0
- B110 = 0x6e
- B115200 = 0x1c200
-@@ -169,6 +249,8 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0xc
- CTL_NET = 0x4
- DLT_A429 = 0xb8
-@@ -390,6 +472,11 @@ const (
- FF1 = 0x4000
- FFDLY = 0x4000
- FLUSHO = 0x800000
-+ FSOPT_ATTR_CMN_EXTENDED = 0x20
-+ FSOPT_NOFOLLOW = 0x1
-+ FSOPT_NOINMEMUPDATE = 0x2
-+ FSOPT_PACK_INVAL_ATTRS = 0x8
-+ FSOPT_REPORT_FULLSIZE = 0x4
- F_ADDFILESIGS = 0x3d
- F_ADDFILESIGS_FOR_DYLD_SIM = 0x53
- F_ADDFILESIGS_RETURN = 0x61
-@@ -425,6 +512,7 @@ const (
- F_PATHPKG_CHECK = 0x34
- F_PEOFPOSMODE = 0x3
- F_PREALLOCATE = 0x2a
-+ F_PUNCHHOLE = 0x63
- F_RDADVISE = 0x2c
- F_RDAHEAD = 0x2d
- F_RDLCK = 0x1
-@@ -441,10 +529,12 @@ const (
- F_SINGLE_WRITER = 0x4c
- F_THAW_FS = 0x36
- F_TRANSCODEKEY = 0x4b
-+ F_TRIM_ACTIVE_FILE = 0x64
- F_UNLCK = 0x2
- F_VOLPOSMODE = 0x4
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
-@@ -681,6 +771,7 @@ const (
- IPV6_FAITH = 0x1d
- IPV6_FLOWINFO_MASK = 0xffffff0f
- IPV6_FLOWLABEL_MASK = 0xffff0f00
-+ IPV6_FLOW_ECN_MASK = 0x300
- IPV6_FRAGTTL = 0x3c
- IPV6_FW_ADD = 0x1e
- IPV6_FW_DEL = 0x1f
-@@ -771,6 +862,7 @@ const (
- IP_RECVOPTS = 0x5
- IP_RECVPKTINFO = 0x1a
- IP_RECVRETOPTS = 0x6
-+ IP_RECVTOS = 0x1b
- IP_RECVTTL = 0x18
- IP_RETOPTS = 0x8
- IP_RF = 0x8000
-@@ -789,6 +881,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LOCK_EX = 0x2
- LOCK_NB = 0x4
- LOCK_SH = 0x1
-@@ -884,6 +980,7 @@ const (
- NET_RT_MAXID = 0xa
- NET_RT_STAT = 0x4
- NET_RT_TRASH = 0x5
-+ NFDBITS = 0x20
- NL0 = 0x0
- NL1 = 0x100
- NL2 = 0x200
-@@ -1377,6 +1474,12 @@ const (
- WORDSIZE = 0x40
- WSTOPPED = 0x8
- WUNTRACED = 0x2
-+ XATTR_CREATE = 0x2
-+ XATTR_NODEFAULT = 0x10
-+ XATTR_NOFOLLOW = 0x1
-+ XATTR_NOSECURITY = 0x8
-+ XATTR_REPLACE = 0x4
-+ XATTR_SHOWCOMPRESSION = 0x20
- )
-
- // Errors
-@@ -1528,146 +1631,154 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "resource busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "operation timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "device power is off",
-- 83: "device error",
-- 84: "value too large to be stored in data type",
-- 85: "bad executable (or shared library)",
-- 86: "bad CPU type in executable",
-- 87: "shared library version mismatch",
-- 88: "malformed Mach-o file",
-- 89: "operation canceled",
-- 90: "identifier removed",
-- 91: "no message of desired type",
-- 92: "illegal byte sequence",
-- 93: "attribute not found",
-- 94: "bad message",
-- 95: "EMULTIHOP (Reserved)",
-- 96: "no message available on STREAM",
-- 97: "ENOLINK (Reserved)",
-- 98: "no STREAM resources",
-- 99: "not a STREAM",
-- 100: "protocol error",
-- 101: "STREAM ioctl timeout",
-- 102: "operation not supported on socket",
-- 103: "policy not found",
-- 104: "state not recoverable",
-- 105: "previous owner died",
-- 106: "interface output queue is full",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "ENOTSUP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "operation timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disc quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EPWROFF", "device power is off"},
-+ {83, "EDEVERR", "device error"},
-+ {84, "EOVERFLOW", "value too large to be stored in data type"},
-+ {85, "EBADEXEC", "bad executable (or shared library)"},
-+ {86, "EBADARCH", "bad CPU type in executable"},
-+ {87, "ESHLIBVERS", "shared library version mismatch"},
-+ {88, "EBADMACHO", "malformed Mach-o file"},
-+ {89, "ECANCELED", "operation canceled"},
-+ {90, "EIDRM", "identifier removed"},
-+ {91, "ENOMSG", "no message of desired type"},
-+ {92, "EILSEQ", "illegal byte sequence"},
-+ {93, "ENOATTR", "attribute not found"},
-+ {94, "EBADMSG", "bad message"},
-+ {95, "EMULTIHOP", "EMULTIHOP (Reserved)"},
-+ {96, "ENODATA", "no message available on STREAM"},
-+ {97, "ENOLINK", "ENOLINK (Reserved)"},
-+ {98, "ENOSR", "no STREAM resources"},
-+ {99, "ENOSTR", "not a STREAM"},
-+ {100, "EPROTO", "protocol error"},
-+ {101, "ETIME", "STREAM ioctl timeout"},
-+ {102, "EOPNOTSUPP", "operation not supported on socket"},
-+ {103, "ENOPOLICY", "policy not found"},
-+ {104, "ENOTRECOVERABLE", "state not recoverable"},
-+ {105, "EOWNERDEAD", "previous owner died"},
-+ {106, "EQFULL", "interface output queue is full"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "suspended (signal)",
-- 18: "suspended",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGABRT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "suspended (signal)"},
-+ {18, "SIGTSTP", "suspended"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
-index cc8cc5b5..cbd8ed18 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
-@@ -3,7 +3,7 @@
-
- // +build arm64,darwin
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m64 _const.go
-
- package unix
-@@ -49,6 +49,86 @@ const (
- AF_UNSPEC = 0x0
- AF_UTUN = 0x26
- ALTWERASE = 0x200
-+ ATTR_BIT_MAP_COUNT = 0x5
-+ ATTR_CMN_ACCESSMASK = 0x20000
-+ ATTR_CMN_ACCTIME = 0x1000
-+ ATTR_CMN_ADDEDTIME = 0x10000000
-+ ATTR_CMN_BKUPTIME = 0x2000
-+ ATTR_CMN_CHGTIME = 0x800
-+ ATTR_CMN_CRTIME = 0x200
-+ ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000
-+ ATTR_CMN_DEVID = 0x2
-+ ATTR_CMN_DOCUMENT_ID = 0x100000
-+ ATTR_CMN_ERROR = 0x20000000
-+ ATTR_CMN_EXTENDED_SECURITY = 0x400000
-+ ATTR_CMN_FILEID = 0x2000000
-+ ATTR_CMN_FLAGS = 0x40000
-+ ATTR_CMN_FNDRINFO = 0x4000
-+ ATTR_CMN_FSID = 0x4
-+ ATTR_CMN_FULLPATH = 0x8000000
-+ ATTR_CMN_GEN_COUNT = 0x80000
-+ ATTR_CMN_GRPID = 0x10000
-+ ATTR_CMN_GRPUUID = 0x1000000
-+ ATTR_CMN_MODTIME = 0x400
-+ ATTR_CMN_NAME = 0x1
-+ ATTR_CMN_NAMEDATTRCOUNT = 0x80000
-+ ATTR_CMN_NAMEDATTRLIST = 0x100000
-+ ATTR_CMN_OBJID = 0x20
-+ ATTR_CMN_OBJPERMANENTID = 0x40
-+ ATTR_CMN_OBJTAG = 0x10
-+ ATTR_CMN_OBJTYPE = 0x8
-+ ATTR_CMN_OWNERID = 0x8000
-+ ATTR_CMN_PARENTID = 0x4000000
-+ ATTR_CMN_PAROBJID = 0x80
-+ ATTR_CMN_RETURNED_ATTRS = 0x80000000
-+ ATTR_CMN_SCRIPT = 0x100
-+ ATTR_CMN_SETMASK = 0x41c7ff00
-+ ATTR_CMN_USERACCESS = 0x200000
-+ ATTR_CMN_UUID = 0x800000
-+ ATTR_CMN_VALIDMASK = 0xffffffff
-+ ATTR_CMN_VOLSETMASK = 0x6700
-+ ATTR_FILE_ALLOCSIZE = 0x4
-+ ATTR_FILE_CLUMPSIZE = 0x10
-+ ATTR_FILE_DATAALLOCSIZE = 0x400
-+ ATTR_FILE_DATAEXTENTS = 0x800
-+ ATTR_FILE_DATALENGTH = 0x200
-+ ATTR_FILE_DEVTYPE = 0x20
-+ ATTR_FILE_FILETYPE = 0x40
-+ ATTR_FILE_FORKCOUNT = 0x80
-+ ATTR_FILE_FORKLIST = 0x100
-+ ATTR_FILE_IOBLOCKSIZE = 0x8
-+ ATTR_FILE_LINKCOUNT = 0x1
-+ ATTR_FILE_RSRCALLOCSIZE = 0x2000
-+ ATTR_FILE_RSRCEXTENTS = 0x4000
-+ ATTR_FILE_RSRCLENGTH = 0x1000
-+ ATTR_FILE_SETMASK = 0x20
-+ ATTR_FILE_TOTALSIZE = 0x2
-+ ATTR_FILE_VALIDMASK = 0x37ff
-+ ATTR_VOL_ALLOCATIONCLUMP = 0x40
-+ ATTR_VOL_ATTRIBUTES = 0x40000000
-+ ATTR_VOL_CAPABILITIES = 0x20000
-+ ATTR_VOL_DIRCOUNT = 0x400
-+ ATTR_VOL_ENCODINGSUSED = 0x10000
-+ ATTR_VOL_FILECOUNT = 0x200
-+ ATTR_VOL_FSTYPE = 0x1
-+ ATTR_VOL_INFO = 0x80000000
-+ ATTR_VOL_IOBLOCKSIZE = 0x80
-+ ATTR_VOL_MAXOBJCOUNT = 0x800
-+ ATTR_VOL_MINALLOCATION = 0x20
-+ ATTR_VOL_MOUNTEDDEVICE = 0x8000
-+ ATTR_VOL_MOUNTFLAGS = 0x4000
-+ ATTR_VOL_MOUNTPOINT = 0x1000
-+ ATTR_VOL_NAME = 0x2000
-+ ATTR_VOL_OBJCOUNT = 0x100
-+ ATTR_VOL_QUOTA_SIZE = 0x10000000
-+ ATTR_VOL_RESERVED_SIZE = 0x20000000
-+ ATTR_VOL_SETMASK = 0x80002000
-+ ATTR_VOL_SIGNATURE = 0x2
-+ ATTR_VOL_SIZE = 0x4
-+ ATTR_VOL_SPACEAVAIL = 0x10
-+ ATTR_VOL_SPACEFREE = 0x8
-+ ATTR_VOL_UUID = 0x40000
-+ ATTR_VOL_VALIDMASK = 0xf007ffff
- B0 = 0x0
- B110 = 0x6e
- B115200 = 0x1c200
-@@ -169,6 +249,8 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0xc
- CTL_NET = 0x4
- DLT_A429 = 0xb8
-@@ -390,6 +472,11 @@ const (
- FF1 = 0x4000
- FFDLY = 0x4000
- FLUSHO = 0x800000
-+ FSOPT_ATTR_CMN_EXTENDED = 0x20
-+ FSOPT_NOFOLLOW = 0x1
-+ FSOPT_NOINMEMUPDATE = 0x2
-+ FSOPT_PACK_INVAL_ATTRS = 0x8
-+ FSOPT_REPORT_FULLSIZE = 0x4
- F_ADDFILESIGS = 0x3d
- F_ADDFILESIGS_FOR_DYLD_SIM = 0x53
- F_ADDFILESIGS_RETURN = 0x61
-@@ -425,6 +512,7 @@ const (
- F_PATHPKG_CHECK = 0x34
- F_PEOFPOSMODE = 0x3
- F_PREALLOCATE = 0x2a
-+ F_PUNCHHOLE = 0x63
- F_RDADVISE = 0x2c
- F_RDAHEAD = 0x2d
- F_RDLCK = 0x1
-@@ -441,10 +529,12 @@ const (
- F_SINGLE_WRITER = 0x4c
- F_THAW_FS = 0x36
- F_TRANSCODEKEY = 0x4b
-+ F_TRIM_ACTIVE_FILE = 0x64
- F_UNLCK = 0x2
- F_VOLPOSMODE = 0x4
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
-@@ -681,6 +771,7 @@ const (
- IPV6_FAITH = 0x1d
- IPV6_FLOWINFO_MASK = 0xffffff0f
- IPV6_FLOWLABEL_MASK = 0xffff0f00
-+ IPV6_FLOW_ECN_MASK = 0x300
- IPV6_FRAGTTL = 0x3c
- IPV6_FW_ADD = 0x1e
- IPV6_FW_DEL = 0x1f
-@@ -771,6 +862,7 @@ const (
- IP_RECVOPTS = 0x5
- IP_RECVPKTINFO = 0x1a
- IP_RECVRETOPTS = 0x6
-+ IP_RECVTOS = 0x1b
- IP_RECVTTL = 0x18
- IP_RETOPTS = 0x8
- IP_RF = 0x8000
-@@ -789,6 +881,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LOCK_EX = 0x2
- LOCK_NB = 0x4
- LOCK_SH = 0x1
-@@ -884,6 +980,7 @@ const (
- NET_RT_MAXID = 0xa
- NET_RT_STAT = 0x4
- NET_RT_TRASH = 0x5
-+ NFDBITS = 0x20
- NL0 = 0x0
- NL1 = 0x100
- NL2 = 0x200
-@@ -1377,6 +1474,12 @@ const (
- WORDSIZE = 0x40
- WSTOPPED = 0x8
- WUNTRACED = 0x2
-+ XATTR_CREATE = 0x2
-+ XATTR_NODEFAULT = 0x10
-+ XATTR_NOFOLLOW = 0x1
-+ XATTR_NOSECURITY = 0x8
-+ XATTR_REPLACE = 0x4
-+ XATTR_SHOWCOMPRESSION = 0x20
- )
-
- // Errors
-@@ -1528,146 +1631,154 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "resource busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "operation timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "device power is off",
-- 83: "device error",
-- 84: "value too large to be stored in data type",
-- 85: "bad executable (or shared library)",
-- 86: "bad CPU type in executable",
-- 87: "shared library version mismatch",
-- 88: "malformed Mach-o file",
-- 89: "operation canceled",
-- 90: "identifier removed",
-- 91: "no message of desired type",
-- 92: "illegal byte sequence",
-- 93: "attribute not found",
-- 94: "bad message",
-- 95: "EMULTIHOP (Reserved)",
-- 96: "no message available on STREAM",
-- 97: "ENOLINK (Reserved)",
-- 98: "no STREAM resources",
-- 99: "not a STREAM",
-- 100: "protocol error",
-- 101: "STREAM ioctl timeout",
-- 102: "operation not supported on socket",
-- 103: "policy not found",
-- 104: "state not recoverable",
-- 105: "previous owner died",
-- 106: "interface output queue is full",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "ENOTSUP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "operation timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disc quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EPWROFF", "device power is off"},
-+ {83, "EDEVERR", "device error"},
-+ {84, "EOVERFLOW", "value too large to be stored in data type"},
-+ {85, "EBADEXEC", "bad executable (or shared library)"},
-+ {86, "EBADARCH", "bad CPU type in executable"},
-+ {87, "ESHLIBVERS", "shared library version mismatch"},
-+ {88, "EBADMACHO", "malformed Mach-o file"},
-+ {89, "ECANCELED", "operation canceled"},
-+ {90, "EIDRM", "identifier removed"},
-+ {91, "ENOMSG", "no message of desired type"},
-+ {92, "EILSEQ", "illegal byte sequence"},
-+ {93, "ENOATTR", "attribute not found"},
-+ {94, "EBADMSG", "bad message"},
-+ {95, "EMULTIHOP", "EMULTIHOP (Reserved)"},
-+ {96, "ENODATA", "no message available on STREAM"},
-+ {97, "ENOLINK", "ENOLINK (Reserved)"},
-+ {98, "ENOSR", "no STREAM resources"},
-+ {99, "ENOSTR", "not a STREAM"},
-+ {100, "EPROTO", "protocol error"},
-+ {101, "ETIME", "STREAM ioctl timeout"},
-+ {102, "EOPNOTSUPP", "operation not supported on socket"},
-+ {103, "ENOPOLICY", "policy not found"},
-+ {104, "ENOTRECOVERABLE", "state not recoverable"},
-+ {105, "EOWNERDEAD", "previous owner died"},
-+ {106, "EQFULL", "interface output queue is full"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "suspended (signal)",
-- 18: "suspended",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGABRT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "suspended (signal)"},
-+ {18, "SIGTSTP", "suspended"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
-index 8f40598b..61304717 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
-@@ -3,7 +3,7 @@
-
- // +build amd64,dragonfly
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m64 _const.go
-
- package unix
-@@ -168,6 +168,8 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0xc
- CTL_NET = 0x4
- DLT_A429 = 0xb8
-@@ -353,6 +355,7 @@ const (
- F_UNLCK = 0x2
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
-@@ -835,6 +838,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LOCK_EX = 0x2
- LOCK_NB = 0x4
- LOCK_SH = 0x1
-@@ -873,6 +880,40 @@ const (
- MAP_VPAGETABLE = 0x2000
- MCL_CURRENT = 0x1
- MCL_FUTURE = 0x2
-+ MNT_ASYNC = 0x40
-+ MNT_AUTOMOUNTED = 0x20
-+ MNT_CMDFLAGS = 0xf0000
-+ MNT_DEFEXPORTED = 0x200
-+ MNT_DELEXPORT = 0x20000
-+ MNT_EXKERB = 0x800
-+ MNT_EXPORTANON = 0x400
-+ MNT_EXPORTED = 0x100
-+ MNT_EXPUBLIC = 0x20000000
-+ MNT_EXRDONLY = 0x80
-+ MNT_FORCE = 0x80000
-+ MNT_IGNORE = 0x800000
-+ MNT_LAZY = 0x4
-+ MNT_LOCAL = 0x1000
-+ MNT_NOATIME = 0x10000000
-+ MNT_NOCLUSTERR = 0x40000000
-+ MNT_NOCLUSTERW = 0x80000000
-+ MNT_NODEV = 0x10
-+ MNT_NOEXEC = 0x4
-+ MNT_NOSUID = 0x8
-+ MNT_NOSYMFOLLOW = 0x400000
-+ MNT_NOWAIT = 0x2
-+ MNT_QUOTA = 0x2000
-+ MNT_RDONLY = 0x1
-+ MNT_RELOAD = 0x40000
-+ MNT_ROOTFS = 0x4000
-+ MNT_SOFTDEP = 0x200000
-+ MNT_SUIDDIR = 0x100000
-+ MNT_SYNCHRONOUS = 0x2
-+ MNT_TRIM = 0x1000000
-+ MNT_UPDATE = 0x10000
-+ MNT_USER = 0x8000
-+ MNT_VISFLAGMASK = 0xf1f0ffff
-+ MNT_WAIT = 0x1
- MSG_CMSG_CLOEXEC = 0x1000
- MSG_CTRUNC = 0x20
- MSG_DONTROUTE = 0x4
-@@ -897,6 +938,7 @@ const (
- NET_RT_FLAGS = 0x2
- NET_RT_IFLIST = 0x3
- NET_RT_MAXID = 0x4
-+ NFDBITS = 0x40
- NOFLSH = 0x80000000
- NOKERNINFO = 0x2000000
- NOTE_ATTRIB = 0x8
-@@ -973,7 +1015,10 @@ const (
- RLIMIT_CPU = 0x0
- RLIMIT_DATA = 0x2
- RLIMIT_FSIZE = 0x1
-+ RLIMIT_MEMLOCK = 0x6
- RLIMIT_NOFILE = 0x8
-+ RLIMIT_NPROC = 0x7
-+ RLIMIT_RSS = 0x5
- RLIMIT_STACK = 0x3
- RLIM_INFINITY = 0x7fffffffffffffff
- RTAX_AUTHOR = 0x6
-@@ -1158,6 +1203,36 @@ const (
- SO_TIMESTAMP = 0x400
- SO_TYPE = 0x1008
- SO_USELOOPBACK = 0x40
-+ S_BLKSIZE = 0x200
-+ S_IEXEC = 0x40
-+ S_IFBLK = 0x6000
-+ S_IFCHR = 0x2000
-+ S_IFDB = 0x9000
-+ S_IFDIR = 0x4000
-+ S_IFIFO = 0x1000
-+ S_IFLNK = 0xa000
-+ S_IFMT = 0xf000
-+ S_IFREG = 0x8000
-+ S_IFSOCK = 0xc000
-+ S_IFWHT = 0xe000
-+ S_IREAD = 0x100
-+ S_IRGRP = 0x20
-+ S_IROTH = 0x4
-+ S_IRUSR = 0x100
-+ S_IRWXG = 0x38
-+ S_IRWXO = 0x7
-+ S_IRWXU = 0x1c0
-+ S_ISGID = 0x400
-+ S_ISTXT = 0x200
-+ S_ISUID = 0x800
-+ S_ISVTX = 0x200
-+ S_IWGRP = 0x10
-+ S_IWOTH = 0x2
-+ S_IWRITE = 0x80
-+ S_IWUSR = 0x80
-+ S_IXGRP = 0x8
-+ S_IXOTH = 0x1
-+ S_IXUSR = 0x40
- TCIFLUSH = 0x1
- TCIOFF = 0x3
- TCIOFLUSH = 0x3
-@@ -1427,142 +1502,150 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "operation timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "identifier removed",
-- 83: "no message of desired type",
-- 84: "value too large to be stored in data type",
-- 85: "operation canceled",
-- 86: "illegal byte sequence",
-- 87: "attribute not found",
-- 88: "programming error",
-- 89: "bad message",
-- 90: "multihop attempted",
-- 91: "link has been severed",
-- 92: "protocol error",
-- 93: "no medium found",
-- 94: "unknown error: 94",
-- 95: "unknown error: 95",
-- 96: "unknown error: 96",
-- 97: "unknown error: 97",
-- 98: "unknown error: 98",
-- 99: "unknown error: 99",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "EWOULDBLOCK", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "EOPNOTSUPP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "operation timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disc quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EIDRM", "identifier removed"},
-+ {83, "ENOMSG", "no message of desired type"},
-+ {84, "EOVERFLOW", "value too large to be stored in data type"},
-+ {85, "ECANCELED", "operation canceled"},
-+ {86, "EILSEQ", "illegal byte sequence"},
-+ {87, "ENOATTR", "attribute not found"},
-+ {88, "EDOOFUS", "programming error"},
-+ {89, "EBADMSG", "bad message"},
-+ {90, "EMULTIHOP", "multihop attempted"},
-+ {91, "ENOLINK", "link has been severed"},
-+ {92, "EPROTO", "protocol error"},
-+ {93, "ENOMEDIUM", "no medium found"},
-+ {94, "EUNUSED94", "unknown error: 94"},
-+ {95, "EUNUSED95", "unknown error: 95"},
-+ {96, "EUNUSED96", "unknown error: 96"},
-+ {97, "EUNUSED97", "unknown error: 97"},
-+ {98, "EUNUSED98", "unknown error: 98"},
-+ {99, "ELAST", "unknown error: 99"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "suspended (signal)",
-- 18: "suspended",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-- 32: "thread Scheduler",
-- 33: "checkPoint",
-- 34: "checkPointExit",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGIOT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "suspended (signal)"},
-+ {18, "SIGTSTP", "suspended"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGTHR", "thread Scheduler"},
-+ {33, "SIGCKPT", "checkPoint"},
-+ {34, "SIGCKPTEXIT", "checkPointExit"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go
-index 1d3eec44..84824587 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go
-@@ -3,7 +3,7 @@
-
- // +build 386,freebsd
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m32 _const.go
-
- package unix
-@@ -351,8 +351,26 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0x18
- CTL_NET = 0x4
-+ DIOCGATTR = 0xc144648e
-+ DIOCGDELETE = 0x80106488
-+ DIOCGFLUSH = 0x20006487
-+ DIOCGFRONTSTUFF = 0x40086486
-+ DIOCGFWHEADS = 0x40046483
-+ DIOCGFWSECTORS = 0x40046482
-+ DIOCGIDENT = 0x41006489
-+ DIOCGMEDIASIZE = 0x40086481
-+ DIOCGPHYSPATH = 0x4400648d
-+ DIOCGPROVIDERNAME = 0x4400648a
-+ DIOCGSECTORSIZE = 0x40046480
-+ DIOCGSTRIPEOFFSET = 0x4008648c
-+ DIOCGSTRIPESIZE = 0x4008648b
-+ DIOCSKERNELDUMP = 0x804c6490
-+ DIOCSKERNELDUMP_FREEBSD11 = 0x80046485
-+ DIOCZONECMD = 0xc06c648f
- DLT_A429 = 0xb8
- DLT_A653_ICM = 0xb9
- DLT_AIRONET_HEADER = 0x78
-@@ -377,11 +395,14 @@ const (
- DLT_CHAOS = 0x5
- DLT_CHDLC = 0x68
- DLT_CISCO_IOS = 0x76
-+ DLT_CLASS_NETBSD_RAWAF = 0x2240000
- DLT_C_HDLC = 0x68
- DLT_C_HDLC_WITH_DIR = 0xcd
- DLT_DBUS = 0xe7
- DLT_DECT = 0xdd
-+ DLT_DISPLAYPORT_AUX = 0x113
- DLT_DOCSIS = 0x8f
-+ DLT_DOCSIS31_XRA31 = 0x111
- DLT_DVB_CI = 0xeb
- DLT_ECONET = 0x73
- DLT_EN10MB = 0x1
-@@ -391,6 +412,7 @@ const (
- DLT_ERF = 0xc5
- DLT_ERF_ETH = 0xaf
- DLT_ERF_POS = 0xb0
-+ DLT_ETHERNET_MPACKET = 0x112
- DLT_FC_2 = 0xe0
- DLT_FC_2_WITH_FRAME_DELIMS = 0xe1
- DLT_FDDI = 0xa
-@@ -404,7 +426,6 @@ const (
- DLT_GPRS_LLC = 0xa9
- DLT_GSMTAP_ABIS = 0xda
- DLT_GSMTAP_UM = 0xd9
-- DLT_HHDLC = 0x79
- DLT_IBM_SN = 0x92
- DLT_IBM_SP = 0x91
- DLT_IEEE802 = 0x6
-@@ -427,6 +448,7 @@ const (
- DLT_IPV4 = 0xe4
- DLT_IPV6 = 0xe5
- DLT_IP_OVER_FC = 0x7a
-+ DLT_ISO_14443 = 0x108
- DLT_JUNIPER_ATM1 = 0x89
- DLT_JUNIPER_ATM2 = 0x87
- DLT_JUNIPER_ATM_CEMIC = 0xee
-@@ -459,8 +481,9 @@ const (
- DLT_LINUX_PPP_WITHDIRECTION = 0xa6
- DLT_LINUX_SLL = 0x71
- DLT_LOOP = 0x6c
-+ DLT_LORATAP = 0x10e
- DLT_LTALK = 0x72
-- DLT_MATCHING_MAX = 0x104
-+ DLT_MATCHING_MAX = 0x113
- DLT_MATCHING_MIN = 0x68
- DLT_MFR = 0xb6
- DLT_MOST = 0xd3
-@@ -476,14 +499,16 @@ const (
- DLT_NFC_LLCP = 0xf5
- DLT_NFLOG = 0xef
- DLT_NG40 = 0xf4
-+ DLT_NORDIC_BLE = 0x110
- DLT_NULL = 0x0
-+ DLT_OPENFLOW = 0x10b
- DLT_PCI_EXP = 0x7d
- DLT_PFLOG = 0x75
- DLT_PFSYNC = 0x79
- DLT_PKTAP = 0x102
- DLT_PPI = 0xc0
- DLT_PPP = 0x9
-- DLT_PPP_BSDOS = 0x10
-+ DLT_PPP_BSDOS = 0xe
- DLT_PPP_ETHER = 0x33
- DLT_PPP_PPPD = 0xa6
- DLT_PPP_SERIAL = 0x32
-@@ -494,19 +519,25 @@ const (
- DLT_PRONET = 0x4
- DLT_RAIF1 = 0xc6
- DLT_RAW = 0xc
-+ DLT_RDS = 0x109
-+ DLT_REDBACK_SMARTEDGE = 0x20
- DLT_RIO = 0x7c
- DLT_RTAC_SERIAL = 0xfa
- DLT_SCCP = 0x8e
- DLT_SCTP = 0xf8
-+ DLT_SDLC = 0x10c
- DLT_SITA = 0xc4
- DLT_SLIP = 0x8
-- DLT_SLIP_BSDOS = 0xf
-+ DLT_SLIP_BSDOS = 0xd
- DLT_STANAG_5066_D_PDU = 0xed
- DLT_SUNATM = 0x7b
- DLT_SYMANTEC_FIREWALL = 0x63
-+ DLT_TI_LLN_SNIFFER = 0x10d
- DLT_TZSP = 0x80
- DLT_USB = 0xba
- DLT_USBPCAP = 0xf9
-+ DLT_USB_DARWIN = 0x10a
-+ DLT_USB_FREEBSD = 0xba
- DLT_USB_LINUX = 0xbd
- DLT_USB_LINUX_MMAPPED = 0xdc
- DLT_USER0 = 0x93
-@@ -525,10 +556,14 @@ const (
- DLT_USER7 = 0x9a
- DLT_USER8 = 0x9b
- DLT_USER9 = 0x9c
-+ DLT_VSOCK = 0x10f
-+ DLT_WATTSTOPPER_DLM = 0x107
- DLT_WIHART = 0xdf
- DLT_WIRESHARK_UPPER_PDU = 0xfc
- DLT_X2E_SERIAL = 0xd5
- DLT_X2E_XORAYA = 0xd6
-+ DLT_ZWAVE_R1_R2 = 0x105
-+ DLT_ZWAVE_R3 = 0x106
- DT_BLK = 0x6
- DT_CHR = 0x2
- DT_DIR = 0x4
-@@ -546,6 +581,7 @@ const (
- ECHONL = 0x10
- ECHOPRT = 0x20
- EVFILT_AIO = -0x3
-+ EVFILT_EMPTY = -0xd
- EVFILT_FS = -0x9
- EVFILT_LIO = -0xa
- EVFILT_PROC = -0x5
-@@ -553,11 +589,12 @@ const (
- EVFILT_READ = -0x1
- EVFILT_SENDFILE = -0xc
- EVFILT_SIGNAL = -0x6
-- EVFILT_SYSCOUNT = 0xc
-+ EVFILT_SYSCOUNT = 0xd
- EVFILT_TIMER = -0x7
- EVFILT_USER = -0xb
- EVFILT_VNODE = -0x4
- EVFILT_WRITE = -0x2
-+ EVNAMEMAP_NAME_SIZE = 0x40
- EV_ADD = 0x1
- EV_CLEAR = 0x20
- EV_DELETE = 0x2
-@@ -574,6 +611,7 @@ const (
- EV_RECEIPT = 0x40
- EV_SYSFLAGS = 0xf000
- EXTA = 0x4b00
-+ EXTATTR_MAXNAMELEN = 0xff
- EXTATTR_NAMESPACE_EMPTY = 0x0
- EXTATTR_NAMESPACE_SYSTEM = 0x2
- EXTATTR_NAMESPACE_USER = 0x1
-@@ -608,12 +646,14 @@ const (
- F_UNLCKSYS = 0x4
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
- IEXTEN = 0x400
- IFAN_ARRIVAL = 0x0
- IFAN_DEPARTURE = 0x1
-+ IFCAP_WOL_MAGIC = 0x2000
- IFF_ALLMULTI = 0x200
- IFF_ALTPHYS = 0x4000
- IFF_BROADCAST = 0x2
-@@ -630,6 +670,7 @@ const (
- IFF_MONITOR = 0x40000
- IFF_MULTICAST = 0x8000
- IFF_NOARP = 0x80
-+ IFF_NOGROUP = 0x800000
- IFF_OACTIVE = 0x400
- IFF_POINTOPOINT = 0x10
- IFF_PPROMISC = 0x20000
-@@ -804,6 +845,7 @@ const (
- IPV6_DSTOPTS = 0x32
- IPV6_FLOWID = 0x43
- IPV6_FLOWINFO_MASK = 0xffffff0f
-+ IPV6_FLOWLABEL_LEN = 0x14
- IPV6_FLOWLABEL_MASK = 0xffff0f00
- IPV6_FLOWTYPE = 0x44
- IPV6_FRAGTTL = 0x78
-@@ -824,13 +866,13 @@ const (
- IPV6_MAX_GROUP_SRC_FILTER = 0x200
- IPV6_MAX_MEMBERSHIPS = 0xfff
- IPV6_MAX_SOCK_SRC_FILTER = 0x80
-- IPV6_MIN_MEMBERSHIPS = 0x1f
- IPV6_MMTU = 0x500
- IPV6_MSFILTER = 0x4a
- IPV6_MULTICAST_HOPS = 0xa
- IPV6_MULTICAST_IF = 0x9
- IPV6_MULTICAST_LOOP = 0xb
- IPV6_NEXTHOP = 0x30
-+ IPV6_ORIGDSTADDR = 0x48
- IPV6_PATHMTU = 0x2c
- IPV6_PKTINFO = 0x2e
- IPV6_PORTRANGE = 0xe
-@@ -842,6 +884,7 @@ const (
- IPV6_RECVFLOWID = 0x46
- IPV6_RECVHOPLIMIT = 0x25
- IPV6_RECVHOPOPTS = 0x27
-+ IPV6_RECVORIGDSTADDR = 0x48
- IPV6_RECVPATHMTU = 0x2b
- IPV6_RECVPKTINFO = 0x24
- IPV6_RECVRSSBUCKETID = 0x47
-@@ -902,10 +945,8 @@ const (
- IP_MAX_MEMBERSHIPS = 0xfff
- IP_MAX_SOCK_MUTE_FILTER = 0x80
- IP_MAX_SOCK_SRC_FILTER = 0x80
-- IP_MAX_SOURCE_FILTER = 0x400
- IP_MF = 0x2000
- IP_MINTTL = 0x42
-- IP_MIN_MEMBERSHIPS = 0x1f
- IP_MSFILTER = 0x4a
- IP_MSS = 0x240
- IP_MULTICAST_IF = 0x9
-@@ -915,6 +956,7 @@ const (
- IP_OFFMASK = 0x1fff
- IP_ONESBCAST = 0x17
- IP_OPTIONS = 0x1
-+ IP_ORIGDSTADDR = 0x1b
- IP_PORTRANGE = 0x13
- IP_PORTRANGE_DEFAULT = 0x0
- IP_PORTRANGE_HIGH = 0x1
-@@ -923,6 +965,7 @@ const (
- IP_RECVFLOWID = 0x5d
- IP_RECVIF = 0x14
- IP_RECVOPTS = 0x5
-+ IP_RECVORIGDSTADDR = 0x1b
- IP_RECVRETOPTS = 0x6
- IP_RECVRSSBUCKETID = 0x5e
- IP_RECVTOS = 0x44
-@@ -944,6 +987,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LOCK_EX = 0x2
- LOCK_NB = 0x4
- LOCK_SH = 0x1
-@@ -968,6 +1015,7 @@ const (
- MAP_EXCL = 0x4000
- MAP_FILE = 0x0
- MAP_FIXED = 0x10
-+ MAP_GUARD = 0x2000
- MAP_HASSEMAPHORE = 0x200
- MAP_NOCORE = 0x20000
- MAP_NOSYNC = 0x800
-@@ -979,8 +1027,62 @@ const (
- MAP_RESERVED0100 = 0x100
- MAP_SHARED = 0x1
- MAP_STACK = 0x400
-+ MCAST_BLOCK_SOURCE = 0x54
-+ MCAST_EXCLUDE = 0x2
-+ MCAST_INCLUDE = 0x1
-+ MCAST_JOIN_GROUP = 0x50
-+ MCAST_JOIN_SOURCE_GROUP = 0x52
-+ MCAST_LEAVE_GROUP = 0x51
-+ MCAST_LEAVE_SOURCE_GROUP = 0x53
-+ MCAST_UNBLOCK_SOURCE = 0x55
-+ MCAST_UNDEFINED = 0x0
- MCL_CURRENT = 0x1
- MCL_FUTURE = 0x2
-+ MNT_ACLS = 0x8000000
-+ MNT_ASYNC = 0x40
-+ MNT_AUTOMOUNTED = 0x200000000
-+ MNT_BYFSID = 0x8000000
-+ MNT_CMDFLAGS = 0xd0f0000
-+ MNT_DEFEXPORTED = 0x200
-+ MNT_DELEXPORT = 0x20000
-+ MNT_EXKERB = 0x800
-+ MNT_EXPORTANON = 0x400
-+ MNT_EXPORTED = 0x100
-+ MNT_EXPUBLIC = 0x20000000
-+ MNT_EXRDONLY = 0x80
-+ MNT_FORCE = 0x80000
-+ MNT_GJOURNAL = 0x2000000
-+ MNT_IGNORE = 0x800000
-+ MNT_LAZY = 0x3
-+ MNT_LOCAL = 0x1000
-+ MNT_MULTILABEL = 0x4000000
-+ MNT_NFS4ACLS = 0x10
-+ MNT_NOATIME = 0x10000000
-+ MNT_NOCLUSTERR = 0x40000000
-+ MNT_NOCLUSTERW = 0x80000000
-+ MNT_NOEXEC = 0x4
-+ MNT_NONBUSY = 0x4000000
-+ MNT_NOSUID = 0x8
-+ MNT_NOSYMFOLLOW = 0x400000
-+ MNT_NOWAIT = 0x2
-+ MNT_QUOTA = 0x2000
-+ MNT_RDONLY = 0x1
-+ MNT_RELOAD = 0x40000
-+ MNT_ROOTFS = 0x4000
-+ MNT_SNAPSHOT = 0x1000000
-+ MNT_SOFTDEP = 0x200000
-+ MNT_SUIDDIR = 0x100000
-+ MNT_SUJ = 0x100000000
-+ MNT_SUSPEND = 0x4
-+ MNT_SYNCHRONOUS = 0x2
-+ MNT_UNION = 0x20
-+ MNT_UNTRUSTED = 0x800000000
-+ MNT_UPDATE = 0x10000
-+ MNT_UPDATEMASK = 0xad8d0807e
-+ MNT_USER = 0x8000
-+ MNT_VERIFIED = 0x400000000
-+ MNT_VISFLAGMASK = 0xffef0ffff
-+ MNT_WAIT = 0x1
- MSG_CMSG_CLOEXEC = 0x40000
- MSG_COMPAT = 0x8000
- MSG_CTRUNC = 0x20
-@@ -1005,8 +1107,10 @@ const (
- NET_RT_IFLIST = 0x3
- NET_RT_IFLISTL = 0x5
- NET_RT_IFMALIST = 0x4
-+ NFDBITS = 0x20
- NOFLSH = 0x80000000
- NOKERNINFO = 0x2000000
-+ NOTE_ABSTIME = 0x10
- NOTE_ATTRIB = 0x8
- NOTE_CHILD = 0x4
- NOTE_CLOSE = 0x100
-@@ -1161,7 +1265,6 @@ const (
- RTV_WEIGHT = 0x100
- RT_ALL_FIBS = -0x1
- RT_BLACKHOLE = 0x40
-- RT_CACHING_CONTEXT = 0x1
- RT_DEFAULT_FIB = 0x0
- RT_HAS_GW = 0x80
- RT_HAS_HEADER = 0x10
-@@ -1171,15 +1274,17 @@ const (
- RT_LLE_CACHE = 0x100
- RT_MAY_LOOP = 0x8
- RT_MAY_LOOP_BIT = 0x3
-- RT_NORTREF = 0x2
- RT_REJECT = 0x20
- RUSAGE_CHILDREN = -0x1
- RUSAGE_SELF = 0x0
- RUSAGE_THREAD = 0x1
- SCM_BINTIME = 0x4
- SCM_CREDS = 0x3
-+ SCM_MONOTONIC = 0x6
-+ SCM_REALTIME = 0x5
- SCM_RIGHTS = 0x1
- SCM_TIMESTAMP = 0x2
-+ SCM_TIME_INFO = 0x7
- SHUT_RD = 0x0
- SHUT_RDWR = 0x2
- SHUT_WR = 0x1
-@@ -1195,6 +1300,7 @@ const (
- SIOCGETSGCNT = 0xc0147210
- SIOCGETVIFCNT = 0xc014720f
- SIOCGHIWAT = 0x40047301
-+ SIOCGHWADDR = 0xc020693e
- SIOCGI2C = 0xc020693d
- SIOCGIFADDR = 0xc0206921
- SIOCGIFBRDADDR = 0xc0206923
-@@ -1216,8 +1322,11 @@ const (
- SIOCGIFPDSTADDR = 0xc0206948
- SIOCGIFPHYS = 0xc0206935
- SIOCGIFPSRCADDR = 0xc0206947
-+ SIOCGIFRSSHASH = 0xc0186997
-+ SIOCGIFRSSKEY = 0xc0946996
- SIOCGIFSTATUS = 0xc331693b
- SIOCGIFXMEDIA = 0xc028698b
-+ SIOCGLANPCP = 0xc0206998
- SIOCGLOWAT = 0x40047303
- SIOCGPGRP = 0x40047309
- SIOCGPRIVATE_0 = 0xc0206950
-@@ -1248,6 +1357,7 @@ const (
- SIOCSIFPHYS = 0x80206936
- SIOCSIFRVNET = 0xc020695b
- SIOCSIFVNET = 0xc020695a
-+ SIOCSLANPCP = 0x80206999
- SIOCSLOWAT = 0x80047302
- SIOCSPGRP = 0x80047308
- SIOCSTUNFIB = 0x8020695f
-@@ -1266,6 +1376,7 @@ const (
- SO_BINTIME = 0x2000
- SO_BROADCAST = 0x20
- SO_DEBUG = 0x1
-+ SO_DOMAIN = 0x1019
- SO_DONTROUTE = 0x10
- SO_ERROR = 0x1007
- SO_KEEPALIVE = 0x8
-@@ -1274,6 +1385,7 @@ const (
- SO_LISTENINCQLEN = 0x1013
- SO_LISTENQLEN = 0x1012
- SO_LISTENQLIMIT = 0x1011
-+ SO_MAX_PACING_RATE = 0x1018
- SO_NOSIGPIPE = 0x800
- SO_NO_DDP = 0x8000
- SO_NO_OFFLOAD = 0x4000
-@@ -1286,15 +1398,52 @@ const (
- SO_RCVTIMEO = 0x1006
- SO_REUSEADDR = 0x4
- SO_REUSEPORT = 0x200
-+ SO_REUSEPORT_LB = 0x10000
- SO_SETFIB = 0x1014
- SO_SNDBUF = 0x1001
- SO_SNDLOWAT = 0x1003
- SO_SNDTIMEO = 0x1005
- SO_TIMESTAMP = 0x400
-+ SO_TS_BINTIME = 0x1
-+ SO_TS_CLOCK = 0x1017
-+ SO_TS_CLOCK_MAX = 0x3
-+ SO_TS_DEFAULT = 0x0
-+ SO_TS_MONOTONIC = 0x3
-+ SO_TS_REALTIME = 0x2
-+ SO_TS_REALTIME_MICRO = 0x0
- SO_TYPE = 0x1008
- SO_USELOOPBACK = 0x40
- SO_USER_COOKIE = 0x1015
- SO_VENDOR = 0x80000000
-+ S_BLKSIZE = 0x200
-+ S_IEXEC = 0x40
-+ S_IFBLK = 0x6000
-+ S_IFCHR = 0x2000
-+ S_IFDIR = 0x4000
-+ S_IFIFO = 0x1000
-+ S_IFLNK = 0xa000
-+ S_IFMT = 0xf000
-+ S_IFREG = 0x8000
-+ S_IFSOCK = 0xc000
-+ S_IFWHT = 0xe000
-+ S_IREAD = 0x100
-+ S_IRGRP = 0x20
-+ S_IROTH = 0x4
-+ S_IRUSR = 0x100
-+ S_IRWXG = 0x38
-+ S_IRWXO = 0x7
-+ S_IRWXU = 0x1c0
-+ S_ISGID = 0x400
-+ S_ISTXT = 0x200
-+ S_ISUID = 0x800
-+ S_ISVTX = 0x200
-+ S_IWGRP = 0x10
-+ S_IWOTH = 0x2
-+ S_IWRITE = 0x80
-+ S_IWUSR = 0x80
-+ S_IXGRP = 0x8
-+ S_IXOTH = 0x1
-+ S_IXUSR = 0x40
- TAB0 = 0x0
- TAB3 = 0x4
- TABDLY = 0x4
-@@ -1305,10 +1454,45 @@ const (
- TCOFLUSH = 0x2
- TCOOFF = 0x1
- TCOON = 0x2
-+ TCP_BBR_ACK_COMP_ALG = 0x448
-+ TCP_BBR_DRAIN_INC_EXTRA = 0x43c
-+ TCP_BBR_DRAIN_PG = 0x42e
-+ TCP_BBR_EXTRA_GAIN = 0x449
-+ TCP_BBR_IWINTSO = 0x42b
-+ TCP_BBR_LOWGAIN_FD = 0x436
-+ TCP_BBR_LOWGAIN_HALF = 0x435
-+ TCP_BBR_LOWGAIN_THRESH = 0x434
-+ TCP_BBR_MAX_RTO = 0x439
-+ TCP_BBR_MIN_RTO = 0x438
-+ TCP_BBR_ONE_RETRAN = 0x431
-+ TCP_BBR_PACE_CROSS = 0x442
-+ TCP_BBR_PACE_DEL_TAR = 0x43f
-+ TCP_BBR_PACE_PER_SEC = 0x43e
-+ TCP_BBR_PACE_SEG_MAX = 0x440
-+ TCP_BBR_PACE_SEG_MIN = 0x441
-+ TCP_BBR_PROBE_RTT_GAIN = 0x44d
-+ TCP_BBR_PROBE_RTT_INT = 0x430
-+ TCP_BBR_PROBE_RTT_LEN = 0x44e
-+ TCP_BBR_RACK_RTT_USE = 0x44a
-+ TCP_BBR_RECFORCE = 0x42c
-+ TCP_BBR_REC_OVER_HPTS = 0x43a
-+ TCP_BBR_RETRAN_WTSO = 0x44b
-+ TCP_BBR_RWND_IS_APP = 0x42f
-+ TCP_BBR_STARTUP_EXIT_EPOCH = 0x43d
-+ TCP_BBR_STARTUP_LOSS_EXIT = 0x432
-+ TCP_BBR_STARTUP_PG = 0x42d
-+ TCP_BBR_UNLIMITED = 0x43b
-+ TCP_BBR_USEDEL_RATE = 0x437
-+ TCP_BBR_USE_LOWGAIN = 0x433
- TCP_CA_NAME_MAX = 0x10
- TCP_CCALGOOPT = 0x41
- TCP_CONGESTION = 0x40
-+ TCP_DATA_AFTER_CLOSE = 0x44c
-+ TCP_DELACK = 0x48
- TCP_FASTOPEN = 0x401
-+ TCP_FASTOPEN_MAX_COOKIE_LEN = 0x10
-+ TCP_FASTOPEN_MIN_COOKIE_LEN = 0x4
-+ TCP_FASTOPEN_PSK_LEN = 0x10
- TCP_FUNCTION_BLK = 0x2000
- TCP_FUNCTION_NAME_LEN_MAX = 0x20
- TCP_INFO = 0x20
-@@ -1316,6 +1500,12 @@ const (
- TCP_KEEPIDLE = 0x100
- TCP_KEEPINIT = 0x80
- TCP_KEEPINTVL = 0x200
-+ TCP_LOG = 0x22
-+ TCP_LOGBUF = 0x23
-+ TCP_LOGDUMP = 0x25
-+ TCP_LOGDUMPID = 0x26
-+ TCP_LOGID = 0x24
-+ TCP_LOG_ID_LEN = 0x40
- TCP_MAXBURST = 0x4
- TCP_MAXHLEN = 0x3c
- TCP_MAXOLEN = 0x28
-@@ -1331,8 +1521,30 @@ const (
- TCP_NOPUSH = 0x4
- TCP_PCAP_IN = 0x1000
- TCP_PCAP_OUT = 0x800
-+ TCP_RACK_EARLY_RECOV = 0x423
-+ TCP_RACK_EARLY_SEG = 0x424
-+ TCP_RACK_IDLE_REDUCE_HIGH = 0x444
-+ TCP_RACK_MIN_PACE = 0x445
-+ TCP_RACK_MIN_PACE_SEG = 0x446
-+ TCP_RACK_MIN_TO = 0x422
-+ TCP_RACK_PACE_ALWAYS = 0x41f
-+ TCP_RACK_PACE_MAX_SEG = 0x41e
-+ TCP_RACK_PACE_REDUCE = 0x41d
-+ TCP_RACK_PKT_DELAY = 0x428
-+ TCP_RACK_PROP = 0x41b
-+ TCP_RACK_PROP_RATE = 0x420
-+ TCP_RACK_PRR_SENDALOT = 0x421
-+ TCP_RACK_REORD_FADE = 0x426
-+ TCP_RACK_REORD_THRESH = 0x425
-+ TCP_RACK_SESS_CWV = 0x42a
-+ TCP_RACK_TLP_INC_VAR = 0x429
-+ TCP_RACK_TLP_REDUCE = 0x41c
-+ TCP_RACK_TLP_THRESH = 0x427
-+ TCP_RACK_TLP_USE = 0x447
- TCP_VENDOR = 0x80000000
- TCSAFLUSH = 0x2
-+ TIMER_ABSTIME = 0x1
-+ TIMER_RELTIME = 0x0
- TIOCCBRK = 0x2000747a
- TIOCCDTR = 0x20007478
- TIOCCONS = 0x80047462
-@@ -1396,6 +1608,8 @@ const (
- TIOCTIMESTAMP = 0x40087459
- TIOCUCNTL = 0x80047466
- TOSTOP = 0x400000
-+ UTIME_NOW = -0x1
-+ UTIME_OMIT = -0x2
- VDISCARD = 0xf
- VDSUSP = 0xb
- VEOF = 0x0
-@@ -1407,6 +1621,8 @@ const (
- VKILL = 0x5
- VLNEXT = 0xe
- VMIN = 0x10
-+ VM_BCACHE_SIZE_MAX = 0x70e0000
-+ VM_SWZONE_SIZE_MAX = 0x2280000
- VQUIT = 0x9
- VREPRINT = 0x6
- VSTART = 0xc
-@@ -1569,138 +1785,146 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "operation timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "identifier removed",
-- 83: "no message of desired type",
-- 84: "value too large to be stored in data type",
-- 85: "operation canceled",
-- 86: "illegal byte sequence",
-- 87: "attribute not found",
-- 88: "programming error",
-- 89: "bad message",
-- 90: "multihop attempted",
-- 91: "link has been severed",
-- 92: "protocol error",
-- 93: "capabilities insufficient",
-- 94: "not permitted in capability mode",
-- 95: "state not recoverable",
-- 96: "previous owner died",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "EOPNOTSUPP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "operation timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disc quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EIDRM", "identifier removed"},
-+ {83, "ENOMSG", "no message of desired type"},
-+ {84, "EOVERFLOW", "value too large to be stored in data type"},
-+ {85, "ECANCELED", "operation canceled"},
-+ {86, "EILSEQ", "illegal byte sequence"},
-+ {87, "ENOATTR", "attribute not found"},
-+ {88, "EDOOFUS", "programming error"},
-+ {89, "EBADMSG", "bad message"},
-+ {90, "EMULTIHOP", "multihop attempted"},
-+ {91, "ENOLINK", "link has been severed"},
-+ {92, "EPROTO", "protocol error"},
-+ {93, "ENOTCAPABLE", "capabilities insufficient"},
-+ {94, "ECAPMODE", "not permitted in capability mode"},
-+ {95, "ENOTRECOVERABLE", "state not recoverable"},
-+ {96, "EOWNERDEAD", "previous owner died"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "suspended (signal)",
-- 18: "suspended",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-- 32: "unknown signal",
-- 33: "unknown signal",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGIOT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "suspended (signal)"},
-+ {18, "SIGTSTP", "suspended"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGTHR", "unknown signal"},
-+ {33, "SIGLIBRT", "unknown signal"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
-index ac094f9c..4acd101c 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
-@@ -3,7 +3,7 @@
-
- // +build amd64,freebsd
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m64 _const.go
-
- package unix
-@@ -351,8 +351,26 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0x18
- CTL_NET = 0x4
-+ DIOCGATTR = 0xc148648e
-+ DIOCGDELETE = 0x80106488
-+ DIOCGFLUSH = 0x20006487
-+ DIOCGFRONTSTUFF = 0x40086486
-+ DIOCGFWHEADS = 0x40046483
-+ DIOCGFWSECTORS = 0x40046482
-+ DIOCGIDENT = 0x41006489
-+ DIOCGMEDIASIZE = 0x40086481
-+ DIOCGPHYSPATH = 0x4400648d
-+ DIOCGPROVIDERNAME = 0x4400648a
-+ DIOCGSECTORSIZE = 0x40046480
-+ DIOCGSTRIPEOFFSET = 0x4008648c
-+ DIOCGSTRIPESIZE = 0x4008648b
-+ DIOCSKERNELDUMP = 0x80506490
-+ DIOCSKERNELDUMP_FREEBSD11 = 0x80046485
-+ DIOCZONECMD = 0xc080648f
- DLT_A429 = 0xb8
- DLT_A653_ICM = 0xb9
- DLT_AIRONET_HEADER = 0x78
-@@ -377,11 +395,14 @@ const (
- DLT_CHAOS = 0x5
- DLT_CHDLC = 0x68
- DLT_CISCO_IOS = 0x76
-+ DLT_CLASS_NETBSD_RAWAF = 0x2240000
- DLT_C_HDLC = 0x68
- DLT_C_HDLC_WITH_DIR = 0xcd
- DLT_DBUS = 0xe7
- DLT_DECT = 0xdd
-+ DLT_DISPLAYPORT_AUX = 0x113
- DLT_DOCSIS = 0x8f
-+ DLT_DOCSIS31_XRA31 = 0x111
- DLT_DVB_CI = 0xeb
- DLT_ECONET = 0x73
- DLT_EN10MB = 0x1
-@@ -391,6 +412,7 @@ const (
- DLT_ERF = 0xc5
- DLT_ERF_ETH = 0xaf
- DLT_ERF_POS = 0xb0
-+ DLT_ETHERNET_MPACKET = 0x112
- DLT_FC_2 = 0xe0
- DLT_FC_2_WITH_FRAME_DELIMS = 0xe1
- DLT_FDDI = 0xa
-@@ -404,7 +426,6 @@ const (
- DLT_GPRS_LLC = 0xa9
- DLT_GSMTAP_ABIS = 0xda
- DLT_GSMTAP_UM = 0xd9
-- DLT_HHDLC = 0x79
- DLT_IBM_SN = 0x92
- DLT_IBM_SP = 0x91
- DLT_IEEE802 = 0x6
-@@ -427,6 +448,7 @@ const (
- DLT_IPV4 = 0xe4
- DLT_IPV6 = 0xe5
- DLT_IP_OVER_FC = 0x7a
-+ DLT_ISO_14443 = 0x108
- DLT_JUNIPER_ATM1 = 0x89
- DLT_JUNIPER_ATM2 = 0x87
- DLT_JUNIPER_ATM_CEMIC = 0xee
-@@ -459,8 +481,9 @@ const (
- DLT_LINUX_PPP_WITHDIRECTION = 0xa6
- DLT_LINUX_SLL = 0x71
- DLT_LOOP = 0x6c
-+ DLT_LORATAP = 0x10e
- DLT_LTALK = 0x72
-- DLT_MATCHING_MAX = 0x104
-+ DLT_MATCHING_MAX = 0x113
- DLT_MATCHING_MIN = 0x68
- DLT_MFR = 0xb6
- DLT_MOST = 0xd3
-@@ -476,14 +499,16 @@ const (
- DLT_NFC_LLCP = 0xf5
- DLT_NFLOG = 0xef
- DLT_NG40 = 0xf4
-+ DLT_NORDIC_BLE = 0x110
- DLT_NULL = 0x0
-+ DLT_OPENFLOW = 0x10b
- DLT_PCI_EXP = 0x7d
- DLT_PFLOG = 0x75
- DLT_PFSYNC = 0x79
- DLT_PKTAP = 0x102
- DLT_PPI = 0xc0
- DLT_PPP = 0x9
-- DLT_PPP_BSDOS = 0x10
-+ DLT_PPP_BSDOS = 0xe
- DLT_PPP_ETHER = 0x33
- DLT_PPP_PPPD = 0xa6
- DLT_PPP_SERIAL = 0x32
-@@ -494,19 +519,25 @@ const (
- DLT_PRONET = 0x4
- DLT_RAIF1 = 0xc6
- DLT_RAW = 0xc
-+ DLT_RDS = 0x109
-+ DLT_REDBACK_SMARTEDGE = 0x20
- DLT_RIO = 0x7c
- DLT_RTAC_SERIAL = 0xfa
- DLT_SCCP = 0x8e
- DLT_SCTP = 0xf8
-+ DLT_SDLC = 0x10c
- DLT_SITA = 0xc4
- DLT_SLIP = 0x8
-- DLT_SLIP_BSDOS = 0xf
-+ DLT_SLIP_BSDOS = 0xd
- DLT_STANAG_5066_D_PDU = 0xed
- DLT_SUNATM = 0x7b
- DLT_SYMANTEC_FIREWALL = 0x63
-+ DLT_TI_LLN_SNIFFER = 0x10d
- DLT_TZSP = 0x80
- DLT_USB = 0xba
- DLT_USBPCAP = 0xf9
-+ DLT_USB_DARWIN = 0x10a
-+ DLT_USB_FREEBSD = 0xba
- DLT_USB_LINUX = 0xbd
- DLT_USB_LINUX_MMAPPED = 0xdc
- DLT_USER0 = 0x93
-@@ -525,10 +556,14 @@ const (
- DLT_USER7 = 0x9a
- DLT_USER8 = 0x9b
- DLT_USER9 = 0x9c
-+ DLT_VSOCK = 0x10f
-+ DLT_WATTSTOPPER_DLM = 0x107
- DLT_WIHART = 0xdf
- DLT_WIRESHARK_UPPER_PDU = 0xfc
- DLT_X2E_SERIAL = 0xd5
- DLT_X2E_XORAYA = 0xd6
-+ DLT_ZWAVE_R1_R2 = 0x105
-+ DLT_ZWAVE_R3 = 0x106
- DT_BLK = 0x6
- DT_CHR = 0x2
- DT_DIR = 0x4
-@@ -546,6 +581,7 @@ const (
- ECHONL = 0x10
- ECHOPRT = 0x20
- EVFILT_AIO = -0x3
-+ EVFILT_EMPTY = -0xd
- EVFILT_FS = -0x9
- EVFILT_LIO = -0xa
- EVFILT_PROC = -0x5
-@@ -553,11 +589,12 @@ const (
- EVFILT_READ = -0x1
- EVFILT_SENDFILE = -0xc
- EVFILT_SIGNAL = -0x6
-- EVFILT_SYSCOUNT = 0xc
-+ EVFILT_SYSCOUNT = 0xd
- EVFILT_TIMER = -0x7
- EVFILT_USER = -0xb
- EVFILT_VNODE = -0x4
- EVFILT_WRITE = -0x2
-+ EVNAMEMAP_NAME_SIZE = 0x40
- EV_ADD = 0x1
- EV_CLEAR = 0x20
- EV_DELETE = 0x2
-@@ -574,6 +611,7 @@ const (
- EV_RECEIPT = 0x40
- EV_SYSFLAGS = 0xf000
- EXTA = 0x4b00
-+ EXTATTR_MAXNAMELEN = 0xff
- EXTATTR_NAMESPACE_EMPTY = 0x0
- EXTATTR_NAMESPACE_SYSTEM = 0x2
- EXTATTR_NAMESPACE_USER = 0x1
-@@ -608,12 +646,14 @@ const (
- F_UNLCKSYS = 0x4
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
- IEXTEN = 0x400
- IFAN_ARRIVAL = 0x0
- IFAN_DEPARTURE = 0x1
-+ IFCAP_WOL_MAGIC = 0x2000
- IFF_ALLMULTI = 0x200
- IFF_ALTPHYS = 0x4000
- IFF_BROADCAST = 0x2
-@@ -630,6 +670,7 @@ const (
- IFF_MONITOR = 0x40000
- IFF_MULTICAST = 0x8000
- IFF_NOARP = 0x80
-+ IFF_NOGROUP = 0x800000
- IFF_OACTIVE = 0x400
- IFF_POINTOPOINT = 0x10
- IFF_PPROMISC = 0x20000
-@@ -804,6 +845,7 @@ const (
- IPV6_DSTOPTS = 0x32
- IPV6_FLOWID = 0x43
- IPV6_FLOWINFO_MASK = 0xffffff0f
-+ IPV6_FLOWLABEL_LEN = 0x14
- IPV6_FLOWLABEL_MASK = 0xffff0f00
- IPV6_FLOWTYPE = 0x44
- IPV6_FRAGTTL = 0x78
-@@ -824,13 +866,13 @@ const (
- IPV6_MAX_GROUP_SRC_FILTER = 0x200
- IPV6_MAX_MEMBERSHIPS = 0xfff
- IPV6_MAX_SOCK_SRC_FILTER = 0x80
-- IPV6_MIN_MEMBERSHIPS = 0x1f
- IPV6_MMTU = 0x500
- IPV6_MSFILTER = 0x4a
- IPV6_MULTICAST_HOPS = 0xa
- IPV6_MULTICAST_IF = 0x9
- IPV6_MULTICAST_LOOP = 0xb
- IPV6_NEXTHOP = 0x30
-+ IPV6_ORIGDSTADDR = 0x48
- IPV6_PATHMTU = 0x2c
- IPV6_PKTINFO = 0x2e
- IPV6_PORTRANGE = 0xe
-@@ -842,6 +884,7 @@ const (
- IPV6_RECVFLOWID = 0x46
- IPV6_RECVHOPLIMIT = 0x25
- IPV6_RECVHOPOPTS = 0x27
-+ IPV6_RECVORIGDSTADDR = 0x48
- IPV6_RECVPATHMTU = 0x2b
- IPV6_RECVPKTINFO = 0x24
- IPV6_RECVRSSBUCKETID = 0x47
-@@ -902,10 +945,8 @@ const (
- IP_MAX_MEMBERSHIPS = 0xfff
- IP_MAX_SOCK_MUTE_FILTER = 0x80
- IP_MAX_SOCK_SRC_FILTER = 0x80
-- IP_MAX_SOURCE_FILTER = 0x400
- IP_MF = 0x2000
- IP_MINTTL = 0x42
-- IP_MIN_MEMBERSHIPS = 0x1f
- IP_MSFILTER = 0x4a
- IP_MSS = 0x240
- IP_MULTICAST_IF = 0x9
-@@ -915,6 +956,7 @@ const (
- IP_OFFMASK = 0x1fff
- IP_ONESBCAST = 0x17
- IP_OPTIONS = 0x1
-+ IP_ORIGDSTADDR = 0x1b
- IP_PORTRANGE = 0x13
- IP_PORTRANGE_DEFAULT = 0x0
- IP_PORTRANGE_HIGH = 0x1
-@@ -923,6 +965,7 @@ const (
- IP_RECVFLOWID = 0x5d
- IP_RECVIF = 0x14
- IP_RECVOPTS = 0x5
-+ IP_RECVORIGDSTADDR = 0x1b
- IP_RECVRETOPTS = 0x6
- IP_RECVRSSBUCKETID = 0x5e
- IP_RECVTOS = 0x44
-@@ -944,6 +987,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LOCK_EX = 0x2
- LOCK_NB = 0x4
- LOCK_SH = 0x1
-@@ -969,6 +1016,7 @@ const (
- MAP_EXCL = 0x4000
- MAP_FILE = 0x0
- MAP_FIXED = 0x10
-+ MAP_GUARD = 0x2000
- MAP_HASSEMAPHORE = 0x200
- MAP_NOCORE = 0x20000
- MAP_NOSYNC = 0x800
-@@ -980,8 +1028,62 @@ const (
- MAP_RESERVED0100 = 0x100
- MAP_SHARED = 0x1
- MAP_STACK = 0x400
-+ MCAST_BLOCK_SOURCE = 0x54
-+ MCAST_EXCLUDE = 0x2
-+ MCAST_INCLUDE = 0x1
-+ MCAST_JOIN_GROUP = 0x50
-+ MCAST_JOIN_SOURCE_GROUP = 0x52
-+ MCAST_LEAVE_GROUP = 0x51
-+ MCAST_LEAVE_SOURCE_GROUP = 0x53
-+ MCAST_UNBLOCK_SOURCE = 0x55
-+ MCAST_UNDEFINED = 0x0
- MCL_CURRENT = 0x1
- MCL_FUTURE = 0x2
-+ MNT_ACLS = 0x8000000
-+ MNT_ASYNC = 0x40
-+ MNT_AUTOMOUNTED = 0x200000000
-+ MNT_BYFSID = 0x8000000
-+ MNT_CMDFLAGS = 0xd0f0000
-+ MNT_DEFEXPORTED = 0x200
-+ MNT_DELEXPORT = 0x20000
-+ MNT_EXKERB = 0x800
-+ MNT_EXPORTANON = 0x400
-+ MNT_EXPORTED = 0x100
-+ MNT_EXPUBLIC = 0x20000000
-+ MNT_EXRDONLY = 0x80
-+ MNT_FORCE = 0x80000
-+ MNT_GJOURNAL = 0x2000000
-+ MNT_IGNORE = 0x800000
-+ MNT_LAZY = 0x3
-+ MNT_LOCAL = 0x1000
-+ MNT_MULTILABEL = 0x4000000
-+ MNT_NFS4ACLS = 0x10
-+ MNT_NOATIME = 0x10000000
-+ MNT_NOCLUSTERR = 0x40000000
-+ MNT_NOCLUSTERW = 0x80000000
-+ MNT_NOEXEC = 0x4
-+ MNT_NONBUSY = 0x4000000
-+ MNT_NOSUID = 0x8
-+ MNT_NOSYMFOLLOW = 0x400000
-+ MNT_NOWAIT = 0x2
-+ MNT_QUOTA = 0x2000
-+ MNT_RDONLY = 0x1
-+ MNT_RELOAD = 0x40000
-+ MNT_ROOTFS = 0x4000
-+ MNT_SNAPSHOT = 0x1000000
-+ MNT_SOFTDEP = 0x200000
-+ MNT_SUIDDIR = 0x100000
-+ MNT_SUJ = 0x100000000
-+ MNT_SUSPEND = 0x4
-+ MNT_SYNCHRONOUS = 0x2
-+ MNT_UNION = 0x20
-+ MNT_UNTRUSTED = 0x800000000
-+ MNT_UPDATE = 0x10000
-+ MNT_UPDATEMASK = 0xad8d0807e
-+ MNT_USER = 0x8000
-+ MNT_VERIFIED = 0x400000000
-+ MNT_VISFLAGMASK = 0xffef0ffff
-+ MNT_WAIT = 0x1
- MSG_CMSG_CLOEXEC = 0x40000
- MSG_COMPAT = 0x8000
- MSG_CTRUNC = 0x20
-@@ -1006,8 +1108,10 @@ const (
- NET_RT_IFLIST = 0x3
- NET_RT_IFLISTL = 0x5
- NET_RT_IFMALIST = 0x4
-+ NFDBITS = 0x40
- NOFLSH = 0x80000000
- NOKERNINFO = 0x2000000
-+ NOTE_ABSTIME = 0x10
- NOTE_ATTRIB = 0x8
- NOTE_CHILD = 0x4
- NOTE_CLOSE = 0x100
-@@ -1162,7 +1266,6 @@ const (
- RTV_WEIGHT = 0x100
- RT_ALL_FIBS = -0x1
- RT_BLACKHOLE = 0x40
-- RT_CACHING_CONTEXT = 0x1
- RT_DEFAULT_FIB = 0x0
- RT_HAS_GW = 0x80
- RT_HAS_HEADER = 0x10
-@@ -1172,15 +1275,17 @@ const (
- RT_LLE_CACHE = 0x100
- RT_MAY_LOOP = 0x8
- RT_MAY_LOOP_BIT = 0x3
-- RT_NORTREF = 0x2
- RT_REJECT = 0x20
- RUSAGE_CHILDREN = -0x1
- RUSAGE_SELF = 0x0
- RUSAGE_THREAD = 0x1
- SCM_BINTIME = 0x4
- SCM_CREDS = 0x3
-+ SCM_MONOTONIC = 0x6
-+ SCM_REALTIME = 0x5
- SCM_RIGHTS = 0x1
- SCM_TIMESTAMP = 0x2
-+ SCM_TIME_INFO = 0x7
- SHUT_RD = 0x0
- SHUT_RDWR = 0x2
- SHUT_WR = 0x1
-@@ -1196,6 +1301,7 @@ const (
- SIOCGETSGCNT = 0xc0207210
- SIOCGETVIFCNT = 0xc028720f
- SIOCGHIWAT = 0x40047301
-+ SIOCGHWADDR = 0xc020693e
- SIOCGI2C = 0xc020693d
- SIOCGIFADDR = 0xc0206921
- SIOCGIFBRDADDR = 0xc0206923
-@@ -1217,8 +1323,11 @@ const (
- SIOCGIFPDSTADDR = 0xc0206948
- SIOCGIFPHYS = 0xc0206935
- SIOCGIFPSRCADDR = 0xc0206947
-+ SIOCGIFRSSHASH = 0xc0186997
-+ SIOCGIFRSSKEY = 0xc0946996
- SIOCGIFSTATUS = 0xc331693b
- SIOCGIFXMEDIA = 0xc030698b
-+ SIOCGLANPCP = 0xc0206998
- SIOCGLOWAT = 0x40047303
- SIOCGPGRP = 0x40047309
- SIOCGPRIVATE_0 = 0xc0206950
-@@ -1249,6 +1358,7 @@ const (
- SIOCSIFPHYS = 0x80206936
- SIOCSIFRVNET = 0xc020695b
- SIOCSIFVNET = 0xc020695a
-+ SIOCSLANPCP = 0x80206999
- SIOCSLOWAT = 0x80047302
- SIOCSPGRP = 0x80047308
- SIOCSTUNFIB = 0x8020695f
-@@ -1267,6 +1377,7 @@ const (
- SO_BINTIME = 0x2000
- SO_BROADCAST = 0x20
- SO_DEBUG = 0x1
-+ SO_DOMAIN = 0x1019
- SO_DONTROUTE = 0x10
- SO_ERROR = 0x1007
- SO_KEEPALIVE = 0x8
-@@ -1275,6 +1386,7 @@ const (
- SO_LISTENINCQLEN = 0x1013
- SO_LISTENQLEN = 0x1012
- SO_LISTENQLIMIT = 0x1011
-+ SO_MAX_PACING_RATE = 0x1018
- SO_NOSIGPIPE = 0x800
- SO_NO_DDP = 0x8000
- SO_NO_OFFLOAD = 0x4000
-@@ -1287,15 +1399,52 @@ const (
- SO_RCVTIMEO = 0x1006
- SO_REUSEADDR = 0x4
- SO_REUSEPORT = 0x200
-+ SO_REUSEPORT_LB = 0x10000
- SO_SETFIB = 0x1014
- SO_SNDBUF = 0x1001
- SO_SNDLOWAT = 0x1003
- SO_SNDTIMEO = 0x1005
- SO_TIMESTAMP = 0x400
-+ SO_TS_BINTIME = 0x1
-+ SO_TS_CLOCK = 0x1017
-+ SO_TS_CLOCK_MAX = 0x3
-+ SO_TS_DEFAULT = 0x0
-+ SO_TS_MONOTONIC = 0x3
-+ SO_TS_REALTIME = 0x2
-+ SO_TS_REALTIME_MICRO = 0x0
- SO_TYPE = 0x1008
- SO_USELOOPBACK = 0x40
- SO_USER_COOKIE = 0x1015
- SO_VENDOR = 0x80000000
-+ S_BLKSIZE = 0x200
-+ S_IEXEC = 0x40
-+ S_IFBLK = 0x6000
-+ S_IFCHR = 0x2000
-+ S_IFDIR = 0x4000
-+ S_IFIFO = 0x1000
-+ S_IFLNK = 0xa000
-+ S_IFMT = 0xf000
-+ S_IFREG = 0x8000
-+ S_IFSOCK = 0xc000
-+ S_IFWHT = 0xe000
-+ S_IREAD = 0x100
-+ S_IRGRP = 0x20
-+ S_IROTH = 0x4
-+ S_IRUSR = 0x100
-+ S_IRWXG = 0x38
-+ S_IRWXO = 0x7
-+ S_IRWXU = 0x1c0
-+ S_ISGID = 0x400
-+ S_ISTXT = 0x200
-+ S_ISUID = 0x800
-+ S_ISVTX = 0x200
-+ S_IWGRP = 0x10
-+ S_IWOTH = 0x2
-+ S_IWRITE = 0x80
-+ S_IWUSR = 0x80
-+ S_IXGRP = 0x8
-+ S_IXOTH = 0x1
-+ S_IXUSR = 0x40
- TAB0 = 0x0
- TAB3 = 0x4
- TABDLY = 0x4
-@@ -1306,10 +1455,45 @@ const (
- TCOFLUSH = 0x2
- TCOOFF = 0x1
- TCOON = 0x2
-+ TCP_BBR_ACK_COMP_ALG = 0x448
-+ TCP_BBR_DRAIN_INC_EXTRA = 0x43c
-+ TCP_BBR_DRAIN_PG = 0x42e
-+ TCP_BBR_EXTRA_GAIN = 0x449
-+ TCP_BBR_IWINTSO = 0x42b
-+ TCP_BBR_LOWGAIN_FD = 0x436
-+ TCP_BBR_LOWGAIN_HALF = 0x435
-+ TCP_BBR_LOWGAIN_THRESH = 0x434
-+ TCP_BBR_MAX_RTO = 0x439
-+ TCP_BBR_MIN_RTO = 0x438
-+ TCP_BBR_ONE_RETRAN = 0x431
-+ TCP_BBR_PACE_CROSS = 0x442
-+ TCP_BBR_PACE_DEL_TAR = 0x43f
-+ TCP_BBR_PACE_PER_SEC = 0x43e
-+ TCP_BBR_PACE_SEG_MAX = 0x440
-+ TCP_BBR_PACE_SEG_MIN = 0x441
-+ TCP_BBR_PROBE_RTT_GAIN = 0x44d
-+ TCP_BBR_PROBE_RTT_INT = 0x430
-+ TCP_BBR_PROBE_RTT_LEN = 0x44e
-+ TCP_BBR_RACK_RTT_USE = 0x44a
-+ TCP_BBR_RECFORCE = 0x42c
-+ TCP_BBR_REC_OVER_HPTS = 0x43a
-+ TCP_BBR_RETRAN_WTSO = 0x44b
-+ TCP_BBR_RWND_IS_APP = 0x42f
-+ TCP_BBR_STARTUP_EXIT_EPOCH = 0x43d
-+ TCP_BBR_STARTUP_LOSS_EXIT = 0x432
-+ TCP_BBR_STARTUP_PG = 0x42d
-+ TCP_BBR_UNLIMITED = 0x43b
-+ TCP_BBR_USEDEL_RATE = 0x437
-+ TCP_BBR_USE_LOWGAIN = 0x433
- TCP_CA_NAME_MAX = 0x10
- TCP_CCALGOOPT = 0x41
- TCP_CONGESTION = 0x40
-+ TCP_DATA_AFTER_CLOSE = 0x44c
-+ TCP_DELACK = 0x48
- TCP_FASTOPEN = 0x401
-+ TCP_FASTOPEN_MAX_COOKIE_LEN = 0x10
-+ TCP_FASTOPEN_MIN_COOKIE_LEN = 0x4
-+ TCP_FASTOPEN_PSK_LEN = 0x10
- TCP_FUNCTION_BLK = 0x2000
- TCP_FUNCTION_NAME_LEN_MAX = 0x20
- TCP_INFO = 0x20
-@@ -1317,6 +1501,12 @@ const (
- TCP_KEEPIDLE = 0x100
- TCP_KEEPINIT = 0x80
- TCP_KEEPINTVL = 0x200
-+ TCP_LOG = 0x22
-+ TCP_LOGBUF = 0x23
-+ TCP_LOGDUMP = 0x25
-+ TCP_LOGDUMPID = 0x26
-+ TCP_LOGID = 0x24
-+ TCP_LOG_ID_LEN = 0x40
- TCP_MAXBURST = 0x4
- TCP_MAXHLEN = 0x3c
- TCP_MAXOLEN = 0x28
-@@ -1332,8 +1522,30 @@ const (
- TCP_NOPUSH = 0x4
- TCP_PCAP_IN = 0x1000
- TCP_PCAP_OUT = 0x800
-+ TCP_RACK_EARLY_RECOV = 0x423
-+ TCP_RACK_EARLY_SEG = 0x424
-+ TCP_RACK_IDLE_REDUCE_HIGH = 0x444
-+ TCP_RACK_MIN_PACE = 0x445
-+ TCP_RACK_MIN_PACE_SEG = 0x446
-+ TCP_RACK_MIN_TO = 0x422
-+ TCP_RACK_PACE_ALWAYS = 0x41f
-+ TCP_RACK_PACE_MAX_SEG = 0x41e
-+ TCP_RACK_PACE_REDUCE = 0x41d
-+ TCP_RACK_PKT_DELAY = 0x428
-+ TCP_RACK_PROP = 0x41b
-+ TCP_RACK_PROP_RATE = 0x420
-+ TCP_RACK_PRR_SENDALOT = 0x421
-+ TCP_RACK_REORD_FADE = 0x426
-+ TCP_RACK_REORD_THRESH = 0x425
-+ TCP_RACK_SESS_CWV = 0x42a
-+ TCP_RACK_TLP_INC_VAR = 0x429
-+ TCP_RACK_TLP_REDUCE = 0x41c
-+ TCP_RACK_TLP_THRESH = 0x427
-+ TCP_RACK_TLP_USE = 0x447
- TCP_VENDOR = 0x80000000
- TCSAFLUSH = 0x2
-+ TIMER_ABSTIME = 0x1
-+ TIMER_RELTIME = 0x0
- TIOCCBRK = 0x2000747a
- TIOCCDTR = 0x20007478
- TIOCCONS = 0x80047462
-@@ -1397,6 +1609,8 @@ const (
- TIOCTIMESTAMP = 0x40107459
- TIOCUCNTL = 0x80047466
- TOSTOP = 0x400000
-+ UTIME_NOW = -0x1
-+ UTIME_OMIT = -0x2
- VDISCARD = 0xf
- VDSUSP = 0xb
- VEOF = 0x0
-@@ -1570,138 +1784,146 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "operation timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "identifier removed",
-- 83: "no message of desired type",
-- 84: "value too large to be stored in data type",
-- 85: "operation canceled",
-- 86: "illegal byte sequence",
-- 87: "attribute not found",
-- 88: "programming error",
-- 89: "bad message",
-- 90: "multihop attempted",
-- 91: "link has been severed",
-- 92: "protocol error",
-- 93: "capabilities insufficient",
-- 94: "not permitted in capability mode",
-- 95: "state not recoverable",
-- 96: "previous owner died",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "EOPNOTSUPP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "operation timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disc quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EIDRM", "identifier removed"},
-+ {83, "ENOMSG", "no message of desired type"},
-+ {84, "EOVERFLOW", "value too large to be stored in data type"},
-+ {85, "ECANCELED", "operation canceled"},
-+ {86, "EILSEQ", "illegal byte sequence"},
-+ {87, "ENOATTR", "attribute not found"},
-+ {88, "EDOOFUS", "programming error"},
-+ {89, "EBADMSG", "bad message"},
-+ {90, "EMULTIHOP", "multihop attempted"},
-+ {91, "ENOLINK", "link has been severed"},
-+ {92, "EPROTO", "protocol error"},
-+ {93, "ENOTCAPABLE", "capabilities insufficient"},
-+ {94, "ECAPMODE", "not permitted in capability mode"},
-+ {95, "ENOTRECOVERABLE", "state not recoverable"},
-+ {96, "EOWNERDEAD", "previous owner died"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "suspended (signal)",
-- 18: "suspended",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-- 32: "unknown signal",
-- 33: "unknown signal",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGIOT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "suspended (signal)"},
-+ {18, "SIGTSTP", "suspended"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGTHR", "unknown signal"},
-+ {33, "SIGLIBRT", "unknown signal"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
-index c5c6f13e..e4719873 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
-@@ -3,7 +3,7 @@
-
- // +build arm,freebsd
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- _const.go
-
- package unix
-@@ -351,8 +351,26 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0x18
- CTL_NET = 0x4
-+ DIOCGATTR = 0xc144648e
-+ DIOCGDELETE = 0x80106488
-+ DIOCGFLUSH = 0x20006487
-+ DIOCGFRONTSTUFF = 0x40086486
-+ DIOCGFWHEADS = 0x40046483
-+ DIOCGFWSECTORS = 0x40046482
-+ DIOCGIDENT = 0x41006489
-+ DIOCGMEDIASIZE = 0x40086481
-+ DIOCGPHYSPATH = 0x4400648d
-+ DIOCGPROVIDERNAME = 0x4400648a
-+ DIOCGSECTORSIZE = 0x40046480
-+ DIOCGSTRIPEOFFSET = 0x4008648c
-+ DIOCGSTRIPESIZE = 0x4008648b
-+ DIOCSKERNELDUMP = 0x804c6490
-+ DIOCSKERNELDUMP_FREEBSD11 = 0x80046485
-+ DIOCZONECMD = 0xc06c648f
- DLT_A429 = 0xb8
- DLT_A653_ICM = 0xb9
- DLT_AIRONET_HEADER = 0x78
-@@ -615,6 +633,7 @@ const (
- F_UNLCKSYS = 0x4
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
-@@ -951,6 +970,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LOCK_EX = 0x2
- LOCK_NB = 0x4
- LOCK_SH = 0x1
-@@ -989,6 +1012,49 @@ const (
- MAP_STACK = 0x400
- MCL_CURRENT = 0x1
- MCL_FUTURE = 0x2
-+ MNT_ACLS = 0x8000000
-+ MNT_ASYNC = 0x40
-+ MNT_AUTOMOUNTED = 0x200000000
-+ MNT_BYFSID = 0x8000000
-+ MNT_CMDFLAGS = 0xd0f0000
-+ MNT_DEFEXPORTED = 0x200
-+ MNT_DELEXPORT = 0x20000
-+ MNT_EXKERB = 0x800
-+ MNT_EXPORTANON = 0x400
-+ MNT_EXPORTED = 0x100
-+ MNT_EXPUBLIC = 0x20000000
-+ MNT_EXRDONLY = 0x80
-+ MNT_FORCE = 0x80000
-+ MNT_GJOURNAL = 0x2000000
-+ MNT_IGNORE = 0x800000
-+ MNT_LAZY = 0x3
-+ MNT_LOCAL = 0x1000
-+ MNT_MULTILABEL = 0x4000000
-+ MNT_NFS4ACLS = 0x10
-+ MNT_NOATIME = 0x10000000
-+ MNT_NOCLUSTERR = 0x40000000
-+ MNT_NOCLUSTERW = 0x80000000
-+ MNT_NOEXEC = 0x4
-+ MNT_NONBUSY = 0x4000000
-+ MNT_NOSUID = 0x8
-+ MNT_NOSYMFOLLOW = 0x400000
-+ MNT_NOWAIT = 0x2
-+ MNT_QUOTA = 0x2000
-+ MNT_RDONLY = 0x1
-+ MNT_RELOAD = 0x40000
-+ MNT_ROOTFS = 0x4000
-+ MNT_SNAPSHOT = 0x1000000
-+ MNT_SOFTDEP = 0x200000
-+ MNT_SUIDDIR = 0x100000
-+ MNT_SUJ = 0x100000000
-+ MNT_SUSPEND = 0x4
-+ MNT_SYNCHRONOUS = 0x2
-+ MNT_UNION = 0x20
-+ MNT_UPDATE = 0x10000
-+ MNT_UPDATEMASK = 0x2d8d0807e
-+ MNT_USER = 0x8000
-+ MNT_VISFLAGMASK = 0x3fef0ffff
-+ MNT_WAIT = 0x1
- MSG_CMSG_CLOEXEC = 0x40000
- MSG_COMPAT = 0x8000
- MSG_CTRUNC = 0x20
-@@ -1013,6 +1079,7 @@ const (
- NET_RT_IFLIST = 0x3
- NET_RT_IFLISTL = 0x5
- NET_RT_IFMALIST = 0x4
-+ NFDBITS = 0x20
- NOFLSH = 0x80000000
- NOKERNINFO = 0x2000000
- NOTE_ATTRIB = 0x8
-@@ -1304,6 +1371,35 @@ const (
- SO_USELOOPBACK = 0x40
- SO_USER_COOKIE = 0x1015
- SO_VENDOR = 0x80000000
-+ S_BLKSIZE = 0x200
-+ S_IEXEC = 0x40
-+ S_IFBLK = 0x6000
-+ S_IFCHR = 0x2000
-+ S_IFDIR = 0x4000
-+ S_IFIFO = 0x1000
-+ S_IFLNK = 0xa000
-+ S_IFMT = 0xf000
-+ S_IFREG = 0x8000
-+ S_IFSOCK = 0xc000
-+ S_IFWHT = 0xe000
-+ S_IREAD = 0x100
-+ S_IRGRP = 0x20
-+ S_IROTH = 0x4
-+ S_IRUSR = 0x100
-+ S_IRWXG = 0x38
-+ S_IRWXO = 0x7
-+ S_IRWXU = 0x1c0
-+ S_ISGID = 0x400
-+ S_ISTXT = 0x200
-+ S_ISUID = 0x800
-+ S_ISVTX = 0x200
-+ S_IWGRP = 0x10
-+ S_IWOTH = 0x2
-+ S_IWRITE = 0x80
-+ S_IWUSR = 0x80
-+ S_IXGRP = 0x8
-+ S_IXOTH = 0x1
-+ S_IXUSR = 0x40
- TAB0 = 0x0
- TAB3 = 0x4
- TABDLY = 0x4
-@@ -1578,138 +1674,146 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "operation timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "identifier removed",
-- 83: "no message of desired type",
-- 84: "value too large to be stored in data type",
-- 85: "operation canceled",
-- 86: "illegal byte sequence",
-- 87: "attribute not found",
-- 88: "programming error",
-- 89: "bad message",
-- 90: "multihop attempted",
-- 91: "link has been severed",
-- 92: "protocol error",
-- 93: "capabilities insufficient",
-- 94: "not permitted in capability mode",
-- 95: "state not recoverable",
-- 96: "previous owner died",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "EOPNOTSUPP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "operation timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disc quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EIDRM", "identifier removed"},
-+ {83, "ENOMSG", "no message of desired type"},
-+ {84, "EOVERFLOW", "value too large to be stored in data type"},
-+ {85, "ECANCELED", "operation canceled"},
-+ {86, "EILSEQ", "illegal byte sequence"},
-+ {87, "ENOATTR", "attribute not found"},
-+ {88, "EDOOFUS", "programming error"},
-+ {89, "EBADMSG", "bad message"},
-+ {90, "EMULTIHOP", "multihop attempted"},
-+ {91, "ENOLINK", "link has been severed"},
-+ {92, "EPROTO", "protocol error"},
-+ {93, "ENOTCAPABLE", "capabilities insufficient"},
-+ {94, "ECAPMODE", "not permitted in capability mode"},
-+ {95, "ENOTRECOVERABLE", "state not recoverable"},
-+ {96, "EOWNERDEAD", "previous owner died"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "suspended (signal)",
-- 18: "suspended",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-- 32: "unknown signal",
-- 33: "unknown signal",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGIOT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "suspended (signal)"},
-+ {18, "SIGTSTP", "suspended"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGTHR", "unknown signal"},
-+ {33, "SIGLIBRT", "unknown signal"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go
-similarity index 80%
-copy from vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
-copy to vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go
-index ac094f9c..5e49769d 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go
-@@ -1,9 +1,9 @@
- // mkerrors.sh -m64
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build amd64,freebsd
-+// +build arm64,freebsd
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m64 _const.go
-
- package unix
-@@ -351,8 +351,26 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0x18
- CTL_NET = 0x4
-+ DIOCGATTR = 0xc148648e
-+ DIOCGDELETE = 0x80106488
-+ DIOCGFLUSH = 0x20006487
-+ DIOCGFRONTSTUFF = 0x40086486
-+ DIOCGFWHEADS = 0x40046483
-+ DIOCGFWSECTORS = 0x40046482
-+ DIOCGIDENT = 0x41006489
-+ DIOCGMEDIASIZE = 0x40086481
-+ DIOCGPHYSPATH = 0x4400648d
-+ DIOCGPROVIDERNAME = 0x4400648a
-+ DIOCGSECTORSIZE = 0x40046480
-+ DIOCGSTRIPEOFFSET = 0x4008648c
-+ DIOCGSTRIPESIZE = 0x4008648b
-+ DIOCSKERNELDUMP = 0x80506490
-+ DIOCSKERNELDUMP_FREEBSD11 = 0x80046485
-+ DIOCZONECMD = 0xc080648f
- DLT_A429 = 0xb8
- DLT_A653_ICM = 0xb9
- DLT_AIRONET_HEADER = 0x78
-@@ -377,11 +395,14 @@ const (
- DLT_CHAOS = 0x5
- DLT_CHDLC = 0x68
- DLT_CISCO_IOS = 0x76
-+ DLT_CLASS_NETBSD_RAWAF = 0x2240000
- DLT_C_HDLC = 0x68
- DLT_C_HDLC_WITH_DIR = 0xcd
- DLT_DBUS = 0xe7
- DLT_DECT = 0xdd
-+ DLT_DISPLAYPORT_AUX = 0x113
- DLT_DOCSIS = 0x8f
-+ DLT_DOCSIS31_XRA31 = 0x111
- DLT_DVB_CI = 0xeb
- DLT_ECONET = 0x73
- DLT_EN10MB = 0x1
-@@ -391,6 +412,7 @@ const (
- DLT_ERF = 0xc5
- DLT_ERF_ETH = 0xaf
- DLT_ERF_POS = 0xb0
-+ DLT_ETHERNET_MPACKET = 0x112
- DLT_FC_2 = 0xe0
- DLT_FC_2_WITH_FRAME_DELIMS = 0xe1
- DLT_FDDI = 0xa
-@@ -404,7 +426,6 @@ const (
- DLT_GPRS_LLC = 0xa9
- DLT_GSMTAP_ABIS = 0xda
- DLT_GSMTAP_UM = 0xd9
-- DLT_HHDLC = 0x79
- DLT_IBM_SN = 0x92
- DLT_IBM_SP = 0x91
- DLT_IEEE802 = 0x6
-@@ -427,6 +448,7 @@ const (
- DLT_IPV4 = 0xe4
- DLT_IPV6 = 0xe5
- DLT_IP_OVER_FC = 0x7a
-+ DLT_ISO_14443 = 0x108
- DLT_JUNIPER_ATM1 = 0x89
- DLT_JUNIPER_ATM2 = 0x87
- DLT_JUNIPER_ATM_CEMIC = 0xee
-@@ -459,8 +481,9 @@ const (
- DLT_LINUX_PPP_WITHDIRECTION = 0xa6
- DLT_LINUX_SLL = 0x71
- DLT_LOOP = 0x6c
-+ DLT_LORATAP = 0x10e
- DLT_LTALK = 0x72
-- DLT_MATCHING_MAX = 0x104
-+ DLT_MATCHING_MAX = 0x113
- DLT_MATCHING_MIN = 0x68
- DLT_MFR = 0xb6
- DLT_MOST = 0xd3
-@@ -476,14 +499,16 @@ const (
- DLT_NFC_LLCP = 0xf5
- DLT_NFLOG = 0xef
- DLT_NG40 = 0xf4
-+ DLT_NORDIC_BLE = 0x110
- DLT_NULL = 0x0
-+ DLT_OPENFLOW = 0x10b
- DLT_PCI_EXP = 0x7d
- DLT_PFLOG = 0x75
- DLT_PFSYNC = 0x79
- DLT_PKTAP = 0x102
- DLT_PPI = 0xc0
- DLT_PPP = 0x9
-- DLT_PPP_BSDOS = 0x10
-+ DLT_PPP_BSDOS = 0xe
- DLT_PPP_ETHER = 0x33
- DLT_PPP_PPPD = 0xa6
- DLT_PPP_SERIAL = 0x32
-@@ -494,19 +519,25 @@ const (
- DLT_PRONET = 0x4
- DLT_RAIF1 = 0xc6
- DLT_RAW = 0xc
-+ DLT_RDS = 0x109
-+ DLT_REDBACK_SMARTEDGE = 0x20
- DLT_RIO = 0x7c
- DLT_RTAC_SERIAL = 0xfa
- DLT_SCCP = 0x8e
- DLT_SCTP = 0xf8
-+ DLT_SDLC = 0x10c
- DLT_SITA = 0xc4
- DLT_SLIP = 0x8
-- DLT_SLIP_BSDOS = 0xf
-+ DLT_SLIP_BSDOS = 0xd
- DLT_STANAG_5066_D_PDU = 0xed
- DLT_SUNATM = 0x7b
- DLT_SYMANTEC_FIREWALL = 0x63
-+ DLT_TI_LLN_SNIFFER = 0x10d
- DLT_TZSP = 0x80
- DLT_USB = 0xba
- DLT_USBPCAP = 0xf9
-+ DLT_USB_DARWIN = 0x10a
-+ DLT_USB_FREEBSD = 0xba
- DLT_USB_LINUX = 0xbd
- DLT_USB_LINUX_MMAPPED = 0xdc
- DLT_USER0 = 0x93
-@@ -525,10 +556,14 @@ const (
- DLT_USER7 = 0x9a
- DLT_USER8 = 0x9b
- DLT_USER9 = 0x9c
-+ DLT_VSOCK = 0x10f
-+ DLT_WATTSTOPPER_DLM = 0x107
- DLT_WIHART = 0xdf
- DLT_WIRESHARK_UPPER_PDU = 0xfc
- DLT_X2E_SERIAL = 0xd5
- DLT_X2E_XORAYA = 0xd6
-+ DLT_ZWAVE_R1_R2 = 0x105
-+ DLT_ZWAVE_R3 = 0x106
- DT_BLK = 0x6
- DT_CHR = 0x2
- DT_DIR = 0x4
-@@ -546,6 +581,7 @@ const (
- ECHONL = 0x10
- ECHOPRT = 0x20
- EVFILT_AIO = -0x3
-+ EVFILT_EMPTY = -0xd
- EVFILT_FS = -0x9
- EVFILT_LIO = -0xa
- EVFILT_PROC = -0x5
-@@ -553,11 +589,12 @@ const (
- EVFILT_READ = -0x1
- EVFILT_SENDFILE = -0xc
- EVFILT_SIGNAL = -0x6
-- EVFILT_SYSCOUNT = 0xc
-+ EVFILT_SYSCOUNT = 0xd
- EVFILT_TIMER = -0x7
- EVFILT_USER = -0xb
- EVFILT_VNODE = -0x4
- EVFILT_WRITE = -0x2
-+ EVNAMEMAP_NAME_SIZE = 0x40
- EV_ADD = 0x1
- EV_CLEAR = 0x20
- EV_DELETE = 0x2
-@@ -574,6 +611,7 @@ const (
- EV_RECEIPT = 0x40
- EV_SYSFLAGS = 0xf000
- EXTA = 0x4b00
-+ EXTATTR_MAXNAMELEN = 0xff
- EXTATTR_NAMESPACE_EMPTY = 0x0
- EXTATTR_NAMESPACE_SYSTEM = 0x2
- EXTATTR_NAMESPACE_USER = 0x1
-@@ -608,12 +646,14 @@ const (
- F_UNLCKSYS = 0x4
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
- IEXTEN = 0x400
- IFAN_ARRIVAL = 0x0
- IFAN_DEPARTURE = 0x1
-+ IFCAP_WOL_MAGIC = 0x2000
- IFF_ALLMULTI = 0x200
- IFF_ALTPHYS = 0x4000
- IFF_BROADCAST = 0x2
-@@ -630,6 +670,7 @@ const (
- IFF_MONITOR = 0x40000
- IFF_MULTICAST = 0x8000
- IFF_NOARP = 0x80
-+ IFF_NOGROUP = 0x800000
- IFF_OACTIVE = 0x400
- IFF_POINTOPOINT = 0x10
- IFF_PPROMISC = 0x20000
-@@ -804,6 +845,7 @@ const (
- IPV6_DSTOPTS = 0x32
- IPV6_FLOWID = 0x43
- IPV6_FLOWINFO_MASK = 0xffffff0f
-+ IPV6_FLOWLABEL_LEN = 0x14
- IPV6_FLOWLABEL_MASK = 0xffff0f00
- IPV6_FLOWTYPE = 0x44
- IPV6_FRAGTTL = 0x78
-@@ -824,13 +866,13 @@ const (
- IPV6_MAX_GROUP_SRC_FILTER = 0x200
- IPV6_MAX_MEMBERSHIPS = 0xfff
- IPV6_MAX_SOCK_SRC_FILTER = 0x80
-- IPV6_MIN_MEMBERSHIPS = 0x1f
- IPV6_MMTU = 0x500
- IPV6_MSFILTER = 0x4a
- IPV6_MULTICAST_HOPS = 0xa
- IPV6_MULTICAST_IF = 0x9
- IPV6_MULTICAST_LOOP = 0xb
- IPV6_NEXTHOP = 0x30
-+ IPV6_ORIGDSTADDR = 0x48
- IPV6_PATHMTU = 0x2c
- IPV6_PKTINFO = 0x2e
- IPV6_PORTRANGE = 0xe
-@@ -842,6 +884,7 @@ const (
- IPV6_RECVFLOWID = 0x46
- IPV6_RECVHOPLIMIT = 0x25
- IPV6_RECVHOPOPTS = 0x27
-+ IPV6_RECVORIGDSTADDR = 0x48
- IPV6_RECVPATHMTU = 0x2b
- IPV6_RECVPKTINFO = 0x24
- IPV6_RECVRSSBUCKETID = 0x47
-@@ -902,10 +945,8 @@ const (
- IP_MAX_MEMBERSHIPS = 0xfff
- IP_MAX_SOCK_MUTE_FILTER = 0x80
- IP_MAX_SOCK_SRC_FILTER = 0x80
-- IP_MAX_SOURCE_FILTER = 0x400
- IP_MF = 0x2000
- IP_MINTTL = 0x42
-- IP_MIN_MEMBERSHIPS = 0x1f
- IP_MSFILTER = 0x4a
- IP_MSS = 0x240
- IP_MULTICAST_IF = 0x9
-@@ -915,6 +956,7 @@ const (
- IP_OFFMASK = 0x1fff
- IP_ONESBCAST = 0x17
- IP_OPTIONS = 0x1
-+ IP_ORIGDSTADDR = 0x1b
- IP_PORTRANGE = 0x13
- IP_PORTRANGE_DEFAULT = 0x0
- IP_PORTRANGE_HIGH = 0x1
-@@ -923,6 +965,7 @@ const (
- IP_RECVFLOWID = 0x5d
- IP_RECVIF = 0x14
- IP_RECVOPTS = 0x5
-+ IP_RECVORIGDSTADDR = 0x1b
- IP_RECVRETOPTS = 0x6
- IP_RECVRSSBUCKETID = 0x5e
- IP_RECVTOS = 0x44
-@@ -944,6 +987,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LOCK_EX = 0x2
- LOCK_NB = 0x4
- LOCK_SH = 0x1
-@@ -969,6 +1016,7 @@ const (
- MAP_EXCL = 0x4000
- MAP_FILE = 0x0
- MAP_FIXED = 0x10
-+ MAP_GUARD = 0x2000
- MAP_HASSEMAPHORE = 0x200
- MAP_NOCORE = 0x20000
- MAP_NOSYNC = 0x800
-@@ -980,8 +1028,62 @@ const (
- MAP_RESERVED0100 = 0x100
- MAP_SHARED = 0x1
- MAP_STACK = 0x400
-+ MCAST_BLOCK_SOURCE = 0x54
-+ MCAST_EXCLUDE = 0x2
-+ MCAST_INCLUDE = 0x1
-+ MCAST_JOIN_GROUP = 0x50
-+ MCAST_JOIN_SOURCE_GROUP = 0x52
-+ MCAST_LEAVE_GROUP = 0x51
-+ MCAST_LEAVE_SOURCE_GROUP = 0x53
-+ MCAST_UNBLOCK_SOURCE = 0x55
-+ MCAST_UNDEFINED = 0x0
- MCL_CURRENT = 0x1
- MCL_FUTURE = 0x2
-+ MNT_ACLS = 0x8000000
-+ MNT_ASYNC = 0x40
-+ MNT_AUTOMOUNTED = 0x200000000
-+ MNT_BYFSID = 0x8000000
-+ MNT_CMDFLAGS = 0xd0f0000
-+ MNT_DEFEXPORTED = 0x200
-+ MNT_DELEXPORT = 0x20000
-+ MNT_EXKERB = 0x800
-+ MNT_EXPORTANON = 0x400
-+ MNT_EXPORTED = 0x100
-+ MNT_EXPUBLIC = 0x20000000
-+ MNT_EXRDONLY = 0x80
-+ MNT_FORCE = 0x80000
-+ MNT_GJOURNAL = 0x2000000
-+ MNT_IGNORE = 0x800000
-+ MNT_LAZY = 0x3
-+ MNT_LOCAL = 0x1000
-+ MNT_MULTILABEL = 0x4000000
-+ MNT_NFS4ACLS = 0x10
-+ MNT_NOATIME = 0x10000000
-+ MNT_NOCLUSTERR = 0x40000000
-+ MNT_NOCLUSTERW = 0x80000000
-+ MNT_NOEXEC = 0x4
-+ MNT_NONBUSY = 0x4000000
-+ MNT_NOSUID = 0x8
-+ MNT_NOSYMFOLLOW = 0x400000
-+ MNT_NOWAIT = 0x2
-+ MNT_QUOTA = 0x2000
-+ MNT_RDONLY = 0x1
-+ MNT_RELOAD = 0x40000
-+ MNT_ROOTFS = 0x4000
-+ MNT_SNAPSHOT = 0x1000000
-+ MNT_SOFTDEP = 0x200000
-+ MNT_SUIDDIR = 0x100000
-+ MNT_SUJ = 0x100000000
-+ MNT_SUSPEND = 0x4
-+ MNT_SYNCHRONOUS = 0x2
-+ MNT_UNION = 0x20
-+ MNT_UNTRUSTED = 0x800000000
-+ MNT_UPDATE = 0x10000
-+ MNT_UPDATEMASK = 0xad8d0807e
-+ MNT_USER = 0x8000
-+ MNT_VERIFIED = 0x400000000
-+ MNT_VISFLAGMASK = 0xffef0ffff
-+ MNT_WAIT = 0x1
- MSG_CMSG_CLOEXEC = 0x40000
- MSG_COMPAT = 0x8000
- MSG_CTRUNC = 0x20
-@@ -1006,8 +1108,10 @@ const (
- NET_RT_IFLIST = 0x3
- NET_RT_IFLISTL = 0x5
- NET_RT_IFMALIST = 0x4
-+ NFDBITS = 0x40
- NOFLSH = 0x80000000
- NOKERNINFO = 0x2000000
-+ NOTE_ABSTIME = 0x10
- NOTE_ATTRIB = 0x8
- NOTE_CHILD = 0x4
- NOTE_CLOSE = 0x100
-@@ -1162,7 +1266,6 @@ const (
- RTV_WEIGHT = 0x100
- RT_ALL_FIBS = -0x1
- RT_BLACKHOLE = 0x40
-- RT_CACHING_CONTEXT = 0x1
- RT_DEFAULT_FIB = 0x0
- RT_HAS_GW = 0x80
- RT_HAS_HEADER = 0x10
-@@ -1172,15 +1275,17 @@ const (
- RT_LLE_CACHE = 0x100
- RT_MAY_LOOP = 0x8
- RT_MAY_LOOP_BIT = 0x3
-- RT_NORTREF = 0x2
- RT_REJECT = 0x20
- RUSAGE_CHILDREN = -0x1
- RUSAGE_SELF = 0x0
- RUSAGE_THREAD = 0x1
- SCM_BINTIME = 0x4
- SCM_CREDS = 0x3
-+ SCM_MONOTONIC = 0x6
-+ SCM_REALTIME = 0x5
- SCM_RIGHTS = 0x1
- SCM_TIMESTAMP = 0x2
-+ SCM_TIME_INFO = 0x7
- SHUT_RD = 0x0
- SHUT_RDWR = 0x2
- SHUT_WR = 0x1
-@@ -1196,6 +1301,7 @@ const (
- SIOCGETSGCNT = 0xc0207210
- SIOCGETVIFCNT = 0xc028720f
- SIOCGHIWAT = 0x40047301
-+ SIOCGHWADDR = 0xc020693e
- SIOCGI2C = 0xc020693d
- SIOCGIFADDR = 0xc0206921
- SIOCGIFBRDADDR = 0xc0206923
-@@ -1217,8 +1323,11 @@ const (
- SIOCGIFPDSTADDR = 0xc0206948
- SIOCGIFPHYS = 0xc0206935
- SIOCGIFPSRCADDR = 0xc0206947
-+ SIOCGIFRSSHASH = 0xc0186997
-+ SIOCGIFRSSKEY = 0xc0946996
- SIOCGIFSTATUS = 0xc331693b
- SIOCGIFXMEDIA = 0xc030698b
-+ SIOCGLANPCP = 0xc0206998
- SIOCGLOWAT = 0x40047303
- SIOCGPGRP = 0x40047309
- SIOCGPRIVATE_0 = 0xc0206950
-@@ -1249,6 +1358,7 @@ const (
- SIOCSIFPHYS = 0x80206936
- SIOCSIFRVNET = 0xc020695b
- SIOCSIFVNET = 0xc020695a
-+ SIOCSLANPCP = 0x80206999
- SIOCSLOWAT = 0x80047302
- SIOCSPGRP = 0x80047308
- SIOCSTUNFIB = 0x8020695f
-@@ -1267,6 +1377,7 @@ const (
- SO_BINTIME = 0x2000
- SO_BROADCAST = 0x20
- SO_DEBUG = 0x1
-+ SO_DOMAIN = 0x1019
- SO_DONTROUTE = 0x10
- SO_ERROR = 0x1007
- SO_KEEPALIVE = 0x8
-@@ -1275,6 +1386,7 @@ const (
- SO_LISTENINCQLEN = 0x1013
- SO_LISTENQLEN = 0x1012
- SO_LISTENQLIMIT = 0x1011
-+ SO_MAX_PACING_RATE = 0x1018
- SO_NOSIGPIPE = 0x800
- SO_NO_DDP = 0x8000
- SO_NO_OFFLOAD = 0x4000
-@@ -1287,15 +1399,52 @@ const (
- SO_RCVTIMEO = 0x1006
- SO_REUSEADDR = 0x4
- SO_REUSEPORT = 0x200
-+ SO_REUSEPORT_LB = 0x10000
- SO_SETFIB = 0x1014
- SO_SNDBUF = 0x1001
- SO_SNDLOWAT = 0x1003
- SO_SNDTIMEO = 0x1005
- SO_TIMESTAMP = 0x400
-+ SO_TS_BINTIME = 0x1
-+ SO_TS_CLOCK = 0x1017
-+ SO_TS_CLOCK_MAX = 0x3
-+ SO_TS_DEFAULT = 0x0
-+ SO_TS_MONOTONIC = 0x3
-+ SO_TS_REALTIME = 0x2
-+ SO_TS_REALTIME_MICRO = 0x0
- SO_TYPE = 0x1008
- SO_USELOOPBACK = 0x40
- SO_USER_COOKIE = 0x1015
- SO_VENDOR = 0x80000000
-+ S_BLKSIZE = 0x200
-+ S_IEXEC = 0x40
-+ S_IFBLK = 0x6000
-+ S_IFCHR = 0x2000
-+ S_IFDIR = 0x4000
-+ S_IFIFO = 0x1000
-+ S_IFLNK = 0xa000
-+ S_IFMT = 0xf000
-+ S_IFREG = 0x8000
-+ S_IFSOCK = 0xc000
-+ S_IFWHT = 0xe000
-+ S_IREAD = 0x100
-+ S_IRGRP = 0x20
-+ S_IROTH = 0x4
-+ S_IRUSR = 0x100
-+ S_IRWXG = 0x38
-+ S_IRWXO = 0x7
-+ S_IRWXU = 0x1c0
-+ S_ISGID = 0x400
-+ S_ISTXT = 0x200
-+ S_ISUID = 0x800
-+ S_ISVTX = 0x200
-+ S_IWGRP = 0x10
-+ S_IWOTH = 0x2
-+ S_IWRITE = 0x80
-+ S_IWUSR = 0x80
-+ S_IXGRP = 0x8
-+ S_IXOTH = 0x1
-+ S_IXUSR = 0x40
- TAB0 = 0x0
- TAB3 = 0x4
- TABDLY = 0x4
-@@ -1306,10 +1455,45 @@ const (
- TCOFLUSH = 0x2
- TCOOFF = 0x1
- TCOON = 0x2
-+ TCP_BBR_ACK_COMP_ALG = 0x448
-+ TCP_BBR_DRAIN_INC_EXTRA = 0x43c
-+ TCP_BBR_DRAIN_PG = 0x42e
-+ TCP_BBR_EXTRA_GAIN = 0x449
-+ TCP_BBR_IWINTSO = 0x42b
-+ TCP_BBR_LOWGAIN_FD = 0x436
-+ TCP_BBR_LOWGAIN_HALF = 0x435
-+ TCP_BBR_LOWGAIN_THRESH = 0x434
-+ TCP_BBR_MAX_RTO = 0x439
-+ TCP_BBR_MIN_RTO = 0x438
-+ TCP_BBR_ONE_RETRAN = 0x431
-+ TCP_BBR_PACE_CROSS = 0x442
-+ TCP_BBR_PACE_DEL_TAR = 0x43f
-+ TCP_BBR_PACE_PER_SEC = 0x43e
-+ TCP_BBR_PACE_SEG_MAX = 0x440
-+ TCP_BBR_PACE_SEG_MIN = 0x441
-+ TCP_BBR_PROBE_RTT_GAIN = 0x44d
-+ TCP_BBR_PROBE_RTT_INT = 0x430
-+ TCP_BBR_PROBE_RTT_LEN = 0x44e
-+ TCP_BBR_RACK_RTT_USE = 0x44a
-+ TCP_BBR_RECFORCE = 0x42c
-+ TCP_BBR_REC_OVER_HPTS = 0x43a
-+ TCP_BBR_RETRAN_WTSO = 0x44b
-+ TCP_BBR_RWND_IS_APP = 0x42f
-+ TCP_BBR_STARTUP_EXIT_EPOCH = 0x43d
-+ TCP_BBR_STARTUP_LOSS_EXIT = 0x432
-+ TCP_BBR_STARTUP_PG = 0x42d
-+ TCP_BBR_UNLIMITED = 0x43b
-+ TCP_BBR_USEDEL_RATE = 0x437
-+ TCP_BBR_USE_LOWGAIN = 0x433
- TCP_CA_NAME_MAX = 0x10
- TCP_CCALGOOPT = 0x41
- TCP_CONGESTION = 0x40
-+ TCP_DATA_AFTER_CLOSE = 0x44c
-+ TCP_DELACK = 0x48
- TCP_FASTOPEN = 0x401
-+ TCP_FASTOPEN_MAX_COOKIE_LEN = 0x10
-+ TCP_FASTOPEN_MIN_COOKIE_LEN = 0x4
-+ TCP_FASTOPEN_PSK_LEN = 0x10
- TCP_FUNCTION_BLK = 0x2000
- TCP_FUNCTION_NAME_LEN_MAX = 0x20
- TCP_INFO = 0x20
-@@ -1317,6 +1501,12 @@ const (
- TCP_KEEPIDLE = 0x100
- TCP_KEEPINIT = 0x80
- TCP_KEEPINTVL = 0x200
-+ TCP_LOG = 0x22
-+ TCP_LOGBUF = 0x23
-+ TCP_LOGDUMP = 0x25
-+ TCP_LOGDUMPID = 0x26
-+ TCP_LOGID = 0x24
-+ TCP_LOG_ID_LEN = 0x40
- TCP_MAXBURST = 0x4
- TCP_MAXHLEN = 0x3c
- TCP_MAXOLEN = 0x28
-@@ -1332,8 +1522,30 @@ const (
- TCP_NOPUSH = 0x4
- TCP_PCAP_IN = 0x1000
- TCP_PCAP_OUT = 0x800
-+ TCP_RACK_EARLY_RECOV = 0x423
-+ TCP_RACK_EARLY_SEG = 0x424
-+ TCP_RACK_IDLE_REDUCE_HIGH = 0x444
-+ TCP_RACK_MIN_PACE = 0x445
-+ TCP_RACK_MIN_PACE_SEG = 0x446
-+ TCP_RACK_MIN_TO = 0x422
-+ TCP_RACK_PACE_ALWAYS = 0x41f
-+ TCP_RACK_PACE_MAX_SEG = 0x41e
-+ TCP_RACK_PACE_REDUCE = 0x41d
-+ TCP_RACK_PKT_DELAY = 0x428
-+ TCP_RACK_PROP = 0x41b
-+ TCP_RACK_PROP_RATE = 0x420
-+ TCP_RACK_PRR_SENDALOT = 0x421
-+ TCP_RACK_REORD_FADE = 0x426
-+ TCP_RACK_REORD_THRESH = 0x425
-+ TCP_RACK_SESS_CWV = 0x42a
-+ TCP_RACK_TLP_INC_VAR = 0x429
-+ TCP_RACK_TLP_REDUCE = 0x41c
-+ TCP_RACK_TLP_THRESH = 0x427
-+ TCP_RACK_TLP_USE = 0x447
- TCP_VENDOR = 0x80000000
- TCSAFLUSH = 0x2
-+ TIMER_ABSTIME = 0x1
-+ TIMER_RELTIME = 0x0
- TIOCCBRK = 0x2000747a
- TIOCCDTR = 0x20007478
- TIOCCONS = 0x80047462
-@@ -1397,6 +1609,8 @@ const (
- TIOCTIMESTAMP = 0x40107459
- TIOCUCNTL = 0x80047466
- TOSTOP = 0x400000
-+ UTIME_NOW = -0x1
-+ UTIME_OMIT = -0x2
- VDISCARD = 0xf
- VDSUSP = 0xb
- VEOF = 0x0
-@@ -1408,6 +1622,7 @@ const (
- VKILL = 0x5
- VLNEXT = 0xe
- VMIN = 0x10
-+ VM_BCACHE_SIZE_MAX = 0x19000000
- VQUIT = 0x9
- VREPRINT = 0x6
- VSTART = 0xc
-@@ -1570,138 +1785,146 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "operation timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "identifier removed",
-- 83: "no message of desired type",
-- 84: "value too large to be stored in data type",
-- 85: "operation canceled",
-- 86: "illegal byte sequence",
-- 87: "attribute not found",
-- 88: "programming error",
-- 89: "bad message",
-- 90: "multihop attempted",
-- 91: "link has been severed",
-- 92: "protocol error",
-- 93: "capabilities insufficient",
-- 94: "not permitted in capability mode",
-- 95: "state not recoverable",
-- 96: "previous owner died",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "EOPNOTSUPP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "operation timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disc quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EIDRM", "identifier removed"},
-+ {83, "ENOMSG", "no message of desired type"},
-+ {84, "EOVERFLOW", "value too large to be stored in data type"},
-+ {85, "ECANCELED", "operation canceled"},
-+ {86, "EILSEQ", "illegal byte sequence"},
-+ {87, "ENOATTR", "attribute not found"},
-+ {88, "EDOOFUS", "programming error"},
-+ {89, "EBADMSG", "bad message"},
-+ {90, "EMULTIHOP", "multihop attempted"},
-+ {91, "ENOLINK", "link has been severed"},
-+ {92, "EPROTO", "protocol error"},
-+ {93, "ENOTCAPABLE", "capabilities insufficient"},
-+ {94, "ECAPMODE", "not permitted in capability mode"},
-+ {95, "ENOTRECOVERABLE", "state not recoverable"},
-+ {96, "EOWNERDEAD", "previous owner died"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "suspended (signal)",
-- 18: "suspended",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-- 32: "unknown signal",
-- 33: "unknown signal",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGIOT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "suspended (signal)"},
-+ {18, "SIGTSTP", "suspended"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGTHR", "unknown signal"},
-+ {33, "SIGLIBRT", "unknown signal"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux.go b/vendor/golang.org/x/sys/unix/zerrors_linux.go
-new file mode 100644
-index 00000000..21973940
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux.go
-@@ -0,0 +1,2469 @@
-+// Code generated by mkmerge.go; DO NOT EDIT.
-+
-+// +build linux
-+
-+package unix
-+
-+import "syscall"
-+
-+const (
-+ AAFS_MAGIC = 0x5a3c69f0
-+ ADFS_SUPER_MAGIC = 0xadf5
-+ AFFS_SUPER_MAGIC = 0xadff
-+ AFS_FS_MAGIC = 0x6b414653
-+ AFS_SUPER_MAGIC = 0x5346414f
-+ AF_ALG = 0x26
-+ AF_APPLETALK = 0x5
-+ AF_ASH = 0x12
-+ AF_ATMPVC = 0x8
-+ AF_ATMSVC = 0x14
-+ AF_AX25 = 0x3
-+ AF_BLUETOOTH = 0x1f
-+ AF_BRIDGE = 0x7
-+ AF_CAIF = 0x25
-+ AF_CAN = 0x1d
-+ AF_DECnet = 0xc
-+ AF_ECONET = 0x13
-+ AF_FILE = 0x1
-+ AF_IB = 0x1b
-+ AF_IEEE802154 = 0x24
-+ AF_INET = 0x2
-+ AF_INET6 = 0xa
-+ AF_IPX = 0x4
-+ AF_IRDA = 0x17
-+ AF_ISDN = 0x22
-+ AF_IUCV = 0x20
-+ AF_KCM = 0x29
-+ AF_KEY = 0xf
-+ AF_LLC = 0x1a
-+ AF_LOCAL = 0x1
-+ AF_MAX = 0x2d
-+ AF_MPLS = 0x1c
-+ AF_NETBEUI = 0xd
-+ AF_NETLINK = 0x10
-+ AF_NETROM = 0x6
-+ AF_NFC = 0x27
-+ AF_PACKET = 0x11
-+ AF_PHONET = 0x23
-+ AF_PPPOX = 0x18
-+ AF_QIPCRTR = 0x2a
-+ AF_RDS = 0x15
-+ AF_ROSE = 0xb
-+ AF_ROUTE = 0x10
-+ AF_RXRPC = 0x21
-+ AF_SECURITY = 0xe
-+ AF_SMC = 0x2b
-+ AF_SNA = 0x16
-+ AF_TIPC = 0x1e
-+ AF_UNIX = 0x1
-+ AF_UNSPEC = 0x0
-+ AF_VSOCK = 0x28
-+ AF_WANPIPE = 0x19
-+ AF_X25 = 0x9
-+ AF_XDP = 0x2c
-+ ALG_OP_DECRYPT = 0x0
-+ ALG_OP_ENCRYPT = 0x1
-+ ALG_SET_AEAD_ASSOCLEN = 0x4
-+ ALG_SET_AEAD_AUTHSIZE = 0x5
-+ ALG_SET_IV = 0x2
-+ ALG_SET_KEY = 0x1
-+ ALG_SET_OP = 0x3
-+ ANON_INODE_FS_MAGIC = 0x9041934
-+ ARPHRD_6LOWPAN = 0x339
-+ ARPHRD_ADAPT = 0x108
-+ ARPHRD_APPLETLK = 0x8
-+ ARPHRD_ARCNET = 0x7
-+ ARPHRD_ASH = 0x30d
-+ ARPHRD_ATM = 0x13
-+ ARPHRD_AX25 = 0x3
-+ ARPHRD_BIF = 0x307
-+ ARPHRD_CAIF = 0x336
-+ ARPHRD_CAN = 0x118
-+ ARPHRD_CHAOS = 0x5
-+ ARPHRD_CISCO = 0x201
-+ ARPHRD_CSLIP = 0x101
-+ ARPHRD_CSLIP6 = 0x103
-+ ARPHRD_DDCMP = 0x205
-+ ARPHRD_DLCI = 0xf
-+ ARPHRD_ECONET = 0x30e
-+ ARPHRD_EETHER = 0x2
-+ ARPHRD_ETHER = 0x1
-+ ARPHRD_EUI64 = 0x1b
-+ ARPHRD_FCAL = 0x311
-+ ARPHRD_FCFABRIC = 0x313
-+ ARPHRD_FCPL = 0x312
-+ ARPHRD_FCPP = 0x310
-+ ARPHRD_FDDI = 0x306
-+ ARPHRD_FRAD = 0x302
-+ ARPHRD_HDLC = 0x201
-+ ARPHRD_HIPPI = 0x30c
-+ ARPHRD_HWX25 = 0x110
-+ ARPHRD_IEEE1394 = 0x18
-+ ARPHRD_IEEE802 = 0x6
-+ ARPHRD_IEEE80211 = 0x321
-+ ARPHRD_IEEE80211_PRISM = 0x322
-+ ARPHRD_IEEE80211_RADIOTAP = 0x323
-+ ARPHRD_IEEE802154 = 0x324
-+ ARPHRD_IEEE802154_MONITOR = 0x325
-+ ARPHRD_IEEE802_TR = 0x320
-+ ARPHRD_INFINIBAND = 0x20
-+ ARPHRD_IP6GRE = 0x337
-+ ARPHRD_IPDDP = 0x309
-+ ARPHRD_IPGRE = 0x30a
-+ ARPHRD_IRDA = 0x30f
-+ ARPHRD_LAPB = 0x204
-+ ARPHRD_LOCALTLK = 0x305
-+ ARPHRD_LOOPBACK = 0x304
-+ ARPHRD_METRICOM = 0x17
-+ ARPHRD_NETLINK = 0x338
-+ ARPHRD_NETROM = 0x0
-+ ARPHRD_NONE = 0xfffe
-+ ARPHRD_PHONET = 0x334
-+ ARPHRD_PHONET_PIPE = 0x335
-+ ARPHRD_PIMREG = 0x30b
-+ ARPHRD_PPP = 0x200
-+ ARPHRD_PRONET = 0x4
-+ ARPHRD_RAWHDLC = 0x206
-+ ARPHRD_RAWIP = 0x207
-+ ARPHRD_ROSE = 0x10e
-+ ARPHRD_RSRVD = 0x104
-+ ARPHRD_SIT = 0x308
-+ ARPHRD_SKIP = 0x303
-+ ARPHRD_SLIP = 0x100
-+ ARPHRD_SLIP6 = 0x102
-+ ARPHRD_TUNNEL = 0x300
-+ ARPHRD_TUNNEL6 = 0x301
-+ ARPHRD_VOID = 0xffff
-+ ARPHRD_VSOCKMON = 0x33a
-+ ARPHRD_X25 = 0x10f
-+ AUTOFS_SUPER_MAGIC = 0x187
-+ B0 = 0x0
-+ B110 = 0x3
-+ B1200 = 0x9
-+ B134 = 0x4
-+ B150 = 0x5
-+ B1800 = 0xa
-+ B19200 = 0xe
-+ B200 = 0x6
-+ B2400 = 0xb
-+ B300 = 0x7
-+ B38400 = 0xf
-+ B4800 = 0xc
-+ B50 = 0x1
-+ B600 = 0x8
-+ B75 = 0x2
-+ B9600 = 0xd
-+ BALLOON_KVM_MAGIC = 0x13661366
-+ BDEVFS_MAGIC = 0x62646576
-+ BINDERFS_SUPER_MAGIC = 0x6c6f6f70
-+ BINFMTFS_MAGIC = 0x42494e4d
-+ BPF_A = 0x10
-+ BPF_ABS = 0x20
-+ BPF_ADD = 0x0
-+ BPF_ADJ_ROOM_ENCAP_L2_MASK = 0xff
-+ BPF_ADJ_ROOM_ENCAP_L2_SHIFT = 0x38
-+ BPF_ALU = 0x4
-+ BPF_ALU64 = 0x7
-+ BPF_AND = 0x50
-+ BPF_ANY = 0x0
-+ BPF_ARSH = 0xc0
-+ BPF_B = 0x10
-+ BPF_BUILD_ID_SIZE = 0x14
-+ BPF_CALL = 0x80
-+ BPF_DEVCG_ACC_MKNOD = 0x1
-+ BPF_DEVCG_ACC_READ = 0x2
-+ BPF_DEVCG_ACC_WRITE = 0x4
-+ BPF_DEVCG_DEV_BLOCK = 0x1
-+ BPF_DEVCG_DEV_CHAR = 0x2
-+ BPF_DIV = 0x30
-+ BPF_DW = 0x18
-+ BPF_END = 0xd0
-+ BPF_EXIST = 0x2
-+ BPF_EXIT = 0x90
-+ BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG = 0x1
-+ BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP = 0x4
-+ BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL = 0x2
-+ BPF_FROM_BE = 0x8
-+ BPF_FROM_LE = 0x0
-+ BPF_FS_MAGIC = 0xcafe4a11
-+ BPF_F_ADJ_ROOM_ENCAP_L3_IPV4 = 0x2
-+ BPF_F_ADJ_ROOM_ENCAP_L3_IPV6 = 0x4
-+ BPF_F_ADJ_ROOM_ENCAP_L4_GRE = 0x8
-+ BPF_F_ADJ_ROOM_ENCAP_L4_UDP = 0x10
-+ BPF_F_ADJ_ROOM_FIXED_GSO = 0x1
-+ BPF_F_ALLOW_MULTI = 0x2
-+ BPF_F_ALLOW_OVERRIDE = 0x1
-+ BPF_F_ANY_ALIGNMENT = 0x2
-+ BPF_F_CLONE = 0x200
-+ BPF_F_CTXLEN_MASK = 0xfffff00000000
-+ BPF_F_CURRENT_CPU = 0xffffffff
-+ BPF_F_CURRENT_NETNS = -0x1
-+ BPF_F_DONT_FRAGMENT = 0x4
-+ BPF_F_FAST_STACK_CMP = 0x200
-+ BPF_F_HDR_FIELD_MASK = 0xf
-+ BPF_F_INDEX_MASK = 0xffffffff
-+ BPF_F_INGRESS = 0x1
-+ BPF_F_INVALIDATE_HASH = 0x2
-+ BPF_F_LOCK = 0x4
-+ BPF_F_MARK_ENFORCE = 0x40
-+ BPF_F_MARK_MANGLED_0 = 0x20
-+ BPF_F_MMAPABLE = 0x400
-+ BPF_F_NO_COMMON_LRU = 0x2
-+ BPF_F_NO_PREALLOC = 0x1
-+ BPF_F_NUMA_NODE = 0x4
-+ BPF_F_PSEUDO_HDR = 0x10
-+ BPF_F_QUERY_EFFECTIVE = 0x1
-+ BPF_F_RDONLY = 0x8
-+ BPF_F_RDONLY_PROG = 0x80
-+ BPF_F_RECOMPUTE_CSUM = 0x1
-+ BPF_F_REPLACE = 0x4
-+ BPF_F_REUSE_STACKID = 0x400
-+ BPF_F_SEQ_NUMBER = 0x8
-+ BPF_F_SKIP_FIELD_MASK = 0xff
-+ BPF_F_STACK_BUILD_ID = 0x20
-+ BPF_F_STRICT_ALIGNMENT = 0x1
-+ BPF_F_SYSCTL_BASE_NAME = 0x1
-+ BPF_F_TEST_RND_HI32 = 0x4
-+ BPF_F_TEST_STATE_FREQ = 0x8
-+ BPF_F_TUNINFO_IPV6 = 0x1
-+ BPF_F_USER_BUILD_ID = 0x800
-+ BPF_F_USER_STACK = 0x100
-+ BPF_F_WRONLY = 0x10
-+ BPF_F_WRONLY_PROG = 0x100
-+ BPF_F_ZERO_CSUM_TX = 0x2
-+ BPF_F_ZERO_SEED = 0x40
-+ BPF_H = 0x8
-+ BPF_IMM = 0x0
-+ BPF_IND = 0x40
-+ BPF_JA = 0x0
-+ BPF_JEQ = 0x10
-+ BPF_JGE = 0x30
-+ BPF_JGT = 0x20
-+ BPF_JLE = 0xb0
-+ BPF_JLT = 0xa0
-+ BPF_JMP = 0x5
-+ BPF_JMP32 = 0x6
-+ BPF_JNE = 0x50
-+ BPF_JSET = 0x40
-+ BPF_JSGE = 0x70
-+ BPF_JSGT = 0x60
-+ BPF_JSLE = 0xd0
-+ BPF_JSLT = 0xc0
-+ BPF_K = 0x0
-+ BPF_LD = 0x0
-+ BPF_LDX = 0x1
-+ BPF_LEN = 0x80
-+ BPF_LL_OFF = -0x200000
-+ BPF_LSH = 0x60
-+ BPF_MAJOR_VERSION = 0x1
-+ BPF_MAXINSNS = 0x1000
-+ BPF_MEM = 0x60
-+ BPF_MEMWORDS = 0x10
-+ BPF_MINOR_VERSION = 0x1
-+ BPF_MISC = 0x7
-+ BPF_MOD = 0x90
-+ BPF_MOV = 0xb0
-+ BPF_MSH = 0xa0
-+ BPF_MUL = 0x20
-+ BPF_NEG = 0x80
-+ BPF_NET_OFF = -0x100000
-+ BPF_NOEXIST = 0x1
-+ BPF_OBJ_NAME_LEN = 0x10
-+ BPF_OR = 0x40
-+ BPF_PSEUDO_CALL = 0x1
-+ BPF_PSEUDO_MAP_FD = 0x1
-+ BPF_PSEUDO_MAP_VALUE = 0x2
-+ BPF_RET = 0x6
-+ BPF_RSH = 0x70
-+ BPF_SK_STORAGE_GET_F_CREATE = 0x1
-+ BPF_SOCK_OPS_ALL_CB_FLAGS = 0xf
-+ BPF_SOCK_OPS_RETRANS_CB_FLAG = 0x2
-+ BPF_SOCK_OPS_RTO_CB_FLAG = 0x1
-+ BPF_SOCK_OPS_RTT_CB_FLAG = 0x8
-+ BPF_SOCK_OPS_STATE_CB_FLAG = 0x4
-+ BPF_ST = 0x2
-+ BPF_STX = 0x3
-+ BPF_SUB = 0x10
-+ BPF_TAG_SIZE = 0x8
-+ BPF_TAX = 0x0
-+ BPF_TO_BE = 0x8
-+ BPF_TO_LE = 0x0
-+ BPF_TXA = 0x80
-+ BPF_W = 0x0
-+ BPF_X = 0x8
-+ BPF_XADD = 0xc0
-+ BPF_XOR = 0xa0
-+ BRKINT = 0x2
-+ BS0 = 0x0
-+ BTRFS_SUPER_MAGIC = 0x9123683e
-+ BTRFS_TEST_MAGIC = 0x73727279
-+ CAN_BCM = 0x2
-+ CAN_EFF_FLAG = 0x80000000
-+ CAN_EFF_ID_BITS = 0x1d
-+ CAN_EFF_MASK = 0x1fffffff
-+ CAN_ERR_FLAG = 0x20000000
-+ CAN_ERR_MASK = 0x1fffffff
-+ CAN_INV_FILTER = 0x20000000
-+ CAN_ISOTP = 0x6
-+ CAN_J1939 = 0x7
-+ CAN_MAX_DLC = 0x8
-+ CAN_MAX_DLEN = 0x8
-+ CAN_MCNET = 0x5
-+ CAN_MTU = 0x10
-+ CAN_NPROTO = 0x8
-+ CAN_RAW = 0x1
-+ CAN_RAW_FILTER_MAX = 0x200
-+ CAN_RTR_FLAG = 0x40000000
-+ CAN_SFF_ID_BITS = 0xb
-+ CAN_SFF_MASK = 0x7ff
-+ CAN_TP16 = 0x3
-+ CAN_TP20 = 0x4
-+ CAP_AUDIT_CONTROL = 0x1e
-+ CAP_AUDIT_READ = 0x25
-+ CAP_AUDIT_WRITE = 0x1d
-+ CAP_BLOCK_SUSPEND = 0x24
-+ CAP_CHOWN = 0x0
-+ CAP_DAC_OVERRIDE = 0x1
-+ CAP_DAC_READ_SEARCH = 0x2
-+ CAP_FOWNER = 0x3
-+ CAP_FSETID = 0x4
-+ CAP_IPC_LOCK = 0xe
-+ CAP_IPC_OWNER = 0xf
-+ CAP_KILL = 0x5
-+ CAP_LAST_CAP = 0x25
-+ CAP_LEASE = 0x1c
-+ CAP_LINUX_IMMUTABLE = 0x9
-+ CAP_MAC_ADMIN = 0x21
-+ CAP_MAC_OVERRIDE = 0x20
-+ CAP_MKNOD = 0x1b
-+ CAP_NET_ADMIN = 0xc
-+ CAP_NET_BIND_SERVICE = 0xa
-+ CAP_NET_BROADCAST = 0xb
-+ CAP_NET_RAW = 0xd
-+ CAP_SETFCAP = 0x1f
-+ CAP_SETGID = 0x6
-+ CAP_SETPCAP = 0x8
-+ CAP_SETUID = 0x7
-+ CAP_SYSLOG = 0x22
-+ CAP_SYS_ADMIN = 0x15
-+ CAP_SYS_BOOT = 0x16
-+ CAP_SYS_CHROOT = 0x12
-+ CAP_SYS_MODULE = 0x10
-+ CAP_SYS_NICE = 0x17
-+ CAP_SYS_PACCT = 0x14
-+ CAP_SYS_PTRACE = 0x13
-+ CAP_SYS_RAWIO = 0x11
-+ CAP_SYS_RESOURCE = 0x18
-+ CAP_SYS_TIME = 0x19
-+ CAP_SYS_TTY_CONFIG = 0x1a
-+ CAP_WAKE_ALARM = 0x23
-+ CFLUSH = 0xf
-+ CGROUP2_SUPER_MAGIC = 0x63677270
-+ CGROUP_SUPER_MAGIC = 0x27e0eb
-+ CLOCK_BOOTTIME = 0x7
-+ CLOCK_BOOTTIME_ALARM = 0x9
-+ CLOCK_DEFAULT = 0x0
-+ CLOCK_EXT = 0x1
-+ CLOCK_INT = 0x2
-+ CLOCK_MONOTONIC = 0x1
-+ CLOCK_MONOTONIC_COARSE = 0x6
-+ CLOCK_MONOTONIC_RAW = 0x4
-+ CLOCK_PROCESS_CPUTIME_ID = 0x2
-+ CLOCK_REALTIME = 0x0
-+ CLOCK_REALTIME_ALARM = 0x8
-+ CLOCK_REALTIME_COARSE = 0x5
-+ CLOCK_TAI = 0xb
-+ CLOCK_THREAD_CPUTIME_ID = 0x3
-+ CLOCK_TXFROMRX = 0x4
-+ CLOCK_TXINT = 0x3
-+ CLONE_ARGS_SIZE_VER0 = 0x40
-+ CLONE_ARGS_SIZE_VER1 = 0x50
-+ CLONE_CHILD_CLEARTID = 0x200000
-+ CLONE_CHILD_SETTID = 0x1000000
-+ CLONE_CLEAR_SIGHAND = 0x100000000
-+ CLONE_DETACHED = 0x400000
-+ CLONE_FILES = 0x400
-+ CLONE_FS = 0x200
-+ CLONE_IO = 0x80000000
-+ CLONE_NEWCGROUP = 0x2000000
-+ CLONE_NEWIPC = 0x8000000
-+ CLONE_NEWNET = 0x40000000
-+ CLONE_NEWNS = 0x20000
-+ CLONE_NEWPID = 0x20000000
-+ CLONE_NEWTIME = 0x80
-+ CLONE_NEWUSER = 0x10000000
-+ CLONE_NEWUTS = 0x4000000
-+ CLONE_PARENT = 0x8000
-+ CLONE_PARENT_SETTID = 0x100000
-+ CLONE_PIDFD = 0x1000
-+ CLONE_PTRACE = 0x2000
-+ CLONE_SETTLS = 0x80000
-+ CLONE_SIGHAND = 0x800
-+ CLONE_SYSVSEM = 0x40000
-+ CLONE_THREAD = 0x10000
-+ CLONE_UNTRACED = 0x800000
-+ CLONE_VFORK = 0x4000
-+ CLONE_VM = 0x100
-+ CMSPAR = 0x40000000
-+ CODA_SUPER_MAGIC = 0x73757245
-+ CR0 = 0x0
-+ CRAMFS_MAGIC = 0x28cd3d45
-+ CRTSCTS = 0x80000000
-+ CRYPTO_MAX_NAME = 0x40
-+ CRYPTO_MSG_MAX = 0x15
-+ CRYPTO_NR_MSGTYPES = 0x6
-+ CRYPTO_REPORT_MAXSIZE = 0x160
-+ CS5 = 0x0
-+ CSIGNAL = 0xff
-+ CSTART = 0x11
-+ CSTATUS = 0x0
-+ CSTOP = 0x13
-+ CSUSP = 0x1a
-+ DAXFS_MAGIC = 0x64646178
-+ DEBUGFS_MAGIC = 0x64626720
-+ DEVLINK_CMD_ESWITCH_MODE_GET = 0x1d
-+ DEVLINK_CMD_ESWITCH_MODE_SET = 0x1e
-+ DEVLINK_GENL_MCGRP_CONFIG_NAME = "config"
-+ DEVLINK_GENL_NAME = "devlink"
-+ DEVLINK_GENL_VERSION = 0x1
-+ DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX = 0x14
-+ DEVPTS_SUPER_MAGIC = 0x1cd1
-+ DMA_BUF_MAGIC = 0x444d4142
-+ DT_BLK = 0x6
-+ DT_CHR = 0x2
-+ DT_DIR = 0x4
-+ DT_FIFO = 0x1
-+ DT_LNK = 0xa
-+ DT_REG = 0x8
-+ DT_SOCK = 0xc
-+ DT_UNKNOWN = 0x0
-+ DT_WHT = 0xe
-+ ECHO = 0x8
-+ ECRYPTFS_SUPER_MAGIC = 0xf15f
-+ EFD_SEMAPHORE = 0x1
-+ EFIVARFS_MAGIC = 0xde5e81e4
-+ EFS_SUPER_MAGIC = 0x414a53
-+ ENCODING_DEFAULT = 0x0
-+ ENCODING_FM_MARK = 0x3
-+ ENCODING_FM_SPACE = 0x4
-+ ENCODING_MANCHESTER = 0x5
-+ ENCODING_NRZ = 0x1
-+ ENCODING_NRZI = 0x2
-+ EPOLLERR = 0x8
-+ EPOLLET = 0x80000000
-+ EPOLLEXCLUSIVE = 0x10000000
-+ EPOLLHUP = 0x10
-+ EPOLLIN = 0x1
-+ EPOLLMSG = 0x400
-+ EPOLLONESHOT = 0x40000000
-+ EPOLLOUT = 0x4
-+ EPOLLPRI = 0x2
-+ EPOLLRDBAND = 0x80
-+ EPOLLRDHUP = 0x2000
-+ EPOLLRDNORM = 0x40
-+ EPOLLWAKEUP = 0x20000000
-+ EPOLLWRBAND = 0x200
-+ EPOLLWRNORM = 0x100
-+ EPOLL_CTL_ADD = 0x1
-+ EPOLL_CTL_DEL = 0x2
-+ EPOLL_CTL_MOD = 0x3
-+ EROFS_SUPER_MAGIC_V1 = 0xe0f5e1e2
-+ ETH_P_1588 = 0x88f7
-+ ETH_P_8021AD = 0x88a8
-+ ETH_P_8021AH = 0x88e7
-+ ETH_P_8021Q = 0x8100
-+ ETH_P_80221 = 0x8917
-+ ETH_P_802_2 = 0x4
-+ ETH_P_802_3 = 0x1
-+ ETH_P_802_3_MIN = 0x600
-+ ETH_P_802_EX1 = 0x88b5
-+ ETH_P_AARP = 0x80f3
-+ ETH_P_AF_IUCV = 0xfbfb
-+ ETH_P_ALL = 0x3
-+ ETH_P_AOE = 0x88a2
-+ ETH_P_ARCNET = 0x1a
-+ ETH_P_ARP = 0x806
-+ ETH_P_ATALK = 0x809b
-+ ETH_P_ATMFATE = 0x8884
-+ ETH_P_ATMMPOA = 0x884c
-+ ETH_P_AX25 = 0x2
-+ ETH_P_BATMAN = 0x4305
-+ ETH_P_BPQ = 0x8ff
-+ ETH_P_CAIF = 0xf7
-+ ETH_P_CAN = 0xc
-+ ETH_P_CANFD = 0xd
-+ ETH_P_CONTROL = 0x16
-+ ETH_P_CUST = 0x6006
-+ ETH_P_DDCMP = 0x6
-+ ETH_P_DEC = 0x6000
-+ ETH_P_DIAG = 0x6005
-+ ETH_P_DNA_DL = 0x6001
-+ ETH_P_DNA_RC = 0x6002
-+ ETH_P_DNA_RT = 0x6003
-+ ETH_P_DSA = 0x1b
-+ ETH_P_DSA_8021Q = 0xdadb
-+ ETH_P_ECONET = 0x18
-+ ETH_P_EDSA = 0xdada
-+ ETH_P_ERSPAN = 0x88be
-+ ETH_P_ERSPAN2 = 0x22eb
-+ ETH_P_FCOE = 0x8906
-+ ETH_P_FIP = 0x8914
-+ ETH_P_HDLC = 0x19
-+ ETH_P_HSR = 0x892f
-+ ETH_P_IBOE = 0x8915
-+ ETH_P_IEEE802154 = 0xf6
-+ ETH_P_IEEEPUP = 0xa00
-+ ETH_P_IEEEPUPAT = 0xa01
-+ ETH_P_IFE = 0xed3e
-+ ETH_P_IP = 0x800
-+ ETH_P_IPV6 = 0x86dd
-+ ETH_P_IPX = 0x8137
-+ ETH_P_IRDA = 0x17
-+ ETH_P_LAT = 0x6004
-+ ETH_P_LINK_CTL = 0x886c
-+ ETH_P_LLDP = 0x88cc
-+ ETH_P_LOCALTALK = 0x9
-+ ETH_P_LOOP = 0x60
-+ ETH_P_LOOPBACK = 0x9000
-+ ETH_P_MACSEC = 0x88e5
-+ ETH_P_MAP = 0xf9
-+ ETH_P_MOBITEX = 0x15
-+ ETH_P_MPLS_MC = 0x8848
-+ ETH_P_MPLS_UC = 0x8847
-+ ETH_P_MVRP = 0x88f5
-+ ETH_P_NCSI = 0x88f8
-+ ETH_P_NSH = 0x894f
-+ ETH_P_PAE = 0x888e
-+ ETH_P_PAUSE = 0x8808
-+ ETH_P_PHONET = 0xf5
-+ ETH_P_PPPTALK = 0x10
-+ ETH_P_PPP_DISC = 0x8863
-+ ETH_P_PPP_MP = 0x8
-+ ETH_P_PPP_SES = 0x8864
-+ ETH_P_PREAUTH = 0x88c7
-+ ETH_P_PRP = 0x88fb
-+ ETH_P_PUP = 0x200
-+ ETH_P_PUPAT = 0x201
-+ ETH_P_QINQ1 = 0x9100
-+ ETH_P_QINQ2 = 0x9200
-+ ETH_P_QINQ3 = 0x9300
-+ ETH_P_RARP = 0x8035
-+ ETH_P_SCA = 0x6007
-+ ETH_P_SLOW = 0x8809
-+ ETH_P_SNAP = 0x5
-+ ETH_P_TDLS = 0x890d
-+ ETH_P_TEB = 0x6558
-+ ETH_P_TIPC = 0x88ca
-+ ETH_P_TRAILER = 0x1c
-+ ETH_P_TR_802_2 = 0x11
-+ ETH_P_TSN = 0x22f0
-+ ETH_P_WAN_PPP = 0x7
-+ ETH_P_WCCP = 0x883e
-+ ETH_P_X25 = 0x805
-+ ETH_P_XDSA = 0xf8
-+ EXABYTE_ENABLE_NEST = 0xf0
-+ EXT2_SUPER_MAGIC = 0xef53
-+ EXT3_SUPER_MAGIC = 0xef53
-+ EXT4_SUPER_MAGIC = 0xef53
-+ EXTA = 0xe
-+ EXTB = 0xf
-+ F2FS_SUPER_MAGIC = 0xf2f52010
-+ FALLOC_FL_COLLAPSE_RANGE = 0x8
-+ FALLOC_FL_INSERT_RANGE = 0x20
-+ FALLOC_FL_KEEP_SIZE = 0x1
-+ FALLOC_FL_NO_HIDE_STALE = 0x4
-+ FALLOC_FL_PUNCH_HOLE = 0x2
-+ FALLOC_FL_UNSHARE_RANGE = 0x40
-+ FALLOC_FL_ZERO_RANGE = 0x10
-+ FANOTIFY_METADATA_VERSION = 0x3
-+ FAN_ACCESS = 0x1
-+ FAN_ACCESS_PERM = 0x20000
-+ FAN_ALLOW = 0x1
-+ FAN_ALL_CLASS_BITS = 0xc
-+ FAN_ALL_EVENTS = 0x3b
-+ FAN_ALL_INIT_FLAGS = 0x3f
-+ FAN_ALL_MARK_FLAGS = 0xff
-+ FAN_ALL_OUTGOING_EVENTS = 0x3403b
-+ FAN_ALL_PERM_EVENTS = 0x30000
-+ FAN_ATTRIB = 0x4
-+ FAN_AUDIT = 0x10
-+ FAN_CLASS_CONTENT = 0x4
-+ FAN_CLASS_NOTIF = 0x0
-+ FAN_CLASS_PRE_CONTENT = 0x8
-+ FAN_CLOEXEC = 0x1
-+ FAN_CLOSE = 0x18
-+ FAN_CLOSE_NOWRITE = 0x10
-+ FAN_CLOSE_WRITE = 0x8
-+ FAN_CREATE = 0x100
-+ FAN_DELETE = 0x200
-+ FAN_DELETE_SELF = 0x400
-+ FAN_DENY = 0x2
-+ FAN_ENABLE_AUDIT = 0x40
-+ FAN_EVENT_INFO_TYPE_FID = 0x1
-+ FAN_EVENT_METADATA_LEN = 0x18
-+ FAN_EVENT_ON_CHILD = 0x8000000
-+ FAN_MARK_ADD = 0x1
-+ FAN_MARK_DONT_FOLLOW = 0x4
-+ FAN_MARK_FILESYSTEM = 0x100
-+ FAN_MARK_FLUSH = 0x80
-+ FAN_MARK_IGNORED_MASK = 0x20
-+ FAN_MARK_IGNORED_SURV_MODIFY = 0x40
-+ FAN_MARK_INODE = 0x0
-+ FAN_MARK_MOUNT = 0x10
-+ FAN_MARK_ONLYDIR = 0x8
-+ FAN_MARK_REMOVE = 0x2
-+ FAN_MODIFY = 0x2
-+ FAN_MOVE = 0xc0
-+ FAN_MOVED_FROM = 0x40
-+ FAN_MOVED_TO = 0x80
-+ FAN_MOVE_SELF = 0x800
-+ FAN_NOFD = -0x1
-+ FAN_NONBLOCK = 0x2
-+ FAN_ONDIR = 0x40000000
-+ FAN_OPEN = 0x20
-+ FAN_OPEN_EXEC = 0x1000
-+ FAN_OPEN_EXEC_PERM = 0x40000
-+ FAN_OPEN_PERM = 0x10000
-+ FAN_Q_OVERFLOW = 0x4000
-+ FAN_REPORT_FID = 0x200
-+ FAN_REPORT_TID = 0x100
-+ FAN_UNLIMITED_MARKS = 0x20
-+ FAN_UNLIMITED_QUEUE = 0x10
-+ FD_CLOEXEC = 0x1
-+ FD_SETSIZE = 0x400
-+ FF0 = 0x0
-+ FSCRYPT_KEY_DESCRIPTOR_SIZE = 0x8
-+ FSCRYPT_KEY_DESC_PREFIX = "fscrypt:"
-+ FSCRYPT_KEY_DESC_PREFIX_SIZE = 0x8
-+ FSCRYPT_KEY_IDENTIFIER_SIZE = 0x10
-+ FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY = 0x1
-+ FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-+ FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR = 0x1
-+ FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER = 0x2
-+ FSCRYPT_KEY_STATUS_ABSENT = 0x1
-+ FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF = 0x1
-+ FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED = 0x3
-+ FSCRYPT_KEY_STATUS_PRESENT = 0x2
-+ FSCRYPT_MAX_KEY_SIZE = 0x40
-+ FSCRYPT_MODE_ADIANTUM = 0x9
-+ FSCRYPT_MODE_AES_128_CBC = 0x5
-+ FSCRYPT_MODE_AES_128_CTS = 0x6
-+ FSCRYPT_MODE_AES_256_CTS = 0x4
-+ FSCRYPT_MODE_AES_256_XTS = 0x1
-+ FSCRYPT_POLICY_FLAGS_PAD_16 = 0x2
-+ FSCRYPT_POLICY_FLAGS_PAD_32 = 0x3
-+ FSCRYPT_POLICY_FLAGS_PAD_4 = 0x0
-+ FSCRYPT_POLICY_FLAGS_PAD_8 = 0x1
-+ FSCRYPT_POLICY_FLAGS_PAD_MASK = 0x3
-+ FSCRYPT_POLICY_FLAGS_VALID = 0xf
-+ FSCRYPT_POLICY_FLAG_DIRECT_KEY = 0x4
-+ FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64 = 0x8
-+ FSCRYPT_POLICY_V1 = 0x0
-+ FSCRYPT_POLICY_V2 = 0x2
-+ FS_ENCRYPTION_MODE_ADIANTUM = 0x9
-+ FS_ENCRYPTION_MODE_AES_128_CBC = 0x5
-+ FS_ENCRYPTION_MODE_AES_128_CTS = 0x6
-+ FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
-+ FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
-+ FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
-+ FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
-+ FS_ENCRYPTION_MODE_INVALID = 0x0
-+ FS_ENCRYPTION_MODE_SPECK128_256_CTS = 0x8
-+ FS_ENCRYPTION_MODE_SPECK128_256_XTS = 0x7
-+ FS_IOC_ADD_ENCRYPTION_KEY = 0xc0506617
-+ FS_IOC_GET_ENCRYPTION_KEY_STATUS = 0xc080661a
-+ FS_IOC_GET_ENCRYPTION_POLICY_EX = 0xc0096616
-+ FS_IOC_MEASURE_VERITY = 0xc0046686
-+ FS_IOC_REMOVE_ENCRYPTION_KEY = 0xc0406618
-+ FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS = 0xc0406619
-+ FS_KEY_DESCRIPTOR_SIZE = 0x8
-+ FS_KEY_DESC_PREFIX = "fscrypt:"
-+ FS_KEY_DESC_PREFIX_SIZE = 0x8
-+ FS_MAX_KEY_SIZE = 0x40
-+ FS_POLICY_FLAGS_PAD_16 = 0x2
-+ FS_POLICY_FLAGS_PAD_32 = 0x3
-+ FS_POLICY_FLAGS_PAD_4 = 0x0
-+ FS_POLICY_FLAGS_PAD_8 = 0x1
-+ FS_POLICY_FLAGS_PAD_MASK = 0x3
-+ FS_POLICY_FLAGS_VALID = 0xf
-+ FS_VERITY_FL = 0x100000
-+ FS_VERITY_HASH_ALG_SHA256 = 0x1
-+ FS_VERITY_HASH_ALG_SHA512 = 0x2
-+ FUTEXFS_SUPER_MAGIC = 0xbad1dea
-+ F_ADD_SEALS = 0x409
-+ F_DUPFD = 0x0
-+ F_DUPFD_CLOEXEC = 0x406
-+ F_EXLCK = 0x4
-+ F_GETFD = 0x1
-+ F_GETFL = 0x3
-+ F_GETLEASE = 0x401
-+ F_GETOWN_EX = 0x10
-+ F_GETPIPE_SZ = 0x408
-+ F_GETSIG = 0xb
-+ F_GET_FILE_RW_HINT = 0x40d
-+ F_GET_RW_HINT = 0x40b
-+ F_GET_SEALS = 0x40a
-+ F_LOCK = 0x1
-+ F_NOTIFY = 0x402
-+ F_OFD_GETLK = 0x24
-+ F_OFD_SETLK = 0x25
-+ F_OFD_SETLKW = 0x26
-+ F_OK = 0x0
-+ F_SEAL_FUTURE_WRITE = 0x10
-+ F_SEAL_GROW = 0x4
-+ F_SEAL_SEAL = 0x1
-+ F_SEAL_SHRINK = 0x2
-+ F_SEAL_WRITE = 0x8
-+ F_SETFD = 0x2
-+ F_SETFL = 0x4
-+ F_SETLEASE = 0x400
-+ F_SETOWN_EX = 0xf
-+ F_SETPIPE_SZ = 0x407
-+ F_SETSIG = 0xa
-+ F_SET_FILE_RW_HINT = 0x40e
-+ F_SET_RW_HINT = 0x40c
-+ F_SHLCK = 0x8
-+ F_TEST = 0x3
-+ F_TLOCK = 0x2
-+ F_ULOCK = 0x0
-+ GENL_ADMIN_PERM = 0x1
-+ GENL_CMD_CAP_DO = 0x2
-+ GENL_CMD_CAP_DUMP = 0x4
-+ GENL_CMD_CAP_HASPOL = 0x8
-+ GENL_HDRLEN = 0x4
-+ GENL_ID_CTRL = 0x10
-+ GENL_ID_PMCRAID = 0x12
-+ GENL_ID_VFS_DQUOT = 0x11
-+ GENL_MAX_ID = 0x3ff
-+ GENL_MIN_ID = 0x10
-+ GENL_NAMSIZ = 0x10
-+ GENL_START_ALLOC = 0x13
-+ GENL_UNS_ADMIN_PERM = 0x10
-+ GRND_INSECURE = 0x4
-+ GRND_NONBLOCK = 0x1
-+ GRND_RANDOM = 0x2
-+ HDIO_DRIVE_CMD = 0x31f
-+ HDIO_DRIVE_CMD_AEB = 0x31e
-+ HDIO_DRIVE_CMD_HDR_SIZE = 0x4
-+ HDIO_DRIVE_HOB_HDR_SIZE = 0x8
-+ HDIO_DRIVE_RESET = 0x31c
-+ HDIO_DRIVE_TASK = 0x31e
-+ HDIO_DRIVE_TASKFILE = 0x31d
-+ HDIO_DRIVE_TASK_HDR_SIZE = 0x8
-+ HDIO_GETGEO = 0x301
-+ HDIO_GET_32BIT = 0x309
-+ HDIO_GET_ACOUSTIC = 0x30f
-+ HDIO_GET_ADDRESS = 0x310
-+ HDIO_GET_BUSSTATE = 0x31a
-+ HDIO_GET_DMA = 0x30b
-+ HDIO_GET_IDENTITY = 0x30d
-+ HDIO_GET_KEEPSETTINGS = 0x308
-+ HDIO_GET_MULTCOUNT = 0x304
-+ HDIO_GET_NICE = 0x30c
-+ HDIO_GET_NOWERR = 0x30a
-+ HDIO_GET_QDMA = 0x305
-+ HDIO_GET_UNMASKINTR = 0x302
-+ HDIO_GET_WCACHE = 0x30e
-+ HDIO_OBSOLETE_IDENTITY = 0x307
-+ HDIO_SCAN_HWIF = 0x328
-+ HDIO_SET_32BIT = 0x324
-+ HDIO_SET_ACOUSTIC = 0x32c
-+ HDIO_SET_ADDRESS = 0x32f
-+ HDIO_SET_BUSSTATE = 0x32d
-+ HDIO_SET_DMA = 0x326
-+ HDIO_SET_KEEPSETTINGS = 0x323
-+ HDIO_SET_MULTCOUNT = 0x321
-+ HDIO_SET_NICE = 0x329
-+ HDIO_SET_NOWERR = 0x325
-+ HDIO_SET_PIO_MODE = 0x327
-+ HDIO_SET_QDMA = 0x32e
-+ HDIO_SET_UNMASKINTR = 0x322
-+ HDIO_SET_WCACHE = 0x32b
-+ HDIO_SET_XFER = 0x306
-+ HDIO_TRISTATE_HWIF = 0x31b
-+ HDIO_UNREGISTER_HWIF = 0x32a
-+ HOSTFS_SUPER_MAGIC = 0xc0ffee
-+ HPFS_SUPER_MAGIC = 0xf995e849
-+ HUGETLBFS_MAGIC = 0x958458f6
-+ IBSHIFT = 0x10
-+ ICMPV6_FILTER = 0x1
-+ ICRNL = 0x100
-+ IFA_F_DADFAILED = 0x8
-+ IFA_F_DEPRECATED = 0x20
-+ IFA_F_HOMEADDRESS = 0x10
-+ IFA_F_MANAGETEMPADDR = 0x100
-+ IFA_F_MCAUTOJOIN = 0x400
-+ IFA_F_NODAD = 0x2
-+ IFA_F_NOPREFIXROUTE = 0x200
-+ IFA_F_OPTIMISTIC = 0x4
-+ IFA_F_PERMANENT = 0x80
-+ IFA_F_SECONDARY = 0x1
-+ IFA_F_STABLE_PRIVACY = 0x800
-+ IFA_F_TEMPORARY = 0x1
-+ IFA_F_TENTATIVE = 0x40
-+ IFA_MAX = 0xa
-+ IFF_ALLMULTI = 0x200
-+ IFF_ATTACH_QUEUE = 0x200
-+ IFF_AUTOMEDIA = 0x4000
-+ IFF_BROADCAST = 0x2
-+ IFF_DEBUG = 0x4
-+ IFF_DETACH_QUEUE = 0x400
-+ IFF_DORMANT = 0x20000
-+ IFF_DYNAMIC = 0x8000
-+ IFF_ECHO = 0x40000
-+ IFF_LOOPBACK = 0x8
-+ IFF_LOWER_UP = 0x10000
-+ IFF_MASTER = 0x400
-+ IFF_MULTICAST = 0x1000
-+ IFF_MULTI_QUEUE = 0x100
-+ IFF_NAPI = 0x10
-+ IFF_NAPI_FRAGS = 0x20
-+ IFF_NOARP = 0x80
-+ IFF_NOFILTER = 0x1000
-+ IFF_NOTRAILERS = 0x20
-+ IFF_NO_PI = 0x1000
-+ IFF_ONE_QUEUE = 0x2000
-+ IFF_PERSIST = 0x800
-+ IFF_POINTOPOINT = 0x10
-+ IFF_PORTSEL = 0x2000
-+ IFF_PROMISC = 0x100
-+ IFF_RUNNING = 0x40
-+ IFF_SLAVE = 0x800
-+ IFF_TAP = 0x2
-+ IFF_TUN = 0x1
-+ IFF_TUN_EXCL = 0x8000
-+ IFF_UP = 0x1
-+ IFF_VNET_HDR = 0x4000
-+ IFF_VOLATILE = 0x70c5a
-+ IFNAMSIZ = 0x10
-+ IGNBRK = 0x1
-+ IGNCR = 0x80
-+ IGNPAR = 0x4
-+ IMAXBEL = 0x2000
-+ INLCR = 0x40
-+ INPCK = 0x10
-+ IN_ACCESS = 0x1
-+ IN_ALL_EVENTS = 0xfff
-+ IN_ATTRIB = 0x4
-+ IN_CLASSA_HOST = 0xffffff
-+ IN_CLASSA_MAX = 0x80
-+ IN_CLASSA_NET = 0xff000000
-+ IN_CLASSA_NSHIFT = 0x18
-+ IN_CLASSB_HOST = 0xffff
-+ IN_CLASSB_MAX = 0x10000
-+ IN_CLASSB_NET = 0xffff0000
-+ IN_CLASSB_NSHIFT = 0x10
-+ IN_CLASSC_HOST = 0xff
-+ IN_CLASSC_NET = 0xffffff00
-+ IN_CLASSC_NSHIFT = 0x8
-+ IN_CLOSE = 0x18
-+ IN_CLOSE_NOWRITE = 0x10
-+ IN_CLOSE_WRITE = 0x8
-+ IN_CREATE = 0x100
-+ IN_DELETE = 0x200
-+ IN_DELETE_SELF = 0x400
-+ IN_DONT_FOLLOW = 0x2000000
-+ IN_EXCL_UNLINK = 0x4000000
-+ IN_IGNORED = 0x8000
-+ IN_ISDIR = 0x40000000
-+ IN_LOOPBACKNET = 0x7f
-+ IN_MASK_ADD = 0x20000000
-+ IN_MASK_CREATE = 0x10000000
-+ IN_MODIFY = 0x2
-+ IN_MOVE = 0xc0
-+ IN_MOVED_FROM = 0x40
-+ IN_MOVED_TO = 0x80
-+ IN_MOVE_SELF = 0x800
-+ IN_ONESHOT = 0x80000000
-+ IN_ONLYDIR = 0x1000000
-+ IN_OPEN = 0x20
-+ IN_Q_OVERFLOW = 0x4000
-+ IN_UNMOUNT = 0x2000
-+ IPPROTO_AH = 0x33
-+ IPPROTO_BEETPH = 0x5e
-+ IPPROTO_COMP = 0x6c
-+ IPPROTO_DCCP = 0x21
-+ IPPROTO_DSTOPTS = 0x3c
-+ IPPROTO_EGP = 0x8
-+ IPPROTO_ENCAP = 0x62
-+ IPPROTO_ESP = 0x32
-+ IPPROTO_FRAGMENT = 0x2c
-+ IPPROTO_GRE = 0x2f
-+ IPPROTO_HOPOPTS = 0x0
-+ IPPROTO_ICMP = 0x1
-+ IPPROTO_ICMPV6 = 0x3a
-+ IPPROTO_IDP = 0x16
-+ IPPROTO_IGMP = 0x2
-+ IPPROTO_IP = 0x0
-+ IPPROTO_IPIP = 0x4
-+ IPPROTO_IPV6 = 0x29
-+ IPPROTO_L2TP = 0x73
-+ IPPROTO_MH = 0x87
-+ IPPROTO_MPLS = 0x89
-+ IPPROTO_MTP = 0x5c
-+ IPPROTO_NONE = 0x3b
-+ IPPROTO_PIM = 0x67
-+ IPPROTO_PUP = 0xc
-+ IPPROTO_RAW = 0xff
-+ IPPROTO_ROUTING = 0x2b
-+ IPPROTO_RSVP = 0x2e
-+ IPPROTO_SCTP = 0x84
-+ IPPROTO_TCP = 0x6
-+ IPPROTO_TP = 0x1d
-+ IPPROTO_UDP = 0x11
-+ IPPROTO_UDPLITE = 0x88
-+ IPV6_2292DSTOPTS = 0x4
-+ IPV6_2292HOPLIMIT = 0x8
-+ IPV6_2292HOPOPTS = 0x3
-+ IPV6_2292PKTINFO = 0x2
-+ IPV6_2292PKTOPTIONS = 0x6
-+ IPV6_2292RTHDR = 0x5
-+ IPV6_ADDRFORM = 0x1
-+ IPV6_ADDR_PREFERENCES = 0x48
-+ IPV6_ADD_MEMBERSHIP = 0x14
-+ IPV6_AUTHHDR = 0xa
-+ IPV6_AUTOFLOWLABEL = 0x46
-+ IPV6_CHECKSUM = 0x7
-+ IPV6_DONTFRAG = 0x3e
-+ IPV6_DROP_MEMBERSHIP = 0x15
-+ IPV6_DSTOPTS = 0x3b
-+ IPV6_FREEBIND = 0x4e
-+ IPV6_HDRINCL = 0x24
-+ IPV6_HOPLIMIT = 0x34
-+ IPV6_HOPOPTS = 0x36
-+ IPV6_IPSEC_POLICY = 0x22
-+ IPV6_JOIN_ANYCAST = 0x1b
-+ IPV6_JOIN_GROUP = 0x14
-+ IPV6_LEAVE_ANYCAST = 0x1c
-+ IPV6_LEAVE_GROUP = 0x15
-+ IPV6_MINHOPCOUNT = 0x49
-+ IPV6_MTU = 0x18
-+ IPV6_MTU_DISCOVER = 0x17
-+ IPV6_MULTICAST_ALL = 0x1d
-+ IPV6_MULTICAST_HOPS = 0x12
-+ IPV6_MULTICAST_IF = 0x11
-+ IPV6_MULTICAST_LOOP = 0x13
-+ IPV6_NEXTHOP = 0x9
-+ IPV6_ORIGDSTADDR = 0x4a
-+ IPV6_PATHMTU = 0x3d
-+ IPV6_PKTINFO = 0x32
-+ IPV6_PMTUDISC_DO = 0x2
-+ IPV6_PMTUDISC_DONT = 0x0
-+ IPV6_PMTUDISC_INTERFACE = 0x4
-+ IPV6_PMTUDISC_OMIT = 0x5
-+ IPV6_PMTUDISC_PROBE = 0x3
-+ IPV6_PMTUDISC_WANT = 0x1
-+ IPV6_RECVDSTOPTS = 0x3a
-+ IPV6_RECVERR = 0x19
-+ IPV6_RECVFRAGSIZE = 0x4d
-+ IPV6_RECVHOPLIMIT = 0x33
-+ IPV6_RECVHOPOPTS = 0x35
-+ IPV6_RECVORIGDSTADDR = 0x4a
-+ IPV6_RECVPATHMTU = 0x3c
-+ IPV6_RECVPKTINFO = 0x31
-+ IPV6_RECVRTHDR = 0x38
-+ IPV6_RECVTCLASS = 0x42
-+ IPV6_ROUTER_ALERT = 0x16
-+ IPV6_ROUTER_ALERT_ISOLATE = 0x1e
-+ IPV6_RTHDR = 0x39
-+ IPV6_RTHDRDSTOPTS = 0x37
-+ IPV6_RTHDR_LOOSE = 0x0
-+ IPV6_RTHDR_STRICT = 0x1
-+ IPV6_RTHDR_TYPE_0 = 0x0
-+ IPV6_RXDSTOPTS = 0x3b
-+ IPV6_RXHOPOPTS = 0x36
-+ IPV6_TCLASS = 0x43
-+ IPV6_TRANSPARENT = 0x4b
-+ IPV6_UNICAST_HOPS = 0x10
-+ IPV6_UNICAST_IF = 0x4c
-+ IPV6_V6ONLY = 0x1a
-+ IPV6_XFRM_POLICY = 0x23
-+ IP_ADD_MEMBERSHIP = 0x23
-+ IP_ADD_SOURCE_MEMBERSHIP = 0x27
-+ IP_BIND_ADDRESS_NO_PORT = 0x18
-+ IP_BLOCK_SOURCE = 0x26
-+ IP_CHECKSUM = 0x17
-+ IP_DEFAULT_MULTICAST_LOOP = 0x1
-+ IP_DEFAULT_MULTICAST_TTL = 0x1
-+ IP_DF = 0x4000
-+ IP_DROP_MEMBERSHIP = 0x24
-+ IP_DROP_SOURCE_MEMBERSHIP = 0x28
-+ IP_FREEBIND = 0xf
-+ IP_HDRINCL = 0x3
-+ IP_IPSEC_POLICY = 0x10
-+ IP_MAXPACKET = 0xffff
-+ IP_MAX_MEMBERSHIPS = 0x14
-+ IP_MF = 0x2000
-+ IP_MINTTL = 0x15
-+ IP_MSFILTER = 0x29
-+ IP_MSS = 0x240
-+ IP_MTU = 0xe
-+ IP_MTU_DISCOVER = 0xa
-+ IP_MULTICAST_ALL = 0x31
-+ IP_MULTICAST_IF = 0x20
-+ IP_MULTICAST_LOOP = 0x22
-+ IP_MULTICAST_TTL = 0x21
-+ IP_NODEFRAG = 0x16
-+ IP_OFFMASK = 0x1fff
-+ IP_OPTIONS = 0x4
-+ IP_ORIGDSTADDR = 0x14
-+ IP_PASSSEC = 0x12
-+ IP_PKTINFO = 0x8
-+ IP_PKTOPTIONS = 0x9
-+ IP_PMTUDISC = 0xa
-+ IP_PMTUDISC_DO = 0x2
-+ IP_PMTUDISC_DONT = 0x0
-+ IP_PMTUDISC_INTERFACE = 0x4
-+ IP_PMTUDISC_OMIT = 0x5
-+ IP_PMTUDISC_PROBE = 0x3
-+ IP_PMTUDISC_WANT = 0x1
-+ IP_RECVERR = 0xb
-+ IP_RECVFRAGSIZE = 0x19
-+ IP_RECVOPTS = 0x6
-+ IP_RECVORIGDSTADDR = 0x14
-+ IP_RECVRETOPTS = 0x7
-+ IP_RECVTOS = 0xd
-+ IP_RECVTTL = 0xc
-+ IP_RETOPTS = 0x7
-+ IP_RF = 0x8000
-+ IP_ROUTER_ALERT = 0x5
-+ IP_TOS = 0x1
-+ IP_TRANSPARENT = 0x13
-+ IP_TTL = 0x2
-+ IP_UNBLOCK_SOURCE = 0x25
-+ IP_UNICAST_IF = 0x32
-+ IP_XFRM_POLICY = 0x11
-+ ISOFS_SUPER_MAGIC = 0x9660
-+ ISTRIP = 0x20
-+ IUTF8 = 0x4000
-+ IXANY = 0x800
-+ JFFS2_SUPER_MAGIC = 0x72b6
-+ KEXEC_ARCH_386 = 0x30000
-+ KEXEC_ARCH_68K = 0x40000
-+ KEXEC_ARCH_AARCH64 = 0xb70000
-+ KEXEC_ARCH_ARM = 0x280000
-+ KEXEC_ARCH_DEFAULT = 0x0
-+ KEXEC_ARCH_IA_64 = 0x320000
-+ KEXEC_ARCH_MASK = 0xffff0000
-+ KEXEC_ARCH_MIPS = 0x80000
-+ KEXEC_ARCH_MIPS_LE = 0xa0000
-+ KEXEC_ARCH_PARISC = 0xf0000
-+ KEXEC_ARCH_PPC = 0x140000
-+ KEXEC_ARCH_PPC64 = 0x150000
-+ KEXEC_ARCH_S390 = 0x160000
-+ KEXEC_ARCH_SH = 0x2a0000
-+ KEXEC_ARCH_X86_64 = 0x3e0000
-+ KEXEC_FILE_NO_INITRAMFS = 0x4
-+ KEXEC_FILE_ON_CRASH = 0x2
-+ KEXEC_FILE_UNLOAD = 0x1
-+ KEXEC_ON_CRASH = 0x1
-+ KEXEC_PRESERVE_CONTEXT = 0x2
-+ KEXEC_SEGMENT_MAX = 0x10
-+ KEYCTL_ASSUME_AUTHORITY = 0x10
-+ KEYCTL_CAPABILITIES = 0x1f
-+ KEYCTL_CAPS0_BIG_KEY = 0x10
-+ KEYCTL_CAPS0_CAPABILITIES = 0x1
-+ KEYCTL_CAPS0_DIFFIE_HELLMAN = 0x4
-+ KEYCTL_CAPS0_INVALIDATE = 0x20
-+ KEYCTL_CAPS0_MOVE = 0x80
-+ KEYCTL_CAPS0_PERSISTENT_KEYRINGS = 0x2
-+ KEYCTL_CAPS0_PUBLIC_KEY = 0x8
-+ KEYCTL_CAPS0_RESTRICT_KEYRING = 0x40
-+ KEYCTL_CAPS1_NS_KEYRING_NAME = 0x1
-+ KEYCTL_CAPS1_NS_KEY_TAG = 0x2
-+ KEYCTL_CHOWN = 0x4
-+ KEYCTL_CLEAR = 0x7
-+ KEYCTL_DESCRIBE = 0x6
-+ KEYCTL_DH_COMPUTE = 0x17
-+ KEYCTL_GET_KEYRING_ID = 0x0
-+ KEYCTL_GET_PERSISTENT = 0x16
-+ KEYCTL_GET_SECURITY = 0x11
-+ KEYCTL_INSTANTIATE = 0xc
-+ KEYCTL_INSTANTIATE_IOV = 0x14
-+ KEYCTL_INVALIDATE = 0x15
-+ KEYCTL_JOIN_SESSION_KEYRING = 0x1
-+ KEYCTL_LINK = 0x8
-+ KEYCTL_MOVE = 0x1e
-+ KEYCTL_MOVE_EXCL = 0x1
-+ KEYCTL_NEGATE = 0xd
-+ KEYCTL_PKEY_DECRYPT = 0x1a
-+ KEYCTL_PKEY_ENCRYPT = 0x19
-+ KEYCTL_PKEY_QUERY = 0x18
-+ KEYCTL_PKEY_SIGN = 0x1b
-+ KEYCTL_PKEY_VERIFY = 0x1c
-+ KEYCTL_READ = 0xb
-+ KEYCTL_REJECT = 0x13
-+ KEYCTL_RESTRICT_KEYRING = 0x1d
-+ KEYCTL_REVOKE = 0x3
-+ KEYCTL_SEARCH = 0xa
-+ KEYCTL_SESSION_TO_PARENT = 0x12
-+ KEYCTL_SETPERM = 0x5
-+ KEYCTL_SET_REQKEY_KEYRING = 0xe
-+ KEYCTL_SET_TIMEOUT = 0xf
-+ KEYCTL_SUPPORTS_DECRYPT = 0x2
-+ KEYCTL_SUPPORTS_ENCRYPT = 0x1
-+ KEYCTL_SUPPORTS_SIGN = 0x4
-+ KEYCTL_SUPPORTS_VERIFY = 0x8
-+ KEYCTL_UNLINK = 0x9
-+ KEYCTL_UPDATE = 0x2
-+ KEY_REQKEY_DEFL_DEFAULT = 0x0
-+ KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
-+ KEY_REQKEY_DEFL_NO_CHANGE = -0x1
-+ KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
-+ KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
-+ KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
-+ KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
-+ KEY_REQKEY_DEFL_USER_KEYRING = 0x4
-+ KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
-+ KEY_SPEC_GROUP_KEYRING = -0x6
-+ KEY_SPEC_PROCESS_KEYRING = -0x2
-+ KEY_SPEC_REQKEY_AUTH_KEY = -0x7
-+ KEY_SPEC_REQUESTOR_KEYRING = -0x8
-+ KEY_SPEC_SESSION_KEYRING = -0x3
-+ KEY_SPEC_THREAD_KEYRING = -0x1
-+ KEY_SPEC_USER_KEYRING = -0x4
-+ KEY_SPEC_USER_SESSION_KEYRING = -0x5
-+ LINUX_REBOOT_CMD_CAD_OFF = 0x0
-+ LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
-+ LINUX_REBOOT_CMD_HALT = 0xcdef0123
-+ LINUX_REBOOT_CMD_KEXEC = 0x45584543
-+ LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
-+ LINUX_REBOOT_CMD_RESTART = 0x1234567
-+ LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
-+ LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
-+ LINUX_REBOOT_MAGIC1 = 0xfee1dead
-+ LINUX_REBOOT_MAGIC2 = 0x28121969
-+ LOCK_EX = 0x2
-+ LOCK_NB = 0x4
-+ LOCK_SH = 0x1
-+ LOCK_UN = 0x8
-+ LOOP_CLR_FD = 0x4c01
-+ LOOP_CTL_ADD = 0x4c80
-+ LOOP_CTL_GET_FREE = 0x4c82
-+ LOOP_CTL_REMOVE = 0x4c81
-+ LOOP_GET_STATUS = 0x4c03
-+ LOOP_GET_STATUS64 = 0x4c05
-+ LOOP_SET_BLOCK_SIZE = 0x4c09
-+ LOOP_SET_CAPACITY = 0x4c07
-+ LOOP_SET_DIRECT_IO = 0x4c08
-+ LOOP_SET_FD = 0x4c00
-+ LOOP_SET_STATUS = 0x4c02
-+ LOOP_SET_STATUS64 = 0x4c04
-+ LO_KEY_SIZE = 0x20
-+ LO_NAME_SIZE = 0x40
-+ MADV_COLD = 0x14
-+ MADV_DODUMP = 0x11
-+ MADV_DOFORK = 0xb
-+ MADV_DONTDUMP = 0x10
-+ MADV_DONTFORK = 0xa
-+ MADV_DONTNEED = 0x4
-+ MADV_FREE = 0x8
-+ MADV_HUGEPAGE = 0xe
-+ MADV_HWPOISON = 0x64
-+ MADV_KEEPONFORK = 0x13
-+ MADV_MERGEABLE = 0xc
-+ MADV_NOHUGEPAGE = 0xf
-+ MADV_NORMAL = 0x0
-+ MADV_PAGEOUT = 0x15
-+ MADV_RANDOM = 0x1
-+ MADV_REMOVE = 0x9
-+ MADV_SEQUENTIAL = 0x2
-+ MADV_UNMERGEABLE = 0xd
-+ MADV_WILLNEED = 0x3
-+ MADV_WIPEONFORK = 0x12
-+ MAP_FILE = 0x0
-+ MAP_FIXED = 0x10
-+ MAP_FIXED_NOREPLACE = 0x100000
-+ MAP_HUGE_MASK = 0x3f
-+ MAP_HUGE_SHIFT = 0x1a
-+ MAP_PRIVATE = 0x2
-+ MAP_SHARED = 0x1
-+ MAP_SHARED_VALIDATE = 0x3
-+ MAP_TYPE = 0xf
-+ MCAST_BLOCK_SOURCE = 0x2b
-+ MCAST_EXCLUDE = 0x0
-+ MCAST_INCLUDE = 0x1
-+ MCAST_JOIN_GROUP = 0x2a
-+ MCAST_JOIN_SOURCE_GROUP = 0x2e
-+ MCAST_LEAVE_GROUP = 0x2d
-+ MCAST_LEAVE_SOURCE_GROUP = 0x2f
-+ MCAST_MSFILTER = 0x30
-+ MCAST_UNBLOCK_SOURCE = 0x2c
-+ MFD_ALLOW_SEALING = 0x2
-+ MFD_CLOEXEC = 0x1
-+ MFD_HUGETLB = 0x4
-+ MFD_HUGE_16GB = -0x78000000
-+ MFD_HUGE_16MB = 0x60000000
-+ MFD_HUGE_1GB = 0x78000000
-+ MFD_HUGE_1MB = 0x50000000
-+ MFD_HUGE_256MB = 0x70000000
-+ MFD_HUGE_2GB = 0x7c000000
-+ MFD_HUGE_2MB = 0x54000000
-+ MFD_HUGE_32MB = 0x64000000
-+ MFD_HUGE_512KB = 0x4c000000
-+ MFD_HUGE_512MB = 0x74000000
-+ MFD_HUGE_64KB = 0x40000000
-+ MFD_HUGE_8MB = 0x5c000000
-+ MFD_HUGE_MASK = 0x3f
-+ MFD_HUGE_SHIFT = 0x1a
-+ MINIX2_SUPER_MAGIC = 0x2468
-+ MINIX2_SUPER_MAGIC2 = 0x2478
-+ MINIX3_SUPER_MAGIC = 0x4d5a
-+ MINIX_SUPER_MAGIC = 0x137f
-+ MINIX_SUPER_MAGIC2 = 0x138f
-+ MNT_DETACH = 0x2
-+ MNT_EXPIRE = 0x4
-+ MNT_FORCE = 0x1
-+ MODULE_INIT_IGNORE_MODVERSIONS = 0x1
-+ MODULE_INIT_IGNORE_VERMAGIC = 0x2
-+ MSDOS_SUPER_MAGIC = 0x4d44
-+ MSG_BATCH = 0x40000
-+ MSG_CMSG_CLOEXEC = 0x40000000
-+ MSG_CONFIRM = 0x800
-+ MSG_CTRUNC = 0x8
-+ MSG_DONTROUTE = 0x4
-+ MSG_DONTWAIT = 0x40
-+ MSG_EOR = 0x80
-+ MSG_ERRQUEUE = 0x2000
-+ MSG_FASTOPEN = 0x20000000
-+ MSG_FIN = 0x200
-+ MSG_MORE = 0x8000
-+ MSG_NOSIGNAL = 0x4000
-+ MSG_OOB = 0x1
-+ MSG_PEEK = 0x2
-+ MSG_PROXY = 0x10
-+ MSG_RST = 0x1000
-+ MSG_SYN = 0x400
-+ MSG_TRUNC = 0x20
-+ MSG_TRYHARD = 0x4
-+ MSG_WAITALL = 0x100
-+ MSG_WAITFORONE = 0x10000
-+ MSG_ZEROCOPY = 0x4000000
-+ MS_ACTIVE = 0x40000000
-+ MS_ASYNC = 0x1
-+ MS_BIND = 0x1000
-+ MS_BORN = 0x20000000
-+ MS_DIRSYNC = 0x80
-+ MS_INVALIDATE = 0x2
-+ MS_I_VERSION = 0x800000
-+ MS_KERNMOUNT = 0x400000
-+ MS_LAZYTIME = 0x2000000
-+ MS_MANDLOCK = 0x40
-+ MS_MGC_MSK = 0xffff0000
-+ MS_MGC_VAL = 0xc0ed0000
-+ MS_MOVE = 0x2000
-+ MS_NOATIME = 0x400
-+ MS_NODEV = 0x4
-+ MS_NODIRATIME = 0x800
-+ MS_NOEXEC = 0x8
-+ MS_NOREMOTELOCK = 0x8000000
-+ MS_NOSEC = 0x10000000
-+ MS_NOSUID = 0x2
-+ MS_NOUSER = -0x80000000
-+ MS_POSIXACL = 0x10000
-+ MS_PRIVATE = 0x40000
-+ MS_RDONLY = 0x1
-+ MS_REC = 0x4000
-+ MS_RELATIME = 0x200000
-+ MS_REMOUNT = 0x20
-+ MS_RMT_MASK = 0x2800051
-+ MS_SHARED = 0x100000
-+ MS_SILENT = 0x8000
-+ MS_SLAVE = 0x80000
-+ MS_STRICTATIME = 0x1000000
-+ MS_SUBMOUNT = 0x4000000
-+ MS_SYNC = 0x4
-+ MS_SYNCHRONOUS = 0x10
-+ MS_UNBINDABLE = 0x20000
-+ MS_VERBOSE = 0x8000
-+ MTD_INODE_FS_MAGIC = 0x11307854
-+ NAME_MAX = 0xff
-+ NCP_SUPER_MAGIC = 0x564c
-+ NETLINK_ADD_MEMBERSHIP = 0x1
-+ NETLINK_AUDIT = 0x9
-+ NETLINK_BROADCAST_ERROR = 0x4
-+ NETLINK_CAP_ACK = 0xa
-+ NETLINK_CONNECTOR = 0xb
-+ NETLINK_CRYPTO = 0x15
-+ NETLINK_DNRTMSG = 0xe
-+ NETLINK_DROP_MEMBERSHIP = 0x2
-+ NETLINK_ECRYPTFS = 0x13
-+ NETLINK_EXT_ACK = 0xb
-+ NETLINK_FIB_LOOKUP = 0xa
-+ NETLINK_FIREWALL = 0x3
-+ NETLINK_GENERIC = 0x10
-+ NETLINK_GET_STRICT_CHK = 0xc
-+ NETLINK_INET_DIAG = 0x4
-+ NETLINK_IP6_FW = 0xd
-+ NETLINK_ISCSI = 0x8
-+ NETLINK_KOBJECT_UEVENT = 0xf
-+ NETLINK_LISTEN_ALL_NSID = 0x8
-+ NETLINK_LIST_MEMBERSHIPS = 0x9
-+ NETLINK_NETFILTER = 0xc
-+ NETLINK_NFLOG = 0x5
-+ NETLINK_NO_ENOBUFS = 0x5
-+ NETLINK_PKTINFO = 0x3
-+ NETLINK_RDMA = 0x14
-+ NETLINK_ROUTE = 0x0
-+ NETLINK_RX_RING = 0x6
-+ NETLINK_SCSITRANSPORT = 0x12
-+ NETLINK_SELINUX = 0x7
-+ NETLINK_SMC = 0x16
-+ NETLINK_SOCK_DIAG = 0x4
-+ NETLINK_TX_RING = 0x7
-+ NETLINK_UNUSED = 0x1
-+ NETLINK_USERSOCK = 0x2
-+ NETLINK_XFRM = 0x6
-+ NETNSA_MAX = 0x5
-+ NETNSA_NSID_NOT_ASSIGNED = -0x1
-+ NFNETLINK_V0 = 0x0
-+ NFNLGRP_ACCT_QUOTA = 0x8
-+ NFNLGRP_CONNTRACK_DESTROY = 0x3
-+ NFNLGRP_CONNTRACK_EXP_DESTROY = 0x6
-+ NFNLGRP_CONNTRACK_EXP_NEW = 0x4
-+ NFNLGRP_CONNTRACK_EXP_UPDATE = 0x5
-+ NFNLGRP_CONNTRACK_NEW = 0x1
-+ NFNLGRP_CONNTRACK_UPDATE = 0x2
-+ NFNLGRP_MAX = 0x9
-+ NFNLGRP_NFTABLES = 0x7
-+ NFNLGRP_NFTRACE = 0x9
-+ NFNLGRP_NONE = 0x0
-+ NFNL_BATCH_MAX = 0x1
-+ NFNL_MSG_BATCH_BEGIN = 0x10
-+ NFNL_MSG_BATCH_END = 0x11
-+ NFNL_NFA_NEST = 0x8000
-+ NFNL_SUBSYS_ACCT = 0x7
-+ NFNL_SUBSYS_COUNT = 0xc
-+ NFNL_SUBSYS_CTHELPER = 0x9
-+ NFNL_SUBSYS_CTNETLINK = 0x1
-+ NFNL_SUBSYS_CTNETLINK_EXP = 0x2
-+ NFNL_SUBSYS_CTNETLINK_TIMEOUT = 0x8
-+ NFNL_SUBSYS_IPSET = 0x6
-+ NFNL_SUBSYS_NFTABLES = 0xa
-+ NFNL_SUBSYS_NFT_COMPAT = 0xb
-+ NFNL_SUBSYS_NONE = 0x0
-+ NFNL_SUBSYS_OSF = 0x5
-+ NFNL_SUBSYS_QUEUE = 0x3
-+ NFNL_SUBSYS_ULOG = 0x4
-+ NFS_SUPER_MAGIC = 0x6969
-+ NILFS_SUPER_MAGIC = 0x3434
-+ NL0 = 0x0
-+ NL1 = 0x100
-+ NLA_ALIGNTO = 0x4
-+ NLA_F_NESTED = 0x8000
-+ NLA_F_NET_BYTEORDER = 0x4000
-+ NLA_HDRLEN = 0x4
-+ NLMSG_ALIGNTO = 0x4
-+ NLMSG_DONE = 0x3
-+ NLMSG_ERROR = 0x2
-+ NLMSG_HDRLEN = 0x10
-+ NLMSG_MIN_TYPE = 0x10
-+ NLMSG_NOOP = 0x1
-+ NLMSG_OVERRUN = 0x4
-+ NLM_F_ACK = 0x4
-+ NLM_F_ACK_TLVS = 0x200
-+ NLM_F_APPEND = 0x800
-+ NLM_F_ATOMIC = 0x400
-+ NLM_F_CAPPED = 0x100
-+ NLM_F_CREATE = 0x400
-+ NLM_F_DUMP = 0x300
-+ NLM_F_DUMP_FILTERED = 0x20
-+ NLM_F_DUMP_INTR = 0x10
-+ NLM_F_ECHO = 0x8
-+ NLM_F_EXCL = 0x200
-+ NLM_F_MATCH = 0x200
-+ NLM_F_MULTI = 0x2
-+ NLM_F_NONREC = 0x100
-+ NLM_F_REPLACE = 0x100
-+ NLM_F_REQUEST = 0x1
-+ NLM_F_ROOT = 0x100
-+ NSFS_MAGIC = 0x6e736673
-+ OCFS2_SUPER_MAGIC = 0x7461636f
-+ OCRNL = 0x8
-+ OFDEL = 0x80
-+ OFILL = 0x40
-+ ONLRET = 0x20
-+ ONOCR = 0x10
-+ OPENPROM_SUPER_MAGIC = 0x9fa1
-+ OPOST = 0x1
-+ OVERLAYFS_SUPER_MAGIC = 0x794c7630
-+ O_ACCMODE = 0x3
-+ O_RDONLY = 0x0
-+ O_RDWR = 0x2
-+ O_WRONLY = 0x1
-+ PACKET_ADD_MEMBERSHIP = 0x1
-+ PACKET_AUXDATA = 0x8
-+ PACKET_BROADCAST = 0x1
-+ PACKET_COPY_THRESH = 0x7
-+ PACKET_DROP_MEMBERSHIP = 0x2
-+ PACKET_FANOUT = 0x12
-+ PACKET_FANOUT_CBPF = 0x6
-+ PACKET_FANOUT_CPU = 0x2
-+ PACKET_FANOUT_DATA = 0x16
-+ PACKET_FANOUT_EBPF = 0x7
-+ PACKET_FANOUT_FLAG_DEFRAG = 0x8000
-+ PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
-+ PACKET_FANOUT_FLAG_UNIQUEID = 0x2000
-+ PACKET_FANOUT_HASH = 0x0
-+ PACKET_FANOUT_LB = 0x1
-+ PACKET_FANOUT_QM = 0x5
-+ PACKET_FANOUT_RND = 0x4
-+ PACKET_FANOUT_ROLLOVER = 0x3
-+ PACKET_FASTROUTE = 0x6
-+ PACKET_HDRLEN = 0xb
-+ PACKET_HOST = 0x0
-+ PACKET_IGNORE_OUTGOING = 0x17
-+ PACKET_KERNEL = 0x7
-+ PACKET_LOOPBACK = 0x5
-+ PACKET_LOSS = 0xe
-+ PACKET_MR_ALLMULTI = 0x2
-+ PACKET_MR_MULTICAST = 0x0
-+ PACKET_MR_PROMISC = 0x1
-+ PACKET_MR_UNICAST = 0x3
-+ PACKET_MULTICAST = 0x2
-+ PACKET_ORIGDEV = 0x9
-+ PACKET_OTHERHOST = 0x3
-+ PACKET_OUTGOING = 0x4
-+ PACKET_QDISC_BYPASS = 0x14
-+ PACKET_RECV_OUTPUT = 0x3
-+ PACKET_RESERVE = 0xc
-+ PACKET_ROLLOVER_STATS = 0x15
-+ PACKET_RX_RING = 0x5
-+ PACKET_STATISTICS = 0x6
-+ PACKET_TIMESTAMP = 0x11
-+ PACKET_TX_HAS_OFF = 0x13
-+ PACKET_TX_RING = 0xd
-+ PACKET_TX_TIMESTAMP = 0x10
-+ PACKET_USER = 0x6
-+ PACKET_VERSION = 0xa
-+ PACKET_VNET_HDR = 0xf
-+ PARITY_CRC16_PR0 = 0x2
-+ PARITY_CRC16_PR0_CCITT = 0x4
-+ PARITY_CRC16_PR1 = 0x3
-+ PARITY_CRC16_PR1_CCITT = 0x5
-+ PARITY_CRC32_PR0_CCITT = 0x6
-+ PARITY_CRC32_PR1_CCITT = 0x7
-+ PARITY_DEFAULT = 0x0
-+ PARITY_NONE = 0x1
-+ PARMRK = 0x8
-+ PIPEFS_MAGIC = 0x50495045
-+ PPC_CMM_MAGIC = 0xc7571590
-+ PPPIOCGNPMODE = 0xc008744c
-+ PPPIOCNEWUNIT = 0xc004743e
-+ PRIO_PGRP = 0x1
-+ PRIO_PROCESS = 0x0
-+ PRIO_USER = 0x2
-+ PROC_SUPER_MAGIC = 0x9fa0
-+ PROT_EXEC = 0x4
-+ PROT_GROWSDOWN = 0x1000000
-+ PROT_GROWSUP = 0x2000000
-+ PROT_NONE = 0x0
-+ PROT_READ = 0x1
-+ PROT_WRITE = 0x2
-+ PR_CAPBSET_DROP = 0x18
-+ PR_CAPBSET_READ = 0x17
-+ PR_CAP_AMBIENT = 0x2f
-+ PR_CAP_AMBIENT_CLEAR_ALL = 0x4
-+ PR_CAP_AMBIENT_IS_SET = 0x1
-+ PR_CAP_AMBIENT_LOWER = 0x3
-+ PR_CAP_AMBIENT_RAISE = 0x2
-+ PR_ENDIAN_BIG = 0x0
-+ PR_ENDIAN_LITTLE = 0x1
-+ PR_ENDIAN_PPC_LITTLE = 0x2
-+ PR_FPEMU_NOPRINT = 0x1
-+ PR_FPEMU_SIGFPE = 0x2
-+ PR_FP_EXC_ASYNC = 0x2
-+ PR_FP_EXC_DISABLED = 0x0
-+ PR_FP_EXC_DIV = 0x10000
-+ PR_FP_EXC_INV = 0x100000
-+ PR_FP_EXC_NONRECOV = 0x1
-+ PR_FP_EXC_OVF = 0x20000
-+ PR_FP_EXC_PRECISE = 0x3
-+ PR_FP_EXC_RES = 0x80000
-+ PR_FP_EXC_SW_ENABLE = 0x80
-+ PR_FP_EXC_UND = 0x40000
-+ PR_FP_MODE_FR = 0x1
-+ PR_FP_MODE_FRE = 0x2
-+ PR_GET_CHILD_SUBREAPER = 0x25
-+ PR_GET_DUMPABLE = 0x3
-+ PR_GET_ENDIAN = 0x13
-+ PR_GET_FPEMU = 0x9
-+ PR_GET_FPEXC = 0xb
-+ PR_GET_FP_MODE = 0x2e
-+ PR_GET_IO_FLUSHER = 0x3a
-+ PR_GET_KEEPCAPS = 0x7
-+ PR_GET_NAME = 0x10
-+ PR_GET_NO_NEW_PRIVS = 0x27
-+ PR_GET_PDEATHSIG = 0x2
-+ PR_GET_SECCOMP = 0x15
-+ PR_GET_SECUREBITS = 0x1b
-+ PR_GET_SPECULATION_CTRL = 0x34
-+ PR_GET_TAGGED_ADDR_CTRL = 0x38
-+ PR_GET_THP_DISABLE = 0x2a
-+ PR_GET_TID_ADDRESS = 0x28
-+ PR_GET_TIMERSLACK = 0x1e
-+ PR_GET_TIMING = 0xd
-+ PR_GET_TSC = 0x19
-+ PR_GET_UNALIGN = 0x5
-+ PR_MCE_KILL = 0x21
-+ PR_MCE_KILL_CLEAR = 0x0
-+ PR_MCE_KILL_DEFAULT = 0x2
-+ PR_MCE_KILL_EARLY = 0x1
-+ PR_MCE_KILL_GET = 0x22
-+ PR_MCE_KILL_LATE = 0x0
-+ PR_MCE_KILL_SET = 0x1
-+ PR_MPX_DISABLE_MANAGEMENT = 0x2c
-+ PR_MPX_ENABLE_MANAGEMENT = 0x2b
-+ PR_PAC_APDAKEY = 0x4
-+ PR_PAC_APDBKEY = 0x8
-+ PR_PAC_APGAKEY = 0x10
-+ PR_PAC_APIAKEY = 0x1
-+ PR_PAC_APIBKEY = 0x2
-+ PR_PAC_RESET_KEYS = 0x36
-+ PR_SET_CHILD_SUBREAPER = 0x24
-+ PR_SET_DUMPABLE = 0x4
-+ PR_SET_ENDIAN = 0x14
-+ PR_SET_FPEMU = 0xa
-+ PR_SET_FPEXC = 0xc
-+ PR_SET_FP_MODE = 0x2d
-+ PR_SET_IO_FLUSHER = 0x39
-+ PR_SET_KEEPCAPS = 0x8
-+ PR_SET_MM = 0x23
-+ PR_SET_MM_ARG_END = 0x9
-+ PR_SET_MM_ARG_START = 0x8
-+ PR_SET_MM_AUXV = 0xc
-+ PR_SET_MM_BRK = 0x7
-+ PR_SET_MM_END_CODE = 0x2
-+ PR_SET_MM_END_DATA = 0x4
-+ PR_SET_MM_ENV_END = 0xb
-+ PR_SET_MM_ENV_START = 0xa
-+ PR_SET_MM_EXE_FILE = 0xd
-+ PR_SET_MM_MAP = 0xe
-+ PR_SET_MM_MAP_SIZE = 0xf
-+ PR_SET_MM_START_BRK = 0x6
-+ PR_SET_MM_START_CODE = 0x1
-+ PR_SET_MM_START_DATA = 0x3
-+ PR_SET_MM_START_STACK = 0x5
-+ PR_SET_NAME = 0xf
-+ PR_SET_NO_NEW_PRIVS = 0x26
-+ PR_SET_PDEATHSIG = 0x1
-+ PR_SET_PTRACER = 0x59616d61
-+ PR_SET_SECCOMP = 0x16
-+ PR_SET_SECUREBITS = 0x1c
-+ PR_SET_SPECULATION_CTRL = 0x35
-+ PR_SET_TAGGED_ADDR_CTRL = 0x37
-+ PR_SET_THP_DISABLE = 0x29
-+ PR_SET_TIMERSLACK = 0x1d
-+ PR_SET_TIMING = 0xe
-+ PR_SET_TSC = 0x1a
-+ PR_SET_UNALIGN = 0x6
-+ PR_SPEC_DISABLE = 0x4
-+ PR_SPEC_DISABLE_NOEXEC = 0x10
-+ PR_SPEC_ENABLE = 0x2
-+ PR_SPEC_FORCE_DISABLE = 0x8
-+ PR_SPEC_INDIRECT_BRANCH = 0x1
-+ PR_SPEC_NOT_AFFECTED = 0x0
-+ PR_SPEC_PRCTL = 0x1
-+ PR_SPEC_STORE_BYPASS = 0x0
-+ PR_SVE_GET_VL = 0x33
-+ PR_SVE_SET_VL = 0x32
-+ PR_SVE_SET_VL_ONEXEC = 0x40000
-+ PR_SVE_VL_INHERIT = 0x20000
-+ PR_SVE_VL_LEN_MASK = 0xffff
-+ PR_TAGGED_ADDR_ENABLE = 0x1
-+ PR_TASK_PERF_EVENTS_DISABLE = 0x1f
-+ PR_TASK_PERF_EVENTS_ENABLE = 0x20
-+ PR_TIMING_STATISTICAL = 0x0
-+ PR_TIMING_TIMESTAMP = 0x1
-+ PR_TSC_ENABLE = 0x1
-+ PR_TSC_SIGSEGV = 0x2
-+ PR_UNALIGN_NOPRINT = 0x1
-+ PR_UNALIGN_SIGBUS = 0x2
-+ PSTOREFS_MAGIC = 0x6165676c
-+ PTRACE_ATTACH = 0x10
-+ PTRACE_CONT = 0x7
-+ PTRACE_DETACH = 0x11
-+ PTRACE_EVENTMSG_SYSCALL_ENTRY = 0x1
-+ PTRACE_EVENTMSG_SYSCALL_EXIT = 0x2
-+ PTRACE_EVENT_CLONE = 0x3
-+ PTRACE_EVENT_EXEC = 0x4
-+ PTRACE_EVENT_EXIT = 0x6
-+ PTRACE_EVENT_FORK = 0x1
-+ PTRACE_EVENT_SECCOMP = 0x7
-+ PTRACE_EVENT_STOP = 0x80
-+ PTRACE_EVENT_VFORK = 0x2
-+ PTRACE_EVENT_VFORK_DONE = 0x5
-+ PTRACE_GETEVENTMSG = 0x4201
-+ PTRACE_GETREGS = 0xc
-+ PTRACE_GETREGSET = 0x4204
-+ PTRACE_GETSIGINFO = 0x4202
-+ PTRACE_GETSIGMASK = 0x420a
-+ PTRACE_GET_SYSCALL_INFO = 0x420e
-+ PTRACE_INTERRUPT = 0x4207
-+ PTRACE_KILL = 0x8
-+ PTRACE_LISTEN = 0x4208
-+ PTRACE_O_EXITKILL = 0x100000
-+ PTRACE_O_MASK = 0x3000ff
-+ PTRACE_O_SUSPEND_SECCOMP = 0x200000
-+ PTRACE_O_TRACECLONE = 0x8
-+ PTRACE_O_TRACEEXEC = 0x10
-+ PTRACE_O_TRACEEXIT = 0x40
-+ PTRACE_O_TRACEFORK = 0x2
-+ PTRACE_O_TRACESECCOMP = 0x80
-+ PTRACE_O_TRACESYSGOOD = 0x1
-+ PTRACE_O_TRACEVFORK = 0x4
-+ PTRACE_O_TRACEVFORKDONE = 0x20
-+ PTRACE_PEEKDATA = 0x2
-+ PTRACE_PEEKSIGINFO = 0x4209
-+ PTRACE_PEEKSIGINFO_SHARED = 0x1
-+ PTRACE_PEEKTEXT = 0x1
-+ PTRACE_PEEKUSR = 0x3
-+ PTRACE_POKEDATA = 0x5
-+ PTRACE_POKETEXT = 0x4
-+ PTRACE_POKEUSR = 0x6
-+ PTRACE_SECCOMP_GET_FILTER = 0x420c
-+ PTRACE_SECCOMP_GET_METADATA = 0x420d
-+ PTRACE_SEIZE = 0x4206
-+ PTRACE_SETOPTIONS = 0x4200
-+ PTRACE_SETREGS = 0xd
-+ PTRACE_SETREGSET = 0x4205
-+ PTRACE_SETSIGINFO = 0x4203
-+ PTRACE_SETSIGMASK = 0x420b
-+ PTRACE_SINGLESTEP = 0x9
-+ PTRACE_SYSCALL = 0x18
-+ PTRACE_SYSCALL_INFO_ENTRY = 0x1
-+ PTRACE_SYSCALL_INFO_EXIT = 0x2
-+ PTRACE_SYSCALL_INFO_NONE = 0x0
-+ PTRACE_SYSCALL_INFO_SECCOMP = 0x3
-+ PTRACE_TRACEME = 0x0
-+ QNX4_SUPER_MAGIC = 0x2f
-+ QNX6_SUPER_MAGIC = 0x68191122
-+ RAMFS_MAGIC = 0x858458f6
-+ RDTGROUP_SUPER_MAGIC = 0x7655821
-+ REISERFS_SUPER_MAGIC = 0x52654973
-+ RENAME_EXCHANGE = 0x2
-+ RENAME_NOREPLACE = 0x1
-+ RENAME_WHITEOUT = 0x4
-+ RLIMIT_CORE = 0x4
-+ RLIMIT_CPU = 0x0
-+ RLIMIT_DATA = 0x2
-+ RLIMIT_FSIZE = 0x1
-+ RLIMIT_LOCKS = 0xa
-+ RLIMIT_MSGQUEUE = 0xc
-+ RLIMIT_NICE = 0xd
-+ RLIMIT_RTPRIO = 0xe
-+ RLIMIT_RTTIME = 0xf
-+ RLIMIT_SIGPENDING = 0xb
-+ RLIMIT_STACK = 0x3
-+ RLIM_INFINITY = 0xffffffffffffffff
-+ RTAX_ADVMSS = 0x8
-+ RTAX_CC_ALGO = 0x10
-+ RTAX_CWND = 0x7
-+ RTAX_FASTOPEN_NO_COOKIE = 0x11
-+ RTAX_FEATURES = 0xc
-+ RTAX_FEATURE_ALLFRAG = 0x8
-+ RTAX_FEATURE_ECN = 0x1
-+ RTAX_FEATURE_MASK = 0xf
-+ RTAX_FEATURE_SACK = 0x2
-+ RTAX_FEATURE_TIMESTAMP = 0x4
-+ RTAX_HOPLIMIT = 0xa
-+ RTAX_INITCWND = 0xb
-+ RTAX_INITRWND = 0xe
-+ RTAX_LOCK = 0x1
-+ RTAX_MAX = 0x11
-+ RTAX_MTU = 0x2
-+ RTAX_QUICKACK = 0xf
-+ RTAX_REORDERING = 0x9
-+ RTAX_RTO_MIN = 0xd
-+ RTAX_RTT = 0x4
-+ RTAX_RTTVAR = 0x5
-+ RTAX_SSTHRESH = 0x6
-+ RTAX_UNSPEC = 0x0
-+ RTAX_WINDOW = 0x3
-+ RTA_ALIGNTO = 0x4
-+ RTA_MAX = 0x1e
-+ RTCF_DIRECTSRC = 0x4000000
-+ RTCF_DOREDIRECT = 0x1000000
-+ RTCF_LOG = 0x2000000
-+ RTCF_MASQ = 0x400000
-+ RTCF_NAT = 0x800000
-+ RTCF_VALVE = 0x200000
-+ RTC_AF = 0x20
-+ RTC_IRQF = 0x80
-+ RTC_MAX_FREQ = 0x2000
-+ RTC_PF = 0x40
-+ RTC_UF = 0x10
-+ RTF_ADDRCLASSMASK = 0xf8000000
-+ RTF_ADDRCONF = 0x40000
-+ RTF_ALLONLINK = 0x20000
-+ RTF_BROADCAST = 0x10000000
-+ RTF_CACHE = 0x1000000
-+ RTF_DEFAULT = 0x10000
-+ RTF_DYNAMIC = 0x10
-+ RTF_FLOW = 0x2000000
-+ RTF_GATEWAY = 0x2
-+ RTF_HOST = 0x4
-+ RTF_INTERFACE = 0x40000000
-+ RTF_IRTT = 0x100
-+ RTF_LINKRT = 0x100000
-+ RTF_LOCAL = 0x80000000
-+ RTF_MODIFIED = 0x20
-+ RTF_MSS = 0x40
-+ RTF_MTU = 0x40
-+ RTF_MULTICAST = 0x20000000
-+ RTF_NAT = 0x8000000
-+ RTF_NOFORWARD = 0x1000
-+ RTF_NONEXTHOP = 0x200000
-+ RTF_NOPMTUDISC = 0x4000
-+ RTF_POLICY = 0x4000000
-+ RTF_REINSTATE = 0x8
-+ RTF_REJECT = 0x200
-+ RTF_STATIC = 0x400
-+ RTF_THROW = 0x2000
-+ RTF_UP = 0x1
-+ RTF_WINDOW = 0x80
-+ RTF_XRESOLVE = 0x800
-+ RTMGRP_DECnet_IFADDR = 0x1000
-+ RTMGRP_DECnet_ROUTE = 0x4000
-+ RTMGRP_IPV4_IFADDR = 0x10
-+ RTMGRP_IPV4_MROUTE = 0x20
-+ RTMGRP_IPV4_ROUTE = 0x40
-+ RTMGRP_IPV4_RULE = 0x80
-+ RTMGRP_IPV6_IFADDR = 0x100
-+ RTMGRP_IPV6_IFINFO = 0x800
-+ RTMGRP_IPV6_MROUTE = 0x200
-+ RTMGRP_IPV6_PREFIX = 0x20000
-+ RTMGRP_IPV6_ROUTE = 0x400
-+ RTMGRP_LINK = 0x1
-+ RTMGRP_NEIGH = 0x4
-+ RTMGRP_NOTIFY = 0x2
-+ RTMGRP_TC = 0x8
-+ RTM_BASE = 0x10
-+ RTM_DELACTION = 0x31
-+ RTM_DELADDR = 0x15
-+ RTM_DELADDRLABEL = 0x49
-+ RTM_DELCHAIN = 0x65
-+ RTM_DELLINK = 0x11
-+ RTM_DELLINKPROP = 0x6d
-+ RTM_DELMDB = 0x55
-+ RTM_DELNEIGH = 0x1d
-+ RTM_DELNETCONF = 0x51
-+ RTM_DELNEXTHOP = 0x69
-+ RTM_DELNSID = 0x59
-+ RTM_DELQDISC = 0x25
-+ RTM_DELROUTE = 0x19
-+ RTM_DELRULE = 0x21
-+ RTM_DELTCLASS = 0x29
-+ RTM_DELTFILTER = 0x2d
-+ RTM_DELVLAN = 0x71
-+ RTM_F_CLONED = 0x200
-+ RTM_F_EQUALIZE = 0x400
-+ RTM_F_FIB_MATCH = 0x2000
-+ RTM_F_LOOKUP_TABLE = 0x1000
-+ RTM_F_NOTIFY = 0x100
-+ RTM_F_OFFLOAD = 0x4000
-+ RTM_F_PREFIX = 0x800
-+ RTM_F_TRAP = 0x8000
-+ RTM_GETACTION = 0x32
-+ RTM_GETADDR = 0x16
-+ RTM_GETADDRLABEL = 0x4a
-+ RTM_GETANYCAST = 0x3e
-+ RTM_GETCHAIN = 0x66
-+ RTM_GETDCB = 0x4e
-+ RTM_GETLINK = 0x12
-+ RTM_GETLINKPROP = 0x6e
-+ RTM_GETMDB = 0x56
-+ RTM_GETMULTICAST = 0x3a
-+ RTM_GETNEIGH = 0x1e
-+ RTM_GETNEIGHTBL = 0x42
-+ RTM_GETNETCONF = 0x52
-+ RTM_GETNEXTHOP = 0x6a
-+ RTM_GETNSID = 0x5a
-+ RTM_GETQDISC = 0x26
-+ RTM_GETROUTE = 0x1a
-+ RTM_GETRULE = 0x22
-+ RTM_GETSTATS = 0x5e
-+ RTM_GETTCLASS = 0x2a
-+ RTM_GETTFILTER = 0x2e
-+ RTM_GETVLAN = 0x72
-+ RTM_MAX = 0x73
-+ RTM_NEWACTION = 0x30
-+ RTM_NEWADDR = 0x14
-+ RTM_NEWADDRLABEL = 0x48
-+ RTM_NEWCACHEREPORT = 0x60
-+ RTM_NEWCHAIN = 0x64
-+ RTM_NEWLINK = 0x10
-+ RTM_NEWLINKPROP = 0x6c
-+ RTM_NEWMDB = 0x54
-+ RTM_NEWNDUSEROPT = 0x44
-+ RTM_NEWNEIGH = 0x1c
-+ RTM_NEWNEIGHTBL = 0x40
-+ RTM_NEWNETCONF = 0x50
-+ RTM_NEWNEXTHOP = 0x68
-+ RTM_NEWNSID = 0x58
-+ RTM_NEWNVLAN = 0x70
-+ RTM_NEWPREFIX = 0x34
-+ RTM_NEWQDISC = 0x24
-+ RTM_NEWROUTE = 0x18
-+ RTM_NEWRULE = 0x20
-+ RTM_NEWSTATS = 0x5c
-+ RTM_NEWTCLASS = 0x28
-+ RTM_NEWTFILTER = 0x2c
-+ RTM_NR_FAMILIES = 0x19
-+ RTM_NR_MSGTYPES = 0x64
-+ RTM_SETDCB = 0x4f
-+ RTM_SETLINK = 0x13
-+ RTM_SETNEIGHTBL = 0x43
-+ RTNH_ALIGNTO = 0x4
-+ RTNH_COMPARE_MASK = 0x19
-+ RTNH_F_DEAD = 0x1
-+ RTNH_F_LINKDOWN = 0x10
-+ RTNH_F_OFFLOAD = 0x8
-+ RTNH_F_ONLINK = 0x4
-+ RTNH_F_PERVASIVE = 0x2
-+ RTNH_F_UNRESOLVED = 0x20
-+ RTN_MAX = 0xb
-+ RTPROT_BABEL = 0x2a
-+ RTPROT_BGP = 0xba
-+ RTPROT_BIRD = 0xc
-+ RTPROT_BOOT = 0x3
-+ RTPROT_DHCP = 0x10
-+ RTPROT_DNROUTED = 0xd
-+ RTPROT_EIGRP = 0xc0
-+ RTPROT_GATED = 0x8
-+ RTPROT_ISIS = 0xbb
-+ RTPROT_KERNEL = 0x2
-+ RTPROT_MROUTED = 0x11
-+ RTPROT_MRT = 0xa
-+ RTPROT_NTK = 0xf
-+ RTPROT_OSPF = 0xbc
-+ RTPROT_RA = 0x9
-+ RTPROT_REDIRECT = 0x1
-+ RTPROT_RIP = 0xbd
-+ RTPROT_STATIC = 0x4
-+ RTPROT_UNSPEC = 0x0
-+ RTPROT_XORP = 0xe
-+ RTPROT_ZEBRA = 0xb
-+ RT_CLASS_DEFAULT = 0xfd
-+ RT_CLASS_LOCAL = 0xff
-+ RT_CLASS_MAIN = 0xfe
-+ RT_CLASS_MAX = 0xff
-+ RT_CLASS_UNSPEC = 0x0
-+ RUSAGE_CHILDREN = -0x1
-+ RUSAGE_SELF = 0x0
-+ RUSAGE_THREAD = 0x1
-+ RWF_APPEND = 0x10
-+ RWF_DSYNC = 0x2
-+ RWF_HIPRI = 0x1
-+ RWF_NOWAIT = 0x8
-+ RWF_SUPPORTED = 0x1f
-+ RWF_SYNC = 0x4
-+ RWF_WRITE_LIFE_NOT_SET = 0x0
-+ SCM_CREDENTIALS = 0x2
-+ SCM_RIGHTS = 0x1
-+ SCM_TIMESTAMP = 0x1d
-+ SC_LOG_FLUSH = 0x100000
-+ SECCOMP_MODE_DISABLED = 0x0
-+ SECCOMP_MODE_FILTER = 0x2
-+ SECCOMP_MODE_STRICT = 0x1
-+ SECURITYFS_MAGIC = 0x73636673
-+ SELINUX_MAGIC = 0xf97cff8c
-+ SHUT_RD = 0x0
-+ SHUT_RDWR = 0x2
-+ SHUT_WR = 0x1
-+ SIOCADDDLCI = 0x8980
-+ SIOCADDMULTI = 0x8931
-+ SIOCADDRT = 0x890b
-+ SIOCBONDCHANGEACTIVE = 0x8995
-+ SIOCBONDENSLAVE = 0x8990
-+ SIOCBONDINFOQUERY = 0x8994
-+ SIOCBONDRELEASE = 0x8991
-+ SIOCBONDSETHWADDR = 0x8992
-+ SIOCBONDSLAVEINFOQUERY = 0x8993
-+ SIOCBRADDBR = 0x89a0
-+ SIOCBRADDIF = 0x89a2
-+ SIOCBRDELBR = 0x89a1
-+ SIOCBRDELIF = 0x89a3
-+ SIOCDARP = 0x8953
-+ SIOCDELDLCI = 0x8981
-+ SIOCDELMULTI = 0x8932
-+ SIOCDELRT = 0x890c
-+ SIOCDEVPRIVATE = 0x89f0
-+ SIOCDIFADDR = 0x8936
-+ SIOCDRARP = 0x8960
-+ SIOCETHTOOL = 0x8946
-+ SIOCGARP = 0x8954
-+ SIOCGETLINKNAME = 0x89e0
-+ SIOCGETNODEID = 0x89e1
-+ SIOCGHWTSTAMP = 0x89b1
-+ SIOCGIFADDR = 0x8915
-+ SIOCGIFBR = 0x8940
-+ SIOCGIFBRDADDR = 0x8919
-+ SIOCGIFCONF = 0x8912
-+ SIOCGIFCOUNT = 0x8938
-+ SIOCGIFDSTADDR = 0x8917
-+ SIOCGIFENCAP = 0x8925
-+ SIOCGIFFLAGS = 0x8913
-+ SIOCGIFHWADDR = 0x8927
-+ SIOCGIFINDEX = 0x8933
-+ SIOCGIFMAP = 0x8970
-+ SIOCGIFMEM = 0x891f
-+ SIOCGIFMETRIC = 0x891d
-+ SIOCGIFMTU = 0x8921
-+ SIOCGIFNAME = 0x8910
-+ SIOCGIFNETMASK = 0x891b
-+ SIOCGIFPFLAGS = 0x8935
-+ SIOCGIFSLAVE = 0x8929
-+ SIOCGIFTXQLEN = 0x8942
-+ SIOCGIFVLAN = 0x8982
-+ SIOCGMIIPHY = 0x8947
-+ SIOCGMIIREG = 0x8948
-+ SIOCGPPPCSTATS = 0x89f2
-+ SIOCGPPPSTATS = 0x89f0
-+ SIOCGPPPVER = 0x89f1
-+ SIOCGRARP = 0x8961
-+ SIOCGSKNS = 0x894c
-+ SIOCGSTAMP = 0x8906
-+ SIOCGSTAMPNS = 0x8907
-+ SIOCGSTAMPNS_OLD = 0x8907
-+ SIOCGSTAMP_OLD = 0x8906
-+ SIOCOUTQNSD = 0x894b
-+ SIOCPROTOPRIVATE = 0x89e0
-+ SIOCRTMSG = 0x890d
-+ SIOCSARP = 0x8955
-+ SIOCSHWTSTAMP = 0x89b0
-+ SIOCSIFADDR = 0x8916
-+ SIOCSIFBR = 0x8941
-+ SIOCSIFBRDADDR = 0x891a
-+ SIOCSIFDSTADDR = 0x8918
-+ SIOCSIFENCAP = 0x8926
-+ SIOCSIFFLAGS = 0x8914
-+ SIOCSIFHWADDR = 0x8924
-+ SIOCSIFHWBROADCAST = 0x8937
-+ SIOCSIFLINK = 0x8911
-+ SIOCSIFMAP = 0x8971
-+ SIOCSIFMEM = 0x8920
-+ SIOCSIFMETRIC = 0x891e
-+ SIOCSIFMTU = 0x8922
-+ SIOCSIFNAME = 0x8923
-+ SIOCSIFNETMASK = 0x891c
-+ SIOCSIFPFLAGS = 0x8934
-+ SIOCSIFSLAVE = 0x8930
-+ SIOCSIFTXQLEN = 0x8943
-+ SIOCSIFVLAN = 0x8983
-+ SIOCSMIIREG = 0x8949
-+ SIOCSRARP = 0x8962
-+ SIOCWANDEV = 0x894a
-+ SMACK_MAGIC = 0x43415d53
-+ SMART_AUTOSAVE = 0xd2
-+ SMART_AUTO_OFFLINE = 0xdb
-+ SMART_DISABLE = 0xd9
-+ SMART_ENABLE = 0xd8
-+ SMART_HCYL_PASS = 0xc2
-+ SMART_IMMEDIATE_OFFLINE = 0xd4
-+ SMART_LCYL_PASS = 0x4f
-+ SMART_READ_LOG_SECTOR = 0xd5
-+ SMART_READ_THRESHOLDS = 0xd1
-+ SMART_READ_VALUES = 0xd0
-+ SMART_SAVE = 0xd3
-+ SMART_STATUS = 0xda
-+ SMART_WRITE_LOG_SECTOR = 0xd6
-+ SMART_WRITE_THRESHOLDS = 0xd7
-+ SMB_SUPER_MAGIC = 0x517b
-+ SOCKFS_MAGIC = 0x534f434b
-+ SOCK_DCCP = 0x6
-+ SOCK_IOC_TYPE = 0x89
-+ SOCK_PACKET = 0xa
-+ SOCK_RAW = 0x3
-+ SOCK_RDM = 0x4
-+ SOCK_SEQPACKET = 0x5
-+ SOL_AAL = 0x109
-+ SOL_ALG = 0x117
-+ SOL_ATM = 0x108
-+ SOL_CAIF = 0x116
-+ SOL_CAN_BASE = 0x64
-+ SOL_DCCP = 0x10d
-+ SOL_DECNET = 0x105
-+ SOL_ICMPV6 = 0x3a
-+ SOL_IP = 0x0
-+ SOL_IPV6 = 0x29
-+ SOL_IRDA = 0x10a
-+ SOL_IUCV = 0x115
-+ SOL_KCM = 0x119
-+ SOL_LLC = 0x10c
-+ SOL_NETBEUI = 0x10b
-+ SOL_NETLINK = 0x10e
-+ SOL_NFC = 0x118
-+ SOL_PACKET = 0x107
-+ SOL_PNPIPE = 0x113
-+ SOL_PPPOL2TP = 0x111
-+ SOL_RAW = 0xff
-+ SOL_RDS = 0x114
-+ SOL_RXRPC = 0x110
-+ SOL_TCP = 0x6
-+ SOL_TIPC = 0x10f
-+ SOL_TLS = 0x11a
-+ SOL_X25 = 0x106
-+ SOL_XDP = 0x11b
-+ SOMAXCONN = 0x1000
-+ SO_ATTACH_FILTER = 0x1a
-+ SO_DEBUG = 0x1
-+ SO_DETACH_BPF = 0x1b
-+ SO_DETACH_FILTER = 0x1b
-+ SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
-+ SO_EE_CODE_TXTIME_MISSED = 0x2
-+ SO_EE_CODE_ZEROCOPY_COPIED = 0x1
-+ SO_EE_ORIGIN_ICMP = 0x2
-+ SO_EE_ORIGIN_ICMP6 = 0x3
-+ SO_EE_ORIGIN_LOCAL = 0x1
-+ SO_EE_ORIGIN_NONE = 0x0
-+ SO_EE_ORIGIN_TIMESTAMPING = 0x4
-+ SO_EE_ORIGIN_TXSTATUS = 0x4
-+ SO_EE_ORIGIN_TXTIME = 0x6
-+ SO_EE_ORIGIN_ZEROCOPY = 0x5
-+ SO_GET_FILTER = 0x1a
-+ SO_NO_CHECK = 0xb
-+ SO_PEERNAME = 0x1c
-+ SO_PRIORITY = 0xc
-+ SO_TIMESTAMP = 0x1d
-+ SO_TIMESTAMP_OLD = 0x1d
-+ SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
-+ SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
-+ SO_VM_SOCKETS_BUFFER_SIZE = 0x0
-+ SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
-+ SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
-+ SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
-+ SO_VM_SOCKETS_TRUSTED = 0x5
-+ SPLICE_F_GIFT = 0x8
-+ SPLICE_F_MORE = 0x4
-+ SPLICE_F_MOVE = 0x1
-+ SPLICE_F_NONBLOCK = 0x2
-+ SQUASHFS_MAGIC = 0x73717368
-+ STACK_END_MAGIC = 0x57ac6e9d
-+ STATX_ALL = 0xfff
-+ STATX_ATIME = 0x20
-+ STATX_ATTR_APPEND = 0x20
-+ STATX_ATTR_AUTOMOUNT = 0x1000
-+ STATX_ATTR_COMPRESSED = 0x4
-+ STATX_ATTR_ENCRYPTED = 0x800
-+ STATX_ATTR_IMMUTABLE = 0x10
-+ STATX_ATTR_NODUMP = 0x40
-+ STATX_ATTR_VERITY = 0x100000
-+ STATX_BASIC_STATS = 0x7ff
-+ STATX_BLOCKS = 0x400
-+ STATX_BTIME = 0x800
-+ STATX_CTIME = 0x80
-+ STATX_GID = 0x10
-+ STATX_INO = 0x100
-+ STATX_MODE = 0x2
-+ STATX_MTIME = 0x40
-+ STATX_NLINK = 0x4
-+ STATX_SIZE = 0x200
-+ STATX_TYPE = 0x1
-+ STATX_UID = 0x8
-+ STATX__RESERVED = 0x80000000
-+ SYNC_FILE_RANGE_WAIT_AFTER = 0x4
-+ SYNC_FILE_RANGE_WAIT_BEFORE = 0x1
-+ SYNC_FILE_RANGE_WRITE = 0x2
-+ SYNC_FILE_RANGE_WRITE_AND_WAIT = 0x7
-+ SYSFS_MAGIC = 0x62656572
-+ S_BLKSIZE = 0x200
-+ S_IEXEC = 0x40
-+ S_IFBLK = 0x6000
-+ S_IFCHR = 0x2000
-+ S_IFDIR = 0x4000
-+ S_IFIFO = 0x1000
-+ S_IFLNK = 0xa000
-+ S_IFMT = 0xf000
-+ S_IFREG = 0x8000
-+ S_IFSOCK = 0xc000
-+ S_IREAD = 0x100
-+ S_IRGRP = 0x20
-+ S_IROTH = 0x4
-+ S_IRUSR = 0x100
-+ S_IRWXG = 0x38
-+ S_IRWXO = 0x7
-+ S_IRWXU = 0x1c0
-+ S_ISGID = 0x400
-+ S_ISUID = 0x800
-+ S_ISVTX = 0x200
-+ S_IWGRP = 0x10
-+ S_IWOTH = 0x2
-+ S_IWRITE = 0x80
-+ S_IWUSR = 0x80
-+ S_IXGRP = 0x8
-+ S_IXOTH = 0x1
-+ S_IXUSR = 0x40
-+ TAB0 = 0x0
-+ TASKSTATS_CMD_ATTR_MAX = 0x4
-+ TASKSTATS_CMD_MAX = 0x2
-+ TASKSTATS_GENL_NAME = "TASKSTATS"
-+ TASKSTATS_GENL_VERSION = 0x1
-+ TASKSTATS_TYPE_MAX = 0x6
-+ TASKSTATS_VERSION = 0xa
-+ TCIFLUSH = 0x0
-+ TCIOFF = 0x2
-+ TCIOFLUSH = 0x2
-+ TCION = 0x3
-+ TCOFLUSH = 0x1
-+ TCOOFF = 0x0
-+ TCOON = 0x1
-+ TCP_BPF_IW = 0x3e9
-+ TCP_BPF_SNDCWND_CLAMP = 0x3ea
-+ TCP_CC_INFO = 0x1a
-+ TCP_CM_INQ = 0x24
-+ TCP_CONGESTION = 0xd
-+ TCP_COOKIE_IN_ALWAYS = 0x1
-+ TCP_COOKIE_MAX = 0x10
-+ TCP_COOKIE_MIN = 0x8
-+ TCP_COOKIE_OUT_NEVER = 0x2
-+ TCP_COOKIE_PAIR_SIZE = 0x20
-+ TCP_COOKIE_TRANSACTIONS = 0xf
-+ TCP_CORK = 0x3
-+ TCP_DEFER_ACCEPT = 0x9
-+ TCP_FASTOPEN = 0x17
-+ TCP_FASTOPEN_CONNECT = 0x1e
-+ TCP_FASTOPEN_KEY = 0x21
-+ TCP_FASTOPEN_NO_COOKIE = 0x22
-+ TCP_INFO = 0xb
-+ TCP_INQ = 0x24
-+ TCP_KEEPCNT = 0x6
-+ TCP_KEEPIDLE = 0x4
-+ TCP_KEEPINTVL = 0x5
-+ TCP_LINGER2 = 0x8
-+ TCP_MAXSEG = 0x2
-+ TCP_MAXWIN = 0xffff
-+ TCP_MAX_WINSHIFT = 0xe
-+ TCP_MD5SIG = 0xe
-+ TCP_MD5SIG_EXT = 0x20
-+ TCP_MD5SIG_FLAG_PREFIX = 0x1
-+ TCP_MD5SIG_MAXKEYLEN = 0x50
-+ TCP_MSS = 0x200
-+ TCP_MSS_DEFAULT = 0x218
-+ TCP_MSS_DESIRED = 0x4c4
-+ TCP_NODELAY = 0x1
-+ TCP_NOTSENT_LOWAT = 0x19
-+ TCP_QUEUE_SEQ = 0x15
-+ TCP_QUICKACK = 0xc
-+ TCP_REPAIR = 0x13
-+ TCP_REPAIR_OFF = 0x0
-+ TCP_REPAIR_OFF_NO_WP = -0x1
-+ TCP_REPAIR_ON = 0x1
-+ TCP_REPAIR_OPTIONS = 0x16
-+ TCP_REPAIR_QUEUE = 0x14
-+ TCP_REPAIR_WINDOW = 0x1d
-+ TCP_SAVED_SYN = 0x1c
-+ TCP_SAVE_SYN = 0x1b
-+ TCP_SYNCNT = 0x7
-+ TCP_S_DATA_IN = 0x4
-+ TCP_S_DATA_OUT = 0x8
-+ TCP_THIN_DUPACK = 0x11
-+ TCP_THIN_LINEAR_TIMEOUTS = 0x10
-+ TCP_TIMESTAMP = 0x18
-+ TCP_TX_DELAY = 0x25
-+ TCP_ULP = 0x1f
-+ TCP_USER_TIMEOUT = 0x12
-+ TCP_WINDOW_CLAMP = 0xa
-+ TCP_ZEROCOPY_RECEIVE = 0x23
-+ TIMER_ABSTIME = 0x1
-+ TIOCM_DTR = 0x2
-+ TIOCM_LE = 0x1
-+ TIOCM_RTS = 0x4
-+ TIOCPKT_DATA = 0x0
-+ TIOCPKT_DOSTOP = 0x20
-+ TIOCPKT_FLUSHREAD = 0x1
-+ TIOCPKT_FLUSHWRITE = 0x2
-+ TIOCPKT_IOCTL = 0x40
-+ TIOCPKT_NOSTOP = 0x10
-+ TIOCPKT_START = 0x8
-+ TIOCPKT_STOP = 0x4
-+ TIPC_ADDR_ID = 0x3
-+ TIPC_ADDR_MCAST = 0x1
-+ TIPC_ADDR_NAME = 0x2
-+ TIPC_ADDR_NAMESEQ = 0x1
-+ TIPC_AEAD_ALG_NAME = 0x20
-+ TIPC_AEAD_KEYLEN_MAX = 0x24
-+ TIPC_AEAD_KEYLEN_MIN = 0x14
-+ TIPC_AEAD_KEY_SIZE_MAX = 0x48
-+ TIPC_CFG_SRV = 0x0
-+ TIPC_CLUSTER_BITS = 0xc
-+ TIPC_CLUSTER_MASK = 0xfff000
-+ TIPC_CLUSTER_OFFSET = 0xc
-+ TIPC_CLUSTER_SIZE = 0xfff
-+ TIPC_CONN_SHUTDOWN = 0x5
-+ TIPC_CONN_TIMEOUT = 0x82
-+ TIPC_CRITICAL_IMPORTANCE = 0x3
-+ TIPC_DESTNAME = 0x3
-+ TIPC_DEST_DROPPABLE = 0x81
-+ TIPC_ERRINFO = 0x1
-+ TIPC_ERR_NO_NAME = 0x1
-+ TIPC_ERR_NO_NODE = 0x3
-+ TIPC_ERR_NO_PORT = 0x2
-+ TIPC_ERR_OVERLOAD = 0x4
-+ TIPC_GROUP_JOIN = 0x87
-+ TIPC_GROUP_LEAVE = 0x88
-+ TIPC_GROUP_LOOPBACK = 0x1
-+ TIPC_GROUP_MEMBER_EVTS = 0x2
-+ TIPC_HIGH_IMPORTANCE = 0x2
-+ TIPC_IMPORTANCE = 0x7f
-+ TIPC_LINK_STATE = 0x2
-+ TIPC_LOW_IMPORTANCE = 0x0
-+ TIPC_MAX_BEARER_NAME = 0x20
-+ TIPC_MAX_IF_NAME = 0x10
-+ TIPC_MAX_LINK_NAME = 0x44
-+ TIPC_MAX_MEDIA_NAME = 0x10
-+ TIPC_MAX_USER_MSG_SIZE = 0x101d0
-+ TIPC_MCAST_BROADCAST = 0x85
-+ TIPC_MCAST_REPLICAST = 0x86
-+ TIPC_MEDIUM_IMPORTANCE = 0x1
-+ TIPC_NODEID_LEN = 0x10
-+ TIPC_NODELAY = 0x8a
-+ TIPC_NODE_BITS = 0xc
-+ TIPC_NODE_MASK = 0xfff
-+ TIPC_NODE_OFFSET = 0x0
-+ TIPC_NODE_RECVQ_DEPTH = 0x83
-+ TIPC_NODE_SIZE = 0xfff
-+ TIPC_NODE_STATE = 0x0
-+ TIPC_OK = 0x0
-+ TIPC_PUBLISHED = 0x1
-+ TIPC_RESERVED_TYPES = 0x40
-+ TIPC_RETDATA = 0x2
-+ TIPC_SERVICE_ADDR = 0x2
-+ TIPC_SERVICE_RANGE = 0x1
-+ TIPC_SOCKET_ADDR = 0x3
-+ TIPC_SOCK_RECVQ_DEPTH = 0x84
-+ TIPC_SOCK_RECVQ_USED = 0x89
-+ TIPC_SRC_DROPPABLE = 0x80
-+ TIPC_SUBSCR_TIMEOUT = 0x3
-+ TIPC_SUB_CANCEL = 0x4
-+ TIPC_SUB_PORTS = 0x1
-+ TIPC_SUB_SERVICE = 0x2
-+ TIPC_TOP_SRV = 0x1
-+ TIPC_WAIT_FOREVER = 0xffffffff
-+ TIPC_WITHDRAWN = 0x2
-+ TIPC_ZONE_BITS = 0x8
-+ TIPC_ZONE_CLUSTER_MASK = 0xfffff000
-+ TIPC_ZONE_MASK = 0xff000000
-+ TIPC_ZONE_OFFSET = 0x18
-+ TIPC_ZONE_SCOPE = 0x1
-+ TIPC_ZONE_SIZE = 0xff
-+ TMPFS_MAGIC = 0x1021994
-+ TPACKET_ALIGNMENT = 0x10
-+ TPACKET_HDRLEN = 0x34
-+ TP_STATUS_AVAILABLE = 0x0
-+ TP_STATUS_BLK_TMO = 0x20
-+ TP_STATUS_COPY = 0x2
-+ TP_STATUS_CSUMNOTREADY = 0x8
-+ TP_STATUS_CSUM_VALID = 0x80
-+ TP_STATUS_KERNEL = 0x0
-+ TP_STATUS_LOSING = 0x4
-+ TP_STATUS_SENDING = 0x2
-+ TP_STATUS_SEND_REQUEST = 0x1
-+ TP_STATUS_TS_RAW_HARDWARE = 0x80000000
-+ TP_STATUS_TS_SOFTWARE = 0x20000000
-+ TP_STATUS_TS_SYS_HARDWARE = 0x40000000
-+ TP_STATUS_USER = 0x1
-+ TP_STATUS_VLAN_TPID_VALID = 0x40
-+ TP_STATUS_VLAN_VALID = 0x10
-+ TP_STATUS_WRONG_FORMAT = 0x4
-+ TRACEFS_MAGIC = 0x74726163
-+ TS_COMM_LEN = 0x20
-+ UDF_SUPER_MAGIC = 0x15013346
-+ UMOUNT_NOFOLLOW = 0x8
-+ USBDEVICE_SUPER_MAGIC = 0x9fa2
-+ UTIME_NOW = 0x3fffffff
-+ UTIME_OMIT = 0x3ffffffe
-+ V9FS_MAGIC = 0x1021997
-+ VERASE = 0x2
-+ VINTR = 0x0
-+ VKILL = 0x3
-+ VLNEXT = 0xf
-+ VMADDR_CID_ANY = 0xffffffff
-+ VMADDR_CID_HOST = 0x2
-+ VMADDR_CID_HYPERVISOR = 0x0
-+ VMADDR_CID_LOCAL = 0x1
-+ VMADDR_PORT_ANY = 0xffffffff
-+ VM_SOCKETS_INVALID_VERSION = 0xffffffff
-+ VQUIT = 0x1
-+ VT0 = 0x0
-+ WALL = 0x40000000
-+ WCLONE = 0x80000000
-+ WCONTINUED = 0x8
-+ WDIOC_SETPRETIMEOUT = 0xc0045708
-+ WDIOC_SETTIMEOUT = 0xc0045706
-+ WEXITED = 0x4
-+ WIN_ACKMEDIACHANGE = 0xdb
-+ WIN_CHECKPOWERMODE1 = 0xe5
-+ WIN_CHECKPOWERMODE2 = 0x98
-+ WIN_DEVICE_RESET = 0x8
-+ WIN_DIAGNOSE = 0x90
-+ WIN_DOORLOCK = 0xde
-+ WIN_DOORUNLOCK = 0xdf
-+ WIN_DOWNLOAD_MICROCODE = 0x92
-+ WIN_FLUSH_CACHE = 0xe7
-+ WIN_FLUSH_CACHE_EXT = 0xea
-+ WIN_FORMAT = 0x50
-+ WIN_GETMEDIASTATUS = 0xda
-+ WIN_IDENTIFY = 0xec
-+ WIN_IDENTIFY_DMA = 0xee
-+ WIN_IDLEIMMEDIATE = 0xe1
-+ WIN_INIT = 0x60
-+ WIN_MEDIAEJECT = 0xed
-+ WIN_MULTREAD = 0xc4
-+ WIN_MULTREAD_EXT = 0x29
-+ WIN_MULTWRITE = 0xc5
-+ WIN_MULTWRITE_EXT = 0x39
-+ WIN_NOP = 0x0
-+ WIN_PACKETCMD = 0xa0
-+ WIN_PIDENTIFY = 0xa1
-+ WIN_POSTBOOT = 0xdc
-+ WIN_PREBOOT = 0xdd
-+ WIN_QUEUED_SERVICE = 0xa2
-+ WIN_READ = 0x20
-+ WIN_READDMA = 0xc8
-+ WIN_READDMA_EXT = 0x25
-+ WIN_READDMA_ONCE = 0xc9
-+ WIN_READDMA_QUEUED = 0xc7
-+ WIN_READDMA_QUEUED_EXT = 0x26
-+ WIN_READ_BUFFER = 0xe4
-+ WIN_READ_EXT = 0x24
-+ WIN_READ_LONG = 0x22
-+ WIN_READ_LONG_ONCE = 0x23
-+ WIN_READ_NATIVE_MAX = 0xf8
-+ WIN_READ_NATIVE_MAX_EXT = 0x27
-+ WIN_READ_ONCE = 0x21
-+ WIN_RECAL = 0x10
-+ WIN_RESTORE = 0x10
-+ WIN_SECURITY_DISABLE = 0xf6
-+ WIN_SECURITY_ERASE_PREPARE = 0xf3
-+ WIN_SECURITY_ERASE_UNIT = 0xf4
-+ WIN_SECURITY_FREEZE_LOCK = 0xf5
-+ WIN_SECURITY_SET_PASS = 0xf1
-+ WIN_SECURITY_UNLOCK = 0xf2
-+ WIN_SEEK = 0x70
-+ WIN_SETFEATURES = 0xef
-+ WIN_SETIDLE1 = 0xe3
-+ WIN_SETIDLE2 = 0x97
-+ WIN_SETMULT = 0xc6
-+ WIN_SET_MAX = 0xf9
-+ WIN_SET_MAX_EXT = 0x37
-+ WIN_SLEEPNOW1 = 0xe6
-+ WIN_SLEEPNOW2 = 0x99
-+ WIN_SMART = 0xb0
-+ WIN_SPECIFY = 0x91
-+ WIN_SRST = 0x8
-+ WIN_STANDBY = 0xe2
-+ WIN_STANDBY2 = 0x96
-+ WIN_STANDBYNOW1 = 0xe0
-+ WIN_STANDBYNOW2 = 0x94
-+ WIN_VERIFY = 0x40
-+ WIN_VERIFY_EXT = 0x42
-+ WIN_VERIFY_ONCE = 0x41
-+ WIN_WRITE = 0x30
-+ WIN_WRITEDMA = 0xca
-+ WIN_WRITEDMA_EXT = 0x35
-+ WIN_WRITEDMA_ONCE = 0xcb
-+ WIN_WRITEDMA_QUEUED = 0xcc
-+ WIN_WRITEDMA_QUEUED_EXT = 0x36
-+ WIN_WRITE_BUFFER = 0xe8
-+ WIN_WRITE_EXT = 0x34
-+ WIN_WRITE_LONG = 0x32
-+ WIN_WRITE_LONG_ONCE = 0x33
-+ WIN_WRITE_ONCE = 0x31
-+ WIN_WRITE_SAME = 0xe9
-+ WIN_WRITE_VERIFY = 0x3c
-+ WNOHANG = 0x1
-+ WNOTHREAD = 0x20000000
-+ WNOWAIT = 0x1000000
-+ WSTOPPED = 0x2
-+ WUNTRACED = 0x2
-+ XATTR_CREATE = 0x1
-+ XATTR_REPLACE = 0x2
-+ XDP_COPY = 0x2
-+ XDP_FLAGS_DRV_MODE = 0x4
-+ XDP_FLAGS_HW_MODE = 0x8
-+ XDP_FLAGS_MASK = 0xf
-+ XDP_FLAGS_MODES = 0xe
-+ XDP_FLAGS_SKB_MODE = 0x2
-+ XDP_FLAGS_UPDATE_IF_NOEXIST = 0x1
-+ XDP_MMAP_OFFSETS = 0x1
-+ XDP_OPTIONS = 0x8
-+ XDP_OPTIONS_ZEROCOPY = 0x1
-+ XDP_PACKET_HEADROOM = 0x100
-+ XDP_PGOFF_RX_RING = 0x0
-+ XDP_PGOFF_TX_RING = 0x80000000
-+ XDP_RING_NEED_WAKEUP = 0x1
-+ XDP_RX_RING = 0x2
-+ XDP_SHARED_UMEM = 0x1
-+ XDP_STATISTICS = 0x7
-+ XDP_TX_RING = 0x3
-+ XDP_UMEM_COMPLETION_RING = 0x6
-+ XDP_UMEM_FILL_RING = 0x5
-+ XDP_UMEM_PGOFF_COMPLETION_RING = 0x180000000
-+ XDP_UMEM_PGOFF_FILL_RING = 0x100000000
-+ XDP_UMEM_REG = 0x4
-+ XDP_UMEM_UNALIGNED_CHUNK_FLAG = 0x1
-+ XDP_USE_NEED_WAKEUP = 0x8
-+ XDP_ZEROCOPY = 0x4
-+ XENFS_SUPER_MAGIC = 0xabba1974
-+ XFS_SUPER_MAGIC = 0x58465342
-+ Z3FOLD_MAGIC = 0x33
-+ ZONEFS_MAGIC = 0x5a4f4653
-+ ZSMALLOC_MAGIC = 0x58295829
-+)
-+
-+// Errors
-+const (
-+ E2BIG = syscall.Errno(0x7)
-+ EACCES = syscall.Errno(0xd)
-+ EAGAIN = syscall.Errno(0xb)
-+ EBADF = syscall.Errno(0x9)
-+ EBUSY = syscall.Errno(0x10)
-+ ECHILD = syscall.Errno(0xa)
-+ EDOM = syscall.Errno(0x21)
-+ EEXIST = syscall.Errno(0x11)
-+ EFAULT = syscall.Errno(0xe)
-+ EFBIG = syscall.Errno(0x1b)
-+ EINTR = syscall.Errno(0x4)
-+ EINVAL = syscall.Errno(0x16)
-+ EIO = syscall.Errno(0x5)
-+ EISDIR = syscall.Errno(0x15)
-+ EMFILE = syscall.Errno(0x18)
-+ EMLINK = syscall.Errno(0x1f)
-+ ENFILE = syscall.Errno(0x17)
-+ ENODEV = syscall.Errno(0x13)
-+ ENOENT = syscall.Errno(0x2)
-+ ENOEXEC = syscall.Errno(0x8)
-+ ENOMEM = syscall.Errno(0xc)
-+ ENOSPC = syscall.Errno(0x1c)
-+ ENOTBLK = syscall.Errno(0xf)
-+ ENOTDIR = syscall.Errno(0x14)
-+ ENOTTY = syscall.Errno(0x19)
-+ ENXIO = syscall.Errno(0x6)
-+ EPERM = syscall.Errno(0x1)
-+ EPIPE = syscall.Errno(0x20)
-+ ERANGE = syscall.Errno(0x22)
-+ EROFS = syscall.Errno(0x1e)
-+ ESPIPE = syscall.Errno(0x1d)
-+ ESRCH = syscall.Errno(0x3)
-+ ETXTBSY = syscall.Errno(0x1a)
-+ EWOULDBLOCK = syscall.Errno(0xb)
-+ EXDEV = syscall.Errno(0x12)
-+)
-+
-+// Signals
-+const (
-+ SIGABRT = syscall.Signal(0x6)
-+ SIGALRM = syscall.Signal(0xe)
-+ SIGFPE = syscall.Signal(0x8)
-+ SIGHUP = syscall.Signal(0x1)
-+ SIGILL = syscall.Signal(0x4)
-+ SIGINT = syscall.Signal(0x2)
-+ SIGIOT = syscall.Signal(0x6)
-+ SIGKILL = syscall.Signal(0x9)
-+ SIGPIPE = syscall.Signal(0xd)
-+ SIGQUIT = syscall.Signal(0x3)
-+ SIGSEGV = syscall.Signal(0xb)
-+ SIGTERM = syscall.Signal(0xf)
-+ SIGTRAP = syscall.Signal(0x5)
-+)
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_386.go b/vendor/golang.org/x/sys/unix/zerrors_linux_386.go
-index 33ced1ae..028c9d87 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_linux_386.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_386.go
-@@ -3,7 +3,7 @@
-
- // +build 386,linux
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -Wall -Werror -static -I/tmp/include -m32 _const.go
-
- package unix
-@@ -11,1868 +11,487 @@ package unix
- import "syscall"
-
- const (
-- AF_ALG = 0x26
-- AF_APPLETALK = 0x5
-- AF_ASH = 0x12
-- AF_ATMPVC = 0x8
-- AF_ATMSVC = 0x14
-- AF_AX25 = 0x3
-- AF_BLUETOOTH = 0x1f
-- AF_BRIDGE = 0x7
-- AF_CAIF = 0x25
-- AF_CAN = 0x1d
-- AF_DECnet = 0xc
-- AF_ECONET = 0x13
-- AF_FILE = 0x1
-- AF_IB = 0x1b
-- AF_IEEE802154 = 0x24
-- AF_INET = 0x2
-- AF_INET6 = 0xa
-- AF_IPX = 0x4
-- AF_IRDA = 0x17
-- AF_ISDN = 0x22
-- AF_IUCV = 0x20
-- AF_KCM = 0x29
-- AF_KEY = 0xf
-- AF_LLC = 0x1a
-- AF_LOCAL = 0x1
-- AF_MAX = 0x2b
-- AF_MPLS = 0x1c
-- AF_NETBEUI = 0xd
-- AF_NETLINK = 0x10
-- AF_NETROM = 0x6
-- AF_NFC = 0x27
-- AF_PACKET = 0x11
-- AF_PHONET = 0x23
-- AF_PPPOX = 0x18
-- AF_QIPCRTR = 0x2a
-- AF_RDS = 0x15
-- AF_ROSE = 0xb
-- AF_ROUTE = 0x10
-- AF_RXRPC = 0x21
-- AF_SECURITY = 0xe
-- AF_SNA = 0x16
-- AF_TIPC = 0x1e
-- AF_UNIX = 0x1
-- AF_UNSPEC = 0x0
-- AF_VSOCK = 0x28
-- AF_WANPIPE = 0x19
-- AF_X25 = 0x9
-- ALG_OP_DECRYPT = 0x0
-- ALG_OP_ENCRYPT = 0x1
-- ALG_SET_AEAD_ASSOCLEN = 0x4
-- ALG_SET_AEAD_AUTHSIZE = 0x5
-- ALG_SET_IV = 0x2
-- ALG_SET_KEY = 0x1
-- ALG_SET_OP = 0x3
-- ARPHRD_6LOWPAN = 0x339
-- ARPHRD_ADAPT = 0x108
-- ARPHRD_APPLETLK = 0x8
-- ARPHRD_ARCNET = 0x7
-- ARPHRD_ASH = 0x30d
-- ARPHRD_ATM = 0x13
-- ARPHRD_AX25 = 0x3
-- ARPHRD_BIF = 0x307
-- ARPHRD_CAIF = 0x336
-- ARPHRD_CAN = 0x118
-- ARPHRD_CHAOS = 0x5
-- ARPHRD_CISCO = 0x201
-- ARPHRD_CSLIP = 0x101
-- ARPHRD_CSLIP6 = 0x103
-- ARPHRD_DDCMP = 0x205
-- ARPHRD_DLCI = 0xf
-- ARPHRD_ECONET = 0x30e
-- ARPHRD_EETHER = 0x2
-- ARPHRD_ETHER = 0x1
-- ARPHRD_EUI64 = 0x1b
-- ARPHRD_FCAL = 0x311
-- ARPHRD_FCFABRIC = 0x313
-- ARPHRD_FCPL = 0x312
-- ARPHRD_FCPP = 0x310
-- ARPHRD_FDDI = 0x306
-- ARPHRD_FRAD = 0x302
-- ARPHRD_HDLC = 0x201
-- ARPHRD_HIPPI = 0x30c
-- ARPHRD_HWX25 = 0x110
-- ARPHRD_IEEE1394 = 0x18
-- ARPHRD_IEEE802 = 0x6
-- ARPHRD_IEEE80211 = 0x321
-- ARPHRD_IEEE80211_PRISM = 0x322
-- ARPHRD_IEEE80211_RADIOTAP = 0x323
-- ARPHRD_IEEE802154 = 0x324
-- ARPHRD_IEEE802154_MONITOR = 0x325
-- ARPHRD_IEEE802_TR = 0x320
-- ARPHRD_INFINIBAND = 0x20
-- ARPHRD_IP6GRE = 0x337
-- ARPHRD_IPDDP = 0x309
-- ARPHRD_IPGRE = 0x30a
-- ARPHRD_IRDA = 0x30f
-- ARPHRD_LAPB = 0x204
-- ARPHRD_LOCALTLK = 0x305
-- ARPHRD_LOOPBACK = 0x304
-- ARPHRD_METRICOM = 0x17
-- ARPHRD_NETLINK = 0x338
-- ARPHRD_NETROM = 0x0
-- ARPHRD_NONE = 0xfffe
-- ARPHRD_PHONET = 0x334
-- ARPHRD_PHONET_PIPE = 0x335
-- ARPHRD_PIMREG = 0x30b
-- ARPHRD_PPP = 0x200
-- ARPHRD_PRONET = 0x4
-- ARPHRD_RAWHDLC = 0x206
-- ARPHRD_ROSE = 0x10e
-- ARPHRD_RSRVD = 0x104
-- ARPHRD_SIT = 0x308
-- ARPHRD_SKIP = 0x303
-- ARPHRD_SLIP = 0x100
-- ARPHRD_SLIP6 = 0x102
-- ARPHRD_TUNNEL = 0x300
-- ARPHRD_TUNNEL6 = 0x301
-- ARPHRD_VOID = 0xffff
-- ARPHRD_X25 = 0x10f
-- B0 = 0x0
-- B1000000 = 0x1008
-- B110 = 0x3
-- B115200 = 0x1002
-- B1152000 = 0x1009
-- B1200 = 0x9
-- B134 = 0x4
-- B150 = 0x5
-- B1500000 = 0x100a
-- B1800 = 0xa
-- B19200 = 0xe
-- B200 = 0x6
-- B2000000 = 0x100b
-- B230400 = 0x1003
-- B2400 = 0xb
-- B2500000 = 0x100c
-- B300 = 0x7
-- B3000000 = 0x100d
-- B3500000 = 0x100e
-- B38400 = 0xf
-- B4000000 = 0x100f
-- B460800 = 0x1004
-- B4800 = 0xc
-- B50 = 0x1
-- B500000 = 0x1005
-- B57600 = 0x1001
-- B576000 = 0x1006
-- B600 = 0x8
-- B75 = 0x2
-- B921600 = 0x1007
-- B9600 = 0xd
-- BLKBSZGET = 0x80041270
-- BLKBSZSET = 0x40041271
-- BLKFLSBUF = 0x1261
-- BLKFRAGET = 0x1265
-- BLKFRASET = 0x1264
-- BLKGETSIZE = 0x1260
-- BLKGETSIZE64 = 0x80041272
-- BLKPBSZGET = 0x127b
-- BLKRAGET = 0x1263
-- BLKRASET = 0x1262
-- BLKROGET = 0x125e
-- BLKROSET = 0x125d
-- BLKRRPART = 0x125f
-- BLKSECTGET = 0x1267
-- BLKSECTSET = 0x1266
-- BLKSSZGET = 0x1268
-- BOTHER = 0x1000
-- BPF_A = 0x10
-- BPF_ABS = 0x20
-- BPF_ADD = 0x0
-- BPF_ALU = 0x4
-- BPF_AND = 0x50
-- BPF_B = 0x10
-- BPF_DIV = 0x30
-- BPF_H = 0x8
-- BPF_IMM = 0x0
-- BPF_IND = 0x40
-- BPF_JA = 0x0
-- BPF_JEQ = 0x10
-- BPF_JGE = 0x30
-- BPF_JGT = 0x20
-- BPF_JMP = 0x5
-- BPF_JSET = 0x40
-- BPF_K = 0x0
-- BPF_LD = 0x0
-- BPF_LDX = 0x1
-- BPF_LEN = 0x80
-- BPF_LL_OFF = -0x200000
-- BPF_LSH = 0x60
-- BPF_MAJOR_VERSION = 0x1
-- BPF_MAXINSNS = 0x1000
-- BPF_MEM = 0x60
-- BPF_MEMWORDS = 0x10
-- BPF_MINOR_VERSION = 0x1
-- BPF_MISC = 0x7
-- BPF_MOD = 0x90
-- BPF_MSH = 0xa0
-- BPF_MUL = 0x20
-- BPF_NEG = 0x80
-- BPF_NET_OFF = -0x100000
-- BPF_OR = 0x40
-- BPF_RET = 0x6
-- BPF_RSH = 0x70
-- BPF_ST = 0x2
-- BPF_STX = 0x3
-- BPF_SUB = 0x10
-- BPF_TAX = 0x0
-- BPF_TXA = 0x80
-- BPF_W = 0x0
-- BPF_X = 0x8
-- BPF_XOR = 0xa0
-- BRKINT = 0x2
-- BS0 = 0x0
-- BS1 = 0x2000
-- BSDLY = 0x2000
-- CAN_BCM = 0x2
-- CAN_EFF_FLAG = 0x80000000
-- CAN_EFF_ID_BITS = 0x1d
-- CAN_EFF_MASK = 0x1fffffff
-- CAN_ERR_FLAG = 0x20000000
-- CAN_ERR_MASK = 0x1fffffff
-- CAN_INV_FILTER = 0x20000000
-- CAN_ISOTP = 0x6
-- CAN_MAX_DLC = 0x8
-- CAN_MAX_DLEN = 0x8
-- CAN_MCNET = 0x5
-- CAN_MTU = 0x10
-- CAN_NPROTO = 0x7
-- CAN_RAW = 0x1
-- CAN_RAW_FILTER_MAX = 0x200
-- CAN_RTR_FLAG = 0x40000000
-- CAN_SFF_ID_BITS = 0xb
-- CAN_SFF_MASK = 0x7ff
-- CAN_TP16 = 0x3
-- CAN_TP20 = 0x4
-- CBAUD = 0x100f
-- CBAUDEX = 0x1000
-- CFLUSH = 0xf
-- CIBAUD = 0x100f0000
-- CLOCAL = 0x800
-- CLOCK_BOOTTIME = 0x7
-- CLOCK_BOOTTIME_ALARM = 0x9
-- CLOCK_DEFAULT = 0x0
-- CLOCK_EXT = 0x1
-- CLOCK_INT = 0x2
-- CLOCK_MONOTONIC = 0x1
-- CLOCK_MONOTONIC_COARSE = 0x6
-- CLOCK_MONOTONIC_RAW = 0x4
-- CLOCK_PROCESS_CPUTIME_ID = 0x2
-- CLOCK_REALTIME = 0x0
-- CLOCK_REALTIME_ALARM = 0x8
-- CLOCK_REALTIME_COARSE = 0x5
-- CLOCK_TAI = 0xb
-- CLOCK_THREAD_CPUTIME_ID = 0x3
-- CLOCK_TXFROMRX = 0x4
-- CLOCK_TXINT = 0x3
-- CLONE_CHILD_CLEARTID = 0x200000
-- CLONE_CHILD_SETTID = 0x1000000
-- CLONE_DETACHED = 0x400000
-- CLONE_FILES = 0x400
-- CLONE_FS = 0x200
-- CLONE_IO = 0x80000000
-- CLONE_NEWCGROUP = 0x2000000
-- CLONE_NEWIPC = 0x8000000
-- CLONE_NEWNET = 0x40000000
-- CLONE_NEWNS = 0x20000
-- CLONE_NEWPID = 0x20000000
-- CLONE_NEWUSER = 0x10000000
-- CLONE_NEWUTS = 0x4000000
-- CLONE_PARENT = 0x8000
-- CLONE_PARENT_SETTID = 0x100000
-- CLONE_PTRACE = 0x2000
-- CLONE_SETTLS = 0x80000
-- CLONE_SIGHAND = 0x800
-- CLONE_SYSVSEM = 0x40000
-- CLONE_THREAD = 0x10000
-- CLONE_UNTRACED = 0x800000
-- CLONE_VFORK = 0x4000
-- CLONE_VM = 0x100
-- CMSPAR = 0x40000000
-- CR0 = 0x0
-- CR1 = 0x200
-- CR2 = 0x400
-- CR3 = 0x600
-- CRDLY = 0x600
-- CREAD = 0x80
-- CRTSCTS = 0x80000000
-- CS5 = 0x0
-- CS6 = 0x10
-- CS7 = 0x20
-- CS8 = 0x30
-- CSIGNAL = 0xff
-- CSIZE = 0x30
-- CSTART = 0x11
-- CSTATUS = 0x0
-- CSTOP = 0x13
-- CSTOPB = 0x40
-- CSUSP = 0x1a
-- DT_BLK = 0x6
-- DT_CHR = 0x2
-- DT_DIR = 0x4
-- DT_FIFO = 0x1
-- DT_LNK = 0xa
-- DT_REG = 0x8
-- DT_SOCK = 0xc
-- DT_UNKNOWN = 0x0
-- DT_WHT = 0xe
-- ECHO = 0x8
-- ECHOCTL = 0x200
-- ECHOE = 0x10
-- ECHOK = 0x20
-- ECHOKE = 0x800
-- ECHONL = 0x40
-- ECHOPRT = 0x400
-- EFD_CLOEXEC = 0x80000
-- EFD_NONBLOCK = 0x800
-- EFD_SEMAPHORE = 0x1
-- ENCODING_DEFAULT = 0x0
-- ENCODING_FM_MARK = 0x3
-- ENCODING_FM_SPACE = 0x4
-- ENCODING_MANCHESTER = 0x5
-- ENCODING_NRZ = 0x1
-- ENCODING_NRZI = 0x2
-- EPOLLERR = 0x8
-- EPOLLET = 0x80000000
-- EPOLLEXCLUSIVE = 0x10000000
-- EPOLLHUP = 0x10
-- EPOLLIN = 0x1
-- EPOLLMSG = 0x400
-- EPOLLONESHOT = 0x40000000
-- EPOLLOUT = 0x4
-- EPOLLPRI = 0x2
-- EPOLLRDBAND = 0x80
-- EPOLLRDHUP = 0x2000
-- EPOLLRDNORM = 0x40
-- EPOLLWAKEUP = 0x20000000
-- EPOLLWRBAND = 0x200
-- EPOLLWRNORM = 0x100
-- EPOLL_CLOEXEC = 0x80000
-- EPOLL_CTL_ADD = 0x1
-- EPOLL_CTL_DEL = 0x2
-- EPOLL_CTL_MOD = 0x3
-- ETH_P_1588 = 0x88f7
-- ETH_P_8021AD = 0x88a8
-- ETH_P_8021AH = 0x88e7
-- ETH_P_8021Q = 0x8100
-- ETH_P_80221 = 0x8917
-- ETH_P_802_2 = 0x4
-- ETH_P_802_3 = 0x1
-- ETH_P_802_3_MIN = 0x600
-- ETH_P_802_EX1 = 0x88b5
-- ETH_P_AARP = 0x80f3
-- ETH_P_AF_IUCV = 0xfbfb
-- ETH_P_ALL = 0x3
-- ETH_P_AOE = 0x88a2
-- ETH_P_ARCNET = 0x1a
-- ETH_P_ARP = 0x806
-- ETH_P_ATALK = 0x809b
-- ETH_P_ATMFATE = 0x8884
-- ETH_P_ATMMPOA = 0x884c
-- ETH_P_AX25 = 0x2
-- ETH_P_BATMAN = 0x4305
-- ETH_P_BPQ = 0x8ff
-- ETH_P_CAIF = 0xf7
-- ETH_P_CAN = 0xc
-- ETH_P_CANFD = 0xd
-- ETH_P_CONTROL = 0x16
-- ETH_P_CUST = 0x6006
-- ETH_P_DDCMP = 0x6
-- ETH_P_DEC = 0x6000
-- ETH_P_DIAG = 0x6005
-- ETH_P_DNA_DL = 0x6001
-- ETH_P_DNA_RC = 0x6002
-- ETH_P_DNA_RT = 0x6003
-- ETH_P_DSA = 0x1b
-- ETH_P_ECONET = 0x18
-- ETH_P_EDSA = 0xdada
-- ETH_P_FCOE = 0x8906
-- ETH_P_FIP = 0x8914
-- ETH_P_HDLC = 0x19
-- ETH_P_HSR = 0x892f
-- ETH_P_IEEE802154 = 0xf6
-- ETH_P_IEEEPUP = 0xa00
-- ETH_P_IEEEPUPAT = 0xa01
-- ETH_P_IP = 0x800
-- ETH_P_IPV6 = 0x86dd
-- ETH_P_IPX = 0x8137
-- ETH_P_IRDA = 0x17
-- ETH_P_LAT = 0x6004
-- ETH_P_LINK_CTL = 0x886c
-- ETH_P_LOCALTALK = 0x9
-- ETH_P_LOOP = 0x60
-- ETH_P_LOOPBACK = 0x9000
-- ETH_P_MACSEC = 0x88e5
-- ETH_P_MOBITEX = 0x15
-- ETH_P_MPLS_MC = 0x8848
-- ETH_P_MPLS_UC = 0x8847
-- ETH_P_MVRP = 0x88f5
-- ETH_P_NCSI = 0x88f8
-- ETH_P_PAE = 0x888e
-- ETH_P_PAUSE = 0x8808
-- ETH_P_PHONET = 0xf5
-- ETH_P_PPPTALK = 0x10
-- ETH_P_PPP_DISC = 0x8863
-- ETH_P_PPP_MP = 0x8
-- ETH_P_PPP_SES = 0x8864
-- ETH_P_PRP = 0x88fb
-- ETH_P_PUP = 0x200
-- ETH_P_PUPAT = 0x201
-- ETH_P_QINQ1 = 0x9100
-- ETH_P_QINQ2 = 0x9200
-- ETH_P_QINQ3 = 0x9300
-- ETH_P_RARP = 0x8035
-- ETH_P_SCA = 0x6007
-- ETH_P_SLOW = 0x8809
-- ETH_P_SNAP = 0x5
-- ETH_P_TDLS = 0x890d
-- ETH_P_TEB = 0x6558
-- ETH_P_TIPC = 0x88ca
-- ETH_P_TRAILER = 0x1c
-- ETH_P_TR_802_2 = 0x11
-- ETH_P_TSN = 0x22f0
-- ETH_P_WAN_PPP = 0x7
-- ETH_P_WCCP = 0x883e
-- ETH_P_X25 = 0x805
-- ETH_P_XDSA = 0xf8
-- EXTA = 0xe
-- EXTB = 0xf
-- EXTPROC = 0x10000
-- FALLOC_FL_COLLAPSE_RANGE = 0x8
-- FALLOC_FL_INSERT_RANGE = 0x20
-- FALLOC_FL_KEEP_SIZE = 0x1
-- FALLOC_FL_NO_HIDE_STALE = 0x4
-- FALLOC_FL_PUNCH_HOLE = 0x2
-- FALLOC_FL_UNSHARE_RANGE = 0x40
-- FALLOC_FL_ZERO_RANGE = 0x10
-- FD_CLOEXEC = 0x1
-- FD_SETSIZE = 0x400
-- FF0 = 0x0
-- FF1 = 0x8000
-- FFDLY = 0x8000
-- FLUSHO = 0x1000
-- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
-- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
-- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
-- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
-- FS_ENCRYPTION_MODE_INVALID = 0x0
-- FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
-- FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
-- FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
-- FS_KEY_DESCRIPTOR_SIZE = 0x8
-- FS_KEY_DESC_PREFIX = "fscrypt:"
-- FS_KEY_DESC_PREFIX_SIZE = 0x8
-- FS_MAX_KEY_SIZE = 0x40
-- FS_POLICY_FLAGS_PAD_16 = 0x2
-- FS_POLICY_FLAGS_PAD_32 = 0x3
-- FS_POLICY_FLAGS_PAD_4 = 0x0
-- FS_POLICY_FLAGS_PAD_8 = 0x1
-- FS_POLICY_FLAGS_PAD_MASK = 0x3
-- FS_POLICY_FLAGS_VALID = 0x3
-- F_DUPFD = 0x0
-- F_DUPFD_CLOEXEC = 0x406
-- F_EXLCK = 0x4
-- F_GETFD = 0x1
-- F_GETFL = 0x3
-- F_GETLEASE = 0x401
-- F_GETLK = 0xc
-- F_GETLK64 = 0xc
-- F_GETOWN = 0x9
-- F_GETOWN_EX = 0x10
-- F_GETPIPE_SZ = 0x408
-- F_GETSIG = 0xb
-- F_LOCK = 0x1
-- F_NOTIFY = 0x402
-- F_OFD_GETLK = 0x24
-- F_OFD_SETLK = 0x25
-- F_OFD_SETLKW = 0x26
-- F_OK = 0x0
-- F_RDLCK = 0x0
-- F_SETFD = 0x2
-- F_SETFL = 0x4
-- F_SETLEASE = 0x400
-- F_SETLK = 0xd
-- F_SETLK64 = 0xd
-- F_SETLKW = 0xe
-- F_SETLKW64 = 0xe
-- F_SETOWN = 0x8
-- F_SETOWN_EX = 0xf
-- F_SETPIPE_SZ = 0x407
-- F_SETSIG = 0xa
-- F_SHLCK = 0x8
-- F_TEST = 0x3
-- F_TLOCK = 0x2
-- F_ULOCK = 0x0
-- F_UNLCK = 0x2
-- F_WRLCK = 0x1
-- GENL_ADMIN_PERM = 0x1
-- GENL_CMD_CAP_DO = 0x2
-- GENL_CMD_CAP_DUMP = 0x4
-- GENL_CMD_CAP_HASPOL = 0x8
-- GENL_HDRLEN = 0x4
-- GENL_ID_CTRL = 0x10
-- GENL_ID_PMCRAID = 0x12
-- GENL_ID_VFS_DQUOT = 0x11
-- GENL_MAX_ID = 0x3ff
-- GENL_MIN_ID = 0x10
-- GENL_NAMSIZ = 0x10
-- GENL_START_ALLOC = 0x13
-- GENL_UNS_ADMIN_PERM = 0x10
-- GRND_NONBLOCK = 0x1
-- GRND_RANDOM = 0x2
-- HUPCL = 0x400
-- IBSHIFT = 0x10
-- ICANON = 0x2
-- ICMPV6_FILTER = 0x1
-- ICRNL = 0x100
-- IEXTEN = 0x8000
-- IFA_F_DADFAILED = 0x8
-- IFA_F_DEPRECATED = 0x20
-- IFA_F_HOMEADDRESS = 0x10
-- IFA_F_MANAGETEMPADDR = 0x100
-- IFA_F_MCAUTOJOIN = 0x400
-- IFA_F_NODAD = 0x2
-- IFA_F_NOPREFIXROUTE = 0x200
-- IFA_F_OPTIMISTIC = 0x4
-- IFA_F_PERMANENT = 0x80
-- IFA_F_SECONDARY = 0x1
-- IFA_F_STABLE_PRIVACY = 0x800
-- IFA_F_TEMPORARY = 0x1
-- IFA_F_TENTATIVE = 0x40
-- IFA_MAX = 0x8
-- IFF_ALLMULTI = 0x200
-- IFF_ATTACH_QUEUE = 0x200
-- IFF_AUTOMEDIA = 0x4000
-- IFF_BROADCAST = 0x2
-- IFF_DEBUG = 0x4
-- IFF_DETACH_QUEUE = 0x400
-- IFF_DORMANT = 0x20000
-- IFF_DYNAMIC = 0x8000
-- IFF_ECHO = 0x40000
-- IFF_LOOPBACK = 0x8
-- IFF_LOWER_UP = 0x10000
-- IFF_MASTER = 0x400
-- IFF_MULTICAST = 0x1000
-- IFF_MULTI_QUEUE = 0x100
-- IFF_NOARP = 0x80
-- IFF_NOFILTER = 0x1000
-- IFF_NOTRAILERS = 0x20
-- IFF_NO_PI = 0x1000
-- IFF_ONE_QUEUE = 0x2000
-- IFF_PERSIST = 0x800
-- IFF_POINTOPOINT = 0x10
-- IFF_PORTSEL = 0x2000
-- IFF_PROMISC = 0x100
-- IFF_RUNNING = 0x40
-- IFF_SLAVE = 0x800
-- IFF_TAP = 0x2
-- IFF_TUN = 0x1
-- IFF_TUN_EXCL = 0x8000
-- IFF_UP = 0x1
-- IFF_VNET_HDR = 0x4000
-- IFF_VOLATILE = 0x70c5a
-- IFNAMSIZ = 0x10
-- IGNBRK = 0x1
-- IGNCR = 0x80
-- IGNPAR = 0x4
-- IMAXBEL = 0x2000
-- INLCR = 0x40
-- INPCK = 0x10
-- IN_ACCESS = 0x1
-- IN_ALL_EVENTS = 0xfff
-- IN_ATTRIB = 0x4
-- IN_CLASSA_HOST = 0xffffff
-- IN_CLASSA_MAX = 0x80
-- IN_CLASSA_NET = 0xff000000
-- IN_CLASSA_NSHIFT = 0x18
-- IN_CLASSB_HOST = 0xffff
-- IN_CLASSB_MAX = 0x10000
-- IN_CLASSB_NET = 0xffff0000
-- IN_CLASSB_NSHIFT = 0x10
-- IN_CLASSC_HOST = 0xff
-- IN_CLASSC_NET = 0xffffff00
-- IN_CLASSC_NSHIFT = 0x8
-- IN_CLOEXEC = 0x80000
-- IN_CLOSE = 0x18
-- IN_CLOSE_NOWRITE = 0x10
-- IN_CLOSE_WRITE = 0x8
-- IN_CREATE = 0x100
-- IN_DELETE = 0x200
-- IN_DELETE_SELF = 0x400
-- IN_DONT_FOLLOW = 0x2000000
-- IN_EXCL_UNLINK = 0x4000000
-- IN_IGNORED = 0x8000
-- IN_ISDIR = 0x40000000
-- IN_LOOPBACKNET = 0x7f
-- IN_MASK_ADD = 0x20000000
-- IN_MODIFY = 0x2
-- IN_MOVE = 0xc0
-- IN_MOVED_FROM = 0x40
-- IN_MOVED_TO = 0x80
-- IN_MOVE_SELF = 0x800
-- IN_NONBLOCK = 0x800
-- IN_ONESHOT = 0x80000000
-- IN_ONLYDIR = 0x1000000
-- IN_OPEN = 0x20
-- IN_Q_OVERFLOW = 0x4000
-- IN_UNMOUNT = 0x2000
-- IPPROTO_AH = 0x33
-- IPPROTO_BEETPH = 0x5e
-- IPPROTO_COMP = 0x6c
-- IPPROTO_DCCP = 0x21
-- IPPROTO_DSTOPTS = 0x3c
-- IPPROTO_EGP = 0x8
-- IPPROTO_ENCAP = 0x62
-- IPPROTO_ESP = 0x32
-- IPPROTO_FRAGMENT = 0x2c
-- IPPROTO_GRE = 0x2f
-- IPPROTO_HOPOPTS = 0x0
-- IPPROTO_ICMP = 0x1
-- IPPROTO_ICMPV6 = 0x3a
-- IPPROTO_IDP = 0x16
-- IPPROTO_IGMP = 0x2
-- IPPROTO_IP = 0x0
-- IPPROTO_IPIP = 0x4
-- IPPROTO_IPV6 = 0x29
-- IPPROTO_MH = 0x87
-- IPPROTO_MPLS = 0x89
-- IPPROTO_MTP = 0x5c
-- IPPROTO_NONE = 0x3b
-- IPPROTO_PIM = 0x67
-- IPPROTO_PUP = 0xc
-- IPPROTO_RAW = 0xff
-- IPPROTO_ROUTING = 0x2b
-- IPPROTO_RSVP = 0x2e
-- IPPROTO_SCTP = 0x84
-- IPPROTO_TCP = 0x6
-- IPPROTO_TP = 0x1d
-- IPPROTO_UDP = 0x11
-- IPPROTO_UDPLITE = 0x88
-- IPV6_2292DSTOPTS = 0x4
-- IPV6_2292HOPLIMIT = 0x8
-- IPV6_2292HOPOPTS = 0x3
-- IPV6_2292PKTINFO = 0x2
-- IPV6_2292PKTOPTIONS = 0x6
-- IPV6_2292RTHDR = 0x5
-- IPV6_ADDRFORM = 0x1
-- IPV6_ADD_MEMBERSHIP = 0x14
-- IPV6_AUTHHDR = 0xa
-- IPV6_CHECKSUM = 0x7
-- IPV6_DONTFRAG = 0x3e
-- IPV6_DROP_MEMBERSHIP = 0x15
-- IPV6_DSTOPTS = 0x3b
-- IPV6_HDRINCL = 0x24
-- IPV6_HOPLIMIT = 0x34
-- IPV6_HOPOPTS = 0x36
-- IPV6_IPSEC_POLICY = 0x22
-- IPV6_JOIN_ANYCAST = 0x1b
-- IPV6_JOIN_GROUP = 0x14
-- IPV6_LEAVE_ANYCAST = 0x1c
-- IPV6_LEAVE_GROUP = 0x15
-- IPV6_MTU = 0x18
-- IPV6_MTU_DISCOVER = 0x17
-- IPV6_MULTICAST_HOPS = 0x12
-- IPV6_MULTICAST_IF = 0x11
-- IPV6_MULTICAST_LOOP = 0x13
-- IPV6_NEXTHOP = 0x9
-- IPV6_PATHMTU = 0x3d
-- IPV6_PKTINFO = 0x32
-- IPV6_PMTUDISC_DO = 0x2
-- IPV6_PMTUDISC_DONT = 0x0
-- IPV6_PMTUDISC_INTERFACE = 0x4
-- IPV6_PMTUDISC_OMIT = 0x5
-- IPV6_PMTUDISC_PROBE = 0x3
-- IPV6_PMTUDISC_WANT = 0x1
-- IPV6_RECVDSTOPTS = 0x3a
-- IPV6_RECVERR = 0x19
-- IPV6_RECVHOPLIMIT = 0x33
-- IPV6_RECVHOPOPTS = 0x35
-- IPV6_RECVPATHMTU = 0x3c
-- IPV6_RECVPKTINFO = 0x31
-- IPV6_RECVRTHDR = 0x38
-- IPV6_RECVTCLASS = 0x42
-- IPV6_ROUTER_ALERT = 0x16
-- IPV6_RTHDR = 0x39
-- IPV6_RTHDRDSTOPTS = 0x37
-- IPV6_RTHDR_LOOSE = 0x0
-- IPV6_RTHDR_STRICT = 0x1
-- IPV6_RTHDR_TYPE_0 = 0x0
-- IPV6_RXDSTOPTS = 0x3b
-- IPV6_RXHOPOPTS = 0x36
-- IPV6_TCLASS = 0x43
-- IPV6_UNICAST_HOPS = 0x10
-- IPV6_V6ONLY = 0x1a
-- IPV6_XFRM_POLICY = 0x23
-- IP_ADD_MEMBERSHIP = 0x23
-- IP_ADD_SOURCE_MEMBERSHIP = 0x27
-- IP_BIND_ADDRESS_NO_PORT = 0x18
-- IP_BLOCK_SOURCE = 0x26
-- IP_CHECKSUM = 0x17
-- IP_DEFAULT_MULTICAST_LOOP = 0x1
-- IP_DEFAULT_MULTICAST_TTL = 0x1
-- IP_DF = 0x4000
-- IP_DROP_MEMBERSHIP = 0x24
-- IP_DROP_SOURCE_MEMBERSHIP = 0x28
-- IP_FREEBIND = 0xf
-- IP_HDRINCL = 0x3
-- IP_IPSEC_POLICY = 0x10
-- IP_MAXPACKET = 0xffff
-- IP_MAX_MEMBERSHIPS = 0x14
-- IP_MF = 0x2000
-- IP_MINTTL = 0x15
-- IP_MSFILTER = 0x29
-- IP_MSS = 0x240
-- IP_MTU = 0xe
-- IP_MTU_DISCOVER = 0xa
-- IP_MULTICAST_ALL = 0x31
-- IP_MULTICAST_IF = 0x20
-- IP_MULTICAST_LOOP = 0x22
-- IP_MULTICAST_TTL = 0x21
-- IP_NODEFRAG = 0x16
-- IP_OFFMASK = 0x1fff
-- IP_OPTIONS = 0x4
-- IP_ORIGDSTADDR = 0x14
-- IP_PASSSEC = 0x12
-- IP_PKTINFO = 0x8
-- IP_PKTOPTIONS = 0x9
-- IP_PMTUDISC = 0xa
-- IP_PMTUDISC_DO = 0x2
-- IP_PMTUDISC_DONT = 0x0
-- IP_PMTUDISC_INTERFACE = 0x4
-- IP_PMTUDISC_OMIT = 0x5
-- IP_PMTUDISC_PROBE = 0x3
-- IP_PMTUDISC_WANT = 0x1
-- IP_RECVERR = 0xb
-- IP_RECVOPTS = 0x6
-- IP_RECVORIGDSTADDR = 0x14
-- IP_RECVRETOPTS = 0x7
-- IP_RECVTOS = 0xd
-- IP_RECVTTL = 0xc
-- IP_RETOPTS = 0x7
-- IP_RF = 0x8000
-- IP_ROUTER_ALERT = 0x5
-- IP_TOS = 0x1
-- IP_TRANSPARENT = 0x13
-- IP_TTL = 0x2
-- IP_UNBLOCK_SOURCE = 0x25
-- IP_UNICAST_IF = 0x32
-- IP_XFRM_POLICY = 0x11
-- ISIG = 0x1
-- ISTRIP = 0x20
-- IUCLC = 0x200
-- IUTF8 = 0x4000
-- IXANY = 0x800
-- IXOFF = 0x1000
-- IXON = 0x400
-- KEYCTL_ASSUME_AUTHORITY = 0x10
-- KEYCTL_CHOWN = 0x4
-- KEYCTL_CLEAR = 0x7
-- KEYCTL_DESCRIBE = 0x6
-- KEYCTL_DH_COMPUTE = 0x17
-- KEYCTL_GET_KEYRING_ID = 0x0
-- KEYCTL_GET_PERSISTENT = 0x16
-- KEYCTL_GET_SECURITY = 0x11
-- KEYCTL_INSTANTIATE = 0xc
-- KEYCTL_INSTANTIATE_IOV = 0x14
-- KEYCTL_INVALIDATE = 0x15
-- KEYCTL_JOIN_SESSION_KEYRING = 0x1
-- KEYCTL_LINK = 0x8
-- KEYCTL_NEGATE = 0xd
-- KEYCTL_READ = 0xb
-- KEYCTL_REJECT = 0x13
-- KEYCTL_REVOKE = 0x3
-- KEYCTL_SEARCH = 0xa
-- KEYCTL_SESSION_TO_PARENT = 0x12
-- KEYCTL_SETPERM = 0x5
-- KEYCTL_SET_REQKEY_KEYRING = 0xe
-- KEYCTL_SET_TIMEOUT = 0xf
-- KEYCTL_UNLINK = 0x9
-- KEYCTL_UPDATE = 0x2
-- KEY_REQKEY_DEFL_DEFAULT = 0x0
-- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
-- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
-- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
-- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
-- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
-- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
-- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
-- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
-- KEY_SPEC_GROUP_KEYRING = -0x6
-- KEY_SPEC_PROCESS_KEYRING = -0x2
-- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
-- KEY_SPEC_REQUESTOR_KEYRING = -0x8
-- KEY_SPEC_SESSION_KEYRING = -0x3
-- KEY_SPEC_THREAD_KEYRING = -0x1
-- KEY_SPEC_USER_KEYRING = -0x4
-- KEY_SPEC_USER_SESSION_KEYRING = -0x5
-- LINUX_REBOOT_CMD_CAD_OFF = 0x0
-- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
-- LINUX_REBOOT_CMD_HALT = 0xcdef0123
-- LINUX_REBOOT_CMD_KEXEC = 0x45584543
-- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
-- LINUX_REBOOT_CMD_RESTART = 0x1234567
-- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
-- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
-- LINUX_REBOOT_MAGIC1 = 0xfee1dead
-- LINUX_REBOOT_MAGIC2 = 0x28121969
-- LOCK_EX = 0x2
-- LOCK_NB = 0x4
-- LOCK_SH = 0x1
-- LOCK_UN = 0x8
-- MADV_DODUMP = 0x11
-- MADV_DOFORK = 0xb
-- MADV_DONTDUMP = 0x10
-- MADV_DONTFORK = 0xa
-- MADV_DONTNEED = 0x4
-- MADV_FREE = 0x8
-- MADV_HUGEPAGE = 0xe
-- MADV_HWPOISON = 0x64
-- MADV_MERGEABLE = 0xc
-- MADV_NOHUGEPAGE = 0xf
-- MADV_NORMAL = 0x0
-- MADV_RANDOM = 0x1
-- MADV_REMOVE = 0x9
-- MADV_SEQUENTIAL = 0x2
-- MADV_UNMERGEABLE = 0xd
-- MADV_WILLNEED = 0x3
-- MAP_32BIT = 0x40
-- MAP_ANON = 0x20
-- MAP_ANONYMOUS = 0x20
-- MAP_DENYWRITE = 0x800
-- MAP_EXECUTABLE = 0x1000
-- MAP_FILE = 0x0
-- MAP_FIXED = 0x10
-- MAP_GROWSDOWN = 0x100
-- MAP_HUGETLB = 0x40000
-- MAP_HUGE_MASK = 0x3f
-- MAP_HUGE_SHIFT = 0x1a
-- MAP_LOCKED = 0x2000
-- MAP_NONBLOCK = 0x10000
-- MAP_NORESERVE = 0x4000
-- MAP_POPULATE = 0x8000
-- MAP_PRIVATE = 0x2
-- MAP_SHARED = 0x1
-- MAP_STACK = 0x20000
-- MAP_TYPE = 0xf
-- MCL_CURRENT = 0x1
-- MCL_FUTURE = 0x2
-- MCL_ONFAULT = 0x4
-- MNT_DETACH = 0x2
-- MNT_EXPIRE = 0x4
-- MNT_FORCE = 0x1
-- MSG_BATCH = 0x40000
-- MSG_CMSG_CLOEXEC = 0x40000000
-- MSG_CONFIRM = 0x800
-- MSG_CTRUNC = 0x8
-- MSG_DONTROUTE = 0x4
-- MSG_DONTWAIT = 0x40
-- MSG_EOR = 0x80
-- MSG_ERRQUEUE = 0x2000
-- MSG_FASTOPEN = 0x20000000
-- MSG_FIN = 0x200
-- MSG_MORE = 0x8000
-- MSG_NOSIGNAL = 0x4000
-- MSG_OOB = 0x1
-- MSG_PEEK = 0x2
-- MSG_PROXY = 0x10
-- MSG_RST = 0x1000
-- MSG_SYN = 0x400
-- MSG_TRUNC = 0x20
-- MSG_TRYHARD = 0x4
-- MSG_WAITALL = 0x100
-- MSG_WAITFORONE = 0x10000
-- MS_ACTIVE = 0x40000000
-- MS_ASYNC = 0x1
-- MS_BIND = 0x1000
-- MS_BORN = 0x20000000
-- MS_DIRSYNC = 0x80
-- MS_INVALIDATE = 0x2
-- MS_I_VERSION = 0x800000
-- MS_KERNMOUNT = 0x400000
-- MS_LAZYTIME = 0x2000000
-- MS_MANDLOCK = 0x40
-- MS_MGC_MSK = 0xffff0000
-- MS_MGC_VAL = 0xc0ed0000
-- MS_MOVE = 0x2000
-- MS_NOATIME = 0x400
-- MS_NODEV = 0x4
-- MS_NODIRATIME = 0x800
-- MS_NOEXEC = 0x8
-- MS_NOREMOTELOCK = 0x8000000
-- MS_NOSEC = 0x10000000
-- MS_NOSUID = 0x2
-- MS_NOUSER = -0x80000000
-- MS_POSIXACL = 0x10000
-- MS_PRIVATE = 0x40000
-- MS_RDONLY = 0x1
-- MS_REC = 0x4000
-- MS_RELATIME = 0x200000
-- MS_REMOUNT = 0x20
-- MS_RMT_MASK = 0x2800051
-- MS_SHARED = 0x100000
-- MS_SILENT = 0x8000
-- MS_SLAVE = 0x80000
-- MS_STRICTATIME = 0x1000000
-- MS_SYNC = 0x4
-- MS_SYNCHRONOUS = 0x10
-- MS_UNBINDABLE = 0x20000
-- MS_VERBOSE = 0x8000
-- NAME_MAX = 0xff
-- NETLINK_ADD_MEMBERSHIP = 0x1
-- NETLINK_AUDIT = 0x9
-- NETLINK_BROADCAST_ERROR = 0x4
-- NETLINK_CAP_ACK = 0xa
-- NETLINK_CONNECTOR = 0xb
-- NETLINK_CRYPTO = 0x15
-- NETLINK_DNRTMSG = 0xe
-- NETLINK_DROP_MEMBERSHIP = 0x2
-- NETLINK_ECRYPTFS = 0x13
-- NETLINK_FIB_LOOKUP = 0xa
-- NETLINK_FIREWALL = 0x3
-- NETLINK_GENERIC = 0x10
-- NETLINK_INET_DIAG = 0x4
-- NETLINK_IP6_FW = 0xd
-- NETLINK_ISCSI = 0x8
-- NETLINK_KOBJECT_UEVENT = 0xf
-- NETLINK_LISTEN_ALL_NSID = 0x8
-- NETLINK_LIST_MEMBERSHIPS = 0x9
-- NETLINK_NETFILTER = 0xc
-- NETLINK_NFLOG = 0x5
-- NETLINK_NO_ENOBUFS = 0x5
-- NETLINK_PKTINFO = 0x3
-- NETLINK_RDMA = 0x14
-- NETLINK_ROUTE = 0x0
-- NETLINK_RX_RING = 0x6
-- NETLINK_SCSITRANSPORT = 0x12
-- NETLINK_SELINUX = 0x7
-- NETLINK_SOCK_DIAG = 0x4
-- NETLINK_TX_RING = 0x7
-- NETLINK_UNUSED = 0x1
-- NETLINK_USERSOCK = 0x2
-- NETLINK_XFRM = 0x6
-- NL0 = 0x0
-- NL1 = 0x100
-- NLA_ALIGNTO = 0x4
-- NLA_F_NESTED = 0x8000
-- NLA_F_NET_BYTEORDER = 0x4000
-- NLA_HDRLEN = 0x4
-- NLDLY = 0x100
-- NLMSG_ALIGNTO = 0x4
-- NLMSG_DONE = 0x3
-- NLMSG_ERROR = 0x2
-- NLMSG_HDRLEN = 0x10
-- NLMSG_MIN_TYPE = 0x10
-- NLMSG_NOOP = 0x1
-- NLMSG_OVERRUN = 0x4
-- NLM_F_ACK = 0x4
-- NLM_F_APPEND = 0x800
-- NLM_F_ATOMIC = 0x400
-- NLM_F_CREATE = 0x400
-- NLM_F_DUMP = 0x300
-- NLM_F_DUMP_FILTERED = 0x20
-- NLM_F_DUMP_INTR = 0x10
-- NLM_F_ECHO = 0x8
-- NLM_F_EXCL = 0x200
-- NLM_F_MATCH = 0x200
-- NLM_F_MULTI = 0x2
-- NLM_F_REPLACE = 0x100
-- NLM_F_REQUEST = 0x1
-- NLM_F_ROOT = 0x100
-- NOFLSH = 0x80
-- OCRNL = 0x8
-- OFDEL = 0x80
-- OFILL = 0x40
-- OLCUC = 0x2
-- ONLCR = 0x4
-- ONLRET = 0x20
-- ONOCR = 0x10
-- OPOST = 0x1
-- O_ACCMODE = 0x3
-- O_APPEND = 0x400
-- O_ASYNC = 0x2000
-- O_CLOEXEC = 0x80000
-- O_CREAT = 0x40
-- O_DIRECT = 0x4000
-- O_DIRECTORY = 0x10000
-- O_DSYNC = 0x1000
-- O_EXCL = 0x80
-- O_FSYNC = 0x101000
-- O_LARGEFILE = 0x8000
-- O_NDELAY = 0x800
-- O_NOATIME = 0x40000
-- O_NOCTTY = 0x100
-- O_NOFOLLOW = 0x20000
-- O_NONBLOCK = 0x800
-- O_PATH = 0x200000
-- O_RDONLY = 0x0
-- O_RDWR = 0x2
-- O_RSYNC = 0x101000
-- O_SYNC = 0x101000
-- O_TMPFILE = 0x410000
-- O_TRUNC = 0x200
-- O_WRONLY = 0x1
-- PACKET_ADD_MEMBERSHIP = 0x1
-- PACKET_AUXDATA = 0x8
-- PACKET_BROADCAST = 0x1
-- PACKET_COPY_THRESH = 0x7
-- PACKET_DROP_MEMBERSHIP = 0x2
-- PACKET_FANOUT = 0x12
-- PACKET_FANOUT_CBPF = 0x6
-- PACKET_FANOUT_CPU = 0x2
-- PACKET_FANOUT_DATA = 0x16
-- PACKET_FANOUT_EBPF = 0x7
-- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
-- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
-- PACKET_FANOUT_HASH = 0x0
-- PACKET_FANOUT_LB = 0x1
-- PACKET_FANOUT_QM = 0x5
-- PACKET_FANOUT_RND = 0x4
-- PACKET_FANOUT_ROLLOVER = 0x3
-- PACKET_FASTROUTE = 0x6
-- PACKET_HDRLEN = 0xb
-- PACKET_HOST = 0x0
-- PACKET_KERNEL = 0x7
-- PACKET_LOOPBACK = 0x5
-- PACKET_LOSS = 0xe
-- PACKET_MR_ALLMULTI = 0x2
-- PACKET_MR_MULTICAST = 0x0
-- PACKET_MR_PROMISC = 0x1
-- PACKET_MR_UNICAST = 0x3
-- PACKET_MULTICAST = 0x2
-- PACKET_ORIGDEV = 0x9
-- PACKET_OTHERHOST = 0x3
-- PACKET_OUTGOING = 0x4
-- PACKET_QDISC_BYPASS = 0x14
-- PACKET_RECV_OUTPUT = 0x3
-- PACKET_RESERVE = 0xc
-- PACKET_ROLLOVER_STATS = 0x15
-- PACKET_RX_RING = 0x5
-- PACKET_STATISTICS = 0x6
-- PACKET_TIMESTAMP = 0x11
-- PACKET_TX_HAS_OFF = 0x13
-- PACKET_TX_RING = 0xd
-- PACKET_TX_TIMESTAMP = 0x10
-- PACKET_USER = 0x6
-- PACKET_VERSION = 0xa
-- PACKET_VNET_HDR = 0xf
-- PARENB = 0x100
-- PARITY_CRC16_PR0 = 0x2
-- PARITY_CRC16_PR0_CCITT = 0x4
-- PARITY_CRC16_PR1 = 0x3
-- PARITY_CRC16_PR1_CCITT = 0x5
-- PARITY_CRC32_PR0_CCITT = 0x6
-- PARITY_CRC32_PR1_CCITT = 0x7
-- PARITY_DEFAULT = 0x0
-- PARITY_NONE = 0x1
-- PARMRK = 0x8
-- PARODD = 0x200
-- PENDIN = 0x4000
-- PERF_EVENT_IOC_DISABLE = 0x2401
-- PERF_EVENT_IOC_ENABLE = 0x2400
-- PERF_EVENT_IOC_ID = 0x80042407
-- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
-- PERF_EVENT_IOC_PERIOD = 0x40082404
-- PERF_EVENT_IOC_REFRESH = 0x2402
-- PERF_EVENT_IOC_RESET = 0x2403
-- PERF_EVENT_IOC_SET_BPF = 0x40042408
-- PERF_EVENT_IOC_SET_FILTER = 0x40042406
-- PERF_EVENT_IOC_SET_OUTPUT = 0x2405
-- PRIO_PGRP = 0x1
-- PRIO_PROCESS = 0x0
-- PRIO_USER = 0x2
-- PROT_EXEC = 0x4
-- PROT_GROWSDOWN = 0x1000000
-- PROT_GROWSUP = 0x2000000
-- PROT_NONE = 0x0
-- PROT_READ = 0x1
-- PROT_WRITE = 0x2
-- PR_CAPBSET_DROP = 0x18
-- PR_CAPBSET_READ = 0x17
-- PR_CAP_AMBIENT = 0x2f
-- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
-- PR_CAP_AMBIENT_IS_SET = 0x1
-- PR_CAP_AMBIENT_LOWER = 0x3
-- PR_CAP_AMBIENT_RAISE = 0x2
-- PR_ENDIAN_BIG = 0x0
-- PR_ENDIAN_LITTLE = 0x1
-- PR_ENDIAN_PPC_LITTLE = 0x2
-- PR_FPEMU_NOPRINT = 0x1
-- PR_FPEMU_SIGFPE = 0x2
-- PR_FP_EXC_ASYNC = 0x2
-- PR_FP_EXC_DISABLED = 0x0
-- PR_FP_EXC_DIV = 0x10000
-- PR_FP_EXC_INV = 0x100000
-- PR_FP_EXC_NONRECOV = 0x1
-- PR_FP_EXC_OVF = 0x20000
-- PR_FP_EXC_PRECISE = 0x3
-- PR_FP_EXC_RES = 0x80000
-- PR_FP_EXC_SW_ENABLE = 0x80
-- PR_FP_EXC_UND = 0x40000
-- PR_FP_MODE_FR = 0x1
-- PR_FP_MODE_FRE = 0x2
-- PR_GET_CHILD_SUBREAPER = 0x25
-- PR_GET_DUMPABLE = 0x3
-- PR_GET_ENDIAN = 0x13
-- PR_GET_FPEMU = 0x9
-- PR_GET_FPEXC = 0xb
-- PR_GET_FP_MODE = 0x2e
-- PR_GET_KEEPCAPS = 0x7
-- PR_GET_NAME = 0x10
-- PR_GET_NO_NEW_PRIVS = 0x27
-- PR_GET_PDEATHSIG = 0x2
-- PR_GET_SECCOMP = 0x15
-- PR_GET_SECUREBITS = 0x1b
-- PR_GET_THP_DISABLE = 0x2a
-- PR_GET_TID_ADDRESS = 0x28
-- PR_GET_TIMERSLACK = 0x1e
-- PR_GET_TIMING = 0xd
-- PR_GET_TSC = 0x19
-- PR_GET_UNALIGN = 0x5
-- PR_MCE_KILL = 0x21
-- PR_MCE_KILL_CLEAR = 0x0
-- PR_MCE_KILL_DEFAULT = 0x2
-- PR_MCE_KILL_EARLY = 0x1
-- PR_MCE_KILL_GET = 0x22
-- PR_MCE_KILL_LATE = 0x0
-- PR_MCE_KILL_SET = 0x1
-- PR_MPX_DISABLE_MANAGEMENT = 0x2c
-- PR_MPX_ENABLE_MANAGEMENT = 0x2b
-- PR_SET_CHILD_SUBREAPER = 0x24
-- PR_SET_DUMPABLE = 0x4
-- PR_SET_ENDIAN = 0x14
-- PR_SET_FPEMU = 0xa
-- PR_SET_FPEXC = 0xc
-- PR_SET_FP_MODE = 0x2d
-- PR_SET_KEEPCAPS = 0x8
-- PR_SET_MM = 0x23
-- PR_SET_MM_ARG_END = 0x9
-- PR_SET_MM_ARG_START = 0x8
-- PR_SET_MM_AUXV = 0xc
-- PR_SET_MM_BRK = 0x7
-- PR_SET_MM_END_CODE = 0x2
-- PR_SET_MM_END_DATA = 0x4
-- PR_SET_MM_ENV_END = 0xb
-- PR_SET_MM_ENV_START = 0xa
-- PR_SET_MM_EXE_FILE = 0xd
-- PR_SET_MM_MAP = 0xe
-- PR_SET_MM_MAP_SIZE = 0xf
-- PR_SET_MM_START_BRK = 0x6
-- PR_SET_MM_START_CODE = 0x1
-- PR_SET_MM_START_DATA = 0x3
-- PR_SET_MM_START_STACK = 0x5
-- PR_SET_NAME = 0xf
-- PR_SET_NO_NEW_PRIVS = 0x26
-- PR_SET_PDEATHSIG = 0x1
-- PR_SET_PTRACER = 0x59616d61
-- PR_SET_PTRACER_ANY = 0xffffffff
-- PR_SET_SECCOMP = 0x16
-- PR_SET_SECUREBITS = 0x1c
-- PR_SET_THP_DISABLE = 0x29
-- PR_SET_TIMERSLACK = 0x1d
-- PR_SET_TIMING = 0xe
-- PR_SET_TSC = 0x1a
-- PR_SET_UNALIGN = 0x6
-- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
-- PR_TASK_PERF_EVENTS_ENABLE = 0x20
-- PR_TIMING_STATISTICAL = 0x0
-- PR_TIMING_TIMESTAMP = 0x1
-- PR_TSC_ENABLE = 0x1
-- PR_TSC_SIGSEGV = 0x2
-- PR_UNALIGN_NOPRINT = 0x1
-- PR_UNALIGN_SIGBUS = 0x2
-- PTRACE_ATTACH = 0x10
-- PTRACE_CONT = 0x7
-- PTRACE_DETACH = 0x11
-- PTRACE_EVENT_CLONE = 0x3
-- PTRACE_EVENT_EXEC = 0x4
-- PTRACE_EVENT_EXIT = 0x6
-- PTRACE_EVENT_FORK = 0x1
-- PTRACE_EVENT_SECCOMP = 0x7
-- PTRACE_EVENT_STOP = 0x80
-- PTRACE_EVENT_VFORK = 0x2
-- PTRACE_EVENT_VFORK_DONE = 0x5
-- PTRACE_GETEVENTMSG = 0x4201
-- PTRACE_GETFPREGS = 0xe
-- PTRACE_GETFPXREGS = 0x12
-- PTRACE_GETREGS = 0xc
-- PTRACE_GETREGSET = 0x4204
-- PTRACE_GETSIGINFO = 0x4202
-- PTRACE_GETSIGMASK = 0x420a
-- PTRACE_GET_THREAD_AREA = 0x19
-- PTRACE_INTERRUPT = 0x4207
-- PTRACE_KILL = 0x8
-- PTRACE_LISTEN = 0x4208
-- PTRACE_OLDSETOPTIONS = 0x15
-- PTRACE_O_EXITKILL = 0x100000
-- PTRACE_O_MASK = 0x3000ff
-- PTRACE_O_SUSPEND_SECCOMP = 0x200000
-- PTRACE_O_TRACECLONE = 0x8
-- PTRACE_O_TRACEEXEC = 0x10
-- PTRACE_O_TRACEEXIT = 0x40
-- PTRACE_O_TRACEFORK = 0x2
-- PTRACE_O_TRACESECCOMP = 0x80
-- PTRACE_O_TRACESYSGOOD = 0x1
-- PTRACE_O_TRACEVFORK = 0x4
-- PTRACE_O_TRACEVFORKDONE = 0x20
-- PTRACE_PEEKDATA = 0x2
-- PTRACE_PEEKSIGINFO = 0x4209
-- PTRACE_PEEKSIGINFO_SHARED = 0x1
-- PTRACE_PEEKTEXT = 0x1
-- PTRACE_PEEKUSR = 0x3
-- PTRACE_POKEDATA = 0x5
-- PTRACE_POKETEXT = 0x4
-- PTRACE_POKEUSR = 0x6
-- PTRACE_SECCOMP_GET_FILTER = 0x420c
-- PTRACE_SEIZE = 0x4206
-- PTRACE_SETFPREGS = 0xf
-- PTRACE_SETFPXREGS = 0x13
-- PTRACE_SETOPTIONS = 0x4200
-- PTRACE_SETREGS = 0xd
-- PTRACE_SETREGSET = 0x4205
-- PTRACE_SETSIGINFO = 0x4203
-- PTRACE_SETSIGMASK = 0x420b
-- PTRACE_SET_THREAD_AREA = 0x1a
-- PTRACE_SINGLEBLOCK = 0x21
-- PTRACE_SINGLESTEP = 0x9
-- PTRACE_SYSCALL = 0x18
-- PTRACE_SYSEMU = 0x1f
-- PTRACE_SYSEMU_SINGLESTEP = 0x20
-- PTRACE_TRACEME = 0x0
-- RLIMIT_AS = 0x9
-- RLIMIT_CORE = 0x4
-- RLIMIT_CPU = 0x0
-- RLIMIT_DATA = 0x2
-- RLIMIT_FSIZE = 0x1
-- RLIMIT_LOCKS = 0xa
-- RLIMIT_MEMLOCK = 0x8
-- RLIMIT_MSGQUEUE = 0xc
-- RLIMIT_NICE = 0xd
-- RLIMIT_NOFILE = 0x7
-- RLIMIT_NPROC = 0x6
-- RLIMIT_RSS = 0x5
-- RLIMIT_RTPRIO = 0xe
-- RLIMIT_RTTIME = 0xf
-- RLIMIT_SIGPENDING = 0xb
-- RLIMIT_STACK = 0x3
-- RLIM_INFINITY = -0x1
-- RTAX_ADVMSS = 0x8
-- RTAX_CC_ALGO = 0x10
-- RTAX_CWND = 0x7
-- RTAX_FEATURES = 0xc
-- RTAX_FEATURE_ALLFRAG = 0x8
-- RTAX_FEATURE_ECN = 0x1
-- RTAX_FEATURE_MASK = 0xf
-- RTAX_FEATURE_SACK = 0x2
-- RTAX_FEATURE_TIMESTAMP = 0x4
-- RTAX_HOPLIMIT = 0xa
-- RTAX_INITCWND = 0xb
-- RTAX_INITRWND = 0xe
-- RTAX_LOCK = 0x1
-- RTAX_MAX = 0x10
-- RTAX_MTU = 0x2
-- RTAX_QUICKACK = 0xf
-- RTAX_REORDERING = 0x9
-- RTAX_RTO_MIN = 0xd
-- RTAX_RTT = 0x4
-- RTAX_RTTVAR = 0x5
-- RTAX_SSTHRESH = 0x6
-- RTAX_UNSPEC = 0x0
-- RTAX_WINDOW = 0x3
-- RTA_ALIGNTO = 0x4
-- RTA_MAX = 0x19
-- RTCF_DIRECTSRC = 0x4000000
-- RTCF_DOREDIRECT = 0x1000000
-- RTCF_LOG = 0x2000000
-- RTCF_MASQ = 0x400000
-- RTCF_NAT = 0x800000
-- RTCF_VALVE = 0x200000
-- RTF_ADDRCLASSMASK = 0xf8000000
-- RTF_ADDRCONF = 0x40000
-- RTF_ALLONLINK = 0x20000
-- RTF_BROADCAST = 0x10000000
-- RTF_CACHE = 0x1000000
-- RTF_DEFAULT = 0x10000
-- RTF_DYNAMIC = 0x10
-- RTF_FLOW = 0x2000000
-- RTF_GATEWAY = 0x2
-- RTF_HOST = 0x4
-- RTF_INTERFACE = 0x40000000
-- RTF_IRTT = 0x100
-- RTF_LINKRT = 0x100000
-- RTF_LOCAL = 0x80000000
-- RTF_MODIFIED = 0x20
-- RTF_MSS = 0x40
-- RTF_MTU = 0x40
-- RTF_MULTICAST = 0x20000000
-- RTF_NAT = 0x8000000
-- RTF_NOFORWARD = 0x1000
-- RTF_NONEXTHOP = 0x200000
-- RTF_NOPMTUDISC = 0x4000
-- RTF_POLICY = 0x4000000
-- RTF_REINSTATE = 0x8
-- RTF_REJECT = 0x200
-- RTF_STATIC = 0x400
-- RTF_THROW = 0x2000
-- RTF_UP = 0x1
-- RTF_WINDOW = 0x80
-- RTF_XRESOLVE = 0x800
-- RTM_BASE = 0x10
-- RTM_DELACTION = 0x31
-- RTM_DELADDR = 0x15
-- RTM_DELADDRLABEL = 0x49
-- RTM_DELLINK = 0x11
-- RTM_DELMDB = 0x55
-- RTM_DELNEIGH = 0x1d
-- RTM_DELNSID = 0x59
-- RTM_DELQDISC = 0x25
-- RTM_DELROUTE = 0x19
-- RTM_DELRULE = 0x21
-- RTM_DELTCLASS = 0x29
-- RTM_DELTFILTER = 0x2d
-- RTM_F_CLONED = 0x200
-- RTM_F_EQUALIZE = 0x400
-- RTM_F_LOOKUP_TABLE = 0x1000
-- RTM_F_NOTIFY = 0x100
-- RTM_F_PREFIX = 0x800
-- RTM_GETACTION = 0x32
-- RTM_GETADDR = 0x16
-- RTM_GETADDRLABEL = 0x4a
-- RTM_GETANYCAST = 0x3e
-- RTM_GETDCB = 0x4e
-- RTM_GETLINK = 0x12
-- RTM_GETMDB = 0x56
-- RTM_GETMULTICAST = 0x3a
-- RTM_GETNEIGH = 0x1e
-- RTM_GETNEIGHTBL = 0x42
-- RTM_GETNETCONF = 0x52
-- RTM_GETNSID = 0x5a
-- RTM_GETQDISC = 0x26
-- RTM_GETROUTE = 0x1a
-- RTM_GETRULE = 0x22
-- RTM_GETSTATS = 0x5e
-- RTM_GETTCLASS = 0x2a
-- RTM_GETTFILTER = 0x2e
-- RTM_MAX = 0x5f
-- RTM_NEWACTION = 0x30
-- RTM_NEWADDR = 0x14
-- RTM_NEWADDRLABEL = 0x48
-- RTM_NEWLINK = 0x10
-- RTM_NEWMDB = 0x54
-- RTM_NEWNDUSEROPT = 0x44
-- RTM_NEWNEIGH = 0x1c
-- RTM_NEWNEIGHTBL = 0x40
-- RTM_NEWNETCONF = 0x50
-- RTM_NEWNSID = 0x58
-- RTM_NEWPREFIX = 0x34
-- RTM_NEWQDISC = 0x24
-- RTM_NEWROUTE = 0x18
-- RTM_NEWRULE = 0x20
-- RTM_NEWSTATS = 0x5c
-- RTM_NEWTCLASS = 0x28
-- RTM_NEWTFILTER = 0x2c
-- RTM_NR_FAMILIES = 0x14
-- RTM_NR_MSGTYPES = 0x50
-- RTM_SETDCB = 0x4f
-- RTM_SETLINK = 0x13
-- RTM_SETNEIGHTBL = 0x43
-- RTNH_ALIGNTO = 0x4
-- RTNH_COMPARE_MASK = 0x19
-- RTNH_F_DEAD = 0x1
-- RTNH_F_LINKDOWN = 0x10
-- RTNH_F_OFFLOAD = 0x8
-- RTNH_F_ONLINK = 0x4
-- RTNH_F_PERVASIVE = 0x2
-- RTN_MAX = 0xb
-- RTPROT_BABEL = 0x2a
-- RTPROT_BIRD = 0xc
-- RTPROT_BOOT = 0x3
-- RTPROT_DHCP = 0x10
-- RTPROT_DNROUTED = 0xd
-- RTPROT_GATED = 0x8
-- RTPROT_KERNEL = 0x2
-- RTPROT_MROUTED = 0x11
-- RTPROT_MRT = 0xa
-- RTPROT_NTK = 0xf
-- RTPROT_RA = 0x9
-- RTPROT_REDIRECT = 0x1
-- RTPROT_STATIC = 0x4
-- RTPROT_UNSPEC = 0x0
-- RTPROT_XORP = 0xe
-- RTPROT_ZEBRA = 0xb
-- RT_CLASS_DEFAULT = 0xfd
-- RT_CLASS_LOCAL = 0xff
-- RT_CLASS_MAIN = 0xfe
-- RT_CLASS_MAX = 0xff
-- RT_CLASS_UNSPEC = 0x0
-- RUSAGE_CHILDREN = -0x1
-- RUSAGE_SELF = 0x0
-- RUSAGE_THREAD = 0x1
-- SCM_CREDENTIALS = 0x2
-- SCM_RIGHTS = 0x1
-- SCM_TIMESTAMP = 0x1d
-- SCM_TIMESTAMPING = 0x25
-- SCM_TIMESTAMPING_OPT_STATS = 0x36
-- SCM_TIMESTAMPNS = 0x23
-- SCM_WIFI_STATUS = 0x29
-- SECCOMP_MODE_DISABLED = 0x0
-- SECCOMP_MODE_FILTER = 0x2
-- SECCOMP_MODE_STRICT = 0x1
-- SHUT_RD = 0x0
-- SHUT_RDWR = 0x2
-- SHUT_WR = 0x1
-- SIOCADDDLCI = 0x8980
-- SIOCADDMULTI = 0x8931
-- SIOCADDRT = 0x890b
-- SIOCATMARK = 0x8905
-- SIOCBONDCHANGEACTIVE = 0x8995
-- SIOCBONDENSLAVE = 0x8990
-- SIOCBONDINFOQUERY = 0x8994
-- SIOCBONDRELEASE = 0x8991
-- SIOCBONDSETHWADDR = 0x8992
-- SIOCBONDSLAVEINFOQUERY = 0x8993
-- SIOCBRADDBR = 0x89a0
-- SIOCBRADDIF = 0x89a2
-- SIOCBRDELBR = 0x89a1
-- SIOCBRDELIF = 0x89a3
-- SIOCDARP = 0x8953
-- SIOCDELDLCI = 0x8981
-- SIOCDELMULTI = 0x8932
-- SIOCDELRT = 0x890c
-- SIOCDEVPRIVATE = 0x89f0
-- SIOCDIFADDR = 0x8936
-- SIOCDRARP = 0x8960
-- SIOCETHTOOL = 0x8946
-- SIOCGARP = 0x8954
-- SIOCGHWTSTAMP = 0x89b1
-- SIOCGIFADDR = 0x8915
-- SIOCGIFBR = 0x8940
-- SIOCGIFBRDADDR = 0x8919
-- SIOCGIFCONF = 0x8912
-- SIOCGIFCOUNT = 0x8938
-- SIOCGIFDSTADDR = 0x8917
-- SIOCGIFENCAP = 0x8925
-- SIOCGIFFLAGS = 0x8913
-- SIOCGIFHWADDR = 0x8927
-- SIOCGIFINDEX = 0x8933
-- SIOCGIFMAP = 0x8970
-- SIOCGIFMEM = 0x891f
-- SIOCGIFMETRIC = 0x891d
-- SIOCGIFMTU = 0x8921
-- SIOCGIFNAME = 0x8910
-- SIOCGIFNETMASK = 0x891b
-- SIOCGIFPFLAGS = 0x8935
-- SIOCGIFSLAVE = 0x8929
-- SIOCGIFTXQLEN = 0x8942
-- SIOCGIFVLAN = 0x8982
-- SIOCGMIIPHY = 0x8947
-- SIOCGMIIREG = 0x8948
-- SIOCGPGRP = 0x8904
-- SIOCGRARP = 0x8961
-- SIOCGSKNS = 0x894c
-- SIOCGSTAMP = 0x8906
-- SIOCGSTAMPNS = 0x8907
-- SIOCINQ = 0x541b
-- SIOCOUTQ = 0x5411
-- SIOCOUTQNSD = 0x894b
-- SIOCPROTOPRIVATE = 0x89e0
-- SIOCRTMSG = 0x890d
-- SIOCSARP = 0x8955
-- SIOCSHWTSTAMP = 0x89b0
-- SIOCSIFADDR = 0x8916
-- SIOCSIFBR = 0x8941
-- SIOCSIFBRDADDR = 0x891a
-- SIOCSIFDSTADDR = 0x8918
-- SIOCSIFENCAP = 0x8926
-- SIOCSIFFLAGS = 0x8914
-- SIOCSIFHWADDR = 0x8924
-- SIOCSIFHWBROADCAST = 0x8937
-- SIOCSIFLINK = 0x8911
-- SIOCSIFMAP = 0x8971
-- SIOCSIFMEM = 0x8920
-- SIOCSIFMETRIC = 0x891e
-- SIOCSIFMTU = 0x8922
-- SIOCSIFNAME = 0x8923
-- SIOCSIFNETMASK = 0x891c
-- SIOCSIFPFLAGS = 0x8934
-- SIOCSIFSLAVE = 0x8930
-- SIOCSIFTXQLEN = 0x8943
-- SIOCSIFVLAN = 0x8983
-- SIOCSMIIREG = 0x8949
-- SIOCSPGRP = 0x8902
-- SIOCSRARP = 0x8962
-- SIOCWANDEV = 0x894a
-- SOCK_CLOEXEC = 0x80000
-- SOCK_DCCP = 0x6
-- SOCK_DGRAM = 0x2
-- SOCK_IOC_TYPE = 0x89
-- SOCK_NONBLOCK = 0x800
-- SOCK_PACKET = 0xa
-- SOCK_RAW = 0x3
-- SOCK_RDM = 0x4
-- SOCK_SEQPACKET = 0x5
-- SOCK_STREAM = 0x1
-- SOL_AAL = 0x109
-- SOL_ALG = 0x117
-- SOL_ATM = 0x108
-- SOL_CAIF = 0x116
-- SOL_CAN_BASE = 0x64
-- SOL_DCCP = 0x10d
-- SOL_DECNET = 0x105
-- SOL_ICMPV6 = 0x3a
-- SOL_IP = 0x0
-- SOL_IPV6 = 0x29
-- SOL_IRDA = 0x10a
-- SOL_IUCV = 0x115
-- SOL_KCM = 0x119
-- SOL_LLC = 0x10c
-- SOL_NETBEUI = 0x10b
-- SOL_NETLINK = 0x10e
-- SOL_NFC = 0x118
-- SOL_PACKET = 0x107
-- SOL_PNPIPE = 0x113
-- SOL_PPPOL2TP = 0x111
-- SOL_RAW = 0xff
-- SOL_RDS = 0x114
-- SOL_RXRPC = 0x110
-- SOL_SOCKET = 0x1
-- SOL_TCP = 0x6
-- SOL_TIPC = 0x10f
-- SOL_X25 = 0x106
-- SOMAXCONN = 0x80
-- SO_ACCEPTCONN = 0x1e
-- SO_ATTACH_BPF = 0x32
-- SO_ATTACH_FILTER = 0x1a
-- SO_ATTACH_REUSEPORT_CBPF = 0x33
-- SO_ATTACH_REUSEPORT_EBPF = 0x34
-- SO_BINDTODEVICE = 0x19
-- SO_BPF_EXTENSIONS = 0x30
-- SO_BROADCAST = 0x6
-- SO_BSDCOMPAT = 0xe
-- SO_BUSY_POLL = 0x2e
-- SO_CNX_ADVICE = 0x35
-- SO_DEBUG = 0x1
-- SO_DETACH_BPF = 0x1b
-- SO_DETACH_FILTER = 0x1b
-- SO_DOMAIN = 0x27
-- SO_DONTROUTE = 0x5
-- SO_ERROR = 0x4
-- SO_GET_FILTER = 0x1a
-- SO_INCOMING_CPU = 0x31
-- SO_KEEPALIVE = 0x9
-- SO_LINGER = 0xd
-- SO_LOCK_FILTER = 0x2c
-- SO_MARK = 0x24
-- SO_MAX_PACING_RATE = 0x2f
-- SO_NOFCS = 0x2b
-- SO_NO_CHECK = 0xb
-- SO_OOBINLINE = 0xa
-- SO_PASSCRED = 0x10
-- SO_PASSSEC = 0x22
-- SO_PEEK_OFF = 0x2a
-- SO_PEERCRED = 0x11
-- SO_PEERNAME = 0x1c
-- SO_PEERSEC = 0x1f
-- SO_PRIORITY = 0xc
-- SO_PROTOCOL = 0x26
-- SO_RCVBUF = 0x8
-- SO_RCVBUFFORCE = 0x21
-- SO_RCVLOWAT = 0x12
-- SO_RCVTIMEO = 0x14
-- SO_REUSEADDR = 0x2
-- SO_REUSEPORT = 0xf
-- SO_RXQ_OVFL = 0x28
-- SO_SECURITY_AUTHENTICATION = 0x16
-- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-- SO_SELECT_ERR_QUEUE = 0x2d
-- SO_SNDBUF = 0x7
-- SO_SNDBUFFORCE = 0x20
-- SO_SNDLOWAT = 0x13
-- SO_SNDTIMEO = 0x15
-- SO_TIMESTAMP = 0x1d
-- SO_TIMESTAMPING = 0x25
-- SO_TIMESTAMPNS = 0x23
-- SO_TYPE = 0x3
-- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
-- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
-- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
-- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
-- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
-- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
-- SO_VM_SOCKETS_TRUSTED = 0x5
-- SO_WIFI_STATUS = 0x29
-- SPLICE_F_GIFT = 0x8
-- SPLICE_F_MORE = 0x4
-- SPLICE_F_MOVE = 0x1
-- SPLICE_F_NONBLOCK = 0x2
-- S_BLKSIZE = 0x200
-- S_IEXEC = 0x40
-- S_IFBLK = 0x6000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFIFO = 0x1000
-- S_IFLNK = 0xa000
-- S_IFMT = 0xf000
-- S_IFREG = 0x8000
-- S_IFSOCK = 0xc000
-- S_IREAD = 0x100
-- S_IRGRP = 0x20
-- S_IROTH = 0x4
-- S_IRUSR = 0x100
-- S_IRWXG = 0x38
-- S_IRWXO = 0x7
-- S_IRWXU = 0x1c0
-- S_ISGID = 0x400
-- S_ISUID = 0x800
-- S_ISVTX = 0x200
-- S_IWGRP = 0x10
-- S_IWOTH = 0x2
-- S_IWRITE = 0x80
-- S_IWUSR = 0x80
-- S_IXGRP = 0x8
-- S_IXOTH = 0x1
-- S_IXUSR = 0x40
-- TAB0 = 0x0
-- TAB1 = 0x800
-- TAB2 = 0x1000
-- TAB3 = 0x1800
-- TABDLY = 0x1800
-- TASKSTATS_CMD_ATTR_MAX = 0x4
-- TASKSTATS_CMD_MAX = 0x2
-- TASKSTATS_GENL_NAME = "TASKSTATS"
-- TASKSTATS_GENL_VERSION = 0x1
-- TASKSTATS_TYPE_MAX = 0x6
-- TASKSTATS_VERSION = 0x8
-- TCFLSH = 0x540b
-- TCGETA = 0x5405
-- TCGETS = 0x5401
-- TCGETS2 = 0x802c542a
-- TCGETX = 0x5432
-- TCIFLUSH = 0x0
-- TCIOFF = 0x2
-- TCIOFLUSH = 0x2
-- TCION = 0x3
-- TCOFLUSH = 0x1
-- TCOOFF = 0x0
-- TCOON = 0x1
-- TCP_CC_INFO = 0x1a
-- TCP_CONGESTION = 0xd
-- TCP_COOKIE_IN_ALWAYS = 0x1
-- TCP_COOKIE_MAX = 0x10
-- TCP_COOKIE_MIN = 0x8
-- TCP_COOKIE_OUT_NEVER = 0x2
-- TCP_COOKIE_PAIR_SIZE = 0x20
-- TCP_COOKIE_TRANSACTIONS = 0xf
-- TCP_CORK = 0x3
-- TCP_DEFER_ACCEPT = 0x9
-- TCP_FASTOPEN = 0x17
-- TCP_INFO = 0xb
-- TCP_KEEPCNT = 0x6
-- TCP_KEEPIDLE = 0x4
-- TCP_KEEPINTVL = 0x5
-- TCP_LINGER2 = 0x8
-- TCP_MAXSEG = 0x2
-- TCP_MAXWIN = 0xffff
-- TCP_MAX_WINSHIFT = 0xe
-- TCP_MD5SIG = 0xe
-- TCP_MD5SIG_MAXKEYLEN = 0x50
-- TCP_MSS = 0x200
-- TCP_MSS_DEFAULT = 0x218
-- TCP_MSS_DESIRED = 0x4c4
-- TCP_NODELAY = 0x1
-- TCP_NOTSENT_LOWAT = 0x19
-- TCP_QUEUE_SEQ = 0x15
-- TCP_QUICKACK = 0xc
-- TCP_REPAIR = 0x13
-- TCP_REPAIR_OPTIONS = 0x16
-- TCP_REPAIR_QUEUE = 0x14
-- TCP_REPAIR_WINDOW = 0x1d
-- TCP_SAVED_SYN = 0x1c
-- TCP_SAVE_SYN = 0x1b
-- TCP_SYNCNT = 0x7
-- TCP_S_DATA_IN = 0x4
-- TCP_S_DATA_OUT = 0x8
-- TCP_THIN_DUPACK = 0x11
-- TCP_THIN_LINEAR_TIMEOUTS = 0x10
-- TCP_TIMESTAMP = 0x18
-- TCP_USER_TIMEOUT = 0x12
-- TCP_WINDOW_CLAMP = 0xa
-- TCSAFLUSH = 0x2
-- TCSBRK = 0x5409
-- TCSBRKP = 0x5425
-- TCSETA = 0x5406
-- TCSETAF = 0x5408
-- TCSETAW = 0x5407
-- TCSETS = 0x5402
-- TCSETS2 = 0x402c542b
-- TCSETSF = 0x5404
-- TCSETSF2 = 0x402c542d
-- TCSETSW = 0x5403
-- TCSETSW2 = 0x402c542c
-- TCSETX = 0x5433
-- TCSETXF = 0x5434
-- TCSETXW = 0x5435
-- TCXONC = 0x540a
-- TIOCCBRK = 0x5428
-- TIOCCONS = 0x541d
-- TIOCEXCL = 0x540c
-- TIOCGDEV = 0x80045432
-- TIOCGETD = 0x5424
-- TIOCGEXCL = 0x80045440
-- TIOCGICOUNT = 0x545d
-- TIOCGLCKTRMIOS = 0x5456
-- TIOCGPGRP = 0x540f
-- TIOCGPKT = 0x80045438
-- TIOCGPTLCK = 0x80045439
-- TIOCGPTN = 0x80045430
-- TIOCGRS485 = 0x542e
-- TIOCGSERIAL = 0x541e
-- TIOCGSID = 0x5429
-- TIOCGSOFTCAR = 0x5419
-- TIOCGWINSZ = 0x5413
-- TIOCINQ = 0x541b
-- TIOCLINUX = 0x541c
-- TIOCMBIC = 0x5417
-- TIOCMBIS = 0x5416
-- TIOCMGET = 0x5415
-- TIOCMIWAIT = 0x545c
-- TIOCMSET = 0x5418
-- TIOCM_CAR = 0x40
-- TIOCM_CD = 0x40
-- TIOCM_CTS = 0x20
-- TIOCM_DSR = 0x100
-- TIOCM_DTR = 0x2
-- TIOCM_LE = 0x1
-- TIOCM_RI = 0x80
-- TIOCM_RNG = 0x80
-- TIOCM_RTS = 0x4
-- TIOCM_SR = 0x10
-- TIOCM_ST = 0x8
-- TIOCNOTTY = 0x5422
-- TIOCNXCL = 0x540d
-- TIOCOUTQ = 0x5411
-- TIOCPKT = 0x5420
-- TIOCPKT_DATA = 0x0
-- TIOCPKT_DOSTOP = 0x20
-- TIOCPKT_FLUSHREAD = 0x1
-- TIOCPKT_FLUSHWRITE = 0x2
-- TIOCPKT_IOCTL = 0x40
-- TIOCPKT_NOSTOP = 0x10
-- TIOCPKT_START = 0x8
-- TIOCPKT_STOP = 0x4
-- TIOCSBRK = 0x5427
-- TIOCSCTTY = 0x540e
-- TIOCSERCONFIG = 0x5453
-- TIOCSERGETLSR = 0x5459
-- TIOCSERGETMULTI = 0x545a
-- TIOCSERGSTRUCT = 0x5458
-- TIOCSERGWILD = 0x5454
-- TIOCSERSETMULTI = 0x545b
-- TIOCSERSWILD = 0x5455
-- TIOCSER_TEMT = 0x1
-- TIOCSETD = 0x5423
-- TIOCSIG = 0x40045436
-- TIOCSLCKTRMIOS = 0x5457
-- TIOCSPGRP = 0x5410
-- TIOCSPTLCK = 0x40045431
-- TIOCSRS485 = 0x542f
-- TIOCSSERIAL = 0x541f
-- TIOCSSOFTCAR = 0x541a
-- TIOCSTI = 0x5412
-- TIOCSWINSZ = 0x5414
-- TIOCVHANGUP = 0x5437
-- TOSTOP = 0x100
-- TS_COMM_LEN = 0x20
-- TUNATTACHFILTER = 0x400854d5
-- TUNDETACHFILTER = 0x400854d6
-- TUNGETFEATURES = 0x800454cf
-- TUNGETFILTER = 0x800854db
-- TUNGETIFF = 0x800454d2
-- TUNGETSNDBUF = 0x800454d3
-- TUNGETVNETBE = 0x800454df
-- TUNGETVNETHDRSZ = 0x800454d7
-- TUNGETVNETLE = 0x800454dd
-- TUNSETDEBUG = 0x400454c9
-- TUNSETGROUP = 0x400454ce
-- TUNSETIFF = 0x400454ca
-- TUNSETIFINDEX = 0x400454da
-- TUNSETLINK = 0x400454cd
-- TUNSETNOCSUM = 0x400454c8
-- TUNSETOFFLOAD = 0x400454d0
-- TUNSETOWNER = 0x400454cc
-- TUNSETPERSIST = 0x400454cb
-- TUNSETQUEUE = 0x400454d9
-- TUNSETSNDBUF = 0x400454d4
-- TUNSETTXFILTER = 0x400454d1
-- TUNSETVNETBE = 0x400454de
-- TUNSETVNETHDRSZ = 0x400454d8
-- TUNSETVNETLE = 0x400454dc
-- UMOUNT_NOFOLLOW = 0x8
-- VDISCARD = 0xd
-- VEOF = 0x4
-- VEOL = 0xb
-- VEOL2 = 0x10
-- VERASE = 0x2
-- VINTR = 0x0
-- VKILL = 0x3
-- VLNEXT = 0xf
-- VMADDR_CID_ANY = 0xffffffff
-- VMADDR_CID_HOST = 0x2
-- VMADDR_CID_HYPERVISOR = 0x0
-- VMADDR_CID_RESERVED = 0x1
-- VMADDR_PORT_ANY = 0xffffffff
-- VMIN = 0x6
-- VM_SOCKETS_INVALID_VERSION = 0xffffffff
-- VQUIT = 0x1
-- VREPRINT = 0xc
-- VSTART = 0x8
-- VSTOP = 0x9
-- VSUSP = 0xa
-- VSWTC = 0x7
-- VT0 = 0x0
-- VT1 = 0x4000
-- VTDLY = 0x4000
-- VTIME = 0x5
-- VWERASE = 0xe
-- WALL = 0x40000000
-- WCLONE = 0x80000000
-- WCONTINUED = 0x8
-- WEXITED = 0x4
-- WNOHANG = 0x1
-- WNOTHREAD = 0x20000000
-- WNOWAIT = 0x1000000
-- WORDSIZE = 0x20
-- WSTOPPED = 0x2
-- WUNTRACED = 0x2
-- XATTR_CREATE = 0x1
-- XATTR_REPLACE = 0x2
-- XCASE = 0x4
-- XTABS = 0x1800
-+ B1000000 = 0x1008
-+ B115200 = 0x1002
-+ B1152000 = 0x1009
-+ B1500000 = 0x100a
-+ B2000000 = 0x100b
-+ B230400 = 0x1003
-+ B2500000 = 0x100c
-+ B3000000 = 0x100d
-+ B3500000 = 0x100e
-+ B4000000 = 0x100f
-+ B460800 = 0x1004
-+ B500000 = 0x1005
-+ B57600 = 0x1001
-+ B576000 = 0x1006
-+ B921600 = 0x1007
-+ BLKBSZGET = 0x80041270
-+ BLKBSZSET = 0x40041271
-+ BLKFLSBUF = 0x1261
-+ BLKFRAGET = 0x1265
-+ BLKFRASET = 0x1264
-+ BLKGETSIZE = 0x1260
-+ BLKGETSIZE64 = 0x80041272
-+ BLKPBSZGET = 0x127b
-+ BLKRAGET = 0x1263
-+ BLKRASET = 0x1262
-+ BLKROGET = 0x125e
-+ BLKROSET = 0x125d
-+ BLKRRPART = 0x125f
-+ BLKSECTGET = 0x1267
-+ BLKSECTSET = 0x1266
-+ BLKSSZGET = 0x1268
-+ BOTHER = 0x1000
-+ BS1 = 0x2000
-+ BSDLY = 0x2000
-+ CBAUD = 0x100f
-+ CBAUDEX = 0x1000
-+ CIBAUD = 0x100f0000
-+ CLOCAL = 0x800
-+ CR1 = 0x200
-+ CR2 = 0x400
-+ CR3 = 0x600
-+ CRDLY = 0x600
-+ CREAD = 0x80
-+ CS6 = 0x10
-+ CS7 = 0x20
-+ CS8 = 0x30
-+ CSIZE = 0x30
-+ CSTOPB = 0x40
-+ ECHOCTL = 0x200
-+ ECHOE = 0x10
-+ ECHOK = 0x20
-+ ECHOKE = 0x800
-+ ECHONL = 0x40
-+ ECHOPRT = 0x400
-+ EFD_CLOEXEC = 0x80000
-+ EFD_NONBLOCK = 0x800
-+ EPOLL_CLOEXEC = 0x80000
-+ EXTPROC = 0x10000
-+ FF1 = 0x8000
-+ FFDLY = 0x8000
-+ FLUSHO = 0x1000
-+ FP_XSTATE_MAGIC2 = 0x46505845
-+ FS_IOC_ENABLE_VERITY = 0x40806685
-+ FS_IOC_GETFLAGS = 0x80046601
-+ FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
-+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
-+ FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
-+ F_GETLK = 0xc
-+ F_GETLK64 = 0xc
-+ F_GETOWN = 0x9
-+ F_RDLCK = 0x0
-+ F_SETLK = 0xd
-+ F_SETLK64 = 0xd
-+ F_SETLKW = 0xe
-+ F_SETLKW64 = 0xe
-+ F_SETOWN = 0x8
-+ F_UNLCK = 0x2
-+ F_WRLCK = 0x1
-+ HUPCL = 0x400
-+ ICANON = 0x2
-+ IEXTEN = 0x8000
-+ IN_CLOEXEC = 0x80000
-+ IN_NONBLOCK = 0x800
-+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x7b9
-+ ISIG = 0x1
-+ IUCLC = 0x200
-+ IXOFF = 0x1000
-+ IXON = 0x400
-+ MAP_32BIT = 0x40
-+ MAP_ANON = 0x20
-+ MAP_ANONYMOUS = 0x20
-+ MAP_DENYWRITE = 0x800
-+ MAP_EXECUTABLE = 0x1000
-+ MAP_GROWSDOWN = 0x100
-+ MAP_HUGETLB = 0x40000
-+ MAP_LOCKED = 0x2000
-+ MAP_NONBLOCK = 0x10000
-+ MAP_NORESERVE = 0x4000
-+ MAP_POPULATE = 0x8000
-+ MAP_STACK = 0x20000
-+ MAP_SYNC = 0x80000
-+ MCL_CURRENT = 0x1
-+ MCL_FUTURE = 0x2
-+ MCL_ONFAULT = 0x4
-+ NFDBITS = 0x20
-+ NLDLY = 0x100
-+ NOFLSH = 0x80
-+ NS_GET_NSTYPE = 0xb703
-+ NS_GET_OWNER_UID = 0xb704
-+ NS_GET_PARENT = 0xb702
-+ NS_GET_USERNS = 0xb701
-+ OLCUC = 0x2
-+ ONLCR = 0x4
-+ O_APPEND = 0x400
-+ O_ASYNC = 0x2000
-+ O_CLOEXEC = 0x80000
-+ O_CREAT = 0x40
-+ O_DIRECT = 0x4000
-+ O_DIRECTORY = 0x10000
-+ O_DSYNC = 0x1000
-+ O_EXCL = 0x80
-+ O_FSYNC = 0x101000
-+ O_LARGEFILE = 0x8000
-+ O_NDELAY = 0x800
-+ O_NOATIME = 0x40000
-+ O_NOCTTY = 0x100
-+ O_NOFOLLOW = 0x20000
-+ O_NONBLOCK = 0x800
-+ O_PATH = 0x200000
-+ O_RSYNC = 0x101000
-+ O_SYNC = 0x101000
-+ O_TMPFILE = 0x410000
-+ O_TRUNC = 0x200
-+ PARENB = 0x100
-+ PARODD = 0x200
-+ PENDIN = 0x4000
-+ PERF_EVENT_IOC_DISABLE = 0x2401
-+ PERF_EVENT_IOC_ENABLE = 0x2400
-+ PERF_EVENT_IOC_ID = 0x80042407
-+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4004240b
-+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
-+ PERF_EVENT_IOC_PERIOD = 0x40082404
-+ PERF_EVENT_IOC_QUERY_BPF = 0xc004240a
-+ PERF_EVENT_IOC_REFRESH = 0x2402
-+ PERF_EVENT_IOC_RESET = 0x2403
-+ PERF_EVENT_IOC_SET_BPF = 0x40042408
-+ PERF_EVENT_IOC_SET_FILTER = 0x40042406
-+ PERF_EVENT_IOC_SET_OUTPUT = 0x2405
-+ PPPIOCATTACH = 0x4004743d
-+ PPPIOCATTCHAN = 0x40047438
-+ PPPIOCCONNECT = 0x4004743a
-+ PPPIOCDETACH = 0x4004743c
-+ PPPIOCDISCONN = 0x7439
-+ PPPIOCGASYNCMAP = 0x80047458
-+ PPPIOCGCHAN = 0x80047437
-+ PPPIOCGDEBUG = 0x80047441
-+ PPPIOCGFLAGS = 0x8004745a
-+ PPPIOCGIDLE = 0x8008743f
-+ PPPIOCGIDLE32 = 0x8008743f
-+ PPPIOCGIDLE64 = 0x8010743f
-+ PPPIOCGL2TPSTATS = 0x80487436
-+ PPPIOCGMRU = 0x80047453
-+ PPPIOCGRASYNCMAP = 0x80047455
-+ PPPIOCGUNIT = 0x80047456
-+ PPPIOCGXASYNCMAP = 0x80207450
-+ PPPIOCSACTIVE = 0x40087446
-+ PPPIOCSASYNCMAP = 0x40047457
-+ PPPIOCSCOMPRESS = 0x400c744d
-+ PPPIOCSDEBUG = 0x40047440
-+ PPPIOCSFLAGS = 0x40047459
-+ PPPIOCSMAXCID = 0x40047451
-+ PPPIOCSMRRU = 0x4004743b
-+ PPPIOCSMRU = 0x40047452
-+ PPPIOCSNPMODE = 0x4008744b
-+ PPPIOCSPASS = 0x40087447
-+ PPPIOCSRASYNCMAP = 0x40047454
-+ PPPIOCSXASYNCMAP = 0x4020744f
-+ PPPIOCXFERUNIT = 0x744e
-+ PR_SET_PTRACER_ANY = 0xffffffff
-+ PTRACE_GETFPREGS = 0xe
-+ PTRACE_GETFPXREGS = 0x12
-+ PTRACE_GET_THREAD_AREA = 0x19
-+ PTRACE_OLDSETOPTIONS = 0x15
-+ PTRACE_SETFPREGS = 0xf
-+ PTRACE_SETFPXREGS = 0x13
-+ PTRACE_SET_THREAD_AREA = 0x1a
-+ PTRACE_SINGLEBLOCK = 0x21
-+ PTRACE_SYSEMU = 0x1f
-+ PTRACE_SYSEMU_SINGLESTEP = 0x20
-+ RLIMIT_AS = 0x9
-+ RLIMIT_MEMLOCK = 0x8
-+ RLIMIT_NOFILE = 0x7
-+ RLIMIT_NPROC = 0x6
-+ RLIMIT_RSS = 0x5
-+ RNDADDENTROPY = 0x40085203
-+ RNDADDTOENTCNT = 0x40045201
-+ RNDCLEARPOOL = 0x5206
-+ RNDGETENTCNT = 0x80045200
-+ RNDGETPOOL = 0x80085202
-+ RNDRESEEDCRNG = 0x5207
-+ RNDZAPENTCNT = 0x5204
-+ RTC_AIE_OFF = 0x7002
-+ RTC_AIE_ON = 0x7001
-+ RTC_ALM_READ = 0x80247008
-+ RTC_ALM_SET = 0x40247007
-+ RTC_EPOCH_READ = 0x8004700d
-+ RTC_EPOCH_SET = 0x4004700e
-+ RTC_IRQP_READ = 0x8004700b
-+ RTC_IRQP_SET = 0x4004700c
-+ RTC_PIE_OFF = 0x7006
-+ RTC_PIE_ON = 0x7005
-+ RTC_PLL_GET = 0x801c7011
-+ RTC_PLL_SET = 0x401c7012
-+ RTC_RD_TIME = 0x80247009
-+ RTC_SET_TIME = 0x4024700a
-+ RTC_UIE_OFF = 0x7004
-+ RTC_UIE_ON = 0x7003
-+ RTC_VL_CLR = 0x7014
-+ RTC_VL_READ = 0x80047013
-+ RTC_WIE_OFF = 0x7010
-+ RTC_WIE_ON = 0x700f
-+ RTC_WKALM_RD = 0x80287010
-+ RTC_WKALM_SET = 0x4028700f
-+ SCM_TIMESTAMPING = 0x25
-+ SCM_TIMESTAMPING_OPT_STATS = 0x36
-+ SCM_TIMESTAMPING_PKTINFO = 0x3a
-+ SCM_TIMESTAMPNS = 0x23
-+ SCM_TXTIME = 0x3d
-+ SCM_WIFI_STATUS = 0x29
-+ SFD_CLOEXEC = 0x80000
-+ SFD_NONBLOCK = 0x800
-+ SIOCATMARK = 0x8905
-+ SIOCGPGRP = 0x8904
-+ SIOCGSTAMPNS_NEW = 0x80108907
-+ SIOCGSTAMP_NEW = 0x80108906
-+ SIOCINQ = 0x541b
-+ SIOCOUTQ = 0x5411
-+ SIOCSPGRP = 0x8902
-+ SOCK_CLOEXEC = 0x80000
-+ SOCK_DGRAM = 0x2
-+ SOCK_NONBLOCK = 0x800
-+ SOCK_STREAM = 0x1
-+ SOL_SOCKET = 0x1
-+ SO_ACCEPTCONN = 0x1e
-+ SO_ATTACH_BPF = 0x32
-+ SO_ATTACH_REUSEPORT_CBPF = 0x33
-+ SO_ATTACH_REUSEPORT_EBPF = 0x34
-+ SO_BINDTODEVICE = 0x19
-+ SO_BINDTOIFINDEX = 0x3e
-+ SO_BPF_EXTENSIONS = 0x30
-+ SO_BROADCAST = 0x6
-+ SO_BSDCOMPAT = 0xe
-+ SO_BUSY_POLL = 0x2e
-+ SO_CNX_ADVICE = 0x35
-+ SO_COOKIE = 0x39
-+ SO_DETACH_REUSEPORT_BPF = 0x44
-+ SO_DOMAIN = 0x27
-+ SO_DONTROUTE = 0x5
-+ SO_ERROR = 0x4
-+ SO_INCOMING_CPU = 0x31
-+ SO_INCOMING_NAPI_ID = 0x38
-+ SO_KEEPALIVE = 0x9
-+ SO_LINGER = 0xd
-+ SO_LOCK_FILTER = 0x2c
-+ SO_MARK = 0x24
-+ SO_MAX_PACING_RATE = 0x2f
-+ SO_MEMINFO = 0x37
-+ SO_NOFCS = 0x2b
-+ SO_OOBINLINE = 0xa
-+ SO_PASSCRED = 0x10
-+ SO_PASSSEC = 0x22
-+ SO_PEEK_OFF = 0x2a
-+ SO_PEERCRED = 0x11
-+ SO_PEERGROUPS = 0x3b
-+ SO_PEERSEC = 0x1f
-+ SO_PROTOCOL = 0x26
-+ SO_RCVBUF = 0x8
-+ SO_RCVBUFFORCE = 0x21
-+ SO_RCVLOWAT = 0x12
-+ SO_RCVTIMEO = 0x14
-+ SO_RCVTIMEO_NEW = 0x42
-+ SO_RCVTIMEO_OLD = 0x14
-+ SO_REUSEADDR = 0x2
-+ SO_REUSEPORT = 0xf
-+ SO_RXQ_OVFL = 0x28
-+ SO_SECURITY_AUTHENTICATION = 0x16
-+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-+ SO_SELECT_ERR_QUEUE = 0x2d
-+ SO_SNDBUF = 0x7
-+ SO_SNDBUFFORCE = 0x20
-+ SO_SNDLOWAT = 0x13
-+ SO_SNDTIMEO = 0x15
-+ SO_SNDTIMEO_NEW = 0x43
-+ SO_SNDTIMEO_OLD = 0x15
-+ SO_TIMESTAMPING = 0x25
-+ SO_TIMESTAMPING_NEW = 0x41
-+ SO_TIMESTAMPING_OLD = 0x25
-+ SO_TIMESTAMPNS = 0x23
-+ SO_TIMESTAMPNS_NEW = 0x40
-+ SO_TIMESTAMPNS_OLD = 0x23
-+ SO_TIMESTAMP_NEW = 0x3f
-+ SO_TXTIME = 0x3d
-+ SO_TYPE = 0x3
-+ SO_WIFI_STATUS = 0x29
-+ SO_ZEROCOPY = 0x3c
-+ TAB1 = 0x800
-+ TAB2 = 0x1000
-+ TAB3 = 0x1800
-+ TABDLY = 0x1800
-+ TCFLSH = 0x540b
-+ TCGETA = 0x5405
-+ TCGETS = 0x5401
-+ TCGETS2 = 0x802c542a
-+ TCGETX = 0x5432
-+ TCSAFLUSH = 0x2
-+ TCSBRK = 0x5409
-+ TCSBRKP = 0x5425
-+ TCSETA = 0x5406
-+ TCSETAF = 0x5408
-+ TCSETAW = 0x5407
-+ TCSETS = 0x5402
-+ TCSETS2 = 0x402c542b
-+ TCSETSF = 0x5404
-+ TCSETSF2 = 0x402c542d
-+ TCSETSW = 0x5403
-+ TCSETSW2 = 0x402c542c
-+ TCSETX = 0x5433
-+ TCSETXF = 0x5434
-+ TCSETXW = 0x5435
-+ TCXONC = 0x540a
-+ TIOCCBRK = 0x5428
-+ TIOCCONS = 0x541d
-+ TIOCEXCL = 0x540c
-+ TIOCGDEV = 0x80045432
-+ TIOCGETD = 0x5424
-+ TIOCGEXCL = 0x80045440
-+ TIOCGICOUNT = 0x545d
-+ TIOCGISO7816 = 0x80285442
-+ TIOCGLCKTRMIOS = 0x5456
-+ TIOCGPGRP = 0x540f
-+ TIOCGPKT = 0x80045438
-+ TIOCGPTLCK = 0x80045439
-+ TIOCGPTN = 0x80045430
-+ TIOCGPTPEER = 0x5441
-+ TIOCGRS485 = 0x542e
-+ TIOCGSERIAL = 0x541e
-+ TIOCGSID = 0x5429
-+ TIOCGSOFTCAR = 0x5419
-+ TIOCGWINSZ = 0x5413
-+ TIOCINQ = 0x541b
-+ TIOCLINUX = 0x541c
-+ TIOCMBIC = 0x5417
-+ TIOCMBIS = 0x5416
-+ TIOCMGET = 0x5415
-+ TIOCMIWAIT = 0x545c
-+ TIOCMSET = 0x5418
-+ TIOCM_CAR = 0x40
-+ TIOCM_CD = 0x40
-+ TIOCM_CTS = 0x20
-+ TIOCM_DSR = 0x100
-+ TIOCM_RI = 0x80
-+ TIOCM_RNG = 0x80
-+ TIOCM_SR = 0x10
-+ TIOCM_ST = 0x8
-+ TIOCNOTTY = 0x5422
-+ TIOCNXCL = 0x540d
-+ TIOCOUTQ = 0x5411
-+ TIOCPKT = 0x5420
-+ TIOCSBRK = 0x5427
-+ TIOCSCTTY = 0x540e
-+ TIOCSERCONFIG = 0x5453
-+ TIOCSERGETLSR = 0x5459
-+ TIOCSERGETMULTI = 0x545a
-+ TIOCSERGSTRUCT = 0x5458
-+ TIOCSERGWILD = 0x5454
-+ TIOCSERSETMULTI = 0x545b
-+ TIOCSERSWILD = 0x5455
-+ TIOCSER_TEMT = 0x1
-+ TIOCSETD = 0x5423
-+ TIOCSIG = 0x40045436
-+ TIOCSISO7816 = 0xc0285443
-+ TIOCSLCKTRMIOS = 0x5457
-+ TIOCSPGRP = 0x5410
-+ TIOCSPTLCK = 0x40045431
-+ TIOCSRS485 = 0x542f
-+ TIOCSSERIAL = 0x541f
-+ TIOCSSOFTCAR = 0x541a
-+ TIOCSTI = 0x5412
-+ TIOCSWINSZ = 0x5414
-+ TIOCVHANGUP = 0x5437
-+ TOSTOP = 0x100
-+ TUNATTACHFILTER = 0x400854d5
-+ TUNDETACHFILTER = 0x400854d6
-+ TUNGETDEVNETNS = 0x54e3
-+ TUNGETFEATURES = 0x800454cf
-+ TUNGETFILTER = 0x800854db
-+ TUNGETIFF = 0x800454d2
-+ TUNGETSNDBUF = 0x800454d3
-+ TUNGETVNETBE = 0x800454df
-+ TUNGETVNETHDRSZ = 0x800454d7
-+ TUNGETVNETLE = 0x800454dd
-+ TUNSETCARRIER = 0x400454e2
-+ TUNSETDEBUG = 0x400454c9
-+ TUNSETFILTEREBPF = 0x800454e1
-+ TUNSETGROUP = 0x400454ce
-+ TUNSETIFF = 0x400454ca
-+ TUNSETIFINDEX = 0x400454da
-+ TUNSETLINK = 0x400454cd
-+ TUNSETNOCSUM = 0x400454c8
-+ TUNSETOFFLOAD = 0x400454d0
-+ TUNSETOWNER = 0x400454cc
-+ TUNSETPERSIST = 0x400454cb
-+ TUNSETQUEUE = 0x400454d9
-+ TUNSETSNDBUF = 0x400454d4
-+ TUNSETSTEERINGEBPF = 0x800454e0
-+ TUNSETTXFILTER = 0x400454d1
-+ TUNSETVNETBE = 0x400454de
-+ TUNSETVNETHDRSZ = 0x400454d8
-+ TUNSETVNETLE = 0x400454dc
-+ UBI_IOCATT = 0x40186f40
-+ UBI_IOCDET = 0x40046f41
-+ UBI_IOCEBCH = 0x40044f02
-+ UBI_IOCEBER = 0x40044f01
-+ UBI_IOCEBISMAP = 0x80044f05
-+ UBI_IOCEBMAP = 0x40084f03
-+ UBI_IOCEBUNMAP = 0x40044f04
-+ UBI_IOCMKVOL = 0x40986f00
-+ UBI_IOCRMVOL = 0x40046f01
-+ UBI_IOCRNVOL = 0x51106f03
-+ UBI_IOCRPEB = 0x40046f04
-+ UBI_IOCRSVOL = 0x400c6f02
-+ UBI_IOCSETVOLPROP = 0x40104f06
-+ UBI_IOCSPEB = 0x40046f05
-+ UBI_IOCVOLCRBLK = 0x40804f07
-+ UBI_IOCVOLRMBLK = 0x4f08
-+ UBI_IOCVOLUP = 0x40084f00
-+ VDISCARD = 0xd
-+ VEOF = 0x4
-+ VEOL = 0xb
-+ VEOL2 = 0x10
-+ VMIN = 0x6
-+ VREPRINT = 0xc
-+ VSTART = 0x8
-+ VSTOP = 0x9
-+ VSUSP = 0xa
-+ VSWTC = 0x7
-+ VT1 = 0x4000
-+ VTDLY = 0x4000
-+ VTIME = 0x5
-+ VWERASE = 0xe
-+ WDIOC_GETBOOTSTATUS = 0x80045702
-+ WDIOC_GETPRETIMEOUT = 0x80045709
-+ WDIOC_GETSTATUS = 0x80045701
-+ WDIOC_GETSUPPORT = 0x80285700
-+ WDIOC_GETTEMP = 0x80045703
-+ WDIOC_GETTIMELEFT = 0x8004570a
-+ WDIOC_GETTIMEOUT = 0x80045707
-+ WDIOC_KEEPALIVE = 0x80045705
-+ WDIOC_SETOPTIONS = 0x80045704
-+ WORDSIZE = 0x20
-+ X86_FXSR_MAGIC = 0x0
-+ XCASE = 0x4
-+ XTABS = 0x1800
- )
-
- // Errors
- const (
-- E2BIG = syscall.Errno(0x7)
-- EACCES = syscall.Errno(0xd)
- EADDRINUSE = syscall.Errno(0x62)
- EADDRNOTAVAIL = syscall.Errno(0x63)
- EADV = syscall.Errno(0x44)
- EAFNOSUPPORT = syscall.Errno(0x61)
-- EAGAIN = syscall.Errno(0xb)
- EALREADY = syscall.Errno(0x72)
- EBADE = syscall.Errno(0x34)
-- EBADF = syscall.Errno(0x9)
- EBADFD = syscall.Errno(0x4d)
- EBADMSG = syscall.Errno(0x4a)
- EBADR = syscall.Errno(0x35)
- EBADRQC = syscall.Errno(0x38)
- EBADSLT = syscall.Errno(0x39)
- EBFONT = syscall.Errno(0x3b)
-- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x7d)
-- ECHILD = syscall.Errno(0xa)
- ECHRNG = syscall.Errno(0x2c)
- ECOMM = syscall.Errno(0x46)
- ECONNABORTED = syscall.Errno(0x67)
-@@ -1881,23 +500,15 @@ const (
- EDEADLK = syscall.Errno(0x23)
- EDEADLOCK = syscall.Errno(0x23)
- EDESTADDRREQ = syscall.Errno(0x59)
-- EDOM = syscall.Errno(0x21)
- EDOTDOT = syscall.Errno(0x49)
- EDQUOT = syscall.Errno(0x7a)
-- EEXIST = syscall.Errno(0x11)
-- EFAULT = syscall.Errno(0xe)
-- EFBIG = syscall.Errno(0x1b)
- EHOSTDOWN = syscall.Errno(0x70)
- EHOSTUNREACH = syscall.Errno(0x71)
- EHWPOISON = syscall.Errno(0x85)
- EIDRM = syscall.Errno(0x2b)
- EILSEQ = syscall.Errno(0x54)
- EINPROGRESS = syscall.Errno(0x73)
-- EINTR = syscall.Errno(0x4)
-- EINVAL = syscall.Errno(0x16)
-- EIO = syscall.Errno(0x5)
- EISCONN = syscall.Errno(0x6a)
-- EISDIR = syscall.Errno(0x15)
- EISNAM = syscall.Errno(0x78)
- EKEYEXPIRED = syscall.Errno(0x7f)
- EKEYREJECTED = syscall.Errno(0x81)
-@@ -1914,8 +525,6 @@ const (
- ELNRNG = syscall.Errno(0x30)
- ELOOP = syscall.Errno(0x28)
- EMEDIUMTYPE = syscall.Errno(0x7c)
-- EMFILE = syscall.Errno(0x18)
-- EMLINK = syscall.Errno(0x1f)
- EMSGSIZE = syscall.Errno(0x5a)
- EMULTIHOP = syscall.Errno(0x48)
- ENAMETOOLONG = syscall.Errno(0x24)
-@@ -1923,103 +532,70 @@ const (
- ENETDOWN = syscall.Errno(0x64)
- ENETRESET = syscall.Errno(0x66)
- ENETUNREACH = syscall.Errno(0x65)
-- ENFILE = syscall.Errno(0x17)
- ENOANO = syscall.Errno(0x37)
- ENOBUFS = syscall.Errno(0x69)
- ENOCSI = syscall.Errno(0x32)
- ENODATA = syscall.Errno(0x3d)
-- ENODEV = syscall.Errno(0x13)
-- ENOENT = syscall.Errno(0x2)
-- ENOEXEC = syscall.Errno(0x8)
- ENOKEY = syscall.Errno(0x7e)
- ENOLCK = syscall.Errno(0x25)
- ENOLINK = syscall.Errno(0x43)
- ENOMEDIUM = syscall.Errno(0x7b)
-- ENOMEM = syscall.Errno(0xc)
- ENOMSG = syscall.Errno(0x2a)
- ENONET = syscall.Errno(0x40)
- ENOPKG = syscall.Errno(0x41)
- ENOPROTOOPT = syscall.Errno(0x5c)
-- ENOSPC = syscall.Errno(0x1c)
- ENOSR = syscall.Errno(0x3f)
- ENOSTR = syscall.Errno(0x3c)
- ENOSYS = syscall.Errno(0x26)
-- ENOTBLK = syscall.Errno(0xf)
- ENOTCONN = syscall.Errno(0x6b)
-- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x27)
- ENOTNAM = syscall.Errno(0x76)
- ENOTRECOVERABLE = syscall.Errno(0x83)
- ENOTSOCK = syscall.Errno(0x58)
- ENOTSUP = syscall.Errno(0x5f)
-- ENOTTY = syscall.Errno(0x19)
- ENOTUNIQ = syscall.Errno(0x4c)
-- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x5f)
- EOVERFLOW = syscall.Errno(0x4b)
- EOWNERDEAD = syscall.Errno(0x82)
-- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x60)
-- EPIPE = syscall.Errno(0x20)
- EPROTO = syscall.Errno(0x47)
- EPROTONOSUPPORT = syscall.Errno(0x5d)
- EPROTOTYPE = syscall.Errno(0x5b)
-- ERANGE = syscall.Errno(0x22)
- EREMCHG = syscall.Errno(0x4e)
- EREMOTE = syscall.Errno(0x42)
- EREMOTEIO = syscall.Errno(0x79)
- ERESTART = syscall.Errno(0x55)
- ERFKILL = syscall.Errno(0x84)
-- EROFS = syscall.Errno(0x1e)
- ESHUTDOWN = syscall.Errno(0x6c)
- ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-- ESPIPE = syscall.Errno(0x1d)
-- ESRCH = syscall.Errno(0x3)
- ESRMNT = syscall.Errno(0x45)
- ESTALE = syscall.Errno(0x74)
- ESTRPIPE = syscall.Errno(0x56)
- ETIME = syscall.Errno(0x3e)
- ETIMEDOUT = syscall.Errno(0x6e)
- ETOOMANYREFS = syscall.Errno(0x6d)
-- ETXTBSY = syscall.Errno(0x1a)
- EUCLEAN = syscall.Errno(0x75)
- EUNATCH = syscall.Errno(0x31)
- EUSERS = syscall.Errno(0x57)
-- EWOULDBLOCK = syscall.Errno(0xb)
-- EXDEV = syscall.Errno(0x12)
- EXFULL = syscall.Errno(0x36)
- )
-
- // Signals
- const (
-- SIGABRT = syscall.Signal(0x6)
-- SIGALRM = syscall.Signal(0xe)
- SIGBUS = syscall.Signal(0x7)
- SIGCHLD = syscall.Signal(0x11)
- SIGCLD = syscall.Signal(0x11)
- SIGCONT = syscall.Signal(0x12)
-- SIGFPE = syscall.Signal(0x8)
-- SIGHUP = syscall.Signal(0x1)
-- SIGILL = syscall.Signal(0x4)
-- SIGINT = syscall.Signal(0x2)
- SIGIO = syscall.Signal(0x1d)
-- SIGIOT = syscall.Signal(0x6)
-- SIGKILL = syscall.Signal(0x9)
-- SIGPIPE = syscall.Signal(0xd)
- SIGPOLL = syscall.Signal(0x1d)
- SIGPROF = syscall.Signal(0x1b)
- SIGPWR = syscall.Signal(0x1e)
-- SIGQUIT = syscall.Signal(0x3)
-- SIGSEGV = syscall.Signal(0xb)
- SIGSTKFLT = syscall.Signal(0x10)
- SIGSTOP = syscall.Signal(0x13)
- SIGSYS = syscall.Signal(0x1f)
-- SIGTERM = syscall.Signal(0xf)
-- SIGTRAP = syscall.Signal(0x5)
- SIGTSTP = syscall.Signal(0x14)
- SIGTTIN = syscall.Signal(0x15)
- SIGTTOU = syscall.Signal(0x16)
-- SIGUNUSED = syscall.Signal(0x1f)
- SIGURG = syscall.Signal(0x17)
- SIGUSR1 = syscall.Signal(0xa)
- SIGUSR2 = syscall.Signal(0xc)
-@@ -2030,171 +606,179 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "no such device or address",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource temporarily unavailable",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device or resource busy",
-- 17: "file exists",
-- 18: "invalid cross-device link",
-- 19: "no such device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "numerical result out of range",
-- 35: "resource deadlock avoided",
-- 36: "file name too long",
-- 37: "no locks available",
-- 38: "function not implemented",
-- 39: "directory not empty",
-- 40: "too many levels of symbolic links",
-- 42: "no message of desired type",
-- 43: "identifier removed",
-- 44: "channel number out of range",
-- 45: "level 2 not synchronized",
-- 46: "level 3 halted",
-- 47: "level 3 reset",
-- 48: "link number out of range",
-- 49: "protocol driver not attached",
-- 50: "no CSI structure available",
-- 51: "level 2 halted",
-- 52: "invalid exchange",
-- 53: "invalid request descriptor",
-- 54: "exchange full",
-- 55: "no anode",
-- 56: "invalid request code",
-- 57: "invalid slot",
-- 59: "bad font file format",
-- 60: "device not a stream",
-- 61: "no data available",
-- 62: "timer expired",
-- 63: "out of streams resources",
-- 64: "machine is not on the network",
-- 65: "package not installed",
-- 66: "object is remote",
-- 67: "link has been severed",
-- 68: "advertise error",
-- 69: "srmount error",
-- 70: "communication error on send",
-- 71: "protocol error",
-- 72: "multihop attempted",
-- 73: "RFS specific error",
-- 74: "bad message",
-- 75: "value too large for defined data type",
-- 76: "name not unique on network",
-- 77: "file descriptor in bad state",
-- 78: "remote address changed",
-- 79: "can not access a needed shared library",
-- 80: "accessing a corrupted shared library",
-- 81: ".lib section in a.out corrupted",
-- 82: "attempting to link in too many shared libraries",
-- 83: "cannot exec a shared library directly",
-- 84: "invalid or incomplete multibyte or wide character",
-- 85: "interrupted system call should be restarted",
-- 86: "streams pipe error",
-- 87: "too many users",
-- 88: "socket operation on non-socket",
-- 89: "destination address required",
-- 90: "message too long",
-- 91: "protocol wrong type for socket",
-- 92: "protocol not available",
-- 93: "protocol not supported",
-- 94: "socket type not supported",
-- 95: "operation not supported",
-- 96: "protocol family not supported",
-- 97: "address family not supported by protocol",
-- 98: "address already in use",
-- 99: "cannot assign requested address",
-- 100: "network is down",
-- 101: "network is unreachable",
-- 102: "network dropped connection on reset",
-- 103: "software caused connection abort",
-- 104: "connection reset by peer",
-- 105: "no buffer space available",
-- 106: "transport endpoint is already connected",
-- 107: "transport endpoint is not connected",
-- 108: "cannot send after transport endpoint shutdown",
-- 109: "too many references: cannot splice",
-- 110: "connection timed out",
-- 111: "connection refused",
-- 112: "host is down",
-- 113: "no route to host",
-- 114: "operation already in progress",
-- 115: "operation now in progress",
-- 116: "stale file handle",
-- 117: "structure needs cleaning",
-- 118: "not a XENIX named type file",
-- 119: "no XENIX semaphores available",
-- 120: "is a named type file",
-- 121: "remote I/O error",
-- 122: "disk quota exceeded",
-- 123: "no medium found",
-- 124: "wrong medium type",
-- 125: "operation canceled",
-- 126: "required key not available",
-- 127: "key has expired",
-- 128: "key has been revoked",
-- 129: "key was rejected by service",
-- 130: "owner died",
-- 131: "state not recoverable",
-- 132: "operation not possible due to RF-kill",
-- 133: "memory page has hardware error",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device or resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "invalid cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "numerical result out of range"},
-+ {35, "EDEADLK", "resource deadlock avoided"},
-+ {36, "ENAMETOOLONG", "file name too long"},
-+ {37, "ENOLCK", "no locks available"},
-+ {38, "ENOSYS", "function not implemented"},
-+ {39, "ENOTEMPTY", "directory not empty"},
-+ {40, "ELOOP", "too many levels of symbolic links"},
-+ {42, "ENOMSG", "no message of desired type"},
-+ {43, "EIDRM", "identifier removed"},
-+ {44, "ECHRNG", "channel number out of range"},
-+ {45, "EL2NSYNC", "level 2 not synchronized"},
-+ {46, "EL3HLT", "level 3 halted"},
-+ {47, "EL3RST", "level 3 reset"},
-+ {48, "ELNRNG", "link number out of range"},
-+ {49, "EUNATCH", "protocol driver not attached"},
-+ {50, "ENOCSI", "no CSI structure available"},
-+ {51, "EL2HLT", "level 2 halted"},
-+ {52, "EBADE", "invalid exchange"},
-+ {53, "EBADR", "invalid request descriptor"},
-+ {54, "EXFULL", "exchange full"},
-+ {55, "ENOANO", "no anode"},
-+ {56, "EBADRQC", "invalid request code"},
-+ {57, "EBADSLT", "invalid slot"},
-+ {59, "EBFONT", "bad font file format"},
-+ {60, "ENOSTR", "device not a stream"},
-+ {61, "ENODATA", "no data available"},
-+ {62, "ETIME", "timer expired"},
-+ {63, "ENOSR", "out of streams resources"},
-+ {64, "ENONET", "machine is not on the network"},
-+ {65, "ENOPKG", "package not installed"},
-+ {66, "EREMOTE", "object is remote"},
-+ {67, "ENOLINK", "link has been severed"},
-+ {68, "EADV", "advertise error"},
-+ {69, "ESRMNT", "srmount error"},
-+ {70, "ECOMM", "communication error on send"},
-+ {71, "EPROTO", "protocol error"},
-+ {72, "EMULTIHOP", "multihop attempted"},
-+ {73, "EDOTDOT", "RFS specific error"},
-+ {74, "EBADMSG", "bad message"},
-+ {75, "EOVERFLOW", "value too large for defined data type"},
-+ {76, "ENOTUNIQ", "name not unique on network"},
-+ {77, "EBADFD", "file descriptor in bad state"},
-+ {78, "EREMCHG", "remote address changed"},
-+ {79, "ELIBACC", "can not access a needed shared library"},
-+ {80, "ELIBBAD", "accessing a corrupted shared library"},
-+ {81, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
-+ {83, "ELIBEXEC", "cannot exec a shared library directly"},
-+ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
-+ {85, "ERESTART", "interrupted system call should be restarted"},
-+ {86, "ESTRPIPE", "streams pipe error"},
-+ {87, "EUSERS", "too many users"},
-+ {88, "ENOTSOCK", "socket operation on non-socket"},
-+ {89, "EDESTADDRREQ", "destination address required"},
-+ {90, "EMSGSIZE", "message too long"},
-+ {91, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {92, "ENOPROTOOPT", "protocol not available"},
-+ {93, "EPROTONOSUPPORT", "protocol not supported"},
-+ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {95, "ENOTSUP", "operation not supported"},
-+ {96, "EPFNOSUPPORT", "protocol family not supported"},
-+ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
-+ {98, "EADDRINUSE", "address already in use"},
-+ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {100, "ENETDOWN", "network is down"},
-+ {101, "ENETUNREACH", "network is unreachable"},
-+ {102, "ENETRESET", "network dropped connection on reset"},
-+ {103, "ECONNABORTED", "software caused connection abort"},
-+ {104, "ECONNRESET", "connection reset by peer"},
-+ {105, "ENOBUFS", "no buffer space available"},
-+ {106, "EISCONN", "transport endpoint is already connected"},
-+ {107, "ENOTCONN", "transport endpoint is not connected"},
-+ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
-+ {109, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {110, "ETIMEDOUT", "connection timed out"},
-+ {111, "ECONNREFUSED", "connection refused"},
-+ {112, "EHOSTDOWN", "host is down"},
-+ {113, "EHOSTUNREACH", "no route to host"},
-+ {114, "EALREADY", "operation already in progress"},
-+ {115, "EINPROGRESS", "operation now in progress"},
-+ {116, "ESTALE", "stale file handle"},
-+ {117, "EUCLEAN", "structure needs cleaning"},
-+ {118, "ENOTNAM", "not a XENIX named type file"},
-+ {119, "ENAVAIL", "no XENIX semaphores available"},
-+ {120, "EISNAM", "is a named type file"},
-+ {121, "EREMOTEIO", "remote I/O error"},
-+ {122, "EDQUOT", "disk quota exceeded"},
-+ {123, "ENOMEDIUM", "no medium found"},
-+ {124, "EMEDIUMTYPE", "wrong medium type"},
-+ {125, "ECANCELED", "operation canceled"},
-+ {126, "ENOKEY", "required key not available"},
-+ {127, "EKEYEXPIRED", "key has expired"},
-+ {128, "EKEYREVOKED", "key has been revoked"},
-+ {129, "EKEYREJECTED", "key was rejected by service"},
-+ {130, "EOWNERDEAD", "owner died"},
-+ {131, "ENOTRECOVERABLE", "state not recoverable"},
-+ {132, "ERFKILL", "operation not possible due to RF-kill"},
-+ {133, "EHWPOISON", "memory page has hardware error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/breakpoint trap",
-- 6: "aborted",
-- 7: "bus error",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "user defined signal 1",
-- 11: "segmentation fault",
-- 12: "user defined signal 2",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "stack fault",
-- 17: "child exited",
-- 18: "continued",
-- 19: "stopped (signal)",
-- 20: "stopped",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "urgent I/O condition",
-- 24: "CPU time limit exceeded",
-- 25: "file size limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window changed",
-- 29: "I/O possible",
-- 30: "power failure",
-- 31: "bad system call",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/breakpoint trap"},
-+ {6, "SIGABRT", "aborted"},
-+ {7, "SIGBUS", "bus error"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGUSR1", "user defined signal 1"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGUSR2", "user defined signal 2"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGSTKFLT", "stack fault"},
-+ {17, "SIGCHLD", "child exited"},
-+ {18, "SIGCONT", "continued"},
-+ {19, "SIGSTOP", "stopped (signal)"},
-+ {20, "SIGTSTP", "stopped"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGURG", "urgent I/O condition"},
-+ {24, "SIGXCPU", "CPU time limit exceeded"},
-+ {25, "SIGXFSZ", "file size limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window changed"},
-+ {29, "SIGIO", "I/O possible"},
-+ {30, "SIGPWR", "power failure"},
-+ {31, "SIGSYS", "bad system call"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
-index a6618fc1..005970f7 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
-@@ -3,7 +3,7 @@
-
- // +build amd64,linux
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -Wall -Werror -static -I/tmp/include -m64 _const.go
-
- package unix
-@@ -11,1869 +11,487 @@ package unix
- import "syscall"
-
- const (
-- AF_ALG = 0x26
-- AF_APPLETALK = 0x5
-- AF_ASH = 0x12
-- AF_ATMPVC = 0x8
-- AF_ATMSVC = 0x14
-- AF_AX25 = 0x3
-- AF_BLUETOOTH = 0x1f
-- AF_BRIDGE = 0x7
-- AF_CAIF = 0x25
-- AF_CAN = 0x1d
-- AF_DECnet = 0xc
-- AF_ECONET = 0x13
-- AF_FILE = 0x1
-- AF_IB = 0x1b
-- AF_IEEE802154 = 0x24
-- AF_INET = 0x2
-- AF_INET6 = 0xa
-- AF_IPX = 0x4
-- AF_IRDA = 0x17
-- AF_ISDN = 0x22
-- AF_IUCV = 0x20
-- AF_KCM = 0x29
-- AF_KEY = 0xf
-- AF_LLC = 0x1a
-- AF_LOCAL = 0x1
-- AF_MAX = 0x2b
-- AF_MPLS = 0x1c
-- AF_NETBEUI = 0xd
-- AF_NETLINK = 0x10
-- AF_NETROM = 0x6
-- AF_NFC = 0x27
-- AF_PACKET = 0x11
-- AF_PHONET = 0x23
-- AF_PPPOX = 0x18
-- AF_QIPCRTR = 0x2a
-- AF_RDS = 0x15
-- AF_ROSE = 0xb
-- AF_ROUTE = 0x10
-- AF_RXRPC = 0x21
-- AF_SECURITY = 0xe
-- AF_SNA = 0x16
-- AF_TIPC = 0x1e
-- AF_UNIX = 0x1
-- AF_UNSPEC = 0x0
-- AF_VSOCK = 0x28
-- AF_WANPIPE = 0x19
-- AF_X25 = 0x9
-- ALG_OP_DECRYPT = 0x0
-- ALG_OP_ENCRYPT = 0x1
-- ALG_SET_AEAD_ASSOCLEN = 0x4
-- ALG_SET_AEAD_AUTHSIZE = 0x5
-- ALG_SET_IV = 0x2
-- ALG_SET_KEY = 0x1
-- ALG_SET_OP = 0x3
-- ARPHRD_6LOWPAN = 0x339
-- ARPHRD_ADAPT = 0x108
-- ARPHRD_APPLETLK = 0x8
-- ARPHRD_ARCNET = 0x7
-- ARPHRD_ASH = 0x30d
-- ARPHRD_ATM = 0x13
-- ARPHRD_AX25 = 0x3
-- ARPHRD_BIF = 0x307
-- ARPHRD_CAIF = 0x336
-- ARPHRD_CAN = 0x118
-- ARPHRD_CHAOS = 0x5
-- ARPHRD_CISCO = 0x201
-- ARPHRD_CSLIP = 0x101
-- ARPHRD_CSLIP6 = 0x103
-- ARPHRD_DDCMP = 0x205
-- ARPHRD_DLCI = 0xf
-- ARPHRD_ECONET = 0x30e
-- ARPHRD_EETHER = 0x2
-- ARPHRD_ETHER = 0x1
-- ARPHRD_EUI64 = 0x1b
-- ARPHRD_FCAL = 0x311
-- ARPHRD_FCFABRIC = 0x313
-- ARPHRD_FCPL = 0x312
-- ARPHRD_FCPP = 0x310
-- ARPHRD_FDDI = 0x306
-- ARPHRD_FRAD = 0x302
-- ARPHRD_HDLC = 0x201
-- ARPHRD_HIPPI = 0x30c
-- ARPHRD_HWX25 = 0x110
-- ARPHRD_IEEE1394 = 0x18
-- ARPHRD_IEEE802 = 0x6
-- ARPHRD_IEEE80211 = 0x321
-- ARPHRD_IEEE80211_PRISM = 0x322
-- ARPHRD_IEEE80211_RADIOTAP = 0x323
-- ARPHRD_IEEE802154 = 0x324
-- ARPHRD_IEEE802154_MONITOR = 0x325
-- ARPHRD_IEEE802_TR = 0x320
-- ARPHRD_INFINIBAND = 0x20
-- ARPHRD_IP6GRE = 0x337
-- ARPHRD_IPDDP = 0x309
-- ARPHRD_IPGRE = 0x30a
-- ARPHRD_IRDA = 0x30f
-- ARPHRD_LAPB = 0x204
-- ARPHRD_LOCALTLK = 0x305
-- ARPHRD_LOOPBACK = 0x304
-- ARPHRD_METRICOM = 0x17
-- ARPHRD_NETLINK = 0x338
-- ARPHRD_NETROM = 0x0
-- ARPHRD_NONE = 0xfffe
-- ARPHRD_PHONET = 0x334
-- ARPHRD_PHONET_PIPE = 0x335
-- ARPHRD_PIMREG = 0x30b
-- ARPHRD_PPP = 0x200
-- ARPHRD_PRONET = 0x4
-- ARPHRD_RAWHDLC = 0x206
-- ARPHRD_ROSE = 0x10e
-- ARPHRD_RSRVD = 0x104
-- ARPHRD_SIT = 0x308
-- ARPHRD_SKIP = 0x303
-- ARPHRD_SLIP = 0x100
-- ARPHRD_SLIP6 = 0x102
-- ARPHRD_TUNNEL = 0x300
-- ARPHRD_TUNNEL6 = 0x301
-- ARPHRD_VOID = 0xffff
-- ARPHRD_X25 = 0x10f
-- B0 = 0x0
-- B1000000 = 0x1008
-- B110 = 0x3
-- B115200 = 0x1002
-- B1152000 = 0x1009
-- B1200 = 0x9
-- B134 = 0x4
-- B150 = 0x5
-- B1500000 = 0x100a
-- B1800 = 0xa
-- B19200 = 0xe
-- B200 = 0x6
-- B2000000 = 0x100b
-- B230400 = 0x1003
-- B2400 = 0xb
-- B2500000 = 0x100c
-- B300 = 0x7
-- B3000000 = 0x100d
-- B3500000 = 0x100e
-- B38400 = 0xf
-- B4000000 = 0x100f
-- B460800 = 0x1004
-- B4800 = 0xc
-- B50 = 0x1
-- B500000 = 0x1005
-- B57600 = 0x1001
-- B576000 = 0x1006
-- B600 = 0x8
-- B75 = 0x2
-- B921600 = 0x1007
-- B9600 = 0xd
-- BLKBSZGET = 0x80081270
-- BLKBSZSET = 0x40081271
-- BLKFLSBUF = 0x1261
-- BLKFRAGET = 0x1265
-- BLKFRASET = 0x1264
-- BLKGETSIZE = 0x1260
-- BLKGETSIZE64 = 0x80081272
-- BLKPBSZGET = 0x127b
-- BLKRAGET = 0x1263
-- BLKRASET = 0x1262
-- BLKROGET = 0x125e
-- BLKROSET = 0x125d
-- BLKRRPART = 0x125f
-- BLKSECTGET = 0x1267
-- BLKSECTSET = 0x1266
-- BLKSSZGET = 0x1268
-- BOTHER = 0x1000
-- BPF_A = 0x10
-- BPF_ABS = 0x20
-- BPF_ADD = 0x0
-- BPF_ALU = 0x4
-- BPF_AND = 0x50
-- BPF_B = 0x10
-- BPF_DIV = 0x30
-- BPF_H = 0x8
-- BPF_IMM = 0x0
-- BPF_IND = 0x40
-- BPF_JA = 0x0
-- BPF_JEQ = 0x10
-- BPF_JGE = 0x30
-- BPF_JGT = 0x20
-- BPF_JMP = 0x5
-- BPF_JSET = 0x40
-- BPF_K = 0x0
-- BPF_LD = 0x0
-- BPF_LDX = 0x1
-- BPF_LEN = 0x80
-- BPF_LL_OFF = -0x200000
-- BPF_LSH = 0x60
-- BPF_MAJOR_VERSION = 0x1
-- BPF_MAXINSNS = 0x1000
-- BPF_MEM = 0x60
-- BPF_MEMWORDS = 0x10
-- BPF_MINOR_VERSION = 0x1
-- BPF_MISC = 0x7
-- BPF_MOD = 0x90
-- BPF_MSH = 0xa0
-- BPF_MUL = 0x20
-- BPF_NEG = 0x80
-- BPF_NET_OFF = -0x100000
-- BPF_OR = 0x40
-- BPF_RET = 0x6
-- BPF_RSH = 0x70
-- BPF_ST = 0x2
-- BPF_STX = 0x3
-- BPF_SUB = 0x10
-- BPF_TAX = 0x0
-- BPF_TXA = 0x80
-- BPF_W = 0x0
-- BPF_X = 0x8
-- BPF_XOR = 0xa0
-- BRKINT = 0x2
-- BS0 = 0x0
-- BS1 = 0x2000
-- BSDLY = 0x2000
-- CAN_BCM = 0x2
-- CAN_EFF_FLAG = 0x80000000
-- CAN_EFF_ID_BITS = 0x1d
-- CAN_EFF_MASK = 0x1fffffff
-- CAN_ERR_FLAG = 0x20000000
-- CAN_ERR_MASK = 0x1fffffff
-- CAN_INV_FILTER = 0x20000000
-- CAN_ISOTP = 0x6
-- CAN_MAX_DLC = 0x8
-- CAN_MAX_DLEN = 0x8
-- CAN_MCNET = 0x5
-- CAN_MTU = 0x10
-- CAN_NPROTO = 0x7
-- CAN_RAW = 0x1
-- CAN_RAW_FILTER_MAX = 0x200
-- CAN_RTR_FLAG = 0x40000000
-- CAN_SFF_ID_BITS = 0xb
-- CAN_SFF_MASK = 0x7ff
-- CAN_TP16 = 0x3
-- CAN_TP20 = 0x4
-- CBAUD = 0x100f
-- CBAUDEX = 0x1000
-- CFLUSH = 0xf
-- CIBAUD = 0x100f0000
-- CLOCAL = 0x800
-- CLOCK_BOOTTIME = 0x7
-- CLOCK_BOOTTIME_ALARM = 0x9
-- CLOCK_DEFAULT = 0x0
-- CLOCK_EXT = 0x1
-- CLOCK_INT = 0x2
-- CLOCK_MONOTONIC = 0x1
-- CLOCK_MONOTONIC_COARSE = 0x6
-- CLOCK_MONOTONIC_RAW = 0x4
-- CLOCK_PROCESS_CPUTIME_ID = 0x2
-- CLOCK_REALTIME = 0x0
-- CLOCK_REALTIME_ALARM = 0x8
-- CLOCK_REALTIME_COARSE = 0x5
-- CLOCK_TAI = 0xb
-- CLOCK_THREAD_CPUTIME_ID = 0x3
-- CLOCK_TXFROMRX = 0x4
-- CLOCK_TXINT = 0x3
-- CLONE_CHILD_CLEARTID = 0x200000
-- CLONE_CHILD_SETTID = 0x1000000
-- CLONE_DETACHED = 0x400000
-- CLONE_FILES = 0x400
-- CLONE_FS = 0x200
-- CLONE_IO = 0x80000000
-- CLONE_NEWCGROUP = 0x2000000
-- CLONE_NEWIPC = 0x8000000
-- CLONE_NEWNET = 0x40000000
-- CLONE_NEWNS = 0x20000
-- CLONE_NEWPID = 0x20000000
-- CLONE_NEWUSER = 0x10000000
-- CLONE_NEWUTS = 0x4000000
-- CLONE_PARENT = 0x8000
-- CLONE_PARENT_SETTID = 0x100000
-- CLONE_PTRACE = 0x2000
-- CLONE_SETTLS = 0x80000
-- CLONE_SIGHAND = 0x800
-- CLONE_SYSVSEM = 0x40000
-- CLONE_THREAD = 0x10000
-- CLONE_UNTRACED = 0x800000
-- CLONE_VFORK = 0x4000
-- CLONE_VM = 0x100
-- CMSPAR = 0x40000000
-- CR0 = 0x0
-- CR1 = 0x200
-- CR2 = 0x400
-- CR3 = 0x600
-- CRDLY = 0x600
-- CREAD = 0x80
-- CRTSCTS = 0x80000000
-- CS5 = 0x0
-- CS6 = 0x10
-- CS7 = 0x20
-- CS8 = 0x30
-- CSIGNAL = 0xff
-- CSIZE = 0x30
-- CSTART = 0x11
-- CSTATUS = 0x0
-- CSTOP = 0x13
-- CSTOPB = 0x40
-- CSUSP = 0x1a
-- DT_BLK = 0x6
-- DT_CHR = 0x2
-- DT_DIR = 0x4
-- DT_FIFO = 0x1
-- DT_LNK = 0xa
-- DT_REG = 0x8
-- DT_SOCK = 0xc
-- DT_UNKNOWN = 0x0
-- DT_WHT = 0xe
-- ECHO = 0x8
-- ECHOCTL = 0x200
-- ECHOE = 0x10
-- ECHOK = 0x20
-- ECHOKE = 0x800
-- ECHONL = 0x40
-- ECHOPRT = 0x400
-- EFD_CLOEXEC = 0x80000
-- EFD_NONBLOCK = 0x800
-- EFD_SEMAPHORE = 0x1
-- ENCODING_DEFAULT = 0x0
-- ENCODING_FM_MARK = 0x3
-- ENCODING_FM_SPACE = 0x4
-- ENCODING_MANCHESTER = 0x5
-- ENCODING_NRZ = 0x1
-- ENCODING_NRZI = 0x2
-- EPOLLERR = 0x8
-- EPOLLET = 0x80000000
-- EPOLLEXCLUSIVE = 0x10000000
-- EPOLLHUP = 0x10
-- EPOLLIN = 0x1
-- EPOLLMSG = 0x400
-- EPOLLONESHOT = 0x40000000
-- EPOLLOUT = 0x4
-- EPOLLPRI = 0x2
-- EPOLLRDBAND = 0x80
-- EPOLLRDHUP = 0x2000
-- EPOLLRDNORM = 0x40
-- EPOLLWAKEUP = 0x20000000
-- EPOLLWRBAND = 0x200
-- EPOLLWRNORM = 0x100
-- EPOLL_CLOEXEC = 0x80000
-- EPOLL_CTL_ADD = 0x1
-- EPOLL_CTL_DEL = 0x2
-- EPOLL_CTL_MOD = 0x3
-- ETH_P_1588 = 0x88f7
-- ETH_P_8021AD = 0x88a8
-- ETH_P_8021AH = 0x88e7
-- ETH_P_8021Q = 0x8100
-- ETH_P_80221 = 0x8917
-- ETH_P_802_2 = 0x4
-- ETH_P_802_3 = 0x1
-- ETH_P_802_3_MIN = 0x600
-- ETH_P_802_EX1 = 0x88b5
-- ETH_P_AARP = 0x80f3
-- ETH_P_AF_IUCV = 0xfbfb
-- ETH_P_ALL = 0x3
-- ETH_P_AOE = 0x88a2
-- ETH_P_ARCNET = 0x1a
-- ETH_P_ARP = 0x806
-- ETH_P_ATALK = 0x809b
-- ETH_P_ATMFATE = 0x8884
-- ETH_P_ATMMPOA = 0x884c
-- ETH_P_AX25 = 0x2
-- ETH_P_BATMAN = 0x4305
-- ETH_P_BPQ = 0x8ff
-- ETH_P_CAIF = 0xf7
-- ETH_P_CAN = 0xc
-- ETH_P_CANFD = 0xd
-- ETH_P_CONTROL = 0x16
-- ETH_P_CUST = 0x6006
-- ETH_P_DDCMP = 0x6
-- ETH_P_DEC = 0x6000
-- ETH_P_DIAG = 0x6005
-- ETH_P_DNA_DL = 0x6001
-- ETH_P_DNA_RC = 0x6002
-- ETH_P_DNA_RT = 0x6003
-- ETH_P_DSA = 0x1b
-- ETH_P_ECONET = 0x18
-- ETH_P_EDSA = 0xdada
-- ETH_P_FCOE = 0x8906
-- ETH_P_FIP = 0x8914
-- ETH_P_HDLC = 0x19
-- ETH_P_HSR = 0x892f
-- ETH_P_IEEE802154 = 0xf6
-- ETH_P_IEEEPUP = 0xa00
-- ETH_P_IEEEPUPAT = 0xa01
-- ETH_P_IP = 0x800
-- ETH_P_IPV6 = 0x86dd
-- ETH_P_IPX = 0x8137
-- ETH_P_IRDA = 0x17
-- ETH_P_LAT = 0x6004
-- ETH_P_LINK_CTL = 0x886c
-- ETH_P_LOCALTALK = 0x9
-- ETH_P_LOOP = 0x60
-- ETH_P_LOOPBACK = 0x9000
-- ETH_P_MACSEC = 0x88e5
-- ETH_P_MOBITEX = 0x15
-- ETH_P_MPLS_MC = 0x8848
-- ETH_P_MPLS_UC = 0x8847
-- ETH_P_MVRP = 0x88f5
-- ETH_P_NCSI = 0x88f8
-- ETH_P_PAE = 0x888e
-- ETH_P_PAUSE = 0x8808
-- ETH_P_PHONET = 0xf5
-- ETH_P_PPPTALK = 0x10
-- ETH_P_PPP_DISC = 0x8863
-- ETH_P_PPP_MP = 0x8
-- ETH_P_PPP_SES = 0x8864
-- ETH_P_PRP = 0x88fb
-- ETH_P_PUP = 0x200
-- ETH_P_PUPAT = 0x201
-- ETH_P_QINQ1 = 0x9100
-- ETH_P_QINQ2 = 0x9200
-- ETH_P_QINQ3 = 0x9300
-- ETH_P_RARP = 0x8035
-- ETH_P_SCA = 0x6007
-- ETH_P_SLOW = 0x8809
-- ETH_P_SNAP = 0x5
-- ETH_P_TDLS = 0x890d
-- ETH_P_TEB = 0x6558
-- ETH_P_TIPC = 0x88ca
-- ETH_P_TRAILER = 0x1c
-- ETH_P_TR_802_2 = 0x11
-- ETH_P_TSN = 0x22f0
-- ETH_P_WAN_PPP = 0x7
-- ETH_P_WCCP = 0x883e
-- ETH_P_X25 = 0x805
-- ETH_P_XDSA = 0xf8
-- EXTA = 0xe
-- EXTB = 0xf
-- EXTPROC = 0x10000
-- FALLOC_FL_COLLAPSE_RANGE = 0x8
-- FALLOC_FL_INSERT_RANGE = 0x20
-- FALLOC_FL_KEEP_SIZE = 0x1
-- FALLOC_FL_NO_HIDE_STALE = 0x4
-- FALLOC_FL_PUNCH_HOLE = 0x2
-- FALLOC_FL_UNSHARE_RANGE = 0x40
-- FALLOC_FL_ZERO_RANGE = 0x10
-- FD_CLOEXEC = 0x1
-- FD_SETSIZE = 0x400
-- FF0 = 0x0
-- FF1 = 0x8000
-- FFDLY = 0x8000
-- FLUSHO = 0x1000
-- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
-- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
-- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
-- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
-- FS_ENCRYPTION_MODE_INVALID = 0x0
-- FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
-- FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
-- FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
-- FS_KEY_DESCRIPTOR_SIZE = 0x8
-- FS_KEY_DESC_PREFIX = "fscrypt:"
-- FS_KEY_DESC_PREFIX_SIZE = 0x8
-- FS_MAX_KEY_SIZE = 0x40
-- FS_POLICY_FLAGS_PAD_16 = 0x2
-- FS_POLICY_FLAGS_PAD_32 = 0x3
-- FS_POLICY_FLAGS_PAD_4 = 0x0
-- FS_POLICY_FLAGS_PAD_8 = 0x1
-- FS_POLICY_FLAGS_PAD_MASK = 0x3
-- FS_POLICY_FLAGS_VALID = 0x3
-- F_DUPFD = 0x0
-- F_DUPFD_CLOEXEC = 0x406
-- F_EXLCK = 0x4
-- F_GETFD = 0x1
-- F_GETFL = 0x3
-- F_GETLEASE = 0x401
-- F_GETLK = 0x5
-- F_GETLK64 = 0x5
-- F_GETOWN = 0x9
-- F_GETOWN_EX = 0x10
-- F_GETPIPE_SZ = 0x408
-- F_GETSIG = 0xb
-- F_LOCK = 0x1
-- F_NOTIFY = 0x402
-- F_OFD_GETLK = 0x24
-- F_OFD_SETLK = 0x25
-- F_OFD_SETLKW = 0x26
-- F_OK = 0x0
-- F_RDLCK = 0x0
-- F_SETFD = 0x2
-- F_SETFL = 0x4
-- F_SETLEASE = 0x400
-- F_SETLK = 0x6
-- F_SETLK64 = 0x6
-- F_SETLKW = 0x7
-- F_SETLKW64 = 0x7
-- F_SETOWN = 0x8
-- F_SETOWN_EX = 0xf
-- F_SETPIPE_SZ = 0x407
-- F_SETSIG = 0xa
-- F_SHLCK = 0x8
-- F_TEST = 0x3
-- F_TLOCK = 0x2
-- F_ULOCK = 0x0
-- F_UNLCK = 0x2
-- F_WRLCK = 0x1
-- GENL_ADMIN_PERM = 0x1
-- GENL_CMD_CAP_DO = 0x2
-- GENL_CMD_CAP_DUMP = 0x4
-- GENL_CMD_CAP_HASPOL = 0x8
-- GENL_HDRLEN = 0x4
-- GENL_ID_CTRL = 0x10
-- GENL_ID_PMCRAID = 0x12
-- GENL_ID_VFS_DQUOT = 0x11
-- GENL_MAX_ID = 0x3ff
-- GENL_MIN_ID = 0x10
-- GENL_NAMSIZ = 0x10
-- GENL_START_ALLOC = 0x13
-- GENL_UNS_ADMIN_PERM = 0x10
-- GRND_NONBLOCK = 0x1
-- GRND_RANDOM = 0x2
-- HUPCL = 0x400
-- IBSHIFT = 0x10
-- ICANON = 0x2
-- ICMPV6_FILTER = 0x1
-- ICRNL = 0x100
-- IEXTEN = 0x8000
-- IFA_F_DADFAILED = 0x8
-- IFA_F_DEPRECATED = 0x20
-- IFA_F_HOMEADDRESS = 0x10
-- IFA_F_MANAGETEMPADDR = 0x100
-- IFA_F_MCAUTOJOIN = 0x400
-- IFA_F_NODAD = 0x2
-- IFA_F_NOPREFIXROUTE = 0x200
-- IFA_F_OPTIMISTIC = 0x4
-- IFA_F_PERMANENT = 0x80
-- IFA_F_SECONDARY = 0x1
-- IFA_F_STABLE_PRIVACY = 0x800
-- IFA_F_TEMPORARY = 0x1
-- IFA_F_TENTATIVE = 0x40
-- IFA_MAX = 0x8
-- IFF_ALLMULTI = 0x200
-- IFF_ATTACH_QUEUE = 0x200
-- IFF_AUTOMEDIA = 0x4000
-- IFF_BROADCAST = 0x2
-- IFF_DEBUG = 0x4
-- IFF_DETACH_QUEUE = 0x400
-- IFF_DORMANT = 0x20000
-- IFF_DYNAMIC = 0x8000
-- IFF_ECHO = 0x40000
-- IFF_LOOPBACK = 0x8
-- IFF_LOWER_UP = 0x10000
-- IFF_MASTER = 0x400
-- IFF_MULTICAST = 0x1000
-- IFF_MULTI_QUEUE = 0x100
-- IFF_NOARP = 0x80
-- IFF_NOFILTER = 0x1000
-- IFF_NOTRAILERS = 0x20
-- IFF_NO_PI = 0x1000
-- IFF_ONE_QUEUE = 0x2000
-- IFF_PERSIST = 0x800
-- IFF_POINTOPOINT = 0x10
-- IFF_PORTSEL = 0x2000
-- IFF_PROMISC = 0x100
-- IFF_RUNNING = 0x40
-- IFF_SLAVE = 0x800
-- IFF_TAP = 0x2
-- IFF_TUN = 0x1
-- IFF_TUN_EXCL = 0x8000
-- IFF_UP = 0x1
-- IFF_VNET_HDR = 0x4000
-- IFF_VOLATILE = 0x70c5a
-- IFNAMSIZ = 0x10
-- IGNBRK = 0x1
-- IGNCR = 0x80
-- IGNPAR = 0x4
-- IMAXBEL = 0x2000
-- INLCR = 0x40
-- INPCK = 0x10
-- IN_ACCESS = 0x1
-- IN_ALL_EVENTS = 0xfff
-- IN_ATTRIB = 0x4
-- IN_CLASSA_HOST = 0xffffff
-- IN_CLASSA_MAX = 0x80
-- IN_CLASSA_NET = 0xff000000
-- IN_CLASSA_NSHIFT = 0x18
-- IN_CLASSB_HOST = 0xffff
-- IN_CLASSB_MAX = 0x10000
-- IN_CLASSB_NET = 0xffff0000
-- IN_CLASSB_NSHIFT = 0x10
-- IN_CLASSC_HOST = 0xff
-- IN_CLASSC_NET = 0xffffff00
-- IN_CLASSC_NSHIFT = 0x8
-- IN_CLOEXEC = 0x80000
-- IN_CLOSE = 0x18
-- IN_CLOSE_NOWRITE = 0x10
-- IN_CLOSE_WRITE = 0x8
-- IN_CREATE = 0x100
-- IN_DELETE = 0x200
-- IN_DELETE_SELF = 0x400
-- IN_DONT_FOLLOW = 0x2000000
-- IN_EXCL_UNLINK = 0x4000000
-- IN_IGNORED = 0x8000
-- IN_ISDIR = 0x40000000
-- IN_LOOPBACKNET = 0x7f
-- IN_MASK_ADD = 0x20000000
-- IN_MODIFY = 0x2
-- IN_MOVE = 0xc0
-- IN_MOVED_FROM = 0x40
-- IN_MOVED_TO = 0x80
-- IN_MOVE_SELF = 0x800
-- IN_NONBLOCK = 0x800
-- IN_ONESHOT = 0x80000000
-- IN_ONLYDIR = 0x1000000
-- IN_OPEN = 0x20
-- IN_Q_OVERFLOW = 0x4000
-- IN_UNMOUNT = 0x2000
-- IPPROTO_AH = 0x33
-- IPPROTO_BEETPH = 0x5e
-- IPPROTO_COMP = 0x6c
-- IPPROTO_DCCP = 0x21
-- IPPROTO_DSTOPTS = 0x3c
-- IPPROTO_EGP = 0x8
-- IPPROTO_ENCAP = 0x62
-- IPPROTO_ESP = 0x32
-- IPPROTO_FRAGMENT = 0x2c
-- IPPROTO_GRE = 0x2f
-- IPPROTO_HOPOPTS = 0x0
-- IPPROTO_ICMP = 0x1
-- IPPROTO_ICMPV6 = 0x3a
-- IPPROTO_IDP = 0x16
-- IPPROTO_IGMP = 0x2
-- IPPROTO_IP = 0x0
-- IPPROTO_IPIP = 0x4
-- IPPROTO_IPV6 = 0x29
-- IPPROTO_MH = 0x87
-- IPPROTO_MPLS = 0x89
-- IPPROTO_MTP = 0x5c
-- IPPROTO_NONE = 0x3b
-- IPPROTO_PIM = 0x67
-- IPPROTO_PUP = 0xc
-- IPPROTO_RAW = 0xff
-- IPPROTO_ROUTING = 0x2b
-- IPPROTO_RSVP = 0x2e
-- IPPROTO_SCTP = 0x84
-- IPPROTO_TCP = 0x6
-- IPPROTO_TP = 0x1d
-- IPPROTO_UDP = 0x11
-- IPPROTO_UDPLITE = 0x88
-- IPV6_2292DSTOPTS = 0x4
-- IPV6_2292HOPLIMIT = 0x8
-- IPV6_2292HOPOPTS = 0x3
-- IPV6_2292PKTINFO = 0x2
-- IPV6_2292PKTOPTIONS = 0x6
-- IPV6_2292RTHDR = 0x5
-- IPV6_ADDRFORM = 0x1
-- IPV6_ADD_MEMBERSHIP = 0x14
-- IPV6_AUTHHDR = 0xa
-- IPV6_CHECKSUM = 0x7
-- IPV6_DONTFRAG = 0x3e
-- IPV6_DROP_MEMBERSHIP = 0x15
-- IPV6_DSTOPTS = 0x3b
-- IPV6_HDRINCL = 0x24
-- IPV6_HOPLIMIT = 0x34
-- IPV6_HOPOPTS = 0x36
-- IPV6_IPSEC_POLICY = 0x22
-- IPV6_JOIN_ANYCAST = 0x1b
-- IPV6_JOIN_GROUP = 0x14
-- IPV6_LEAVE_ANYCAST = 0x1c
-- IPV6_LEAVE_GROUP = 0x15
-- IPV6_MTU = 0x18
-- IPV6_MTU_DISCOVER = 0x17
-- IPV6_MULTICAST_HOPS = 0x12
-- IPV6_MULTICAST_IF = 0x11
-- IPV6_MULTICAST_LOOP = 0x13
-- IPV6_NEXTHOP = 0x9
-- IPV6_PATHMTU = 0x3d
-- IPV6_PKTINFO = 0x32
-- IPV6_PMTUDISC_DO = 0x2
-- IPV6_PMTUDISC_DONT = 0x0
-- IPV6_PMTUDISC_INTERFACE = 0x4
-- IPV6_PMTUDISC_OMIT = 0x5
-- IPV6_PMTUDISC_PROBE = 0x3
-- IPV6_PMTUDISC_WANT = 0x1
-- IPV6_RECVDSTOPTS = 0x3a
-- IPV6_RECVERR = 0x19
-- IPV6_RECVHOPLIMIT = 0x33
-- IPV6_RECVHOPOPTS = 0x35
-- IPV6_RECVPATHMTU = 0x3c
-- IPV6_RECVPKTINFO = 0x31
-- IPV6_RECVRTHDR = 0x38
-- IPV6_RECVTCLASS = 0x42
-- IPV6_ROUTER_ALERT = 0x16
-- IPV6_RTHDR = 0x39
-- IPV6_RTHDRDSTOPTS = 0x37
-- IPV6_RTHDR_LOOSE = 0x0
-- IPV6_RTHDR_STRICT = 0x1
-- IPV6_RTHDR_TYPE_0 = 0x0
-- IPV6_RXDSTOPTS = 0x3b
-- IPV6_RXHOPOPTS = 0x36
-- IPV6_TCLASS = 0x43
-- IPV6_UNICAST_HOPS = 0x10
-- IPV6_V6ONLY = 0x1a
-- IPV6_XFRM_POLICY = 0x23
-- IP_ADD_MEMBERSHIP = 0x23
-- IP_ADD_SOURCE_MEMBERSHIP = 0x27
-- IP_BIND_ADDRESS_NO_PORT = 0x18
-- IP_BLOCK_SOURCE = 0x26
-- IP_CHECKSUM = 0x17
-- IP_DEFAULT_MULTICAST_LOOP = 0x1
-- IP_DEFAULT_MULTICAST_TTL = 0x1
-- IP_DF = 0x4000
-- IP_DROP_MEMBERSHIP = 0x24
-- IP_DROP_SOURCE_MEMBERSHIP = 0x28
-- IP_FREEBIND = 0xf
-- IP_HDRINCL = 0x3
-- IP_IPSEC_POLICY = 0x10
-- IP_MAXPACKET = 0xffff
-- IP_MAX_MEMBERSHIPS = 0x14
-- IP_MF = 0x2000
-- IP_MINTTL = 0x15
-- IP_MSFILTER = 0x29
-- IP_MSS = 0x240
-- IP_MTU = 0xe
-- IP_MTU_DISCOVER = 0xa
-- IP_MULTICAST_ALL = 0x31
-- IP_MULTICAST_IF = 0x20
-- IP_MULTICAST_LOOP = 0x22
-- IP_MULTICAST_TTL = 0x21
-- IP_NODEFRAG = 0x16
-- IP_OFFMASK = 0x1fff
-- IP_OPTIONS = 0x4
-- IP_ORIGDSTADDR = 0x14
-- IP_PASSSEC = 0x12
-- IP_PKTINFO = 0x8
-- IP_PKTOPTIONS = 0x9
-- IP_PMTUDISC = 0xa
-- IP_PMTUDISC_DO = 0x2
-- IP_PMTUDISC_DONT = 0x0
-- IP_PMTUDISC_INTERFACE = 0x4
-- IP_PMTUDISC_OMIT = 0x5
-- IP_PMTUDISC_PROBE = 0x3
-- IP_PMTUDISC_WANT = 0x1
-- IP_RECVERR = 0xb
-- IP_RECVOPTS = 0x6
-- IP_RECVORIGDSTADDR = 0x14
-- IP_RECVRETOPTS = 0x7
-- IP_RECVTOS = 0xd
-- IP_RECVTTL = 0xc
-- IP_RETOPTS = 0x7
-- IP_RF = 0x8000
-- IP_ROUTER_ALERT = 0x5
-- IP_TOS = 0x1
-- IP_TRANSPARENT = 0x13
-- IP_TTL = 0x2
-- IP_UNBLOCK_SOURCE = 0x25
-- IP_UNICAST_IF = 0x32
-- IP_XFRM_POLICY = 0x11
-- ISIG = 0x1
-- ISTRIP = 0x20
-- IUCLC = 0x200
-- IUTF8 = 0x4000
-- IXANY = 0x800
-- IXOFF = 0x1000
-- IXON = 0x400
-- KEYCTL_ASSUME_AUTHORITY = 0x10
-- KEYCTL_CHOWN = 0x4
-- KEYCTL_CLEAR = 0x7
-- KEYCTL_DESCRIBE = 0x6
-- KEYCTL_DH_COMPUTE = 0x17
-- KEYCTL_GET_KEYRING_ID = 0x0
-- KEYCTL_GET_PERSISTENT = 0x16
-- KEYCTL_GET_SECURITY = 0x11
-- KEYCTL_INSTANTIATE = 0xc
-- KEYCTL_INSTANTIATE_IOV = 0x14
-- KEYCTL_INVALIDATE = 0x15
-- KEYCTL_JOIN_SESSION_KEYRING = 0x1
-- KEYCTL_LINK = 0x8
-- KEYCTL_NEGATE = 0xd
-- KEYCTL_READ = 0xb
-- KEYCTL_REJECT = 0x13
-- KEYCTL_REVOKE = 0x3
-- KEYCTL_SEARCH = 0xa
-- KEYCTL_SESSION_TO_PARENT = 0x12
-- KEYCTL_SETPERM = 0x5
-- KEYCTL_SET_REQKEY_KEYRING = 0xe
-- KEYCTL_SET_TIMEOUT = 0xf
-- KEYCTL_UNLINK = 0x9
-- KEYCTL_UPDATE = 0x2
-- KEY_REQKEY_DEFL_DEFAULT = 0x0
-- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
-- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
-- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
-- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
-- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
-- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
-- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
-- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
-- KEY_SPEC_GROUP_KEYRING = -0x6
-- KEY_SPEC_PROCESS_KEYRING = -0x2
-- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
-- KEY_SPEC_REQUESTOR_KEYRING = -0x8
-- KEY_SPEC_SESSION_KEYRING = -0x3
-- KEY_SPEC_THREAD_KEYRING = -0x1
-- KEY_SPEC_USER_KEYRING = -0x4
-- KEY_SPEC_USER_SESSION_KEYRING = -0x5
-- LINUX_REBOOT_CMD_CAD_OFF = 0x0
-- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
-- LINUX_REBOOT_CMD_HALT = 0xcdef0123
-- LINUX_REBOOT_CMD_KEXEC = 0x45584543
-- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
-- LINUX_REBOOT_CMD_RESTART = 0x1234567
-- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
-- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
-- LINUX_REBOOT_MAGIC1 = 0xfee1dead
-- LINUX_REBOOT_MAGIC2 = 0x28121969
-- LOCK_EX = 0x2
-- LOCK_NB = 0x4
-- LOCK_SH = 0x1
-- LOCK_UN = 0x8
-- MADV_DODUMP = 0x11
-- MADV_DOFORK = 0xb
-- MADV_DONTDUMP = 0x10
-- MADV_DONTFORK = 0xa
-- MADV_DONTNEED = 0x4
-- MADV_FREE = 0x8
-- MADV_HUGEPAGE = 0xe
-- MADV_HWPOISON = 0x64
-- MADV_MERGEABLE = 0xc
-- MADV_NOHUGEPAGE = 0xf
-- MADV_NORMAL = 0x0
-- MADV_RANDOM = 0x1
-- MADV_REMOVE = 0x9
-- MADV_SEQUENTIAL = 0x2
-- MADV_UNMERGEABLE = 0xd
-- MADV_WILLNEED = 0x3
-- MAP_32BIT = 0x40
-- MAP_ANON = 0x20
-- MAP_ANONYMOUS = 0x20
-- MAP_DENYWRITE = 0x800
-- MAP_EXECUTABLE = 0x1000
-- MAP_FILE = 0x0
-- MAP_FIXED = 0x10
-- MAP_GROWSDOWN = 0x100
-- MAP_HUGETLB = 0x40000
-- MAP_HUGE_MASK = 0x3f
-- MAP_HUGE_SHIFT = 0x1a
-- MAP_LOCKED = 0x2000
-- MAP_NONBLOCK = 0x10000
-- MAP_NORESERVE = 0x4000
-- MAP_POPULATE = 0x8000
-- MAP_PRIVATE = 0x2
-- MAP_SHARED = 0x1
-- MAP_STACK = 0x20000
-- MAP_TYPE = 0xf
-- MCL_CURRENT = 0x1
-- MCL_FUTURE = 0x2
-- MCL_ONFAULT = 0x4
-- MNT_DETACH = 0x2
-- MNT_EXPIRE = 0x4
-- MNT_FORCE = 0x1
-- MSG_BATCH = 0x40000
-- MSG_CMSG_CLOEXEC = 0x40000000
-- MSG_CONFIRM = 0x800
-- MSG_CTRUNC = 0x8
-- MSG_DONTROUTE = 0x4
-- MSG_DONTWAIT = 0x40
-- MSG_EOR = 0x80
-- MSG_ERRQUEUE = 0x2000
-- MSG_FASTOPEN = 0x20000000
-- MSG_FIN = 0x200
-- MSG_MORE = 0x8000
-- MSG_NOSIGNAL = 0x4000
-- MSG_OOB = 0x1
-- MSG_PEEK = 0x2
-- MSG_PROXY = 0x10
-- MSG_RST = 0x1000
-- MSG_SYN = 0x400
-- MSG_TRUNC = 0x20
-- MSG_TRYHARD = 0x4
-- MSG_WAITALL = 0x100
-- MSG_WAITFORONE = 0x10000
-- MS_ACTIVE = 0x40000000
-- MS_ASYNC = 0x1
-- MS_BIND = 0x1000
-- MS_BORN = 0x20000000
-- MS_DIRSYNC = 0x80
-- MS_INVALIDATE = 0x2
-- MS_I_VERSION = 0x800000
-- MS_KERNMOUNT = 0x400000
-- MS_LAZYTIME = 0x2000000
-- MS_MANDLOCK = 0x40
-- MS_MGC_MSK = 0xffff0000
-- MS_MGC_VAL = 0xc0ed0000
-- MS_MOVE = 0x2000
-- MS_NOATIME = 0x400
-- MS_NODEV = 0x4
-- MS_NODIRATIME = 0x800
-- MS_NOEXEC = 0x8
-- MS_NOREMOTELOCK = 0x8000000
-- MS_NOSEC = 0x10000000
-- MS_NOSUID = 0x2
-- MS_NOUSER = -0x80000000
-- MS_POSIXACL = 0x10000
-- MS_PRIVATE = 0x40000
-- MS_RDONLY = 0x1
-- MS_REC = 0x4000
-- MS_RELATIME = 0x200000
-- MS_REMOUNT = 0x20
-- MS_RMT_MASK = 0x2800051
-- MS_SHARED = 0x100000
-- MS_SILENT = 0x8000
-- MS_SLAVE = 0x80000
-- MS_STRICTATIME = 0x1000000
-- MS_SYNC = 0x4
-- MS_SYNCHRONOUS = 0x10
-- MS_UNBINDABLE = 0x20000
-- MS_VERBOSE = 0x8000
-- NAME_MAX = 0xff
-- NETLINK_ADD_MEMBERSHIP = 0x1
-- NETLINK_AUDIT = 0x9
-- NETLINK_BROADCAST_ERROR = 0x4
-- NETLINK_CAP_ACK = 0xa
-- NETLINK_CONNECTOR = 0xb
-- NETLINK_CRYPTO = 0x15
-- NETLINK_DNRTMSG = 0xe
-- NETLINK_DROP_MEMBERSHIP = 0x2
-- NETLINK_ECRYPTFS = 0x13
-- NETLINK_FIB_LOOKUP = 0xa
-- NETLINK_FIREWALL = 0x3
-- NETLINK_GENERIC = 0x10
-- NETLINK_INET_DIAG = 0x4
-- NETLINK_IP6_FW = 0xd
-- NETLINK_ISCSI = 0x8
-- NETLINK_KOBJECT_UEVENT = 0xf
-- NETLINK_LISTEN_ALL_NSID = 0x8
-- NETLINK_LIST_MEMBERSHIPS = 0x9
-- NETLINK_NETFILTER = 0xc
-- NETLINK_NFLOG = 0x5
-- NETLINK_NO_ENOBUFS = 0x5
-- NETLINK_PKTINFO = 0x3
-- NETLINK_RDMA = 0x14
-- NETLINK_ROUTE = 0x0
-- NETLINK_RX_RING = 0x6
-- NETLINK_SCSITRANSPORT = 0x12
-- NETLINK_SELINUX = 0x7
-- NETLINK_SOCK_DIAG = 0x4
-- NETLINK_TX_RING = 0x7
-- NETLINK_UNUSED = 0x1
-- NETLINK_USERSOCK = 0x2
-- NETLINK_XFRM = 0x6
-- NL0 = 0x0
-- NL1 = 0x100
-- NLA_ALIGNTO = 0x4
-- NLA_F_NESTED = 0x8000
-- NLA_F_NET_BYTEORDER = 0x4000
-- NLA_HDRLEN = 0x4
-- NLDLY = 0x100
-- NLMSG_ALIGNTO = 0x4
-- NLMSG_DONE = 0x3
-- NLMSG_ERROR = 0x2
-- NLMSG_HDRLEN = 0x10
-- NLMSG_MIN_TYPE = 0x10
-- NLMSG_NOOP = 0x1
-- NLMSG_OVERRUN = 0x4
-- NLM_F_ACK = 0x4
-- NLM_F_APPEND = 0x800
-- NLM_F_ATOMIC = 0x400
-- NLM_F_CREATE = 0x400
-- NLM_F_DUMP = 0x300
-- NLM_F_DUMP_FILTERED = 0x20
-- NLM_F_DUMP_INTR = 0x10
-- NLM_F_ECHO = 0x8
-- NLM_F_EXCL = 0x200
-- NLM_F_MATCH = 0x200
-- NLM_F_MULTI = 0x2
-- NLM_F_REPLACE = 0x100
-- NLM_F_REQUEST = 0x1
-- NLM_F_ROOT = 0x100
-- NOFLSH = 0x80
-- OCRNL = 0x8
-- OFDEL = 0x80
-- OFILL = 0x40
-- OLCUC = 0x2
-- ONLCR = 0x4
-- ONLRET = 0x20
-- ONOCR = 0x10
-- OPOST = 0x1
-- O_ACCMODE = 0x3
-- O_APPEND = 0x400
-- O_ASYNC = 0x2000
-- O_CLOEXEC = 0x80000
-- O_CREAT = 0x40
-- O_DIRECT = 0x4000
-- O_DIRECTORY = 0x10000
-- O_DSYNC = 0x1000
-- O_EXCL = 0x80
-- O_FSYNC = 0x101000
-- O_LARGEFILE = 0x0
-- O_NDELAY = 0x800
-- O_NOATIME = 0x40000
-- O_NOCTTY = 0x100
-- O_NOFOLLOW = 0x20000
-- O_NONBLOCK = 0x800
-- O_PATH = 0x200000
-- O_RDONLY = 0x0
-- O_RDWR = 0x2
-- O_RSYNC = 0x101000
-- O_SYNC = 0x101000
-- O_TMPFILE = 0x410000
-- O_TRUNC = 0x200
-- O_WRONLY = 0x1
-- PACKET_ADD_MEMBERSHIP = 0x1
-- PACKET_AUXDATA = 0x8
-- PACKET_BROADCAST = 0x1
-- PACKET_COPY_THRESH = 0x7
-- PACKET_DROP_MEMBERSHIP = 0x2
-- PACKET_FANOUT = 0x12
-- PACKET_FANOUT_CBPF = 0x6
-- PACKET_FANOUT_CPU = 0x2
-- PACKET_FANOUT_DATA = 0x16
-- PACKET_FANOUT_EBPF = 0x7
-- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
-- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
-- PACKET_FANOUT_HASH = 0x0
-- PACKET_FANOUT_LB = 0x1
-- PACKET_FANOUT_QM = 0x5
-- PACKET_FANOUT_RND = 0x4
-- PACKET_FANOUT_ROLLOVER = 0x3
-- PACKET_FASTROUTE = 0x6
-- PACKET_HDRLEN = 0xb
-- PACKET_HOST = 0x0
-- PACKET_KERNEL = 0x7
-- PACKET_LOOPBACK = 0x5
-- PACKET_LOSS = 0xe
-- PACKET_MR_ALLMULTI = 0x2
-- PACKET_MR_MULTICAST = 0x0
-- PACKET_MR_PROMISC = 0x1
-- PACKET_MR_UNICAST = 0x3
-- PACKET_MULTICAST = 0x2
-- PACKET_ORIGDEV = 0x9
-- PACKET_OTHERHOST = 0x3
-- PACKET_OUTGOING = 0x4
-- PACKET_QDISC_BYPASS = 0x14
-- PACKET_RECV_OUTPUT = 0x3
-- PACKET_RESERVE = 0xc
-- PACKET_ROLLOVER_STATS = 0x15
-- PACKET_RX_RING = 0x5
-- PACKET_STATISTICS = 0x6
-- PACKET_TIMESTAMP = 0x11
-- PACKET_TX_HAS_OFF = 0x13
-- PACKET_TX_RING = 0xd
-- PACKET_TX_TIMESTAMP = 0x10
-- PACKET_USER = 0x6
-- PACKET_VERSION = 0xa
-- PACKET_VNET_HDR = 0xf
-- PARENB = 0x100
-- PARITY_CRC16_PR0 = 0x2
-- PARITY_CRC16_PR0_CCITT = 0x4
-- PARITY_CRC16_PR1 = 0x3
-- PARITY_CRC16_PR1_CCITT = 0x5
-- PARITY_CRC32_PR0_CCITT = 0x6
-- PARITY_CRC32_PR1_CCITT = 0x7
-- PARITY_DEFAULT = 0x0
-- PARITY_NONE = 0x1
-- PARMRK = 0x8
-- PARODD = 0x200
-- PENDIN = 0x4000
-- PERF_EVENT_IOC_DISABLE = 0x2401
-- PERF_EVENT_IOC_ENABLE = 0x2400
-- PERF_EVENT_IOC_ID = 0x80082407
-- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
-- PERF_EVENT_IOC_PERIOD = 0x40082404
-- PERF_EVENT_IOC_REFRESH = 0x2402
-- PERF_EVENT_IOC_RESET = 0x2403
-- PERF_EVENT_IOC_SET_BPF = 0x40042408
-- PERF_EVENT_IOC_SET_FILTER = 0x40082406
-- PERF_EVENT_IOC_SET_OUTPUT = 0x2405
-- PRIO_PGRP = 0x1
-- PRIO_PROCESS = 0x0
-- PRIO_USER = 0x2
-- PROT_EXEC = 0x4
-- PROT_GROWSDOWN = 0x1000000
-- PROT_GROWSUP = 0x2000000
-- PROT_NONE = 0x0
-- PROT_READ = 0x1
-- PROT_WRITE = 0x2
-- PR_CAPBSET_DROP = 0x18
-- PR_CAPBSET_READ = 0x17
-- PR_CAP_AMBIENT = 0x2f
-- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
-- PR_CAP_AMBIENT_IS_SET = 0x1
-- PR_CAP_AMBIENT_LOWER = 0x3
-- PR_CAP_AMBIENT_RAISE = 0x2
-- PR_ENDIAN_BIG = 0x0
-- PR_ENDIAN_LITTLE = 0x1
-- PR_ENDIAN_PPC_LITTLE = 0x2
-- PR_FPEMU_NOPRINT = 0x1
-- PR_FPEMU_SIGFPE = 0x2
-- PR_FP_EXC_ASYNC = 0x2
-- PR_FP_EXC_DISABLED = 0x0
-- PR_FP_EXC_DIV = 0x10000
-- PR_FP_EXC_INV = 0x100000
-- PR_FP_EXC_NONRECOV = 0x1
-- PR_FP_EXC_OVF = 0x20000
-- PR_FP_EXC_PRECISE = 0x3
-- PR_FP_EXC_RES = 0x80000
-- PR_FP_EXC_SW_ENABLE = 0x80
-- PR_FP_EXC_UND = 0x40000
-- PR_FP_MODE_FR = 0x1
-- PR_FP_MODE_FRE = 0x2
-- PR_GET_CHILD_SUBREAPER = 0x25
-- PR_GET_DUMPABLE = 0x3
-- PR_GET_ENDIAN = 0x13
-- PR_GET_FPEMU = 0x9
-- PR_GET_FPEXC = 0xb
-- PR_GET_FP_MODE = 0x2e
-- PR_GET_KEEPCAPS = 0x7
-- PR_GET_NAME = 0x10
-- PR_GET_NO_NEW_PRIVS = 0x27
-- PR_GET_PDEATHSIG = 0x2
-- PR_GET_SECCOMP = 0x15
-- PR_GET_SECUREBITS = 0x1b
-- PR_GET_THP_DISABLE = 0x2a
-- PR_GET_TID_ADDRESS = 0x28
-- PR_GET_TIMERSLACK = 0x1e
-- PR_GET_TIMING = 0xd
-- PR_GET_TSC = 0x19
-- PR_GET_UNALIGN = 0x5
-- PR_MCE_KILL = 0x21
-- PR_MCE_KILL_CLEAR = 0x0
-- PR_MCE_KILL_DEFAULT = 0x2
-- PR_MCE_KILL_EARLY = 0x1
-- PR_MCE_KILL_GET = 0x22
-- PR_MCE_KILL_LATE = 0x0
-- PR_MCE_KILL_SET = 0x1
-- PR_MPX_DISABLE_MANAGEMENT = 0x2c
-- PR_MPX_ENABLE_MANAGEMENT = 0x2b
-- PR_SET_CHILD_SUBREAPER = 0x24
-- PR_SET_DUMPABLE = 0x4
-- PR_SET_ENDIAN = 0x14
-- PR_SET_FPEMU = 0xa
-- PR_SET_FPEXC = 0xc
-- PR_SET_FP_MODE = 0x2d
-- PR_SET_KEEPCAPS = 0x8
-- PR_SET_MM = 0x23
-- PR_SET_MM_ARG_END = 0x9
-- PR_SET_MM_ARG_START = 0x8
-- PR_SET_MM_AUXV = 0xc
-- PR_SET_MM_BRK = 0x7
-- PR_SET_MM_END_CODE = 0x2
-- PR_SET_MM_END_DATA = 0x4
-- PR_SET_MM_ENV_END = 0xb
-- PR_SET_MM_ENV_START = 0xa
-- PR_SET_MM_EXE_FILE = 0xd
-- PR_SET_MM_MAP = 0xe
-- PR_SET_MM_MAP_SIZE = 0xf
-- PR_SET_MM_START_BRK = 0x6
-- PR_SET_MM_START_CODE = 0x1
-- PR_SET_MM_START_DATA = 0x3
-- PR_SET_MM_START_STACK = 0x5
-- PR_SET_NAME = 0xf
-- PR_SET_NO_NEW_PRIVS = 0x26
-- PR_SET_PDEATHSIG = 0x1
-- PR_SET_PTRACER = 0x59616d61
-- PR_SET_PTRACER_ANY = -0x1
-- PR_SET_SECCOMP = 0x16
-- PR_SET_SECUREBITS = 0x1c
-- PR_SET_THP_DISABLE = 0x29
-- PR_SET_TIMERSLACK = 0x1d
-- PR_SET_TIMING = 0xe
-- PR_SET_TSC = 0x1a
-- PR_SET_UNALIGN = 0x6
-- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
-- PR_TASK_PERF_EVENTS_ENABLE = 0x20
-- PR_TIMING_STATISTICAL = 0x0
-- PR_TIMING_TIMESTAMP = 0x1
-- PR_TSC_ENABLE = 0x1
-- PR_TSC_SIGSEGV = 0x2
-- PR_UNALIGN_NOPRINT = 0x1
-- PR_UNALIGN_SIGBUS = 0x2
-- PTRACE_ARCH_PRCTL = 0x1e
-- PTRACE_ATTACH = 0x10
-- PTRACE_CONT = 0x7
-- PTRACE_DETACH = 0x11
-- PTRACE_EVENT_CLONE = 0x3
-- PTRACE_EVENT_EXEC = 0x4
-- PTRACE_EVENT_EXIT = 0x6
-- PTRACE_EVENT_FORK = 0x1
-- PTRACE_EVENT_SECCOMP = 0x7
-- PTRACE_EVENT_STOP = 0x80
-- PTRACE_EVENT_VFORK = 0x2
-- PTRACE_EVENT_VFORK_DONE = 0x5
-- PTRACE_GETEVENTMSG = 0x4201
-- PTRACE_GETFPREGS = 0xe
-- PTRACE_GETFPXREGS = 0x12
-- PTRACE_GETREGS = 0xc
-- PTRACE_GETREGSET = 0x4204
-- PTRACE_GETSIGINFO = 0x4202
-- PTRACE_GETSIGMASK = 0x420a
-- PTRACE_GET_THREAD_AREA = 0x19
-- PTRACE_INTERRUPT = 0x4207
-- PTRACE_KILL = 0x8
-- PTRACE_LISTEN = 0x4208
-- PTRACE_OLDSETOPTIONS = 0x15
-- PTRACE_O_EXITKILL = 0x100000
-- PTRACE_O_MASK = 0x3000ff
-- PTRACE_O_SUSPEND_SECCOMP = 0x200000
-- PTRACE_O_TRACECLONE = 0x8
-- PTRACE_O_TRACEEXEC = 0x10
-- PTRACE_O_TRACEEXIT = 0x40
-- PTRACE_O_TRACEFORK = 0x2
-- PTRACE_O_TRACESECCOMP = 0x80
-- PTRACE_O_TRACESYSGOOD = 0x1
-- PTRACE_O_TRACEVFORK = 0x4
-- PTRACE_O_TRACEVFORKDONE = 0x20
-- PTRACE_PEEKDATA = 0x2
-- PTRACE_PEEKSIGINFO = 0x4209
-- PTRACE_PEEKSIGINFO_SHARED = 0x1
-- PTRACE_PEEKTEXT = 0x1
-- PTRACE_PEEKUSR = 0x3
-- PTRACE_POKEDATA = 0x5
-- PTRACE_POKETEXT = 0x4
-- PTRACE_POKEUSR = 0x6
-- PTRACE_SECCOMP_GET_FILTER = 0x420c
-- PTRACE_SEIZE = 0x4206
-- PTRACE_SETFPREGS = 0xf
-- PTRACE_SETFPXREGS = 0x13
-- PTRACE_SETOPTIONS = 0x4200
-- PTRACE_SETREGS = 0xd
-- PTRACE_SETREGSET = 0x4205
-- PTRACE_SETSIGINFO = 0x4203
-- PTRACE_SETSIGMASK = 0x420b
-- PTRACE_SET_THREAD_AREA = 0x1a
-- PTRACE_SINGLEBLOCK = 0x21
-- PTRACE_SINGLESTEP = 0x9
-- PTRACE_SYSCALL = 0x18
-- PTRACE_SYSEMU = 0x1f
-- PTRACE_SYSEMU_SINGLESTEP = 0x20
-- PTRACE_TRACEME = 0x0
-- RLIMIT_AS = 0x9
-- RLIMIT_CORE = 0x4
-- RLIMIT_CPU = 0x0
-- RLIMIT_DATA = 0x2
-- RLIMIT_FSIZE = 0x1
-- RLIMIT_LOCKS = 0xa
-- RLIMIT_MEMLOCK = 0x8
-- RLIMIT_MSGQUEUE = 0xc
-- RLIMIT_NICE = 0xd
-- RLIMIT_NOFILE = 0x7
-- RLIMIT_NPROC = 0x6
-- RLIMIT_RSS = 0x5
-- RLIMIT_RTPRIO = 0xe
-- RLIMIT_RTTIME = 0xf
-- RLIMIT_SIGPENDING = 0xb
-- RLIMIT_STACK = 0x3
-- RLIM_INFINITY = -0x1
-- RTAX_ADVMSS = 0x8
-- RTAX_CC_ALGO = 0x10
-- RTAX_CWND = 0x7
-- RTAX_FEATURES = 0xc
-- RTAX_FEATURE_ALLFRAG = 0x8
-- RTAX_FEATURE_ECN = 0x1
-- RTAX_FEATURE_MASK = 0xf
-- RTAX_FEATURE_SACK = 0x2
-- RTAX_FEATURE_TIMESTAMP = 0x4
-- RTAX_HOPLIMIT = 0xa
-- RTAX_INITCWND = 0xb
-- RTAX_INITRWND = 0xe
-- RTAX_LOCK = 0x1
-- RTAX_MAX = 0x10
-- RTAX_MTU = 0x2
-- RTAX_QUICKACK = 0xf
-- RTAX_REORDERING = 0x9
-- RTAX_RTO_MIN = 0xd
-- RTAX_RTT = 0x4
-- RTAX_RTTVAR = 0x5
-- RTAX_SSTHRESH = 0x6
-- RTAX_UNSPEC = 0x0
-- RTAX_WINDOW = 0x3
-- RTA_ALIGNTO = 0x4
-- RTA_MAX = 0x19
-- RTCF_DIRECTSRC = 0x4000000
-- RTCF_DOREDIRECT = 0x1000000
-- RTCF_LOG = 0x2000000
-- RTCF_MASQ = 0x400000
-- RTCF_NAT = 0x800000
-- RTCF_VALVE = 0x200000
-- RTF_ADDRCLASSMASK = 0xf8000000
-- RTF_ADDRCONF = 0x40000
-- RTF_ALLONLINK = 0x20000
-- RTF_BROADCAST = 0x10000000
-- RTF_CACHE = 0x1000000
-- RTF_DEFAULT = 0x10000
-- RTF_DYNAMIC = 0x10
-- RTF_FLOW = 0x2000000
-- RTF_GATEWAY = 0x2
-- RTF_HOST = 0x4
-- RTF_INTERFACE = 0x40000000
-- RTF_IRTT = 0x100
-- RTF_LINKRT = 0x100000
-- RTF_LOCAL = 0x80000000
-- RTF_MODIFIED = 0x20
-- RTF_MSS = 0x40
-- RTF_MTU = 0x40
-- RTF_MULTICAST = 0x20000000
-- RTF_NAT = 0x8000000
-- RTF_NOFORWARD = 0x1000
-- RTF_NONEXTHOP = 0x200000
-- RTF_NOPMTUDISC = 0x4000
-- RTF_POLICY = 0x4000000
-- RTF_REINSTATE = 0x8
-- RTF_REJECT = 0x200
-- RTF_STATIC = 0x400
-- RTF_THROW = 0x2000
-- RTF_UP = 0x1
-- RTF_WINDOW = 0x80
-- RTF_XRESOLVE = 0x800
-- RTM_BASE = 0x10
-- RTM_DELACTION = 0x31
-- RTM_DELADDR = 0x15
-- RTM_DELADDRLABEL = 0x49
-- RTM_DELLINK = 0x11
-- RTM_DELMDB = 0x55
-- RTM_DELNEIGH = 0x1d
-- RTM_DELNSID = 0x59
-- RTM_DELQDISC = 0x25
-- RTM_DELROUTE = 0x19
-- RTM_DELRULE = 0x21
-- RTM_DELTCLASS = 0x29
-- RTM_DELTFILTER = 0x2d
-- RTM_F_CLONED = 0x200
-- RTM_F_EQUALIZE = 0x400
-- RTM_F_LOOKUP_TABLE = 0x1000
-- RTM_F_NOTIFY = 0x100
-- RTM_F_PREFIX = 0x800
-- RTM_GETACTION = 0x32
-- RTM_GETADDR = 0x16
-- RTM_GETADDRLABEL = 0x4a
-- RTM_GETANYCAST = 0x3e
-- RTM_GETDCB = 0x4e
-- RTM_GETLINK = 0x12
-- RTM_GETMDB = 0x56
-- RTM_GETMULTICAST = 0x3a
-- RTM_GETNEIGH = 0x1e
-- RTM_GETNEIGHTBL = 0x42
-- RTM_GETNETCONF = 0x52
-- RTM_GETNSID = 0x5a
-- RTM_GETQDISC = 0x26
-- RTM_GETROUTE = 0x1a
-- RTM_GETRULE = 0x22
-- RTM_GETSTATS = 0x5e
-- RTM_GETTCLASS = 0x2a
-- RTM_GETTFILTER = 0x2e
-- RTM_MAX = 0x5f
-- RTM_NEWACTION = 0x30
-- RTM_NEWADDR = 0x14
-- RTM_NEWADDRLABEL = 0x48
-- RTM_NEWLINK = 0x10
-- RTM_NEWMDB = 0x54
-- RTM_NEWNDUSEROPT = 0x44
-- RTM_NEWNEIGH = 0x1c
-- RTM_NEWNEIGHTBL = 0x40
-- RTM_NEWNETCONF = 0x50
-- RTM_NEWNSID = 0x58
-- RTM_NEWPREFIX = 0x34
-- RTM_NEWQDISC = 0x24
-- RTM_NEWROUTE = 0x18
-- RTM_NEWRULE = 0x20
-- RTM_NEWSTATS = 0x5c
-- RTM_NEWTCLASS = 0x28
-- RTM_NEWTFILTER = 0x2c
-- RTM_NR_FAMILIES = 0x14
-- RTM_NR_MSGTYPES = 0x50
-- RTM_SETDCB = 0x4f
-- RTM_SETLINK = 0x13
-- RTM_SETNEIGHTBL = 0x43
-- RTNH_ALIGNTO = 0x4
-- RTNH_COMPARE_MASK = 0x19
-- RTNH_F_DEAD = 0x1
-- RTNH_F_LINKDOWN = 0x10
-- RTNH_F_OFFLOAD = 0x8
-- RTNH_F_ONLINK = 0x4
-- RTNH_F_PERVASIVE = 0x2
-- RTN_MAX = 0xb
-- RTPROT_BABEL = 0x2a
-- RTPROT_BIRD = 0xc
-- RTPROT_BOOT = 0x3
-- RTPROT_DHCP = 0x10
-- RTPROT_DNROUTED = 0xd
-- RTPROT_GATED = 0x8
-- RTPROT_KERNEL = 0x2
-- RTPROT_MROUTED = 0x11
-- RTPROT_MRT = 0xa
-- RTPROT_NTK = 0xf
-- RTPROT_RA = 0x9
-- RTPROT_REDIRECT = 0x1
-- RTPROT_STATIC = 0x4
-- RTPROT_UNSPEC = 0x0
-- RTPROT_XORP = 0xe
-- RTPROT_ZEBRA = 0xb
-- RT_CLASS_DEFAULT = 0xfd
-- RT_CLASS_LOCAL = 0xff
-- RT_CLASS_MAIN = 0xfe
-- RT_CLASS_MAX = 0xff
-- RT_CLASS_UNSPEC = 0x0
-- RUSAGE_CHILDREN = -0x1
-- RUSAGE_SELF = 0x0
-- RUSAGE_THREAD = 0x1
-- SCM_CREDENTIALS = 0x2
-- SCM_RIGHTS = 0x1
-- SCM_TIMESTAMP = 0x1d
-- SCM_TIMESTAMPING = 0x25
-- SCM_TIMESTAMPING_OPT_STATS = 0x36
-- SCM_TIMESTAMPNS = 0x23
-- SCM_WIFI_STATUS = 0x29
-- SECCOMP_MODE_DISABLED = 0x0
-- SECCOMP_MODE_FILTER = 0x2
-- SECCOMP_MODE_STRICT = 0x1
-- SHUT_RD = 0x0
-- SHUT_RDWR = 0x2
-- SHUT_WR = 0x1
-- SIOCADDDLCI = 0x8980
-- SIOCADDMULTI = 0x8931
-- SIOCADDRT = 0x890b
-- SIOCATMARK = 0x8905
-- SIOCBONDCHANGEACTIVE = 0x8995
-- SIOCBONDENSLAVE = 0x8990
-- SIOCBONDINFOQUERY = 0x8994
-- SIOCBONDRELEASE = 0x8991
-- SIOCBONDSETHWADDR = 0x8992
-- SIOCBONDSLAVEINFOQUERY = 0x8993
-- SIOCBRADDBR = 0x89a0
-- SIOCBRADDIF = 0x89a2
-- SIOCBRDELBR = 0x89a1
-- SIOCBRDELIF = 0x89a3
-- SIOCDARP = 0x8953
-- SIOCDELDLCI = 0x8981
-- SIOCDELMULTI = 0x8932
-- SIOCDELRT = 0x890c
-- SIOCDEVPRIVATE = 0x89f0
-- SIOCDIFADDR = 0x8936
-- SIOCDRARP = 0x8960
-- SIOCETHTOOL = 0x8946
-- SIOCGARP = 0x8954
-- SIOCGHWTSTAMP = 0x89b1
-- SIOCGIFADDR = 0x8915
-- SIOCGIFBR = 0x8940
-- SIOCGIFBRDADDR = 0x8919
-- SIOCGIFCONF = 0x8912
-- SIOCGIFCOUNT = 0x8938
-- SIOCGIFDSTADDR = 0x8917
-- SIOCGIFENCAP = 0x8925
-- SIOCGIFFLAGS = 0x8913
-- SIOCGIFHWADDR = 0x8927
-- SIOCGIFINDEX = 0x8933
-- SIOCGIFMAP = 0x8970
-- SIOCGIFMEM = 0x891f
-- SIOCGIFMETRIC = 0x891d
-- SIOCGIFMTU = 0x8921
-- SIOCGIFNAME = 0x8910
-- SIOCGIFNETMASK = 0x891b
-- SIOCGIFPFLAGS = 0x8935
-- SIOCGIFSLAVE = 0x8929
-- SIOCGIFTXQLEN = 0x8942
-- SIOCGIFVLAN = 0x8982
-- SIOCGMIIPHY = 0x8947
-- SIOCGMIIREG = 0x8948
-- SIOCGPGRP = 0x8904
-- SIOCGRARP = 0x8961
-- SIOCGSKNS = 0x894c
-- SIOCGSTAMP = 0x8906
-- SIOCGSTAMPNS = 0x8907
-- SIOCINQ = 0x541b
-- SIOCOUTQ = 0x5411
-- SIOCOUTQNSD = 0x894b
-- SIOCPROTOPRIVATE = 0x89e0
-- SIOCRTMSG = 0x890d
-- SIOCSARP = 0x8955
-- SIOCSHWTSTAMP = 0x89b0
-- SIOCSIFADDR = 0x8916
-- SIOCSIFBR = 0x8941
-- SIOCSIFBRDADDR = 0x891a
-- SIOCSIFDSTADDR = 0x8918
-- SIOCSIFENCAP = 0x8926
-- SIOCSIFFLAGS = 0x8914
-- SIOCSIFHWADDR = 0x8924
-- SIOCSIFHWBROADCAST = 0x8937
-- SIOCSIFLINK = 0x8911
-- SIOCSIFMAP = 0x8971
-- SIOCSIFMEM = 0x8920
-- SIOCSIFMETRIC = 0x891e
-- SIOCSIFMTU = 0x8922
-- SIOCSIFNAME = 0x8923
-- SIOCSIFNETMASK = 0x891c
-- SIOCSIFPFLAGS = 0x8934
-- SIOCSIFSLAVE = 0x8930
-- SIOCSIFTXQLEN = 0x8943
-- SIOCSIFVLAN = 0x8983
-- SIOCSMIIREG = 0x8949
-- SIOCSPGRP = 0x8902
-- SIOCSRARP = 0x8962
-- SIOCWANDEV = 0x894a
-- SOCK_CLOEXEC = 0x80000
-- SOCK_DCCP = 0x6
-- SOCK_DGRAM = 0x2
-- SOCK_IOC_TYPE = 0x89
-- SOCK_NONBLOCK = 0x800
-- SOCK_PACKET = 0xa
-- SOCK_RAW = 0x3
-- SOCK_RDM = 0x4
-- SOCK_SEQPACKET = 0x5
-- SOCK_STREAM = 0x1
-- SOL_AAL = 0x109
-- SOL_ALG = 0x117
-- SOL_ATM = 0x108
-- SOL_CAIF = 0x116
-- SOL_CAN_BASE = 0x64
-- SOL_DCCP = 0x10d
-- SOL_DECNET = 0x105
-- SOL_ICMPV6 = 0x3a
-- SOL_IP = 0x0
-- SOL_IPV6 = 0x29
-- SOL_IRDA = 0x10a
-- SOL_IUCV = 0x115
-- SOL_KCM = 0x119
-- SOL_LLC = 0x10c
-- SOL_NETBEUI = 0x10b
-- SOL_NETLINK = 0x10e
-- SOL_NFC = 0x118
-- SOL_PACKET = 0x107
-- SOL_PNPIPE = 0x113
-- SOL_PPPOL2TP = 0x111
-- SOL_RAW = 0xff
-- SOL_RDS = 0x114
-- SOL_RXRPC = 0x110
-- SOL_SOCKET = 0x1
-- SOL_TCP = 0x6
-- SOL_TIPC = 0x10f
-- SOL_X25 = 0x106
-- SOMAXCONN = 0x80
-- SO_ACCEPTCONN = 0x1e
-- SO_ATTACH_BPF = 0x32
-- SO_ATTACH_FILTER = 0x1a
-- SO_ATTACH_REUSEPORT_CBPF = 0x33
-- SO_ATTACH_REUSEPORT_EBPF = 0x34
-- SO_BINDTODEVICE = 0x19
-- SO_BPF_EXTENSIONS = 0x30
-- SO_BROADCAST = 0x6
-- SO_BSDCOMPAT = 0xe
-- SO_BUSY_POLL = 0x2e
-- SO_CNX_ADVICE = 0x35
-- SO_DEBUG = 0x1
-- SO_DETACH_BPF = 0x1b
-- SO_DETACH_FILTER = 0x1b
-- SO_DOMAIN = 0x27
-- SO_DONTROUTE = 0x5
-- SO_ERROR = 0x4
-- SO_GET_FILTER = 0x1a
-- SO_INCOMING_CPU = 0x31
-- SO_KEEPALIVE = 0x9
-- SO_LINGER = 0xd
-- SO_LOCK_FILTER = 0x2c
-- SO_MARK = 0x24
-- SO_MAX_PACING_RATE = 0x2f
-- SO_NOFCS = 0x2b
-- SO_NO_CHECK = 0xb
-- SO_OOBINLINE = 0xa
-- SO_PASSCRED = 0x10
-- SO_PASSSEC = 0x22
-- SO_PEEK_OFF = 0x2a
-- SO_PEERCRED = 0x11
-- SO_PEERNAME = 0x1c
-- SO_PEERSEC = 0x1f
-- SO_PRIORITY = 0xc
-- SO_PROTOCOL = 0x26
-- SO_RCVBUF = 0x8
-- SO_RCVBUFFORCE = 0x21
-- SO_RCVLOWAT = 0x12
-- SO_RCVTIMEO = 0x14
-- SO_REUSEADDR = 0x2
-- SO_REUSEPORT = 0xf
-- SO_RXQ_OVFL = 0x28
-- SO_SECURITY_AUTHENTICATION = 0x16
-- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-- SO_SELECT_ERR_QUEUE = 0x2d
-- SO_SNDBUF = 0x7
-- SO_SNDBUFFORCE = 0x20
-- SO_SNDLOWAT = 0x13
-- SO_SNDTIMEO = 0x15
-- SO_TIMESTAMP = 0x1d
-- SO_TIMESTAMPING = 0x25
-- SO_TIMESTAMPNS = 0x23
-- SO_TYPE = 0x3
-- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
-- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
-- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
-- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
-- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
-- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
-- SO_VM_SOCKETS_TRUSTED = 0x5
-- SO_WIFI_STATUS = 0x29
-- SPLICE_F_GIFT = 0x8
-- SPLICE_F_MORE = 0x4
-- SPLICE_F_MOVE = 0x1
-- SPLICE_F_NONBLOCK = 0x2
-- S_BLKSIZE = 0x200
-- S_IEXEC = 0x40
-- S_IFBLK = 0x6000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFIFO = 0x1000
-- S_IFLNK = 0xa000
-- S_IFMT = 0xf000
-- S_IFREG = 0x8000
-- S_IFSOCK = 0xc000
-- S_IREAD = 0x100
-- S_IRGRP = 0x20
-- S_IROTH = 0x4
-- S_IRUSR = 0x100
-- S_IRWXG = 0x38
-- S_IRWXO = 0x7
-- S_IRWXU = 0x1c0
-- S_ISGID = 0x400
-- S_ISUID = 0x800
-- S_ISVTX = 0x200
-- S_IWGRP = 0x10
-- S_IWOTH = 0x2
-- S_IWRITE = 0x80
-- S_IWUSR = 0x80
-- S_IXGRP = 0x8
-- S_IXOTH = 0x1
-- S_IXUSR = 0x40
-- TAB0 = 0x0
-- TAB1 = 0x800
-- TAB2 = 0x1000
-- TAB3 = 0x1800
-- TABDLY = 0x1800
-- TASKSTATS_CMD_ATTR_MAX = 0x4
-- TASKSTATS_CMD_MAX = 0x2
-- TASKSTATS_GENL_NAME = "TASKSTATS"
-- TASKSTATS_GENL_VERSION = 0x1
-- TASKSTATS_TYPE_MAX = 0x6
-- TASKSTATS_VERSION = 0x8
-- TCFLSH = 0x540b
-- TCGETA = 0x5405
-- TCGETS = 0x5401
-- TCGETS2 = 0x802c542a
-- TCGETX = 0x5432
-- TCIFLUSH = 0x0
-- TCIOFF = 0x2
-- TCIOFLUSH = 0x2
-- TCION = 0x3
-- TCOFLUSH = 0x1
-- TCOOFF = 0x0
-- TCOON = 0x1
-- TCP_CC_INFO = 0x1a
-- TCP_CONGESTION = 0xd
-- TCP_COOKIE_IN_ALWAYS = 0x1
-- TCP_COOKIE_MAX = 0x10
-- TCP_COOKIE_MIN = 0x8
-- TCP_COOKIE_OUT_NEVER = 0x2
-- TCP_COOKIE_PAIR_SIZE = 0x20
-- TCP_COOKIE_TRANSACTIONS = 0xf
-- TCP_CORK = 0x3
-- TCP_DEFER_ACCEPT = 0x9
-- TCP_FASTOPEN = 0x17
-- TCP_INFO = 0xb
-- TCP_KEEPCNT = 0x6
-- TCP_KEEPIDLE = 0x4
-- TCP_KEEPINTVL = 0x5
-- TCP_LINGER2 = 0x8
-- TCP_MAXSEG = 0x2
-- TCP_MAXWIN = 0xffff
-- TCP_MAX_WINSHIFT = 0xe
-- TCP_MD5SIG = 0xe
-- TCP_MD5SIG_MAXKEYLEN = 0x50
-- TCP_MSS = 0x200
-- TCP_MSS_DEFAULT = 0x218
-- TCP_MSS_DESIRED = 0x4c4
-- TCP_NODELAY = 0x1
-- TCP_NOTSENT_LOWAT = 0x19
-- TCP_QUEUE_SEQ = 0x15
-- TCP_QUICKACK = 0xc
-- TCP_REPAIR = 0x13
-- TCP_REPAIR_OPTIONS = 0x16
-- TCP_REPAIR_QUEUE = 0x14
-- TCP_REPAIR_WINDOW = 0x1d
-- TCP_SAVED_SYN = 0x1c
-- TCP_SAVE_SYN = 0x1b
-- TCP_SYNCNT = 0x7
-- TCP_S_DATA_IN = 0x4
-- TCP_S_DATA_OUT = 0x8
-- TCP_THIN_DUPACK = 0x11
-- TCP_THIN_LINEAR_TIMEOUTS = 0x10
-- TCP_TIMESTAMP = 0x18
-- TCP_USER_TIMEOUT = 0x12
-- TCP_WINDOW_CLAMP = 0xa
-- TCSAFLUSH = 0x2
-- TCSBRK = 0x5409
-- TCSBRKP = 0x5425
-- TCSETA = 0x5406
-- TCSETAF = 0x5408
-- TCSETAW = 0x5407
-- TCSETS = 0x5402
-- TCSETS2 = 0x402c542b
-- TCSETSF = 0x5404
-- TCSETSF2 = 0x402c542d
-- TCSETSW = 0x5403
-- TCSETSW2 = 0x402c542c
-- TCSETX = 0x5433
-- TCSETXF = 0x5434
-- TCSETXW = 0x5435
-- TCXONC = 0x540a
-- TIOCCBRK = 0x5428
-- TIOCCONS = 0x541d
-- TIOCEXCL = 0x540c
-- TIOCGDEV = 0x80045432
-- TIOCGETD = 0x5424
-- TIOCGEXCL = 0x80045440
-- TIOCGICOUNT = 0x545d
-- TIOCGLCKTRMIOS = 0x5456
-- TIOCGPGRP = 0x540f
-- TIOCGPKT = 0x80045438
-- TIOCGPTLCK = 0x80045439
-- TIOCGPTN = 0x80045430
-- TIOCGRS485 = 0x542e
-- TIOCGSERIAL = 0x541e
-- TIOCGSID = 0x5429
-- TIOCGSOFTCAR = 0x5419
-- TIOCGWINSZ = 0x5413
-- TIOCINQ = 0x541b
-- TIOCLINUX = 0x541c
-- TIOCMBIC = 0x5417
-- TIOCMBIS = 0x5416
-- TIOCMGET = 0x5415
-- TIOCMIWAIT = 0x545c
-- TIOCMSET = 0x5418
-- TIOCM_CAR = 0x40
-- TIOCM_CD = 0x40
-- TIOCM_CTS = 0x20
-- TIOCM_DSR = 0x100
-- TIOCM_DTR = 0x2
-- TIOCM_LE = 0x1
-- TIOCM_RI = 0x80
-- TIOCM_RNG = 0x80
-- TIOCM_RTS = 0x4
-- TIOCM_SR = 0x10
-- TIOCM_ST = 0x8
-- TIOCNOTTY = 0x5422
-- TIOCNXCL = 0x540d
-- TIOCOUTQ = 0x5411
-- TIOCPKT = 0x5420
-- TIOCPKT_DATA = 0x0
-- TIOCPKT_DOSTOP = 0x20
-- TIOCPKT_FLUSHREAD = 0x1
-- TIOCPKT_FLUSHWRITE = 0x2
-- TIOCPKT_IOCTL = 0x40
-- TIOCPKT_NOSTOP = 0x10
-- TIOCPKT_START = 0x8
-- TIOCPKT_STOP = 0x4
-- TIOCSBRK = 0x5427
-- TIOCSCTTY = 0x540e
-- TIOCSERCONFIG = 0x5453
-- TIOCSERGETLSR = 0x5459
-- TIOCSERGETMULTI = 0x545a
-- TIOCSERGSTRUCT = 0x5458
-- TIOCSERGWILD = 0x5454
-- TIOCSERSETMULTI = 0x545b
-- TIOCSERSWILD = 0x5455
-- TIOCSER_TEMT = 0x1
-- TIOCSETD = 0x5423
-- TIOCSIG = 0x40045436
-- TIOCSLCKTRMIOS = 0x5457
-- TIOCSPGRP = 0x5410
-- TIOCSPTLCK = 0x40045431
-- TIOCSRS485 = 0x542f
-- TIOCSSERIAL = 0x541f
-- TIOCSSOFTCAR = 0x541a
-- TIOCSTI = 0x5412
-- TIOCSWINSZ = 0x5414
-- TIOCVHANGUP = 0x5437
-- TOSTOP = 0x100
-- TS_COMM_LEN = 0x20
-- TUNATTACHFILTER = 0x401054d5
-- TUNDETACHFILTER = 0x401054d6
-- TUNGETFEATURES = 0x800454cf
-- TUNGETFILTER = 0x801054db
-- TUNGETIFF = 0x800454d2
-- TUNGETSNDBUF = 0x800454d3
-- TUNGETVNETBE = 0x800454df
-- TUNGETVNETHDRSZ = 0x800454d7
-- TUNGETVNETLE = 0x800454dd
-- TUNSETDEBUG = 0x400454c9
-- TUNSETGROUP = 0x400454ce
-- TUNSETIFF = 0x400454ca
-- TUNSETIFINDEX = 0x400454da
-- TUNSETLINK = 0x400454cd
-- TUNSETNOCSUM = 0x400454c8
-- TUNSETOFFLOAD = 0x400454d0
-- TUNSETOWNER = 0x400454cc
-- TUNSETPERSIST = 0x400454cb
-- TUNSETQUEUE = 0x400454d9
-- TUNSETSNDBUF = 0x400454d4
-- TUNSETTXFILTER = 0x400454d1
-- TUNSETVNETBE = 0x400454de
-- TUNSETVNETHDRSZ = 0x400454d8
-- TUNSETVNETLE = 0x400454dc
-- UMOUNT_NOFOLLOW = 0x8
-- VDISCARD = 0xd
-- VEOF = 0x4
-- VEOL = 0xb
-- VEOL2 = 0x10
-- VERASE = 0x2
-- VINTR = 0x0
-- VKILL = 0x3
-- VLNEXT = 0xf
-- VMADDR_CID_ANY = 0xffffffff
-- VMADDR_CID_HOST = 0x2
-- VMADDR_CID_HYPERVISOR = 0x0
-- VMADDR_CID_RESERVED = 0x1
-- VMADDR_PORT_ANY = 0xffffffff
-- VMIN = 0x6
-- VM_SOCKETS_INVALID_VERSION = 0xffffffff
-- VQUIT = 0x1
-- VREPRINT = 0xc
-- VSTART = 0x8
-- VSTOP = 0x9
-- VSUSP = 0xa
-- VSWTC = 0x7
-- VT0 = 0x0
-- VT1 = 0x4000
-- VTDLY = 0x4000
-- VTIME = 0x5
-- VWERASE = 0xe
-- WALL = 0x40000000
-- WCLONE = 0x80000000
-- WCONTINUED = 0x8
-- WEXITED = 0x4
-- WNOHANG = 0x1
-- WNOTHREAD = 0x20000000
-- WNOWAIT = 0x1000000
-- WORDSIZE = 0x40
-- WSTOPPED = 0x2
-- WUNTRACED = 0x2
-- XATTR_CREATE = 0x1
-- XATTR_REPLACE = 0x2
-- XCASE = 0x4
-- XTABS = 0x1800
-+ B1000000 = 0x1008
-+ B115200 = 0x1002
-+ B1152000 = 0x1009
-+ B1500000 = 0x100a
-+ B2000000 = 0x100b
-+ B230400 = 0x1003
-+ B2500000 = 0x100c
-+ B3000000 = 0x100d
-+ B3500000 = 0x100e
-+ B4000000 = 0x100f
-+ B460800 = 0x1004
-+ B500000 = 0x1005
-+ B57600 = 0x1001
-+ B576000 = 0x1006
-+ B921600 = 0x1007
-+ BLKBSZGET = 0x80081270
-+ BLKBSZSET = 0x40081271
-+ BLKFLSBUF = 0x1261
-+ BLKFRAGET = 0x1265
-+ BLKFRASET = 0x1264
-+ BLKGETSIZE = 0x1260
-+ BLKGETSIZE64 = 0x80081272
-+ BLKPBSZGET = 0x127b
-+ BLKRAGET = 0x1263
-+ BLKRASET = 0x1262
-+ BLKROGET = 0x125e
-+ BLKROSET = 0x125d
-+ BLKRRPART = 0x125f
-+ BLKSECTGET = 0x1267
-+ BLKSECTSET = 0x1266
-+ BLKSSZGET = 0x1268
-+ BOTHER = 0x1000
-+ BS1 = 0x2000
-+ BSDLY = 0x2000
-+ CBAUD = 0x100f
-+ CBAUDEX = 0x1000
-+ CIBAUD = 0x100f0000
-+ CLOCAL = 0x800
-+ CR1 = 0x200
-+ CR2 = 0x400
-+ CR3 = 0x600
-+ CRDLY = 0x600
-+ CREAD = 0x80
-+ CS6 = 0x10
-+ CS7 = 0x20
-+ CS8 = 0x30
-+ CSIZE = 0x30
-+ CSTOPB = 0x40
-+ ECHOCTL = 0x200
-+ ECHOE = 0x10
-+ ECHOK = 0x20
-+ ECHOKE = 0x800
-+ ECHONL = 0x40
-+ ECHOPRT = 0x400
-+ EFD_CLOEXEC = 0x80000
-+ EFD_NONBLOCK = 0x800
-+ EPOLL_CLOEXEC = 0x80000
-+ EXTPROC = 0x10000
-+ FF1 = 0x8000
-+ FFDLY = 0x8000
-+ FLUSHO = 0x1000
-+ FP_XSTATE_MAGIC2 = 0x46505845
-+ FS_IOC_ENABLE_VERITY = 0x40806685
-+ FS_IOC_GETFLAGS = 0x80086601
-+ FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
-+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
-+ FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
-+ F_GETLK = 0x5
-+ F_GETLK64 = 0x5
-+ F_GETOWN = 0x9
-+ F_RDLCK = 0x0
-+ F_SETLK = 0x6
-+ F_SETLK64 = 0x6
-+ F_SETLKW = 0x7
-+ F_SETLKW64 = 0x7
-+ F_SETOWN = 0x8
-+ F_UNLCK = 0x2
-+ F_WRLCK = 0x1
-+ HUPCL = 0x400
-+ ICANON = 0x2
-+ IEXTEN = 0x8000
-+ IN_CLOEXEC = 0x80000
-+ IN_NONBLOCK = 0x800
-+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x7b9
-+ ISIG = 0x1
-+ IUCLC = 0x200
-+ IXOFF = 0x1000
-+ IXON = 0x400
-+ MAP_32BIT = 0x40
-+ MAP_ANON = 0x20
-+ MAP_ANONYMOUS = 0x20
-+ MAP_DENYWRITE = 0x800
-+ MAP_EXECUTABLE = 0x1000
-+ MAP_GROWSDOWN = 0x100
-+ MAP_HUGETLB = 0x40000
-+ MAP_LOCKED = 0x2000
-+ MAP_NONBLOCK = 0x10000
-+ MAP_NORESERVE = 0x4000
-+ MAP_POPULATE = 0x8000
-+ MAP_STACK = 0x20000
-+ MAP_SYNC = 0x80000
-+ MCL_CURRENT = 0x1
-+ MCL_FUTURE = 0x2
-+ MCL_ONFAULT = 0x4
-+ NFDBITS = 0x40
-+ NLDLY = 0x100
-+ NOFLSH = 0x80
-+ NS_GET_NSTYPE = 0xb703
-+ NS_GET_OWNER_UID = 0xb704
-+ NS_GET_PARENT = 0xb702
-+ NS_GET_USERNS = 0xb701
-+ OLCUC = 0x2
-+ ONLCR = 0x4
-+ O_APPEND = 0x400
-+ O_ASYNC = 0x2000
-+ O_CLOEXEC = 0x80000
-+ O_CREAT = 0x40
-+ O_DIRECT = 0x4000
-+ O_DIRECTORY = 0x10000
-+ O_DSYNC = 0x1000
-+ O_EXCL = 0x80
-+ O_FSYNC = 0x101000
-+ O_LARGEFILE = 0x0
-+ O_NDELAY = 0x800
-+ O_NOATIME = 0x40000
-+ O_NOCTTY = 0x100
-+ O_NOFOLLOW = 0x20000
-+ O_NONBLOCK = 0x800
-+ O_PATH = 0x200000
-+ O_RSYNC = 0x101000
-+ O_SYNC = 0x101000
-+ O_TMPFILE = 0x410000
-+ O_TRUNC = 0x200
-+ PARENB = 0x100
-+ PARODD = 0x200
-+ PENDIN = 0x4000
-+ PERF_EVENT_IOC_DISABLE = 0x2401
-+ PERF_EVENT_IOC_ENABLE = 0x2400
-+ PERF_EVENT_IOC_ID = 0x80082407
-+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4008240b
-+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
-+ PERF_EVENT_IOC_PERIOD = 0x40082404
-+ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
-+ PERF_EVENT_IOC_REFRESH = 0x2402
-+ PERF_EVENT_IOC_RESET = 0x2403
-+ PERF_EVENT_IOC_SET_BPF = 0x40042408
-+ PERF_EVENT_IOC_SET_FILTER = 0x40082406
-+ PERF_EVENT_IOC_SET_OUTPUT = 0x2405
-+ PPPIOCATTACH = 0x4004743d
-+ PPPIOCATTCHAN = 0x40047438
-+ PPPIOCCONNECT = 0x4004743a
-+ PPPIOCDETACH = 0x4004743c
-+ PPPIOCDISCONN = 0x7439
-+ PPPIOCGASYNCMAP = 0x80047458
-+ PPPIOCGCHAN = 0x80047437
-+ PPPIOCGDEBUG = 0x80047441
-+ PPPIOCGFLAGS = 0x8004745a
-+ PPPIOCGIDLE = 0x8010743f
-+ PPPIOCGIDLE32 = 0x8008743f
-+ PPPIOCGIDLE64 = 0x8010743f
-+ PPPIOCGL2TPSTATS = 0x80487436
-+ PPPIOCGMRU = 0x80047453
-+ PPPIOCGRASYNCMAP = 0x80047455
-+ PPPIOCGUNIT = 0x80047456
-+ PPPIOCGXASYNCMAP = 0x80207450
-+ PPPIOCSACTIVE = 0x40107446
-+ PPPIOCSASYNCMAP = 0x40047457
-+ PPPIOCSCOMPRESS = 0x4010744d
-+ PPPIOCSDEBUG = 0x40047440
-+ PPPIOCSFLAGS = 0x40047459
-+ PPPIOCSMAXCID = 0x40047451
-+ PPPIOCSMRRU = 0x4004743b
-+ PPPIOCSMRU = 0x40047452
-+ PPPIOCSNPMODE = 0x4008744b
-+ PPPIOCSPASS = 0x40107447
-+ PPPIOCSRASYNCMAP = 0x40047454
-+ PPPIOCSXASYNCMAP = 0x4020744f
-+ PPPIOCXFERUNIT = 0x744e
-+ PR_SET_PTRACER_ANY = 0xffffffffffffffff
-+ PTRACE_ARCH_PRCTL = 0x1e
-+ PTRACE_GETFPREGS = 0xe
-+ PTRACE_GETFPXREGS = 0x12
-+ PTRACE_GET_THREAD_AREA = 0x19
-+ PTRACE_OLDSETOPTIONS = 0x15
-+ PTRACE_SETFPREGS = 0xf
-+ PTRACE_SETFPXREGS = 0x13
-+ PTRACE_SET_THREAD_AREA = 0x1a
-+ PTRACE_SINGLEBLOCK = 0x21
-+ PTRACE_SYSEMU = 0x1f
-+ PTRACE_SYSEMU_SINGLESTEP = 0x20
-+ RLIMIT_AS = 0x9
-+ RLIMIT_MEMLOCK = 0x8
-+ RLIMIT_NOFILE = 0x7
-+ RLIMIT_NPROC = 0x6
-+ RLIMIT_RSS = 0x5
-+ RNDADDENTROPY = 0x40085203
-+ RNDADDTOENTCNT = 0x40045201
-+ RNDCLEARPOOL = 0x5206
-+ RNDGETENTCNT = 0x80045200
-+ RNDGETPOOL = 0x80085202
-+ RNDRESEEDCRNG = 0x5207
-+ RNDZAPENTCNT = 0x5204
-+ RTC_AIE_OFF = 0x7002
-+ RTC_AIE_ON = 0x7001
-+ RTC_ALM_READ = 0x80247008
-+ RTC_ALM_SET = 0x40247007
-+ RTC_EPOCH_READ = 0x8008700d
-+ RTC_EPOCH_SET = 0x4008700e
-+ RTC_IRQP_READ = 0x8008700b
-+ RTC_IRQP_SET = 0x4008700c
-+ RTC_PIE_OFF = 0x7006
-+ RTC_PIE_ON = 0x7005
-+ RTC_PLL_GET = 0x80207011
-+ RTC_PLL_SET = 0x40207012
-+ RTC_RD_TIME = 0x80247009
-+ RTC_SET_TIME = 0x4024700a
-+ RTC_UIE_OFF = 0x7004
-+ RTC_UIE_ON = 0x7003
-+ RTC_VL_CLR = 0x7014
-+ RTC_VL_READ = 0x80047013
-+ RTC_WIE_OFF = 0x7010
-+ RTC_WIE_ON = 0x700f
-+ RTC_WKALM_RD = 0x80287010
-+ RTC_WKALM_SET = 0x4028700f
-+ SCM_TIMESTAMPING = 0x25
-+ SCM_TIMESTAMPING_OPT_STATS = 0x36
-+ SCM_TIMESTAMPING_PKTINFO = 0x3a
-+ SCM_TIMESTAMPNS = 0x23
-+ SCM_TXTIME = 0x3d
-+ SCM_WIFI_STATUS = 0x29
-+ SFD_CLOEXEC = 0x80000
-+ SFD_NONBLOCK = 0x800
-+ SIOCATMARK = 0x8905
-+ SIOCGPGRP = 0x8904
-+ SIOCGSTAMPNS_NEW = 0x80108907
-+ SIOCGSTAMP_NEW = 0x80108906
-+ SIOCINQ = 0x541b
-+ SIOCOUTQ = 0x5411
-+ SIOCSPGRP = 0x8902
-+ SOCK_CLOEXEC = 0x80000
-+ SOCK_DGRAM = 0x2
-+ SOCK_NONBLOCK = 0x800
-+ SOCK_STREAM = 0x1
-+ SOL_SOCKET = 0x1
-+ SO_ACCEPTCONN = 0x1e
-+ SO_ATTACH_BPF = 0x32
-+ SO_ATTACH_REUSEPORT_CBPF = 0x33
-+ SO_ATTACH_REUSEPORT_EBPF = 0x34
-+ SO_BINDTODEVICE = 0x19
-+ SO_BINDTOIFINDEX = 0x3e
-+ SO_BPF_EXTENSIONS = 0x30
-+ SO_BROADCAST = 0x6
-+ SO_BSDCOMPAT = 0xe
-+ SO_BUSY_POLL = 0x2e
-+ SO_CNX_ADVICE = 0x35
-+ SO_COOKIE = 0x39
-+ SO_DETACH_REUSEPORT_BPF = 0x44
-+ SO_DOMAIN = 0x27
-+ SO_DONTROUTE = 0x5
-+ SO_ERROR = 0x4
-+ SO_INCOMING_CPU = 0x31
-+ SO_INCOMING_NAPI_ID = 0x38
-+ SO_KEEPALIVE = 0x9
-+ SO_LINGER = 0xd
-+ SO_LOCK_FILTER = 0x2c
-+ SO_MARK = 0x24
-+ SO_MAX_PACING_RATE = 0x2f
-+ SO_MEMINFO = 0x37
-+ SO_NOFCS = 0x2b
-+ SO_OOBINLINE = 0xa
-+ SO_PASSCRED = 0x10
-+ SO_PASSSEC = 0x22
-+ SO_PEEK_OFF = 0x2a
-+ SO_PEERCRED = 0x11
-+ SO_PEERGROUPS = 0x3b
-+ SO_PEERSEC = 0x1f
-+ SO_PROTOCOL = 0x26
-+ SO_RCVBUF = 0x8
-+ SO_RCVBUFFORCE = 0x21
-+ SO_RCVLOWAT = 0x12
-+ SO_RCVTIMEO = 0x14
-+ SO_RCVTIMEO_NEW = 0x42
-+ SO_RCVTIMEO_OLD = 0x14
-+ SO_REUSEADDR = 0x2
-+ SO_REUSEPORT = 0xf
-+ SO_RXQ_OVFL = 0x28
-+ SO_SECURITY_AUTHENTICATION = 0x16
-+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-+ SO_SELECT_ERR_QUEUE = 0x2d
-+ SO_SNDBUF = 0x7
-+ SO_SNDBUFFORCE = 0x20
-+ SO_SNDLOWAT = 0x13
-+ SO_SNDTIMEO = 0x15
-+ SO_SNDTIMEO_NEW = 0x43
-+ SO_SNDTIMEO_OLD = 0x15
-+ SO_TIMESTAMPING = 0x25
-+ SO_TIMESTAMPING_NEW = 0x41
-+ SO_TIMESTAMPING_OLD = 0x25
-+ SO_TIMESTAMPNS = 0x23
-+ SO_TIMESTAMPNS_NEW = 0x40
-+ SO_TIMESTAMPNS_OLD = 0x23
-+ SO_TIMESTAMP_NEW = 0x3f
-+ SO_TXTIME = 0x3d
-+ SO_TYPE = 0x3
-+ SO_WIFI_STATUS = 0x29
-+ SO_ZEROCOPY = 0x3c
-+ TAB1 = 0x800
-+ TAB2 = 0x1000
-+ TAB3 = 0x1800
-+ TABDLY = 0x1800
-+ TCFLSH = 0x540b
-+ TCGETA = 0x5405
-+ TCGETS = 0x5401
-+ TCGETS2 = 0x802c542a
-+ TCGETX = 0x5432
-+ TCSAFLUSH = 0x2
-+ TCSBRK = 0x5409
-+ TCSBRKP = 0x5425
-+ TCSETA = 0x5406
-+ TCSETAF = 0x5408
-+ TCSETAW = 0x5407
-+ TCSETS = 0x5402
-+ TCSETS2 = 0x402c542b
-+ TCSETSF = 0x5404
-+ TCSETSF2 = 0x402c542d
-+ TCSETSW = 0x5403
-+ TCSETSW2 = 0x402c542c
-+ TCSETX = 0x5433
-+ TCSETXF = 0x5434
-+ TCSETXW = 0x5435
-+ TCXONC = 0x540a
-+ TIOCCBRK = 0x5428
-+ TIOCCONS = 0x541d
-+ TIOCEXCL = 0x540c
-+ TIOCGDEV = 0x80045432
-+ TIOCGETD = 0x5424
-+ TIOCGEXCL = 0x80045440
-+ TIOCGICOUNT = 0x545d
-+ TIOCGISO7816 = 0x80285442
-+ TIOCGLCKTRMIOS = 0x5456
-+ TIOCGPGRP = 0x540f
-+ TIOCGPKT = 0x80045438
-+ TIOCGPTLCK = 0x80045439
-+ TIOCGPTN = 0x80045430
-+ TIOCGPTPEER = 0x5441
-+ TIOCGRS485 = 0x542e
-+ TIOCGSERIAL = 0x541e
-+ TIOCGSID = 0x5429
-+ TIOCGSOFTCAR = 0x5419
-+ TIOCGWINSZ = 0x5413
-+ TIOCINQ = 0x541b
-+ TIOCLINUX = 0x541c
-+ TIOCMBIC = 0x5417
-+ TIOCMBIS = 0x5416
-+ TIOCMGET = 0x5415
-+ TIOCMIWAIT = 0x545c
-+ TIOCMSET = 0x5418
-+ TIOCM_CAR = 0x40
-+ TIOCM_CD = 0x40
-+ TIOCM_CTS = 0x20
-+ TIOCM_DSR = 0x100
-+ TIOCM_RI = 0x80
-+ TIOCM_RNG = 0x80
-+ TIOCM_SR = 0x10
-+ TIOCM_ST = 0x8
-+ TIOCNOTTY = 0x5422
-+ TIOCNXCL = 0x540d
-+ TIOCOUTQ = 0x5411
-+ TIOCPKT = 0x5420
-+ TIOCSBRK = 0x5427
-+ TIOCSCTTY = 0x540e
-+ TIOCSERCONFIG = 0x5453
-+ TIOCSERGETLSR = 0x5459
-+ TIOCSERGETMULTI = 0x545a
-+ TIOCSERGSTRUCT = 0x5458
-+ TIOCSERGWILD = 0x5454
-+ TIOCSERSETMULTI = 0x545b
-+ TIOCSERSWILD = 0x5455
-+ TIOCSER_TEMT = 0x1
-+ TIOCSETD = 0x5423
-+ TIOCSIG = 0x40045436
-+ TIOCSISO7816 = 0xc0285443
-+ TIOCSLCKTRMIOS = 0x5457
-+ TIOCSPGRP = 0x5410
-+ TIOCSPTLCK = 0x40045431
-+ TIOCSRS485 = 0x542f
-+ TIOCSSERIAL = 0x541f
-+ TIOCSSOFTCAR = 0x541a
-+ TIOCSTI = 0x5412
-+ TIOCSWINSZ = 0x5414
-+ TIOCVHANGUP = 0x5437
-+ TOSTOP = 0x100
-+ TUNATTACHFILTER = 0x401054d5
-+ TUNDETACHFILTER = 0x401054d6
-+ TUNGETDEVNETNS = 0x54e3
-+ TUNGETFEATURES = 0x800454cf
-+ TUNGETFILTER = 0x801054db
-+ TUNGETIFF = 0x800454d2
-+ TUNGETSNDBUF = 0x800454d3
-+ TUNGETVNETBE = 0x800454df
-+ TUNGETVNETHDRSZ = 0x800454d7
-+ TUNGETVNETLE = 0x800454dd
-+ TUNSETCARRIER = 0x400454e2
-+ TUNSETDEBUG = 0x400454c9
-+ TUNSETFILTEREBPF = 0x800454e1
-+ TUNSETGROUP = 0x400454ce
-+ TUNSETIFF = 0x400454ca
-+ TUNSETIFINDEX = 0x400454da
-+ TUNSETLINK = 0x400454cd
-+ TUNSETNOCSUM = 0x400454c8
-+ TUNSETOFFLOAD = 0x400454d0
-+ TUNSETOWNER = 0x400454cc
-+ TUNSETPERSIST = 0x400454cb
-+ TUNSETQUEUE = 0x400454d9
-+ TUNSETSNDBUF = 0x400454d4
-+ TUNSETSTEERINGEBPF = 0x800454e0
-+ TUNSETTXFILTER = 0x400454d1
-+ TUNSETVNETBE = 0x400454de
-+ TUNSETVNETHDRSZ = 0x400454d8
-+ TUNSETVNETLE = 0x400454dc
-+ UBI_IOCATT = 0x40186f40
-+ UBI_IOCDET = 0x40046f41
-+ UBI_IOCEBCH = 0x40044f02
-+ UBI_IOCEBER = 0x40044f01
-+ UBI_IOCEBISMAP = 0x80044f05
-+ UBI_IOCEBMAP = 0x40084f03
-+ UBI_IOCEBUNMAP = 0x40044f04
-+ UBI_IOCMKVOL = 0x40986f00
-+ UBI_IOCRMVOL = 0x40046f01
-+ UBI_IOCRNVOL = 0x51106f03
-+ UBI_IOCRPEB = 0x40046f04
-+ UBI_IOCRSVOL = 0x400c6f02
-+ UBI_IOCSETVOLPROP = 0x40104f06
-+ UBI_IOCSPEB = 0x40046f05
-+ UBI_IOCVOLCRBLK = 0x40804f07
-+ UBI_IOCVOLRMBLK = 0x4f08
-+ UBI_IOCVOLUP = 0x40084f00
-+ VDISCARD = 0xd
-+ VEOF = 0x4
-+ VEOL = 0xb
-+ VEOL2 = 0x10
-+ VMIN = 0x6
-+ VREPRINT = 0xc
-+ VSTART = 0x8
-+ VSTOP = 0x9
-+ VSUSP = 0xa
-+ VSWTC = 0x7
-+ VT1 = 0x4000
-+ VTDLY = 0x4000
-+ VTIME = 0x5
-+ VWERASE = 0xe
-+ WDIOC_GETBOOTSTATUS = 0x80045702
-+ WDIOC_GETPRETIMEOUT = 0x80045709
-+ WDIOC_GETSTATUS = 0x80045701
-+ WDIOC_GETSUPPORT = 0x80285700
-+ WDIOC_GETTEMP = 0x80045703
-+ WDIOC_GETTIMELEFT = 0x8004570a
-+ WDIOC_GETTIMEOUT = 0x80045707
-+ WDIOC_KEEPALIVE = 0x80045705
-+ WDIOC_SETOPTIONS = 0x80045704
-+ WORDSIZE = 0x40
-+ XCASE = 0x4
-+ XTABS = 0x1800
- )
-
- // Errors
- const (
-- E2BIG = syscall.Errno(0x7)
-- EACCES = syscall.Errno(0xd)
- EADDRINUSE = syscall.Errno(0x62)
- EADDRNOTAVAIL = syscall.Errno(0x63)
- EADV = syscall.Errno(0x44)
- EAFNOSUPPORT = syscall.Errno(0x61)
-- EAGAIN = syscall.Errno(0xb)
- EALREADY = syscall.Errno(0x72)
- EBADE = syscall.Errno(0x34)
-- EBADF = syscall.Errno(0x9)
- EBADFD = syscall.Errno(0x4d)
- EBADMSG = syscall.Errno(0x4a)
- EBADR = syscall.Errno(0x35)
- EBADRQC = syscall.Errno(0x38)
- EBADSLT = syscall.Errno(0x39)
- EBFONT = syscall.Errno(0x3b)
-- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x7d)
-- ECHILD = syscall.Errno(0xa)
- ECHRNG = syscall.Errno(0x2c)
- ECOMM = syscall.Errno(0x46)
- ECONNABORTED = syscall.Errno(0x67)
-@@ -1882,23 +500,15 @@ const (
- EDEADLK = syscall.Errno(0x23)
- EDEADLOCK = syscall.Errno(0x23)
- EDESTADDRREQ = syscall.Errno(0x59)
-- EDOM = syscall.Errno(0x21)
- EDOTDOT = syscall.Errno(0x49)
- EDQUOT = syscall.Errno(0x7a)
-- EEXIST = syscall.Errno(0x11)
-- EFAULT = syscall.Errno(0xe)
-- EFBIG = syscall.Errno(0x1b)
- EHOSTDOWN = syscall.Errno(0x70)
- EHOSTUNREACH = syscall.Errno(0x71)
- EHWPOISON = syscall.Errno(0x85)
- EIDRM = syscall.Errno(0x2b)
- EILSEQ = syscall.Errno(0x54)
- EINPROGRESS = syscall.Errno(0x73)
-- EINTR = syscall.Errno(0x4)
-- EINVAL = syscall.Errno(0x16)
-- EIO = syscall.Errno(0x5)
- EISCONN = syscall.Errno(0x6a)
-- EISDIR = syscall.Errno(0x15)
- EISNAM = syscall.Errno(0x78)
- EKEYEXPIRED = syscall.Errno(0x7f)
- EKEYREJECTED = syscall.Errno(0x81)
-@@ -1915,8 +525,6 @@ const (
- ELNRNG = syscall.Errno(0x30)
- ELOOP = syscall.Errno(0x28)
- EMEDIUMTYPE = syscall.Errno(0x7c)
-- EMFILE = syscall.Errno(0x18)
-- EMLINK = syscall.Errno(0x1f)
- EMSGSIZE = syscall.Errno(0x5a)
- EMULTIHOP = syscall.Errno(0x48)
- ENAMETOOLONG = syscall.Errno(0x24)
-@@ -1924,103 +532,70 @@ const (
- ENETDOWN = syscall.Errno(0x64)
- ENETRESET = syscall.Errno(0x66)
- ENETUNREACH = syscall.Errno(0x65)
-- ENFILE = syscall.Errno(0x17)
- ENOANO = syscall.Errno(0x37)
- ENOBUFS = syscall.Errno(0x69)
- ENOCSI = syscall.Errno(0x32)
- ENODATA = syscall.Errno(0x3d)
-- ENODEV = syscall.Errno(0x13)
-- ENOENT = syscall.Errno(0x2)
-- ENOEXEC = syscall.Errno(0x8)
- ENOKEY = syscall.Errno(0x7e)
- ENOLCK = syscall.Errno(0x25)
- ENOLINK = syscall.Errno(0x43)
- ENOMEDIUM = syscall.Errno(0x7b)
-- ENOMEM = syscall.Errno(0xc)
- ENOMSG = syscall.Errno(0x2a)
- ENONET = syscall.Errno(0x40)
- ENOPKG = syscall.Errno(0x41)
- ENOPROTOOPT = syscall.Errno(0x5c)
-- ENOSPC = syscall.Errno(0x1c)
- ENOSR = syscall.Errno(0x3f)
- ENOSTR = syscall.Errno(0x3c)
- ENOSYS = syscall.Errno(0x26)
-- ENOTBLK = syscall.Errno(0xf)
- ENOTCONN = syscall.Errno(0x6b)
-- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x27)
- ENOTNAM = syscall.Errno(0x76)
- ENOTRECOVERABLE = syscall.Errno(0x83)
- ENOTSOCK = syscall.Errno(0x58)
- ENOTSUP = syscall.Errno(0x5f)
-- ENOTTY = syscall.Errno(0x19)
- ENOTUNIQ = syscall.Errno(0x4c)
-- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x5f)
- EOVERFLOW = syscall.Errno(0x4b)
- EOWNERDEAD = syscall.Errno(0x82)
-- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x60)
-- EPIPE = syscall.Errno(0x20)
- EPROTO = syscall.Errno(0x47)
- EPROTONOSUPPORT = syscall.Errno(0x5d)
- EPROTOTYPE = syscall.Errno(0x5b)
-- ERANGE = syscall.Errno(0x22)
- EREMCHG = syscall.Errno(0x4e)
- EREMOTE = syscall.Errno(0x42)
- EREMOTEIO = syscall.Errno(0x79)
- ERESTART = syscall.Errno(0x55)
- ERFKILL = syscall.Errno(0x84)
-- EROFS = syscall.Errno(0x1e)
- ESHUTDOWN = syscall.Errno(0x6c)
- ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-- ESPIPE = syscall.Errno(0x1d)
-- ESRCH = syscall.Errno(0x3)
- ESRMNT = syscall.Errno(0x45)
- ESTALE = syscall.Errno(0x74)
- ESTRPIPE = syscall.Errno(0x56)
- ETIME = syscall.Errno(0x3e)
- ETIMEDOUT = syscall.Errno(0x6e)
- ETOOMANYREFS = syscall.Errno(0x6d)
-- ETXTBSY = syscall.Errno(0x1a)
- EUCLEAN = syscall.Errno(0x75)
- EUNATCH = syscall.Errno(0x31)
- EUSERS = syscall.Errno(0x57)
-- EWOULDBLOCK = syscall.Errno(0xb)
-- EXDEV = syscall.Errno(0x12)
- EXFULL = syscall.Errno(0x36)
- )
-
- // Signals
- const (
-- SIGABRT = syscall.Signal(0x6)
-- SIGALRM = syscall.Signal(0xe)
- SIGBUS = syscall.Signal(0x7)
- SIGCHLD = syscall.Signal(0x11)
- SIGCLD = syscall.Signal(0x11)
- SIGCONT = syscall.Signal(0x12)
-- SIGFPE = syscall.Signal(0x8)
-- SIGHUP = syscall.Signal(0x1)
-- SIGILL = syscall.Signal(0x4)
-- SIGINT = syscall.Signal(0x2)
- SIGIO = syscall.Signal(0x1d)
-- SIGIOT = syscall.Signal(0x6)
-- SIGKILL = syscall.Signal(0x9)
-- SIGPIPE = syscall.Signal(0xd)
- SIGPOLL = syscall.Signal(0x1d)
- SIGPROF = syscall.Signal(0x1b)
- SIGPWR = syscall.Signal(0x1e)
-- SIGQUIT = syscall.Signal(0x3)
-- SIGSEGV = syscall.Signal(0xb)
- SIGSTKFLT = syscall.Signal(0x10)
- SIGSTOP = syscall.Signal(0x13)
- SIGSYS = syscall.Signal(0x1f)
-- SIGTERM = syscall.Signal(0xf)
-- SIGTRAP = syscall.Signal(0x5)
- SIGTSTP = syscall.Signal(0x14)
- SIGTTIN = syscall.Signal(0x15)
- SIGTTOU = syscall.Signal(0x16)
-- SIGUNUSED = syscall.Signal(0x1f)
- SIGURG = syscall.Signal(0x17)
- SIGUSR1 = syscall.Signal(0xa)
- SIGUSR2 = syscall.Signal(0xc)
-@@ -2031,171 +606,179 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "no such device or address",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource temporarily unavailable",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device or resource busy",
-- 17: "file exists",
-- 18: "invalid cross-device link",
-- 19: "no such device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "numerical result out of range",
-- 35: "resource deadlock avoided",
-- 36: "file name too long",
-- 37: "no locks available",
-- 38: "function not implemented",
-- 39: "directory not empty",
-- 40: "too many levels of symbolic links",
-- 42: "no message of desired type",
-- 43: "identifier removed",
-- 44: "channel number out of range",
-- 45: "level 2 not synchronized",
-- 46: "level 3 halted",
-- 47: "level 3 reset",
-- 48: "link number out of range",
-- 49: "protocol driver not attached",
-- 50: "no CSI structure available",
-- 51: "level 2 halted",
-- 52: "invalid exchange",
-- 53: "invalid request descriptor",
-- 54: "exchange full",
-- 55: "no anode",
-- 56: "invalid request code",
-- 57: "invalid slot",
-- 59: "bad font file format",
-- 60: "device not a stream",
-- 61: "no data available",
-- 62: "timer expired",
-- 63: "out of streams resources",
-- 64: "machine is not on the network",
-- 65: "package not installed",
-- 66: "object is remote",
-- 67: "link has been severed",
-- 68: "advertise error",
-- 69: "srmount error",
-- 70: "communication error on send",
-- 71: "protocol error",
-- 72: "multihop attempted",
-- 73: "RFS specific error",
-- 74: "bad message",
-- 75: "value too large for defined data type",
-- 76: "name not unique on network",
-- 77: "file descriptor in bad state",
-- 78: "remote address changed",
-- 79: "can not access a needed shared library",
-- 80: "accessing a corrupted shared library",
-- 81: ".lib section in a.out corrupted",
-- 82: "attempting to link in too many shared libraries",
-- 83: "cannot exec a shared library directly",
-- 84: "invalid or incomplete multibyte or wide character",
-- 85: "interrupted system call should be restarted",
-- 86: "streams pipe error",
-- 87: "too many users",
-- 88: "socket operation on non-socket",
-- 89: "destination address required",
-- 90: "message too long",
-- 91: "protocol wrong type for socket",
-- 92: "protocol not available",
-- 93: "protocol not supported",
-- 94: "socket type not supported",
-- 95: "operation not supported",
-- 96: "protocol family not supported",
-- 97: "address family not supported by protocol",
-- 98: "address already in use",
-- 99: "cannot assign requested address",
-- 100: "network is down",
-- 101: "network is unreachable",
-- 102: "network dropped connection on reset",
-- 103: "software caused connection abort",
-- 104: "connection reset by peer",
-- 105: "no buffer space available",
-- 106: "transport endpoint is already connected",
-- 107: "transport endpoint is not connected",
-- 108: "cannot send after transport endpoint shutdown",
-- 109: "too many references: cannot splice",
-- 110: "connection timed out",
-- 111: "connection refused",
-- 112: "host is down",
-- 113: "no route to host",
-- 114: "operation already in progress",
-- 115: "operation now in progress",
-- 116: "stale file handle",
-- 117: "structure needs cleaning",
-- 118: "not a XENIX named type file",
-- 119: "no XENIX semaphores available",
-- 120: "is a named type file",
-- 121: "remote I/O error",
-- 122: "disk quota exceeded",
-- 123: "no medium found",
-- 124: "wrong medium type",
-- 125: "operation canceled",
-- 126: "required key not available",
-- 127: "key has expired",
-- 128: "key has been revoked",
-- 129: "key was rejected by service",
-- 130: "owner died",
-- 131: "state not recoverable",
-- 132: "operation not possible due to RF-kill",
-- 133: "memory page has hardware error",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device or resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "invalid cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "numerical result out of range"},
-+ {35, "EDEADLK", "resource deadlock avoided"},
-+ {36, "ENAMETOOLONG", "file name too long"},
-+ {37, "ENOLCK", "no locks available"},
-+ {38, "ENOSYS", "function not implemented"},
-+ {39, "ENOTEMPTY", "directory not empty"},
-+ {40, "ELOOP", "too many levels of symbolic links"},
-+ {42, "ENOMSG", "no message of desired type"},
-+ {43, "EIDRM", "identifier removed"},
-+ {44, "ECHRNG", "channel number out of range"},
-+ {45, "EL2NSYNC", "level 2 not synchronized"},
-+ {46, "EL3HLT", "level 3 halted"},
-+ {47, "EL3RST", "level 3 reset"},
-+ {48, "ELNRNG", "link number out of range"},
-+ {49, "EUNATCH", "protocol driver not attached"},
-+ {50, "ENOCSI", "no CSI structure available"},
-+ {51, "EL2HLT", "level 2 halted"},
-+ {52, "EBADE", "invalid exchange"},
-+ {53, "EBADR", "invalid request descriptor"},
-+ {54, "EXFULL", "exchange full"},
-+ {55, "ENOANO", "no anode"},
-+ {56, "EBADRQC", "invalid request code"},
-+ {57, "EBADSLT", "invalid slot"},
-+ {59, "EBFONT", "bad font file format"},
-+ {60, "ENOSTR", "device not a stream"},
-+ {61, "ENODATA", "no data available"},
-+ {62, "ETIME", "timer expired"},
-+ {63, "ENOSR", "out of streams resources"},
-+ {64, "ENONET", "machine is not on the network"},
-+ {65, "ENOPKG", "package not installed"},
-+ {66, "EREMOTE", "object is remote"},
-+ {67, "ENOLINK", "link has been severed"},
-+ {68, "EADV", "advertise error"},
-+ {69, "ESRMNT", "srmount error"},
-+ {70, "ECOMM", "communication error on send"},
-+ {71, "EPROTO", "protocol error"},
-+ {72, "EMULTIHOP", "multihop attempted"},
-+ {73, "EDOTDOT", "RFS specific error"},
-+ {74, "EBADMSG", "bad message"},
-+ {75, "EOVERFLOW", "value too large for defined data type"},
-+ {76, "ENOTUNIQ", "name not unique on network"},
-+ {77, "EBADFD", "file descriptor in bad state"},
-+ {78, "EREMCHG", "remote address changed"},
-+ {79, "ELIBACC", "can not access a needed shared library"},
-+ {80, "ELIBBAD", "accessing a corrupted shared library"},
-+ {81, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
-+ {83, "ELIBEXEC", "cannot exec a shared library directly"},
-+ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
-+ {85, "ERESTART", "interrupted system call should be restarted"},
-+ {86, "ESTRPIPE", "streams pipe error"},
-+ {87, "EUSERS", "too many users"},
-+ {88, "ENOTSOCK", "socket operation on non-socket"},
-+ {89, "EDESTADDRREQ", "destination address required"},
-+ {90, "EMSGSIZE", "message too long"},
-+ {91, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {92, "ENOPROTOOPT", "protocol not available"},
-+ {93, "EPROTONOSUPPORT", "protocol not supported"},
-+ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {95, "ENOTSUP", "operation not supported"},
-+ {96, "EPFNOSUPPORT", "protocol family not supported"},
-+ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
-+ {98, "EADDRINUSE", "address already in use"},
-+ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {100, "ENETDOWN", "network is down"},
-+ {101, "ENETUNREACH", "network is unreachable"},
-+ {102, "ENETRESET", "network dropped connection on reset"},
-+ {103, "ECONNABORTED", "software caused connection abort"},
-+ {104, "ECONNRESET", "connection reset by peer"},
-+ {105, "ENOBUFS", "no buffer space available"},
-+ {106, "EISCONN", "transport endpoint is already connected"},
-+ {107, "ENOTCONN", "transport endpoint is not connected"},
-+ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
-+ {109, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {110, "ETIMEDOUT", "connection timed out"},
-+ {111, "ECONNREFUSED", "connection refused"},
-+ {112, "EHOSTDOWN", "host is down"},
-+ {113, "EHOSTUNREACH", "no route to host"},
-+ {114, "EALREADY", "operation already in progress"},
-+ {115, "EINPROGRESS", "operation now in progress"},
-+ {116, "ESTALE", "stale file handle"},
-+ {117, "EUCLEAN", "structure needs cleaning"},
-+ {118, "ENOTNAM", "not a XENIX named type file"},
-+ {119, "ENAVAIL", "no XENIX semaphores available"},
-+ {120, "EISNAM", "is a named type file"},
-+ {121, "EREMOTEIO", "remote I/O error"},
-+ {122, "EDQUOT", "disk quota exceeded"},
-+ {123, "ENOMEDIUM", "no medium found"},
-+ {124, "EMEDIUMTYPE", "wrong medium type"},
-+ {125, "ECANCELED", "operation canceled"},
-+ {126, "ENOKEY", "required key not available"},
-+ {127, "EKEYEXPIRED", "key has expired"},
-+ {128, "EKEYREVOKED", "key has been revoked"},
-+ {129, "EKEYREJECTED", "key was rejected by service"},
-+ {130, "EOWNERDEAD", "owner died"},
-+ {131, "ENOTRECOVERABLE", "state not recoverable"},
-+ {132, "ERFKILL", "operation not possible due to RF-kill"},
-+ {133, "EHWPOISON", "memory page has hardware error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/breakpoint trap",
-- 6: "aborted",
-- 7: "bus error",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "user defined signal 1",
-- 11: "segmentation fault",
-- 12: "user defined signal 2",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "stack fault",
-- 17: "child exited",
-- 18: "continued",
-- 19: "stopped (signal)",
-- 20: "stopped",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "urgent I/O condition",
-- 24: "CPU time limit exceeded",
-- 25: "file size limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window changed",
-- 29: "I/O possible",
-- 30: "power failure",
-- 31: "bad system call",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/breakpoint trap"},
-+ {6, "SIGABRT", "aborted"},
-+ {7, "SIGBUS", "bus error"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGUSR1", "user defined signal 1"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGUSR2", "user defined signal 2"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGSTKFLT", "stack fault"},
-+ {17, "SIGCHLD", "child exited"},
-+ {18, "SIGCONT", "continued"},
-+ {19, "SIGSTOP", "stopped (signal)"},
-+ {20, "SIGTSTP", "stopped"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGURG", "urgent I/O condition"},
-+ {24, "SIGXCPU", "CPU time limit exceeded"},
-+ {25, "SIGXFSZ", "file size limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window changed"},
-+ {29, "SIGIO", "I/O possible"},
-+ {30, "SIGPWR", "power failure"},
-+ {31, "SIGSYS", "bad system call"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go b/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
-index 1adff0b2..0541f36e 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
-@@ -3,7 +3,7 @@
-
- // +build arm,linux
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
-
- package unix
-@@ -11,1873 +11,493 @@ package unix
- import "syscall"
-
- const (
-- AF_ALG = 0x26
-- AF_APPLETALK = 0x5
-- AF_ASH = 0x12
-- AF_ATMPVC = 0x8
-- AF_ATMSVC = 0x14
-- AF_AX25 = 0x3
-- AF_BLUETOOTH = 0x1f
-- AF_BRIDGE = 0x7
-- AF_CAIF = 0x25
-- AF_CAN = 0x1d
-- AF_DECnet = 0xc
-- AF_ECONET = 0x13
-- AF_FILE = 0x1
-- AF_IB = 0x1b
-- AF_IEEE802154 = 0x24
-- AF_INET = 0x2
-- AF_INET6 = 0xa
-- AF_IPX = 0x4
-- AF_IRDA = 0x17
-- AF_ISDN = 0x22
-- AF_IUCV = 0x20
-- AF_KCM = 0x29
-- AF_KEY = 0xf
-- AF_LLC = 0x1a
-- AF_LOCAL = 0x1
-- AF_MAX = 0x2b
-- AF_MPLS = 0x1c
-- AF_NETBEUI = 0xd
-- AF_NETLINK = 0x10
-- AF_NETROM = 0x6
-- AF_NFC = 0x27
-- AF_PACKET = 0x11
-- AF_PHONET = 0x23
-- AF_PPPOX = 0x18
-- AF_QIPCRTR = 0x2a
-- AF_RDS = 0x15
-- AF_ROSE = 0xb
-- AF_ROUTE = 0x10
-- AF_RXRPC = 0x21
-- AF_SECURITY = 0xe
-- AF_SNA = 0x16
-- AF_TIPC = 0x1e
-- AF_UNIX = 0x1
-- AF_UNSPEC = 0x0
-- AF_VSOCK = 0x28
-- AF_WANPIPE = 0x19
-- AF_X25 = 0x9
-- ALG_OP_DECRYPT = 0x0
-- ALG_OP_ENCRYPT = 0x1
-- ALG_SET_AEAD_ASSOCLEN = 0x4
-- ALG_SET_AEAD_AUTHSIZE = 0x5
-- ALG_SET_IV = 0x2
-- ALG_SET_KEY = 0x1
-- ALG_SET_OP = 0x3
-- ARPHRD_6LOWPAN = 0x339
-- ARPHRD_ADAPT = 0x108
-- ARPHRD_APPLETLK = 0x8
-- ARPHRD_ARCNET = 0x7
-- ARPHRD_ASH = 0x30d
-- ARPHRD_ATM = 0x13
-- ARPHRD_AX25 = 0x3
-- ARPHRD_BIF = 0x307
-- ARPHRD_CAIF = 0x336
-- ARPHRD_CAN = 0x118
-- ARPHRD_CHAOS = 0x5
-- ARPHRD_CISCO = 0x201
-- ARPHRD_CSLIP = 0x101
-- ARPHRD_CSLIP6 = 0x103
-- ARPHRD_DDCMP = 0x205
-- ARPHRD_DLCI = 0xf
-- ARPHRD_ECONET = 0x30e
-- ARPHRD_EETHER = 0x2
-- ARPHRD_ETHER = 0x1
-- ARPHRD_EUI64 = 0x1b
-- ARPHRD_FCAL = 0x311
-- ARPHRD_FCFABRIC = 0x313
-- ARPHRD_FCPL = 0x312
-- ARPHRD_FCPP = 0x310
-- ARPHRD_FDDI = 0x306
-- ARPHRD_FRAD = 0x302
-- ARPHRD_HDLC = 0x201
-- ARPHRD_HIPPI = 0x30c
-- ARPHRD_HWX25 = 0x110
-- ARPHRD_IEEE1394 = 0x18
-- ARPHRD_IEEE802 = 0x6
-- ARPHRD_IEEE80211 = 0x321
-- ARPHRD_IEEE80211_PRISM = 0x322
-- ARPHRD_IEEE80211_RADIOTAP = 0x323
-- ARPHRD_IEEE802154 = 0x324
-- ARPHRD_IEEE802154_MONITOR = 0x325
-- ARPHRD_IEEE802_TR = 0x320
-- ARPHRD_INFINIBAND = 0x20
-- ARPHRD_IP6GRE = 0x337
-- ARPHRD_IPDDP = 0x309
-- ARPHRD_IPGRE = 0x30a
-- ARPHRD_IRDA = 0x30f
-- ARPHRD_LAPB = 0x204
-- ARPHRD_LOCALTLK = 0x305
-- ARPHRD_LOOPBACK = 0x304
-- ARPHRD_METRICOM = 0x17
-- ARPHRD_NETLINK = 0x338
-- ARPHRD_NETROM = 0x0
-- ARPHRD_NONE = 0xfffe
-- ARPHRD_PHONET = 0x334
-- ARPHRD_PHONET_PIPE = 0x335
-- ARPHRD_PIMREG = 0x30b
-- ARPHRD_PPP = 0x200
-- ARPHRD_PRONET = 0x4
-- ARPHRD_RAWHDLC = 0x206
-- ARPHRD_ROSE = 0x10e
-- ARPHRD_RSRVD = 0x104
-- ARPHRD_SIT = 0x308
-- ARPHRD_SKIP = 0x303
-- ARPHRD_SLIP = 0x100
-- ARPHRD_SLIP6 = 0x102
-- ARPHRD_TUNNEL = 0x300
-- ARPHRD_TUNNEL6 = 0x301
-- ARPHRD_VOID = 0xffff
-- ARPHRD_X25 = 0x10f
-- B0 = 0x0
-- B1000000 = 0x1008
-- B110 = 0x3
-- B115200 = 0x1002
-- B1152000 = 0x1009
-- B1200 = 0x9
-- B134 = 0x4
-- B150 = 0x5
-- B1500000 = 0x100a
-- B1800 = 0xa
-- B19200 = 0xe
-- B200 = 0x6
-- B2000000 = 0x100b
-- B230400 = 0x1003
-- B2400 = 0xb
-- B2500000 = 0x100c
-- B300 = 0x7
-- B3000000 = 0x100d
-- B3500000 = 0x100e
-- B38400 = 0xf
-- B4000000 = 0x100f
-- B460800 = 0x1004
-- B4800 = 0xc
-- B50 = 0x1
-- B500000 = 0x1005
-- B57600 = 0x1001
-- B576000 = 0x1006
-- B600 = 0x8
-- B75 = 0x2
-- B921600 = 0x1007
-- B9600 = 0xd
-- BLKBSZGET = 0x80041270
-- BLKBSZSET = 0x40041271
-- BLKFLSBUF = 0x1261
-- BLKFRAGET = 0x1265
-- BLKFRASET = 0x1264
-- BLKGETSIZE = 0x1260
-- BLKGETSIZE64 = 0x80041272
-- BLKPBSZGET = 0x127b
-- BLKRAGET = 0x1263
-- BLKRASET = 0x1262
-- BLKROGET = 0x125e
-- BLKROSET = 0x125d
-- BLKRRPART = 0x125f
-- BLKSECTGET = 0x1267
-- BLKSECTSET = 0x1266
-- BLKSSZGET = 0x1268
-- BOTHER = 0x1000
-- BPF_A = 0x10
-- BPF_ABS = 0x20
-- BPF_ADD = 0x0
-- BPF_ALU = 0x4
-- BPF_AND = 0x50
-- BPF_B = 0x10
-- BPF_DIV = 0x30
-- BPF_H = 0x8
-- BPF_IMM = 0x0
-- BPF_IND = 0x40
-- BPF_JA = 0x0
-- BPF_JEQ = 0x10
-- BPF_JGE = 0x30
-- BPF_JGT = 0x20
-- BPF_JMP = 0x5
-- BPF_JSET = 0x40
-- BPF_K = 0x0
-- BPF_LD = 0x0
-- BPF_LDX = 0x1
-- BPF_LEN = 0x80
-- BPF_LL_OFF = -0x200000
-- BPF_LSH = 0x60
-- BPF_MAJOR_VERSION = 0x1
-- BPF_MAXINSNS = 0x1000
-- BPF_MEM = 0x60
-- BPF_MEMWORDS = 0x10
-- BPF_MINOR_VERSION = 0x1
-- BPF_MISC = 0x7
-- BPF_MOD = 0x90
-- BPF_MSH = 0xa0
-- BPF_MUL = 0x20
-- BPF_NEG = 0x80
-- BPF_NET_OFF = -0x100000
-- BPF_OR = 0x40
-- BPF_RET = 0x6
-- BPF_RSH = 0x70
-- BPF_ST = 0x2
-- BPF_STX = 0x3
-- BPF_SUB = 0x10
-- BPF_TAX = 0x0
-- BPF_TXA = 0x80
-- BPF_W = 0x0
-- BPF_X = 0x8
-- BPF_XOR = 0xa0
-- BRKINT = 0x2
-- BS0 = 0x0
-- BS1 = 0x2000
-- BSDLY = 0x2000
-- CAN_BCM = 0x2
-- CAN_EFF_FLAG = 0x80000000
-- CAN_EFF_ID_BITS = 0x1d
-- CAN_EFF_MASK = 0x1fffffff
-- CAN_ERR_FLAG = 0x20000000
-- CAN_ERR_MASK = 0x1fffffff
-- CAN_INV_FILTER = 0x20000000
-- CAN_ISOTP = 0x6
-- CAN_MAX_DLC = 0x8
-- CAN_MAX_DLEN = 0x8
-- CAN_MCNET = 0x5
-- CAN_MTU = 0x10
-- CAN_NPROTO = 0x7
-- CAN_RAW = 0x1
-- CAN_RAW_FILTER_MAX = 0x200
-- CAN_RTR_FLAG = 0x40000000
-- CAN_SFF_ID_BITS = 0xb
-- CAN_SFF_MASK = 0x7ff
-- CAN_TP16 = 0x3
-- CAN_TP20 = 0x4
-- CBAUD = 0x100f
-- CBAUDEX = 0x1000
-- CFLUSH = 0xf
-- CIBAUD = 0x100f0000
-- CLOCAL = 0x800
-- CLOCK_BOOTTIME = 0x7
-- CLOCK_BOOTTIME_ALARM = 0x9
-- CLOCK_DEFAULT = 0x0
-- CLOCK_EXT = 0x1
-- CLOCK_INT = 0x2
-- CLOCK_MONOTONIC = 0x1
-- CLOCK_MONOTONIC_COARSE = 0x6
-- CLOCK_MONOTONIC_RAW = 0x4
-- CLOCK_PROCESS_CPUTIME_ID = 0x2
-- CLOCK_REALTIME = 0x0
-- CLOCK_REALTIME_ALARM = 0x8
-- CLOCK_REALTIME_COARSE = 0x5
-- CLOCK_TAI = 0xb
-- CLOCK_THREAD_CPUTIME_ID = 0x3
-- CLOCK_TXFROMRX = 0x4
-- CLOCK_TXINT = 0x3
-- CLONE_CHILD_CLEARTID = 0x200000
-- CLONE_CHILD_SETTID = 0x1000000
-- CLONE_DETACHED = 0x400000
-- CLONE_FILES = 0x400
-- CLONE_FS = 0x200
-- CLONE_IO = 0x80000000
-- CLONE_NEWCGROUP = 0x2000000
-- CLONE_NEWIPC = 0x8000000
-- CLONE_NEWNET = 0x40000000
-- CLONE_NEWNS = 0x20000
-- CLONE_NEWPID = 0x20000000
-- CLONE_NEWUSER = 0x10000000
-- CLONE_NEWUTS = 0x4000000
-- CLONE_PARENT = 0x8000
-- CLONE_PARENT_SETTID = 0x100000
-- CLONE_PTRACE = 0x2000
-- CLONE_SETTLS = 0x80000
-- CLONE_SIGHAND = 0x800
-- CLONE_SYSVSEM = 0x40000
-- CLONE_THREAD = 0x10000
-- CLONE_UNTRACED = 0x800000
-- CLONE_VFORK = 0x4000
-- CLONE_VM = 0x100
-- CMSPAR = 0x40000000
-- CR0 = 0x0
-- CR1 = 0x200
-- CR2 = 0x400
-- CR3 = 0x600
-- CRDLY = 0x600
-- CREAD = 0x80
-- CRTSCTS = 0x80000000
-- CS5 = 0x0
-- CS6 = 0x10
-- CS7 = 0x20
-- CS8 = 0x30
-- CSIGNAL = 0xff
-- CSIZE = 0x30
-- CSTART = 0x11
-- CSTATUS = 0x0
-- CSTOP = 0x13
-- CSTOPB = 0x40
-- CSUSP = 0x1a
-- DT_BLK = 0x6
-- DT_CHR = 0x2
-- DT_DIR = 0x4
-- DT_FIFO = 0x1
-- DT_LNK = 0xa
-- DT_REG = 0x8
-- DT_SOCK = 0xc
-- DT_UNKNOWN = 0x0
-- DT_WHT = 0xe
-- ECHO = 0x8
-- ECHOCTL = 0x200
-- ECHOE = 0x10
-- ECHOK = 0x20
-- ECHOKE = 0x800
-- ECHONL = 0x40
-- ECHOPRT = 0x400
-- EFD_CLOEXEC = 0x80000
-- EFD_NONBLOCK = 0x800
-- EFD_SEMAPHORE = 0x1
-- ENCODING_DEFAULT = 0x0
-- ENCODING_FM_MARK = 0x3
-- ENCODING_FM_SPACE = 0x4
-- ENCODING_MANCHESTER = 0x5
-- ENCODING_NRZ = 0x1
-- ENCODING_NRZI = 0x2
-- EPOLLERR = 0x8
-- EPOLLET = 0x80000000
-- EPOLLEXCLUSIVE = 0x10000000
-- EPOLLHUP = 0x10
-- EPOLLIN = 0x1
-- EPOLLMSG = 0x400
-- EPOLLONESHOT = 0x40000000
-- EPOLLOUT = 0x4
-- EPOLLPRI = 0x2
-- EPOLLRDBAND = 0x80
-- EPOLLRDHUP = 0x2000
-- EPOLLRDNORM = 0x40
-- EPOLLWAKEUP = 0x20000000
-- EPOLLWRBAND = 0x200
-- EPOLLWRNORM = 0x100
-- EPOLL_CLOEXEC = 0x80000
-- EPOLL_CTL_ADD = 0x1
-- EPOLL_CTL_DEL = 0x2
-- EPOLL_CTL_MOD = 0x3
-- ETH_P_1588 = 0x88f7
-- ETH_P_8021AD = 0x88a8
-- ETH_P_8021AH = 0x88e7
-- ETH_P_8021Q = 0x8100
-- ETH_P_80221 = 0x8917
-- ETH_P_802_2 = 0x4
-- ETH_P_802_3 = 0x1
-- ETH_P_802_3_MIN = 0x600
-- ETH_P_802_EX1 = 0x88b5
-- ETH_P_AARP = 0x80f3
-- ETH_P_AF_IUCV = 0xfbfb
-- ETH_P_ALL = 0x3
-- ETH_P_AOE = 0x88a2
-- ETH_P_ARCNET = 0x1a
-- ETH_P_ARP = 0x806
-- ETH_P_ATALK = 0x809b
-- ETH_P_ATMFATE = 0x8884
-- ETH_P_ATMMPOA = 0x884c
-- ETH_P_AX25 = 0x2
-- ETH_P_BATMAN = 0x4305
-- ETH_P_BPQ = 0x8ff
-- ETH_P_CAIF = 0xf7
-- ETH_P_CAN = 0xc
-- ETH_P_CANFD = 0xd
-- ETH_P_CONTROL = 0x16
-- ETH_P_CUST = 0x6006
-- ETH_P_DDCMP = 0x6
-- ETH_P_DEC = 0x6000
-- ETH_P_DIAG = 0x6005
-- ETH_P_DNA_DL = 0x6001
-- ETH_P_DNA_RC = 0x6002
-- ETH_P_DNA_RT = 0x6003
-- ETH_P_DSA = 0x1b
-- ETH_P_ECONET = 0x18
-- ETH_P_EDSA = 0xdada
-- ETH_P_FCOE = 0x8906
-- ETH_P_FIP = 0x8914
-- ETH_P_HDLC = 0x19
-- ETH_P_HSR = 0x892f
-- ETH_P_IEEE802154 = 0xf6
-- ETH_P_IEEEPUP = 0xa00
-- ETH_P_IEEEPUPAT = 0xa01
-- ETH_P_IP = 0x800
-- ETH_P_IPV6 = 0x86dd
-- ETH_P_IPX = 0x8137
-- ETH_P_IRDA = 0x17
-- ETH_P_LAT = 0x6004
-- ETH_P_LINK_CTL = 0x886c
-- ETH_P_LOCALTALK = 0x9
-- ETH_P_LOOP = 0x60
-- ETH_P_LOOPBACK = 0x9000
-- ETH_P_MACSEC = 0x88e5
-- ETH_P_MOBITEX = 0x15
-- ETH_P_MPLS_MC = 0x8848
-- ETH_P_MPLS_UC = 0x8847
-- ETH_P_MVRP = 0x88f5
-- ETH_P_NCSI = 0x88f8
-- ETH_P_PAE = 0x888e
-- ETH_P_PAUSE = 0x8808
-- ETH_P_PHONET = 0xf5
-- ETH_P_PPPTALK = 0x10
-- ETH_P_PPP_DISC = 0x8863
-- ETH_P_PPP_MP = 0x8
-- ETH_P_PPP_SES = 0x8864
-- ETH_P_PRP = 0x88fb
-- ETH_P_PUP = 0x200
-- ETH_P_PUPAT = 0x201
-- ETH_P_QINQ1 = 0x9100
-- ETH_P_QINQ2 = 0x9200
-- ETH_P_QINQ3 = 0x9300
-- ETH_P_RARP = 0x8035
-- ETH_P_SCA = 0x6007
-- ETH_P_SLOW = 0x8809
-- ETH_P_SNAP = 0x5
-- ETH_P_TDLS = 0x890d
-- ETH_P_TEB = 0x6558
-- ETH_P_TIPC = 0x88ca
-- ETH_P_TRAILER = 0x1c
-- ETH_P_TR_802_2 = 0x11
-- ETH_P_TSN = 0x22f0
-- ETH_P_WAN_PPP = 0x7
-- ETH_P_WCCP = 0x883e
-- ETH_P_X25 = 0x805
-- ETH_P_XDSA = 0xf8
-- EXTA = 0xe
-- EXTB = 0xf
-- EXTPROC = 0x10000
-- FALLOC_FL_COLLAPSE_RANGE = 0x8
-- FALLOC_FL_INSERT_RANGE = 0x20
-- FALLOC_FL_KEEP_SIZE = 0x1
-- FALLOC_FL_NO_HIDE_STALE = 0x4
-- FALLOC_FL_PUNCH_HOLE = 0x2
-- FALLOC_FL_UNSHARE_RANGE = 0x40
-- FALLOC_FL_ZERO_RANGE = 0x10
-- FD_CLOEXEC = 0x1
-- FD_SETSIZE = 0x400
-- FF0 = 0x0
-- FF1 = 0x8000
-- FFDLY = 0x8000
-- FLUSHO = 0x1000
-- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
-- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
-- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
-- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
-- FS_ENCRYPTION_MODE_INVALID = 0x0
-- FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
-- FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
-- FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
-- FS_KEY_DESCRIPTOR_SIZE = 0x8
-- FS_KEY_DESC_PREFIX = "fscrypt:"
-- FS_KEY_DESC_PREFIX_SIZE = 0x8
-- FS_MAX_KEY_SIZE = 0x40
-- FS_POLICY_FLAGS_PAD_16 = 0x2
-- FS_POLICY_FLAGS_PAD_32 = 0x3
-- FS_POLICY_FLAGS_PAD_4 = 0x0
-- FS_POLICY_FLAGS_PAD_8 = 0x1
-- FS_POLICY_FLAGS_PAD_MASK = 0x3
-- FS_POLICY_FLAGS_VALID = 0x3
-- F_DUPFD = 0x0
-- F_DUPFD_CLOEXEC = 0x406
-- F_EXLCK = 0x4
-- F_GETFD = 0x1
-- F_GETFL = 0x3
-- F_GETLEASE = 0x401
-- F_GETLK = 0xc
-- F_GETLK64 = 0xc
-- F_GETOWN = 0x9
-- F_GETOWN_EX = 0x10
-- F_GETPIPE_SZ = 0x408
-- F_GETSIG = 0xb
-- F_LOCK = 0x1
-- F_NOTIFY = 0x402
-- F_OFD_GETLK = 0x24
-- F_OFD_SETLK = 0x25
-- F_OFD_SETLKW = 0x26
-- F_OK = 0x0
-- F_RDLCK = 0x0
-- F_SETFD = 0x2
-- F_SETFL = 0x4
-- F_SETLEASE = 0x400
-- F_SETLK = 0xd
-- F_SETLK64 = 0xd
-- F_SETLKW = 0xe
-- F_SETLKW64 = 0xe
-- F_SETOWN = 0x8
-- F_SETOWN_EX = 0xf
-- F_SETPIPE_SZ = 0x407
-- F_SETSIG = 0xa
-- F_SHLCK = 0x8
-- F_TEST = 0x3
-- F_TLOCK = 0x2
-- F_ULOCK = 0x0
-- F_UNLCK = 0x2
-- F_WRLCK = 0x1
-- GENL_ADMIN_PERM = 0x1
-- GENL_CMD_CAP_DO = 0x2
-- GENL_CMD_CAP_DUMP = 0x4
-- GENL_CMD_CAP_HASPOL = 0x8
-- GENL_HDRLEN = 0x4
-- GENL_ID_CTRL = 0x10
-- GENL_ID_PMCRAID = 0x12
-- GENL_ID_VFS_DQUOT = 0x11
-- GENL_MAX_ID = 0x3ff
-- GENL_MIN_ID = 0x10
-- GENL_NAMSIZ = 0x10
-- GENL_START_ALLOC = 0x13
-- GENL_UNS_ADMIN_PERM = 0x10
-- GRND_NONBLOCK = 0x1
-- GRND_RANDOM = 0x2
-- HUPCL = 0x400
-- IBSHIFT = 0x10
-- ICANON = 0x2
-- ICMPV6_FILTER = 0x1
-- ICRNL = 0x100
-- IEXTEN = 0x8000
-- IFA_F_DADFAILED = 0x8
-- IFA_F_DEPRECATED = 0x20
-- IFA_F_HOMEADDRESS = 0x10
-- IFA_F_MANAGETEMPADDR = 0x100
-- IFA_F_MCAUTOJOIN = 0x400
-- IFA_F_NODAD = 0x2
-- IFA_F_NOPREFIXROUTE = 0x200
-- IFA_F_OPTIMISTIC = 0x4
-- IFA_F_PERMANENT = 0x80
-- IFA_F_SECONDARY = 0x1
-- IFA_F_STABLE_PRIVACY = 0x800
-- IFA_F_TEMPORARY = 0x1
-- IFA_F_TENTATIVE = 0x40
-- IFA_MAX = 0x8
-- IFF_ALLMULTI = 0x200
-- IFF_ATTACH_QUEUE = 0x200
-- IFF_AUTOMEDIA = 0x4000
-- IFF_BROADCAST = 0x2
-- IFF_DEBUG = 0x4
-- IFF_DETACH_QUEUE = 0x400
-- IFF_DORMANT = 0x20000
-- IFF_DYNAMIC = 0x8000
-- IFF_ECHO = 0x40000
-- IFF_LOOPBACK = 0x8
-- IFF_LOWER_UP = 0x10000
-- IFF_MASTER = 0x400
-- IFF_MULTICAST = 0x1000
-- IFF_MULTI_QUEUE = 0x100
-- IFF_NOARP = 0x80
-- IFF_NOFILTER = 0x1000
-- IFF_NOTRAILERS = 0x20
-- IFF_NO_PI = 0x1000
-- IFF_ONE_QUEUE = 0x2000
-- IFF_PERSIST = 0x800
-- IFF_POINTOPOINT = 0x10
-- IFF_PORTSEL = 0x2000
-- IFF_PROMISC = 0x100
-- IFF_RUNNING = 0x40
-- IFF_SLAVE = 0x800
-- IFF_TAP = 0x2
-- IFF_TUN = 0x1
-- IFF_TUN_EXCL = 0x8000
-- IFF_UP = 0x1
-- IFF_VNET_HDR = 0x4000
-- IFF_VOLATILE = 0x70c5a
-- IFNAMSIZ = 0x10
-- IGNBRK = 0x1
-- IGNCR = 0x80
-- IGNPAR = 0x4
-- IMAXBEL = 0x2000
-- INLCR = 0x40
-- INPCK = 0x10
-- IN_ACCESS = 0x1
-- IN_ALL_EVENTS = 0xfff
-- IN_ATTRIB = 0x4
-- IN_CLASSA_HOST = 0xffffff
-- IN_CLASSA_MAX = 0x80
-- IN_CLASSA_NET = 0xff000000
-- IN_CLASSA_NSHIFT = 0x18
-- IN_CLASSB_HOST = 0xffff
-- IN_CLASSB_MAX = 0x10000
-- IN_CLASSB_NET = 0xffff0000
-- IN_CLASSB_NSHIFT = 0x10
-- IN_CLASSC_HOST = 0xff
-- IN_CLASSC_NET = 0xffffff00
-- IN_CLASSC_NSHIFT = 0x8
-- IN_CLOEXEC = 0x80000
-- IN_CLOSE = 0x18
-- IN_CLOSE_NOWRITE = 0x10
-- IN_CLOSE_WRITE = 0x8
-- IN_CREATE = 0x100
-- IN_DELETE = 0x200
-- IN_DELETE_SELF = 0x400
-- IN_DONT_FOLLOW = 0x2000000
-- IN_EXCL_UNLINK = 0x4000000
-- IN_IGNORED = 0x8000
-- IN_ISDIR = 0x40000000
-- IN_LOOPBACKNET = 0x7f
-- IN_MASK_ADD = 0x20000000
-- IN_MODIFY = 0x2
-- IN_MOVE = 0xc0
-- IN_MOVED_FROM = 0x40
-- IN_MOVED_TO = 0x80
-- IN_MOVE_SELF = 0x800
-- IN_NONBLOCK = 0x800
-- IN_ONESHOT = 0x80000000
-- IN_ONLYDIR = 0x1000000
-- IN_OPEN = 0x20
-- IN_Q_OVERFLOW = 0x4000
-- IN_UNMOUNT = 0x2000
-- IPPROTO_AH = 0x33
-- IPPROTO_BEETPH = 0x5e
-- IPPROTO_COMP = 0x6c
-- IPPROTO_DCCP = 0x21
-- IPPROTO_DSTOPTS = 0x3c
-- IPPROTO_EGP = 0x8
-- IPPROTO_ENCAP = 0x62
-- IPPROTO_ESP = 0x32
-- IPPROTO_FRAGMENT = 0x2c
-- IPPROTO_GRE = 0x2f
-- IPPROTO_HOPOPTS = 0x0
-- IPPROTO_ICMP = 0x1
-- IPPROTO_ICMPV6 = 0x3a
-- IPPROTO_IDP = 0x16
-- IPPROTO_IGMP = 0x2
-- IPPROTO_IP = 0x0
-- IPPROTO_IPIP = 0x4
-- IPPROTO_IPV6 = 0x29
-- IPPROTO_MH = 0x87
-- IPPROTO_MPLS = 0x89
-- IPPROTO_MTP = 0x5c
-- IPPROTO_NONE = 0x3b
-- IPPROTO_PIM = 0x67
-- IPPROTO_PUP = 0xc
-- IPPROTO_RAW = 0xff
-- IPPROTO_ROUTING = 0x2b
-- IPPROTO_RSVP = 0x2e
-- IPPROTO_SCTP = 0x84
-- IPPROTO_TCP = 0x6
-- IPPROTO_TP = 0x1d
-- IPPROTO_UDP = 0x11
-- IPPROTO_UDPLITE = 0x88
-- IPV6_2292DSTOPTS = 0x4
-- IPV6_2292HOPLIMIT = 0x8
-- IPV6_2292HOPOPTS = 0x3
-- IPV6_2292PKTINFO = 0x2
-- IPV6_2292PKTOPTIONS = 0x6
-- IPV6_2292RTHDR = 0x5
-- IPV6_ADDRFORM = 0x1
-- IPV6_ADD_MEMBERSHIP = 0x14
-- IPV6_AUTHHDR = 0xa
-- IPV6_CHECKSUM = 0x7
-- IPV6_DONTFRAG = 0x3e
-- IPV6_DROP_MEMBERSHIP = 0x15
-- IPV6_DSTOPTS = 0x3b
-- IPV6_HDRINCL = 0x24
-- IPV6_HOPLIMIT = 0x34
-- IPV6_HOPOPTS = 0x36
-- IPV6_IPSEC_POLICY = 0x22
-- IPV6_JOIN_ANYCAST = 0x1b
-- IPV6_JOIN_GROUP = 0x14
-- IPV6_LEAVE_ANYCAST = 0x1c
-- IPV6_LEAVE_GROUP = 0x15
-- IPV6_MTU = 0x18
-- IPV6_MTU_DISCOVER = 0x17
-- IPV6_MULTICAST_HOPS = 0x12
-- IPV6_MULTICAST_IF = 0x11
-- IPV6_MULTICAST_LOOP = 0x13
-- IPV6_NEXTHOP = 0x9
-- IPV6_PATHMTU = 0x3d
-- IPV6_PKTINFO = 0x32
-- IPV6_PMTUDISC_DO = 0x2
-- IPV6_PMTUDISC_DONT = 0x0
-- IPV6_PMTUDISC_INTERFACE = 0x4
-- IPV6_PMTUDISC_OMIT = 0x5
-- IPV6_PMTUDISC_PROBE = 0x3
-- IPV6_PMTUDISC_WANT = 0x1
-- IPV6_RECVDSTOPTS = 0x3a
-- IPV6_RECVERR = 0x19
-- IPV6_RECVHOPLIMIT = 0x33
-- IPV6_RECVHOPOPTS = 0x35
-- IPV6_RECVPATHMTU = 0x3c
-- IPV6_RECVPKTINFO = 0x31
-- IPV6_RECVRTHDR = 0x38
-- IPV6_RECVTCLASS = 0x42
-- IPV6_ROUTER_ALERT = 0x16
-- IPV6_RTHDR = 0x39
-- IPV6_RTHDRDSTOPTS = 0x37
-- IPV6_RTHDR_LOOSE = 0x0
-- IPV6_RTHDR_STRICT = 0x1
-- IPV6_RTHDR_TYPE_0 = 0x0
-- IPV6_RXDSTOPTS = 0x3b
-- IPV6_RXHOPOPTS = 0x36
-- IPV6_TCLASS = 0x43
-- IPV6_UNICAST_HOPS = 0x10
-- IPV6_V6ONLY = 0x1a
-- IPV6_XFRM_POLICY = 0x23
-- IP_ADD_MEMBERSHIP = 0x23
-- IP_ADD_SOURCE_MEMBERSHIP = 0x27
-- IP_BIND_ADDRESS_NO_PORT = 0x18
-- IP_BLOCK_SOURCE = 0x26
-- IP_CHECKSUM = 0x17
-- IP_DEFAULT_MULTICAST_LOOP = 0x1
-- IP_DEFAULT_MULTICAST_TTL = 0x1
-- IP_DF = 0x4000
-- IP_DROP_MEMBERSHIP = 0x24
-- IP_DROP_SOURCE_MEMBERSHIP = 0x28
-- IP_FREEBIND = 0xf
-- IP_HDRINCL = 0x3
-- IP_IPSEC_POLICY = 0x10
-- IP_MAXPACKET = 0xffff
-- IP_MAX_MEMBERSHIPS = 0x14
-- IP_MF = 0x2000
-- IP_MINTTL = 0x15
-- IP_MSFILTER = 0x29
-- IP_MSS = 0x240
-- IP_MTU = 0xe
-- IP_MTU_DISCOVER = 0xa
-- IP_MULTICAST_ALL = 0x31
-- IP_MULTICAST_IF = 0x20
-- IP_MULTICAST_LOOP = 0x22
-- IP_MULTICAST_TTL = 0x21
-- IP_NODEFRAG = 0x16
-- IP_OFFMASK = 0x1fff
-- IP_OPTIONS = 0x4
-- IP_ORIGDSTADDR = 0x14
-- IP_PASSSEC = 0x12
-- IP_PKTINFO = 0x8
-- IP_PKTOPTIONS = 0x9
-- IP_PMTUDISC = 0xa
-- IP_PMTUDISC_DO = 0x2
-- IP_PMTUDISC_DONT = 0x0
-- IP_PMTUDISC_INTERFACE = 0x4
-- IP_PMTUDISC_OMIT = 0x5
-- IP_PMTUDISC_PROBE = 0x3
-- IP_PMTUDISC_WANT = 0x1
-- IP_RECVERR = 0xb
-- IP_RECVOPTS = 0x6
-- IP_RECVORIGDSTADDR = 0x14
-- IP_RECVRETOPTS = 0x7
-- IP_RECVTOS = 0xd
-- IP_RECVTTL = 0xc
-- IP_RETOPTS = 0x7
-- IP_RF = 0x8000
-- IP_ROUTER_ALERT = 0x5
-- IP_TOS = 0x1
-- IP_TRANSPARENT = 0x13
-- IP_TTL = 0x2
-- IP_UNBLOCK_SOURCE = 0x25
-- IP_UNICAST_IF = 0x32
-- IP_XFRM_POLICY = 0x11
-- ISIG = 0x1
-- ISTRIP = 0x20
-- IUCLC = 0x200
-- IUTF8 = 0x4000
-- IXANY = 0x800
-- IXOFF = 0x1000
-- IXON = 0x400
-- KEYCTL_ASSUME_AUTHORITY = 0x10
-- KEYCTL_CHOWN = 0x4
-- KEYCTL_CLEAR = 0x7
-- KEYCTL_DESCRIBE = 0x6
-- KEYCTL_DH_COMPUTE = 0x17
-- KEYCTL_GET_KEYRING_ID = 0x0
-- KEYCTL_GET_PERSISTENT = 0x16
-- KEYCTL_GET_SECURITY = 0x11
-- KEYCTL_INSTANTIATE = 0xc
-- KEYCTL_INSTANTIATE_IOV = 0x14
-- KEYCTL_INVALIDATE = 0x15
-- KEYCTL_JOIN_SESSION_KEYRING = 0x1
-- KEYCTL_LINK = 0x8
-- KEYCTL_NEGATE = 0xd
-- KEYCTL_READ = 0xb
-- KEYCTL_REJECT = 0x13
-- KEYCTL_REVOKE = 0x3
-- KEYCTL_SEARCH = 0xa
-- KEYCTL_SESSION_TO_PARENT = 0x12
-- KEYCTL_SETPERM = 0x5
-- KEYCTL_SET_REQKEY_KEYRING = 0xe
-- KEYCTL_SET_TIMEOUT = 0xf
-- KEYCTL_UNLINK = 0x9
-- KEYCTL_UPDATE = 0x2
-- KEY_REQKEY_DEFL_DEFAULT = 0x0
-- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
-- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
-- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
-- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
-- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
-- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
-- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
-- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
-- KEY_SPEC_GROUP_KEYRING = -0x6
-- KEY_SPEC_PROCESS_KEYRING = -0x2
-- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
-- KEY_SPEC_REQUESTOR_KEYRING = -0x8
-- KEY_SPEC_SESSION_KEYRING = -0x3
-- KEY_SPEC_THREAD_KEYRING = -0x1
-- KEY_SPEC_USER_KEYRING = -0x4
-- KEY_SPEC_USER_SESSION_KEYRING = -0x5
-- LINUX_REBOOT_CMD_CAD_OFF = 0x0
-- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
-- LINUX_REBOOT_CMD_HALT = 0xcdef0123
-- LINUX_REBOOT_CMD_KEXEC = 0x45584543
-- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
-- LINUX_REBOOT_CMD_RESTART = 0x1234567
-- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
-- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
-- LINUX_REBOOT_MAGIC1 = 0xfee1dead
-- LINUX_REBOOT_MAGIC2 = 0x28121969
-- LOCK_EX = 0x2
-- LOCK_NB = 0x4
-- LOCK_SH = 0x1
-- LOCK_UN = 0x8
-- MADV_DODUMP = 0x11
-- MADV_DOFORK = 0xb
-- MADV_DONTDUMP = 0x10
-- MADV_DONTFORK = 0xa
-- MADV_DONTNEED = 0x4
-- MADV_FREE = 0x8
-- MADV_HUGEPAGE = 0xe
-- MADV_HWPOISON = 0x64
-- MADV_MERGEABLE = 0xc
-- MADV_NOHUGEPAGE = 0xf
-- MADV_NORMAL = 0x0
-- MADV_RANDOM = 0x1
-- MADV_REMOVE = 0x9
-- MADV_SEQUENTIAL = 0x2
-- MADV_UNMERGEABLE = 0xd
-- MADV_WILLNEED = 0x3
-- MAP_ANON = 0x20
-- MAP_ANONYMOUS = 0x20
-- MAP_DENYWRITE = 0x800
-- MAP_EXECUTABLE = 0x1000
-- MAP_FILE = 0x0
-- MAP_FIXED = 0x10
-- MAP_GROWSDOWN = 0x100
-- MAP_HUGETLB = 0x40000
-- MAP_HUGE_MASK = 0x3f
-- MAP_HUGE_SHIFT = 0x1a
-- MAP_LOCKED = 0x2000
-- MAP_NONBLOCK = 0x10000
-- MAP_NORESERVE = 0x4000
-- MAP_POPULATE = 0x8000
-- MAP_PRIVATE = 0x2
-- MAP_SHARED = 0x1
-- MAP_STACK = 0x20000
-- MAP_TYPE = 0xf
-- MCL_CURRENT = 0x1
-- MCL_FUTURE = 0x2
-- MCL_ONFAULT = 0x4
-- MNT_DETACH = 0x2
-- MNT_EXPIRE = 0x4
-- MNT_FORCE = 0x1
-- MSG_BATCH = 0x40000
-- MSG_CMSG_CLOEXEC = 0x40000000
-- MSG_CONFIRM = 0x800
-- MSG_CTRUNC = 0x8
-- MSG_DONTROUTE = 0x4
-- MSG_DONTWAIT = 0x40
-- MSG_EOR = 0x80
-- MSG_ERRQUEUE = 0x2000
-- MSG_FASTOPEN = 0x20000000
-- MSG_FIN = 0x200
-- MSG_MORE = 0x8000
-- MSG_NOSIGNAL = 0x4000
-- MSG_OOB = 0x1
-- MSG_PEEK = 0x2
-- MSG_PROXY = 0x10
-- MSG_RST = 0x1000
-- MSG_SYN = 0x400
-- MSG_TRUNC = 0x20
-- MSG_TRYHARD = 0x4
-- MSG_WAITALL = 0x100
-- MSG_WAITFORONE = 0x10000
-- MS_ACTIVE = 0x40000000
-- MS_ASYNC = 0x1
-- MS_BIND = 0x1000
-- MS_BORN = 0x20000000
-- MS_DIRSYNC = 0x80
-- MS_INVALIDATE = 0x2
-- MS_I_VERSION = 0x800000
-- MS_KERNMOUNT = 0x400000
-- MS_LAZYTIME = 0x2000000
-- MS_MANDLOCK = 0x40
-- MS_MGC_MSK = 0xffff0000
-- MS_MGC_VAL = 0xc0ed0000
-- MS_MOVE = 0x2000
-- MS_NOATIME = 0x400
-- MS_NODEV = 0x4
-- MS_NODIRATIME = 0x800
-- MS_NOEXEC = 0x8
-- MS_NOREMOTELOCK = 0x8000000
-- MS_NOSEC = 0x10000000
-- MS_NOSUID = 0x2
-- MS_NOUSER = -0x80000000
-- MS_POSIXACL = 0x10000
-- MS_PRIVATE = 0x40000
-- MS_RDONLY = 0x1
-- MS_REC = 0x4000
-- MS_RELATIME = 0x200000
-- MS_REMOUNT = 0x20
-- MS_RMT_MASK = 0x2800051
-- MS_SHARED = 0x100000
-- MS_SILENT = 0x8000
-- MS_SLAVE = 0x80000
-- MS_STRICTATIME = 0x1000000
-- MS_SYNC = 0x4
-- MS_SYNCHRONOUS = 0x10
-- MS_UNBINDABLE = 0x20000
-- MS_VERBOSE = 0x8000
-- NAME_MAX = 0xff
-- NETLINK_ADD_MEMBERSHIP = 0x1
-- NETLINK_AUDIT = 0x9
-- NETLINK_BROADCAST_ERROR = 0x4
-- NETLINK_CAP_ACK = 0xa
-- NETLINK_CONNECTOR = 0xb
-- NETLINK_CRYPTO = 0x15
-- NETLINK_DNRTMSG = 0xe
-- NETLINK_DROP_MEMBERSHIP = 0x2
-- NETLINK_ECRYPTFS = 0x13
-- NETLINK_FIB_LOOKUP = 0xa
-- NETLINK_FIREWALL = 0x3
-- NETLINK_GENERIC = 0x10
-- NETLINK_INET_DIAG = 0x4
-- NETLINK_IP6_FW = 0xd
-- NETLINK_ISCSI = 0x8
-- NETLINK_KOBJECT_UEVENT = 0xf
-- NETLINK_LISTEN_ALL_NSID = 0x8
-- NETLINK_LIST_MEMBERSHIPS = 0x9
-- NETLINK_NETFILTER = 0xc
-- NETLINK_NFLOG = 0x5
-- NETLINK_NO_ENOBUFS = 0x5
-- NETLINK_PKTINFO = 0x3
-- NETLINK_RDMA = 0x14
-- NETLINK_ROUTE = 0x0
-- NETLINK_RX_RING = 0x6
-- NETLINK_SCSITRANSPORT = 0x12
-- NETLINK_SELINUX = 0x7
-- NETLINK_SOCK_DIAG = 0x4
-- NETLINK_TX_RING = 0x7
-- NETLINK_UNUSED = 0x1
-- NETLINK_USERSOCK = 0x2
-- NETLINK_XFRM = 0x6
-- NL0 = 0x0
-- NL1 = 0x100
-- NLA_ALIGNTO = 0x4
-- NLA_F_NESTED = 0x8000
-- NLA_F_NET_BYTEORDER = 0x4000
-- NLA_HDRLEN = 0x4
-- NLDLY = 0x100
-- NLMSG_ALIGNTO = 0x4
-- NLMSG_DONE = 0x3
-- NLMSG_ERROR = 0x2
-- NLMSG_HDRLEN = 0x10
-- NLMSG_MIN_TYPE = 0x10
-- NLMSG_NOOP = 0x1
-- NLMSG_OVERRUN = 0x4
-- NLM_F_ACK = 0x4
-- NLM_F_APPEND = 0x800
-- NLM_F_ATOMIC = 0x400
-- NLM_F_CREATE = 0x400
-- NLM_F_DUMP = 0x300
-- NLM_F_DUMP_FILTERED = 0x20
-- NLM_F_DUMP_INTR = 0x10
-- NLM_F_ECHO = 0x8
-- NLM_F_EXCL = 0x200
-- NLM_F_MATCH = 0x200
-- NLM_F_MULTI = 0x2
-- NLM_F_REPLACE = 0x100
-- NLM_F_REQUEST = 0x1
-- NLM_F_ROOT = 0x100
-- NOFLSH = 0x80
-- OCRNL = 0x8
-- OFDEL = 0x80
-- OFILL = 0x40
-- OLCUC = 0x2
-- ONLCR = 0x4
-- ONLRET = 0x20
-- ONOCR = 0x10
-- OPOST = 0x1
-- O_ACCMODE = 0x3
-- O_APPEND = 0x400
-- O_ASYNC = 0x2000
-- O_CLOEXEC = 0x80000
-- O_CREAT = 0x40
-- O_DIRECT = 0x10000
-- O_DIRECTORY = 0x4000
-- O_DSYNC = 0x1000
-- O_EXCL = 0x80
-- O_FSYNC = 0x101000
-- O_LARGEFILE = 0x20000
-- O_NDELAY = 0x800
-- O_NOATIME = 0x40000
-- O_NOCTTY = 0x100
-- O_NOFOLLOW = 0x8000
-- O_NONBLOCK = 0x800
-- O_PATH = 0x200000
-- O_RDONLY = 0x0
-- O_RDWR = 0x2
-- O_RSYNC = 0x101000
-- O_SYNC = 0x101000
-- O_TMPFILE = 0x404000
-- O_TRUNC = 0x200
-- O_WRONLY = 0x1
-- PACKET_ADD_MEMBERSHIP = 0x1
-- PACKET_AUXDATA = 0x8
-- PACKET_BROADCAST = 0x1
-- PACKET_COPY_THRESH = 0x7
-- PACKET_DROP_MEMBERSHIP = 0x2
-- PACKET_FANOUT = 0x12
-- PACKET_FANOUT_CBPF = 0x6
-- PACKET_FANOUT_CPU = 0x2
-- PACKET_FANOUT_DATA = 0x16
-- PACKET_FANOUT_EBPF = 0x7
-- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
-- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
-- PACKET_FANOUT_HASH = 0x0
-- PACKET_FANOUT_LB = 0x1
-- PACKET_FANOUT_QM = 0x5
-- PACKET_FANOUT_RND = 0x4
-- PACKET_FANOUT_ROLLOVER = 0x3
-- PACKET_FASTROUTE = 0x6
-- PACKET_HDRLEN = 0xb
-- PACKET_HOST = 0x0
-- PACKET_KERNEL = 0x7
-- PACKET_LOOPBACK = 0x5
-- PACKET_LOSS = 0xe
-- PACKET_MR_ALLMULTI = 0x2
-- PACKET_MR_MULTICAST = 0x0
-- PACKET_MR_PROMISC = 0x1
-- PACKET_MR_UNICAST = 0x3
-- PACKET_MULTICAST = 0x2
-- PACKET_ORIGDEV = 0x9
-- PACKET_OTHERHOST = 0x3
-- PACKET_OUTGOING = 0x4
-- PACKET_QDISC_BYPASS = 0x14
-- PACKET_RECV_OUTPUT = 0x3
-- PACKET_RESERVE = 0xc
-- PACKET_ROLLOVER_STATS = 0x15
-- PACKET_RX_RING = 0x5
-- PACKET_STATISTICS = 0x6
-- PACKET_TIMESTAMP = 0x11
-- PACKET_TX_HAS_OFF = 0x13
-- PACKET_TX_RING = 0xd
-- PACKET_TX_TIMESTAMP = 0x10
-- PACKET_USER = 0x6
-- PACKET_VERSION = 0xa
-- PACKET_VNET_HDR = 0xf
-- PARENB = 0x100
-- PARITY_CRC16_PR0 = 0x2
-- PARITY_CRC16_PR0_CCITT = 0x4
-- PARITY_CRC16_PR1 = 0x3
-- PARITY_CRC16_PR1_CCITT = 0x5
-- PARITY_CRC32_PR0_CCITT = 0x6
-- PARITY_CRC32_PR1_CCITT = 0x7
-- PARITY_DEFAULT = 0x0
-- PARITY_NONE = 0x1
-- PARMRK = 0x8
-- PARODD = 0x200
-- PENDIN = 0x4000
-- PERF_EVENT_IOC_DISABLE = 0x2401
-- PERF_EVENT_IOC_ENABLE = 0x2400
-- PERF_EVENT_IOC_ID = 0x80042407
-- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
-- PERF_EVENT_IOC_PERIOD = 0x40082404
-- PERF_EVENT_IOC_REFRESH = 0x2402
-- PERF_EVENT_IOC_RESET = 0x2403
-- PERF_EVENT_IOC_SET_BPF = 0x40042408
-- PERF_EVENT_IOC_SET_FILTER = 0x40042406
-- PERF_EVENT_IOC_SET_OUTPUT = 0x2405
-- PRIO_PGRP = 0x1
-- PRIO_PROCESS = 0x0
-- PRIO_USER = 0x2
-- PROT_EXEC = 0x4
-- PROT_GROWSDOWN = 0x1000000
-- PROT_GROWSUP = 0x2000000
-- PROT_NONE = 0x0
-- PROT_READ = 0x1
-- PROT_WRITE = 0x2
-- PR_CAPBSET_DROP = 0x18
-- PR_CAPBSET_READ = 0x17
-- PR_CAP_AMBIENT = 0x2f
-- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
-- PR_CAP_AMBIENT_IS_SET = 0x1
-- PR_CAP_AMBIENT_LOWER = 0x3
-- PR_CAP_AMBIENT_RAISE = 0x2
-- PR_ENDIAN_BIG = 0x0
-- PR_ENDIAN_LITTLE = 0x1
-- PR_ENDIAN_PPC_LITTLE = 0x2
-- PR_FPEMU_NOPRINT = 0x1
-- PR_FPEMU_SIGFPE = 0x2
-- PR_FP_EXC_ASYNC = 0x2
-- PR_FP_EXC_DISABLED = 0x0
-- PR_FP_EXC_DIV = 0x10000
-- PR_FP_EXC_INV = 0x100000
-- PR_FP_EXC_NONRECOV = 0x1
-- PR_FP_EXC_OVF = 0x20000
-- PR_FP_EXC_PRECISE = 0x3
-- PR_FP_EXC_RES = 0x80000
-- PR_FP_EXC_SW_ENABLE = 0x80
-- PR_FP_EXC_UND = 0x40000
-- PR_FP_MODE_FR = 0x1
-- PR_FP_MODE_FRE = 0x2
-- PR_GET_CHILD_SUBREAPER = 0x25
-- PR_GET_DUMPABLE = 0x3
-- PR_GET_ENDIAN = 0x13
-- PR_GET_FPEMU = 0x9
-- PR_GET_FPEXC = 0xb
-- PR_GET_FP_MODE = 0x2e
-- PR_GET_KEEPCAPS = 0x7
-- PR_GET_NAME = 0x10
-- PR_GET_NO_NEW_PRIVS = 0x27
-- PR_GET_PDEATHSIG = 0x2
-- PR_GET_SECCOMP = 0x15
-- PR_GET_SECUREBITS = 0x1b
-- PR_GET_THP_DISABLE = 0x2a
-- PR_GET_TID_ADDRESS = 0x28
-- PR_GET_TIMERSLACK = 0x1e
-- PR_GET_TIMING = 0xd
-- PR_GET_TSC = 0x19
-- PR_GET_UNALIGN = 0x5
-- PR_MCE_KILL = 0x21
-- PR_MCE_KILL_CLEAR = 0x0
-- PR_MCE_KILL_DEFAULT = 0x2
-- PR_MCE_KILL_EARLY = 0x1
-- PR_MCE_KILL_GET = 0x22
-- PR_MCE_KILL_LATE = 0x0
-- PR_MCE_KILL_SET = 0x1
-- PR_MPX_DISABLE_MANAGEMENT = 0x2c
-- PR_MPX_ENABLE_MANAGEMENT = 0x2b
-- PR_SET_CHILD_SUBREAPER = 0x24
-- PR_SET_DUMPABLE = 0x4
-- PR_SET_ENDIAN = 0x14
-- PR_SET_FPEMU = 0xa
-- PR_SET_FPEXC = 0xc
-- PR_SET_FP_MODE = 0x2d
-- PR_SET_KEEPCAPS = 0x8
-- PR_SET_MM = 0x23
-- PR_SET_MM_ARG_END = 0x9
-- PR_SET_MM_ARG_START = 0x8
-- PR_SET_MM_AUXV = 0xc
-- PR_SET_MM_BRK = 0x7
-- PR_SET_MM_END_CODE = 0x2
-- PR_SET_MM_END_DATA = 0x4
-- PR_SET_MM_ENV_END = 0xb
-- PR_SET_MM_ENV_START = 0xa
-- PR_SET_MM_EXE_FILE = 0xd
-- PR_SET_MM_MAP = 0xe
-- PR_SET_MM_MAP_SIZE = 0xf
-- PR_SET_MM_START_BRK = 0x6
-- PR_SET_MM_START_CODE = 0x1
-- PR_SET_MM_START_DATA = 0x3
-- PR_SET_MM_START_STACK = 0x5
-- PR_SET_NAME = 0xf
-- PR_SET_NO_NEW_PRIVS = 0x26
-- PR_SET_PDEATHSIG = 0x1
-- PR_SET_PTRACER = 0x59616d61
-- PR_SET_PTRACER_ANY = 0xffffffff
-- PR_SET_SECCOMP = 0x16
-- PR_SET_SECUREBITS = 0x1c
-- PR_SET_THP_DISABLE = 0x29
-- PR_SET_TIMERSLACK = 0x1d
-- PR_SET_TIMING = 0xe
-- PR_SET_TSC = 0x1a
-- PR_SET_UNALIGN = 0x6
-- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
-- PR_TASK_PERF_EVENTS_ENABLE = 0x20
-- PR_TIMING_STATISTICAL = 0x0
-- PR_TIMING_TIMESTAMP = 0x1
-- PR_TSC_ENABLE = 0x1
-- PR_TSC_SIGSEGV = 0x2
-- PR_UNALIGN_NOPRINT = 0x1
-- PR_UNALIGN_SIGBUS = 0x2
-- PTRACE_ATTACH = 0x10
-- PTRACE_CONT = 0x7
-- PTRACE_DETACH = 0x11
-- PTRACE_EVENT_CLONE = 0x3
-- PTRACE_EVENT_EXEC = 0x4
-- PTRACE_EVENT_EXIT = 0x6
-- PTRACE_EVENT_FORK = 0x1
-- PTRACE_EVENT_SECCOMP = 0x7
-- PTRACE_EVENT_STOP = 0x80
-- PTRACE_EVENT_VFORK = 0x2
-- PTRACE_EVENT_VFORK_DONE = 0x5
-- PTRACE_GETCRUNCHREGS = 0x19
-- PTRACE_GETEVENTMSG = 0x4201
-- PTRACE_GETFPREGS = 0xe
-- PTRACE_GETHBPREGS = 0x1d
-- PTRACE_GETREGS = 0xc
-- PTRACE_GETREGSET = 0x4204
-- PTRACE_GETSIGINFO = 0x4202
-- PTRACE_GETSIGMASK = 0x420a
-- PTRACE_GETVFPREGS = 0x1b
-- PTRACE_GETWMMXREGS = 0x12
-- PTRACE_GET_THREAD_AREA = 0x16
-- PTRACE_INTERRUPT = 0x4207
-- PTRACE_KILL = 0x8
-- PTRACE_LISTEN = 0x4208
-- PTRACE_OLDSETOPTIONS = 0x15
-- PTRACE_O_EXITKILL = 0x100000
-- PTRACE_O_MASK = 0x3000ff
-- PTRACE_O_SUSPEND_SECCOMP = 0x200000
-- PTRACE_O_TRACECLONE = 0x8
-- PTRACE_O_TRACEEXEC = 0x10
-- PTRACE_O_TRACEEXIT = 0x40
-- PTRACE_O_TRACEFORK = 0x2
-- PTRACE_O_TRACESECCOMP = 0x80
-- PTRACE_O_TRACESYSGOOD = 0x1
-- PTRACE_O_TRACEVFORK = 0x4
-- PTRACE_O_TRACEVFORKDONE = 0x20
-- PTRACE_PEEKDATA = 0x2
-- PTRACE_PEEKSIGINFO = 0x4209
-- PTRACE_PEEKSIGINFO_SHARED = 0x1
-- PTRACE_PEEKTEXT = 0x1
-- PTRACE_PEEKUSR = 0x3
-- PTRACE_POKEDATA = 0x5
-- PTRACE_POKETEXT = 0x4
-- PTRACE_POKEUSR = 0x6
-- PTRACE_SECCOMP_GET_FILTER = 0x420c
-- PTRACE_SEIZE = 0x4206
-- PTRACE_SETCRUNCHREGS = 0x1a
-- PTRACE_SETFPREGS = 0xf
-- PTRACE_SETHBPREGS = 0x1e
-- PTRACE_SETOPTIONS = 0x4200
-- PTRACE_SETREGS = 0xd
-- PTRACE_SETREGSET = 0x4205
-- PTRACE_SETSIGINFO = 0x4203
-- PTRACE_SETSIGMASK = 0x420b
-- PTRACE_SETVFPREGS = 0x1c
-- PTRACE_SETWMMXREGS = 0x13
-- PTRACE_SET_SYSCALL = 0x17
-- PTRACE_SINGLESTEP = 0x9
-- PTRACE_SYSCALL = 0x18
-- PTRACE_TRACEME = 0x0
-- PT_DATA_ADDR = 0x10004
-- PT_TEXT_ADDR = 0x10000
-- PT_TEXT_END_ADDR = 0x10008
-- RLIMIT_AS = 0x9
-- RLIMIT_CORE = 0x4
-- RLIMIT_CPU = 0x0
-- RLIMIT_DATA = 0x2
-- RLIMIT_FSIZE = 0x1
-- RLIMIT_LOCKS = 0xa
-- RLIMIT_MEMLOCK = 0x8
-- RLIMIT_MSGQUEUE = 0xc
-- RLIMIT_NICE = 0xd
-- RLIMIT_NOFILE = 0x7
-- RLIMIT_NPROC = 0x6
-- RLIMIT_RSS = 0x5
-- RLIMIT_RTPRIO = 0xe
-- RLIMIT_RTTIME = 0xf
-- RLIMIT_SIGPENDING = 0xb
-- RLIMIT_STACK = 0x3
-- RLIM_INFINITY = -0x1
-- RTAX_ADVMSS = 0x8
-- RTAX_CC_ALGO = 0x10
-- RTAX_CWND = 0x7
-- RTAX_FEATURES = 0xc
-- RTAX_FEATURE_ALLFRAG = 0x8
-- RTAX_FEATURE_ECN = 0x1
-- RTAX_FEATURE_MASK = 0xf
-- RTAX_FEATURE_SACK = 0x2
-- RTAX_FEATURE_TIMESTAMP = 0x4
-- RTAX_HOPLIMIT = 0xa
-- RTAX_INITCWND = 0xb
-- RTAX_INITRWND = 0xe
-- RTAX_LOCK = 0x1
-- RTAX_MAX = 0x10
-- RTAX_MTU = 0x2
-- RTAX_QUICKACK = 0xf
-- RTAX_REORDERING = 0x9
-- RTAX_RTO_MIN = 0xd
-- RTAX_RTT = 0x4
-- RTAX_RTTVAR = 0x5
-- RTAX_SSTHRESH = 0x6
-- RTAX_UNSPEC = 0x0
-- RTAX_WINDOW = 0x3
-- RTA_ALIGNTO = 0x4
-- RTA_MAX = 0x19
-- RTCF_DIRECTSRC = 0x4000000
-- RTCF_DOREDIRECT = 0x1000000
-- RTCF_LOG = 0x2000000
-- RTCF_MASQ = 0x400000
-- RTCF_NAT = 0x800000
-- RTCF_VALVE = 0x200000
-- RTF_ADDRCLASSMASK = 0xf8000000
-- RTF_ADDRCONF = 0x40000
-- RTF_ALLONLINK = 0x20000
-- RTF_BROADCAST = 0x10000000
-- RTF_CACHE = 0x1000000
-- RTF_DEFAULT = 0x10000
-- RTF_DYNAMIC = 0x10
-- RTF_FLOW = 0x2000000
-- RTF_GATEWAY = 0x2
-- RTF_HOST = 0x4
-- RTF_INTERFACE = 0x40000000
-- RTF_IRTT = 0x100
-- RTF_LINKRT = 0x100000
-- RTF_LOCAL = 0x80000000
-- RTF_MODIFIED = 0x20
-- RTF_MSS = 0x40
-- RTF_MTU = 0x40
-- RTF_MULTICAST = 0x20000000
-- RTF_NAT = 0x8000000
-- RTF_NOFORWARD = 0x1000
-- RTF_NONEXTHOP = 0x200000
-- RTF_NOPMTUDISC = 0x4000
-- RTF_POLICY = 0x4000000
-- RTF_REINSTATE = 0x8
-- RTF_REJECT = 0x200
-- RTF_STATIC = 0x400
-- RTF_THROW = 0x2000
-- RTF_UP = 0x1
-- RTF_WINDOW = 0x80
-- RTF_XRESOLVE = 0x800
-- RTM_BASE = 0x10
-- RTM_DELACTION = 0x31
-- RTM_DELADDR = 0x15
-- RTM_DELADDRLABEL = 0x49
-- RTM_DELLINK = 0x11
-- RTM_DELMDB = 0x55
-- RTM_DELNEIGH = 0x1d
-- RTM_DELNSID = 0x59
-- RTM_DELQDISC = 0x25
-- RTM_DELROUTE = 0x19
-- RTM_DELRULE = 0x21
-- RTM_DELTCLASS = 0x29
-- RTM_DELTFILTER = 0x2d
-- RTM_F_CLONED = 0x200
-- RTM_F_EQUALIZE = 0x400
-- RTM_F_LOOKUP_TABLE = 0x1000
-- RTM_F_NOTIFY = 0x100
-- RTM_F_PREFIX = 0x800
-- RTM_GETACTION = 0x32
-- RTM_GETADDR = 0x16
-- RTM_GETADDRLABEL = 0x4a
-- RTM_GETANYCAST = 0x3e
-- RTM_GETDCB = 0x4e
-- RTM_GETLINK = 0x12
-- RTM_GETMDB = 0x56
-- RTM_GETMULTICAST = 0x3a
-- RTM_GETNEIGH = 0x1e
-- RTM_GETNEIGHTBL = 0x42
-- RTM_GETNETCONF = 0x52
-- RTM_GETNSID = 0x5a
-- RTM_GETQDISC = 0x26
-- RTM_GETROUTE = 0x1a
-- RTM_GETRULE = 0x22
-- RTM_GETSTATS = 0x5e
-- RTM_GETTCLASS = 0x2a
-- RTM_GETTFILTER = 0x2e
-- RTM_MAX = 0x5f
-- RTM_NEWACTION = 0x30
-- RTM_NEWADDR = 0x14
-- RTM_NEWADDRLABEL = 0x48
-- RTM_NEWLINK = 0x10
-- RTM_NEWMDB = 0x54
-- RTM_NEWNDUSEROPT = 0x44
-- RTM_NEWNEIGH = 0x1c
-- RTM_NEWNEIGHTBL = 0x40
-- RTM_NEWNETCONF = 0x50
-- RTM_NEWNSID = 0x58
-- RTM_NEWPREFIX = 0x34
-- RTM_NEWQDISC = 0x24
-- RTM_NEWROUTE = 0x18
-- RTM_NEWRULE = 0x20
-- RTM_NEWSTATS = 0x5c
-- RTM_NEWTCLASS = 0x28
-- RTM_NEWTFILTER = 0x2c
-- RTM_NR_FAMILIES = 0x14
-- RTM_NR_MSGTYPES = 0x50
-- RTM_SETDCB = 0x4f
-- RTM_SETLINK = 0x13
-- RTM_SETNEIGHTBL = 0x43
-- RTNH_ALIGNTO = 0x4
-- RTNH_COMPARE_MASK = 0x19
-- RTNH_F_DEAD = 0x1
-- RTNH_F_LINKDOWN = 0x10
-- RTNH_F_OFFLOAD = 0x8
-- RTNH_F_ONLINK = 0x4
-- RTNH_F_PERVASIVE = 0x2
-- RTN_MAX = 0xb
-- RTPROT_BABEL = 0x2a
-- RTPROT_BIRD = 0xc
-- RTPROT_BOOT = 0x3
-- RTPROT_DHCP = 0x10
-- RTPROT_DNROUTED = 0xd
-- RTPROT_GATED = 0x8
-- RTPROT_KERNEL = 0x2
-- RTPROT_MROUTED = 0x11
-- RTPROT_MRT = 0xa
-- RTPROT_NTK = 0xf
-- RTPROT_RA = 0x9
-- RTPROT_REDIRECT = 0x1
-- RTPROT_STATIC = 0x4
-- RTPROT_UNSPEC = 0x0
-- RTPROT_XORP = 0xe
-- RTPROT_ZEBRA = 0xb
-- RT_CLASS_DEFAULT = 0xfd
-- RT_CLASS_LOCAL = 0xff
-- RT_CLASS_MAIN = 0xfe
-- RT_CLASS_MAX = 0xff
-- RT_CLASS_UNSPEC = 0x0
-- RUSAGE_CHILDREN = -0x1
-- RUSAGE_SELF = 0x0
-- RUSAGE_THREAD = 0x1
-- SCM_CREDENTIALS = 0x2
-- SCM_RIGHTS = 0x1
-- SCM_TIMESTAMP = 0x1d
-- SCM_TIMESTAMPING = 0x25
-- SCM_TIMESTAMPING_OPT_STATS = 0x36
-- SCM_TIMESTAMPNS = 0x23
-- SCM_WIFI_STATUS = 0x29
-- SECCOMP_MODE_DISABLED = 0x0
-- SECCOMP_MODE_FILTER = 0x2
-- SECCOMP_MODE_STRICT = 0x1
-- SHUT_RD = 0x0
-- SHUT_RDWR = 0x2
-- SHUT_WR = 0x1
-- SIOCADDDLCI = 0x8980
-- SIOCADDMULTI = 0x8931
-- SIOCADDRT = 0x890b
-- SIOCATMARK = 0x8905
-- SIOCBONDCHANGEACTIVE = 0x8995
-- SIOCBONDENSLAVE = 0x8990
-- SIOCBONDINFOQUERY = 0x8994
-- SIOCBONDRELEASE = 0x8991
-- SIOCBONDSETHWADDR = 0x8992
-- SIOCBONDSLAVEINFOQUERY = 0x8993
-- SIOCBRADDBR = 0x89a0
-- SIOCBRADDIF = 0x89a2
-- SIOCBRDELBR = 0x89a1
-- SIOCBRDELIF = 0x89a3
-- SIOCDARP = 0x8953
-- SIOCDELDLCI = 0x8981
-- SIOCDELMULTI = 0x8932
-- SIOCDELRT = 0x890c
-- SIOCDEVPRIVATE = 0x89f0
-- SIOCDIFADDR = 0x8936
-- SIOCDRARP = 0x8960
-- SIOCETHTOOL = 0x8946
-- SIOCGARP = 0x8954
-- SIOCGHWTSTAMP = 0x89b1
-- SIOCGIFADDR = 0x8915
-- SIOCGIFBR = 0x8940
-- SIOCGIFBRDADDR = 0x8919
-- SIOCGIFCONF = 0x8912
-- SIOCGIFCOUNT = 0x8938
-- SIOCGIFDSTADDR = 0x8917
-- SIOCGIFENCAP = 0x8925
-- SIOCGIFFLAGS = 0x8913
-- SIOCGIFHWADDR = 0x8927
-- SIOCGIFINDEX = 0x8933
-- SIOCGIFMAP = 0x8970
-- SIOCGIFMEM = 0x891f
-- SIOCGIFMETRIC = 0x891d
-- SIOCGIFMTU = 0x8921
-- SIOCGIFNAME = 0x8910
-- SIOCGIFNETMASK = 0x891b
-- SIOCGIFPFLAGS = 0x8935
-- SIOCGIFSLAVE = 0x8929
-- SIOCGIFTXQLEN = 0x8942
-- SIOCGIFVLAN = 0x8982
-- SIOCGMIIPHY = 0x8947
-- SIOCGMIIREG = 0x8948
-- SIOCGPGRP = 0x8904
-- SIOCGRARP = 0x8961
-- SIOCGSKNS = 0x894c
-- SIOCGSTAMP = 0x8906
-- SIOCGSTAMPNS = 0x8907
-- SIOCINQ = 0x541b
-- SIOCOUTQ = 0x5411
-- SIOCOUTQNSD = 0x894b
-- SIOCPROTOPRIVATE = 0x89e0
-- SIOCRTMSG = 0x890d
-- SIOCSARP = 0x8955
-- SIOCSHWTSTAMP = 0x89b0
-- SIOCSIFADDR = 0x8916
-- SIOCSIFBR = 0x8941
-- SIOCSIFBRDADDR = 0x891a
-- SIOCSIFDSTADDR = 0x8918
-- SIOCSIFENCAP = 0x8926
-- SIOCSIFFLAGS = 0x8914
-- SIOCSIFHWADDR = 0x8924
-- SIOCSIFHWBROADCAST = 0x8937
-- SIOCSIFLINK = 0x8911
-- SIOCSIFMAP = 0x8971
-- SIOCSIFMEM = 0x8920
-- SIOCSIFMETRIC = 0x891e
-- SIOCSIFMTU = 0x8922
-- SIOCSIFNAME = 0x8923
-- SIOCSIFNETMASK = 0x891c
-- SIOCSIFPFLAGS = 0x8934
-- SIOCSIFSLAVE = 0x8930
-- SIOCSIFTXQLEN = 0x8943
-- SIOCSIFVLAN = 0x8983
-- SIOCSMIIREG = 0x8949
-- SIOCSPGRP = 0x8902
-- SIOCSRARP = 0x8962
-- SIOCWANDEV = 0x894a
-- SOCK_CLOEXEC = 0x80000
-- SOCK_DCCP = 0x6
-- SOCK_DGRAM = 0x2
-- SOCK_IOC_TYPE = 0x89
-- SOCK_NONBLOCK = 0x800
-- SOCK_PACKET = 0xa
-- SOCK_RAW = 0x3
-- SOCK_RDM = 0x4
-- SOCK_SEQPACKET = 0x5
-- SOCK_STREAM = 0x1
-- SOL_AAL = 0x109
-- SOL_ALG = 0x117
-- SOL_ATM = 0x108
-- SOL_CAIF = 0x116
-- SOL_CAN_BASE = 0x64
-- SOL_DCCP = 0x10d
-- SOL_DECNET = 0x105
-- SOL_ICMPV6 = 0x3a
-- SOL_IP = 0x0
-- SOL_IPV6 = 0x29
-- SOL_IRDA = 0x10a
-- SOL_IUCV = 0x115
-- SOL_KCM = 0x119
-- SOL_LLC = 0x10c
-- SOL_NETBEUI = 0x10b
-- SOL_NETLINK = 0x10e
-- SOL_NFC = 0x118
-- SOL_PACKET = 0x107
-- SOL_PNPIPE = 0x113
-- SOL_PPPOL2TP = 0x111
-- SOL_RAW = 0xff
-- SOL_RDS = 0x114
-- SOL_RXRPC = 0x110
-- SOL_SOCKET = 0x1
-- SOL_TCP = 0x6
-- SOL_TIPC = 0x10f
-- SOL_X25 = 0x106
-- SOMAXCONN = 0x80
-- SO_ACCEPTCONN = 0x1e
-- SO_ATTACH_BPF = 0x32
-- SO_ATTACH_FILTER = 0x1a
-- SO_ATTACH_REUSEPORT_CBPF = 0x33
-- SO_ATTACH_REUSEPORT_EBPF = 0x34
-- SO_BINDTODEVICE = 0x19
-- SO_BPF_EXTENSIONS = 0x30
-- SO_BROADCAST = 0x6
-- SO_BSDCOMPAT = 0xe
-- SO_BUSY_POLL = 0x2e
-- SO_CNX_ADVICE = 0x35
-- SO_DEBUG = 0x1
-- SO_DETACH_BPF = 0x1b
-- SO_DETACH_FILTER = 0x1b
-- SO_DOMAIN = 0x27
-- SO_DONTROUTE = 0x5
-- SO_ERROR = 0x4
-- SO_GET_FILTER = 0x1a
-- SO_INCOMING_CPU = 0x31
-- SO_KEEPALIVE = 0x9
-- SO_LINGER = 0xd
-- SO_LOCK_FILTER = 0x2c
-- SO_MARK = 0x24
-- SO_MAX_PACING_RATE = 0x2f
-- SO_NOFCS = 0x2b
-- SO_NO_CHECK = 0xb
-- SO_OOBINLINE = 0xa
-- SO_PASSCRED = 0x10
-- SO_PASSSEC = 0x22
-- SO_PEEK_OFF = 0x2a
-- SO_PEERCRED = 0x11
-- SO_PEERNAME = 0x1c
-- SO_PEERSEC = 0x1f
-- SO_PRIORITY = 0xc
-- SO_PROTOCOL = 0x26
-- SO_RCVBUF = 0x8
-- SO_RCVBUFFORCE = 0x21
-- SO_RCVLOWAT = 0x12
-- SO_RCVTIMEO = 0x14
-- SO_REUSEADDR = 0x2
-- SO_REUSEPORT = 0xf
-- SO_RXQ_OVFL = 0x28
-- SO_SECURITY_AUTHENTICATION = 0x16
-- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-- SO_SELECT_ERR_QUEUE = 0x2d
-- SO_SNDBUF = 0x7
-- SO_SNDBUFFORCE = 0x20
-- SO_SNDLOWAT = 0x13
-- SO_SNDTIMEO = 0x15
-- SO_TIMESTAMP = 0x1d
-- SO_TIMESTAMPING = 0x25
-- SO_TIMESTAMPNS = 0x23
-- SO_TYPE = 0x3
-- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
-- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
-- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
-- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
-- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
-- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
-- SO_VM_SOCKETS_TRUSTED = 0x5
-- SO_WIFI_STATUS = 0x29
-- SPLICE_F_GIFT = 0x8
-- SPLICE_F_MORE = 0x4
-- SPLICE_F_MOVE = 0x1
-- SPLICE_F_NONBLOCK = 0x2
-- S_BLKSIZE = 0x200
-- S_IEXEC = 0x40
-- S_IFBLK = 0x6000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFIFO = 0x1000
-- S_IFLNK = 0xa000
-- S_IFMT = 0xf000
-- S_IFREG = 0x8000
-- S_IFSOCK = 0xc000
-- S_IREAD = 0x100
-- S_IRGRP = 0x20
-- S_IROTH = 0x4
-- S_IRUSR = 0x100
-- S_IRWXG = 0x38
-- S_IRWXO = 0x7
-- S_IRWXU = 0x1c0
-- S_ISGID = 0x400
-- S_ISUID = 0x800
-- S_ISVTX = 0x200
-- S_IWGRP = 0x10
-- S_IWOTH = 0x2
-- S_IWRITE = 0x80
-- S_IWUSR = 0x80
-- S_IXGRP = 0x8
-- S_IXOTH = 0x1
-- S_IXUSR = 0x40
-- TAB0 = 0x0
-- TAB1 = 0x800
-- TAB2 = 0x1000
-- TAB3 = 0x1800
-- TABDLY = 0x1800
-- TASKSTATS_CMD_ATTR_MAX = 0x4
-- TASKSTATS_CMD_MAX = 0x2
-- TASKSTATS_GENL_NAME = "TASKSTATS"
-- TASKSTATS_GENL_VERSION = 0x1
-- TASKSTATS_TYPE_MAX = 0x6
-- TASKSTATS_VERSION = 0x8
-- TCFLSH = 0x540b
-- TCGETA = 0x5405
-- TCGETS = 0x5401
-- TCGETS2 = 0x802c542a
-- TCGETX = 0x5432
-- TCIFLUSH = 0x0
-- TCIOFF = 0x2
-- TCIOFLUSH = 0x2
-- TCION = 0x3
-- TCOFLUSH = 0x1
-- TCOOFF = 0x0
-- TCOON = 0x1
-- TCP_CC_INFO = 0x1a
-- TCP_CONGESTION = 0xd
-- TCP_COOKIE_IN_ALWAYS = 0x1
-- TCP_COOKIE_MAX = 0x10
-- TCP_COOKIE_MIN = 0x8
-- TCP_COOKIE_OUT_NEVER = 0x2
-- TCP_COOKIE_PAIR_SIZE = 0x20
-- TCP_COOKIE_TRANSACTIONS = 0xf
-- TCP_CORK = 0x3
-- TCP_DEFER_ACCEPT = 0x9
-- TCP_FASTOPEN = 0x17
-- TCP_INFO = 0xb
-- TCP_KEEPCNT = 0x6
-- TCP_KEEPIDLE = 0x4
-- TCP_KEEPINTVL = 0x5
-- TCP_LINGER2 = 0x8
-- TCP_MAXSEG = 0x2
-- TCP_MAXWIN = 0xffff
-- TCP_MAX_WINSHIFT = 0xe
-- TCP_MD5SIG = 0xe
-- TCP_MD5SIG_MAXKEYLEN = 0x50
-- TCP_MSS = 0x200
-- TCP_MSS_DEFAULT = 0x218
-- TCP_MSS_DESIRED = 0x4c4
-- TCP_NODELAY = 0x1
-- TCP_NOTSENT_LOWAT = 0x19
-- TCP_QUEUE_SEQ = 0x15
-- TCP_QUICKACK = 0xc
-- TCP_REPAIR = 0x13
-- TCP_REPAIR_OPTIONS = 0x16
-- TCP_REPAIR_QUEUE = 0x14
-- TCP_REPAIR_WINDOW = 0x1d
-- TCP_SAVED_SYN = 0x1c
-- TCP_SAVE_SYN = 0x1b
-- TCP_SYNCNT = 0x7
-- TCP_S_DATA_IN = 0x4
-- TCP_S_DATA_OUT = 0x8
-- TCP_THIN_DUPACK = 0x11
-- TCP_THIN_LINEAR_TIMEOUTS = 0x10
-- TCP_TIMESTAMP = 0x18
-- TCP_USER_TIMEOUT = 0x12
-- TCP_WINDOW_CLAMP = 0xa
-- TCSAFLUSH = 0x2
-- TCSBRK = 0x5409
-- TCSBRKP = 0x5425
-- TCSETA = 0x5406
-- TCSETAF = 0x5408
-- TCSETAW = 0x5407
-- TCSETS = 0x5402
-- TCSETS2 = 0x402c542b
-- TCSETSF = 0x5404
-- TCSETSF2 = 0x402c542d
-- TCSETSW = 0x5403
-- TCSETSW2 = 0x402c542c
-- TCSETX = 0x5433
-- TCSETXF = 0x5434
-- TCSETXW = 0x5435
-- TCXONC = 0x540a
-- TIOCCBRK = 0x5428
-- TIOCCONS = 0x541d
-- TIOCEXCL = 0x540c
-- TIOCGDEV = 0x80045432
-- TIOCGETD = 0x5424
-- TIOCGEXCL = 0x80045440
-- TIOCGICOUNT = 0x545d
-- TIOCGLCKTRMIOS = 0x5456
-- TIOCGPGRP = 0x540f
-- TIOCGPKT = 0x80045438
-- TIOCGPTLCK = 0x80045439
-- TIOCGPTN = 0x80045430
-- TIOCGRS485 = 0x542e
-- TIOCGSERIAL = 0x541e
-- TIOCGSID = 0x5429
-- TIOCGSOFTCAR = 0x5419
-- TIOCGWINSZ = 0x5413
-- TIOCINQ = 0x541b
-- TIOCLINUX = 0x541c
-- TIOCMBIC = 0x5417
-- TIOCMBIS = 0x5416
-- TIOCMGET = 0x5415
-- TIOCMIWAIT = 0x545c
-- TIOCMSET = 0x5418
-- TIOCM_CAR = 0x40
-- TIOCM_CD = 0x40
-- TIOCM_CTS = 0x20
-- TIOCM_DSR = 0x100
-- TIOCM_DTR = 0x2
-- TIOCM_LE = 0x1
-- TIOCM_RI = 0x80
-- TIOCM_RNG = 0x80
-- TIOCM_RTS = 0x4
-- TIOCM_SR = 0x10
-- TIOCM_ST = 0x8
-- TIOCNOTTY = 0x5422
-- TIOCNXCL = 0x540d
-- TIOCOUTQ = 0x5411
-- TIOCPKT = 0x5420
-- TIOCPKT_DATA = 0x0
-- TIOCPKT_DOSTOP = 0x20
-- TIOCPKT_FLUSHREAD = 0x1
-- TIOCPKT_FLUSHWRITE = 0x2
-- TIOCPKT_IOCTL = 0x40
-- TIOCPKT_NOSTOP = 0x10
-- TIOCPKT_START = 0x8
-- TIOCPKT_STOP = 0x4
-- TIOCSBRK = 0x5427
-- TIOCSCTTY = 0x540e
-- TIOCSERCONFIG = 0x5453
-- TIOCSERGETLSR = 0x5459
-- TIOCSERGETMULTI = 0x545a
-- TIOCSERGSTRUCT = 0x5458
-- TIOCSERGWILD = 0x5454
-- TIOCSERSETMULTI = 0x545b
-- TIOCSERSWILD = 0x5455
-- TIOCSER_TEMT = 0x1
-- TIOCSETD = 0x5423
-- TIOCSIG = 0x40045436
-- TIOCSLCKTRMIOS = 0x5457
-- TIOCSPGRP = 0x5410
-- TIOCSPTLCK = 0x40045431
-- TIOCSRS485 = 0x542f
-- TIOCSSERIAL = 0x541f
-- TIOCSSOFTCAR = 0x541a
-- TIOCSTI = 0x5412
-- TIOCSWINSZ = 0x5414
-- TIOCVHANGUP = 0x5437
-- TOSTOP = 0x100
-- TS_COMM_LEN = 0x20
-- TUNATTACHFILTER = 0x400854d5
-- TUNDETACHFILTER = 0x400854d6
-- TUNGETFEATURES = 0x800454cf
-- TUNGETFILTER = 0x800854db
-- TUNGETIFF = 0x800454d2
-- TUNGETSNDBUF = 0x800454d3
-- TUNGETVNETBE = 0x800454df
-- TUNGETVNETHDRSZ = 0x800454d7
-- TUNGETVNETLE = 0x800454dd
-- TUNSETDEBUG = 0x400454c9
-- TUNSETGROUP = 0x400454ce
-- TUNSETIFF = 0x400454ca
-- TUNSETIFINDEX = 0x400454da
-- TUNSETLINK = 0x400454cd
-- TUNSETNOCSUM = 0x400454c8
-- TUNSETOFFLOAD = 0x400454d0
-- TUNSETOWNER = 0x400454cc
-- TUNSETPERSIST = 0x400454cb
-- TUNSETQUEUE = 0x400454d9
-- TUNSETSNDBUF = 0x400454d4
-- TUNSETTXFILTER = 0x400454d1
-- TUNSETVNETBE = 0x400454de
-- TUNSETVNETHDRSZ = 0x400454d8
-- TUNSETVNETLE = 0x400454dc
-- UMOUNT_NOFOLLOW = 0x8
-- VDISCARD = 0xd
-- VEOF = 0x4
-- VEOL = 0xb
-- VEOL2 = 0x10
-- VERASE = 0x2
-- VINTR = 0x0
-- VKILL = 0x3
-- VLNEXT = 0xf
-- VMADDR_CID_ANY = 0xffffffff
-- VMADDR_CID_HOST = 0x2
-- VMADDR_CID_HYPERVISOR = 0x0
-- VMADDR_CID_RESERVED = 0x1
-- VMADDR_PORT_ANY = 0xffffffff
-- VMIN = 0x6
-- VM_SOCKETS_INVALID_VERSION = 0xffffffff
-- VQUIT = 0x1
-- VREPRINT = 0xc
-- VSTART = 0x8
-- VSTOP = 0x9
-- VSUSP = 0xa
-- VSWTC = 0x7
-- VT0 = 0x0
-- VT1 = 0x4000
-- VTDLY = 0x4000
-- VTIME = 0x5
-- VWERASE = 0xe
-- WALL = 0x40000000
-- WCLONE = 0x80000000
-- WCONTINUED = 0x8
-- WEXITED = 0x4
-- WNOHANG = 0x1
-- WNOTHREAD = 0x20000000
-- WNOWAIT = 0x1000000
-- WORDSIZE = 0x20
-- WSTOPPED = 0x2
-- WUNTRACED = 0x2
-- XATTR_CREATE = 0x1
-- XATTR_REPLACE = 0x2
-- XCASE = 0x4
-- XTABS = 0x1800
-+ B1000000 = 0x1008
-+ B115200 = 0x1002
-+ B1152000 = 0x1009
-+ B1500000 = 0x100a
-+ B2000000 = 0x100b
-+ B230400 = 0x1003
-+ B2500000 = 0x100c
-+ B3000000 = 0x100d
-+ B3500000 = 0x100e
-+ B4000000 = 0x100f
-+ B460800 = 0x1004
-+ B500000 = 0x1005
-+ B57600 = 0x1001
-+ B576000 = 0x1006
-+ B921600 = 0x1007
-+ BLKBSZGET = 0x80041270
-+ BLKBSZSET = 0x40041271
-+ BLKFLSBUF = 0x1261
-+ BLKFRAGET = 0x1265
-+ BLKFRASET = 0x1264
-+ BLKGETSIZE = 0x1260
-+ BLKGETSIZE64 = 0x80041272
-+ BLKPBSZGET = 0x127b
-+ BLKRAGET = 0x1263
-+ BLKRASET = 0x1262
-+ BLKROGET = 0x125e
-+ BLKROSET = 0x125d
-+ BLKRRPART = 0x125f
-+ BLKSECTGET = 0x1267
-+ BLKSECTSET = 0x1266
-+ BLKSSZGET = 0x1268
-+ BOTHER = 0x1000
-+ BS1 = 0x2000
-+ BSDLY = 0x2000
-+ CBAUD = 0x100f
-+ CBAUDEX = 0x1000
-+ CIBAUD = 0x100f0000
-+ CLOCAL = 0x800
-+ CR1 = 0x200
-+ CR2 = 0x400
-+ CR3 = 0x600
-+ CRDLY = 0x600
-+ CREAD = 0x80
-+ CS6 = 0x10
-+ CS7 = 0x20
-+ CS8 = 0x30
-+ CSIZE = 0x30
-+ CSTOPB = 0x40
-+ ECHOCTL = 0x200
-+ ECHOE = 0x10
-+ ECHOK = 0x20
-+ ECHOKE = 0x800
-+ ECHONL = 0x40
-+ ECHOPRT = 0x400
-+ EFD_CLOEXEC = 0x80000
-+ EFD_NONBLOCK = 0x800
-+ EPOLL_CLOEXEC = 0x80000
-+ EXTPROC = 0x10000
-+ FF1 = 0x8000
-+ FFDLY = 0x8000
-+ FLUSHO = 0x1000
-+ FS_IOC_ENABLE_VERITY = 0x40806685
-+ FS_IOC_GETFLAGS = 0x80046601
-+ FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
-+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
-+ FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
-+ F_GETLK = 0xc
-+ F_GETLK64 = 0xc
-+ F_GETOWN = 0x9
-+ F_RDLCK = 0x0
-+ F_SETLK = 0xd
-+ F_SETLK64 = 0xd
-+ F_SETLKW = 0xe
-+ F_SETLKW64 = 0xe
-+ F_SETOWN = 0x8
-+ F_UNLCK = 0x2
-+ F_WRLCK = 0x1
-+ HUPCL = 0x400
-+ ICANON = 0x2
-+ IEXTEN = 0x8000
-+ IN_CLOEXEC = 0x80000
-+ IN_NONBLOCK = 0x800
-+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x7b9
-+ ISIG = 0x1
-+ IUCLC = 0x200
-+ IXOFF = 0x1000
-+ IXON = 0x400
-+ MAP_ANON = 0x20
-+ MAP_ANONYMOUS = 0x20
-+ MAP_DENYWRITE = 0x800
-+ MAP_EXECUTABLE = 0x1000
-+ MAP_GROWSDOWN = 0x100
-+ MAP_HUGETLB = 0x40000
-+ MAP_LOCKED = 0x2000
-+ MAP_NONBLOCK = 0x10000
-+ MAP_NORESERVE = 0x4000
-+ MAP_POPULATE = 0x8000
-+ MAP_STACK = 0x20000
-+ MAP_SYNC = 0x80000
-+ MCL_CURRENT = 0x1
-+ MCL_FUTURE = 0x2
-+ MCL_ONFAULT = 0x4
-+ NFDBITS = 0x20
-+ NLDLY = 0x100
-+ NOFLSH = 0x80
-+ NS_GET_NSTYPE = 0xb703
-+ NS_GET_OWNER_UID = 0xb704
-+ NS_GET_PARENT = 0xb702
-+ NS_GET_USERNS = 0xb701
-+ OLCUC = 0x2
-+ ONLCR = 0x4
-+ O_APPEND = 0x400
-+ O_ASYNC = 0x2000
-+ O_CLOEXEC = 0x80000
-+ O_CREAT = 0x40
-+ O_DIRECT = 0x10000
-+ O_DIRECTORY = 0x4000
-+ O_DSYNC = 0x1000
-+ O_EXCL = 0x80
-+ O_FSYNC = 0x101000
-+ O_LARGEFILE = 0x20000
-+ O_NDELAY = 0x800
-+ O_NOATIME = 0x40000
-+ O_NOCTTY = 0x100
-+ O_NOFOLLOW = 0x8000
-+ O_NONBLOCK = 0x800
-+ O_PATH = 0x200000
-+ O_RSYNC = 0x101000
-+ O_SYNC = 0x101000
-+ O_TMPFILE = 0x404000
-+ O_TRUNC = 0x200
-+ PARENB = 0x100
-+ PARODD = 0x200
-+ PENDIN = 0x4000
-+ PERF_EVENT_IOC_DISABLE = 0x2401
-+ PERF_EVENT_IOC_ENABLE = 0x2400
-+ PERF_EVENT_IOC_ID = 0x80042407
-+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4004240b
-+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
-+ PERF_EVENT_IOC_PERIOD = 0x40082404
-+ PERF_EVENT_IOC_QUERY_BPF = 0xc004240a
-+ PERF_EVENT_IOC_REFRESH = 0x2402
-+ PERF_EVENT_IOC_RESET = 0x2403
-+ PERF_EVENT_IOC_SET_BPF = 0x40042408
-+ PERF_EVENT_IOC_SET_FILTER = 0x40042406
-+ PERF_EVENT_IOC_SET_OUTPUT = 0x2405
-+ PPPIOCATTACH = 0x4004743d
-+ PPPIOCATTCHAN = 0x40047438
-+ PPPIOCCONNECT = 0x4004743a
-+ PPPIOCDETACH = 0x4004743c
-+ PPPIOCDISCONN = 0x7439
-+ PPPIOCGASYNCMAP = 0x80047458
-+ PPPIOCGCHAN = 0x80047437
-+ PPPIOCGDEBUG = 0x80047441
-+ PPPIOCGFLAGS = 0x8004745a
-+ PPPIOCGIDLE = 0x8008743f
-+ PPPIOCGIDLE32 = 0x8008743f
-+ PPPIOCGIDLE64 = 0x8010743f
-+ PPPIOCGL2TPSTATS = 0x80487436
-+ PPPIOCGMRU = 0x80047453
-+ PPPIOCGRASYNCMAP = 0x80047455
-+ PPPIOCGUNIT = 0x80047456
-+ PPPIOCGXASYNCMAP = 0x80207450
-+ PPPIOCSACTIVE = 0x40087446
-+ PPPIOCSASYNCMAP = 0x40047457
-+ PPPIOCSCOMPRESS = 0x400c744d
-+ PPPIOCSDEBUG = 0x40047440
-+ PPPIOCSFLAGS = 0x40047459
-+ PPPIOCSMAXCID = 0x40047451
-+ PPPIOCSMRRU = 0x4004743b
-+ PPPIOCSMRU = 0x40047452
-+ PPPIOCSNPMODE = 0x4008744b
-+ PPPIOCSPASS = 0x40087447
-+ PPPIOCSRASYNCMAP = 0x40047454
-+ PPPIOCSXASYNCMAP = 0x4020744f
-+ PPPIOCXFERUNIT = 0x744e
-+ PR_SET_PTRACER_ANY = 0xffffffff
-+ PTRACE_GETCRUNCHREGS = 0x19
-+ PTRACE_GETFDPIC = 0x1f
-+ PTRACE_GETFDPIC_EXEC = 0x0
-+ PTRACE_GETFDPIC_INTERP = 0x1
-+ PTRACE_GETFPREGS = 0xe
-+ PTRACE_GETHBPREGS = 0x1d
-+ PTRACE_GETVFPREGS = 0x1b
-+ PTRACE_GETWMMXREGS = 0x12
-+ PTRACE_GET_THREAD_AREA = 0x16
-+ PTRACE_OLDSETOPTIONS = 0x15
-+ PTRACE_SETCRUNCHREGS = 0x1a
-+ PTRACE_SETFPREGS = 0xf
-+ PTRACE_SETHBPREGS = 0x1e
-+ PTRACE_SETVFPREGS = 0x1c
-+ PTRACE_SETWMMXREGS = 0x13
-+ PTRACE_SET_SYSCALL = 0x17
-+ PT_DATA_ADDR = 0x10004
-+ PT_TEXT_ADDR = 0x10000
-+ PT_TEXT_END_ADDR = 0x10008
-+ RLIMIT_AS = 0x9
-+ RLIMIT_MEMLOCK = 0x8
-+ RLIMIT_NOFILE = 0x7
-+ RLIMIT_NPROC = 0x6
-+ RLIMIT_RSS = 0x5
-+ RNDADDENTROPY = 0x40085203
-+ RNDADDTOENTCNT = 0x40045201
-+ RNDCLEARPOOL = 0x5206
-+ RNDGETENTCNT = 0x80045200
-+ RNDGETPOOL = 0x80085202
-+ RNDRESEEDCRNG = 0x5207
-+ RNDZAPENTCNT = 0x5204
-+ RTC_AIE_OFF = 0x7002
-+ RTC_AIE_ON = 0x7001
-+ RTC_ALM_READ = 0x80247008
-+ RTC_ALM_SET = 0x40247007
-+ RTC_EPOCH_READ = 0x8004700d
-+ RTC_EPOCH_SET = 0x4004700e
-+ RTC_IRQP_READ = 0x8004700b
-+ RTC_IRQP_SET = 0x4004700c
-+ RTC_PIE_OFF = 0x7006
-+ RTC_PIE_ON = 0x7005
-+ RTC_PLL_GET = 0x801c7011
-+ RTC_PLL_SET = 0x401c7012
-+ RTC_RD_TIME = 0x80247009
-+ RTC_SET_TIME = 0x4024700a
-+ RTC_UIE_OFF = 0x7004
-+ RTC_UIE_ON = 0x7003
-+ RTC_VL_CLR = 0x7014
-+ RTC_VL_READ = 0x80047013
-+ RTC_WIE_OFF = 0x7010
-+ RTC_WIE_ON = 0x700f
-+ RTC_WKALM_RD = 0x80287010
-+ RTC_WKALM_SET = 0x4028700f
-+ SCM_TIMESTAMPING = 0x25
-+ SCM_TIMESTAMPING_OPT_STATS = 0x36
-+ SCM_TIMESTAMPING_PKTINFO = 0x3a
-+ SCM_TIMESTAMPNS = 0x23
-+ SCM_TXTIME = 0x3d
-+ SCM_WIFI_STATUS = 0x29
-+ SFD_CLOEXEC = 0x80000
-+ SFD_NONBLOCK = 0x800
-+ SIOCATMARK = 0x8905
-+ SIOCGPGRP = 0x8904
-+ SIOCGSTAMPNS_NEW = 0x80108907
-+ SIOCGSTAMP_NEW = 0x80108906
-+ SIOCINQ = 0x541b
-+ SIOCOUTQ = 0x5411
-+ SIOCSPGRP = 0x8902
-+ SOCK_CLOEXEC = 0x80000
-+ SOCK_DGRAM = 0x2
-+ SOCK_NONBLOCK = 0x800
-+ SOCK_STREAM = 0x1
-+ SOL_SOCKET = 0x1
-+ SO_ACCEPTCONN = 0x1e
-+ SO_ATTACH_BPF = 0x32
-+ SO_ATTACH_REUSEPORT_CBPF = 0x33
-+ SO_ATTACH_REUSEPORT_EBPF = 0x34
-+ SO_BINDTODEVICE = 0x19
-+ SO_BINDTOIFINDEX = 0x3e
-+ SO_BPF_EXTENSIONS = 0x30
-+ SO_BROADCAST = 0x6
-+ SO_BSDCOMPAT = 0xe
-+ SO_BUSY_POLL = 0x2e
-+ SO_CNX_ADVICE = 0x35
-+ SO_COOKIE = 0x39
-+ SO_DETACH_REUSEPORT_BPF = 0x44
-+ SO_DOMAIN = 0x27
-+ SO_DONTROUTE = 0x5
-+ SO_ERROR = 0x4
-+ SO_INCOMING_CPU = 0x31
-+ SO_INCOMING_NAPI_ID = 0x38
-+ SO_KEEPALIVE = 0x9
-+ SO_LINGER = 0xd
-+ SO_LOCK_FILTER = 0x2c
-+ SO_MARK = 0x24
-+ SO_MAX_PACING_RATE = 0x2f
-+ SO_MEMINFO = 0x37
-+ SO_NOFCS = 0x2b
-+ SO_OOBINLINE = 0xa
-+ SO_PASSCRED = 0x10
-+ SO_PASSSEC = 0x22
-+ SO_PEEK_OFF = 0x2a
-+ SO_PEERCRED = 0x11
-+ SO_PEERGROUPS = 0x3b
-+ SO_PEERSEC = 0x1f
-+ SO_PROTOCOL = 0x26
-+ SO_RCVBUF = 0x8
-+ SO_RCVBUFFORCE = 0x21
-+ SO_RCVLOWAT = 0x12
-+ SO_RCVTIMEO = 0x14
-+ SO_RCVTIMEO_NEW = 0x42
-+ SO_RCVTIMEO_OLD = 0x14
-+ SO_REUSEADDR = 0x2
-+ SO_REUSEPORT = 0xf
-+ SO_RXQ_OVFL = 0x28
-+ SO_SECURITY_AUTHENTICATION = 0x16
-+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-+ SO_SELECT_ERR_QUEUE = 0x2d
-+ SO_SNDBUF = 0x7
-+ SO_SNDBUFFORCE = 0x20
-+ SO_SNDLOWAT = 0x13
-+ SO_SNDTIMEO = 0x15
-+ SO_SNDTIMEO_NEW = 0x43
-+ SO_SNDTIMEO_OLD = 0x15
-+ SO_TIMESTAMPING = 0x25
-+ SO_TIMESTAMPING_NEW = 0x41
-+ SO_TIMESTAMPING_OLD = 0x25
-+ SO_TIMESTAMPNS = 0x23
-+ SO_TIMESTAMPNS_NEW = 0x40
-+ SO_TIMESTAMPNS_OLD = 0x23
-+ SO_TIMESTAMP_NEW = 0x3f
-+ SO_TXTIME = 0x3d
-+ SO_TYPE = 0x3
-+ SO_WIFI_STATUS = 0x29
-+ SO_ZEROCOPY = 0x3c
-+ TAB1 = 0x800
-+ TAB2 = 0x1000
-+ TAB3 = 0x1800
-+ TABDLY = 0x1800
-+ TCFLSH = 0x540b
-+ TCGETA = 0x5405
-+ TCGETS = 0x5401
-+ TCGETS2 = 0x802c542a
-+ TCGETX = 0x5432
-+ TCSAFLUSH = 0x2
-+ TCSBRK = 0x5409
-+ TCSBRKP = 0x5425
-+ TCSETA = 0x5406
-+ TCSETAF = 0x5408
-+ TCSETAW = 0x5407
-+ TCSETS = 0x5402
-+ TCSETS2 = 0x402c542b
-+ TCSETSF = 0x5404
-+ TCSETSF2 = 0x402c542d
-+ TCSETSW = 0x5403
-+ TCSETSW2 = 0x402c542c
-+ TCSETX = 0x5433
-+ TCSETXF = 0x5434
-+ TCSETXW = 0x5435
-+ TCXONC = 0x540a
-+ TIOCCBRK = 0x5428
-+ TIOCCONS = 0x541d
-+ TIOCEXCL = 0x540c
-+ TIOCGDEV = 0x80045432
-+ TIOCGETD = 0x5424
-+ TIOCGEXCL = 0x80045440
-+ TIOCGICOUNT = 0x545d
-+ TIOCGISO7816 = 0x80285442
-+ TIOCGLCKTRMIOS = 0x5456
-+ TIOCGPGRP = 0x540f
-+ TIOCGPKT = 0x80045438
-+ TIOCGPTLCK = 0x80045439
-+ TIOCGPTN = 0x80045430
-+ TIOCGPTPEER = 0x5441
-+ TIOCGRS485 = 0x542e
-+ TIOCGSERIAL = 0x541e
-+ TIOCGSID = 0x5429
-+ TIOCGSOFTCAR = 0x5419
-+ TIOCGWINSZ = 0x5413
-+ TIOCINQ = 0x541b
-+ TIOCLINUX = 0x541c
-+ TIOCMBIC = 0x5417
-+ TIOCMBIS = 0x5416
-+ TIOCMGET = 0x5415
-+ TIOCMIWAIT = 0x545c
-+ TIOCMSET = 0x5418
-+ TIOCM_CAR = 0x40
-+ TIOCM_CD = 0x40
-+ TIOCM_CTS = 0x20
-+ TIOCM_DSR = 0x100
-+ TIOCM_RI = 0x80
-+ TIOCM_RNG = 0x80
-+ TIOCM_SR = 0x10
-+ TIOCM_ST = 0x8
-+ TIOCNOTTY = 0x5422
-+ TIOCNXCL = 0x540d
-+ TIOCOUTQ = 0x5411
-+ TIOCPKT = 0x5420
-+ TIOCSBRK = 0x5427
-+ TIOCSCTTY = 0x540e
-+ TIOCSERCONFIG = 0x5453
-+ TIOCSERGETLSR = 0x5459
-+ TIOCSERGETMULTI = 0x545a
-+ TIOCSERGSTRUCT = 0x5458
-+ TIOCSERGWILD = 0x5454
-+ TIOCSERSETMULTI = 0x545b
-+ TIOCSERSWILD = 0x5455
-+ TIOCSER_TEMT = 0x1
-+ TIOCSETD = 0x5423
-+ TIOCSIG = 0x40045436
-+ TIOCSISO7816 = 0xc0285443
-+ TIOCSLCKTRMIOS = 0x5457
-+ TIOCSPGRP = 0x5410
-+ TIOCSPTLCK = 0x40045431
-+ TIOCSRS485 = 0x542f
-+ TIOCSSERIAL = 0x541f
-+ TIOCSSOFTCAR = 0x541a
-+ TIOCSTI = 0x5412
-+ TIOCSWINSZ = 0x5414
-+ TIOCVHANGUP = 0x5437
-+ TOSTOP = 0x100
-+ TUNATTACHFILTER = 0x400854d5
-+ TUNDETACHFILTER = 0x400854d6
-+ TUNGETDEVNETNS = 0x54e3
-+ TUNGETFEATURES = 0x800454cf
-+ TUNGETFILTER = 0x800854db
-+ TUNGETIFF = 0x800454d2
-+ TUNGETSNDBUF = 0x800454d3
-+ TUNGETVNETBE = 0x800454df
-+ TUNGETVNETHDRSZ = 0x800454d7
-+ TUNGETVNETLE = 0x800454dd
-+ TUNSETCARRIER = 0x400454e2
-+ TUNSETDEBUG = 0x400454c9
-+ TUNSETFILTEREBPF = 0x800454e1
-+ TUNSETGROUP = 0x400454ce
-+ TUNSETIFF = 0x400454ca
-+ TUNSETIFINDEX = 0x400454da
-+ TUNSETLINK = 0x400454cd
-+ TUNSETNOCSUM = 0x400454c8
-+ TUNSETOFFLOAD = 0x400454d0
-+ TUNSETOWNER = 0x400454cc
-+ TUNSETPERSIST = 0x400454cb
-+ TUNSETQUEUE = 0x400454d9
-+ TUNSETSNDBUF = 0x400454d4
-+ TUNSETSTEERINGEBPF = 0x800454e0
-+ TUNSETTXFILTER = 0x400454d1
-+ TUNSETVNETBE = 0x400454de
-+ TUNSETVNETHDRSZ = 0x400454d8
-+ TUNSETVNETLE = 0x400454dc
-+ UBI_IOCATT = 0x40186f40
-+ UBI_IOCDET = 0x40046f41
-+ UBI_IOCEBCH = 0x40044f02
-+ UBI_IOCEBER = 0x40044f01
-+ UBI_IOCEBISMAP = 0x80044f05
-+ UBI_IOCEBMAP = 0x40084f03
-+ UBI_IOCEBUNMAP = 0x40044f04
-+ UBI_IOCMKVOL = 0x40986f00
-+ UBI_IOCRMVOL = 0x40046f01
-+ UBI_IOCRNVOL = 0x51106f03
-+ UBI_IOCRPEB = 0x40046f04
-+ UBI_IOCRSVOL = 0x400c6f02
-+ UBI_IOCSETVOLPROP = 0x40104f06
-+ UBI_IOCSPEB = 0x40046f05
-+ UBI_IOCVOLCRBLK = 0x40804f07
-+ UBI_IOCVOLRMBLK = 0x4f08
-+ UBI_IOCVOLUP = 0x40084f00
-+ VDISCARD = 0xd
-+ VEOF = 0x4
-+ VEOL = 0xb
-+ VEOL2 = 0x10
-+ VMIN = 0x6
-+ VREPRINT = 0xc
-+ VSTART = 0x8
-+ VSTOP = 0x9
-+ VSUSP = 0xa
-+ VSWTC = 0x7
-+ VT1 = 0x4000
-+ VTDLY = 0x4000
-+ VTIME = 0x5
-+ VWERASE = 0xe
-+ WDIOC_GETBOOTSTATUS = 0x80045702
-+ WDIOC_GETPRETIMEOUT = 0x80045709
-+ WDIOC_GETSTATUS = 0x80045701
-+ WDIOC_GETSUPPORT = 0x80285700
-+ WDIOC_GETTEMP = 0x80045703
-+ WDIOC_GETTIMELEFT = 0x8004570a
-+ WDIOC_GETTIMEOUT = 0x80045707
-+ WDIOC_KEEPALIVE = 0x80045705
-+ WDIOC_SETOPTIONS = 0x80045704
-+ WORDSIZE = 0x20
-+ XCASE = 0x4
-+ XTABS = 0x1800
- )
-
- // Errors
- const (
-- E2BIG = syscall.Errno(0x7)
-- EACCES = syscall.Errno(0xd)
- EADDRINUSE = syscall.Errno(0x62)
- EADDRNOTAVAIL = syscall.Errno(0x63)
- EADV = syscall.Errno(0x44)
- EAFNOSUPPORT = syscall.Errno(0x61)
-- EAGAIN = syscall.Errno(0xb)
- EALREADY = syscall.Errno(0x72)
- EBADE = syscall.Errno(0x34)
-- EBADF = syscall.Errno(0x9)
- EBADFD = syscall.Errno(0x4d)
- EBADMSG = syscall.Errno(0x4a)
- EBADR = syscall.Errno(0x35)
- EBADRQC = syscall.Errno(0x38)
- EBADSLT = syscall.Errno(0x39)
- EBFONT = syscall.Errno(0x3b)
-- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x7d)
-- ECHILD = syscall.Errno(0xa)
- ECHRNG = syscall.Errno(0x2c)
- ECOMM = syscall.Errno(0x46)
- ECONNABORTED = syscall.Errno(0x67)
-@@ -1886,23 +506,15 @@ const (
- EDEADLK = syscall.Errno(0x23)
- EDEADLOCK = syscall.Errno(0x23)
- EDESTADDRREQ = syscall.Errno(0x59)
-- EDOM = syscall.Errno(0x21)
- EDOTDOT = syscall.Errno(0x49)
- EDQUOT = syscall.Errno(0x7a)
-- EEXIST = syscall.Errno(0x11)
-- EFAULT = syscall.Errno(0xe)
-- EFBIG = syscall.Errno(0x1b)
- EHOSTDOWN = syscall.Errno(0x70)
- EHOSTUNREACH = syscall.Errno(0x71)
- EHWPOISON = syscall.Errno(0x85)
- EIDRM = syscall.Errno(0x2b)
- EILSEQ = syscall.Errno(0x54)
- EINPROGRESS = syscall.Errno(0x73)
-- EINTR = syscall.Errno(0x4)
-- EINVAL = syscall.Errno(0x16)
-- EIO = syscall.Errno(0x5)
- EISCONN = syscall.Errno(0x6a)
-- EISDIR = syscall.Errno(0x15)
- EISNAM = syscall.Errno(0x78)
- EKEYEXPIRED = syscall.Errno(0x7f)
- EKEYREJECTED = syscall.Errno(0x81)
-@@ -1919,8 +531,6 @@ const (
- ELNRNG = syscall.Errno(0x30)
- ELOOP = syscall.Errno(0x28)
- EMEDIUMTYPE = syscall.Errno(0x7c)
-- EMFILE = syscall.Errno(0x18)
-- EMLINK = syscall.Errno(0x1f)
- EMSGSIZE = syscall.Errno(0x5a)
- EMULTIHOP = syscall.Errno(0x48)
- ENAMETOOLONG = syscall.Errno(0x24)
-@@ -1928,103 +538,70 @@ const (
- ENETDOWN = syscall.Errno(0x64)
- ENETRESET = syscall.Errno(0x66)
- ENETUNREACH = syscall.Errno(0x65)
-- ENFILE = syscall.Errno(0x17)
- ENOANO = syscall.Errno(0x37)
- ENOBUFS = syscall.Errno(0x69)
- ENOCSI = syscall.Errno(0x32)
- ENODATA = syscall.Errno(0x3d)
-- ENODEV = syscall.Errno(0x13)
-- ENOENT = syscall.Errno(0x2)
-- ENOEXEC = syscall.Errno(0x8)
- ENOKEY = syscall.Errno(0x7e)
- ENOLCK = syscall.Errno(0x25)
- ENOLINK = syscall.Errno(0x43)
- ENOMEDIUM = syscall.Errno(0x7b)
-- ENOMEM = syscall.Errno(0xc)
- ENOMSG = syscall.Errno(0x2a)
- ENONET = syscall.Errno(0x40)
- ENOPKG = syscall.Errno(0x41)
- ENOPROTOOPT = syscall.Errno(0x5c)
-- ENOSPC = syscall.Errno(0x1c)
- ENOSR = syscall.Errno(0x3f)
- ENOSTR = syscall.Errno(0x3c)
- ENOSYS = syscall.Errno(0x26)
-- ENOTBLK = syscall.Errno(0xf)
- ENOTCONN = syscall.Errno(0x6b)
-- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x27)
- ENOTNAM = syscall.Errno(0x76)
- ENOTRECOVERABLE = syscall.Errno(0x83)
- ENOTSOCK = syscall.Errno(0x58)
- ENOTSUP = syscall.Errno(0x5f)
-- ENOTTY = syscall.Errno(0x19)
- ENOTUNIQ = syscall.Errno(0x4c)
-- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x5f)
- EOVERFLOW = syscall.Errno(0x4b)
- EOWNERDEAD = syscall.Errno(0x82)
-- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x60)
-- EPIPE = syscall.Errno(0x20)
- EPROTO = syscall.Errno(0x47)
- EPROTONOSUPPORT = syscall.Errno(0x5d)
- EPROTOTYPE = syscall.Errno(0x5b)
-- ERANGE = syscall.Errno(0x22)
- EREMCHG = syscall.Errno(0x4e)
- EREMOTE = syscall.Errno(0x42)
- EREMOTEIO = syscall.Errno(0x79)
- ERESTART = syscall.Errno(0x55)
- ERFKILL = syscall.Errno(0x84)
-- EROFS = syscall.Errno(0x1e)
- ESHUTDOWN = syscall.Errno(0x6c)
- ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-- ESPIPE = syscall.Errno(0x1d)
-- ESRCH = syscall.Errno(0x3)
- ESRMNT = syscall.Errno(0x45)
- ESTALE = syscall.Errno(0x74)
- ESTRPIPE = syscall.Errno(0x56)
- ETIME = syscall.Errno(0x3e)
- ETIMEDOUT = syscall.Errno(0x6e)
- ETOOMANYREFS = syscall.Errno(0x6d)
-- ETXTBSY = syscall.Errno(0x1a)
- EUCLEAN = syscall.Errno(0x75)
- EUNATCH = syscall.Errno(0x31)
- EUSERS = syscall.Errno(0x57)
-- EWOULDBLOCK = syscall.Errno(0xb)
-- EXDEV = syscall.Errno(0x12)
- EXFULL = syscall.Errno(0x36)
- )
-
- // Signals
- const (
-- SIGABRT = syscall.Signal(0x6)
-- SIGALRM = syscall.Signal(0xe)
- SIGBUS = syscall.Signal(0x7)
- SIGCHLD = syscall.Signal(0x11)
- SIGCLD = syscall.Signal(0x11)
- SIGCONT = syscall.Signal(0x12)
-- SIGFPE = syscall.Signal(0x8)
-- SIGHUP = syscall.Signal(0x1)
-- SIGILL = syscall.Signal(0x4)
-- SIGINT = syscall.Signal(0x2)
- SIGIO = syscall.Signal(0x1d)
-- SIGIOT = syscall.Signal(0x6)
-- SIGKILL = syscall.Signal(0x9)
-- SIGPIPE = syscall.Signal(0xd)
- SIGPOLL = syscall.Signal(0x1d)
- SIGPROF = syscall.Signal(0x1b)
- SIGPWR = syscall.Signal(0x1e)
-- SIGQUIT = syscall.Signal(0x3)
-- SIGSEGV = syscall.Signal(0xb)
- SIGSTKFLT = syscall.Signal(0x10)
- SIGSTOP = syscall.Signal(0x13)
- SIGSYS = syscall.Signal(0x1f)
-- SIGTERM = syscall.Signal(0xf)
-- SIGTRAP = syscall.Signal(0x5)
- SIGTSTP = syscall.Signal(0x14)
- SIGTTIN = syscall.Signal(0x15)
- SIGTTOU = syscall.Signal(0x16)
-- SIGUNUSED = syscall.Signal(0x1f)
- SIGURG = syscall.Signal(0x17)
- SIGUSR1 = syscall.Signal(0xa)
- SIGUSR2 = syscall.Signal(0xc)
-@@ -2035,171 +612,179 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "no such device or address",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource temporarily unavailable",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device or resource busy",
-- 17: "file exists",
-- 18: "invalid cross-device link",
-- 19: "no such device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "numerical result out of range",
-- 35: "resource deadlock avoided",
-- 36: "file name too long",
-- 37: "no locks available",
-- 38: "function not implemented",
-- 39: "directory not empty",
-- 40: "too many levels of symbolic links",
-- 42: "no message of desired type",
-- 43: "identifier removed",
-- 44: "channel number out of range",
-- 45: "level 2 not synchronized",
-- 46: "level 3 halted",
-- 47: "level 3 reset",
-- 48: "link number out of range",
-- 49: "protocol driver not attached",
-- 50: "no CSI structure available",
-- 51: "level 2 halted",
-- 52: "invalid exchange",
-- 53: "invalid request descriptor",
-- 54: "exchange full",
-- 55: "no anode",
-- 56: "invalid request code",
-- 57: "invalid slot",
-- 59: "bad font file format",
-- 60: "device not a stream",
-- 61: "no data available",
-- 62: "timer expired",
-- 63: "out of streams resources",
-- 64: "machine is not on the network",
-- 65: "package not installed",
-- 66: "object is remote",
-- 67: "link has been severed",
-- 68: "advertise error",
-- 69: "srmount error",
-- 70: "communication error on send",
-- 71: "protocol error",
-- 72: "multihop attempted",
-- 73: "RFS specific error",
-- 74: "bad message",
-- 75: "value too large for defined data type",
-- 76: "name not unique on network",
-- 77: "file descriptor in bad state",
-- 78: "remote address changed",
-- 79: "can not access a needed shared library",
-- 80: "accessing a corrupted shared library",
-- 81: ".lib section in a.out corrupted",
-- 82: "attempting to link in too many shared libraries",
-- 83: "cannot exec a shared library directly",
-- 84: "invalid or incomplete multibyte or wide character",
-- 85: "interrupted system call should be restarted",
-- 86: "streams pipe error",
-- 87: "too many users",
-- 88: "socket operation on non-socket",
-- 89: "destination address required",
-- 90: "message too long",
-- 91: "protocol wrong type for socket",
-- 92: "protocol not available",
-- 93: "protocol not supported",
-- 94: "socket type not supported",
-- 95: "operation not supported",
-- 96: "protocol family not supported",
-- 97: "address family not supported by protocol",
-- 98: "address already in use",
-- 99: "cannot assign requested address",
-- 100: "network is down",
-- 101: "network is unreachable",
-- 102: "network dropped connection on reset",
-- 103: "software caused connection abort",
-- 104: "connection reset by peer",
-- 105: "no buffer space available",
-- 106: "transport endpoint is already connected",
-- 107: "transport endpoint is not connected",
-- 108: "cannot send after transport endpoint shutdown",
-- 109: "too many references: cannot splice",
-- 110: "connection timed out",
-- 111: "connection refused",
-- 112: "host is down",
-- 113: "no route to host",
-- 114: "operation already in progress",
-- 115: "operation now in progress",
-- 116: "stale file handle",
-- 117: "structure needs cleaning",
-- 118: "not a XENIX named type file",
-- 119: "no XENIX semaphores available",
-- 120: "is a named type file",
-- 121: "remote I/O error",
-- 122: "disk quota exceeded",
-- 123: "no medium found",
-- 124: "wrong medium type",
-- 125: "operation canceled",
-- 126: "required key not available",
-- 127: "key has expired",
-- 128: "key has been revoked",
-- 129: "key was rejected by service",
-- 130: "owner died",
-- 131: "state not recoverable",
-- 132: "operation not possible due to RF-kill",
-- 133: "memory page has hardware error",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device or resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "invalid cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "numerical result out of range"},
-+ {35, "EDEADLK", "resource deadlock avoided"},
-+ {36, "ENAMETOOLONG", "file name too long"},
-+ {37, "ENOLCK", "no locks available"},
-+ {38, "ENOSYS", "function not implemented"},
-+ {39, "ENOTEMPTY", "directory not empty"},
-+ {40, "ELOOP", "too many levels of symbolic links"},
-+ {42, "ENOMSG", "no message of desired type"},
-+ {43, "EIDRM", "identifier removed"},
-+ {44, "ECHRNG", "channel number out of range"},
-+ {45, "EL2NSYNC", "level 2 not synchronized"},
-+ {46, "EL3HLT", "level 3 halted"},
-+ {47, "EL3RST", "level 3 reset"},
-+ {48, "ELNRNG", "link number out of range"},
-+ {49, "EUNATCH", "protocol driver not attached"},
-+ {50, "ENOCSI", "no CSI structure available"},
-+ {51, "EL2HLT", "level 2 halted"},
-+ {52, "EBADE", "invalid exchange"},
-+ {53, "EBADR", "invalid request descriptor"},
-+ {54, "EXFULL", "exchange full"},
-+ {55, "ENOANO", "no anode"},
-+ {56, "EBADRQC", "invalid request code"},
-+ {57, "EBADSLT", "invalid slot"},
-+ {59, "EBFONT", "bad font file format"},
-+ {60, "ENOSTR", "device not a stream"},
-+ {61, "ENODATA", "no data available"},
-+ {62, "ETIME", "timer expired"},
-+ {63, "ENOSR", "out of streams resources"},
-+ {64, "ENONET", "machine is not on the network"},
-+ {65, "ENOPKG", "package not installed"},
-+ {66, "EREMOTE", "object is remote"},
-+ {67, "ENOLINK", "link has been severed"},
-+ {68, "EADV", "advertise error"},
-+ {69, "ESRMNT", "srmount error"},
-+ {70, "ECOMM", "communication error on send"},
-+ {71, "EPROTO", "protocol error"},
-+ {72, "EMULTIHOP", "multihop attempted"},
-+ {73, "EDOTDOT", "RFS specific error"},
-+ {74, "EBADMSG", "bad message"},
-+ {75, "EOVERFLOW", "value too large for defined data type"},
-+ {76, "ENOTUNIQ", "name not unique on network"},
-+ {77, "EBADFD", "file descriptor in bad state"},
-+ {78, "EREMCHG", "remote address changed"},
-+ {79, "ELIBACC", "can not access a needed shared library"},
-+ {80, "ELIBBAD", "accessing a corrupted shared library"},
-+ {81, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
-+ {83, "ELIBEXEC", "cannot exec a shared library directly"},
-+ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
-+ {85, "ERESTART", "interrupted system call should be restarted"},
-+ {86, "ESTRPIPE", "streams pipe error"},
-+ {87, "EUSERS", "too many users"},
-+ {88, "ENOTSOCK", "socket operation on non-socket"},
-+ {89, "EDESTADDRREQ", "destination address required"},
-+ {90, "EMSGSIZE", "message too long"},
-+ {91, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {92, "ENOPROTOOPT", "protocol not available"},
-+ {93, "EPROTONOSUPPORT", "protocol not supported"},
-+ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {95, "ENOTSUP", "operation not supported"},
-+ {96, "EPFNOSUPPORT", "protocol family not supported"},
-+ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
-+ {98, "EADDRINUSE", "address already in use"},
-+ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {100, "ENETDOWN", "network is down"},
-+ {101, "ENETUNREACH", "network is unreachable"},
-+ {102, "ENETRESET", "network dropped connection on reset"},
-+ {103, "ECONNABORTED", "software caused connection abort"},
-+ {104, "ECONNRESET", "connection reset by peer"},
-+ {105, "ENOBUFS", "no buffer space available"},
-+ {106, "EISCONN", "transport endpoint is already connected"},
-+ {107, "ENOTCONN", "transport endpoint is not connected"},
-+ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
-+ {109, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {110, "ETIMEDOUT", "connection timed out"},
-+ {111, "ECONNREFUSED", "connection refused"},
-+ {112, "EHOSTDOWN", "host is down"},
-+ {113, "EHOSTUNREACH", "no route to host"},
-+ {114, "EALREADY", "operation already in progress"},
-+ {115, "EINPROGRESS", "operation now in progress"},
-+ {116, "ESTALE", "stale file handle"},
-+ {117, "EUCLEAN", "structure needs cleaning"},
-+ {118, "ENOTNAM", "not a XENIX named type file"},
-+ {119, "ENAVAIL", "no XENIX semaphores available"},
-+ {120, "EISNAM", "is a named type file"},
-+ {121, "EREMOTEIO", "remote I/O error"},
-+ {122, "EDQUOT", "disk quota exceeded"},
-+ {123, "ENOMEDIUM", "no medium found"},
-+ {124, "EMEDIUMTYPE", "wrong medium type"},
-+ {125, "ECANCELED", "operation canceled"},
-+ {126, "ENOKEY", "required key not available"},
-+ {127, "EKEYEXPIRED", "key has expired"},
-+ {128, "EKEYREVOKED", "key has been revoked"},
-+ {129, "EKEYREJECTED", "key was rejected by service"},
-+ {130, "EOWNERDEAD", "owner died"},
-+ {131, "ENOTRECOVERABLE", "state not recoverable"},
-+ {132, "ERFKILL", "operation not possible due to RF-kill"},
-+ {133, "EHWPOISON", "memory page has hardware error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/breakpoint trap",
-- 6: "aborted",
-- 7: "bus error",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "user defined signal 1",
-- 11: "segmentation fault",
-- 12: "user defined signal 2",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "stack fault",
-- 17: "child exited",
-- 18: "continued",
-- 19: "stopped (signal)",
-- 20: "stopped",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "urgent I/O condition",
-- 24: "CPU time limit exceeded",
-- 25: "file size limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window changed",
-- 29: "I/O possible",
-- 30: "power failure",
-- 31: "bad system call",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/breakpoint trap"},
-+ {6, "SIGABRT", "aborted"},
-+ {7, "SIGBUS", "bus error"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGUSR1", "user defined signal 1"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGUSR2", "user defined signal 2"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGSTKFLT", "stack fault"},
-+ {17, "SIGCHLD", "child exited"},
-+ {18, "SIGCONT", "continued"},
-+ {19, "SIGSTOP", "stopped (signal)"},
-+ {20, "SIGTSTP", "stopped"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGURG", "urgent I/O condition"},
-+ {24, "SIGXCPU", "CPU time limit exceeded"},
-+ {25, "SIGXFSZ", "file size limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window changed"},
-+ {29, "SIGIO", "I/O possible"},
-+ {30, "SIGPWR", "power failure"},
-+ {31, "SIGSYS", "bad system call"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
-index c0ecd47c..9ee8d1bc 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
-@@ -3,7 +3,7 @@
-
- // +build arm64,linux
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char _const.go
-
- package unix
-@@ -11,1858 +11,480 @@ package unix
- import "syscall"
-
- const (
-- AF_ALG = 0x26
-- AF_APPLETALK = 0x5
-- AF_ASH = 0x12
-- AF_ATMPVC = 0x8
-- AF_ATMSVC = 0x14
-- AF_AX25 = 0x3
-- AF_BLUETOOTH = 0x1f
-- AF_BRIDGE = 0x7
-- AF_CAIF = 0x25
-- AF_CAN = 0x1d
-- AF_DECnet = 0xc
-- AF_ECONET = 0x13
-- AF_FILE = 0x1
-- AF_IB = 0x1b
-- AF_IEEE802154 = 0x24
-- AF_INET = 0x2
-- AF_INET6 = 0xa
-- AF_IPX = 0x4
-- AF_IRDA = 0x17
-- AF_ISDN = 0x22
-- AF_IUCV = 0x20
-- AF_KCM = 0x29
-- AF_KEY = 0xf
-- AF_LLC = 0x1a
-- AF_LOCAL = 0x1
-- AF_MAX = 0x2b
-- AF_MPLS = 0x1c
-- AF_NETBEUI = 0xd
-- AF_NETLINK = 0x10
-- AF_NETROM = 0x6
-- AF_NFC = 0x27
-- AF_PACKET = 0x11
-- AF_PHONET = 0x23
-- AF_PPPOX = 0x18
-- AF_QIPCRTR = 0x2a
-- AF_RDS = 0x15
-- AF_ROSE = 0xb
-- AF_ROUTE = 0x10
-- AF_RXRPC = 0x21
-- AF_SECURITY = 0xe
-- AF_SNA = 0x16
-- AF_TIPC = 0x1e
-- AF_UNIX = 0x1
-- AF_UNSPEC = 0x0
-- AF_VSOCK = 0x28
-- AF_WANPIPE = 0x19
-- AF_X25 = 0x9
-- ALG_OP_DECRYPT = 0x0
-- ALG_OP_ENCRYPT = 0x1
-- ALG_SET_AEAD_ASSOCLEN = 0x4
-- ALG_SET_AEAD_AUTHSIZE = 0x5
-- ALG_SET_IV = 0x2
-- ALG_SET_KEY = 0x1
-- ALG_SET_OP = 0x3
-- ARPHRD_6LOWPAN = 0x339
-- ARPHRD_ADAPT = 0x108
-- ARPHRD_APPLETLK = 0x8
-- ARPHRD_ARCNET = 0x7
-- ARPHRD_ASH = 0x30d
-- ARPHRD_ATM = 0x13
-- ARPHRD_AX25 = 0x3
-- ARPHRD_BIF = 0x307
-- ARPHRD_CAIF = 0x336
-- ARPHRD_CAN = 0x118
-- ARPHRD_CHAOS = 0x5
-- ARPHRD_CISCO = 0x201
-- ARPHRD_CSLIP = 0x101
-- ARPHRD_CSLIP6 = 0x103
-- ARPHRD_DDCMP = 0x205
-- ARPHRD_DLCI = 0xf
-- ARPHRD_ECONET = 0x30e
-- ARPHRD_EETHER = 0x2
-- ARPHRD_ETHER = 0x1
-- ARPHRD_EUI64 = 0x1b
-- ARPHRD_FCAL = 0x311
-- ARPHRD_FCFABRIC = 0x313
-- ARPHRD_FCPL = 0x312
-- ARPHRD_FCPP = 0x310
-- ARPHRD_FDDI = 0x306
-- ARPHRD_FRAD = 0x302
-- ARPHRD_HDLC = 0x201
-- ARPHRD_HIPPI = 0x30c
-- ARPHRD_HWX25 = 0x110
-- ARPHRD_IEEE1394 = 0x18
-- ARPHRD_IEEE802 = 0x6
-- ARPHRD_IEEE80211 = 0x321
-- ARPHRD_IEEE80211_PRISM = 0x322
-- ARPHRD_IEEE80211_RADIOTAP = 0x323
-- ARPHRD_IEEE802154 = 0x324
-- ARPHRD_IEEE802154_MONITOR = 0x325
-- ARPHRD_IEEE802_TR = 0x320
-- ARPHRD_INFINIBAND = 0x20
-- ARPHRD_IP6GRE = 0x337
-- ARPHRD_IPDDP = 0x309
-- ARPHRD_IPGRE = 0x30a
-- ARPHRD_IRDA = 0x30f
-- ARPHRD_LAPB = 0x204
-- ARPHRD_LOCALTLK = 0x305
-- ARPHRD_LOOPBACK = 0x304
-- ARPHRD_METRICOM = 0x17
-- ARPHRD_NETLINK = 0x338
-- ARPHRD_NETROM = 0x0
-- ARPHRD_NONE = 0xfffe
-- ARPHRD_PHONET = 0x334
-- ARPHRD_PHONET_PIPE = 0x335
-- ARPHRD_PIMREG = 0x30b
-- ARPHRD_PPP = 0x200
-- ARPHRD_PRONET = 0x4
-- ARPHRD_RAWHDLC = 0x206
-- ARPHRD_ROSE = 0x10e
-- ARPHRD_RSRVD = 0x104
-- ARPHRD_SIT = 0x308
-- ARPHRD_SKIP = 0x303
-- ARPHRD_SLIP = 0x100
-- ARPHRD_SLIP6 = 0x102
-- ARPHRD_TUNNEL = 0x300
-- ARPHRD_TUNNEL6 = 0x301
-- ARPHRD_VOID = 0xffff
-- ARPHRD_X25 = 0x10f
-- B0 = 0x0
-- B1000000 = 0x1008
-- B110 = 0x3
-- B115200 = 0x1002
-- B1152000 = 0x1009
-- B1200 = 0x9
-- B134 = 0x4
-- B150 = 0x5
-- B1500000 = 0x100a
-- B1800 = 0xa
-- B19200 = 0xe
-- B200 = 0x6
-- B2000000 = 0x100b
-- B230400 = 0x1003
-- B2400 = 0xb
-- B2500000 = 0x100c
-- B300 = 0x7
-- B3000000 = 0x100d
-- B3500000 = 0x100e
-- B38400 = 0xf
-- B4000000 = 0x100f
-- B460800 = 0x1004
-- B4800 = 0xc
-- B50 = 0x1
-- B500000 = 0x1005
-- B57600 = 0x1001
-- B576000 = 0x1006
-- B600 = 0x8
-- B75 = 0x2
-- B921600 = 0x1007
-- B9600 = 0xd
-- BLKBSZGET = 0x80081270
-- BLKBSZSET = 0x40081271
-- BLKFLSBUF = 0x1261
-- BLKFRAGET = 0x1265
-- BLKFRASET = 0x1264
-- BLKGETSIZE = 0x1260
-- BLKGETSIZE64 = 0x80081272
-- BLKPBSZGET = 0x127b
-- BLKRAGET = 0x1263
-- BLKRASET = 0x1262
-- BLKROGET = 0x125e
-- BLKROSET = 0x125d
-- BLKRRPART = 0x125f
-- BLKSECTGET = 0x1267
-- BLKSECTSET = 0x1266
-- BLKSSZGET = 0x1268
-- BOTHER = 0x1000
-- BPF_A = 0x10
-- BPF_ABS = 0x20
-- BPF_ADD = 0x0
-- BPF_ALU = 0x4
-- BPF_AND = 0x50
-- BPF_B = 0x10
-- BPF_DIV = 0x30
-- BPF_H = 0x8
-- BPF_IMM = 0x0
-- BPF_IND = 0x40
-- BPF_JA = 0x0
-- BPF_JEQ = 0x10
-- BPF_JGE = 0x30
-- BPF_JGT = 0x20
-- BPF_JMP = 0x5
-- BPF_JSET = 0x40
-- BPF_K = 0x0
-- BPF_LD = 0x0
-- BPF_LDX = 0x1
-- BPF_LEN = 0x80
-- BPF_LL_OFF = -0x200000
-- BPF_LSH = 0x60
-- BPF_MAJOR_VERSION = 0x1
-- BPF_MAXINSNS = 0x1000
-- BPF_MEM = 0x60
-- BPF_MEMWORDS = 0x10
-- BPF_MINOR_VERSION = 0x1
-- BPF_MISC = 0x7
-- BPF_MOD = 0x90
-- BPF_MSH = 0xa0
-- BPF_MUL = 0x20
-- BPF_NEG = 0x80
-- BPF_NET_OFF = -0x100000
-- BPF_OR = 0x40
-- BPF_RET = 0x6
-- BPF_RSH = 0x70
-- BPF_ST = 0x2
-- BPF_STX = 0x3
-- BPF_SUB = 0x10
-- BPF_TAX = 0x0
-- BPF_TXA = 0x80
-- BPF_W = 0x0
-- BPF_X = 0x8
-- BPF_XOR = 0xa0
-- BRKINT = 0x2
-- BS0 = 0x0
-- BS1 = 0x2000
-- BSDLY = 0x2000
-- CAN_BCM = 0x2
-- CAN_EFF_FLAG = 0x80000000
-- CAN_EFF_ID_BITS = 0x1d
-- CAN_EFF_MASK = 0x1fffffff
-- CAN_ERR_FLAG = 0x20000000
-- CAN_ERR_MASK = 0x1fffffff
-- CAN_INV_FILTER = 0x20000000
-- CAN_ISOTP = 0x6
-- CAN_MAX_DLC = 0x8
-- CAN_MAX_DLEN = 0x8
-- CAN_MCNET = 0x5
-- CAN_MTU = 0x10
-- CAN_NPROTO = 0x7
-- CAN_RAW = 0x1
-- CAN_RAW_FILTER_MAX = 0x200
-- CAN_RTR_FLAG = 0x40000000
-- CAN_SFF_ID_BITS = 0xb
-- CAN_SFF_MASK = 0x7ff
-- CAN_TP16 = 0x3
-- CAN_TP20 = 0x4
-- CBAUD = 0x100f
-- CBAUDEX = 0x1000
-- CFLUSH = 0xf
-- CIBAUD = 0x100f0000
-- CLOCAL = 0x800
-- CLOCK_BOOTTIME = 0x7
-- CLOCK_BOOTTIME_ALARM = 0x9
-- CLOCK_DEFAULT = 0x0
-- CLOCK_EXT = 0x1
-- CLOCK_INT = 0x2
-- CLOCK_MONOTONIC = 0x1
-- CLOCK_MONOTONIC_COARSE = 0x6
-- CLOCK_MONOTONIC_RAW = 0x4
-- CLOCK_PROCESS_CPUTIME_ID = 0x2
-- CLOCK_REALTIME = 0x0
-- CLOCK_REALTIME_ALARM = 0x8
-- CLOCK_REALTIME_COARSE = 0x5
-- CLOCK_TAI = 0xb
-- CLOCK_THREAD_CPUTIME_ID = 0x3
-- CLOCK_TXFROMRX = 0x4
-- CLOCK_TXINT = 0x3
-- CLONE_CHILD_CLEARTID = 0x200000
-- CLONE_CHILD_SETTID = 0x1000000
-- CLONE_DETACHED = 0x400000
-- CLONE_FILES = 0x400
-- CLONE_FS = 0x200
-- CLONE_IO = 0x80000000
-- CLONE_NEWCGROUP = 0x2000000
-- CLONE_NEWIPC = 0x8000000
-- CLONE_NEWNET = 0x40000000
-- CLONE_NEWNS = 0x20000
-- CLONE_NEWPID = 0x20000000
-- CLONE_NEWUSER = 0x10000000
-- CLONE_NEWUTS = 0x4000000
-- CLONE_PARENT = 0x8000
-- CLONE_PARENT_SETTID = 0x100000
-- CLONE_PTRACE = 0x2000
-- CLONE_SETTLS = 0x80000
-- CLONE_SIGHAND = 0x800
-- CLONE_SYSVSEM = 0x40000
-- CLONE_THREAD = 0x10000
-- CLONE_UNTRACED = 0x800000
-- CLONE_VFORK = 0x4000
-- CLONE_VM = 0x100
-- CMSPAR = 0x40000000
-- CR0 = 0x0
-- CR1 = 0x200
-- CR2 = 0x400
-- CR3 = 0x600
-- CRDLY = 0x600
-- CREAD = 0x80
-- CRTSCTS = 0x80000000
-- CS5 = 0x0
-- CS6 = 0x10
-- CS7 = 0x20
-- CS8 = 0x30
-- CSIGNAL = 0xff
-- CSIZE = 0x30
-- CSTART = 0x11
-- CSTATUS = 0x0
-- CSTOP = 0x13
-- CSTOPB = 0x40
-- CSUSP = 0x1a
-- DT_BLK = 0x6
-- DT_CHR = 0x2
-- DT_DIR = 0x4
-- DT_FIFO = 0x1
-- DT_LNK = 0xa
-- DT_REG = 0x8
-- DT_SOCK = 0xc
-- DT_UNKNOWN = 0x0
-- DT_WHT = 0xe
-- ECHO = 0x8
-- ECHOCTL = 0x200
-- ECHOE = 0x10
-- ECHOK = 0x20
-- ECHOKE = 0x800
-- ECHONL = 0x40
-- ECHOPRT = 0x400
-- EFD_CLOEXEC = 0x80000
-- EFD_NONBLOCK = 0x800
-- EFD_SEMAPHORE = 0x1
-- ENCODING_DEFAULT = 0x0
-- ENCODING_FM_MARK = 0x3
-- ENCODING_FM_SPACE = 0x4
-- ENCODING_MANCHESTER = 0x5
-- ENCODING_NRZ = 0x1
-- ENCODING_NRZI = 0x2
-- EPOLLERR = 0x8
-- EPOLLET = 0x80000000
-- EPOLLEXCLUSIVE = 0x10000000
-- EPOLLHUP = 0x10
-- EPOLLIN = 0x1
-- EPOLLMSG = 0x400
-- EPOLLONESHOT = 0x40000000
-- EPOLLOUT = 0x4
-- EPOLLPRI = 0x2
-- EPOLLRDBAND = 0x80
-- EPOLLRDHUP = 0x2000
-- EPOLLRDNORM = 0x40
-- EPOLLWAKEUP = 0x20000000
-- EPOLLWRBAND = 0x200
-- EPOLLWRNORM = 0x100
-- EPOLL_CLOEXEC = 0x80000
-- EPOLL_CTL_ADD = 0x1
-- EPOLL_CTL_DEL = 0x2
-- EPOLL_CTL_MOD = 0x3
-- ESR_MAGIC = 0x45535201
-- ETH_P_1588 = 0x88f7
-- ETH_P_8021AD = 0x88a8
-- ETH_P_8021AH = 0x88e7
-- ETH_P_8021Q = 0x8100
-- ETH_P_80221 = 0x8917
-- ETH_P_802_2 = 0x4
-- ETH_P_802_3 = 0x1
-- ETH_P_802_3_MIN = 0x600
-- ETH_P_802_EX1 = 0x88b5
-- ETH_P_AARP = 0x80f3
-- ETH_P_AF_IUCV = 0xfbfb
-- ETH_P_ALL = 0x3
-- ETH_P_AOE = 0x88a2
-- ETH_P_ARCNET = 0x1a
-- ETH_P_ARP = 0x806
-- ETH_P_ATALK = 0x809b
-- ETH_P_ATMFATE = 0x8884
-- ETH_P_ATMMPOA = 0x884c
-- ETH_P_AX25 = 0x2
-- ETH_P_BATMAN = 0x4305
-- ETH_P_BPQ = 0x8ff
-- ETH_P_CAIF = 0xf7
-- ETH_P_CAN = 0xc
-- ETH_P_CANFD = 0xd
-- ETH_P_CONTROL = 0x16
-- ETH_P_CUST = 0x6006
-- ETH_P_DDCMP = 0x6
-- ETH_P_DEC = 0x6000
-- ETH_P_DIAG = 0x6005
-- ETH_P_DNA_DL = 0x6001
-- ETH_P_DNA_RC = 0x6002
-- ETH_P_DNA_RT = 0x6003
-- ETH_P_DSA = 0x1b
-- ETH_P_ECONET = 0x18
-- ETH_P_EDSA = 0xdada
-- ETH_P_FCOE = 0x8906
-- ETH_P_FIP = 0x8914
-- ETH_P_HDLC = 0x19
-- ETH_P_HSR = 0x892f
-- ETH_P_IEEE802154 = 0xf6
-- ETH_P_IEEEPUP = 0xa00
-- ETH_P_IEEEPUPAT = 0xa01
-- ETH_P_IP = 0x800
-- ETH_P_IPV6 = 0x86dd
-- ETH_P_IPX = 0x8137
-- ETH_P_IRDA = 0x17
-- ETH_P_LAT = 0x6004
-- ETH_P_LINK_CTL = 0x886c
-- ETH_P_LOCALTALK = 0x9
-- ETH_P_LOOP = 0x60
-- ETH_P_LOOPBACK = 0x9000
-- ETH_P_MACSEC = 0x88e5
-- ETH_P_MOBITEX = 0x15
-- ETH_P_MPLS_MC = 0x8848
-- ETH_P_MPLS_UC = 0x8847
-- ETH_P_MVRP = 0x88f5
-- ETH_P_NCSI = 0x88f8
-- ETH_P_PAE = 0x888e
-- ETH_P_PAUSE = 0x8808
-- ETH_P_PHONET = 0xf5
-- ETH_P_PPPTALK = 0x10
-- ETH_P_PPP_DISC = 0x8863
-- ETH_P_PPP_MP = 0x8
-- ETH_P_PPP_SES = 0x8864
-- ETH_P_PRP = 0x88fb
-- ETH_P_PUP = 0x200
-- ETH_P_PUPAT = 0x201
-- ETH_P_QINQ1 = 0x9100
-- ETH_P_QINQ2 = 0x9200
-- ETH_P_QINQ3 = 0x9300
-- ETH_P_RARP = 0x8035
-- ETH_P_SCA = 0x6007
-- ETH_P_SLOW = 0x8809
-- ETH_P_SNAP = 0x5
-- ETH_P_TDLS = 0x890d
-- ETH_P_TEB = 0x6558
-- ETH_P_TIPC = 0x88ca
-- ETH_P_TRAILER = 0x1c
-- ETH_P_TR_802_2 = 0x11
-- ETH_P_TSN = 0x22f0
-- ETH_P_WAN_PPP = 0x7
-- ETH_P_WCCP = 0x883e
-- ETH_P_X25 = 0x805
-- ETH_P_XDSA = 0xf8
-- EXTA = 0xe
-- EXTB = 0xf
-- EXTPROC = 0x10000
-- FALLOC_FL_COLLAPSE_RANGE = 0x8
-- FALLOC_FL_INSERT_RANGE = 0x20
-- FALLOC_FL_KEEP_SIZE = 0x1
-- FALLOC_FL_NO_HIDE_STALE = 0x4
-- FALLOC_FL_PUNCH_HOLE = 0x2
-- FALLOC_FL_UNSHARE_RANGE = 0x40
-- FALLOC_FL_ZERO_RANGE = 0x10
-- FD_CLOEXEC = 0x1
-- FD_SETSIZE = 0x400
-- FF0 = 0x0
-- FF1 = 0x8000
-- FFDLY = 0x8000
-- FLUSHO = 0x1000
-- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
-- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
-- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
-- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
-- FS_ENCRYPTION_MODE_INVALID = 0x0
-- FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
-- FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
-- FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
-- FS_KEY_DESCRIPTOR_SIZE = 0x8
-- FS_KEY_DESC_PREFIX = "fscrypt:"
-- FS_KEY_DESC_PREFIX_SIZE = 0x8
-- FS_MAX_KEY_SIZE = 0x40
-- FS_POLICY_FLAGS_PAD_16 = 0x2
-- FS_POLICY_FLAGS_PAD_32 = 0x3
-- FS_POLICY_FLAGS_PAD_4 = 0x0
-- FS_POLICY_FLAGS_PAD_8 = 0x1
-- FS_POLICY_FLAGS_PAD_MASK = 0x3
-- FS_POLICY_FLAGS_VALID = 0x3
-- F_DUPFD = 0x0
-- F_DUPFD_CLOEXEC = 0x406
-- F_EXLCK = 0x4
-- F_GETFD = 0x1
-- F_GETFL = 0x3
-- F_GETLEASE = 0x401
-- F_GETLK = 0x5
-- F_GETLK64 = 0x5
-- F_GETOWN = 0x9
-- F_GETOWN_EX = 0x10
-- F_GETPIPE_SZ = 0x408
-- F_GETSIG = 0xb
-- F_LOCK = 0x1
-- F_NOTIFY = 0x402
-- F_OFD_GETLK = 0x24
-- F_OFD_SETLK = 0x25
-- F_OFD_SETLKW = 0x26
-- F_OK = 0x0
-- F_RDLCK = 0x0
-- F_SETFD = 0x2
-- F_SETFL = 0x4
-- F_SETLEASE = 0x400
-- F_SETLK = 0x6
-- F_SETLK64 = 0x6
-- F_SETLKW = 0x7
-- F_SETLKW64 = 0x7
-- F_SETOWN = 0x8
-- F_SETOWN_EX = 0xf
-- F_SETPIPE_SZ = 0x407
-- F_SETSIG = 0xa
-- F_SHLCK = 0x8
-- F_TEST = 0x3
-- F_TLOCK = 0x2
-- F_ULOCK = 0x0
-- F_UNLCK = 0x2
-- F_WRLCK = 0x1
-- GENL_ADMIN_PERM = 0x1
-- GENL_CMD_CAP_DO = 0x2
-- GENL_CMD_CAP_DUMP = 0x4
-- GENL_CMD_CAP_HASPOL = 0x8
-- GENL_HDRLEN = 0x4
-- GENL_ID_CTRL = 0x10
-- GENL_ID_PMCRAID = 0x12
-- GENL_ID_VFS_DQUOT = 0x11
-- GENL_MAX_ID = 0x3ff
-- GENL_MIN_ID = 0x10
-- GENL_NAMSIZ = 0x10
-- GENL_START_ALLOC = 0x13
-- GENL_UNS_ADMIN_PERM = 0x10
-- GRND_NONBLOCK = 0x1
-- GRND_RANDOM = 0x2
-- HUPCL = 0x400
-- IBSHIFT = 0x10
-- ICANON = 0x2
-- ICMPV6_FILTER = 0x1
-- ICRNL = 0x100
-- IEXTEN = 0x8000
-- IFA_F_DADFAILED = 0x8
-- IFA_F_DEPRECATED = 0x20
-- IFA_F_HOMEADDRESS = 0x10
-- IFA_F_MANAGETEMPADDR = 0x100
-- IFA_F_MCAUTOJOIN = 0x400
-- IFA_F_NODAD = 0x2
-- IFA_F_NOPREFIXROUTE = 0x200
-- IFA_F_OPTIMISTIC = 0x4
-- IFA_F_PERMANENT = 0x80
-- IFA_F_SECONDARY = 0x1
-- IFA_F_STABLE_PRIVACY = 0x800
-- IFA_F_TEMPORARY = 0x1
-- IFA_F_TENTATIVE = 0x40
-- IFA_MAX = 0x8
-- IFF_ALLMULTI = 0x200
-- IFF_ATTACH_QUEUE = 0x200
-- IFF_AUTOMEDIA = 0x4000
-- IFF_BROADCAST = 0x2
-- IFF_DEBUG = 0x4
-- IFF_DETACH_QUEUE = 0x400
-- IFF_DORMANT = 0x20000
-- IFF_DYNAMIC = 0x8000
-- IFF_ECHO = 0x40000
-- IFF_LOOPBACK = 0x8
-- IFF_LOWER_UP = 0x10000
-- IFF_MASTER = 0x400
-- IFF_MULTICAST = 0x1000
-- IFF_MULTI_QUEUE = 0x100
-- IFF_NOARP = 0x80
-- IFF_NOFILTER = 0x1000
-- IFF_NOTRAILERS = 0x20
-- IFF_NO_PI = 0x1000
-- IFF_ONE_QUEUE = 0x2000
-- IFF_PERSIST = 0x800
-- IFF_POINTOPOINT = 0x10
-- IFF_PORTSEL = 0x2000
-- IFF_PROMISC = 0x100
-- IFF_RUNNING = 0x40
-- IFF_SLAVE = 0x800
-- IFF_TAP = 0x2
-- IFF_TUN = 0x1
-- IFF_TUN_EXCL = 0x8000
-- IFF_UP = 0x1
-- IFF_VNET_HDR = 0x4000
-- IFF_VOLATILE = 0x70c5a
-- IFNAMSIZ = 0x10
-- IGNBRK = 0x1
-- IGNCR = 0x80
-- IGNPAR = 0x4
-- IMAXBEL = 0x2000
-- INLCR = 0x40
-- INPCK = 0x10
-- IN_ACCESS = 0x1
-- IN_ALL_EVENTS = 0xfff
-- IN_ATTRIB = 0x4
-- IN_CLASSA_HOST = 0xffffff
-- IN_CLASSA_MAX = 0x80
-- IN_CLASSA_NET = 0xff000000
-- IN_CLASSA_NSHIFT = 0x18
-- IN_CLASSB_HOST = 0xffff
-- IN_CLASSB_MAX = 0x10000
-- IN_CLASSB_NET = 0xffff0000
-- IN_CLASSB_NSHIFT = 0x10
-- IN_CLASSC_HOST = 0xff
-- IN_CLASSC_NET = 0xffffff00
-- IN_CLASSC_NSHIFT = 0x8
-- IN_CLOEXEC = 0x80000
-- IN_CLOSE = 0x18
-- IN_CLOSE_NOWRITE = 0x10
-- IN_CLOSE_WRITE = 0x8
-- IN_CREATE = 0x100
-- IN_DELETE = 0x200
-- IN_DELETE_SELF = 0x400
-- IN_DONT_FOLLOW = 0x2000000
-- IN_EXCL_UNLINK = 0x4000000
-- IN_IGNORED = 0x8000
-- IN_ISDIR = 0x40000000
-- IN_LOOPBACKNET = 0x7f
-- IN_MASK_ADD = 0x20000000
-- IN_MODIFY = 0x2
-- IN_MOVE = 0xc0
-- IN_MOVED_FROM = 0x40
-- IN_MOVED_TO = 0x80
-- IN_MOVE_SELF = 0x800
-- IN_NONBLOCK = 0x800
-- IN_ONESHOT = 0x80000000
-- IN_ONLYDIR = 0x1000000
-- IN_OPEN = 0x20
-- IN_Q_OVERFLOW = 0x4000
-- IN_UNMOUNT = 0x2000
-- IPPROTO_AH = 0x33
-- IPPROTO_BEETPH = 0x5e
-- IPPROTO_COMP = 0x6c
-- IPPROTO_DCCP = 0x21
-- IPPROTO_DSTOPTS = 0x3c
-- IPPROTO_EGP = 0x8
-- IPPROTO_ENCAP = 0x62
-- IPPROTO_ESP = 0x32
-- IPPROTO_FRAGMENT = 0x2c
-- IPPROTO_GRE = 0x2f
-- IPPROTO_HOPOPTS = 0x0
-- IPPROTO_ICMP = 0x1
-- IPPROTO_ICMPV6 = 0x3a
-- IPPROTO_IDP = 0x16
-- IPPROTO_IGMP = 0x2
-- IPPROTO_IP = 0x0
-- IPPROTO_IPIP = 0x4
-- IPPROTO_IPV6 = 0x29
-- IPPROTO_MH = 0x87
-- IPPROTO_MPLS = 0x89
-- IPPROTO_MTP = 0x5c
-- IPPROTO_NONE = 0x3b
-- IPPROTO_PIM = 0x67
-- IPPROTO_PUP = 0xc
-- IPPROTO_RAW = 0xff
-- IPPROTO_ROUTING = 0x2b
-- IPPROTO_RSVP = 0x2e
-- IPPROTO_SCTP = 0x84
-- IPPROTO_TCP = 0x6
-- IPPROTO_TP = 0x1d
-- IPPROTO_UDP = 0x11
-- IPPROTO_UDPLITE = 0x88
-- IPV6_2292DSTOPTS = 0x4
-- IPV6_2292HOPLIMIT = 0x8
-- IPV6_2292HOPOPTS = 0x3
-- IPV6_2292PKTINFO = 0x2
-- IPV6_2292PKTOPTIONS = 0x6
-- IPV6_2292RTHDR = 0x5
-- IPV6_ADDRFORM = 0x1
-- IPV6_ADD_MEMBERSHIP = 0x14
-- IPV6_AUTHHDR = 0xa
-- IPV6_CHECKSUM = 0x7
-- IPV6_DONTFRAG = 0x3e
-- IPV6_DROP_MEMBERSHIP = 0x15
-- IPV6_DSTOPTS = 0x3b
-- IPV6_HDRINCL = 0x24
-- IPV6_HOPLIMIT = 0x34
-- IPV6_HOPOPTS = 0x36
-- IPV6_IPSEC_POLICY = 0x22
-- IPV6_JOIN_ANYCAST = 0x1b
-- IPV6_JOIN_GROUP = 0x14
-- IPV6_LEAVE_ANYCAST = 0x1c
-- IPV6_LEAVE_GROUP = 0x15
-- IPV6_MTU = 0x18
-- IPV6_MTU_DISCOVER = 0x17
-- IPV6_MULTICAST_HOPS = 0x12
-- IPV6_MULTICAST_IF = 0x11
-- IPV6_MULTICAST_LOOP = 0x13
-- IPV6_NEXTHOP = 0x9
-- IPV6_PATHMTU = 0x3d
-- IPV6_PKTINFO = 0x32
-- IPV6_PMTUDISC_DO = 0x2
-- IPV6_PMTUDISC_DONT = 0x0
-- IPV6_PMTUDISC_INTERFACE = 0x4
-- IPV6_PMTUDISC_OMIT = 0x5
-- IPV6_PMTUDISC_PROBE = 0x3
-- IPV6_PMTUDISC_WANT = 0x1
-- IPV6_RECVDSTOPTS = 0x3a
-- IPV6_RECVERR = 0x19
-- IPV6_RECVHOPLIMIT = 0x33
-- IPV6_RECVHOPOPTS = 0x35
-- IPV6_RECVPATHMTU = 0x3c
-- IPV6_RECVPKTINFO = 0x31
-- IPV6_RECVRTHDR = 0x38
-- IPV6_RECVTCLASS = 0x42
-- IPV6_ROUTER_ALERT = 0x16
-- IPV6_RTHDR = 0x39
-- IPV6_RTHDRDSTOPTS = 0x37
-- IPV6_RTHDR_LOOSE = 0x0
-- IPV6_RTHDR_STRICT = 0x1
-- IPV6_RTHDR_TYPE_0 = 0x0
-- IPV6_RXDSTOPTS = 0x3b
-- IPV6_RXHOPOPTS = 0x36
-- IPV6_TCLASS = 0x43
-- IPV6_UNICAST_HOPS = 0x10
-- IPV6_V6ONLY = 0x1a
-- IPV6_XFRM_POLICY = 0x23
-- IP_ADD_MEMBERSHIP = 0x23
-- IP_ADD_SOURCE_MEMBERSHIP = 0x27
-- IP_BIND_ADDRESS_NO_PORT = 0x18
-- IP_BLOCK_SOURCE = 0x26
-- IP_CHECKSUM = 0x17
-- IP_DEFAULT_MULTICAST_LOOP = 0x1
-- IP_DEFAULT_MULTICAST_TTL = 0x1
-- IP_DF = 0x4000
-- IP_DROP_MEMBERSHIP = 0x24
-- IP_DROP_SOURCE_MEMBERSHIP = 0x28
-- IP_FREEBIND = 0xf
-- IP_HDRINCL = 0x3
-- IP_IPSEC_POLICY = 0x10
-- IP_MAXPACKET = 0xffff
-- IP_MAX_MEMBERSHIPS = 0x14
-- IP_MF = 0x2000
-- IP_MINTTL = 0x15
-- IP_MSFILTER = 0x29
-- IP_MSS = 0x240
-- IP_MTU = 0xe
-- IP_MTU_DISCOVER = 0xa
-- IP_MULTICAST_ALL = 0x31
-- IP_MULTICAST_IF = 0x20
-- IP_MULTICAST_LOOP = 0x22
-- IP_MULTICAST_TTL = 0x21
-- IP_NODEFRAG = 0x16
-- IP_OFFMASK = 0x1fff
-- IP_OPTIONS = 0x4
-- IP_ORIGDSTADDR = 0x14
-- IP_PASSSEC = 0x12
-- IP_PKTINFO = 0x8
-- IP_PKTOPTIONS = 0x9
-- IP_PMTUDISC = 0xa
-- IP_PMTUDISC_DO = 0x2
-- IP_PMTUDISC_DONT = 0x0
-- IP_PMTUDISC_INTERFACE = 0x4
-- IP_PMTUDISC_OMIT = 0x5
-- IP_PMTUDISC_PROBE = 0x3
-- IP_PMTUDISC_WANT = 0x1
-- IP_RECVERR = 0xb
-- IP_RECVOPTS = 0x6
-- IP_RECVORIGDSTADDR = 0x14
-- IP_RECVRETOPTS = 0x7
-- IP_RECVTOS = 0xd
-- IP_RECVTTL = 0xc
-- IP_RETOPTS = 0x7
-- IP_RF = 0x8000
-- IP_ROUTER_ALERT = 0x5
-- IP_TOS = 0x1
-- IP_TRANSPARENT = 0x13
-- IP_TTL = 0x2
-- IP_UNBLOCK_SOURCE = 0x25
-- IP_UNICAST_IF = 0x32
-- IP_XFRM_POLICY = 0x11
-- ISIG = 0x1
-- ISTRIP = 0x20
-- IUCLC = 0x200
-- IUTF8 = 0x4000
-- IXANY = 0x800
-- IXOFF = 0x1000
-- IXON = 0x400
-- KEYCTL_ASSUME_AUTHORITY = 0x10
-- KEYCTL_CHOWN = 0x4
-- KEYCTL_CLEAR = 0x7
-- KEYCTL_DESCRIBE = 0x6
-- KEYCTL_DH_COMPUTE = 0x17
-- KEYCTL_GET_KEYRING_ID = 0x0
-- KEYCTL_GET_PERSISTENT = 0x16
-- KEYCTL_GET_SECURITY = 0x11
-- KEYCTL_INSTANTIATE = 0xc
-- KEYCTL_INSTANTIATE_IOV = 0x14
-- KEYCTL_INVALIDATE = 0x15
-- KEYCTL_JOIN_SESSION_KEYRING = 0x1
-- KEYCTL_LINK = 0x8
-- KEYCTL_NEGATE = 0xd
-- KEYCTL_READ = 0xb
-- KEYCTL_REJECT = 0x13
-- KEYCTL_REVOKE = 0x3
-- KEYCTL_SEARCH = 0xa
-- KEYCTL_SESSION_TO_PARENT = 0x12
-- KEYCTL_SETPERM = 0x5
-- KEYCTL_SET_REQKEY_KEYRING = 0xe
-- KEYCTL_SET_TIMEOUT = 0xf
-- KEYCTL_UNLINK = 0x9
-- KEYCTL_UPDATE = 0x2
-- KEY_REQKEY_DEFL_DEFAULT = 0x0
-- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
-- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
-- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
-- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
-- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
-- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
-- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
-- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
-- KEY_SPEC_GROUP_KEYRING = -0x6
-- KEY_SPEC_PROCESS_KEYRING = -0x2
-- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
-- KEY_SPEC_REQUESTOR_KEYRING = -0x8
-- KEY_SPEC_SESSION_KEYRING = -0x3
-- KEY_SPEC_THREAD_KEYRING = -0x1
-- KEY_SPEC_USER_KEYRING = -0x4
-- KEY_SPEC_USER_SESSION_KEYRING = -0x5
-- LINUX_REBOOT_CMD_CAD_OFF = 0x0
-- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
-- LINUX_REBOOT_CMD_HALT = 0xcdef0123
-- LINUX_REBOOT_CMD_KEXEC = 0x45584543
-- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
-- LINUX_REBOOT_CMD_RESTART = 0x1234567
-- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
-- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
-- LINUX_REBOOT_MAGIC1 = 0xfee1dead
-- LINUX_REBOOT_MAGIC2 = 0x28121969
-- LOCK_EX = 0x2
-- LOCK_NB = 0x4
-- LOCK_SH = 0x1
-- LOCK_UN = 0x8
-- MADV_DODUMP = 0x11
-- MADV_DOFORK = 0xb
-- MADV_DONTDUMP = 0x10
-- MADV_DONTFORK = 0xa
-- MADV_DONTNEED = 0x4
-- MADV_FREE = 0x8
-- MADV_HUGEPAGE = 0xe
-- MADV_HWPOISON = 0x64
-- MADV_MERGEABLE = 0xc
-- MADV_NOHUGEPAGE = 0xf
-- MADV_NORMAL = 0x0
-- MADV_RANDOM = 0x1
-- MADV_REMOVE = 0x9
-- MADV_SEQUENTIAL = 0x2
-- MADV_UNMERGEABLE = 0xd
-- MADV_WILLNEED = 0x3
-- MAP_ANON = 0x20
-- MAP_ANONYMOUS = 0x20
-- MAP_DENYWRITE = 0x800
-- MAP_EXECUTABLE = 0x1000
-- MAP_FILE = 0x0
-- MAP_FIXED = 0x10
-- MAP_GROWSDOWN = 0x100
-- MAP_HUGETLB = 0x40000
-- MAP_HUGE_MASK = 0x3f
-- MAP_HUGE_SHIFT = 0x1a
-- MAP_LOCKED = 0x2000
-- MAP_NONBLOCK = 0x10000
-- MAP_NORESERVE = 0x4000
-- MAP_POPULATE = 0x8000
-- MAP_PRIVATE = 0x2
-- MAP_SHARED = 0x1
-- MAP_STACK = 0x20000
-- MAP_TYPE = 0xf
-- MCL_CURRENT = 0x1
-- MCL_FUTURE = 0x2
-- MCL_ONFAULT = 0x4
-- MNT_DETACH = 0x2
-- MNT_EXPIRE = 0x4
-- MNT_FORCE = 0x1
-- MSG_BATCH = 0x40000
-- MSG_CMSG_CLOEXEC = 0x40000000
-- MSG_CONFIRM = 0x800
-- MSG_CTRUNC = 0x8
-- MSG_DONTROUTE = 0x4
-- MSG_DONTWAIT = 0x40
-- MSG_EOR = 0x80
-- MSG_ERRQUEUE = 0x2000
-- MSG_FASTOPEN = 0x20000000
-- MSG_FIN = 0x200
-- MSG_MORE = 0x8000
-- MSG_NOSIGNAL = 0x4000
-- MSG_OOB = 0x1
-- MSG_PEEK = 0x2
-- MSG_PROXY = 0x10
-- MSG_RST = 0x1000
-- MSG_SYN = 0x400
-- MSG_TRUNC = 0x20
-- MSG_TRYHARD = 0x4
-- MSG_WAITALL = 0x100
-- MSG_WAITFORONE = 0x10000
-- MS_ACTIVE = 0x40000000
-- MS_ASYNC = 0x1
-- MS_BIND = 0x1000
-- MS_BORN = 0x20000000
-- MS_DIRSYNC = 0x80
-- MS_INVALIDATE = 0x2
-- MS_I_VERSION = 0x800000
-- MS_KERNMOUNT = 0x400000
-- MS_LAZYTIME = 0x2000000
-- MS_MANDLOCK = 0x40
-- MS_MGC_MSK = 0xffff0000
-- MS_MGC_VAL = 0xc0ed0000
-- MS_MOVE = 0x2000
-- MS_NOATIME = 0x400
-- MS_NODEV = 0x4
-- MS_NODIRATIME = 0x800
-- MS_NOEXEC = 0x8
-- MS_NOREMOTELOCK = 0x8000000
-- MS_NOSEC = 0x10000000
-- MS_NOSUID = 0x2
-- MS_NOUSER = -0x80000000
-- MS_POSIXACL = 0x10000
-- MS_PRIVATE = 0x40000
-- MS_RDONLY = 0x1
-- MS_REC = 0x4000
-- MS_RELATIME = 0x200000
-- MS_REMOUNT = 0x20
-- MS_RMT_MASK = 0x2800051
-- MS_SHARED = 0x100000
-- MS_SILENT = 0x8000
-- MS_SLAVE = 0x80000
-- MS_STRICTATIME = 0x1000000
-- MS_SYNC = 0x4
-- MS_SYNCHRONOUS = 0x10
-- MS_UNBINDABLE = 0x20000
-- MS_VERBOSE = 0x8000
-- NAME_MAX = 0xff
-- NETLINK_ADD_MEMBERSHIP = 0x1
-- NETLINK_AUDIT = 0x9
-- NETLINK_BROADCAST_ERROR = 0x4
-- NETLINK_CAP_ACK = 0xa
-- NETLINK_CONNECTOR = 0xb
-- NETLINK_CRYPTO = 0x15
-- NETLINK_DNRTMSG = 0xe
-- NETLINK_DROP_MEMBERSHIP = 0x2
-- NETLINK_ECRYPTFS = 0x13
-- NETLINK_FIB_LOOKUP = 0xa
-- NETLINK_FIREWALL = 0x3
-- NETLINK_GENERIC = 0x10
-- NETLINK_INET_DIAG = 0x4
-- NETLINK_IP6_FW = 0xd
-- NETLINK_ISCSI = 0x8
-- NETLINK_KOBJECT_UEVENT = 0xf
-- NETLINK_LISTEN_ALL_NSID = 0x8
-- NETLINK_LIST_MEMBERSHIPS = 0x9
-- NETLINK_NETFILTER = 0xc
-- NETLINK_NFLOG = 0x5
-- NETLINK_NO_ENOBUFS = 0x5
-- NETLINK_PKTINFO = 0x3
-- NETLINK_RDMA = 0x14
-- NETLINK_ROUTE = 0x0
-- NETLINK_RX_RING = 0x6
-- NETLINK_SCSITRANSPORT = 0x12
-- NETLINK_SELINUX = 0x7
-- NETLINK_SOCK_DIAG = 0x4
-- NETLINK_TX_RING = 0x7
-- NETLINK_UNUSED = 0x1
-- NETLINK_USERSOCK = 0x2
-- NETLINK_XFRM = 0x6
-- NL0 = 0x0
-- NL1 = 0x100
-- NLA_ALIGNTO = 0x4
-- NLA_F_NESTED = 0x8000
-- NLA_F_NET_BYTEORDER = 0x4000
-- NLA_HDRLEN = 0x4
-- NLDLY = 0x100
-- NLMSG_ALIGNTO = 0x4
-- NLMSG_DONE = 0x3
-- NLMSG_ERROR = 0x2
-- NLMSG_HDRLEN = 0x10
-- NLMSG_MIN_TYPE = 0x10
-- NLMSG_NOOP = 0x1
-- NLMSG_OVERRUN = 0x4
-- NLM_F_ACK = 0x4
-- NLM_F_APPEND = 0x800
-- NLM_F_ATOMIC = 0x400
-- NLM_F_CREATE = 0x400
-- NLM_F_DUMP = 0x300
-- NLM_F_DUMP_FILTERED = 0x20
-- NLM_F_DUMP_INTR = 0x10
-- NLM_F_ECHO = 0x8
-- NLM_F_EXCL = 0x200
-- NLM_F_MATCH = 0x200
-- NLM_F_MULTI = 0x2
-- NLM_F_REPLACE = 0x100
-- NLM_F_REQUEST = 0x1
-- NLM_F_ROOT = 0x100
-- NOFLSH = 0x80
-- OCRNL = 0x8
-- OFDEL = 0x80
-- OFILL = 0x40
-- OLCUC = 0x2
-- ONLCR = 0x4
-- ONLRET = 0x20
-- ONOCR = 0x10
-- OPOST = 0x1
-- O_ACCMODE = 0x3
-- O_APPEND = 0x400
-- O_ASYNC = 0x2000
-- O_CLOEXEC = 0x80000
-- O_CREAT = 0x40
-- O_DIRECT = 0x10000
-- O_DIRECTORY = 0x4000
-- O_DSYNC = 0x1000
-- O_EXCL = 0x80
-- O_FSYNC = 0x101000
-- O_LARGEFILE = 0x0
-- O_NDELAY = 0x800
-- O_NOATIME = 0x40000
-- O_NOCTTY = 0x100
-- O_NOFOLLOW = 0x8000
-- O_NONBLOCK = 0x800
-- O_PATH = 0x200000
-- O_RDONLY = 0x0
-- O_RDWR = 0x2
-- O_RSYNC = 0x101000
-- O_SYNC = 0x101000
-- O_TMPFILE = 0x404000
-- O_TRUNC = 0x200
-- O_WRONLY = 0x1
-- PACKET_ADD_MEMBERSHIP = 0x1
-- PACKET_AUXDATA = 0x8
-- PACKET_BROADCAST = 0x1
-- PACKET_COPY_THRESH = 0x7
-- PACKET_DROP_MEMBERSHIP = 0x2
-- PACKET_FANOUT = 0x12
-- PACKET_FANOUT_CBPF = 0x6
-- PACKET_FANOUT_CPU = 0x2
-- PACKET_FANOUT_DATA = 0x16
-- PACKET_FANOUT_EBPF = 0x7
-- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
-- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
-- PACKET_FANOUT_HASH = 0x0
-- PACKET_FANOUT_LB = 0x1
-- PACKET_FANOUT_QM = 0x5
-- PACKET_FANOUT_RND = 0x4
-- PACKET_FANOUT_ROLLOVER = 0x3
-- PACKET_FASTROUTE = 0x6
-- PACKET_HDRLEN = 0xb
-- PACKET_HOST = 0x0
-- PACKET_KERNEL = 0x7
-- PACKET_LOOPBACK = 0x5
-- PACKET_LOSS = 0xe
-- PACKET_MR_ALLMULTI = 0x2
-- PACKET_MR_MULTICAST = 0x0
-- PACKET_MR_PROMISC = 0x1
-- PACKET_MR_UNICAST = 0x3
-- PACKET_MULTICAST = 0x2
-- PACKET_ORIGDEV = 0x9
-- PACKET_OTHERHOST = 0x3
-- PACKET_OUTGOING = 0x4
-- PACKET_QDISC_BYPASS = 0x14
-- PACKET_RECV_OUTPUT = 0x3
-- PACKET_RESERVE = 0xc
-- PACKET_ROLLOVER_STATS = 0x15
-- PACKET_RX_RING = 0x5
-- PACKET_STATISTICS = 0x6
-- PACKET_TIMESTAMP = 0x11
-- PACKET_TX_HAS_OFF = 0x13
-- PACKET_TX_RING = 0xd
-- PACKET_TX_TIMESTAMP = 0x10
-- PACKET_USER = 0x6
-- PACKET_VERSION = 0xa
-- PACKET_VNET_HDR = 0xf
-- PARENB = 0x100
-- PARITY_CRC16_PR0 = 0x2
-- PARITY_CRC16_PR0_CCITT = 0x4
-- PARITY_CRC16_PR1 = 0x3
-- PARITY_CRC16_PR1_CCITT = 0x5
-- PARITY_CRC32_PR0_CCITT = 0x6
-- PARITY_CRC32_PR1_CCITT = 0x7
-- PARITY_DEFAULT = 0x0
-- PARITY_NONE = 0x1
-- PARMRK = 0x8
-- PARODD = 0x200
-- PENDIN = 0x4000
-- PERF_EVENT_IOC_DISABLE = 0x2401
-- PERF_EVENT_IOC_ENABLE = 0x2400
-- PERF_EVENT_IOC_ID = 0x80082407
-- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
-- PERF_EVENT_IOC_PERIOD = 0x40082404
-- PERF_EVENT_IOC_REFRESH = 0x2402
-- PERF_EVENT_IOC_RESET = 0x2403
-- PERF_EVENT_IOC_SET_BPF = 0x40042408
-- PERF_EVENT_IOC_SET_FILTER = 0x40082406
-- PERF_EVENT_IOC_SET_OUTPUT = 0x2405
-- PRIO_PGRP = 0x1
-- PRIO_PROCESS = 0x0
-- PRIO_USER = 0x2
-- PROT_EXEC = 0x4
-- PROT_GROWSDOWN = 0x1000000
-- PROT_GROWSUP = 0x2000000
-- PROT_NONE = 0x0
-- PROT_READ = 0x1
-- PROT_WRITE = 0x2
-- PR_CAPBSET_DROP = 0x18
-- PR_CAPBSET_READ = 0x17
-- PR_CAP_AMBIENT = 0x2f
-- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
-- PR_CAP_AMBIENT_IS_SET = 0x1
-- PR_CAP_AMBIENT_LOWER = 0x3
-- PR_CAP_AMBIENT_RAISE = 0x2
-- PR_ENDIAN_BIG = 0x0
-- PR_ENDIAN_LITTLE = 0x1
-- PR_ENDIAN_PPC_LITTLE = 0x2
-- PR_FPEMU_NOPRINT = 0x1
-- PR_FPEMU_SIGFPE = 0x2
-- PR_FP_EXC_ASYNC = 0x2
-- PR_FP_EXC_DISABLED = 0x0
-- PR_FP_EXC_DIV = 0x10000
-- PR_FP_EXC_INV = 0x100000
-- PR_FP_EXC_NONRECOV = 0x1
-- PR_FP_EXC_OVF = 0x20000
-- PR_FP_EXC_PRECISE = 0x3
-- PR_FP_EXC_RES = 0x80000
-- PR_FP_EXC_SW_ENABLE = 0x80
-- PR_FP_EXC_UND = 0x40000
-- PR_FP_MODE_FR = 0x1
-- PR_FP_MODE_FRE = 0x2
-- PR_GET_CHILD_SUBREAPER = 0x25
-- PR_GET_DUMPABLE = 0x3
-- PR_GET_ENDIAN = 0x13
-- PR_GET_FPEMU = 0x9
-- PR_GET_FPEXC = 0xb
-- PR_GET_FP_MODE = 0x2e
-- PR_GET_KEEPCAPS = 0x7
-- PR_GET_NAME = 0x10
-- PR_GET_NO_NEW_PRIVS = 0x27
-- PR_GET_PDEATHSIG = 0x2
-- PR_GET_SECCOMP = 0x15
-- PR_GET_SECUREBITS = 0x1b
-- PR_GET_THP_DISABLE = 0x2a
-- PR_GET_TID_ADDRESS = 0x28
-- PR_GET_TIMERSLACK = 0x1e
-- PR_GET_TIMING = 0xd
-- PR_GET_TSC = 0x19
-- PR_GET_UNALIGN = 0x5
-- PR_MCE_KILL = 0x21
-- PR_MCE_KILL_CLEAR = 0x0
-- PR_MCE_KILL_DEFAULT = 0x2
-- PR_MCE_KILL_EARLY = 0x1
-- PR_MCE_KILL_GET = 0x22
-- PR_MCE_KILL_LATE = 0x0
-- PR_MCE_KILL_SET = 0x1
-- PR_MPX_DISABLE_MANAGEMENT = 0x2c
-- PR_MPX_ENABLE_MANAGEMENT = 0x2b
-- PR_SET_CHILD_SUBREAPER = 0x24
-- PR_SET_DUMPABLE = 0x4
-- PR_SET_ENDIAN = 0x14
-- PR_SET_FPEMU = 0xa
-- PR_SET_FPEXC = 0xc
-- PR_SET_FP_MODE = 0x2d
-- PR_SET_KEEPCAPS = 0x8
-- PR_SET_MM = 0x23
-- PR_SET_MM_ARG_END = 0x9
-- PR_SET_MM_ARG_START = 0x8
-- PR_SET_MM_AUXV = 0xc
-- PR_SET_MM_BRK = 0x7
-- PR_SET_MM_END_CODE = 0x2
-- PR_SET_MM_END_DATA = 0x4
-- PR_SET_MM_ENV_END = 0xb
-- PR_SET_MM_ENV_START = 0xa
-- PR_SET_MM_EXE_FILE = 0xd
-- PR_SET_MM_MAP = 0xe
-- PR_SET_MM_MAP_SIZE = 0xf
-- PR_SET_MM_START_BRK = 0x6
-- PR_SET_MM_START_CODE = 0x1
-- PR_SET_MM_START_DATA = 0x3
-- PR_SET_MM_START_STACK = 0x5
-- PR_SET_NAME = 0xf
-- PR_SET_NO_NEW_PRIVS = 0x26
-- PR_SET_PDEATHSIG = 0x1
-- PR_SET_PTRACER = 0x59616d61
-- PR_SET_PTRACER_ANY = -0x1
-- PR_SET_SECCOMP = 0x16
-- PR_SET_SECUREBITS = 0x1c
-- PR_SET_THP_DISABLE = 0x29
-- PR_SET_TIMERSLACK = 0x1d
-- PR_SET_TIMING = 0xe
-- PR_SET_TSC = 0x1a
-- PR_SET_UNALIGN = 0x6
-- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
-- PR_TASK_PERF_EVENTS_ENABLE = 0x20
-- PR_TIMING_STATISTICAL = 0x0
-- PR_TIMING_TIMESTAMP = 0x1
-- PR_TSC_ENABLE = 0x1
-- PR_TSC_SIGSEGV = 0x2
-- PR_UNALIGN_NOPRINT = 0x1
-- PR_UNALIGN_SIGBUS = 0x2
-- PTRACE_ATTACH = 0x10
-- PTRACE_CONT = 0x7
-- PTRACE_DETACH = 0x11
-- PTRACE_EVENT_CLONE = 0x3
-- PTRACE_EVENT_EXEC = 0x4
-- PTRACE_EVENT_EXIT = 0x6
-- PTRACE_EVENT_FORK = 0x1
-- PTRACE_EVENT_SECCOMP = 0x7
-- PTRACE_EVENT_STOP = 0x80
-- PTRACE_EVENT_VFORK = 0x2
-- PTRACE_EVENT_VFORK_DONE = 0x5
-- PTRACE_GETEVENTMSG = 0x4201
-- PTRACE_GETREGS = 0xc
-- PTRACE_GETREGSET = 0x4204
-- PTRACE_GETSIGINFO = 0x4202
-- PTRACE_GETSIGMASK = 0x420a
-- PTRACE_INTERRUPT = 0x4207
-- PTRACE_KILL = 0x8
-- PTRACE_LISTEN = 0x4208
-- PTRACE_O_EXITKILL = 0x100000
-- PTRACE_O_MASK = 0x3000ff
-- PTRACE_O_SUSPEND_SECCOMP = 0x200000
-- PTRACE_O_TRACECLONE = 0x8
-- PTRACE_O_TRACEEXEC = 0x10
-- PTRACE_O_TRACEEXIT = 0x40
-- PTRACE_O_TRACEFORK = 0x2
-- PTRACE_O_TRACESECCOMP = 0x80
-- PTRACE_O_TRACESYSGOOD = 0x1
-- PTRACE_O_TRACEVFORK = 0x4
-- PTRACE_O_TRACEVFORKDONE = 0x20
-- PTRACE_PEEKDATA = 0x2
-- PTRACE_PEEKSIGINFO = 0x4209
-- PTRACE_PEEKSIGINFO_SHARED = 0x1
-- PTRACE_PEEKTEXT = 0x1
-- PTRACE_PEEKUSR = 0x3
-- PTRACE_POKEDATA = 0x5
-- PTRACE_POKETEXT = 0x4
-- PTRACE_POKEUSR = 0x6
-- PTRACE_SECCOMP_GET_FILTER = 0x420c
-- PTRACE_SEIZE = 0x4206
-- PTRACE_SETOPTIONS = 0x4200
-- PTRACE_SETREGS = 0xd
-- PTRACE_SETREGSET = 0x4205
-- PTRACE_SETSIGINFO = 0x4203
-- PTRACE_SETSIGMASK = 0x420b
-- PTRACE_SINGLESTEP = 0x9
-- PTRACE_SYSCALL = 0x18
-- PTRACE_TRACEME = 0x0
-- RLIMIT_AS = 0x9
-- RLIMIT_CORE = 0x4
-- RLIMIT_CPU = 0x0
-- RLIMIT_DATA = 0x2
-- RLIMIT_FSIZE = 0x1
-- RLIMIT_LOCKS = 0xa
-- RLIMIT_MEMLOCK = 0x8
-- RLIMIT_MSGQUEUE = 0xc
-- RLIMIT_NICE = 0xd
-- RLIMIT_NOFILE = 0x7
-- RLIMIT_NPROC = 0x6
-- RLIMIT_RSS = 0x5
-- RLIMIT_RTPRIO = 0xe
-- RLIMIT_RTTIME = 0xf
-- RLIMIT_SIGPENDING = 0xb
-- RLIMIT_STACK = 0x3
-- RLIM_INFINITY = -0x1
-- RTAX_ADVMSS = 0x8
-- RTAX_CC_ALGO = 0x10
-- RTAX_CWND = 0x7
-- RTAX_FEATURES = 0xc
-- RTAX_FEATURE_ALLFRAG = 0x8
-- RTAX_FEATURE_ECN = 0x1
-- RTAX_FEATURE_MASK = 0xf
-- RTAX_FEATURE_SACK = 0x2
-- RTAX_FEATURE_TIMESTAMP = 0x4
-- RTAX_HOPLIMIT = 0xa
-- RTAX_INITCWND = 0xb
-- RTAX_INITRWND = 0xe
-- RTAX_LOCK = 0x1
-- RTAX_MAX = 0x10
-- RTAX_MTU = 0x2
-- RTAX_QUICKACK = 0xf
-- RTAX_REORDERING = 0x9
-- RTAX_RTO_MIN = 0xd
-- RTAX_RTT = 0x4
-- RTAX_RTTVAR = 0x5
-- RTAX_SSTHRESH = 0x6
-- RTAX_UNSPEC = 0x0
-- RTAX_WINDOW = 0x3
-- RTA_ALIGNTO = 0x4
-- RTA_MAX = 0x19
-- RTCF_DIRECTSRC = 0x4000000
-- RTCF_DOREDIRECT = 0x1000000
-- RTCF_LOG = 0x2000000
-- RTCF_MASQ = 0x400000
-- RTCF_NAT = 0x800000
-- RTCF_VALVE = 0x200000
-- RTF_ADDRCLASSMASK = 0xf8000000
-- RTF_ADDRCONF = 0x40000
-- RTF_ALLONLINK = 0x20000
-- RTF_BROADCAST = 0x10000000
-- RTF_CACHE = 0x1000000
-- RTF_DEFAULT = 0x10000
-- RTF_DYNAMIC = 0x10
-- RTF_FLOW = 0x2000000
-- RTF_GATEWAY = 0x2
-- RTF_HOST = 0x4
-- RTF_INTERFACE = 0x40000000
-- RTF_IRTT = 0x100
-- RTF_LINKRT = 0x100000
-- RTF_LOCAL = 0x80000000
-- RTF_MODIFIED = 0x20
-- RTF_MSS = 0x40
-- RTF_MTU = 0x40
-- RTF_MULTICAST = 0x20000000
-- RTF_NAT = 0x8000000
-- RTF_NOFORWARD = 0x1000
-- RTF_NONEXTHOP = 0x200000
-- RTF_NOPMTUDISC = 0x4000
-- RTF_POLICY = 0x4000000
-- RTF_REINSTATE = 0x8
-- RTF_REJECT = 0x200
-- RTF_STATIC = 0x400
-- RTF_THROW = 0x2000
-- RTF_UP = 0x1
-- RTF_WINDOW = 0x80
-- RTF_XRESOLVE = 0x800
-- RTM_BASE = 0x10
-- RTM_DELACTION = 0x31
-- RTM_DELADDR = 0x15
-- RTM_DELADDRLABEL = 0x49
-- RTM_DELLINK = 0x11
-- RTM_DELMDB = 0x55
-- RTM_DELNEIGH = 0x1d
-- RTM_DELNSID = 0x59
-- RTM_DELQDISC = 0x25
-- RTM_DELROUTE = 0x19
-- RTM_DELRULE = 0x21
-- RTM_DELTCLASS = 0x29
-- RTM_DELTFILTER = 0x2d
-- RTM_F_CLONED = 0x200
-- RTM_F_EQUALIZE = 0x400
-- RTM_F_LOOKUP_TABLE = 0x1000
-- RTM_F_NOTIFY = 0x100
-- RTM_F_PREFIX = 0x800
-- RTM_GETACTION = 0x32
-- RTM_GETADDR = 0x16
-- RTM_GETADDRLABEL = 0x4a
-- RTM_GETANYCAST = 0x3e
-- RTM_GETDCB = 0x4e
-- RTM_GETLINK = 0x12
-- RTM_GETMDB = 0x56
-- RTM_GETMULTICAST = 0x3a
-- RTM_GETNEIGH = 0x1e
-- RTM_GETNEIGHTBL = 0x42
-- RTM_GETNETCONF = 0x52
-- RTM_GETNSID = 0x5a
-- RTM_GETQDISC = 0x26
-- RTM_GETROUTE = 0x1a
-- RTM_GETRULE = 0x22
-- RTM_GETSTATS = 0x5e
-- RTM_GETTCLASS = 0x2a
-- RTM_GETTFILTER = 0x2e
-- RTM_MAX = 0x5f
-- RTM_NEWACTION = 0x30
-- RTM_NEWADDR = 0x14
-- RTM_NEWADDRLABEL = 0x48
-- RTM_NEWLINK = 0x10
-- RTM_NEWMDB = 0x54
-- RTM_NEWNDUSEROPT = 0x44
-- RTM_NEWNEIGH = 0x1c
-- RTM_NEWNEIGHTBL = 0x40
-- RTM_NEWNETCONF = 0x50
-- RTM_NEWNSID = 0x58
-- RTM_NEWPREFIX = 0x34
-- RTM_NEWQDISC = 0x24
-- RTM_NEWROUTE = 0x18
-- RTM_NEWRULE = 0x20
-- RTM_NEWSTATS = 0x5c
-- RTM_NEWTCLASS = 0x28
-- RTM_NEWTFILTER = 0x2c
-- RTM_NR_FAMILIES = 0x14
-- RTM_NR_MSGTYPES = 0x50
-- RTM_SETDCB = 0x4f
-- RTM_SETLINK = 0x13
-- RTM_SETNEIGHTBL = 0x43
-- RTNH_ALIGNTO = 0x4
-- RTNH_COMPARE_MASK = 0x19
-- RTNH_F_DEAD = 0x1
-- RTNH_F_LINKDOWN = 0x10
-- RTNH_F_OFFLOAD = 0x8
-- RTNH_F_ONLINK = 0x4
-- RTNH_F_PERVASIVE = 0x2
-- RTN_MAX = 0xb
-- RTPROT_BABEL = 0x2a
-- RTPROT_BIRD = 0xc
-- RTPROT_BOOT = 0x3
-- RTPROT_DHCP = 0x10
-- RTPROT_DNROUTED = 0xd
-- RTPROT_GATED = 0x8
-- RTPROT_KERNEL = 0x2
-- RTPROT_MROUTED = 0x11
-- RTPROT_MRT = 0xa
-- RTPROT_NTK = 0xf
-- RTPROT_RA = 0x9
-- RTPROT_REDIRECT = 0x1
-- RTPROT_STATIC = 0x4
-- RTPROT_UNSPEC = 0x0
-- RTPROT_XORP = 0xe
-- RTPROT_ZEBRA = 0xb
-- RT_CLASS_DEFAULT = 0xfd
-- RT_CLASS_LOCAL = 0xff
-- RT_CLASS_MAIN = 0xfe
-- RT_CLASS_MAX = 0xff
-- RT_CLASS_UNSPEC = 0x0
-- RUSAGE_CHILDREN = -0x1
-- RUSAGE_SELF = 0x0
-- RUSAGE_THREAD = 0x1
-- SCM_CREDENTIALS = 0x2
-- SCM_RIGHTS = 0x1
-- SCM_TIMESTAMP = 0x1d
-- SCM_TIMESTAMPING = 0x25
-- SCM_TIMESTAMPING_OPT_STATS = 0x36
-- SCM_TIMESTAMPNS = 0x23
-- SCM_WIFI_STATUS = 0x29
-- SECCOMP_MODE_DISABLED = 0x0
-- SECCOMP_MODE_FILTER = 0x2
-- SECCOMP_MODE_STRICT = 0x1
-- SHUT_RD = 0x0
-- SHUT_RDWR = 0x2
-- SHUT_WR = 0x1
-- SIOCADDDLCI = 0x8980
-- SIOCADDMULTI = 0x8931
-- SIOCADDRT = 0x890b
-- SIOCATMARK = 0x8905
-- SIOCBONDCHANGEACTIVE = 0x8995
-- SIOCBONDENSLAVE = 0x8990
-- SIOCBONDINFOQUERY = 0x8994
-- SIOCBONDRELEASE = 0x8991
-- SIOCBONDSETHWADDR = 0x8992
-- SIOCBONDSLAVEINFOQUERY = 0x8993
-- SIOCBRADDBR = 0x89a0
-- SIOCBRADDIF = 0x89a2
-- SIOCBRDELBR = 0x89a1
-- SIOCBRDELIF = 0x89a3
-- SIOCDARP = 0x8953
-- SIOCDELDLCI = 0x8981
-- SIOCDELMULTI = 0x8932
-- SIOCDELRT = 0x890c
-- SIOCDEVPRIVATE = 0x89f0
-- SIOCDIFADDR = 0x8936
-- SIOCDRARP = 0x8960
-- SIOCETHTOOL = 0x8946
-- SIOCGARP = 0x8954
-- SIOCGHWTSTAMP = 0x89b1
-- SIOCGIFADDR = 0x8915
-- SIOCGIFBR = 0x8940
-- SIOCGIFBRDADDR = 0x8919
-- SIOCGIFCONF = 0x8912
-- SIOCGIFCOUNT = 0x8938
-- SIOCGIFDSTADDR = 0x8917
-- SIOCGIFENCAP = 0x8925
-- SIOCGIFFLAGS = 0x8913
-- SIOCGIFHWADDR = 0x8927
-- SIOCGIFINDEX = 0x8933
-- SIOCGIFMAP = 0x8970
-- SIOCGIFMEM = 0x891f
-- SIOCGIFMETRIC = 0x891d
-- SIOCGIFMTU = 0x8921
-- SIOCGIFNAME = 0x8910
-- SIOCGIFNETMASK = 0x891b
-- SIOCGIFPFLAGS = 0x8935
-- SIOCGIFSLAVE = 0x8929
-- SIOCGIFTXQLEN = 0x8942
-- SIOCGIFVLAN = 0x8982
-- SIOCGMIIPHY = 0x8947
-- SIOCGMIIREG = 0x8948
-- SIOCGPGRP = 0x8904
-- SIOCGRARP = 0x8961
-- SIOCGSKNS = 0x894c
-- SIOCGSTAMP = 0x8906
-- SIOCGSTAMPNS = 0x8907
-- SIOCINQ = 0x541b
-- SIOCOUTQ = 0x5411
-- SIOCOUTQNSD = 0x894b
-- SIOCPROTOPRIVATE = 0x89e0
-- SIOCRTMSG = 0x890d
-- SIOCSARP = 0x8955
-- SIOCSHWTSTAMP = 0x89b0
-- SIOCSIFADDR = 0x8916
-- SIOCSIFBR = 0x8941
-- SIOCSIFBRDADDR = 0x891a
-- SIOCSIFDSTADDR = 0x8918
-- SIOCSIFENCAP = 0x8926
-- SIOCSIFFLAGS = 0x8914
-- SIOCSIFHWADDR = 0x8924
-- SIOCSIFHWBROADCAST = 0x8937
-- SIOCSIFLINK = 0x8911
-- SIOCSIFMAP = 0x8971
-- SIOCSIFMEM = 0x8920
-- SIOCSIFMETRIC = 0x891e
-- SIOCSIFMTU = 0x8922
-- SIOCSIFNAME = 0x8923
-- SIOCSIFNETMASK = 0x891c
-- SIOCSIFPFLAGS = 0x8934
-- SIOCSIFSLAVE = 0x8930
-- SIOCSIFTXQLEN = 0x8943
-- SIOCSIFVLAN = 0x8983
-- SIOCSMIIREG = 0x8949
-- SIOCSPGRP = 0x8902
-- SIOCSRARP = 0x8962
-- SIOCWANDEV = 0x894a
-- SOCK_CLOEXEC = 0x80000
-- SOCK_DCCP = 0x6
-- SOCK_DGRAM = 0x2
-- SOCK_IOC_TYPE = 0x89
-- SOCK_NONBLOCK = 0x800
-- SOCK_PACKET = 0xa
-- SOCK_RAW = 0x3
-- SOCK_RDM = 0x4
-- SOCK_SEQPACKET = 0x5
-- SOCK_STREAM = 0x1
-- SOL_AAL = 0x109
-- SOL_ALG = 0x117
-- SOL_ATM = 0x108
-- SOL_CAIF = 0x116
-- SOL_CAN_BASE = 0x64
-- SOL_DCCP = 0x10d
-- SOL_DECNET = 0x105
-- SOL_ICMPV6 = 0x3a
-- SOL_IP = 0x0
-- SOL_IPV6 = 0x29
-- SOL_IRDA = 0x10a
-- SOL_IUCV = 0x115
-- SOL_KCM = 0x119
-- SOL_LLC = 0x10c
-- SOL_NETBEUI = 0x10b
-- SOL_NETLINK = 0x10e
-- SOL_NFC = 0x118
-- SOL_PACKET = 0x107
-- SOL_PNPIPE = 0x113
-- SOL_PPPOL2TP = 0x111
-- SOL_RAW = 0xff
-- SOL_RDS = 0x114
-- SOL_RXRPC = 0x110
-- SOL_SOCKET = 0x1
-- SOL_TCP = 0x6
-- SOL_TIPC = 0x10f
-- SOL_X25 = 0x106
-- SOMAXCONN = 0x80
-- SO_ACCEPTCONN = 0x1e
-- SO_ATTACH_BPF = 0x32
-- SO_ATTACH_FILTER = 0x1a
-- SO_ATTACH_REUSEPORT_CBPF = 0x33
-- SO_ATTACH_REUSEPORT_EBPF = 0x34
-- SO_BINDTODEVICE = 0x19
-- SO_BPF_EXTENSIONS = 0x30
-- SO_BROADCAST = 0x6
-- SO_BSDCOMPAT = 0xe
-- SO_BUSY_POLL = 0x2e
-- SO_CNX_ADVICE = 0x35
-- SO_DEBUG = 0x1
-- SO_DETACH_BPF = 0x1b
-- SO_DETACH_FILTER = 0x1b
-- SO_DOMAIN = 0x27
-- SO_DONTROUTE = 0x5
-- SO_ERROR = 0x4
-- SO_GET_FILTER = 0x1a
-- SO_INCOMING_CPU = 0x31
-- SO_KEEPALIVE = 0x9
-- SO_LINGER = 0xd
-- SO_LOCK_FILTER = 0x2c
-- SO_MARK = 0x24
-- SO_MAX_PACING_RATE = 0x2f
-- SO_NOFCS = 0x2b
-- SO_NO_CHECK = 0xb
-- SO_OOBINLINE = 0xa
-- SO_PASSCRED = 0x10
-- SO_PASSSEC = 0x22
-- SO_PEEK_OFF = 0x2a
-- SO_PEERCRED = 0x11
-- SO_PEERNAME = 0x1c
-- SO_PEERSEC = 0x1f
-- SO_PRIORITY = 0xc
-- SO_PROTOCOL = 0x26
-- SO_RCVBUF = 0x8
-- SO_RCVBUFFORCE = 0x21
-- SO_RCVLOWAT = 0x12
-- SO_RCVTIMEO = 0x14
-- SO_REUSEADDR = 0x2
-- SO_REUSEPORT = 0xf
-- SO_RXQ_OVFL = 0x28
-- SO_SECURITY_AUTHENTICATION = 0x16
-- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-- SO_SELECT_ERR_QUEUE = 0x2d
-- SO_SNDBUF = 0x7
-- SO_SNDBUFFORCE = 0x20
-- SO_SNDLOWAT = 0x13
-- SO_SNDTIMEO = 0x15
-- SO_TIMESTAMP = 0x1d
-- SO_TIMESTAMPING = 0x25
-- SO_TIMESTAMPNS = 0x23
-- SO_TYPE = 0x3
-- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
-- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
-- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
-- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
-- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
-- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
-- SO_VM_SOCKETS_TRUSTED = 0x5
-- SO_WIFI_STATUS = 0x29
-- SPLICE_F_GIFT = 0x8
-- SPLICE_F_MORE = 0x4
-- SPLICE_F_MOVE = 0x1
-- SPLICE_F_NONBLOCK = 0x2
-- S_BLKSIZE = 0x200
-- S_IEXEC = 0x40
-- S_IFBLK = 0x6000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFIFO = 0x1000
-- S_IFLNK = 0xa000
-- S_IFMT = 0xf000
-- S_IFREG = 0x8000
-- S_IFSOCK = 0xc000
-- S_IREAD = 0x100
-- S_IRGRP = 0x20
-- S_IROTH = 0x4
-- S_IRUSR = 0x100
-- S_IRWXG = 0x38
-- S_IRWXO = 0x7
-- S_IRWXU = 0x1c0
-- S_ISGID = 0x400
-- S_ISUID = 0x800
-- S_ISVTX = 0x200
-- S_IWGRP = 0x10
-- S_IWOTH = 0x2
-- S_IWRITE = 0x80
-- S_IWUSR = 0x80
-- S_IXGRP = 0x8
-- S_IXOTH = 0x1
-- S_IXUSR = 0x40
-- TAB0 = 0x0
-- TAB1 = 0x800
-- TAB2 = 0x1000
-- TAB3 = 0x1800
-- TABDLY = 0x1800
-- TASKSTATS_CMD_ATTR_MAX = 0x4
-- TASKSTATS_CMD_MAX = 0x2
-- TASKSTATS_GENL_NAME = "TASKSTATS"
-- TASKSTATS_GENL_VERSION = 0x1
-- TASKSTATS_TYPE_MAX = 0x6
-- TASKSTATS_VERSION = 0x8
-- TCFLSH = 0x540b
-- TCGETA = 0x5405
-- TCGETS = 0x5401
-- TCGETS2 = 0x802c542a
-- TCGETX = 0x5432
-- TCIFLUSH = 0x0
-- TCIOFF = 0x2
-- TCIOFLUSH = 0x2
-- TCION = 0x3
-- TCOFLUSH = 0x1
-- TCOOFF = 0x0
-- TCOON = 0x1
-- TCP_CC_INFO = 0x1a
-- TCP_CONGESTION = 0xd
-- TCP_COOKIE_IN_ALWAYS = 0x1
-- TCP_COOKIE_MAX = 0x10
-- TCP_COOKIE_MIN = 0x8
-- TCP_COOKIE_OUT_NEVER = 0x2
-- TCP_COOKIE_PAIR_SIZE = 0x20
-- TCP_COOKIE_TRANSACTIONS = 0xf
-- TCP_CORK = 0x3
-- TCP_DEFER_ACCEPT = 0x9
-- TCP_FASTOPEN = 0x17
-- TCP_INFO = 0xb
-- TCP_KEEPCNT = 0x6
-- TCP_KEEPIDLE = 0x4
-- TCP_KEEPINTVL = 0x5
-- TCP_LINGER2 = 0x8
-- TCP_MAXSEG = 0x2
-- TCP_MAXWIN = 0xffff
-- TCP_MAX_WINSHIFT = 0xe
-- TCP_MD5SIG = 0xe
-- TCP_MD5SIG_MAXKEYLEN = 0x50
-- TCP_MSS = 0x200
-- TCP_MSS_DEFAULT = 0x218
-- TCP_MSS_DESIRED = 0x4c4
-- TCP_NODELAY = 0x1
-- TCP_NOTSENT_LOWAT = 0x19
-- TCP_QUEUE_SEQ = 0x15
-- TCP_QUICKACK = 0xc
-- TCP_REPAIR = 0x13
-- TCP_REPAIR_OPTIONS = 0x16
-- TCP_REPAIR_QUEUE = 0x14
-- TCP_REPAIR_WINDOW = 0x1d
-- TCP_SAVED_SYN = 0x1c
-- TCP_SAVE_SYN = 0x1b
-- TCP_SYNCNT = 0x7
-- TCP_S_DATA_IN = 0x4
-- TCP_S_DATA_OUT = 0x8
-- TCP_THIN_DUPACK = 0x11
-- TCP_THIN_LINEAR_TIMEOUTS = 0x10
-- TCP_TIMESTAMP = 0x18
-- TCP_USER_TIMEOUT = 0x12
-- TCP_WINDOW_CLAMP = 0xa
-- TCSAFLUSH = 0x2
-- TCSBRK = 0x5409
-- TCSBRKP = 0x5425
-- TCSETA = 0x5406
-- TCSETAF = 0x5408
-- TCSETAW = 0x5407
-- TCSETS = 0x5402
-- TCSETS2 = 0x402c542b
-- TCSETSF = 0x5404
-- TCSETSF2 = 0x402c542d
-- TCSETSW = 0x5403
-- TCSETSW2 = 0x402c542c
-- TCSETX = 0x5433
-- TCSETXF = 0x5434
-- TCSETXW = 0x5435
-- TCXONC = 0x540a
-- TIOCCBRK = 0x5428
-- TIOCCONS = 0x541d
-- TIOCEXCL = 0x540c
-- TIOCGDEV = 0x80045432
-- TIOCGETD = 0x5424
-- TIOCGEXCL = 0x80045440
-- TIOCGICOUNT = 0x545d
-- TIOCGLCKTRMIOS = 0x5456
-- TIOCGPGRP = 0x540f
-- TIOCGPKT = 0x80045438
-- TIOCGPTLCK = 0x80045439
-- TIOCGPTN = 0x80045430
-- TIOCGRS485 = 0x542e
-- TIOCGSERIAL = 0x541e
-- TIOCGSID = 0x5429
-- TIOCGSOFTCAR = 0x5419
-- TIOCGWINSZ = 0x5413
-- TIOCINQ = 0x541b
-- TIOCLINUX = 0x541c
-- TIOCMBIC = 0x5417
-- TIOCMBIS = 0x5416
-- TIOCMGET = 0x5415
-- TIOCMIWAIT = 0x545c
-- TIOCMSET = 0x5418
-- TIOCM_CAR = 0x40
-- TIOCM_CD = 0x40
-- TIOCM_CTS = 0x20
-- TIOCM_DSR = 0x100
-- TIOCM_DTR = 0x2
-- TIOCM_LE = 0x1
-- TIOCM_RI = 0x80
-- TIOCM_RNG = 0x80
-- TIOCM_RTS = 0x4
-- TIOCM_SR = 0x10
-- TIOCM_ST = 0x8
-- TIOCNOTTY = 0x5422
-- TIOCNXCL = 0x540d
-- TIOCOUTQ = 0x5411
-- TIOCPKT = 0x5420
-- TIOCPKT_DATA = 0x0
-- TIOCPKT_DOSTOP = 0x20
-- TIOCPKT_FLUSHREAD = 0x1
-- TIOCPKT_FLUSHWRITE = 0x2
-- TIOCPKT_IOCTL = 0x40
-- TIOCPKT_NOSTOP = 0x10
-- TIOCPKT_START = 0x8
-- TIOCPKT_STOP = 0x4
-- TIOCSBRK = 0x5427
-- TIOCSCTTY = 0x540e
-- TIOCSERCONFIG = 0x5453
-- TIOCSERGETLSR = 0x5459
-- TIOCSERGETMULTI = 0x545a
-- TIOCSERGSTRUCT = 0x5458
-- TIOCSERGWILD = 0x5454
-- TIOCSERSETMULTI = 0x545b
-- TIOCSERSWILD = 0x5455
-- TIOCSER_TEMT = 0x1
-- TIOCSETD = 0x5423
-- TIOCSIG = 0x40045436
-- TIOCSLCKTRMIOS = 0x5457
-- TIOCSPGRP = 0x5410
-- TIOCSPTLCK = 0x40045431
-- TIOCSRS485 = 0x542f
-- TIOCSSERIAL = 0x541f
-- TIOCSSOFTCAR = 0x541a
-- TIOCSTI = 0x5412
-- TIOCSWINSZ = 0x5414
-- TIOCVHANGUP = 0x5437
-- TOSTOP = 0x100
-- TS_COMM_LEN = 0x20
-- TUNATTACHFILTER = 0x401054d5
-- TUNDETACHFILTER = 0x401054d6
-- TUNGETFEATURES = 0x800454cf
-- TUNGETFILTER = 0x801054db
-- TUNGETIFF = 0x800454d2
-- TUNGETSNDBUF = 0x800454d3
-- TUNGETVNETBE = 0x800454df
-- TUNGETVNETHDRSZ = 0x800454d7
-- TUNGETVNETLE = 0x800454dd
-- TUNSETDEBUG = 0x400454c9
-- TUNSETGROUP = 0x400454ce
-- TUNSETIFF = 0x400454ca
-- TUNSETIFINDEX = 0x400454da
-- TUNSETLINK = 0x400454cd
-- TUNSETNOCSUM = 0x400454c8
-- TUNSETOFFLOAD = 0x400454d0
-- TUNSETOWNER = 0x400454cc
-- TUNSETPERSIST = 0x400454cb
-- TUNSETQUEUE = 0x400454d9
-- TUNSETSNDBUF = 0x400454d4
-- TUNSETTXFILTER = 0x400454d1
-- TUNSETVNETBE = 0x400454de
-- TUNSETVNETHDRSZ = 0x400454d8
-- TUNSETVNETLE = 0x400454dc
-- UMOUNT_NOFOLLOW = 0x8
-- VDISCARD = 0xd
-- VEOF = 0x4
-- VEOL = 0xb
-- VEOL2 = 0x10
-- VERASE = 0x2
-- VINTR = 0x0
-- VKILL = 0x3
-- VLNEXT = 0xf
-- VMADDR_CID_ANY = 0xffffffff
-- VMADDR_CID_HOST = 0x2
-- VMADDR_CID_HYPERVISOR = 0x0
-- VMADDR_CID_RESERVED = 0x1
-- VMADDR_PORT_ANY = 0xffffffff
-- VMIN = 0x6
-- VM_SOCKETS_INVALID_VERSION = 0xffffffff
-- VQUIT = 0x1
-- VREPRINT = 0xc
-- VSTART = 0x8
-- VSTOP = 0x9
-- VSUSP = 0xa
-- VSWTC = 0x7
-- VT0 = 0x0
-- VT1 = 0x4000
-- VTDLY = 0x4000
-- VTIME = 0x5
-- VWERASE = 0xe
-- WALL = 0x40000000
-- WCLONE = 0x80000000
-- WCONTINUED = 0x8
-- WEXITED = 0x4
-- WNOHANG = 0x1
-- WNOTHREAD = 0x20000000
-- WNOWAIT = 0x1000000
-- WORDSIZE = 0x40
-- WSTOPPED = 0x2
-- WUNTRACED = 0x2
-- XATTR_CREATE = 0x1
-- XATTR_REPLACE = 0x2
-- XCASE = 0x4
-- XTABS = 0x1800
-+ B1000000 = 0x1008
-+ B115200 = 0x1002
-+ B1152000 = 0x1009
-+ B1500000 = 0x100a
-+ B2000000 = 0x100b
-+ B230400 = 0x1003
-+ B2500000 = 0x100c
-+ B3000000 = 0x100d
-+ B3500000 = 0x100e
-+ B4000000 = 0x100f
-+ B460800 = 0x1004
-+ B500000 = 0x1005
-+ B57600 = 0x1001
-+ B576000 = 0x1006
-+ B921600 = 0x1007
-+ BLKBSZGET = 0x80081270
-+ BLKBSZSET = 0x40081271
-+ BLKFLSBUF = 0x1261
-+ BLKFRAGET = 0x1265
-+ BLKFRASET = 0x1264
-+ BLKGETSIZE = 0x1260
-+ BLKGETSIZE64 = 0x80081272
-+ BLKPBSZGET = 0x127b
-+ BLKRAGET = 0x1263
-+ BLKRASET = 0x1262
-+ BLKROGET = 0x125e
-+ BLKROSET = 0x125d
-+ BLKRRPART = 0x125f
-+ BLKSECTGET = 0x1267
-+ BLKSECTSET = 0x1266
-+ BLKSSZGET = 0x1268
-+ BOTHER = 0x1000
-+ BS1 = 0x2000
-+ BSDLY = 0x2000
-+ CBAUD = 0x100f
-+ CBAUDEX = 0x1000
-+ CIBAUD = 0x100f0000
-+ CLOCAL = 0x800
-+ CR1 = 0x200
-+ CR2 = 0x400
-+ CR3 = 0x600
-+ CRDLY = 0x600
-+ CREAD = 0x80
-+ CS6 = 0x10
-+ CS7 = 0x20
-+ CS8 = 0x30
-+ CSIZE = 0x30
-+ CSTOPB = 0x40
-+ ECHOCTL = 0x200
-+ ECHOE = 0x10
-+ ECHOK = 0x20
-+ ECHOKE = 0x800
-+ ECHONL = 0x40
-+ ECHOPRT = 0x400
-+ EFD_CLOEXEC = 0x80000
-+ EFD_NONBLOCK = 0x800
-+ EPOLL_CLOEXEC = 0x80000
-+ ESR_MAGIC = 0x45535201
-+ EXTPROC = 0x10000
-+ EXTRA_MAGIC = 0x45585401
-+ FF1 = 0x8000
-+ FFDLY = 0x8000
-+ FLUSHO = 0x1000
-+ FPSIMD_MAGIC = 0x46508001
-+ FS_IOC_ENABLE_VERITY = 0x40806685
-+ FS_IOC_GETFLAGS = 0x80086601
-+ FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
-+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
-+ FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
-+ F_GETLK = 0x5
-+ F_GETLK64 = 0x5
-+ F_GETOWN = 0x9
-+ F_RDLCK = 0x0
-+ F_SETLK = 0x6
-+ F_SETLK64 = 0x6
-+ F_SETLKW = 0x7
-+ F_SETLKW64 = 0x7
-+ F_SETOWN = 0x8
-+ F_UNLCK = 0x2
-+ F_WRLCK = 0x1
-+ HUPCL = 0x400
-+ ICANON = 0x2
-+ IEXTEN = 0x8000
-+ IN_CLOEXEC = 0x80000
-+ IN_NONBLOCK = 0x800
-+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x7b9
-+ ISIG = 0x1
-+ IUCLC = 0x200
-+ IXOFF = 0x1000
-+ IXON = 0x400
-+ MAP_ANON = 0x20
-+ MAP_ANONYMOUS = 0x20
-+ MAP_DENYWRITE = 0x800
-+ MAP_EXECUTABLE = 0x1000
-+ MAP_GROWSDOWN = 0x100
-+ MAP_HUGETLB = 0x40000
-+ MAP_LOCKED = 0x2000
-+ MAP_NONBLOCK = 0x10000
-+ MAP_NORESERVE = 0x4000
-+ MAP_POPULATE = 0x8000
-+ MAP_STACK = 0x20000
-+ MAP_SYNC = 0x80000
-+ MCL_CURRENT = 0x1
-+ MCL_FUTURE = 0x2
-+ MCL_ONFAULT = 0x4
-+ NFDBITS = 0x40
-+ NLDLY = 0x100
-+ NOFLSH = 0x80
-+ NS_GET_NSTYPE = 0xb703
-+ NS_GET_OWNER_UID = 0xb704
-+ NS_GET_PARENT = 0xb702
-+ NS_GET_USERNS = 0xb701
-+ OLCUC = 0x2
-+ ONLCR = 0x4
-+ O_APPEND = 0x400
-+ O_ASYNC = 0x2000
-+ O_CLOEXEC = 0x80000
-+ O_CREAT = 0x40
-+ O_DIRECT = 0x10000
-+ O_DIRECTORY = 0x4000
-+ O_DSYNC = 0x1000
-+ O_EXCL = 0x80
-+ O_FSYNC = 0x101000
-+ O_LARGEFILE = 0x0
-+ O_NDELAY = 0x800
-+ O_NOATIME = 0x40000
-+ O_NOCTTY = 0x100
-+ O_NOFOLLOW = 0x8000
-+ O_NONBLOCK = 0x800
-+ O_PATH = 0x200000
-+ O_RSYNC = 0x101000
-+ O_SYNC = 0x101000
-+ O_TMPFILE = 0x404000
-+ O_TRUNC = 0x200
-+ PARENB = 0x100
-+ PARODD = 0x200
-+ PENDIN = 0x4000
-+ PERF_EVENT_IOC_DISABLE = 0x2401
-+ PERF_EVENT_IOC_ENABLE = 0x2400
-+ PERF_EVENT_IOC_ID = 0x80082407
-+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4008240b
-+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
-+ PERF_EVENT_IOC_PERIOD = 0x40082404
-+ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
-+ PERF_EVENT_IOC_REFRESH = 0x2402
-+ PERF_EVENT_IOC_RESET = 0x2403
-+ PERF_EVENT_IOC_SET_BPF = 0x40042408
-+ PERF_EVENT_IOC_SET_FILTER = 0x40082406
-+ PERF_EVENT_IOC_SET_OUTPUT = 0x2405
-+ PPPIOCATTACH = 0x4004743d
-+ PPPIOCATTCHAN = 0x40047438
-+ PPPIOCCONNECT = 0x4004743a
-+ PPPIOCDETACH = 0x4004743c
-+ PPPIOCDISCONN = 0x7439
-+ PPPIOCGASYNCMAP = 0x80047458
-+ PPPIOCGCHAN = 0x80047437
-+ PPPIOCGDEBUG = 0x80047441
-+ PPPIOCGFLAGS = 0x8004745a
-+ PPPIOCGIDLE = 0x8010743f
-+ PPPIOCGIDLE32 = 0x8008743f
-+ PPPIOCGIDLE64 = 0x8010743f
-+ PPPIOCGL2TPSTATS = 0x80487436
-+ PPPIOCGMRU = 0x80047453
-+ PPPIOCGRASYNCMAP = 0x80047455
-+ PPPIOCGUNIT = 0x80047456
-+ PPPIOCGXASYNCMAP = 0x80207450
-+ PPPIOCSACTIVE = 0x40107446
-+ PPPIOCSASYNCMAP = 0x40047457
-+ PPPIOCSCOMPRESS = 0x4010744d
-+ PPPIOCSDEBUG = 0x40047440
-+ PPPIOCSFLAGS = 0x40047459
-+ PPPIOCSMAXCID = 0x40047451
-+ PPPIOCSMRRU = 0x4004743b
-+ PPPIOCSMRU = 0x40047452
-+ PPPIOCSNPMODE = 0x4008744b
-+ PPPIOCSPASS = 0x40107447
-+ PPPIOCSRASYNCMAP = 0x40047454
-+ PPPIOCSXASYNCMAP = 0x4020744f
-+ PPPIOCXFERUNIT = 0x744e
-+ PR_SET_PTRACER_ANY = 0xffffffffffffffff
-+ PTRACE_SYSEMU = 0x1f
-+ PTRACE_SYSEMU_SINGLESTEP = 0x20
-+ RLIMIT_AS = 0x9
-+ RLIMIT_MEMLOCK = 0x8
-+ RLIMIT_NOFILE = 0x7
-+ RLIMIT_NPROC = 0x6
-+ RLIMIT_RSS = 0x5
-+ RNDADDENTROPY = 0x40085203
-+ RNDADDTOENTCNT = 0x40045201
-+ RNDCLEARPOOL = 0x5206
-+ RNDGETENTCNT = 0x80045200
-+ RNDGETPOOL = 0x80085202
-+ RNDRESEEDCRNG = 0x5207
-+ RNDZAPENTCNT = 0x5204
-+ RTC_AIE_OFF = 0x7002
-+ RTC_AIE_ON = 0x7001
-+ RTC_ALM_READ = 0x80247008
-+ RTC_ALM_SET = 0x40247007
-+ RTC_EPOCH_READ = 0x8008700d
-+ RTC_EPOCH_SET = 0x4008700e
-+ RTC_IRQP_READ = 0x8008700b
-+ RTC_IRQP_SET = 0x4008700c
-+ RTC_PIE_OFF = 0x7006
-+ RTC_PIE_ON = 0x7005
-+ RTC_PLL_GET = 0x80207011
-+ RTC_PLL_SET = 0x40207012
-+ RTC_RD_TIME = 0x80247009
-+ RTC_SET_TIME = 0x4024700a
-+ RTC_UIE_OFF = 0x7004
-+ RTC_UIE_ON = 0x7003
-+ RTC_VL_CLR = 0x7014
-+ RTC_VL_READ = 0x80047013
-+ RTC_WIE_OFF = 0x7010
-+ RTC_WIE_ON = 0x700f
-+ RTC_WKALM_RD = 0x80287010
-+ RTC_WKALM_SET = 0x4028700f
-+ SCM_TIMESTAMPING = 0x25
-+ SCM_TIMESTAMPING_OPT_STATS = 0x36
-+ SCM_TIMESTAMPING_PKTINFO = 0x3a
-+ SCM_TIMESTAMPNS = 0x23
-+ SCM_TXTIME = 0x3d
-+ SCM_WIFI_STATUS = 0x29
-+ SFD_CLOEXEC = 0x80000
-+ SFD_NONBLOCK = 0x800
-+ SIOCATMARK = 0x8905
-+ SIOCGPGRP = 0x8904
-+ SIOCGSTAMPNS_NEW = 0x80108907
-+ SIOCGSTAMP_NEW = 0x80108906
-+ SIOCINQ = 0x541b
-+ SIOCOUTQ = 0x5411
-+ SIOCSPGRP = 0x8902
-+ SOCK_CLOEXEC = 0x80000
-+ SOCK_DGRAM = 0x2
-+ SOCK_NONBLOCK = 0x800
-+ SOCK_STREAM = 0x1
-+ SOL_SOCKET = 0x1
-+ SO_ACCEPTCONN = 0x1e
-+ SO_ATTACH_BPF = 0x32
-+ SO_ATTACH_REUSEPORT_CBPF = 0x33
-+ SO_ATTACH_REUSEPORT_EBPF = 0x34
-+ SO_BINDTODEVICE = 0x19
-+ SO_BINDTOIFINDEX = 0x3e
-+ SO_BPF_EXTENSIONS = 0x30
-+ SO_BROADCAST = 0x6
-+ SO_BSDCOMPAT = 0xe
-+ SO_BUSY_POLL = 0x2e
-+ SO_CNX_ADVICE = 0x35
-+ SO_COOKIE = 0x39
-+ SO_DETACH_REUSEPORT_BPF = 0x44
-+ SO_DOMAIN = 0x27
-+ SO_DONTROUTE = 0x5
-+ SO_ERROR = 0x4
-+ SO_INCOMING_CPU = 0x31
-+ SO_INCOMING_NAPI_ID = 0x38
-+ SO_KEEPALIVE = 0x9
-+ SO_LINGER = 0xd
-+ SO_LOCK_FILTER = 0x2c
-+ SO_MARK = 0x24
-+ SO_MAX_PACING_RATE = 0x2f
-+ SO_MEMINFO = 0x37
-+ SO_NOFCS = 0x2b
-+ SO_OOBINLINE = 0xa
-+ SO_PASSCRED = 0x10
-+ SO_PASSSEC = 0x22
-+ SO_PEEK_OFF = 0x2a
-+ SO_PEERCRED = 0x11
-+ SO_PEERGROUPS = 0x3b
-+ SO_PEERSEC = 0x1f
-+ SO_PROTOCOL = 0x26
-+ SO_RCVBUF = 0x8
-+ SO_RCVBUFFORCE = 0x21
-+ SO_RCVLOWAT = 0x12
-+ SO_RCVTIMEO = 0x14
-+ SO_RCVTIMEO_NEW = 0x42
-+ SO_RCVTIMEO_OLD = 0x14
-+ SO_REUSEADDR = 0x2
-+ SO_REUSEPORT = 0xf
-+ SO_RXQ_OVFL = 0x28
-+ SO_SECURITY_AUTHENTICATION = 0x16
-+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-+ SO_SELECT_ERR_QUEUE = 0x2d
-+ SO_SNDBUF = 0x7
-+ SO_SNDBUFFORCE = 0x20
-+ SO_SNDLOWAT = 0x13
-+ SO_SNDTIMEO = 0x15
-+ SO_SNDTIMEO_NEW = 0x43
-+ SO_SNDTIMEO_OLD = 0x15
-+ SO_TIMESTAMPING = 0x25
-+ SO_TIMESTAMPING_NEW = 0x41
-+ SO_TIMESTAMPING_OLD = 0x25
-+ SO_TIMESTAMPNS = 0x23
-+ SO_TIMESTAMPNS_NEW = 0x40
-+ SO_TIMESTAMPNS_OLD = 0x23
-+ SO_TIMESTAMP_NEW = 0x3f
-+ SO_TXTIME = 0x3d
-+ SO_TYPE = 0x3
-+ SO_WIFI_STATUS = 0x29
-+ SO_ZEROCOPY = 0x3c
-+ SVE_MAGIC = 0x53564501
-+ TAB1 = 0x800
-+ TAB2 = 0x1000
-+ TAB3 = 0x1800
-+ TABDLY = 0x1800
-+ TCFLSH = 0x540b
-+ TCGETA = 0x5405
-+ TCGETS = 0x5401
-+ TCGETS2 = 0x802c542a
-+ TCGETX = 0x5432
-+ TCSAFLUSH = 0x2
-+ TCSBRK = 0x5409
-+ TCSBRKP = 0x5425
-+ TCSETA = 0x5406
-+ TCSETAF = 0x5408
-+ TCSETAW = 0x5407
-+ TCSETS = 0x5402
-+ TCSETS2 = 0x402c542b
-+ TCSETSF = 0x5404
-+ TCSETSF2 = 0x402c542d
-+ TCSETSW = 0x5403
-+ TCSETSW2 = 0x402c542c
-+ TCSETX = 0x5433
-+ TCSETXF = 0x5434
-+ TCSETXW = 0x5435
-+ TCXONC = 0x540a
-+ TIOCCBRK = 0x5428
-+ TIOCCONS = 0x541d
-+ TIOCEXCL = 0x540c
-+ TIOCGDEV = 0x80045432
-+ TIOCGETD = 0x5424
-+ TIOCGEXCL = 0x80045440
-+ TIOCGICOUNT = 0x545d
-+ TIOCGISO7816 = 0x80285442
-+ TIOCGLCKTRMIOS = 0x5456
-+ TIOCGPGRP = 0x540f
-+ TIOCGPKT = 0x80045438
-+ TIOCGPTLCK = 0x80045439
-+ TIOCGPTN = 0x80045430
-+ TIOCGPTPEER = 0x5441
-+ TIOCGRS485 = 0x542e
-+ TIOCGSERIAL = 0x541e
-+ TIOCGSID = 0x5429
-+ TIOCGSOFTCAR = 0x5419
-+ TIOCGWINSZ = 0x5413
-+ TIOCINQ = 0x541b
-+ TIOCLINUX = 0x541c
-+ TIOCMBIC = 0x5417
-+ TIOCMBIS = 0x5416
-+ TIOCMGET = 0x5415
-+ TIOCMIWAIT = 0x545c
-+ TIOCMSET = 0x5418
-+ TIOCM_CAR = 0x40
-+ TIOCM_CD = 0x40
-+ TIOCM_CTS = 0x20
-+ TIOCM_DSR = 0x100
-+ TIOCM_RI = 0x80
-+ TIOCM_RNG = 0x80
-+ TIOCM_SR = 0x10
-+ TIOCM_ST = 0x8
-+ TIOCNOTTY = 0x5422
-+ TIOCNXCL = 0x540d
-+ TIOCOUTQ = 0x5411
-+ TIOCPKT = 0x5420
-+ TIOCSBRK = 0x5427
-+ TIOCSCTTY = 0x540e
-+ TIOCSERCONFIG = 0x5453
-+ TIOCSERGETLSR = 0x5459
-+ TIOCSERGETMULTI = 0x545a
-+ TIOCSERGSTRUCT = 0x5458
-+ TIOCSERGWILD = 0x5454
-+ TIOCSERSETMULTI = 0x545b
-+ TIOCSERSWILD = 0x5455
-+ TIOCSER_TEMT = 0x1
-+ TIOCSETD = 0x5423
-+ TIOCSIG = 0x40045436
-+ TIOCSISO7816 = 0xc0285443
-+ TIOCSLCKTRMIOS = 0x5457
-+ TIOCSPGRP = 0x5410
-+ TIOCSPTLCK = 0x40045431
-+ TIOCSRS485 = 0x542f
-+ TIOCSSERIAL = 0x541f
-+ TIOCSSOFTCAR = 0x541a
-+ TIOCSTI = 0x5412
-+ TIOCSWINSZ = 0x5414
-+ TIOCVHANGUP = 0x5437
-+ TOSTOP = 0x100
-+ TUNATTACHFILTER = 0x401054d5
-+ TUNDETACHFILTER = 0x401054d6
-+ TUNGETDEVNETNS = 0x54e3
-+ TUNGETFEATURES = 0x800454cf
-+ TUNGETFILTER = 0x801054db
-+ TUNGETIFF = 0x800454d2
-+ TUNGETSNDBUF = 0x800454d3
-+ TUNGETVNETBE = 0x800454df
-+ TUNGETVNETHDRSZ = 0x800454d7
-+ TUNGETVNETLE = 0x800454dd
-+ TUNSETCARRIER = 0x400454e2
-+ TUNSETDEBUG = 0x400454c9
-+ TUNSETFILTEREBPF = 0x800454e1
-+ TUNSETGROUP = 0x400454ce
-+ TUNSETIFF = 0x400454ca
-+ TUNSETIFINDEX = 0x400454da
-+ TUNSETLINK = 0x400454cd
-+ TUNSETNOCSUM = 0x400454c8
-+ TUNSETOFFLOAD = 0x400454d0
-+ TUNSETOWNER = 0x400454cc
-+ TUNSETPERSIST = 0x400454cb
-+ TUNSETQUEUE = 0x400454d9
-+ TUNSETSNDBUF = 0x400454d4
-+ TUNSETSTEERINGEBPF = 0x800454e0
-+ TUNSETTXFILTER = 0x400454d1
-+ TUNSETVNETBE = 0x400454de
-+ TUNSETVNETHDRSZ = 0x400454d8
-+ TUNSETVNETLE = 0x400454dc
-+ UBI_IOCATT = 0x40186f40
-+ UBI_IOCDET = 0x40046f41
-+ UBI_IOCEBCH = 0x40044f02
-+ UBI_IOCEBER = 0x40044f01
-+ UBI_IOCEBISMAP = 0x80044f05
-+ UBI_IOCEBMAP = 0x40084f03
-+ UBI_IOCEBUNMAP = 0x40044f04
-+ UBI_IOCMKVOL = 0x40986f00
-+ UBI_IOCRMVOL = 0x40046f01
-+ UBI_IOCRNVOL = 0x51106f03
-+ UBI_IOCRPEB = 0x40046f04
-+ UBI_IOCRSVOL = 0x400c6f02
-+ UBI_IOCSETVOLPROP = 0x40104f06
-+ UBI_IOCSPEB = 0x40046f05
-+ UBI_IOCVOLCRBLK = 0x40804f07
-+ UBI_IOCVOLRMBLK = 0x4f08
-+ UBI_IOCVOLUP = 0x40084f00
-+ VDISCARD = 0xd
-+ VEOF = 0x4
-+ VEOL = 0xb
-+ VEOL2 = 0x10
-+ VMIN = 0x6
-+ VREPRINT = 0xc
-+ VSTART = 0x8
-+ VSTOP = 0x9
-+ VSUSP = 0xa
-+ VSWTC = 0x7
-+ VT1 = 0x4000
-+ VTDLY = 0x4000
-+ VTIME = 0x5
-+ VWERASE = 0xe
-+ WDIOC_GETBOOTSTATUS = 0x80045702
-+ WDIOC_GETPRETIMEOUT = 0x80045709
-+ WDIOC_GETSTATUS = 0x80045701
-+ WDIOC_GETSUPPORT = 0x80285700
-+ WDIOC_GETTEMP = 0x80045703
-+ WDIOC_GETTIMELEFT = 0x8004570a
-+ WDIOC_GETTIMEOUT = 0x80045707
-+ WDIOC_KEEPALIVE = 0x80045705
-+ WDIOC_SETOPTIONS = 0x80045704
-+ WORDSIZE = 0x40
-+ XCASE = 0x4
-+ XTABS = 0x1800
- )
-
- // Errors
- const (
-- E2BIG = syscall.Errno(0x7)
-- EACCES = syscall.Errno(0xd)
- EADDRINUSE = syscall.Errno(0x62)
- EADDRNOTAVAIL = syscall.Errno(0x63)
- EADV = syscall.Errno(0x44)
- EAFNOSUPPORT = syscall.Errno(0x61)
-- EAGAIN = syscall.Errno(0xb)
- EALREADY = syscall.Errno(0x72)
- EBADE = syscall.Errno(0x34)
-- EBADF = syscall.Errno(0x9)
- EBADFD = syscall.Errno(0x4d)
- EBADMSG = syscall.Errno(0x4a)
- EBADR = syscall.Errno(0x35)
- EBADRQC = syscall.Errno(0x38)
- EBADSLT = syscall.Errno(0x39)
- EBFONT = syscall.Errno(0x3b)
-- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x7d)
-- ECHILD = syscall.Errno(0xa)
- ECHRNG = syscall.Errno(0x2c)
- ECOMM = syscall.Errno(0x46)
- ECONNABORTED = syscall.Errno(0x67)
-@@ -1871,23 +493,15 @@ const (
- EDEADLK = syscall.Errno(0x23)
- EDEADLOCK = syscall.Errno(0x23)
- EDESTADDRREQ = syscall.Errno(0x59)
-- EDOM = syscall.Errno(0x21)
- EDOTDOT = syscall.Errno(0x49)
- EDQUOT = syscall.Errno(0x7a)
-- EEXIST = syscall.Errno(0x11)
-- EFAULT = syscall.Errno(0xe)
-- EFBIG = syscall.Errno(0x1b)
- EHOSTDOWN = syscall.Errno(0x70)
- EHOSTUNREACH = syscall.Errno(0x71)
- EHWPOISON = syscall.Errno(0x85)
- EIDRM = syscall.Errno(0x2b)
- EILSEQ = syscall.Errno(0x54)
- EINPROGRESS = syscall.Errno(0x73)
-- EINTR = syscall.Errno(0x4)
-- EINVAL = syscall.Errno(0x16)
-- EIO = syscall.Errno(0x5)
- EISCONN = syscall.Errno(0x6a)
-- EISDIR = syscall.Errno(0x15)
- EISNAM = syscall.Errno(0x78)
- EKEYEXPIRED = syscall.Errno(0x7f)
- EKEYREJECTED = syscall.Errno(0x81)
-@@ -1904,8 +518,6 @@ const (
- ELNRNG = syscall.Errno(0x30)
- ELOOP = syscall.Errno(0x28)
- EMEDIUMTYPE = syscall.Errno(0x7c)
-- EMFILE = syscall.Errno(0x18)
-- EMLINK = syscall.Errno(0x1f)
- EMSGSIZE = syscall.Errno(0x5a)
- EMULTIHOP = syscall.Errno(0x48)
- ENAMETOOLONG = syscall.Errno(0x24)
-@@ -1913,103 +525,70 @@ const (
- ENETDOWN = syscall.Errno(0x64)
- ENETRESET = syscall.Errno(0x66)
- ENETUNREACH = syscall.Errno(0x65)
-- ENFILE = syscall.Errno(0x17)
- ENOANO = syscall.Errno(0x37)
- ENOBUFS = syscall.Errno(0x69)
- ENOCSI = syscall.Errno(0x32)
- ENODATA = syscall.Errno(0x3d)
-- ENODEV = syscall.Errno(0x13)
-- ENOENT = syscall.Errno(0x2)
-- ENOEXEC = syscall.Errno(0x8)
- ENOKEY = syscall.Errno(0x7e)
- ENOLCK = syscall.Errno(0x25)
- ENOLINK = syscall.Errno(0x43)
- ENOMEDIUM = syscall.Errno(0x7b)
-- ENOMEM = syscall.Errno(0xc)
- ENOMSG = syscall.Errno(0x2a)
- ENONET = syscall.Errno(0x40)
- ENOPKG = syscall.Errno(0x41)
- ENOPROTOOPT = syscall.Errno(0x5c)
-- ENOSPC = syscall.Errno(0x1c)
- ENOSR = syscall.Errno(0x3f)
- ENOSTR = syscall.Errno(0x3c)
- ENOSYS = syscall.Errno(0x26)
-- ENOTBLK = syscall.Errno(0xf)
- ENOTCONN = syscall.Errno(0x6b)
-- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x27)
- ENOTNAM = syscall.Errno(0x76)
- ENOTRECOVERABLE = syscall.Errno(0x83)
- ENOTSOCK = syscall.Errno(0x58)
- ENOTSUP = syscall.Errno(0x5f)
-- ENOTTY = syscall.Errno(0x19)
- ENOTUNIQ = syscall.Errno(0x4c)
-- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x5f)
- EOVERFLOW = syscall.Errno(0x4b)
- EOWNERDEAD = syscall.Errno(0x82)
-- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x60)
-- EPIPE = syscall.Errno(0x20)
- EPROTO = syscall.Errno(0x47)
- EPROTONOSUPPORT = syscall.Errno(0x5d)
- EPROTOTYPE = syscall.Errno(0x5b)
-- ERANGE = syscall.Errno(0x22)
- EREMCHG = syscall.Errno(0x4e)
- EREMOTE = syscall.Errno(0x42)
- EREMOTEIO = syscall.Errno(0x79)
- ERESTART = syscall.Errno(0x55)
- ERFKILL = syscall.Errno(0x84)
-- EROFS = syscall.Errno(0x1e)
- ESHUTDOWN = syscall.Errno(0x6c)
- ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-- ESPIPE = syscall.Errno(0x1d)
-- ESRCH = syscall.Errno(0x3)
- ESRMNT = syscall.Errno(0x45)
- ESTALE = syscall.Errno(0x74)
- ESTRPIPE = syscall.Errno(0x56)
- ETIME = syscall.Errno(0x3e)
- ETIMEDOUT = syscall.Errno(0x6e)
- ETOOMANYREFS = syscall.Errno(0x6d)
-- ETXTBSY = syscall.Errno(0x1a)
- EUCLEAN = syscall.Errno(0x75)
- EUNATCH = syscall.Errno(0x31)
- EUSERS = syscall.Errno(0x57)
-- EWOULDBLOCK = syscall.Errno(0xb)
-- EXDEV = syscall.Errno(0x12)
- EXFULL = syscall.Errno(0x36)
- )
-
- // Signals
- const (
-- SIGABRT = syscall.Signal(0x6)
-- SIGALRM = syscall.Signal(0xe)
- SIGBUS = syscall.Signal(0x7)
- SIGCHLD = syscall.Signal(0x11)
- SIGCLD = syscall.Signal(0x11)
- SIGCONT = syscall.Signal(0x12)
-- SIGFPE = syscall.Signal(0x8)
-- SIGHUP = syscall.Signal(0x1)
-- SIGILL = syscall.Signal(0x4)
-- SIGINT = syscall.Signal(0x2)
- SIGIO = syscall.Signal(0x1d)
-- SIGIOT = syscall.Signal(0x6)
-- SIGKILL = syscall.Signal(0x9)
-- SIGPIPE = syscall.Signal(0xd)
- SIGPOLL = syscall.Signal(0x1d)
- SIGPROF = syscall.Signal(0x1b)
- SIGPWR = syscall.Signal(0x1e)
-- SIGQUIT = syscall.Signal(0x3)
-- SIGSEGV = syscall.Signal(0xb)
- SIGSTKFLT = syscall.Signal(0x10)
- SIGSTOP = syscall.Signal(0x13)
- SIGSYS = syscall.Signal(0x1f)
-- SIGTERM = syscall.Signal(0xf)
-- SIGTRAP = syscall.Signal(0x5)
- SIGTSTP = syscall.Signal(0x14)
- SIGTTIN = syscall.Signal(0x15)
- SIGTTOU = syscall.Signal(0x16)
-- SIGUNUSED = syscall.Signal(0x1f)
- SIGURG = syscall.Signal(0x17)
- SIGUSR1 = syscall.Signal(0xa)
- SIGUSR2 = syscall.Signal(0xc)
-@@ -2020,171 +599,179 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "no such device or address",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource temporarily unavailable",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device or resource busy",
-- 17: "file exists",
-- 18: "invalid cross-device link",
-- 19: "no such device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "numerical result out of range",
-- 35: "resource deadlock avoided",
-- 36: "file name too long",
-- 37: "no locks available",
-- 38: "function not implemented",
-- 39: "directory not empty",
-- 40: "too many levels of symbolic links",
-- 42: "no message of desired type",
-- 43: "identifier removed",
-- 44: "channel number out of range",
-- 45: "level 2 not synchronized",
-- 46: "level 3 halted",
-- 47: "level 3 reset",
-- 48: "link number out of range",
-- 49: "protocol driver not attached",
-- 50: "no CSI structure available",
-- 51: "level 2 halted",
-- 52: "invalid exchange",
-- 53: "invalid request descriptor",
-- 54: "exchange full",
-- 55: "no anode",
-- 56: "invalid request code",
-- 57: "invalid slot",
-- 59: "bad font file format",
-- 60: "device not a stream",
-- 61: "no data available",
-- 62: "timer expired",
-- 63: "out of streams resources",
-- 64: "machine is not on the network",
-- 65: "package not installed",
-- 66: "object is remote",
-- 67: "link has been severed",
-- 68: "advertise error",
-- 69: "srmount error",
-- 70: "communication error on send",
-- 71: "protocol error",
-- 72: "multihop attempted",
-- 73: "RFS specific error",
-- 74: "bad message",
-- 75: "value too large for defined data type",
-- 76: "name not unique on network",
-- 77: "file descriptor in bad state",
-- 78: "remote address changed",
-- 79: "can not access a needed shared library",
-- 80: "accessing a corrupted shared library",
-- 81: ".lib section in a.out corrupted",
-- 82: "attempting to link in too many shared libraries",
-- 83: "cannot exec a shared library directly",
-- 84: "invalid or incomplete multibyte or wide character",
-- 85: "interrupted system call should be restarted",
-- 86: "streams pipe error",
-- 87: "too many users",
-- 88: "socket operation on non-socket",
-- 89: "destination address required",
-- 90: "message too long",
-- 91: "protocol wrong type for socket",
-- 92: "protocol not available",
-- 93: "protocol not supported",
-- 94: "socket type not supported",
-- 95: "operation not supported",
-- 96: "protocol family not supported",
-- 97: "address family not supported by protocol",
-- 98: "address already in use",
-- 99: "cannot assign requested address",
-- 100: "network is down",
-- 101: "network is unreachable",
-- 102: "network dropped connection on reset",
-- 103: "software caused connection abort",
-- 104: "connection reset by peer",
-- 105: "no buffer space available",
-- 106: "transport endpoint is already connected",
-- 107: "transport endpoint is not connected",
-- 108: "cannot send after transport endpoint shutdown",
-- 109: "too many references: cannot splice",
-- 110: "connection timed out",
-- 111: "connection refused",
-- 112: "host is down",
-- 113: "no route to host",
-- 114: "operation already in progress",
-- 115: "operation now in progress",
-- 116: "stale file handle",
-- 117: "structure needs cleaning",
-- 118: "not a XENIX named type file",
-- 119: "no XENIX semaphores available",
-- 120: "is a named type file",
-- 121: "remote I/O error",
-- 122: "disk quota exceeded",
-- 123: "no medium found",
-- 124: "wrong medium type",
-- 125: "operation canceled",
-- 126: "required key not available",
-- 127: "key has expired",
-- 128: "key has been revoked",
-- 129: "key was rejected by service",
-- 130: "owner died",
-- 131: "state not recoverable",
-- 132: "operation not possible due to RF-kill",
-- 133: "memory page has hardware error",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device or resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "invalid cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "numerical result out of range"},
-+ {35, "EDEADLK", "resource deadlock avoided"},
-+ {36, "ENAMETOOLONG", "file name too long"},
-+ {37, "ENOLCK", "no locks available"},
-+ {38, "ENOSYS", "function not implemented"},
-+ {39, "ENOTEMPTY", "directory not empty"},
-+ {40, "ELOOP", "too many levels of symbolic links"},
-+ {42, "ENOMSG", "no message of desired type"},
-+ {43, "EIDRM", "identifier removed"},
-+ {44, "ECHRNG", "channel number out of range"},
-+ {45, "EL2NSYNC", "level 2 not synchronized"},
-+ {46, "EL3HLT", "level 3 halted"},
-+ {47, "EL3RST", "level 3 reset"},
-+ {48, "ELNRNG", "link number out of range"},
-+ {49, "EUNATCH", "protocol driver not attached"},
-+ {50, "ENOCSI", "no CSI structure available"},
-+ {51, "EL2HLT", "level 2 halted"},
-+ {52, "EBADE", "invalid exchange"},
-+ {53, "EBADR", "invalid request descriptor"},
-+ {54, "EXFULL", "exchange full"},
-+ {55, "ENOANO", "no anode"},
-+ {56, "EBADRQC", "invalid request code"},
-+ {57, "EBADSLT", "invalid slot"},
-+ {59, "EBFONT", "bad font file format"},
-+ {60, "ENOSTR", "device not a stream"},
-+ {61, "ENODATA", "no data available"},
-+ {62, "ETIME", "timer expired"},
-+ {63, "ENOSR", "out of streams resources"},
-+ {64, "ENONET", "machine is not on the network"},
-+ {65, "ENOPKG", "package not installed"},
-+ {66, "EREMOTE", "object is remote"},
-+ {67, "ENOLINK", "link has been severed"},
-+ {68, "EADV", "advertise error"},
-+ {69, "ESRMNT", "srmount error"},
-+ {70, "ECOMM", "communication error on send"},
-+ {71, "EPROTO", "protocol error"},
-+ {72, "EMULTIHOP", "multihop attempted"},
-+ {73, "EDOTDOT", "RFS specific error"},
-+ {74, "EBADMSG", "bad message"},
-+ {75, "EOVERFLOW", "value too large for defined data type"},
-+ {76, "ENOTUNIQ", "name not unique on network"},
-+ {77, "EBADFD", "file descriptor in bad state"},
-+ {78, "EREMCHG", "remote address changed"},
-+ {79, "ELIBACC", "can not access a needed shared library"},
-+ {80, "ELIBBAD", "accessing a corrupted shared library"},
-+ {81, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
-+ {83, "ELIBEXEC", "cannot exec a shared library directly"},
-+ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
-+ {85, "ERESTART", "interrupted system call should be restarted"},
-+ {86, "ESTRPIPE", "streams pipe error"},
-+ {87, "EUSERS", "too many users"},
-+ {88, "ENOTSOCK", "socket operation on non-socket"},
-+ {89, "EDESTADDRREQ", "destination address required"},
-+ {90, "EMSGSIZE", "message too long"},
-+ {91, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {92, "ENOPROTOOPT", "protocol not available"},
-+ {93, "EPROTONOSUPPORT", "protocol not supported"},
-+ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {95, "ENOTSUP", "operation not supported"},
-+ {96, "EPFNOSUPPORT", "protocol family not supported"},
-+ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
-+ {98, "EADDRINUSE", "address already in use"},
-+ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {100, "ENETDOWN", "network is down"},
-+ {101, "ENETUNREACH", "network is unreachable"},
-+ {102, "ENETRESET", "network dropped connection on reset"},
-+ {103, "ECONNABORTED", "software caused connection abort"},
-+ {104, "ECONNRESET", "connection reset by peer"},
-+ {105, "ENOBUFS", "no buffer space available"},
-+ {106, "EISCONN", "transport endpoint is already connected"},
-+ {107, "ENOTCONN", "transport endpoint is not connected"},
-+ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
-+ {109, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {110, "ETIMEDOUT", "connection timed out"},
-+ {111, "ECONNREFUSED", "connection refused"},
-+ {112, "EHOSTDOWN", "host is down"},
-+ {113, "EHOSTUNREACH", "no route to host"},
-+ {114, "EALREADY", "operation already in progress"},
-+ {115, "EINPROGRESS", "operation now in progress"},
-+ {116, "ESTALE", "stale file handle"},
-+ {117, "EUCLEAN", "structure needs cleaning"},
-+ {118, "ENOTNAM", "not a XENIX named type file"},
-+ {119, "ENAVAIL", "no XENIX semaphores available"},
-+ {120, "EISNAM", "is a named type file"},
-+ {121, "EREMOTEIO", "remote I/O error"},
-+ {122, "EDQUOT", "disk quota exceeded"},
-+ {123, "ENOMEDIUM", "no medium found"},
-+ {124, "EMEDIUMTYPE", "wrong medium type"},
-+ {125, "ECANCELED", "operation canceled"},
-+ {126, "ENOKEY", "required key not available"},
-+ {127, "EKEYEXPIRED", "key has expired"},
-+ {128, "EKEYREVOKED", "key has been revoked"},
-+ {129, "EKEYREJECTED", "key was rejected by service"},
-+ {130, "EOWNERDEAD", "owner died"},
-+ {131, "ENOTRECOVERABLE", "state not recoverable"},
-+ {132, "ERFKILL", "operation not possible due to RF-kill"},
-+ {133, "EHWPOISON", "memory page has hardware error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/breakpoint trap",
-- 6: "aborted",
-- 7: "bus error",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "user defined signal 1",
-- 11: "segmentation fault",
-- 12: "user defined signal 2",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "stack fault",
-- 17: "child exited",
-- 18: "continued",
-- 19: "stopped (signal)",
-- 20: "stopped",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "urgent I/O condition",
-- 24: "CPU time limit exceeded",
-- 25: "file size limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window changed",
-- 29: "I/O possible",
-- 30: "power failure",
-- 31: "bad system call",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/breakpoint trap"},
-+ {6, "SIGABRT", "aborted"},
-+ {7, "SIGBUS", "bus error"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGUSR1", "user defined signal 1"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGUSR2", "user defined signal 2"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGSTKFLT", "stack fault"},
-+ {17, "SIGCHLD", "child exited"},
-+ {18, "SIGCONT", "continued"},
-+ {19, "SIGSTOP", "stopped (signal)"},
-+ {20, "SIGTSTP", "stopped"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGURG", "urgent I/O condition"},
-+ {24, "SIGXCPU", "CPU time limit exceeded"},
-+ {25, "SIGXFSZ", "file size limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window changed"},
-+ {29, "SIGIO", "I/O possible"},
-+ {30, "SIGPWR", "power failure"},
-+ {31, "SIGSYS", "bad system call"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
-index 900f568a..4826bd70 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
-@@ -3,7 +3,7 @@
-
- // +build mips,linux
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
-
- package unix
-@@ -11,1873 +11,489 @@ package unix
- import "syscall"
-
- const (
-- AF_ALG = 0x26
-- AF_APPLETALK = 0x5
-- AF_ASH = 0x12
-- AF_ATMPVC = 0x8
-- AF_ATMSVC = 0x14
-- AF_AX25 = 0x3
-- AF_BLUETOOTH = 0x1f
-- AF_BRIDGE = 0x7
-- AF_CAIF = 0x25
-- AF_CAN = 0x1d
-- AF_DECnet = 0xc
-- AF_ECONET = 0x13
-- AF_FILE = 0x1
-- AF_IB = 0x1b
-- AF_IEEE802154 = 0x24
-- AF_INET = 0x2
-- AF_INET6 = 0xa
-- AF_IPX = 0x4
-- AF_IRDA = 0x17
-- AF_ISDN = 0x22
-- AF_IUCV = 0x20
-- AF_KCM = 0x29
-- AF_KEY = 0xf
-- AF_LLC = 0x1a
-- AF_LOCAL = 0x1
-- AF_MAX = 0x2b
-- AF_MPLS = 0x1c
-- AF_NETBEUI = 0xd
-- AF_NETLINK = 0x10
-- AF_NETROM = 0x6
-- AF_NFC = 0x27
-- AF_PACKET = 0x11
-- AF_PHONET = 0x23
-- AF_PPPOX = 0x18
-- AF_QIPCRTR = 0x2a
-- AF_RDS = 0x15
-- AF_ROSE = 0xb
-- AF_ROUTE = 0x10
-- AF_RXRPC = 0x21
-- AF_SECURITY = 0xe
-- AF_SNA = 0x16
-- AF_TIPC = 0x1e
-- AF_UNIX = 0x1
-- AF_UNSPEC = 0x0
-- AF_VSOCK = 0x28
-- AF_WANPIPE = 0x19
-- AF_X25 = 0x9
-- ALG_OP_DECRYPT = 0x0
-- ALG_OP_ENCRYPT = 0x1
-- ALG_SET_AEAD_ASSOCLEN = 0x4
-- ALG_SET_AEAD_AUTHSIZE = 0x5
-- ALG_SET_IV = 0x2
-- ALG_SET_KEY = 0x1
-- ALG_SET_OP = 0x3
-- ARPHRD_6LOWPAN = 0x339
-- ARPHRD_ADAPT = 0x108
-- ARPHRD_APPLETLK = 0x8
-- ARPHRD_ARCNET = 0x7
-- ARPHRD_ASH = 0x30d
-- ARPHRD_ATM = 0x13
-- ARPHRD_AX25 = 0x3
-- ARPHRD_BIF = 0x307
-- ARPHRD_CAIF = 0x336
-- ARPHRD_CAN = 0x118
-- ARPHRD_CHAOS = 0x5
-- ARPHRD_CISCO = 0x201
-- ARPHRD_CSLIP = 0x101
-- ARPHRD_CSLIP6 = 0x103
-- ARPHRD_DDCMP = 0x205
-- ARPHRD_DLCI = 0xf
-- ARPHRD_ECONET = 0x30e
-- ARPHRD_EETHER = 0x2
-- ARPHRD_ETHER = 0x1
-- ARPHRD_EUI64 = 0x1b
-- ARPHRD_FCAL = 0x311
-- ARPHRD_FCFABRIC = 0x313
-- ARPHRD_FCPL = 0x312
-- ARPHRD_FCPP = 0x310
-- ARPHRD_FDDI = 0x306
-- ARPHRD_FRAD = 0x302
-- ARPHRD_HDLC = 0x201
-- ARPHRD_HIPPI = 0x30c
-- ARPHRD_HWX25 = 0x110
-- ARPHRD_IEEE1394 = 0x18
-- ARPHRD_IEEE802 = 0x6
-- ARPHRD_IEEE80211 = 0x321
-- ARPHRD_IEEE80211_PRISM = 0x322
-- ARPHRD_IEEE80211_RADIOTAP = 0x323
-- ARPHRD_IEEE802154 = 0x324
-- ARPHRD_IEEE802154_MONITOR = 0x325
-- ARPHRD_IEEE802_TR = 0x320
-- ARPHRD_INFINIBAND = 0x20
-- ARPHRD_IP6GRE = 0x337
-- ARPHRD_IPDDP = 0x309
-- ARPHRD_IPGRE = 0x30a
-- ARPHRD_IRDA = 0x30f
-- ARPHRD_LAPB = 0x204
-- ARPHRD_LOCALTLK = 0x305
-- ARPHRD_LOOPBACK = 0x304
-- ARPHRD_METRICOM = 0x17
-- ARPHRD_NETLINK = 0x338
-- ARPHRD_NETROM = 0x0
-- ARPHRD_NONE = 0xfffe
-- ARPHRD_PHONET = 0x334
-- ARPHRD_PHONET_PIPE = 0x335
-- ARPHRD_PIMREG = 0x30b
-- ARPHRD_PPP = 0x200
-- ARPHRD_PRONET = 0x4
-- ARPHRD_RAWHDLC = 0x206
-- ARPHRD_ROSE = 0x10e
-- ARPHRD_RSRVD = 0x104
-- ARPHRD_SIT = 0x308
-- ARPHRD_SKIP = 0x303
-- ARPHRD_SLIP = 0x100
-- ARPHRD_SLIP6 = 0x102
-- ARPHRD_TUNNEL = 0x300
-- ARPHRD_TUNNEL6 = 0x301
-- ARPHRD_VOID = 0xffff
-- ARPHRD_X25 = 0x10f
-- B0 = 0x0
-- B1000000 = 0x1008
-- B110 = 0x3
-- B115200 = 0x1002
-- B1152000 = 0x1009
-- B1200 = 0x9
-- B134 = 0x4
-- B150 = 0x5
-- B1500000 = 0x100a
-- B1800 = 0xa
-- B19200 = 0xe
-- B200 = 0x6
-- B2000000 = 0x100b
-- B230400 = 0x1003
-- B2400 = 0xb
-- B2500000 = 0x100c
-- B300 = 0x7
-- B3000000 = 0x100d
-- B3500000 = 0x100e
-- B38400 = 0xf
-- B4000000 = 0x100f
-- B460800 = 0x1004
-- B4800 = 0xc
-- B50 = 0x1
-- B500000 = 0x1005
-- B57600 = 0x1001
-- B576000 = 0x1006
-- B600 = 0x8
-- B75 = 0x2
-- B921600 = 0x1007
-- B9600 = 0xd
-- BLKBSZGET = 0x40041270
-- BLKBSZSET = 0x80041271
-- BLKFLSBUF = 0x20001261
-- BLKFRAGET = 0x20001265
-- BLKFRASET = 0x20001264
-- BLKGETSIZE = 0x20001260
-- BLKGETSIZE64 = 0x40041272
-- BLKPBSZGET = 0x2000127b
-- BLKRAGET = 0x20001263
-- BLKRASET = 0x20001262
-- BLKROGET = 0x2000125e
-- BLKROSET = 0x2000125d
-- BLKRRPART = 0x2000125f
-- BLKSECTGET = 0x20001267
-- BLKSECTSET = 0x20001266
-- BLKSSZGET = 0x20001268
-- BOTHER = 0x1000
-- BPF_A = 0x10
-- BPF_ABS = 0x20
-- BPF_ADD = 0x0
-- BPF_ALU = 0x4
-- BPF_AND = 0x50
-- BPF_B = 0x10
-- BPF_DIV = 0x30
-- BPF_H = 0x8
-- BPF_IMM = 0x0
-- BPF_IND = 0x40
-- BPF_JA = 0x0
-- BPF_JEQ = 0x10
-- BPF_JGE = 0x30
-- BPF_JGT = 0x20
-- BPF_JMP = 0x5
-- BPF_JSET = 0x40
-- BPF_K = 0x0
-- BPF_LD = 0x0
-- BPF_LDX = 0x1
-- BPF_LEN = 0x80
-- BPF_LL_OFF = -0x200000
-- BPF_LSH = 0x60
-- BPF_MAJOR_VERSION = 0x1
-- BPF_MAXINSNS = 0x1000
-- BPF_MEM = 0x60
-- BPF_MEMWORDS = 0x10
-- BPF_MINOR_VERSION = 0x1
-- BPF_MISC = 0x7
-- BPF_MOD = 0x90
-- BPF_MSH = 0xa0
-- BPF_MUL = 0x20
-- BPF_NEG = 0x80
-- BPF_NET_OFF = -0x100000
-- BPF_OR = 0x40
-- BPF_RET = 0x6
-- BPF_RSH = 0x70
-- BPF_ST = 0x2
-- BPF_STX = 0x3
-- BPF_SUB = 0x10
-- BPF_TAX = 0x0
-- BPF_TXA = 0x80
-- BPF_W = 0x0
-- BPF_X = 0x8
-- BPF_XOR = 0xa0
-- BRKINT = 0x2
-- BS0 = 0x0
-- BS1 = 0x2000
-- BSDLY = 0x2000
-- CAN_BCM = 0x2
-- CAN_EFF_FLAG = 0x80000000
-- CAN_EFF_ID_BITS = 0x1d
-- CAN_EFF_MASK = 0x1fffffff
-- CAN_ERR_FLAG = 0x20000000
-- CAN_ERR_MASK = 0x1fffffff
-- CAN_INV_FILTER = 0x20000000
-- CAN_ISOTP = 0x6
-- CAN_MAX_DLC = 0x8
-- CAN_MAX_DLEN = 0x8
-- CAN_MCNET = 0x5
-- CAN_MTU = 0x10
-- CAN_NPROTO = 0x7
-- CAN_RAW = 0x1
-- CAN_RAW_FILTER_MAX = 0x200
-- CAN_RTR_FLAG = 0x40000000
-- CAN_SFF_ID_BITS = 0xb
-- CAN_SFF_MASK = 0x7ff
-- CAN_TP16 = 0x3
-- CAN_TP20 = 0x4
-- CBAUD = 0x100f
-- CBAUDEX = 0x1000
-- CFLUSH = 0xf
-- CIBAUD = 0x100f0000
-- CLOCAL = 0x800
-- CLOCK_BOOTTIME = 0x7
-- CLOCK_BOOTTIME_ALARM = 0x9
-- CLOCK_DEFAULT = 0x0
-- CLOCK_EXT = 0x1
-- CLOCK_INT = 0x2
-- CLOCK_MONOTONIC = 0x1
-- CLOCK_MONOTONIC_COARSE = 0x6
-- CLOCK_MONOTONIC_RAW = 0x4
-- CLOCK_PROCESS_CPUTIME_ID = 0x2
-- CLOCK_REALTIME = 0x0
-- CLOCK_REALTIME_ALARM = 0x8
-- CLOCK_REALTIME_COARSE = 0x5
-- CLOCK_TAI = 0xb
-- CLOCK_THREAD_CPUTIME_ID = 0x3
-- CLOCK_TXFROMRX = 0x4
-- CLOCK_TXINT = 0x3
-- CLONE_CHILD_CLEARTID = 0x200000
-- CLONE_CHILD_SETTID = 0x1000000
-- CLONE_DETACHED = 0x400000
-- CLONE_FILES = 0x400
-- CLONE_FS = 0x200
-- CLONE_IO = 0x80000000
-- CLONE_NEWCGROUP = 0x2000000
-- CLONE_NEWIPC = 0x8000000
-- CLONE_NEWNET = 0x40000000
-- CLONE_NEWNS = 0x20000
-- CLONE_NEWPID = 0x20000000
-- CLONE_NEWUSER = 0x10000000
-- CLONE_NEWUTS = 0x4000000
-- CLONE_PARENT = 0x8000
-- CLONE_PARENT_SETTID = 0x100000
-- CLONE_PTRACE = 0x2000
-- CLONE_SETTLS = 0x80000
-- CLONE_SIGHAND = 0x800
-- CLONE_SYSVSEM = 0x40000
-- CLONE_THREAD = 0x10000
-- CLONE_UNTRACED = 0x800000
-- CLONE_VFORK = 0x4000
-- CLONE_VM = 0x100
-- CMSPAR = 0x40000000
-- CR0 = 0x0
-- CR1 = 0x200
-- CR2 = 0x400
-- CR3 = 0x600
-- CRDLY = 0x600
-- CREAD = 0x80
-- CRTSCTS = 0x80000000
-- CS5 = 0x0
-- CS6 = 0x10
-- CS7 = 0x20
-- CS8 = 0x30
-- CSIGNAL = 0xff
-- CSIZE = 0x30
-- CSTART = 0x11
-- CSTATUS = 0x0
-- CSTOP = 0x13
-- CSTOPB = 0x40
-- CSUSP = 0x1a
-- DT_BLK = 0x6
-- DT_CHR = 0x2
-- DT_DIR = 0x4
-- DT_FIFO = 0x1
-- DT_LNK = 0xa
-- DT_REG = 0x8
-- DT_SOCK = 0xc
-- DT_UNKNOWN = 0x0
-- DT_WHT = 0xe
-- ECHO = 0x8
-- ECHOCTL = 0x200
-- ECHOE = 0x10
-- ECHOK = 0x20
-- ECHOKE = 0x800
-- ECHONL = 0x40
-- ECHOPRT = 0x400
-- EFD_CLOEXEC = 0x80000
-- EFD_NONBLOCK = 0x80
-- EFD_SEMAPHORE = 0x1
-- ENCODING_DEFAULT = 0x0
-- ENCODING_FM_MARK = 0x3
-- ENCODING_FM_SPACE = 0x4
-- ENCODING_MANCHESTER = 0x5
-- ENCODING_NRZ = 0x1
-- ENCODING_NRZI = 0x2
-- EPOLLERR = 0x8
-- EPOLLET = 0x80000000
-- EPOLLEXCLUSIVE = 0x10000000
-- EPOLLHUP = 0x10
-- EPOLLIN = 0x1
-- EPOLLMSG = 0x400
-- EPOLLONESHOT = 0x40000000
-- EPOLLOUT = 0x4
-- EPOLLPRI = 0x2
-- EPOLLRDBAND = 0x80
-- EPOLLRDHUP = 0x2000
-- EPOLLRDNORM = 0x40
-- EPOLLWAKEUP = 0x20000000
-- EPOLLWRBAND = 0x200
-- EPOLLWRNORM = 0x100
-- EPOLL_CLOEXEC = 0x80000
-- EPOLL_CTL_ADD = 0x1
-- EPOLL_CTL_DEL = 0x2
-- EPOLL_CTL_MOD = 0x3
-- ETH_P_1588 = 0x88f7
-- ETH_P_8021AD = 0x88a8
-- ETH_P_8021AH = 0x88e7
-- ETH_P_8021Q = 0x8100
-- ETH_P_80221 = 0x8917
-- ETH_P_802_2 = 0x4
-- ETH_P_802_3 = 0x1
-- ETH_P_802_3_MIN = 0x600
-- ETH_P_802_EX1 = 0x88b5
-- ETH_P_AARP = 0x80f3
-- ETH_P_AF_IUCV = 0xfbfb
-- ETH_P_ALL = 0x3
-- ETH_P_AOE = 0x88a2
-- ETH_P_ARCNET = 0x1a
-- ETH_P_ARP = 0x806
-- ETH_P_ATALK = 0x809b
-- ETH_P_ATMFATE = 0x8884
-- ETH_P_ATMMPOA = 0x884c
-- ETH_P_AX25 = 0x2
-- ETH_P_BATMAN = 0x4305
-- ETH_P_BPQ = 0x8ff
-- ETH_P_CAIF = 0xf7
-- ETH_P_CAN = 0xc
-- ETH_P_CANFD = 0xd
-- ETH_P_CONTROL = 0x16
-- ETH_P_CUST = 0x6006
-- ETH_P_DDCMP = 0x6
-- ETH_P_DEC = 0x6000
-- ETH_P_DIAG = 0x6005
-- ETH_P_DNA_DL = 0x6001
-- ETH_P_DNA_RC = 0x6002
-- ETH_P_DNA_RT = 0x6003
-- ETH_P_DSA = 0x1b
-- ETH_P_ECONET = 0x18
-- ETH_P_EDSA = 0xdada
-- ETH_P_FCOE = 0x8906
-- ETH_P_FIP = 0x8914
-- ETH_P_HDLC = 0x19
-- ETH_P_HSR = 0x892f
-- ETH_P_IEEE802154 = 0xf6
-- ETH_P_IEEEPUP = 0xa00
-- ETH_P_IEEEPUPAT = 0xa01
-- ETH_P_IP = 0x800
-- ETH_P_IPV6 = 0x86dd
-- ETH_P_IPX = 0x8137
-- ETH_P_IRDA = 0x17
-- ETH_P_LAT = 0x6004
-- ETH_P_LINK_CTL = 0x886c
-- ETH_P_LOCALTALK = 0x9
-- ETH_P_LOOP = 0x60
-- ETH_P_LOOPBACK = 0x9000
-- ETH_P_MACSEC = 0x88e5
-- ETH_P_MOBITEX = 0x15
-- ETH_P_MPLS_MC = 0x8848
-- ETH_P_MPLS_UC = 0x8847
-- ETH_P_MVRP = 0x88f5
-- ETH_P_NCSI = 0x88f8
-- ETH_P_PAE = 0x888e
-- ETH_P_PAUSE = 0x8808
-- ETH_P_PHONET = 0xf5
-- ETH_P_PPPTALK = 0x10
-- ETH_P_PPP_DISC = 0x8863
-- ETH_P_PPP_MP = 0x8
-- ETH_P_PPP_SES = 0x8864
-- ETH_P_PRP = 0x88fb
-- ETH_P_PUP = 0x200
-- ETH_P_PUPAT = 0x201
-- ETH_P_QINQ1 = 0x9100
-- ETH_P_QINQ2 = 0x9200
-- ETH_P_QINQ3 = 0x9300
-- ETH_P_RARP = 0x8035
-- ETH_P_SCA = 0x6007
-- ETH_P_SLOW = 0x8809
-- ETH_P_SNAP = 0x5
-- ETH_P_TDLS = 0x890d
-- ETH_P_TEB = 0x6558
-- ETH_P_TIPC = 0x88ca
-- ETH_P_TRAILER = 0x1c
-- ETH_P_TR_802_2 = 0x11
-- ETH_P_TSN = 0x22f0
-- ETH_P_WAN_PPP = 0x7
-- ETH_P_WCCP = 0x883e
-- ETH_P_X25 = 0x805
-- ETH_P_XDSA = 0xf8
-- EXTA = 0xe
-- EXTB = 0xf
-- EXTPROC = 0x10000
-- FALLOC_FL_COLLAPSE_RANGE = 0x8
-- FALLOC_FL_INSERT_RANGE = 0x20
-- FALLOC_FL_KEEP_SIZE = 0x1
-- FALLOC_FL_NO_HIDE_STALE = 0x4
-- FALLOC_FL_PUNCH_HOLE = 0x2
-- FALLOC_FL_UNSHARE_RANGE = 0x40
-- FALLOC_FL_ZERO_RANGE = 0x10
-- FD_CLOEXEC = 0x1
-- FD_SETSIZE = 0x400
-- FF0 = 0x0
-- FF1 = 0x8000
-- FFDLY = 0x8000
-- FLUSHO = 0x2000
-- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
-- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
-- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
-- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
-- FS_ENCRYPTION_MODE_INVALID = 0x0
-- FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
-- FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
-- FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
-- FS_KEY_DESCRIPTOR_SIZE = 0x8
-- FS_KEY_DESC_PREFIX = "fscrypt:"
-- FS_KEY_DESC_PREFIX_SIZE = 0x8
-- FS_MAX_KEY_SIZE = 0x40
-- FS_POLICY_FLAGS_PAD_16 = 0x2
-- FS_POLICY_FLAGS_PAD_32 = 0x3
-- FS_POLICY_FLAGS_PAD_4 = 0x0
-- FS_POLICY_FLAGS_PAD_8 = 0x1
-- FS_POLICY_FLAGS_PAD_MASK = 0x3
-- FS_POLICY_FLAGS_VALID = 0x3
-- F_DUPFD = 0x0
-- F_DUPFD_CLOEXEC = 0x406
-- F_EXLCK = 0x4
-- F_GETFD = 0x1
-- F_GETFL = 0x3
-- F_GETLEASE = 0x401
-- F_GETLK = 0x21
-- F_GETLK64 = 0x21
-- F_GETOWN = 0x17
-- F_GETOWN_EX = 0x10
-- F_GETPIPE_SZ = 0x408
-- F_GETSIG = 0xb
-- F_LOCK = 0x1
-- F_NOTIFY = 0x402
-- F_OFD_GETLK = 0x24
-- F_OFD_SETLK = 0x25
-- F_OFD_SETLKW = 0x26
-- F_OK = 0x0
-- F_RDLCK = 0x0
-- F_SETFD = 0x2
-- F_SETFL = 0x4
-- F_SETLEASE = 0x400
-- F_SETLK = 0x22
-- F_SETLK64 = 0x22
-- F_SETLKW = 0x23
-- F_SETLKW64 = 0x23
-- F_SETOWN = 0x18
-- F_SETOWN_EX = 0xf
-- F_SETPIPE_SZ = 0x407
-- F_SETSIG = 0xa
-- F_SHLCK = 0x8
-- F_TEST = 0x3
-- F_TLOCK = 0x2
-- F_ULOCK = 0x0
-- F_UNLCK = 0x2
-- F_WRLCK = 0x1
-- GENL_ADMIN_PERM = 0x1
-- GENL_CMD_CAP_DO = 0x2
-- GENL_CMD_CAP_DUMP = 0x4
-- GENL_CMD_CAP_HASPOL = 0x8
-- GENL_HDRLEN = 0x4
-- GENL_ID_CTRL = 0x10
-- GENL_ID_PMCRAID = 0x12
-- GENL_ID_VFS_DQUOT = 0x11
-- GENL_MAX_ID = 0x3ff
-- GENL_MIN_ID = 0x10
-- GENL_NAMSIZ = 0x10
-- GENL_START_ALLOC = 0x13
-- GENL_UNS_ADMIN_PERM = 0x10
-- GRND_NONBLOCK = 0x1
-- GRND_RANDOM = 0x2
-- HUPCL = 0x400
-- IBSHIFT = 0x10
-- ICANON = 0x2
-- ICMPV6_FILTER = 0x1
-- ICRNL = 0x100
-- IEXTEN = 0x100
-- IFA_F_DADFAILED = 0x8
-- IFA_F_DEPRECATED = 0x20
-- IFA_F_HOMEADDRESS = 0x10
-- IFA_F_MANAGETEMPADDR = 0x100
-- IFA_F_MCAUTOJOIN = 0x400
-- IFA_F_NODAD = 0x2
-- IFA_F_NOPREFIXROUTE = 0x200
-- IFA_F_OPTIMISTIC = 0x4
-- IFA_F_PERMANENT = 0x80
-- IFA_F_SECONDARY = 0x1
-- IFA_F_STABLE_PRIVACY = 0x800
-- IFA_F_TEMPORARY = 0x1
-- IFA_F_TENTATIVE = 0x40
-- IFA_MAX = 0x8
-- IFF_ALLMULTI = 0x200
-- IFF_ATTACH_QUEUE = 0x200
-- IFF_AUTOMEDIA = 0x4000
-- IFF_BROADCAST = 0x2
-- IFF_DEBUG = 0x4
-- IFF_DETACH_QUEUE = 0x400
-- IFF_DORMANT = 0x20000
-- IFF_DYNAMIC = 0x8000
-- IFF_ECHO = 0x40000
-- IFF_LOOPBACK = 0x8
-- IFF_LOWER_UP = 0x10000
-- IFF_MASTER = 0x400
-- IFF_MULTICAST = 0x1000
-- IFF_MULTI_QUEUE = 0x100
-- IFF_NOARP = 0x80
-- IFF_NOFILTER = 0x1000
-- IFF_NOTRAILERS = 0x20
-- IFF_NO_PI = 0x1000
-- IFF_ONE_QUEUE = 0x2000
-- IFF_PERSIST = 0x800
-- IFF_POINTOPOINT = 0x10
-- IFF_PORTSEL = 0x2000
-- IFF_PROMISC = 0x100
-- IFF_RUNNING = 0x40
-- IFF_SLAVE = 0x800
-- IFF_TAP = 0x2
-- IFF_TUN = 0x1
-- IFF_TUN_EXCL = 0x8000
-- IFF_UP = 0x1
-- IFF_VNET_HDR = 0x4000
-- IFF_VOLATILE = 0x70c5a
-- IFNAMSIZ = 0x10
-- IGNBRK = 0x1
-- IGNCR = 0x80
-- IGNPAR = 0x4
-- IMAXBEL = 0x2000
-- INLCR = 0x40
-- INPCK = 0x10
-- IN_ACCESS = 0x1
-- IN_ALL_EVENTS = 0xfff
-- IN_ATTRIB = 0x4
-- IN_CLASSA_HOST = 0xffffff
-- IN_CLASSA_MAX = 0x80
-- IN_CLASSA_NET = 0xff000000
-- IN_CLASSA_NSHIFT = 0x18
-- IN_CLASSB_HOST = 0xffff
-- IN_CLASSB_MAX = 0x10000
-- IN_CLASSB_NET = 0xffff0000
-- IN_CLASSB_NSHIFT = 0x10
-- IN_CLASSC_HOST = 0xff
-- IN_CLASSC_NET = 0xffffff00
-- IN_CLASSC_NSHIFT = 0x8
-- IN_CLOEXEC = 0x80000
-- IN_CLOSE = 0x18
-- IN_CLOSE_NOWRITE = 0x10
-- IN_CLOSE_WRITE = 0x8
-- IN_CREATE = 0x100
-- IN_DELETE = 0x200
-- IN_DELETE_SELF = 0x400
-- IN_DONT_FOLLOW = 0x2000000
-- IN_EXCL_UNLINK = 0x4000000
-- IN_IGNORED = 0x8000
-- IN_ISDIR = 0x40000000
-- IN_LOOPBACKNET = 0x7f
-- IN_MASK_ADD = 0x20000000
-- IN_MODIFY = 0x2
-- IN_MOVE = 0xc0
-- IN_MOVED_FROM = 0x40
-- IN_MOVED_TO = 0x80
-- IN_MOVE_SELF = 0x800
-- IN_NONBLOCK = 0x80
-- IN_ONESHOT = 0x80000000
-- IN_ONLYDIR = 0x1000000
-- IN_OPEN = 0x20
-- IN_Q_OVERFLOW = 0x4000
-- IN_UNMOUNT = 0x2000
-- IPPROTO_AH = 0x33
-- IPPROTO_BEETPH = 0x5e
-- IPPROTO_COMP = 0x6c
-- IPPROTO_DCCP = 0x21
-- IPPROTO_DSTOPTS = 0x3c
-- IPPROTO_EGP = 0x8
-- IPPROTO_ENCAP = 0x62
-- IPPROTO_ESP = 0x32
-- IPPROTO_FRAGMENT = 0x2c
-- IPPROTO_GRE = 0x2f
-- IPPROTO_HOPOPTS = 0x0
-- IPPROTO_ICMP = 0x1
-- IPPROTO_ICMPV6 = 0x3a
-- IPPROTO_IDP = 0x16
-- IPPROTO_IGMP = 0x2
-- IPPROTO_IP = 0x0
-- IPPROTO_IPIP = 0x4
-- IPPROTO_IPV6 = 0x29
-- IPPROTO_MH = 0x87
-- IPPROTO_MPLS = 0x89
-- IPPROTO_MTP = 0x5c
-- IPPROTO_NONE = 0x3b
-- IPPROTO_PIM = 0x67
-- IPPROTO_PUP = 0xc
-- IPPROTO_RAW = 0xff
-- IPPROTO_ROUTING = 0x2b
-- IPPROTO_RSVP = 0x2e
-- IPPROTO_SCTP = 0x84
-- IPPROTO_TCP = 0x6
-- IPPROTO_TP = 0x1d
-- IPPROTO_UDP = 0x11
-- IPPROTO_UDPLITE = 0x88
-- IPV6_2292DSTOPTS = 0x4
-- IPV6_2292HOPLIMIT = 0x8
-- IPV6_2292HOPOPTS = 0x3
-- IPV6_2292PKTINFO = 0x2
-- IPV6_2292PKTOPTIONS = 0x6
-- IPV6_2292RTHDR = 0x5
-- IPV6_ADDRFORM = 0x1
-- IPV6_ADD_MEMBERSHIP = 0x14
-- IPV6_AUTHHDR = 0xa
-- IPV6_CHECKSUM = 0x7
-- IPV6_DONTFRAG = 0x3e
-- IPV6_DROP_MEMBERSHIP = 0x15
-- IPV6_DSTOPTS = 0x3b
-- IPV6_HDRINCL = 0x24
-- IPV6_HOPLIMIT = 0x34
-- IPV6_HOPOPTS = 0x36
-- IPV6_IPSEC_POLICY = 0x22
-- IPV6_JOIN_ANYCAST = 0x1b
-- IPV6_JOIN_GROUP = 0x14
-- IPV6_LEAVE_ANYCAST = 0x1c
-- IPV6_LEAVE_GROUP = 0x15
-- IPV6_MTU = 0x18
-- IPV6_MTU_DISCOVER = 0x17
-- IPV6_MULTICAST_HOPS = 0x12
-- IPV6_MULTICAST_IF = 0x11
-- IPV6_MULTICAST_LOOP = 0x13
-- IPV6_NEXTHOP = 0x9
-- IPV6_PATHMTU = 0x3d
-- IPV6_PKTINFO = 0x32
-- IPV6_PMTUDISC_DO = 0x2
-- IPV6_PMTUDISC_DONT = 0x0
-- IPV6_PMTUDISC_INTERFACE = 0x4
-- IPV6_PMTUDISC_OMIT = 0x5
-- IPV6_PMTUDISC_PROBE = 0x3
-- IPV6_PMTUDISC_WANT = 0x1
-- IPV6_RECVDSTOPTS = 0x3a
-- IPV6_RECVERR = 0x19
-- IPV6_RECVHOPLIMIT = 0x33
-- IPV6_RECVHOPOPTS = 0x35
-- IPV6_RECVPATHMTU = 0x3c
-- IPV6_RECVPKTINFO = 0x31
-- IPV6_RECVRTHDR = 0x38
-- IPV6_RECVTCLASS = 0x42
-- IPV6_ROUTER_ALERT = 0x16
-- IPV6_RTHDR = 0x39
-- IPV6_RTHDRDSTOPTS = 0x37
-- IPV6_RTHDR_LOOSE = 0x0
-- IPV6_RTHDR_STRICT = 0x1
-- IPV6_RTHDR_TYPE_0 = 0x0
-- IPV6_RXDSTOPTS = 0x3b
-- IPV6_RXHOPOPTS = 0x36
-- IPV6_TCLASS = 0x43
-- IPV6_UNICAST_HOPS = 0x10
-- IPV6_V6ONLY = 0x1a
-- IPV6_XFRM_POLICY = 0x23
-- IP_ADD_MEMBERSHIP = 0x23
-- IP_ADD_SOURCE_MEMBERSHIP = 0x27
-- IP_BIND_ADDRESS_NO_PORT = 0x18
-- IP_BLOCK_SOURCE = 0x26
-- IP_CHECKSUM = 0x17
-- IP_DEFAULT_MULTICAST_LOOP = 0x1
-- IP_DEFAULT_MULTICAST_TTL = 0x1
-- IP_DF = 0x4000
-- IP_DROP_MEMBERSHIP = 0x24
-- IP_DROP_SOURCE_MEMBERSHIP = 0x28
-- IP_FREEBIND = 0xf
-- IP_HDRINCL = 0x3
-- IP_IPSEC_POLICY = 0x10
-- IP_MAXPACKET = 0xffff
-- IP_MAX_MEMBERSHIPS = 0x14
-- IP_MF = 0x2000
-- IP_MINTTL = 0x15
-- IP_MSFILTER = 0x29
-- IP_MSS = 0x240
-- IP_MTU = 0xe
-- IP_MTU_DISCOVER = 0xa
-- IP_MULTICAST_ALL = 0x31
-- IP_MULTICAST_IF = 0x20
-- IP_MULTICAST_LOOP = 0x22
-- IP_MULTICAST_TTL = 0x21
-- IP_NODEFRAG = 0x16
-- IP_OFFMASK = 0x1fff
-- IP_OPTIONS = 0x4
-- IP_ORIGDSTADDR = 0x14
-- IP_PASSSEC = 0x12
-- IP_PKTINFO = 0x8
-- IP_PKTOPTIONS = 0x9
-- IP_PMTUDISC = 0xa
-- IP_PMTUDISC_DO = 0x2
-- IP_PMTUDISC_DONT = 0x0
-- IP_PMTUDISC_INTERFACE = 0x4
-- IP_PMTUDISC_OMIT = 0x5
-- IP_PMTUDISC_PROBE = 0x3
-- IP_PMTUDISC_WANT = 0x1
-- IP_RECVERR = 0xb
-- IP_RECVOPTS = 0x6
-- IP_RECVORIGDSTADDR = 0x14
-- IP_RECVRETOPTS = 0x7
-- IP_RECVTOS = 0xd
-- IP_RECVTTL = 0xc
-- IP_RETOPTS = 0x7
-- IP_RF = 0x8000
-- IP_ROUTER_ALERT = 0x5
-- IP_TOS = 0x1
-- IP_TRANSPARENT = 0x13
-- IP_TTL = 0x2
-- IP_UNBLOCK_SOURCE = 0x25
-- IP_UNICAST_IF = 0x32
-- IP_XFRM_POLICY = 0x11
-- ISIG = 0x1
-- ISTRIP = 0x20
-- IUCLC = 0x200
-- IUTF8 = 0x4000
-- IXANY = 0x800
-- IXOFF = 0x1000
-- IXON = 0x400
-- KEYCTL_ASSUME_AUTHORITY = 0x10
-- KEYCTL_CHOWN = 0x4
-- KEYCTL_CLEAR = 0x7
-- KEYCTL_DESCRIBE = 0x6
-- KEYCTL_DH_COMPUTE = 0x17
-- KEYCTL_GET_KEYRING_ID = 0x0
-- KEYCTL_GET_PERSISTENT = 0x16
-- KEYCTL_GET_SECURITY = 0x11
-- KEYCTL_INSTANTIATE = 0xc
-- KEYCTL_INSTANTIATE_IOV = 0x14
-- KEYCTL_INVALIDATE = 0x15
-- KEYCTL_JOIN_SESSION_KEYRING = 0x1
-- KEYCTL_LINK = 0x8
-- KEYCTL_NEGATE = 0xd
-- KEYCTL_READ = 0xb
-- KEYCTL_REJECT = 0x13
-- KEYCTL_REVOKE = 0x3
-- KEYCTL_SEARCH = 0xa
-- KEYCTL_SESSION_TO_PARENT = 0x12
-- KEYCTL_SETPERM = 0x5
-- KEYCTL_SET_REQKEY_KEYRING = 0xe
-- KEYCTL_SET_TIMEOUT = 0xf
-- KEYCTL_UNLINK = 0x9
-- KEYCTL_UPDATE = 0x2
-- KEY_REQKEY_DEFL_DEFAULT = 0x0
-- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
-- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
-- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
-- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
-- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
-- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
-- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
-- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
-- KEY_SPEC_GROUP_KEYRING = -0x6
-- KEY_SPEC_PROCESS_KEYRING = -0x2
-- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
-- KEY_SPEC_REQUESTOR_KEYRING = -0x8
-- KEY_SPEC_SESSION_KEYRING = -0x3
-- KEY_SPEC_THREAD_KEYRING = -0x1
-- KEY_SPEC_USER_KEYRING = -0x4
-- KEY_SPEC_USER_SESSION_KEYRING = -0x5
-- LINUX_REBOOT_CMD_CAD_OFF = 0x0
-- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
-- LINUX_REBOOT_CMD_HALT = 0xcdef0123
-- LINUX_REBOOT_CMD_KEXEC = 0x45584543
-- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
-- LINUX_REBOOT_CMD_RESTART = 0x1234567
-- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
-- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
-- LINUX_REBOOT_MAGIC1 = 0xfee1dead
-- LINUX_REBOOT_MAGIC2 = 0x28121969
-- LOCK_EX = 0x2
-- LOCK_NB = 0x4
-- LOCK_SH = 0x1
-- LOCK_UN = 0x8
-- MADV_DODUMP = 0x11
-- MADV_DOFORK = 0xb
-- MADV_DONTDUMP = 0x10
-- MADV_DONTFORK = 0xa
-- MADV_DONTNEED = 0x4
-- MADV_FREE = 0x8
-- MADV_HUGEPAGE = 0xe
-- MADV_HWPOISON = 0x64
-- MADV_MERGEABLE = 0xc
-- MADV_NOHUGEPAGE = 0xf
-- MADV_NORMAL = 0x0
-- MADV_RANDOM = 0x1
-- MADV_REMOVE = 0x9
-- MADV_SEQUENTIAL = 0x2
-- MADV_UNMERGEABLE = 0xd
-- MADV_WILLNEED = 0x3
-- MAP_ANON = 0x800
-- MAP_ANONYMOUS = 0x800
-- MAP_DENYWRITE = 0x2000
-- MAP_EXECUTABLE = 0x4000
-- MAP_FILE = 0x0
-- MAP_FIXED = 0x10
-- MAP_GROWSDOWN = 0x1000
-- MAP_HUGETLB = 0x80000
-- MAP_HUGE_MASK = 0x3f
-- MAP_HUGE_SHIFT = 0x1a
-- MAP_LOCKED = 0x8000
-- MAP_NONBLOCK = 0x20000
-- MAP_NORESERVE = 0x400
-- MAP_POPULATE = 0x10000
-- MAP_PRIVATE = 0x2
-- MAP_RENAME = 0x800
-- MAP_SHARED = 0x1
-- MAP_STACK = 0x40000
-- MAP_TYPE = 0xf
-- MCL_CURRENT = 0x1
-- MCL_FUTURE = 0x2
-- MCL_ONFAULT = 0x4
-- MNT_DETACH = 0x2
-- MNT_EXPIRE = 0x4
-- MNT_FORCE = 0x1
-- MSG_BATCH = 0x40000
-- MSG_CMSG_CLOEXEC = 0x40000000
-- MSG_CONFIRM = 0x800
-- MSG_CTRUNC = 0x8
-- MSG_DONTROUTE = 0x4
-- MSG_DONTWAIT = 0x40
-- MSG_EOR = 0x80
-- MSG_ERRQUEUE = 0x2000
-- MSG_FASTOPEN = 0x20000000
-- MSG_FIN = 0x200
-- MSG_MORE = 0x8000
-- MSG_NOSIGNAL = 0x4000
-- MSG_OOB = 0x1
-- MSG_PEEK = 0x2
-- MSG_PROXY = 0x10
-- MSG_RST = 0x1000
-- MSG_SYN = 0x400
-- MSG_TRUNC = 0x20
-- MSG_TRYHARD = 0x4
-- MSG_WAITALL = 0x100
-- MSG_WAITFORONE = 0x10000
-- MS_ACTIVE = 0x40000000
-- MS_ASYNC = 0x1
-- MS_BIND = 0x1000
-- MS_BORN = 0x20000000
-- MS_DIRSYNC = 0x80
-- MS_INVALIDATE = 0x2
-- MS_I_VERSION = 0x800000
-- MS_KERNMOUNT = 0x400000
-- MS_LAZYTIME = 0x2000000
-- MS_MANDLOCK = 0x40
-- MS_MGC_MSK = 0xffff0000
-- MS_MGC_VAL = 0xc0ed0000
-- MS_MOVE = 0x2000
-- MS_NOATIME = 0x400
-- MS_NODEV = 0x4
-- MS_NODIRATIME = 0x800
-- MS_NOEXEC = 0x8
-- MS_NOREMOTELOCK = 0x8000000
-- MS_NOSEC = 0x10000000
-- MS_NOSUID = 0x2
-- MS_NOUSER = -0x80000000
-- MS_POSIXACL = 0x10000
-- MS_PRIVATE = 0x40000
-- MS_RDONLY = 0x1
-- MS_REC = 0x4000
-- MS_RELATIME = 0x200000
-- MS_REMOUNT = 0x20
-- MS_RMT_MASK = 0x2800051
-- MS_SHARED = 0x100000
-- MS_SILENT = 0x8000
-- MS_SLAVE = 0x80000
-- MS_STRICTATIME = 0x1000000
-- MS_SYNC = 0x4
-- MS_SYNCHRONOUS = 0x10
-- MS_UNBINDABLE = 0x20000
-- MS_VERBOSE = 0x8000
-- NAME_MAX = 0xff
-- NETLINK_ADD_MEMBERSHIP = 0x1
-- NETLINK_AUDIT = 0x9
-- NETLINK_BROADCAST_ERROR = 0x4
-- NETLINK_CAP_ACK = 0xa
-- NETLINK_CONNECTOR = 0xb
-- NETLINK_CRYPTO = 0x15
-- NETLINK_DNRTMSG = 0xe
-- NETLINK_DROP_MEMBERSHIP = 0x2
-- NETLINK_ECRYPTFS = 0x13
-- NETLINK_FIB_LOOKUP = 0xa
-- NETLINK_FIREWALL = 0x3
-- NETLINK_GENERIC = 0x10
-- NETLINK_INET_DIAG = 0x4
-- NETLINK_IP6_FW = 0xd
-- NETLINK_ISCSI = 0x8
-- NETLINK_KOBJECT_UEVENT = 0xf
-- NETLINK_LISTEN_ALL_NSID = 0x8
-- NETLINK_LIST_MEMBERSHIPS = 0x9
-- NETLINK_NETFILTER = 0xc
-- NETLINK_NFLOG = 0x5
-- NETLINK_NO_ENOBUFS = 0x5
-- NETLINK_PKTINFO = 0x3
-- NETLINK_RDMA = 0x14
-- NETLINK_ROUTE = 0x0
-- NETLINK_RX_RING = 0x6
-- NETLINK_SCSITRANSPORT = 0x12
-- NETLINK_SELINUX = 0x7
-- NETLINK_SOCK_DIAG = 0x4
-- NETLINK_TX_RING = 0x7
-- NETLINK_UNUSED = 0x1
-- NETLINK_USERSOCK = 0x2
-- NETLINK_XFRM = 0x6
-- NL0 = 0x0
-- NL1 = 0x100
-- NLA_ALIGNTO = 0x4
-- NLA_F_NESTED = 0x8000
-- NLA_F_NET_BYTEORDER = 0x4000
-- NLA_HDRLEN = 0x4
-- NLDLY = 0x100
-- NLMSG_ALIGNTO = 0x4
-- NLMSG_DONE = 0x3
-- NLMSG_ERROR = 0x2
-- NLMSG_HDRLEN = 0x10
-- NLMSG_MIN_TYPE = 0x10
-- NLMSG_NOOP = 0x1
-- NLMSG_OVERRUN = 0x4
-- NLM_F_ACK = 0x4
-- NLM_F_APPEND = 0x800
-- NLM_F_ATOMIC = 0x400
-- NLM_F_CREATE = 0x400
-- NLM_F_DUMP = 0x300
-- NLM_F_DUMP_FILTERED = 0x20
-- NLM_F_DUMP_INTR = 0x10
-- NLM_F_ECHO = 0x8
-- NLM_F_EXCL = 0x200
-- NLM_F_MATCH = 0x200
-- NLM_F_MULTI = 0x2
-- NLM_F_REPLACE = 0x100
-- NLM_F_REQUEST = 0x1
-- NLM_F_ROOT = 0x100
-- NOFLSH = 0x80
-- OCRNL = 0x8
-- OFDEL = 0x80
-- OFILL = 0x40
-- OLCUC = 0x2
-- ONLCR = 0x4
-- ONLRET = 0x20
-- ONOCR = 0x10
-- OPOST = 0x1
-- O_ACCMODE = 0x3
-- O_APPEND = 0x8
-- O_ASYNC = 0x1000
-- O_CLOEXEC = 0x80000
-- O_CREAT = 0x100
-- O_DIRECT = 0x8000
-- O_DIRECTORY = 0x10000
-- O_DSYNC = 0x10
-- O_EXCL = 0x400
-- O_FSYNC = 0x4010
-- O_LARGEFILE = 0x2000
-- O_NDELAY = 0x80
-- O_NOATIME = 0x40000
-- O_NOCTTY = 0x800
-- O_NOFOLLOW = 0x20000
-- O_NONBLOCK = 0x80
-- O_PATH = 0x200000
-- O_RDONLY = 0x0
-- O_RDWR = 0x2
-- O_RSYNC = 0x4010
-- O_SYNC = 0x4010
-- O_TMPFILE = 0x410000
-- O_TRUNC = 0x200
-- O_WRONLY = 0x1
-- PACKET_ADD_MEMBERSHIP = 0x1
-- PACKET_AUXDATA = 0x8
-- PACKET_BROADCAST = 0x1
-- PACKET_COPY_THRESH = 0x7
-- PACKET_DROP_MEMBERSHIP = 0x2
-- PACKET_FANOUT = 0x12
-- PACKET_FANOUT_CBPF = 0x6
-- PACKET_FANOUT_CPU = 0x2
-- PACKET_FANOUT_DATA = 0x16
-- PACKET_FANOUT_EBPF = 0x7
-- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
-- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
-- PACKET_FANOUT_HASH = 0x0
-- PACKET_FANOUT_LB = 0x1
-- PACKET_FANOUT_QM = 0x5
-- PACKET_FANOUT_RND = 0x4
-- PACKET_FANOUT_ROLLOVER = 0x3
-- PACKET_FASTROUTE = 0x6
-- PACKET_HDRLEN = 0xb
-- PACKET_HOST = 0x0
-- PACKET_KERNEL = 0x7
-- PACKET_LOOPBACK = 0x5
-- PACKET_LOSS = 0xe
-- PACKET_MR_ALLMULTI = 0x2
-- PACKET_MR_MULTICAST = 0x0
-- PACKET_MR_PROMISC = 0x1
-- PACKET_MR_UNICAST = 0x3
-- PACKET_MULTICAST = 0x2
-- PACKET_ORIGDEV = 0x9
-- PACKET_OTHERHOST = 0x3
-- PACKET_OUTGOING = 0x4
-- PACKET_QDISC_BYPASS = 0x14
-- PACKET_RECV_OUTPUT = 0x3
-- PACKET_RESERVE = 0xc
-- PACKET_ROLLOVER_STATS = 0x15
-- PACKET_RX_RING = 0x5
-- PACKET_STATISTICS = 0x6
-- PACKET_TIMESTAMP = 0x11
-- PACKET_TX_HAS_OFF = 0x13
-- PACKET_TX_RING = 0xd
-- PACKET_TX_TIMESTAMP = 0x10
-- PACKET_USER = 0x6
-- PACKET_VERSION = 0xa
-- PACKET_VNET_HDR = 0xf
-- PARENB = 0x100
-- PARITY_CRC16_PR0 = 0x2
-- PARITY_CRC16_PR0_CCITT = 0x4
-- PARITY_CRC16_PR1 = 0x3
-- PARITY_CRC16_PR1_CCITT = 0x5
-- PARITY_CRC32_PR0_CCITT = 0x6
-- PARITY_CRC32_PR1_CCITT = 0x7
-- PARITY_DEFAULT = 0x0
-- PARITY_NONE = 0x1
-- PARMRK = 0x8
-- PARODD = 0x200
-- PENDIN = 0x4000
-- PERF_EVENT_IOC_DISABLE = 0x20002401
-- PERF_EVENT_IOC_ENABLE = 0x20002400
-- PERF_EVENT_IOC_ID = 0x40042407
-- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
-- PERF_EVENT_IOC_PERIOD = 0x80082404
-- PERF_EVENT_IOC_REFRESH = 0x20002402
-- PERF_EVENT_IOC_RESET = 0x20002403
-- PERF_EVENT_IOC_SET_BPF = 0x80042408
-- PERF_EVENT_IOC_SET_FILTER = 0x80042406
-- PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
-- PRIO_PGRP = 0x1
-- PRIO_PROCESS = 0x0
-- PRIO_USER = 0x2
-- PROT_EXEC = 0x4
-- PROT_GROWSDOWN = 0x1000000
-- PROT_GROWSUP = 0x2000000
-- PROT_NONE = 0x0
-- PROT_READ = 0x1
-- PROT_WRITE = 0x2
-- PR_CAPBSET_DROP = 0x18
-- PR_CAPBSET_READ = 0x17
-- PR_CAP_AMBIENT = 0x2f
-- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
-- PR_CAP_AMBIENT_IS_SET = 0x1
-- PR_CAP_AMBIENT_LOWER = 0x3
-- PR_CAP_AMBIENT_RAISE = 0x2
-- PR_ENDIAN_BIG = 0x0
-- PR_ENDIAN_LITTLE = 0x1
-- PR_ENDIAN_PPC_LITTLE = 0x2
-- PR_FPEMU_NOPRINT = 0x1
-- PR_FPEMU_SIGFPE = 0x2
-- PR_FP_EXC_ASYNC = 0x2
-- PR_FP_EXC_DISABLED = 0x0
-- PR_FP_EXC_DIV = 0x10000
-- PR_FP_EXC_INV = 0x100000
-- PR_FP_EXC_NONRECOV = 0x1
-- PR_FP_EXC_OVF = 0x20000
-- PR_FP_EXC_PRECISE = 0x3
-- PR_FP_EXC_RES = 0x80000
-- PR_FP_EXC_SW_ENABLE = 0x80
-- PR_FP_EXC_UND = 0x40000
-- PR_FP_MODE_FR = 0x1
-- PR_FP_MODE_FRE = 0x2
-- PR_GET_CHILD_SUBREAPER = 0x25
-- PR_GET_DUMPABLE = 0x3
-- PR_GET_ENDIAN = 0x13
-- PR_GET_FPEMU = 0x9
-- PR_GET_FPEXC = 0xb
-- PR_GET_FP_MODE = 0x2e
-- PR_GET_KEEPCAPS = 0x7
-- PR_GET_NAME = 0x10
-- PR_GET_NO_NEW_PRIVS = 0x27
-- PR_GET_PDEATHSIG = 0x2
-- PR_GET_SECCOMP = 0x15
-- PR_GET_SECUREBITS = 0x1b
-- PR_GET_THP_DISABLE = 0x2a
-- PR_GET_TID_ADDRESS = 0x28
-- PR_GET_TIMERSLACK = 0x1e
-- PR_GET_TIMING = 0xd
-- PR_GET_TSC = 0x19
-- PR_GET_UNALIGN = 0x5
-- PR_MCE_KILL = 0x21
-- PR_MCE_KILL_CLEAR = 0x0
-- PR_MCE_KILL_DEFAULT = 0x2
-- PR_MCE_KILL_EARLY = 0x1
-- PR_MCE_KILL_GET = 0x22
-- PR_MCE_KILL_LATE = 0x0
-- PR_MCE_KILL_SET = 0x1
-- PR_MPX_DISABLE_MANAGEMENT = 0x2c
-- PR_MPX_ENABLE_MANAGEMENT = 0x2b
-- PR_SET_CHILD_SUBREAPER = 0x24
-- PR_SET_DUMPABLE = 0x4
-- PR_SET_ENDIAN = 0x14
-- PR_SET_FPEMU = 0xa
-- PR_SET_FPEXC = 0xc
-- PR_SET_FP_MODE = 0x2d
-- PR_SET_KEEPCAPS = 0x8
-- PR_SET_MM = 0x23
-- PR_SET_MM_ARG_END = 0x9
-- PR_SET_MM_ARG_START = 0x8
-- PR_SET_MM_AUXV = 0xc
-- PR_SET_MM_BRK = 0x7
-- PR_SET_MM_END_CODE = 0x2
-- PR_SET_MM_END_DATA = 0x4
-- PR_SET_MM_ENV_END = 0xb
-- PR_SET_MM_ENV_START = 0xa
-- PR_SET_MM_EXE_FILE = 0xd
-- PR_SET_MM_MAP = 0xe
-- PR_SET_MM_MAP_SIZE = 0xf
-- PR_SET_MM_START_BRK = 0x6
-- PR_SET_MM_START_CODE = 0x1
-- PR_SET_MM_START_DATA = 0x3
-- PR_SET_MM_START_STACK = 0x5
-- PR_SET_NAME = 0xf
-- PR_SET_NO_NEW_PRIVS = 0x26
-- PR_SET_PDEATHSIG = 0x1
-- PR_SET_PTRACER = 0x59616d61
-- PR_SET_PTRACER_ANY = 0xffffffff
-- PR_SET_SECCOMP = 0x16
-- PR_SET_SECUREBITS = 0x1c
-- PR_SET_THP_DISABLE = 0x29
-- PR_SET_TIMERSLACK = 0x1d
-- PR_SET_TIMING = 0xe
-- PR_SET_TSC = 0x1a
-- PR_SET_UNALIGN = 0x6
-- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
-- PR_TASK_PERF_EVENTS_ENABLE = 0x20
-- PR_TIMING_STATISTICAL = 0x0
-- PR_TIMING_TIMESTAMP = 0x1
-- PR_TSC_ENABLE = 0x1
-- PR_TSC_SIGSEGV = 0x2
-- PR_UNALIGN_NOPRINT = 0x1
-- PR_UNALIGN_SIGBUS = 0x2
-- PTRACE_ATTACH = 0x10
-- PTRACE_CONT = 0x7
-- PTRACE_DETACH = 0x11
-- PTRACE_EVENT_CLONE = 0x3
-- PTRACE_EVENT_EXEC = 0x4
-- PTRACE_EVENT_EXIT = 0x6
-- PTRACE_EVENT_FORK = 0x1
-- PTRACE_EVENT_SECCOMP = 0x7
-- PTRACE_EVENT_STOP = 0x80
-- PTRACE_EVENT_VFORK = 0x2
-- PTRACE_EVENT_VFORK_DONE = 0x5
-- PTRACE_GETEVENTMSG = 0x4201
-- PTRACE_GETFPREGS = 0xe
-- PTRACE_GETREGS = 0xc
-- PTRACE_GETREGSET = 0x4204
-- PTRACE_GETSIGINFO = 0x4202
-- PTRACE_GETSIGMASK = 0x420a
-- PTRACE_GET_THREAD_AREA = 0x19
-- PTRACE_GET_THREAD_AREA_3264 = 0xc4
-- PTRACE_GET_WATCH_REGS = 0xd0
-- PTRACE_INTERRUPT = 0x4207
-- PTRACE_KILL = 0x8
-- PTRACE_LISTEN = 0x4208
-- PTRACE_OLDSETOPTIONS = 0x15
-- PTRACE_O_EXITKILL = 0x100000
-- PTRACE_O_MASK = 0x3000ff
-- PTRACE_O_SUSPEND_SECCOMP = 0x200000
-- PTRACE_O_TRACECLONE = 0x8
-- PTRACE_O_TRACEEXEC = 0x10
-- PTRACE_O_TRACEEXIT = 0x40
-- PTRACE_O_TRACEFORK = 0x2
-- PTRACE_O_TRACESECCOMP = 0x80
-- PTRACE_O_TRACESYSGOOD = 0x1
-- PTRACE_O_TRACEVFORK = 0x4
-- PTRACE_O_TRACEVFORKDONE = 0x20
-- PTRACE_PEEKDATA = 0x2
-- PTRACE_PEEKDATA_3264 = 0xc1
-- PTRACE_PEEKSIGINFO = 0x4209
-- PTRACE_PEEKSIGINFO_SHARED = 0x1
-- PTRACE_PEEKTEXT = 0x1
-- PTRACE_PEEKTEXT_3264 = 0xc0
-- PTRACE_PEEKUSR = 0x3
-- PTRACE_POKEDATA = 0x5
-- PTRACE_POKEDATA_3264 = 0xc3
-- PTRACE_POKETEXT = 0x4
-- PTRACE_POKETEXT_3264 = 0xc2
-- PTRACE_POKEUSR = 0x6
-- PTRACE_SECCOMP_GET_FILTER = 0x420c
-- PTRACE_SEIZE = 0x4206
-- PTRACE_SETFPREGS = 0xf
-- PTRACE_SETOPTIONS = 0x4200
-- PTRACE_SETREGS = 0xd
-- PTRACE_SETREGSET = 0x4205
-- PTRACE_SETSIGINFO = 0x4203
-- PTRACE_SETSIGMASK = 0x420b
-- PTRACE_SET_THREAD_AREA = 0x1a
-- PTRACE_SET_WATCH_REGS = 0xd1
-- PTRACE_SINGLESTEP = 0x9
-- PTRACE_SYSCALL = 0x18
-- PTRACE_TRACEME = 0x0
-- RLIMIT_AS = 0x6
-- RLIMIT_CORE = 0x4
-- RLIMIT_CPU = 0x0
-- RLIMIT_DATA = 0x2
-- RLIMIT_FSIZE = 0x1
-- RLIMIT_LOCKS = 0xa
-- RLIMIT_MEMLOCK = 0x9
-- RLIMIT_MSGQUEUE = 0xc
-- RLIMIT_NICE = 0xd
-- RLIMIT_NOFILE = 0x5
-- RLIMIT_NPROC = 0x8
-- RLIMIT_RSS = 0x7
-- RLIMIT_RTPRIO = 0xe
-- RLIMIT_RTTIME = 0xf
-- RLIMIT_SIGPENDING = 0xb
-- RLIMIT_STACK = 0x3
-- RLIM_INFINITY = -0x1
-- RTAX_ADVMSS = 0x8
-- RTAX_CC_ALGO = 0x10
-- RTAX_CWND = 0x7
-- RTAX_FEATURES = 0xc
-- RTAX_FEATURE_ALLFRAG = 0x8
-- RTAX_FEATURE_ECN = 0x1
-- RTAX_FEATURE_MASK = 0xf
-- RTAX_FEATURE_SACK = 0x2
-- RTAX_FEATURE_TIMESTAMP = 0x4
-- RTAX_HOPLIMIT = 0xa
-- RTAX_INITCWND = 0xb
-- RTAX_INITRWND = 0xe
-- RTAX_LOCK = 0x1
-- RTAX_MAX = 0x10
-- RTAX_MTU = 0x2
-- RTAX_QUICKACK = 0xf
-- RTAX_REORDERING = 0x9
-- RTAX_RTO_MIN = 0xd
-- RTAX_RTT = 0x4
-- RTAX_RTTVAR = 0x5
-- RTAX_SSTHRESH = 0x6
-- RTAX_UNSPEC = 0x0
-- RTAX_WINDOW = 0x3
-- RTA_ALIGNTO = 0x4
-- RTA_MAX = 0x19
-- RTCF_DIRECTSRC = 0x4000000
-- RTCF_DOREDIRECT = 0x1000000
-- RTCF_LOG = 0x2000000
-- RTCF_MASQ = 0x400000
-- RTCF_NAT = 0x800000
-- RTCF_VALVE = 0x200000
-- RTF_ADDRCLASSMASK = 0xf8000000
-- RTF_ADDRCONF = 0x40000
-- RTF_ALLONLINK = 0x20000
-- RTF_BROADCAST = 0x10000000
-- RTF_CACHE = 0x1000000
-- RTF_DEFAULT = 0x10000
-- RTF_DYNAMIC = 0x10
-- RTF_FLOW = 0x2000000
-- RTF_GATEWAY = 0x2
-- RTF_HOST = 0x4
-- RTF_INTERFACE = 0x40000000
-- RTF_IRTT = 0x100
-- RTF_LINKRT = 0x100000
-- RTF_LOCAL = 0x80000000
-- RTF_MODIFIED = 0x20
-- RTF_MSS = 0x40
-- RTF_MTU = 0x40
-- RTF_MULTICAST = 0x20000000
-- RTF_NAT = 0x8000000
-- RTF_NOFORWARD = 0x1000
-- RTF_NONEXTHOP = 0x200000
-- RTF_NOPMTUDISC = 0x4000
-- RTF_POLICY = 0x4000000
-- RTF_REINSTATE = 0x8
-- RTF_REJECT = 0x200
-- RTF_STATIC = 0x400
-- RTF_THROW = 0x2000
-- RTF_UP = 0x1
-- RTF_WINDOW = 0x80
-- RTF_XRESOLVE = 0x800
-- RTM_BASE = 0x10
-- RTM_DELACTION = 0x31
-- RTM_DELADDR = 0x15
-- RTM_DELADDRLABEL = 0x49
-- RTM_DELLINK = 0x11
-- RTM_DELMDB = 0x55
-- RTM_DELNEIGH = 0x1d
-- RTM_DELNSID = 0x59
-- RTM_DELQDISC = 0x25
-- RTM_DELROUTE = 0x19
-- RTM_DELRULE = 0x21
-- RTM_DELTCLASS = 0x29
-- RTM_DELTFILTER = 0x2d
-- RTM_F_CLONED = 0x200
-- RTM_F_EQUALIZE = 0x400
-- RTM_F_LOOKUP_TABLE = 0x1000
-- RTM_F_NOTIFY = 0x100
-- RTM_F_PREFIX = 0x800
-- RTM_GETACTION = 0x32
-- RTM_GETADDR = 0x16
-- RTM_GETADDRLABEL = 0x4a
-- RTM_GETANYCAST = 0x3e
-- RTM_GETDCB = 0x4e
-- RTM_GETLINK = 0x12
-- RTM_GETMDB = 0x56
-- RTM_GETMULTICAST = 0x3a
-- RTM_GETNEIGH = 0x1e
-- RTM_GETNEIGHTBL = 0x42
-- RTM_GETNETCONF = 0x52
-- RTM_GETNSID = 0x5a
-- RTM_GETQDISC = 0x26
-- RTM_GETROUTE = 0x1a
-- RTM_GETRULE = 0x22
-- RTM_GETSTATS = 0x5e
-- RTM_GETTCLASS = 0x2a
-- RTM_GETTFILTER = 0x2e
-- RTM_MAX = 0x5f
-- RTM_NEWACTION = 0x30
-- RTM_NEWADDR = 0x14
-- RTM_NEWADDRLABEL = 0x48
-- RTM_NEWLINK = 0x10
-- RTM_NEWMDB = 0x54
-- RTM_NEWNDUSEROPT = 0x44
-- RTM_NEWNEIGH = 0x1c
-- RTM_NEWNEIGHTBL = 0x40
-- RTM_NEWNETCONF = 0x50
-- RTM_NEWNSID = 0x58
-- RTM_NEWPREFIX = 0x34
-- RTM_NEWQDISC = 0x24
-- RTM_NEWROUTE = 0x18
-- RTM_NEWRULE = 0x20
-- RTM_NEWSTATS = 0x5c
-- RTM_NEWTCLASS = 0x28
-- RTM_NEWTFILTER = 0x2c
-- RTM_NR_FAMILIES = 0x14
-- RTM_NR_MSGTYPES = 0x50
-- RTM_SETDCB = 0x4f
-- RTM_SETLINK = 0x13
-- RTM_SETNEIGHTBL = 0x43
-- RTNH_ALIGNTO = 0x4
-- RTNH_COMPARE_MASK = 0x19
-- RTNH_F_DEAD = 0x1
-- RTNH_F_LINKDOWN = 0x10
-- RTNH_F_OFFLOAD = 0x8
-- RTNH_F_ONLINK = 0x4
-- RTNH_F_PERVASIVE = 0x2
-- RTN_MAX = 0xb
-- RTPROT_BABEL = 0x2a
-- RTPROT_BIRD = 0xc
-- RTPROT_BOOT = 0x3
-- RTPROT_DHCP = 0x10
-- RTPROT_DNROUTED = 0xd
-- RTPROT_GATED = 0x8
-- RTPROT_KERNEL = 0x2
-- RTPROT_MROUTED = 0x11
-- RTPROT_MRT = 0xa
-- RTPROT_NTK = 0xf
-- RTPROT_RA = 0x9
-- RTPROT_REDIRECT = 0x1
-- RTPROT_STATIC = 0x4
-- RTPROT_UNSPEC = 0x0
-- RTPROT_XORP = 0xe
-- RTPROT_ZEBRA = 0xb
-- RT_CLASS_DEFAULT = 0xfd
-- RT_CLASS_LOCAL = 0xff
-- RT_CLASS_MAIN = 0xfe
-- RT_CLASS_MAX = 0xff
-- RT_CLASS_UNSPEC = 0x0
-- RUSAGE_CHILDREN = -0x1
-- RUSAGE_SELF = 0x0
-- RUSAGE_THREAD = 0x1
-- SCM_CREDENTIALS = 0x2
-- SCM_RIGHTS = 0x1
-- SCM_TIMESTAMP = 0x1d
-- SCM_TIMESTAMPING = 0x25
-- SCM_TIMESTAMPING_OPT_STATS = 0x36
-- SCM_TIMESTAMPNS = 0x23
-- SCM_WIFI_STATUS = 0x29
-- SECCOMP_MODE_DISABLED = 0x0
-- SECCOMP_MODE_FILTER = 0x2
-- SECCOMP_MODE_STRICT = 0x1
-- SHUT_RD = 0x0
-- SHUT_RDWR = 0x2
-- SHUT_WR = 0x1
-- SIOCADDDLCI = 0x8980
-- SIOCADDMULTI = 0x8931
-- SIOCADDRT = 0x890b
-- SIOCATMARK = 0x40047307
-- SIOCBONDCHANGEACTIVE = 0x8995
-- SIOCBONDENSLAVE = 0x8990
-- SIOCBONDINFOQUERY = 0x8994
-- SIOCBONDRELEASE = 0x8991
-- SIOCBONDSETHWADDR = 0x8992
-- SIOCBONDSLAVEINFOQUERY = 0x8993
-- SIOCBRADDBR = 0x89a0
-- SIOCBRADDIF = 0x89a2
-- SIOCBRDELBR = 0x89a1
-- SIOCBRDELIF = 0x89a3
-- SIOCDARP = 0x8953
-- SIOCDELDLCI = 0x8981
-- SIOCDELMULTI = 0x8932
-- SIOCDELRT = 0x890c
-- SIOCDEVPRIVATE = 0x89f0
-- SIOCDIFADDR = 0x8936
-- SIOCDRARP = 0x8960
-- SIOCETHTOOL = 0x8946
-- SIOCGARP = 0x8954
-- SIOCGHWTSTAMP = 0x89b1
-- SIOCGIFADDR = 0x8915
-- SIOCGIFBR = 0x8940
-- SIOCGIFBRDADDR = 0x8919
-- SIOCGIFCONF = 0x8912
-- SIOCGIFCOUNT = 0x8938
-- SIOCGIFDSTADDR = 0x8917
-- SIOCGIFENCAP = 0x8925
-- SIOCGIFFLAGS = 0x8913
-- SIOCGIFHWADDR = 0x8927
-- SIOCGIFINDEX = 0x8933
-- SIOCGIFMAP = 0x8970
-- SIOCGIFMEM = 0x891f
-- SIOCGIFMETRIC = 0x891d
-- SIOCGIFMTU = 0x8921
-- SIOCGIFNAME = 0x8910
-- SIOCGIFNETMASK = 0x891b
-- SIOCGIFPFLAGS = 0x8935
-- SIOCGIFSLAVE = 0x8929
-- SIOCGIFTXQLEN = 0x8942
-- SIOCGIFVLAN = 0x8982
-- SIOCGMIIPHY = 0x8947
-- SIOCGMIIREG = 0x8948
-- SIOCGPGRP = 0x40047309
-- SIOCGRARP = 0x8961
-- SIOCGSKNS = 0x894c
-- SIOCGSTAMP = 0x8906
-- SIOCGSTAMPNS = 0x8907
-- SIOCINQ = 0x467f
-- SIOCOUTQ = 0x7472
-- SIOCOUTQNSD = 0x894b
-- SIOCPROTOPRIVATE = 0x89e0
-- SIOCRTMSG = 0x890d
-- SIOCSARP = 0x8955
-- SIOCSHWTSTAMP = 0x89b0
-- SIOCSIFADDR = 0x8916
-- SIOCSIFBR = 0x8941
-- SIOCSIFBRDADDR = 0x891a
-- SIOCSIFDSTADDR = 0x8918
-- SIOCSIFENCAP = 0x8926
-- SIOCSIFFLAGS = 0x8914
-- SIOCSIFHWADDR = 0x8924
-- SIOCSIFHWBROADCAST = 0x8937
-- SIOCSIFLINK = 0x8911
-- SIOCSIFMAP = 0x8971
-- SIOCSIFMEM = 0x8920
-- SIOCSIFMETRIC = 0x891e
-- SIOCSIFMTU = 0x8922
-- SIOCSIFNAME = 0x8923
-- SIOCSIFNETMASK = 0x891c
-- SIOCSIFPFLAGS = 0x8934
-- SIOCSIFSLAVE = 0x8930
-- SIOCSIFTXQLEN = 0x8943
-- SIOCSIFVLAN = 0x8983
-- SIOCSMIIREG = 0x8949
-- SIOCSPGRP = 0x80047308
-- SIOCSRARP = 0x8962
-- SIOCWANDEV = 0x894a
-- SOCK_CLOEXEC = 0x80000
-- SOCK_DCCP = 0x6
-- SOCK_DGRAM = 0x1
-- SOCK_IOC_TYPE = 0x89
-- SOCK_NONBLOCK = 0x80
-- SOCK_PACKET = 0xa
-- SOCK_RAW = 0x3
-- SOCK_RDM = 0x4
-- SOCK_SEQPACKET = 0x5
-- SOCK_STREAM = 0x2
-- SOL_AAL = 0x109
-- SOL_ALG = 0x117
-- SOL_ATM = 0x108
-- SOL_CAIF = 0x116
-- SOL_CAN_BASE = 0x64
-- SOL_DCCP = 0x10d
-- SOL_DECNET = 0x105
-- SOL_ICMPV6 = 0x3a
-- SOL_IP = 0x0
-- SOL_IPV6 = 0x29
-- SOL_IRDA = 0x10a
-- SOL_IUCV = 0x115
-- SOL_KCM = 0x119
-- SOL_LLC = 0x10c
-- SOL_NETBEUI = 0x10b
-- SOL_NETLINK = 0x10e
-- SOL_NFC = 0x118
-- SOL_PACKET = 0x107
-- SOL_PNPIPE = 0x113
-- SOL_PPPOL2TP = 0x111
-- SOL_RAW = 0xff
-- SOL_RDS = 0x114
-- SOL_RXRPC = 0x110
-- SOL_SOCKET = 0xffff
-- SOL_TCP = 0x6
-- SOL_TIPC = 0x10f
-- SOL_X25 = 0x106
-- SOMAXCONN = 0x80
-- SO_ACCEPTCONN = 0x1009
-- SO_ATTACH_BPF = 0x32
-- SO_ATTACH_FILTER = 0x1a
-- SO_ATTACH_REUSEPORT_CBPF = 0x33
-- SO_ATTACH_REUSEPORT_EBPF = 0x34
-- SO_BINDTODEVICE = 0x19
-- SO_BPF_EXTENSIONS = 0x30
-- SO_BROADCAST = 0x20
-- SO_BSDCOMPAT = 0xe
-- SO_BUSY_POLL = 0x2e
-- SO_CNX_ADVICE = 0x35
-- SO_DEBUG = 0x1
-- SO_DETACH_BPF = 0x1b
-- SO_DETACH_FILTER = 0x1b
-- SO_DOMAIN = 0x1029
-- SO_DONTROUTE = 0x10
-- SO_ERROR = 0x1007
-- SO_GET_FILTER = 0x1a
-- SO_INCOMING_CPU = 0x31
-- SO_KEEPALIVE = 0x8
-- SO_LINGER = 0x80
-- SO_LOCK_FILTER = 0x2c
-- SO_MARK = 0x24
-- SO_MAX_PACING_RATE = 0x2f
-- SO_NOFCS = 0x2b
-- SO_NO_CHECK = 0xb
-- SO_OOBINLINE = 0x100
-- SO_PASSCRED = 0x11
-- SO_PASSSEC = 0x22
-- SO_PEEK_OFF = 0x2a
-- SO_PEERCRED = 0x12
-- SO_PEERNAME = 0x1c
-- SO_PEERSEC = 0x1e
-- SO_PRIORITY = 0xc
-- SO_PROTOCOL = 0x1028
-- SO_RCVBUF = 0x1002
-- SO_RCVBUFFORCE = 0x21
-- SO_RCVLOWAT = 0x1004
-- SO_RCVTIMEO = 0x1006
-- SO_REUSEADDR = 0x4
-- SO_REUSEPORT = 0x200
-- SO_RXQ_OVFL = 0x28
-- SO_SECURITY_AUTHENTICATION = 0x16
-- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-- SO_SELECT_ERR_QUEUE = 0x2d
-- SO_SNDBUF = 0x1001
-- SO_SNDBUFFORCE = 0x1f
-- SO_SNDLOWAT = 0x1003
-- SO_SNDTIMEO = 0x1005
-- SO_STYLE = 0x1008
-- SO_TIMESTAMP = 0x1d
-- SO_TIMESTAMPING = 0x25
-- SO_TIMESTAMPNS = 0x23
-- SO_TYPE = 0x1008
-- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
-- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
-- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
-- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
-- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
-- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
-- SO_VM_SOCKETS_TRUSTED = 0x5
-- SO_WIFI_STATUS = 0x29
-- SPLICE_F_GIFT = 0x8
-- SPLICE_F_MORE = 0x4
-- SPLICE_F_MOVE = 0x1
-- SPLICE_F_NONBLOCK = 0x2
-- S_BLKSIZE = 0x200
-- S_IEXEC = 0x40
-- S_IFBLK = 0x6000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFIFO = 0x1000
-- S_IFLNK = 0xa000
-- S_IFMT = 0xf000
-- S_IFREG = 0x8000
-- S_IFSOCK = 0xc000
-- S_IREAD = 0x100
-- S_IRGRP = 0x20
-- S_IROTH = 0x4
-- S_IRUSR = 0x100
-- S_IRWXG = 0x38
-- S_IRWXO = 0x7
-- S_IRWXU = 0x1c0
-- S_ISGID = 0x400
-- S_ISUID = 0x800
-- S_ISVTX = 0x200
-- S_IWGRP = 0x10
-- S_IWOTH = 0x2
-- S_IWRITE = 0x80
-- S_IWUSR = 0x80
-- S_IXGRP = 0x8
-- S_IXOTH = 0x1
-- S_IXUSR = 0x40
-- TAB0 = 0x0
-- TAB1 = 0x800
-- TAB2 = 0x1000
-- TAB3 = 0x1800
-- TABDLY = 0x1800
-- TASKSTATS_CMD_ATTR_MAX = 0x4
-- TASKSTATS_CMD_MAX = 0x2
-- TASKSTATS_GENL_NAME = "TASKSTATS"
-- TASKSTATS_GENL_VERSION = 0x1
-- TASKSTATS_TYPE_MAX = 0x6
-- TASKSTATS_VERSION = 0x8
-- TCFLSH = 0x5407
-- TCGETA = 0x5401
-- TCGETS = 0x540d
-- TCGETS2 = 0x4030542a
-- TCIFLUSH = 0x0
-- TCIOFF = 0x2
-- TCIOFLUSH = 0x2
-- TCION = 0x3
-- TCOFLUSH = 0x1
-- TCOOFF = 0x0
-- TCOON = 0x1
-- TCP_CC_INFO = 0x1a
-- TCP_CONGESTION = 0xd
-- TCP_COOKIE_IN_ALWAYS = 0x1
-- TCP_COOKIE_MAX = 0x10
-- TCP_COOKIE_MIN = 0x8
-- TCP_COOKIE_OUT_NEVER = 0x2
-- TCP_COOKIE_PAIR_SIZE = 0x20
-- TCP_COOKIE_TRANSACTIONS = 0xf
-- TCP_CORK = 0x3
-- TCP_DEFER_ACCEPT = 0x9
-- TCP_FASTOPEN = 0x17
-- TCP_INFO = 0xb
-- TCP_KEEPCNT = 0x6
-- TCP_KEEPIDLE = 0x4
-- TCP_KEEPINTVL = 0x5
-- TCP_LINGER2 = 0x8
-- TCP_MAXSEG = 0x2
-- TCP_MAXWIN = 0xffff
-- TCP_MAX_WINSHIFT = 0xe
-- TCP_MD5SIG = 0xe
-- TCP_MD5SIG_MAXKEYLEN = 0x50
-- TCP_MSS = 0x200
-- TCP_MSS_DEFAULT = 0x218
-- TCP_MSS_DESIRED = 0x4c4
-- TCP_NODELAY = 0x1
-- TCP_NOTSENT_LOWAT = 0x19
-- TCP_QUEUE_SEQ = 0x15
-- TCP_QUICKACK = 0xc
-- TCP_REPAIR = 0x13
-- TCP_REPAIR_OPTIONS = 0x16
-- TCP_REPAIR_QUEUE = 0x14
-- TCP_REPAIR_WINDOW = 0x1d
-- TCP_SAVED_SYN = 0x1c
-- TCP_SAVE_SYN = 0x1b
-- TCP_SYNCNT = 0x7
-- TCP_S_DATA_IN = 0x4
-- TCP_S_DATA_OUT = 0x8
-- TCP_THIN_DUPACK = 0x11
-- TCP_THIN_LINEAR_TIMEOUTS = 0x10
-- TCP_TIMESTAMP = 0x18
-- TCP_USER_TIMEOUT = 0x12
-- TCP_WINDOW_CLAMP = 0xa
-- TCSAFLUSH = 0x5410
-- TCSBRK = 0x5405
-- TCSBRKP = 0x5486
-- TCSETA = 0x5402
-- TCSETAF = 0x5404
-- TCSETAW = 0x5403
-- TCSETS = 0x540e
-- TCSETS2 = 0x8030542b
-- TCSETSF = 0x5410
-- TCSETSF2 = 0x8030542d
-- TCSETSW = 0x540f
-- TCSETSW2 = 0x8030542c
-- TCXONC = 0x5406
-- TIOCCBRK = 0x5428
-- TIOCCONS = 0x80047478
-- TIOCEXCL = 0x740d
-- TIOCGDEV = 0x40045432
-- TIOCGETD = 0x7400
-- TIOCGETP = 0x7408
-- TIOCGEXCL = 0x40045440
-- TIOCGICOUNT = 0x5492
-- TIOCGLCKTRMIOS = 0x548b
-- TIOCGLTC = 0x7474
-- TIOCGPGRP = 0x40047477
-- TIOCGPKT = 0x40045438
-- TIOCGPTLCK = 0x40045439
-- TIOCGPTN = 0x40045430
-- TIOCGRS485 = 0x4020542e
-- TIOCGSERIAL = 0x5484
-- TIOCGSID = 0x7416
-- TIOCGSOFTCAR = 0x5481
-- TIOCGWINSZ = 0x40087468
-- TIOCINQ = 0x467f
-- TIOCLINUX = 0x5483
-- TIOCMBIC = 0x741c
-- TIOCMBIS = 0x741b
-- TIOCMGET = 0x741d
-- TIOCMIWAIT = 0x5491
-- TIOCMSET = 0x741a
-- TIOCM_CAR = 0x100
-- TIOCM_CD = 0x100
-- TIOCM_CTS = 0x40
-- TIOCM_DSR = 0x400
-- TIOCM_DTR = 0x2
-- TIOCM_LE = 0x1
-- TIOCM_RI = 0x200
-- TIOCM_RNG = 0x200
-- TIOCM_RTS = 0x4
-- TIOCM_SR = 0x20
-- TIOCM_ST = 0x10
-- TIOCNOTTY = 0x5471
-- TIOCNXCL = 0x740e
-- TIOCOUTQ = 0x7472
-- TIOCPKT = 0x5470
-- TIOCPKT_DATA = 0x0
-- TIOCPKT_DOSTOP = 0x20
-- TIOCPKT_FLUSHREAD = 0x1
-- TIOCPKT_FLUSHWRITE = 0x2
-- TIOCPKT_IOCTL = 0x40
-- TIOCPKT_NOSTOP = 0x10
-- TIOCPKT_START = 0x8
-- TIOCPKT_STOP = 0x4
-- TIOCSBRK = 0x5427
-- TIOCSCTTY = 0x5480
-- TIOCSERCONFIG = 0x5488
-- TIOCSERGETLSR = 0x548e
-- TIOCSERGETMULTI = 0x548f
-- TIOCSERGSTRUCT = 0x548d
-- TIOCSERGWILD = 0x5489
-- TIOCSERSETMULTI = 0x5490
-- TIOCSERSWILD = 0x548a
-- TIOCSER_TEMT = 0x1
-- TIOCSETD = 0x7401
-- TIOCSETN = 0x740a
-- TIOCSETP = 0x7409
-- TIOCSIG = 0x80045436
-- TIOCSLCKTRMIOS = 0x548c
-- TIOCSLTC = 0x7475
-- TIOCSPGRP = 0x80047476
-- TIOCSPTLCK = 0x80045431
-- TIOCSRS485 = 0xc020542f
-- TIOCSSERIAL = 0x5485
-- TIOCSSOFTCAR = 0x5482
-- TIOCSTI = 0x5472
-- TIOCSWINSZ = 0x80087467
-- TIOCVHANGUP = 0x5437
-- TOSTOP = 0x8000
-- TS_COMM_LEN = 0x20
-- TUNATTACHFILTER = 0x800854d5
-- TUNDETACHFILTER = 0x800854d6
-- TUNGETFEATURES = 0x400454cf
-- TUNGETFILTER = 0x400854db
-- TUNGETIFF = 0x400454d2
-- TUNGETSNDBUF = 0x400454d3
-- TUNGETVNETBE = 0x400454df
-- TUNGETVNETHDRSZ = 0x400454d7
-- TUNGETVNETLE = 0x400454dd
-- TUNSETDEBUG = 0x800454c9
-- TUNSETGROUP = 0x800454ce
-- TUNSETIFF = 0x800454ca
-- TUNSETIFINDEX = 0x800454da
-- TUNSETLINK = 0x800454cd
-- TUNSETNOCSUM = 0x800454c8
-- TUNSETOFFLOAD = 0x800454d0
-- TUNSETOWNER = 0x800454cc
-- TUNSETPERSIST = 0x800454cb
-- TUNSETQUEUE = 0x800454d9
-- TUNSETSNDBUF = 0x800454d4
-- TUNSETTXFILTER = 0x800454d1
-- TUNSETVNETBE = 0x800454de
-- TUNSETVNETHDRSZ = 0x800454d8
-- TUNSETVNETLE = 0x800454dc
-- UMOUNT_NOFOLLOW = 0x8
-- VDISCARD = 0xd
-- VEOF = 0x10
-- VEOL = 0x11
-- VEOL2 = 0x6
-- VERASE = 0x2
-- VINTR = 0x0
-- VKILL = 0x3
-- VLNEXT = 0xf
-- VMADDR_CID_ANY = 0xffffffff
-- VMADDR_CID_HOST = 0x2
-- VMADDR_CID_HYPERVISOR = 0x0
-- VMADDR_CID_RESERVED = 0x1
-- VMADDR_PORT_ANY = 0xffffffff
-- VMIN = 0x4
-- VM_SOCKETS_INVALID_VERSION = 0xffffffff
-- VQUIT = 0x1
-- VREPRINT = 0xc
-- VSTART = 0x8
-- VSTOP = 0x9
-- VSUSP = 0xa
-- VSWTC = 0x7
-- VSWTCH = 0x7
-- VT0 = 0x0
-- VT1 = 0x4000
-- VTDLY = 0x4000
-- VTIME = 0x5
-- VWERASE = 0xe
-- WALL = 0x40000000
-- WCLONE = 0x80000000
-- WCONTINUED = 0x8
-- WEXITED = 0x4
-- WNOHANG = 0x1
-- WNOTHREAD = 0x20000000
-- WNOWAIT = 0x1000000
-- WORDSIZE = 0x20
-- WSTOPPED = 0x2
-- WUNTRACED = 0x2
-- XATTR_CREATE = 0x1
-- XATTR_REPLACE = 0x2
-- XCASE = 0x4
-- XTABS = 0x1800
-+ B1000000 = 0x1008
-+ B115200 = 0x1002
-+ B1152000 = 0x1009
-+ B1500000 = 0x100a
-+ B2000000 = 0x100b
-+ B230400 = 0x1003
-+ B2500000 = 0x100c
-+ B3000000 = 0x100d
-+ B3500000 = 0x100e
-+ B4000000 = 0x100f
-+ B460800 = 0x1004
-+ B500000 = 0x1005
-+ B57600 = 0x1001
-+ B576000 = 0x1006
-+ B921600 = 0x1007
-+ BLKBSZGET = 0x40041270
-+ BLKBSZSET = 0x80041271
-+ BLKFLSBUF = 0x20001261
-+ BLKFRAGET = 0x20001265
-+ BLKFRASET = 0x20001264
-+ BLKGETSIZE = 0x20001260
-+ BLKGETSIZE64 = 0x40041272
-+ BLKPBSZGET = 0x2000127b
-+ BLKRAGET = 0x20001263
-+ BLKRASET = 0x20001262
-+ BLKROGET = 0x2000125e
-+ BLKROSET = 0x2000125d
-+ BLKRRPART = 0x2000125f
-+ BLKSECTGET = 0x20001267
-+ BLKSECTSET = 0x20001266
-+ BLKSSZGET = 0x20001268
-+ BOTHER = 0x1000
-+ BS1 = 0x2000
-+ BSDLY = 0x2000
-+ CBAUD = 0x100f
-+ CBAUDEX = 0x1000
-+ CIBAUD = 0x100f0000
-+ CLOCAL = 0x800
-+ CR1 = 0x200
-+ CR2 = 0x400
-+ CR3 = 0x600
-+ CRDLY = 0x600
-+ CREAD = 0x80
-+ CS6 = 0x10
-+ CS7 = 0x20
-+ CS8 = 0x30
-+ CSIZE = 0x30
-+ CSTOPB = 0x40
-+ ECHOCTL = 0x200
-+ ECHOE = 0x10
-+ ECHOK = 0x20
-+ ECHOKE = 0x800
-+ ECHONL = 0x40
-+ ECHOPRT = 0x400
-+ EFD_CLOEXEC = 0x80000
-+ EFD_NONBLOCK = 0x80
-+ EPOLL_CLOEXEC = 0x80000
-+ EXTPROC = 0x10000
-+ FF1 = 0x8000
-+ FFDLY = 0x8000
-+ FLUSHO = 0x2000
-+ FS_IOC_ENABLE_VERITY = 0x80806685
-+ FS_IOC_GETFLAGS = 0x40046601
-+ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
-+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
-+ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
-+ F_GETLK = 0x21
-+ F_GETLK64 = 0x21
-+ F_GETOWN = 0x17
-+ F_RDLCK = 0x0
-+ F_SETLK = 0x22
-+ F_SETLK64 = 0x22
-+ F_SETLKW = 0x23
-+ F_SETLKW64 = 0x23
-+ F_SETOWN = 0x18
-+ F_UNLCK = 0x2
-+ F_WRLCK = 0x1
-+ HUPCL = 0x400
-+ ICANON = 0x2
-+ IEXTEN = 0x100
-+ IN_CLOEXEC = 0x80000
-+ IN_NONBLOCK = 0x80
-+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
-+ ISIG = 0x1
-+ IUCLC = 0x200
-+ IXOFF = 0x1000
-+ IXON = 0x400
-+ MAP_ANON = 0x800
-+ MAP_ANONYMOUS = 0x800
-+ MAP_DENYWRITE = 0x2000
-+ MAP_EXECUTABLE = 0x4000
-+ MAP_GROWSDOWN = 0x1000
-+ MAP_HUGETLB = 0x80000
-+ MAP_LOCKED = 0x8000
-+ MAP_NONBLOCK = 0x20000
-+ MAP_NORESERVE = 0x400
-+ MAP_POPULATE = 0x10000
-+ MAP_RENAME = 0x800
-+ MAP_STACK = 0x40000
-+ MCL_CURRENT = 0x1
-+ MCL_FUTURE = 0x2
-+ MCL_ONFAULT = 0x4
-+ NFDBITS = 0x20
-+ NLDLY = 0x100
-+ NOFLSH = 0x80
-+ NS_GET_NSTYPE = 0x2000b703
-+ NS_GET_OWNER_UID = 0x2000b704
-+ NS_GET_PARENT = 0x2000b702
-+ NS_GET_USERNS = 0x2000b701
-+ OLCUC = 0x2
-+ ONLCR = 0x4
-+ O_APPEND = 0x8
-+ O_ASYNC = 0x1000
-+ O_CLOEXEC = 0x80000
-+ O_CREAT = 0x100
-+ O_DIRECT = 0x8000
-+ O_DIRECTORY = 0x10000
-+ O_DSYNC = 0x10
-+ O_EXCL = 0x400
-+ O_FSYNC = 0x4010
-+ O_LARGEFILE = 0x2000
-+ O_NDELAY = 0x80
-+ O_NOATIME = 0x40000
-+ O_NOCTTY = 0x800
-+ O_NOFOLLOW = 0x20000
-+ O_NONBLOCK = 0x80
-+ O_PATH = 0x200000
-+ O_RSYNC = 0x4010
-+ O_SYNC = 0x4010
-+ O_TMPFILE = 0x410000
-+ O_TRUNC = 0x200
-+ PARENB = 0x100
-+ PARODD = 0x200
-+ PENDIN = 0x4000
-+ PERF_EVENT_IOC_DISABLE = 0x20002401
-+ PERF_EVENT_IOC_ENABLE = 0x20002400
-+ PERF_EVENT_IOC_ID = 0x40042407
-+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8004240b
-+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
-+ PERF_EVENT_IOC_PERIOD = 0x80082404
-+ PERF_EVENT_IOC_QUERY_BPF = 0xc004240a
-+ PERF_EVENT_IOC_REFRESH = 0x20002402
-+ PERF_EVENT_IOC_RESET = 0x20002403
-+ PERF_EVENT_IOC_SET_BPF = 0x80042408
-+ PERF_EVENT_IOC_SET_FILTER = 0x80042406
-+ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
-+ PPPIOCATTACH = 0x8004743d
-+ PPPIOCATTCHAN = 0x80047438
-+ PPPIOCCONNECT = 0x8004743a
-+ PPPIOCDETACH = 0x8004743c
-+ PPPIOCDISCONN = 0x20007439
-+ PPPIOCGASYNCMAP = 0x40047458
-+ PPPIOCGCHAN = 0x40047437
-+ PPPIOCGDEBUG = 0x40047441
-+ PPPIOCGFLAGS = 0x4004745a
-+ PPPIOCGIDLE = 0x4008743f
-+ PPPIOCGIDLE32 = 0x4008743f
-+ PPPIOCGIDLE64 = 0x4010743f
-+ PPPIOCGL2TPSTATS = 0x40487436
-+ PPPIOCGMRU = 0x40047453
-+ PPPIOCGRASYNCMAP = 0x40047455
-+ PPPIOCGUNIT = 0x40047456
-+ PPPIOCGXASYNCMAP = 0x40207450
-+ PPPIOCSACTIVE = 0x80087446
-+ PPPIOCSASYNCMAP = 0x80047457
-+ PPPIOCSCOMPRESS = 0x800c744d
-+ PPPIOCSDEBUG = 0x80047440
-+ PPPIOCSFLAGS = 0x80047459
-+ PPPIOCSMAXCID = 0x80047451
-+ PPPIOCSMRRU = 0x8004743b
-+ PPPIOCSMRU = 0x80047452
-+ PPPIOCSNPMODE = 0x8008744b
-+ PPPIOCSPASS = 0x80087447
-+ PPPIOCSRASYNCMAP = 0x80047454
-+ PPPIOCSXASYNCMAP = 0x8020744f
-+ PPPIOCXFERUNIT = 0x2000744e
-+ PR_SET_PTRACER_ANY = 0xffffffff
-+ PTRACE_GETFPREGS = 0xe
-+ PTRACE_GET_THREAD_AREA = 0x19
-+ PTRACE_GET_THREAD_AREA_3264 = 0xc4
-+ PTRACE_GET_WATCH_REGS = 0xd0
-+ PTRACE_OLDSETOPTIONS = 0x15
-+ PTRACE_PEEKDATA_3264 = 0xc1
-+ PTRACE_PEEKTEXT_3264 = 0xc0
-+ PTRACE_POKEDATA_3264 = 0xc3
-+ PTRACE_POKETEXT_3264 = 0xc2
-+ PTRACE_SETFPREGS = 0xf
-+ PTRACE_SET_THREAD_AREA = 0x1a
-+ PTRACE_SET_WATCH_REGS = 0xd1
-+ RLIMIT_AS = 0x6
-+ RLIMIT_MEMLOCK = 0x9
-+ RLIMIT_NOFILE = 0x5
-+ RLIMIT_NPROC = 0x8
-+ RLIMIT_RSS = 0x7
-+ RNDADDENTROPY = 0x80085203
-+ RNDADDTOENTCNT = 0x80045201
-+ RNDCLEARPOOL = 0x20005206
-+ RNDGETENTCNT = 0x40045200
-+ RNDGETPOOL = 0x40085202
-+ RNDRESEEDCRNG = 0x20005207
-+ RNDZAPENTCNT = 0x20005204
-+ RTC_AIE_OFF = 0x20007002
-+ RTC_AIE_ON = 0x20007001
-+ RTC_ALM_READ = 0x40247008
-+ RTC_ALM_SET = 0x80247007
-+ RTC_EPOCH_READ = 0x4004700d
-+ RTC_EPOCH_SET = 0x8004700e
-+ RTC_IRQP_READ = 0x4004700b
-+ RTC_IRQP_SET = 0x8004700c
-+ RTC_PIE_OFF = 0x20007006
-+ RTC_PIE_ON = 0x20007005
-+ RTC_PLL_GET = 0x401c7011
-+ RTC_PLL_SET = 0x801c7012
-+ RTC_RD_TIME = 0x40247009
-+ RTC_SET_TIME = 0x8024700a
-+ RTC_UIE_OFF = 0x20007004
-+ RTC_UIE_ON = 0x20007003
-+ RTC_VL_CLR = 0x20007014
-+ RTC_VL_READ = 0x40047013
-+ RTC_WIE_OFF = 0x20007010
-+ RTC_WIE_ON = 0x2000700f
-+ RTC_WKALM_RD = 0x40287010
-+ RTC_WKALM_SET = 0x8028700f
-+ SCM_TIMESTAMPING = 0x25
-+ SCM_TIMESTAMPING_OPT_STATS = 0x36
-+ SCM_TIMESTAMPING_PKTINFO = 0x3a
-+ SCM_TIMESTAMPNS = 0x23
-+ SCM_TXTIME = 0x3d
-+ SCM_WIFI_STATUS = 0x29
-+ SFD_CLOEXEC = 0x80000
-+ SFD_NONBLOCK = 0x80
-+ SIOCATMARK = 0x40047307
-+ SIOCGPGRP = 0x40047309
-+ SIOCGSTAMPNS_NEW = 0x40108907
-+ SIOCGSTAMP_NEW = 0x40108906
-+ SIOCINQ = 0x467f
-+ SIOCOUTQ = 0x7472
-+ SIOCSPGRP = 0x80047308
-+ SOCK_CLOEXEC = 0x80000
-+ SOCK_DGRAM = 0x1
-+ SOCK_NONBLOCK = 0x80
-+ SOCK_STREAM = 0x2
-+ SOL_SOCKET = 0xffff
-+ SO_ACCEPTCONN = 0x1009
-+ SO_ATTACH_BPF = 0x32
-+ SO_ATTACH_REUSEPORT_CBPF = 0x33
-+ SO_ATTACH_REUSEPORT_EBPF = 0x34
-+ SO_BINDTODEVICE = 0x19
-+ SO_BINDTOIFINDEX = 0x3e
-+ SO_BPF_EXTENSIONS = 0x30
-+ SO_BROADCAST = 0x20
-+ SO_BSDCOMPAT = 0xe
-+ SO_BUSY_POLL = 0x2e
-+ SO_CNX_ADVICE = 0x35
-+ SO_COOKIE = 0x39
-+ SO_DETACH_REUSEPORT_BPF = 0x44
-+ SO_DOMAIN = 0x1029
-+ SO_DONTROUTE = 0x10
-+ SO_ERROR = 0x1007
-+ SO_INCOMING_CPU = 0x31
-+ SO_INCOMING_NAPI_ID = 0x38
-+ SO_KEEPALIVE = 0x8
-+ SO_LINGER = 0x80
-+ SO_LOCK_FILTER = 0x2c
-+ SO_MARK = 0x24
-+ SO_MAX_PACING_RATE = 0x2f
-+ SO_MEMINFO = 0x37
-+ SO_NOFCS = 0x2b
-+ SO_OOBINLINE = 0x100
-+ SO_PASSCRED = 0x11
-+ SO_PASSSEC = 0x22
-+ SO_PEEK_OFF = 0x2a
-+ SO_PEERCRED = 0x12
-+ SO_PEERGROUPS = 0x3b
-+ SO_PEERSEC = 0x1e
-+ SO_PROTOCOL = 0x1028
-+ SO_RCVBUF = 0x1002
-+ SO_RCVBUFFORCE = 0x21
-+ SO_RCVLOWAT = 0x1004
-+ SO_RCVTIMEO = 0x1006
-+ SO_RCVTIMEO_NEW = 0x42
-+ SO_RCVTIMEO_OLD = 0x1006
-+ SO_REUSEADDR = 0x4
-+ SO_REUSEPORT = 0x200
-+ SO_RXQ_OVFL = 0x28
-+ SO_SECURITY_AUTHENTICATION = 0x16
-+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-+ SO_SELECT_ERR_QUEUE = 0x2d
-+ SO_SNDBUF = 0x1001
-+ SO_SNDBUFFORCE = 0x1f
-+ SO_SNDLOWAT = 0x1003
-+ SO_SNDTIMEO = 0x1005
-+ SO_SNDTIMEO_NEW = 0x43
-+ SO_SNDTIMEO_OLD = 0x1005
-+ SO_STYLE = 0x1008
-+ SO_TIMESTAMPING = 0x25
-+ SO_TIMESTAMPING_NEW = 0x41
-+ SO_TIMESTAMPING_OLD = 0x25
-+ SO_TIMESTAMPNS = 0x23
-+ SO_TIMESTAMPNS_NEW = 0x40
-+ SO_TIMESTAMPNS_OLD = 0x23
-+ SO_TIMESTAMP_NEW = 0x3f
-+ SO_TXTIME = 0x3d
-+ SO_TYPE = 0x1008
-+ SO_WIFI_STATUS = 0x29
-+ SO_ZEROCOPY = 0x3c
-+ TAB1 = 0x800
-+ TAB2 = 0x1000
-+ TAB3 = 0x1800
-+ TABDLY = 0x1800
-+ TCFLSH = 0x5407
-+ TCGETA = 0x5401
-+ TCGETS = 0x540d
-+ TCGETS2 = 0x4030542a
-+ TCSAFLUSH = 0x5410
-+ TCSBRK = 0x5405
-+ TCSBRKP = 0x5486
-+ TCSETA = 0x5402
-+ TCSETAF = 0x5404
-+ TCSETAW = 0x5403
-+ TCSETS = 0x540e
-+ TCSETS2 = 0x8030542b
-+ TCSETSF = 0x5410
-+ TCSETSF2 = 0x8030542d
-+ TCSETSW = 0x540f
-+ TCSETSW2 = 0x8030542c
-+ TCXONC = 0x5406
-+ TIOCCBRK = 0x5428
-+ TIOCCONS = 0x80047478
-+ TIOCEXCL = 0x740d
-+ TIOCGDEV = 0x40045432
-+ TIOCGETD = 0x7400
-+ TIOCGETP = 0x7408
-+ TIOCGEXCL = 0x40045440
-+ TIOCGICOUNT = 0x5492
-+ TIOCGISO7816 = 0x40285442
-+ TIOCGLCKTRMIOS = 0x548b
-+ TIOCGLTC = 0x7474
-+ TIOCGPGRP = 0x40047477
-+ TIOCGPKT = 0x40045438
-+ TIOCGPTLCK = 0x40045439
-+ TIOCGPTN = 0x40045430
-+ TIOCGPTPEER = 0x20005441
-+ TIOCGRS485 = 0x4020542e
-+ TIOCGSERIAL = 0x5484
-+ TIOCGSID = 0x7416
-+ TIOCGSOFTCAR = 0x5481
-+ TIOCGWINSZ = 0x40087468
-+ TIOCINQ = 0x467f
-+ TIOCLINUX = 0x5483
-+ TIOCMBIC = 0x741c
-+ TIOCMBIS = 0x741b
-+ TIOCMGET = 0x741d
-+ TIOCMIWAIT = 0x5491
-+ TIOCMSET = 0x741a
-+ TIOCM_CAR = 0x100
-+ TIOCM_CD = 0x100
-+ TIOCM_CTS = 0x40
-+ TIOCM_DSR = 0x400
-+ TIOCM_RI = 0x200
-+ TIOCM_RNG = 0x200
-+ TIOCM_SR = 0x20
-+ TIOCM_ST = 0x10
-+ TIOCNOTTY = 0x5471
-+ TIOCNXCL = 0x740e
-+ TIOCOUTQ = 0x7472
-+ TIOCPKT = 0x5470
-+ TIOCSBRK = 0x5427
-+ TIOCSCTTY = 0x5480
-+ TIOCSERCONFIG = 0x5488
-+ TIOCSERGETLSR = 0x548e
-+ TIOCSERGETMULTI = 0x548f
-+ TIOCSERGSTRUCT = 0x548d
-+ TIOCSERGWILD = 0x5489
-+ TIOCSERSETMULTI = 0x5490
-+ TIOCSERSWILD = 0x548a
-+ TIOCSER_TEMT = 0x1
-+ TIOCSETD = 0x7401
-+ TIOCSETN = 0x740a
-+ TIOCSETP = 0x7409
-+ TIOCSIG = 0x80045436
-+ TIOCSISO7816 = 0xc0285443
-+ TIOCSLCKTRMIOS = 0x548c
-+ TIOCSLTC = 0x7475
-+ TIOCSPGRP = 0x80047476
-+ TIOCSPTLCK = 0x80045431
-+ TIOCSRS485 = 0xc020542f
-+ TIOCSSERIAL = 0x5485
-+ TIOCSSOFTCAR = 0x5482
-+ TIOCSTI = 0x5472
-+ TIOCSWINSZ = 0x80087467
-+ TIOCVHANGUP = 0x5437
-+ TOSTOP = 0x8000
-+ TUNATTACHFILTER = 0x800854d5
-+ TUNDETACHFILTER = 0x800854d6
-+ TUNGETDEVNETNS = 0x200054e3
-+ TUNGETFEATURES = 0x400454cf
-+ TUNGETFILTER = 0x400854db
-+ TUNGETIFF = 0x400454d2
-+ TUNGETSNDBUF = 0x400454d3
-+ TUNGETVNETBE = 0x400454df
-+ TUNGETVNETHDRSZ = 0x400454d7
-+ TUNGETVNETLE = 0x400454dd
-+ TUNSETCARRIER = 0x800454e2
-+ TUNSETDEBUG = 0x800454c9
-+ TUNSETFILTEREBPF = 0x400454e1
-+ TUNSETGROUP = 0x800454ce
-+ TUNSETIFF = 0x800454ca
-+ TUNSETIFINDEX = 0x800454da
-+ TUNSETLINK = 0x800454cd
-+ TUNSETNOCSUM = 0x800454c8
-+ TUNSETOFFLOAD = 0x800454d0
-+ TUNSETOWNER = 0x800454cc
-+ TUNSETPERSIST = 0x800454cb
-+ TUNSETQUEUE = 0x800454d9
-+ TUNSETSNDBUF = 0x800454d4
-+ TUNSETSTEERINGEBPF = 0x400454e0
-+ TUNSETTXFILTER = 0x800454d1
-+ TUNSETVNETBE = 0x800454de
-+ TUNSETVNETHDRSZ = 0x800454d8
-+ TUNSETVNETLE = 0x800454dc
-+ UBI_IOCATT = 0x80186f40
-+ UBI_IOCDET = 0x80046f41
-+ UBI_IOCEBCH = 0x80044f02
-+ UBI_IOCEBER = 0x80044f01
-+ UBI_IOCEBISMAP = 0x40044f05
-+ UBI_IOCEBMAP = 0x80084f03
-+ UBI_IOCEBUNMAP = 0x80044f04
-+ UBI_IOCMKVOL = 0x80986f00
-+ UBI_IOCRMVOL = 0x80046f01
-+ UBI_IOCRNVOL = 0x91106f03
-+ UBI_IOCRPEB = 0x80046f04
-+ UBI_IOCRSVOL = 0x800c6f02
-+ UBI_IOCSETVOLPROP = 0x80104f06
-+ UBI_IOCSPEB = 0x80046f05
-+ UBI_IOCVOLCRBLK = 0x80804f07
-+ UBI_IOCVOLRMBLK = 0x20004f08
-+ UBI_IOCVOLUP = 0x80084f00
-+ VDISCARD = 0xd
-+ VEOF = 0x10
-+ VEOL = 0x11
-+ VEOL2 = 0x6
-+ VMIN = 0x4
-+ VREPRINT = 0xc
-+ VSTART = 0x8
-+ VSTOP = 0x9
-+ VSUSP = 0xa
-+ VSWTC = 0x7
-+ VSWTCH = 0x7
-+ VT1 = 0x4000
-+ VTDLY = 0x4000
-+ VTIME = 0x5
-+ VWERASE = 0xe
-+ WDIOC_GETBOOTSTATUS = 0x40045702
-+ WDIOC_GETPRETIMEOUT = 0x40045709
-+ WDIOC_GETSTATUS = 0x40045701
-+ WDIOC_GETSUPPORT = 0x40285700
-+ WDIOC_GETTEMP = 0x40045703
-+ WDIOC_GETTIMELEFT = 0x4004570a
-+ WDIOC_GETTIMEOUT = 0x40045707
-+ WDIOC_KEEPALIVE = 0x40045705
-+ WDIOC_SETOPTIONS = 0x40045704
-+ WORDSIZE = 0x20
-+ XCASE = 0x4
-+ XTABS = 0x1800
- )
-
- // Errors
- const (
-- E2BIG = syscall.Errno(0x7)
-- EACCES = syscall.Errno(0xd)
- EADDRINUSE = syscall.Errno(0x7d)
- EADDRNOTAVAIL = syscall.Errno(0x7e)
- EADV = syscall.Errno(0x44)
- EAFNOSUPPORT = syscall.Errno(0x7c)
-- EAGAIN = syscall.Errno(0xb)
- EALREADY = syscall.Errno(0x95)
- EBADE = syscall.Errno(0x32)
-- EBADF = syscall.Errno(0x9)
- EBADFD = syscall.Errno(0x51)
- EBADMSG = syscall.Errno(0x4d)
- EBADR = syscall.Errno(0x33)
- EBADRQC = syscall.Errno(0x36)
- EBADSLT = syscall.Errno(0x37)
- EBFONT = syscall.Errno(0x3b)
-- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x9e)
-- ECHILD = syscall.Errno(0xa)
- ECHRNG = syscall.Errno(0x25)
- ECOMM = syscall.Errno(0x46)
- ECONNABORTED = syscall.Errno(0x82)
-@@ -1886,12 +502,8 @@ const (
- EDEADLK = syscall.Errno(0x2d)
- EDEADLOCK = syscall.Errno(0x38)
- EDESTADDRREQ = syscall.Errno(0x60)
-- EDOM = syscall.Errno(0x21)
- EDOTDOT = syscall.Errno(0x49)
- EDQUOT = syscall.Errno(0x46d)
-- EEXIST = syscall.Errno(0x11)
-- EFAULT = syscall.Errno(0xe)
-- EFBIG = syscall.Errno(0x1b)
- EHOSTDOWN = syscall.Errno(0x93)
- EHOSTUNREACH = syscall.Errno(0x94)
- EHWPOISON = syscall.Errno(0xa8)
-@@ -1899,11 +511,7 @@ const (
- EILSEQ = syscall.Errno(0x58)
- EINIT = syscall.Errno(0x8d)
- EINPROGRESS = syscall.Errno(0x96)
-- EINTR = syscall.Errno(0x4)
-- EINVAL = syscall.Errno(0x16)
-- EIO = syscall.Errno(0x5)
- EISCONN = syscall.Errno(0x85)
-- EISDIR = syscall.Errno(0x15)
- EISNAM = syscall.Errno(0x8b)
- EKEYEXPIRED = syscall.Errno(0xa2)
- EKEYREJECTED = syscall.Errno(0xa4)
-@@ -1920,8 +528,6 @@ const (
- ELNRNG = syscall.Errno(0x29)
- ELOOP = syscall.Errno(0x5a)
- EMEDIUMTYPE = syscall.Errno(0xa0)
-- EMFILE = syscall.Errno(0x18)
-- EMLINK = syscall.Errno(0x1f)
- EMSGSIZE = syscall.Errno(0x61)
- EMULTIHOP = syscall.Errno(0x4a)
- ENAMETOOLONG = syscall.Errno(0x4e)
-@@ -1929,100 +535,68 @@ const (
- ENETDOWN = syscall.Errno(0x7f)
- ENETRESET = syscall.Errno(0x81)
- ENETUNREACH = syscall.Errno(0x80)
-- ENFILE = syscall.Errno(0x17)
- ENOANO = syscall.Errno(0x35)
- ENOBUFS = syscall.Errno(0x84)
- ENOCSI = syscall.Errno(0x2b)
- ENODATA = syscall.Errno(0x3d)
-- ENODEV = syscall.Errno(0x13)
-- ENOENT = syscall.Errno(0x2)
-- ENOEXEC = syscall.Errno(0x8)
- ENOKEY = syscall.Errno(0xa1)
- ENOLCK = syscall.Errno(0x2e)
- ENOLINK = syscall.Errno(0x43)
- ENOMEDIUM = syscall.Errno(0x9f)
-- ENOMEM = syscall.Errno(0xc)
- ENOMSG = syscall.Errno(0x23)
- ENONET = syscall.Errno(0x40)
- ENOPKG = syscall.Errno(0x41)
- ENOPROTOOPT = syscall.Errno(0x63)
-- ENOSPC = syscall.Errno(0x1c)
- ENOSR = syscall.Errno(0x3f)
- ENOSTR = syscall.Errno(0x3c)
- ENOSYS = syscall.Errno(0x59)
-- ENOTBLK = syscall.Errno(0xf)
- ENOTCONN = syscall.Errno(0x86)
-- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x5d)
- ENOTNAM = syscall.Errno(0x89)
- ENOTRECOVERABLE = syscall.Errno(0xa6)
- ENOTSOCK = syscall.Errno(0x5f)
- ENOTSUP = syscall.Errno(0x7a)
-- ENOTTY = syscall.Errno(0x19)
- ENOTUNIQ = syscall.Errno(0x50)
-- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x7a)
- EOVERFLOW = syscall.Errno(0x4f)
- EOWNERDEAD = syscall.Errno(0xa5)
-- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x7b)
-- EPIPE = syscall.Errno(0x20)
- EPROTO = syscall.Errno(0x47)
- EPROTONOSUPPORT = syscall.Errno(0x78)
- EPROTOTYPE = syscall.Errno(0x62)
-- ERANGE = syscall.Errno(0x22)
- EREMCHG = syscall.Errno(0x52)
- EREMDEV = syscall.Errno(0x8e)
- EREMOTE = syscall.Errno(0x42)
- EREMOTEIO = syscall.Errno(0x8c)
- ERESTART = syscall.Errno(0x5b)
- ERFKILL = syscall.Errno(0xa7)
-- EROFS = syscall.Errno(0x1e)
- ESHUTDOWN = syscall.Errno(0x8f)
- ESOCKTNOSUPPORT = syscall.Errno(0x79)
-- ESPIPE = syscall.Errno(0x1d)
-- ESRCH = syscall.Errno(0x3)
- ESRMNT = syscall.Errno(0x45)
- ESTALE = syscall.Errno(0x97)
- ESTRPIPE = syscall.Errno(0x5c)
- ETIME = syscall.Errno(0x3e)
- ETIMEDOUT = syscall.Errno(0x91)
- ETOOMANYREFS = syscall.Errno(0x90)
-- ETXTBSY = syscall.Errno(0x1a)
- EUCLEAN = syscall.Errno(0x87)
- EUNATCH = syscall.Errno(0x2a)
- EUSERS = syscall.Errno(0x5e)
-- EWOULDBLOCK = syscall.Errno(0xb)
-- EXDEV = syscall.Errno(0x12)
- EXFULL = syscall.Errno(0x34)
- )
-
- // Signals
- const (
-- SIGABRT = syscall.Signal(0x6)
-- SIGALRM = syscall.Signal(0xe)
- SIGBUS = syscall.Signal(0xa)
- SIGCHLD = syscall.Signal(0x12)
- SIGCLD = syscall.Signal(0x12)
- SIGCONT = syscall.Signal(0x19)
- SIGEMT = syscall.Signal(0x7)
-- SIGFPE = syscall.Signal(0x8)
-- SIGHUP = syscall.Signal(0x1)
-- SIGILL = syscall.Signal(0x4)
-- SIGINT = syscall.Signal(0x2)
- SIGIO = syscall.Signal(0x16)
-- SIGIOT = syscall.Signal(0x6)
-- SIGKILL = syscall.Signal(0x9)
-- SIGPIPE = syscall.Signal(0xd)
- SIGPOLL = syscall.Signal(0x16)
- SIGPROF = syscall.Signal(0x1d)
- SIGPWR = syscall.Signal(0x13)
-- SIGQUIT = syscall.Signal(0x3)
-- SIGSEGV = syscall.Signal(0xb)
- SIGSTOP = syscall.Signal(0x17)
- SIGSYS = syscall.Signal(0xc)
-- SIGTERM = syscall.Signal(0xf)
-- SIGTRAP = syscall.Signal(0x5)
- SIGTSTP = syscall.Signal(0x18)
- SIGTTIN = syscall.Signal(0x1a)
- SIGTTOU = syscall.Signal(0x1b)
-@@ -2036,174 +610,182 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "no such device or address",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource temporarily unavailable",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device or resource busy",
-- 17: "file exists",
-- 18: "invalid cross-device link",
-- 19: "no such device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "numerical result out of range",
-- 35: "no message of desired type",
-- 36: "identifier removed",
-- 37: "channel number out of range",
-- 38: "level 2 not synchronized",
-- 39: "level 3 halted",
-- 40: "level 3 reset",
-- 41: "link number out of range",
-- 42: "protocol driver not attached",
-- 43: "no CSI structure available",
-- 44: "level 2 halted",
-- 45: "resource deadlock avoided",
-- 46: "no locks available",
-- 50: "invalid exchange",
-- 51: "invalid request descriptor",
-- 52: "exchange full",
-- 53: "no anode",
-- 54: "invalid request code",
-- 55: "invalid slot",
-- 56: "file locking deadlock error",
-- 59: "bad font file format",
-- 60: "device not a stream",
-- 61: "no data available",
-- 62: "timer expired",
-- 63: "out of streams resources",
-- 64: "machine is not on the network",
-- 65: "package not installed",
-- 66: "object is remote",
-- 67: "link has been severed",
-- 68: "advertise error",
-- 69: "srmount error",
-- 70: "communication error on send",
-- 71: "protocol error",
-- 73: "RFS specific error",
-- 74: "multihop attempted",
-- 77: "bad message",
-- 78: "file name too long",
-- 79: "value too large for defined data type",
-- 80: "name not unique on network",
-- 81: "file descriptor in bad state",
-- 82: "remote address changed",
-- 83: "can not access a needed shared library",
-- 84: "accessing a corrupted shared library",
-- 85: ".lib section in a.out corrupted",
-- 86: "attempting to link in too many shared libraries",
-- 87: "cannot exec a shared library directly",
-- 88: "invalid or incomplete multibyte or wide character",
-- 89: "function not implemented",
-- 90: "too many levels of symbolic links",
-- 91: "interrupted system call should be restarted",
-- 92: "streams pipe error",
-- 93: "directory not empty",
-- 94: "too many users",
-- 95: "socket operation on non-socket",
-- 96: "destination address required",
-- 97: "message too long",
-- 98: "protocol wrong type for socket",
-- 99: "protocol not available",
-- 120: "protocol not supported",
-- 121: "socket type not supported",
-- 122: "operation not supported",
-- 123: "protocol family not supported",
-- 124: "address family not supported by protocol",
-- 125: "address already in use",
-- 126: "cannot assign requested address",
-- 127: "network is down",
-- 128: "network is unreachable",
-- 129: "network dropped connection on reset",
-- 130: "software caused connection abort",
-- 131: "connection reset by peer",
-- 132: "no buffer space available",
-- 133: "transport endpoint is already connected",
-- 134: "transport endpoint is not connected",
-- 135: "structure needs cleaning",
-- 137: "not a XENIX named type file",
-- 138: "no XENIX semaphores available",
-- 139: "is a named type file",
-- 140: "remote I/O error",
-- 141: "unknown error 141",
-- 142: "unknown error 142",
-- 143: "cannot send after transport endpoint shutdown",
-- 144: "too many references: cannot splice",
-- 145: "connection timed out",
-- 146: "connection refused",
-- 147: "host is down",
-- 148: "no route to host",
-- 149: "operation already in progress",
-- 150: "operation now in progress",
-- 151: "stale file handle",
-- 158: "operation canceled",
-- 159: "no medium found",
-- 160: "wrong medium type",
-- 161: "required key not available",
-- 162: "key has expired",
-- 163: "key has been revoked",
-- 164: "key was rejected by service",
-- 165: "owner died",
-- 166: "state not recoverable",
-- 167: "operation not possible due to RF-kill",
-- 168: "memory page has hardware error",
-- 1133: "disk quota exceeded",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device or resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "invalid cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "numerical result out of range"},
-+ {35, "ENOMSG", "no message of desired type"},
-+ {36, "EIDRM", "identifier removed"},
-+ {37, "ECHRNG", "channel number out of range"},
-+ {38, "EL2NSYNC", "level 2 not synchronized"},
-+ {39, "EL3HLT", "level 3 halted"},
-+ {40, "EL3RST", "level 3 reset"},
-+ {41, "ELNRNG", "link number out of range"},
-+ {42, "EUNATCH", "protocol driver not attached"},
-+ {43, "ENOCSI", "no CSI structure available"},
-+ {44, "EL2HLT", "level 2 halted"},
-+ {45, "EDEADLK", "resource deadlock avoided"},
-+ {46, "ENOLCK", "no locks available"},
-+ {50, "EBADE", "invalid exchange"},
-+ {51, "EBADR", "invalid request descriptor"},
-+ {52, "EXFULL", "exchange full"},
-+ {53, "ENOANO", "no anode"},
-+ {54, "EBADRQC", "invalid request code"},
-+ {55, "EBADSLT", "invalid slot"},
-+ {56, "EDEADLOCK", "file locking deadlock error"},
-+ {59, "EBFONT", "bad font file format"},
-+ {60, "ENOSTR", "device not a stream"},
-+ {61, "ENODATA", "no data available"},
-+ {62, "ETIME", "timer expired"},
-+ {63, "ENOSR", "out of streams resources"},
-+ {64, "ENONET", "machine is not on the network"},
-+ {65, "ENOPKG", "package not installed"},
-+ {66, "EREMOTE", "object is remote"},
-+ {67, "ENOLINK", "link has been severed"},
-+ {68, "EADV", "advertise error"},
-+ {69, "ESRMNT", "srmount error"},
-+ {70, "ECOMM", "communication error on send"},
-+ {71, "EPROTO", "protocol error"},
-+ {73, "EDOTDOT", "RFS specific error"},
-+ {74, "EMULTIHOP", "multihop attempted"},
-+ {77, "EBADMSG", "bad message"},
-+ {78, "ENAMETOOLONG", "file name too long"},
-+ {79, "EOVERFLOW", "value too large for defined data type"},
-+ {80, "ENOTUNIQ", "name not unique on network"},
-+ {81, "EBADFD", "file descriptor in bad state"},
-+ {82, "EREMCHG", "remote address changed"},
-+ {83, "ELIBACC", "can not access a needed shared library"},
-+ {84, "ELIBBAD", "accessing a corrupted shared library"},
-+ {85, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {86, "ELIBMAX", "attempting to link in too many shared libraries"},
-+ {87, "ELIBEXEC", "cannot exec a shared library directly"},
-+ {88, "EILSEQ", "invalid or incomplete multibyte or wide character"},
-+ {89, "ENOSYS", "function not implemented"},
-+ {90, "ELOOP", "too many levels of symbolic links"},
-+ {91, "ERESTART", "interrupted system call should be restarted"},
-+ {92, "ESTRPIPE", "streams pipe error"},
-+ {93, "ENOTEMPTY", "directory not empty"},
-+ {94, "EUSERS", "too many users"},
-+ {95, "ENOTSOCK", "socket operation on non-socket"},
-+ {96, "EDESTADDRREQ", "destination address required"},
-+ {97, "EMSGSIZE", "message too long"},
-+ {98, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {99, "ENOPROTOOPT", "protocol not available"},
-+ {120, "EPROTONOSUPPORT", "protocol not supported"},
-+ {121, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {122, "ENOTSUP", "operation not supported"},
-+ {123, "EPFNOSUPPORT", "protocol family not supported"},
-+ {124, "EAFNOSUPPORT", "address family not supported by protocol"},
-+ {125, "EADDRINUSE", "address already in use"},
-+ {126, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {127, "ENETDOWN", "network is down"},
-+ {128, "ENETUNREACH", "network is unreachable"},
-+ {129, "ENETRESET", "network dropped connection on reset"},
-+ {130, "ECONNABORTED", "software caused connection abort"},
-+ {131, "ECONNRESET", "connection reset by peer"},
-+ {132, "ENOBUFS", "no buffer space available"},
-+ {133, "EISCONN", "transport endpoint is already connected"},
-+ {134, "ENOTCONN", "transport endpoint is not connected"},
-+ {135, "EUCLEAN", "structure needs cleaning"},
-+ {137, "ENOTNAM", "not a XENIX named type file"},
-+ {138, "ENAVAIL", "no XENIX semaphores available"},
-+ {139, "EISNAM", "is a named type file"},
-+ {140, "EREMOTEIO", "remote I/O error"},
-+ {141, "EINIT", "unknown error 141"},
-+ {142, "EREMDEV", "unknown error 142"},
-+ {143, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
-+ {144, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {145, "ETIMEDOUT", "connection timed out"},
-+ {146, "ECONNREFUSED", "connection refused"},
-+ {147, "EHOSTDOWN", "host is down"},
-+ {148, "EHOSTUNREACH", "no route to host"},
-+ {149, "EALREADY", "operation already in progress"},
-+ {150, "EINPROGRESS", "operation now in progress"},
-+ {151, "ESTALE", "stale file handle"},
-+ {158, "ECANCELED", "operation canceled"},
-+ {159, "ENOMEDIUM", "no medium found"},
-+ {160, "EMEDIUMTYPE", "wrong medium type"},
-+ {161, "ENOKEY", "required key not available"},
-+ {162, "EKEYEXPIRED", "key has expired"},
-+ {163, "EKEYREVOKED", "key has been revoked"},
-+ {164, "EKEYREJECTED", "key was rejected by service"},
-+ {165, "EOWNERDEAD", "owner died"},
-+ {166, "ENOTRECOVERABLE", "state not recoverable"},
-+ {167, "ERFKILL", "operation not possible due to RF-kill"},
-+ {168, "EHWPOISON", "memory page has hardware error"},
-+ {1133, "EDQUOT", "disk quota exceeded"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/breakpoint trap",
-- 6: "aborted",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "user defined signal 1",
-- 17: "user defined signal 2",
-- 18: "child exited",
-- 19: "power failure",
-- 20: "window changed",
-- 21: "urgent I/O condition",
-- 22: "I/O possible",
-- 23: "stopped (signal)",
-- 24: "stopped",
-- 25: "continued",
-- 26: "stopped (tty input)",
-- 27: "stopped (tty output)",
-- 28: "virtual timer expired",
-- 29: "profiling timer expired",
-- 30: "CPU time limit exceeded",
-- 31: "file size limit exceeded",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/breakpoint trap"},
-+ {6, "SIGABRT", "aborted"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGUSR1", "user defined signal 1"},
-+ {17, "SIGUSR2", "user defined signal 2"},
-+ {18, "SIGCHLD", "child exited"},
-+ {19, "SIGPWR", "power failure"},
-+ {20, "SIGWINCH", "window changed"},
-+ {21, "SIGURG", "urgent I/O condition"},
-+ {22, "SIGIO", "I/O possible"},
-+ {23, "SIGSTOP", "stopped (signal)"},
-+ {24, "SIGTSTP", "stopped"},
-+ {25, "SIGCONT", "continued"},
-+ {26, "SIGTTIN", "stopped (tty input)"},
-+ {27, "SIGTTOU", "stopped (tty output)"},
-+ {28, "SIGVTALRM", "virtual timer expired"},
-+ {29, "SIGPROF", "profiling timer expired"},
-+ {30, "SIGXCPU", "CPU time limit exceeded"},
-+ {31, "SIGXFSZ", "file size limit exceeded"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
-index 4148f277..2346dc55 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
-@@ -3,7 +3,7 @@
-
- // +build mips64,linux
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
-
- package unix
-@@ -11,1873 +11,489 @@ package unix
- import "syscall"
-
- const (
-- AF_ALG = 0x26
-- AF_APPLETALK = 0x5
-- AF_ASH = 0x12
-- AF_ATMPVC = 0x8
-- AF_ATMSVC = 0x14
-- AF_AX25 = 0x3
-- AF_BLUETOOTH = 0x1f
-- AF_BRIDGE = 0x7
-- AF_CAIF = 0x25
-- AF_CAN = 0x1d
-- AF_DECnet = 0xc
-- AF_ECONET = 0x13
-- AF_FILE = 0x1
-- AF_IB = 0x1b
-- AF_IEEE802154 = 0x24
-- AF_INET = 0x2
-- AF_INET6 = 0xa
-- AF_IPX = 0x4
-- AF_IRDA = 0x17
-- AF_ISDN = 0x22
-- AF_IUCV = 0x20
-- AF_KCM = 0x29
-- AF_KEY = 0xf
-- AF_LLC = 0x1a
-- AF_LOCAL = 0x1
-- AF_MAX = 0x2b
-- AF_MPLS = 0x1c
-- AF_NETBEUI = 0xd
-- AF_NETLINK = 0x10
-- AF_NETROM = 0x6
-- AF_NFC = 0x27
-- AF_PACKET = 0x11
-- AF_PHONET = 0x23
-- AF_PPPOX = 0x18
-- AF_QIPCRTR = 0x2a
-- AF_RDS = 0x15
-- AF_ROSE = 0xb
-- AF_ROUTE = 0x10
-- AF_RXRPC = 0x21
-- AF_SECURITY = 0xe
-- AF_SNA = 0x16
-- AF_TIPC = 0x1e
-- AF_UNIX = 0x1
-- AF_UNSPEC = 0x0
-- AF_VSOCK = 0x28
-- AF_WANPIPE = 0x19
-- AF_X25 = 0x9
-- ALG_OP_DECRYPT = 0x0
-- ALG_OP_ENCRYPT = 0x1
-- ALG_SET_AEAD_ASSOCLEN = 0x4
-- ALG_SET_AEAD_AUTHSIZE = 0x5
-- ALG_SET_IV = 0x2
-- ALG_SET_KEY = 0x1
-- ALG_SET_OP = 0x3
-- ARPHRD_6LOWPAN = 0x339
-- ARPHRD_ADAPT = 0x108
-- ARPHRD_APPLETLK = 0x8
-- ARPHRD_ARCNET = 0x7
-- ARPHRD_ASH = 0x30d
-- ARPHRD_ATM = 0x13
-- ARPHRD_AX25 = 0x3
-- ARPHRD_BIF = 0x307
-- ARPHRD_CAIF = 0x336
-- ARPHRD_CAN = 0x118
-- ARPHRD_CHAOS = 0x5
-- ARPHRD_CISCO = 0x201
-- ARPHRD_CSLIP = 0x101
-- ARPHRD_CSLIP6 = 0x103
-- ARPHRD_DDCMP = 0x205
-- ARPHRD_DLCI = 0xf
-- ARPHRD_ECONET = 0x30e
-- ARPHRD_EETHER = 0x2
-- ARPHRD_ETHER = 0x1
-- ARPHRD_EUI64 = 0x1b
-- ARPHRD_FCAL = 0x311
-- ARPHRD_FCFABRIC = 0x313
-- ARPHRD_FCPL = 0x312
-- ARPHRD_FCPP = 0x310
-- ARPHRD_FDDI = 0x306
-- ARPHRD_FRAD = 0x302
-- ARPHRD_HDLC = 0x201
-- ARPHRD_HIPPI = 0x30c
-- ARPHRD_HWX25 = 0x110
-- ARPHRD_IEEE1394 = 0x18
-- ARPHRD_IEEE802 = 0x6
-- ARPHRD_IEEE80211 = 0x321
-- ARPHRD_IEEE80211_PRISM = 0x322
-- ARPHRD_IEEE80211_RADIOTAP = 0x323
-- ARPHRD_IEEE802154 = 0x324
-- ARPHRD_IEEE802154_MONITOR = 0x325
-- ARPHRD_IEEE802_TR = 0x320
-- ARPHRD_INFINIBAND = 0x20
-- ARPHRD_IP6GRE = 0x337
-- ARPHRD_IPDDP = 0x309
-- ARPHRD_IPGRE = 0x30a
-- ARPHRD_IRDA = 0x30f
-- ARPHRD_LAPB = 0x204
-- ARPHRD_LOCALTLK = 0x305
-- ARPHRD_LOOPBACK = 0x304
-- ARPHRD_METRICOM = 0x17
-- ARPHRD_NETLINK = 0x338
-- ARPHRD_NETROM = 0x0
-- ARPHRD_NONE = 0xfffe
-- ARPHRD_PHONET = 0x334
-- ARPHRD_PHONET_PIPE = 0x335
-- ARPHRD_PIMREG = 0x30b
-- ARPHRD_PPP = 0x200
-- ARPHRD_PRONET = 0x4
-- ARPHRD_RAWHDLC = 0x206
-- ARPHRD_ROSE = 0x10e
-- ARPHRD_RSRVD = 0x104
-- ARPHRD_SIT = 0x308
-- ARPHRD_SKIP = 0x303
-- ARPHRD_SLIP = 0x100
-- ARPHRD_SLIP6 = 0x102
-- ARPHRD_TUNNEL = 0x300
-- ARPHRD_TUNNEL6 = 0x301
-- ARPHRD_VOID = 0xffff
-- ARPHRD_X25 = 0x10f
-- B0 = 0x0
-- B1000000 = 0x1008
-- B110 = 0x3
-- B115200 = 0x1002
-- B1152000 = 0x1009
-- B1200 = 0x9
-- B134 = 0x4
-- B150 = 0x5
-- B1500000 = 0x100a
-- B1800 = 0xa
-- B19200 = 0xe
-- B200 = 0x6
-- B2000000 = 0x100b
-- B230400 = 0x1003
-- B2400 = 0xb
-- B2500000 = 0x100c
-- B300 = 0x7
-- B3000000 = 0x100d
-- B3500000 = 0x100e
-- B38400 = 0xf
-- B4000000 = 0x100f
-- B460800 = 0x1004
-- B4800 = 0xc
-- B50 = 0x1
-- B500000 = 0x1005
-- B57600 = 0x1001
-- B576000 = 0x1006
-- B600 = 0x8
-- B75 = 0x2
-- B921600 = 0x1007
-- B9600 = 0xd
-- BLKBSZGET = 0x40081270
-- BLKBSZSET = 0x80081271
-- BLKFLSBUF = 0x20001261
-- BLKFRAGET = 0x20001265
-- BLKFRASET = 0x20001264
-- BLKGETSIZE = 0x20001260
-- BLKGETSIZE64 = 0x40081272
-- BLKPBSZGET = 0x2000127b
-- BLKRAGET = 0x20001263
-- BLKRASET = 0x20001262
-- BLKROGET = 0x2000125e
-- BLKROSET = 0x2000125d
-- BLKRRPART = 0x2000125f
-- BLKSECTGET = 0x20001267
-- BLKSECTSET = 0x20001266
-- BLKSSZGET = 0x20001268
-- BOTHER = 0x1000
-- BPF_A = 0x10
-- BPF_ABS = 0x20
-- BPF_ADD = 0x0
-- BPF_ALU = 0x4
-- BPF_AND = 0x50
-- BPF_B = 0x10
-- BPF_DIV = 0x30
-- BPF_H = 0x8
-- BPF_IMM = 0x0
-- BPF_IND = 0x40
-- BPF_JA = 0x0
-- BPF_JEQ = 0x10
-- BPF_JGE = 0x30
-- BPF_JGT = 0x20
-- BPF_JMP = 0x5
-- BPF_JSET = 0x40
-- BPF_K = 0x0
-- BPF_LD = 0x0
-- BPF_LDX = 0x1
-- BPF_LEN = 0x80
-- BPF_LL_OFF = -0x200000
-- BPF_LSH = 0x60
-- BPF_MAJOR_VERSION = 0x1
-- BPF_MAXINSNS = 0x1000
-- BPF_MEM = 0x60
-- BPF_MEMWORDS = 0x10
-- BPF_MINOR_VERSION = 0x1
-- BPF_MISC = 0x7
-- BPF_MOD = 0x90
-- BPF_MSH = 0xa0
-- BPF_MUL = 0x20
-- BPF_NEG = 0x80
-- BPF_NET_OFF = -0x100000
-- BPF_OR = 0x40
-- BPF_RET = 0x6
-- BPF_RSH = 0x70
-- BPF_ST = 0x2
-- BPF_STX = 0x3
-- BPF_SUB = 0x10
-- BPF_TAX = 0x0
-- BPF_TXA = 0x80
-- BPF_W = 0x0
-- BPF_X = 0x8
-- BPF_XOR = 0xa0
-- BRKINT = 0x2
-- BS0 = 0x0
-- BS1 = 0x2000
-- BSDLY = 0x2000
-- CAN_BCM = 0x2
-- CAN_EFF_FLAG = 0x80000000
-- CAN_EFF_ID_BITS = 0x1d
-- CAN_EFF_MASK = 0x1fffffff
-- CAN_ERR_FLAG = 0x20000000
-- CAN_ERR_MASK = 0x1fffffff
-- CAN_INV_FILTER = 0x20000000
-- CAN_ISOTP = 0x6
-- CAN_MAX_DLC = 0x8
-- CAN_MAX_DLEN = 0x8
-- CAN_MCNET = 0x5
-- CAN_MTU = 0x10
-- CAN_NPROTO = 0x7
-- CAN_RAW = 0x1
-- CAN_RAW_FILTER_MAX = 0x200
-- CAN_RTR_FLAG = 0x40000000
-- CAN_SFF_ID_BITS = 0xb
-- CAN_SFF_MASK = 0x7ff
-- CAN_TP16 = 0x3
-- CAN_TP20 = 0x4
-- CBAUD = 0x100f
-- CBAUDEX = 0x1000
-- CFLUSH = 0xf
-- CIBAUD = 0x100f0000
-- CLOCAL = 0x800
-- CLOCK_BOOTTIME = 0x7
-- CLOCK_BOOTTIME_ALARM = 0x9
-- CLOCK_DEFAULT = 0x0
-- CLOCK_EXT = 0x1
-- CLOCK_INT = 0x2
-- CLOCK_MONOTONIC = 0x1
-- CLOCK_MONOTONIC_COARSE = 0x6
-- CLOCK_MONOTONIC_RAW = 0x4
-- CLOCK_PROCESS_CPUTIME_ID = 0x2
-- CLOCK_REALTIME = 0x0
-- CLOCK_REALTIME_ALARM = 0x8
-- CLOCK_REALTIME_COARSE = 0x5
-- CLOCK_TAI = 0xb
-- CLOCK_THREAD_CPUTIME_ID = 0x3
-- CLOCK_TXFROMRX = 0x4
-- CLOCK_TXINT = 0x3
-- CLONE_CHILD_CLEARTID = 0x200000
-- CLONE_CHILD_SETTID = 0x1000000
-- CLONE_DETACHED = 0x400000
-- CLONE_FILES = 0x400
-- CLONE_FS = 0x200
-- CLONE_IO = 0x80000000
-- CLONE_NEWCGROUP = 0x2000000
-- CLONE_NEWIPC = 0x8000000
-- CLONE_NEWNET = 0x40000000
-- CLONE_NEWNS = 0x20000
-- CLONE_NEWPID = 0x20000000
-- CLONE_NEWUSER = 0x10000000
-- CLONE_NEWUTS = 0x4000000
-- CLONE_PARENT = 0x8000
-- CLONE_PARENT_SETTID = 0x100000
-- CLONE_PTRACE = 0x2000
-- CLONE_SETTLS = 0x80000
-- CLONE_SIGHAND = 0x800
-- CLONE_SYSVSEM = 0x40000
-- CLONE_THREAD = 0x10000
-- CLONE_UNTRACED = 0x800000
-- CLONE_VFORK = 0x4000
-- CLONE_VM = 0x100
-- CMSPAR = 0x40000000
-- CR0 = 0x0
-- CR1 = 0x200
-- CR2 = 0x400
-- CR3 = 0x600
-- CRDLY = 0x600
-- CREAD = 0x80
-- CRTSCTS = 0x80000000
-- CS5 = 0x0
-- CS6 = 0x10
-- CS7 = 0x20
-- CS8 = 0x30
-- CSIGNAL = 0xff
-- CSIZE = 0x30
-- CSTART = 0x11
-- CSTATUS = 0x0
-- CSTOP = 0x13
-- CSTOPB = 0x40
-- CSUSP = 0x1a
-- DT_BLK = 0x6
-- DT_CHR = 0x2
-- DT_DIR = 0x4
-- DT_FIFO = 0x1
-- DT_LNK = 0xa
-- DT_REG = 0x8
-- DT_SOCK = 0xc
-- DT_UNKNOWN = 0x0
-- DT_WHT = 0xe
-- ECHO = 0x8
-- ECHOCTL = 0x200
-- ECHOE = 0x10
-- ECHOK = 0x20
-- ECHOKE = 0x800
-- ECHONL = 0x40
-- ECHOPRT = 0x400
-- EFD_CLOEXEC = 0x80000
-- EFD_NONBLOCK = 0x80
-- EFD_SEMAPHORE = 0x1
-- ENCODING_DEFAULT = 0x0
-- ENCODING_FM_MARK = 0x3
-- ENCODING_FM_SPACE = 0x4
-- ENCODING_MANCHESTER = 0x5
-- ENCODING_NRZ = 0x1
-- ENCODING_NRZI = 0x2
-- EPOLLERR = 0x8
-- EPOLLET = 0x80000000
-- EPOLLEXCLUSIVE = 0x10000000
-- EPOLLHUP = 0x10
-- EPOLLIN = 0x1
-- EPOLLMSG = 0x400
-- EPOLLONESHOT = 0x40000000
-- EPOLLOUT = 0x4
-- EPOLLPRI = 0x2
-- EPOLLRDBAND = 0x80
-- EPOLLRDHUP = 0x2000
-- EPOLLRDNORM = 0x40
-- EPOLLWAKEUP = 0x20000000
-- EPOLLWRBAND = 0x200
-- EPOLLWRNORM = 0x100
-- EPOLL_CLOEXEC = 0x80000
-- EPOLL_CTL_ADD = 0x1
-- EPOLL_CTL_DEL = 0x2
-- EPOLL_CTL_MOD = 0x3
-- ETH_P_1588 = 0x88f7
-- ETH_P_8021AD = 0x88a8
-- ETH_P_8021AH = 0x88e7
-- ETH_P_8021Q = 0x8100
-- ETH_P_80221 = 0x8917
-- ETH_P_802_2 = 0x4
-- ETH_P_802_3 = 0x1
-- ETH_P_802_3_MIN = 0x600
-- ETH_P_802_EX1 = 0x88b5
-- ETH_P_AARP = 0x80f3
-- ETH_P_AF_IUCV = 0xfbfb
-- ETH_P_ALL = 0x3
-- ETH_P_AOE = 0x88a2
-- ETH_P_ARCNET = 0x1a
-- ETH_P_ARP = 0x806
-- ETH_P_ATALK = 0x809b
-- ETH_P_ATMFATE = 0x8884
-- ETH_P_ATMMPOA = 0x884c
-- ETH_P_AX25 = 0x2
-- ETH_P_BATMAN = 0x4305
-- ETH_P_BPQ = 0x8ff
-- ETH_P_CAIF = 0xf7
-- ETH_P_CAN = 0xc
-- ETH_P_CANFD = 0xd
-- ETH_P_CONTROL = 0x16
-- ETH_P_CUST = 0x6006
-- ETH_P_DDCMP = 0x6
-- ETH_P_DEC = 0x6000
-- ETH_P_DIAG = 0x6005
-- ETH_P_DNA_DL = 0x6001
-- ETH_P_DNA_RC = 0x6002
-- ETH_P_DNA_RT = 0x6003
-- ETH_P_DSA = 0x1b
-- ETH_P_ECONET = 0x18
-- ETH_P_EDSA = 0xdada
-- ETH_P_FCOE = 0x8906
-- ETH_P_FIP = 0x8914
-- ETH_P_HDLC = 0x19
-- ETH_P_HSR = 0x892f
-- ETH_P_IEEE802154 = 0xf6
-- ETH_P_IEEEPUP = 0xa00
-- ETH_P_IEEEPUPAT = 0xa01
-- ETH_P_IP = 0x800
-- ETH_P_IPV6 = 0x86dd
-- ETH_P_IPX = 0x8137
-- ETH_P_IRDA = 0x17
-- ETH_P_LAT = 0x6004
-- ETH_P_LINK_CTL = 0x886c
-- ETH_P_LOCALTALK = 0x9
-- ETH_P_LOOP = 0x60
-- ETH_P_LOOPBACK = 0x9000
-- ETH_P_MACSEC = 0x88e5
-- ETH_P_MOBITEX = 0x15
-- ETH_P_MPLS_MC = 0x8848
-- ETH_P_MPLS_UC = 0x8847
-- ETH_P_MVRP = 0x88f5
-- ETH_P_NCSI = 0x88f8
-- ETH_P_PAE = 0x888e
-- ETH_P_PAUSE = 0x8808
-- ETH_P_PHONET = 0xf5
-- ETH_P_PPPTALK = 0x10
-- ETH_P_PPP_DISC = 0x8863
-- ETH_P_PPP_MP = 0x8
-- ETH_P_PPP_SES = 0x8864
-- ETH_P_PRP = 0x88fb
-- ETH_P_PUP = 0x200
-- ETH_P_PUPAT = 0x201
-- ETH_P_QINQ1 = 0x9100
-- ETH_P_QINQ2 = 0x9200
-- ETH_P_QINQ3 = 0x9300
-- ETH_P_RARP = 0x8035
-- ETH_P_SCA = 0x6007
-- ETH_P_SLOW = 0x8809
-- ETH_P_SNAP = 0x5
-- ETH_P_TDLS = 0x890d
-- ETH_P_TEB = 0x6558
-- ETH_P_TIPC = 0x88ca
-- ETH_P_TRAILER = 0x1c
-- ETH_P_TR_802_2 = 0x11
-- ETH_P_TSN = 0x22f0
-- ETH_P_WAN_PPP = 0x7
-- ETH_P_WCCP = 0x883e
-- ETH_P_X25 = 0x805
-- ETH_P_XDSA = 0xf8
-- EXTA = 0xe
-- EXTB = 0xf
-- EXTPROC = 0x10000
-- FALLOC_FL_COLLAPSE_RANGE = 0x8
-- FALLOC_FL_INSERT_RANGE = 0x20
-- FALLOC_FL_KEEP_SIZE = 0x1
-- FALLOC_FL_NO_HIDE_STALE = 0x4
-- FALLOC_FL_PUNCH_HOLE = 0x2
-- FALLOC_FL_UNSHARE_RANGE = 0x40
-- FALLOC_FL_ZERO_RANGE = 0x10
-- FD_CLOEXEC = 0x1
-- FD_SETSIZE = 0x400
-- FF0 = 0x0
-- FF1 = 0x8000
-- FFDLY = 0x8000
-- FLUSHO = 0x2000
-- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
-- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
-- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
-- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
-- FS_ENCRYPTION_MODE_INVALID = 0x0
-- FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
-- FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
-- FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
-- FS_KEY_DESCRIPTOR_SIZE = 0x8
-- FS_KEY_DESC_PREFIX = "fscrypt:"
-- FS_KEY_DESC_PREFIX_SIZE = 0x8
-- FS_MAX_KEY_SIZE = 0x40
-- FS_POLICY_FLAGS_PAD_16 = 0x2
-- FS_POLICY_FLAGS_PAD_32 = 0x3
-- FS_POLICY_FLAGS_PAD_4 = 0x0
-- FS_POLICY_FLAGS_PAD_8 = 0x1
-- FS_POLICY_FLAGS_PAD_MASK = 0x3
-- FS_POLICY_FLAGS_VALID = 0x3
-- F_DUPFD = 0x0
-- F_DUPFD_CLOEXEC = 0x406
-- F_EXLCK = 0x4
-- F_GETFD = 0x1
-- F_GETFL = 0x3
-- F_GETLEASE = 0x401
-- F_GETLK = 0xe
-- F_GETLK64 = 0xe
-- F_GETOWN = 0x17
-- F_GETOWN_EX = 0x10
-- F_GETPIPE_SZ = 0x408
-- F_GETSIG = 0xb
-- F_LOCK = 0x1
-- F_NOTIFY = 0x402
-- F_OFD_GETLK = 0x24
-- F_OFD_SETLK = 0x25
-- F_OFD_SETLKW = 0x26
-- F_OK = 0x0
-- F_RDLCK = 0x0
-- F_SETFD = 0x2
-- F_SETFL = 0x4
-- F_SETLEASE = 0x400
-- F_SETLK = 0x6
-- F_SETLK64 = 0x6
-- F_SETLKW = 0x7
-- F_SETLKW64 = 0x7
-- F_SETOWN = 0x18
-- F_SETOWN_EX = 0xf
-- F_SETPIPE_SZ = 0x407
-- F_SETSIG = 0xa
-- F_SHLCK = 0x8
-- F_TEST = 0x3
-- F_TLOCK = 0x2
-- F_ULOCK = 0x0
-- F_UNLCK = 0x2
-- F_WRLCK = 0x1
-- GENL_ADMIN_PERM = 0x1
-- GENL_CMD_CAP_DO = 0x2
-- GENL_CMD_CAP_DUMP = 0x4
-- GENL_CMD_CAP_HASPOL = 0x8
-- GENL_HDRLEN = 0x4
-- GENL_ID_CTRL = 0x10
-- GENL_ID_PMCRAID = 0x12
-- GENL_ID_VFS_DQUOT = 0x11
-- GENL_MAX_ID = 0x3ff
-- GENL_MIN_ID = 0x10
-- GENL_NAMSIZ = 0x10
-- GENL_START_ALLOC = 0x13
-- GENL_UNS_ADMIN_PERM = 0x10
-- GRND_NONBLOCK = 0x1
-- GRND_RANDOM = 0x2
-- HUPCL = 0x400
-- IBSHIFT = 0x10
-- ICANON = 0x2
-- ICMPV6_FILTER = 0x1
-- ICRNL = 0x100
-- IEXTEN = 0x100
-- IFA_F_DADFAILED = 0x8
-- IFA_F_DEPRECATED = 0x20
-- IFA_F_HOMEADDRESS = 0x10
-- IFA_F_MANAGETEMPADDR = 0x100
-- IFA_F_MCAUTOJOIN = 0x400
-- IFA_F_NODAD = 0x2
-- IFA_F_NOPREFIXROUTE = 0x200
-- IFA_F_OPTIMISTIC = 0x4
-- IFA_F_PERMANENT = 0x80
-- IFA_F_SECONDARY = 0x1
-- IFA_F_STABLE_PRIVACY = 0x800
-- IFA_F_TEMPORARY = 0x1
-- IFA_F_TENTATIVE = 0x40
-- IFA_MAX = 0x8
-- IFF_ALLMULTI = 0x200
-- IFF_ATTACH_QUEUE = 0x200
-- IFF_AUTOMEDIA = 0x4000
-- IFF_BROADCAST = 0x2
-- IFF_DEBUG = 0x4
-- IFF_DETACH_QUEUE = 0x400
-- IFF_DORMANT = 0x20000
-- IFF_DYNAMIC = 0x8000
-- IFF_ECHO = 0x40000
-- IFF_LOOPBACK = 0x8
-- IFF_LOWER_UP = 0x10000
-- IFF_MASTER = 0x400
-- IFF_MULTICAST = 0x1000
-- IFF_MULTI_QUEUE = 0x100
-- IFF_NOARP = 0x80
-- IFF_NOFILTER = 0x1000
-- IFF_NOTRAILERS = 0x20
-- IFF_NO_PI = 0x1000
-- IFF_ONE_QUEUE = 0x2000
-- IFF_PERSIST = 0x800
-- IFF_POINTOPOINT = 0x10
-- IFF_PORTSEL = 0x2000
-- IFF_PROMISC = 0x100
-- IFF_RUNNING = 0x40
-- IFF_SLAVE = 0x800
-- IFF_TAP = 0x2
-- IFF_TUN = 0x1
-- IFF_TUN_EXCL = 0x8000
-- IFF_UP = 0x1
-- IFF_VNET_HDR = 0x4000
-- IFF_VOLATILE = 0x70c5a
-- IFNAMSIZ = 0x10
-- IGNBRK = 0x1
-- IGNCR = 0x80
-- IGNPAR = 0x4
-- IMAXBEL = 0x2000
-- INLCR = 0x40
-- INPCK = 0x10
-- IN_ACCESS = 0x1
-- IN_ALL_EVENTS = 0xfff
-- IN_ATTRIB = 0x4
-- IN_CLASSA_HOST = 0xffffff
-- IN_CLASSA_MAX = 0x80
-- IN_CLASSA_NET = 0xff000000
-- IN_CLASSA_NSHIFT = 0x18
-- IN_CLASSB_HOST = 0xffff
-- IN_CLASSB_MAX = 0x10000
-- IN_CLASSB_NET = 0xffff0000
-- IN_CLASSB_NSHIFT = 0x10
-- IN_CLASSC_HOST = 0xff
-- IN_CLASSC_NET = 0xffffff00
-- IN_CLASSC_NSHIFT = 0x8
-- IN_CLOEXEC = 0x80000
-- IN_CLOSE = 0x18
-- IN_CLOSE_NOWRITE = 0x10
-- IN_CLOSE_WRITE = 0x8
-- IN_CREATE = 0x100
-- IN_DELETE = 0x200
-- IN_DELETE_SELF = 0x400
-- IN_DONT_FOLLOW = 0x2000000
-- IN_EXCL_UNLINK = 0x4000000
-- IN_IGNORED = 0x8000
-- IN_ISDIR = 0x40000000
-- IN_LOOPBACKNET = 0x7f
-- IN_MASK_ADD = 0x20000000
-- IN_MODIFY = 0x2
-- IN_MOVE = 0xc0
-- IN_MOVED_FROM = 0x40
-- IN_MOVED_TO = 0x80
-- IN_MOVE_SELF = 0x800
-- IN_NONBLOCK = 0x80
-- IN_ONESHOT = 0x80000000
-- IN_ONLYDIR = 0x1000000
-- IN_OPEN = 0x20
-- IN_Q_OVERFLOW = 0x4000
-- IN_UNMOUNT = 0x2000
-- IPPROTO_AH = 0x33
-- IPPROTO_BEETPH = 0x5e
-- IPPROTO_COMP = 0x6c
-- IPPROTO_DCCP = 0x21
-- IPPROTO_DSTOPTS = 0x3c
-- IPPROTO_EGP = 0x8
-- IPPROTO_ENCAP = 0x62
-- IPPROTO_ESP = 0x32
-- IPPROTO_FRAGMENT = 0x2c
-- IPPROTO_GRE = 0x2f
-- IPPROTO_HOPOPTS = 0x0
-- IPPROTO_ICMP = 0x1
-- IPPROTO_ICMPV6 = 0x3a
-- IPPROTO_IDP = 0x16
-- IPPROTO_IGMP = 0x2
-- IPPROTO_IP = 0x0
-- IPPROTO_IPIP = 0x4
-- IPPROTO_IPV6 = 0x29
-- IPPROTO_MH = 0x87
-- IPPROTO_MPLS = 0x89
-- IPPROTO_MTP = 0x5c
-- IPPROTO_NONE = 0x3b
-- IPPROTO_PIM = 0x67
-- IPPROTO_PUP = 0xc
-- IPPROTO_RAW = 0xff
-- IPPROTO_ROUTING = 0x2b
-- IPPROTO_RSVP = 0x2e
-- IPPROTO_SCTP = 0x84
-- IPPROTO_TCP = 0x6
-- IPPROTO_TP = 0x1d
-- IPPROTO_UDP = 0x11
-- IPPROTO_UDPLITE = 0x88
-- IPV6_2292DSTOPTS = 0x4
-- IPV6_2292HOPLIMIT = 0x8
-- IPV6_2292HOPOPTS = 0x3
-- IPV6_2292PKTINFO = 0x2
-- IPV6_2292PKTOPTIONS = 0x6
-- IPV6_2292RTHDR = 0x5
-- IPV6_ADDRFORM = 0x1
-- IPV6_ADD_MEMBERSHIP = 0x14
-- IPV6_AUTHHDR = 0xa
-- IPV6_CHECKSUM = 0x7
-- IPV6_DONTFRAG = 0x3e
-- IPV6_DROP_MEMBERSHIP = 0x15
-- IPV6_DSTOPTS = 0x3b
-- IPV6_HDRINCL = 0x24
-- IPV6_HOPLIMIT = 0x34
-- IPV6_HOPOPTS = 0x36
-- IPV6_IPSEC_POLICY = 0x22
-- IPV6_JOIN_ANYCAST = 0x1b
-- IPV6_JOIN_GROUP = 0x14
-- IPV6_LEAVE_ANYCAST = 0x1c
-- IPV6_LEAVE_GROUP = 0x15
-- IPV6_MTU = 0x18
-- IPV6_MTU_DISCOVER = 0x17
-- IPV6_MULTICAST_HOPS = 0x12
-- IPV6_MULTICAST_IF = 0x11
-- IPV6_MULTICAST_LOOP = 0x13
-- IPV6_NEXTHOP = 0x9
-- IPV6_PATHMTU = 0x3d
-- IPV6_PKTINFO = 0x32
-- IPV6_PMTUDISC_DO = 0x2
-- IPV6_PMTUDISC_DONT = 0x0
-- IPV6_PMTUDISC_INTERFACE = 0x4
-- IPV6_PMTUDISC_OMIT = 0x5
-- IPV6_PMTUDISC_PROBE = 0x3
-- IPV6_PMTUDISC_WANT = 0x1
-- IPV6_RECVDSTOPTS = 0x3a
-- IPV6_RECVERR = 0x19
-- IPV6_RECVHOPLIMIT = 0x33
-- IPV6_RECVHOPOPTS = 0x35
-- IPV6_RECVPATHMTU = 0x3c
-- IPV6_RECVPKTINFO = 0x31
-- IPV6_RECVRTHDR = 0x38
-- IPV6_RECVTCLASS = 0x42
-- IPV6_ROUTER_ALERT = 0x16
-- IPV6_RTHDR = 0x39
-- IPV6_RTHDRDSTOPTS = 0x37
-- IPV6_RTHDR_LOOSE = 0x0
-- IPV6_RTHDR_STRICT = 0x1
-- IPV6_RTHDR_TYPE_0 = 0x0
-- IPV6_RXDSTOPTS = 0x3b
-- IPV6_RXHOPOPTS = 0x36
-- IPV6_TCLASS = 0x43
-- IPV6_UNICAST_HOPS = 0x10
-- IPV6_V6ONLY = 0x1a
-- IPV6_XFRM_POLICY = 0x23
-- IP_ADD_MEMBERSHIP = 0x23
-- IP_ADD_SOURCE_MEMBERSHIP = 0x27
-- IP_BIND_ADDRESS_NO_PORT = 0x18
-- IP_BLOCK_SOURCE = 0x26
-- IP_CHECKSUM = 0x17
-- IP_DEFAULT_MULTICAST_LOOP = 0x1
-- IP_DEFAULT_MULTICAST_TTL = 0x1
-- IP_DF = 0x4000
-- IP_DROP_MEMBERSHIP = 0x24
-- IP_DROP_SOURCE_MEMBERSHIP = 0x28
-- IP_FREEBIND = 0xf
-- IP_HDRINCL = 0x3
-- IP_IPSEC_POLICY = 0x10
-- IP_MAXPACKET = 0xffff
-- IP_MAX_MEMBERSHIPS = 0x14
-- IP_MF = 0x2000
-- IP_MINTTL = 0x15
-- IP_MSFILTER = 0x29
-- IP_MSS = 0x240
-- IP_MTU = 0xe
-- IP_MTU_DISCOVER = 0xa
-- IP_MULTICAST_ALL = 0x31
-- IP_MULTICAST_IF = 0x20
-- IP_MULTICAST_LOOP = 0x22
-- IP_MULTICAST_TTL = 0x21
-- IP_NODEFRAG = 0x16
-- IP_OFFMASK = 0x1fff
-- IP_OPTIONS = 0x4
-- IP_ORIGDSTADDR = 0x14
-- IP_PASSSEC = 0x12
-- IP_PKTINFO = 0x8
-- IP_PKTOPTIONS = 0x9
-- IP_PMTUDISC = 0xa
-- IP_PMTUDISC_DO = 0x2
-- IP_PMTUDISC_DONT = 0x0
-- IP_PMTUDISC_INTERFACE = 0x4
-- IP_PMTUDISC_OMIT = 0x5
-- IP_PMTUDISC_PROBE = 0x3
-- IP_PMTUDISC_WANT = 0x1
-- IP_RECVERR = 0xb
-- IP_RECVOPTS = 0x6
-- IP_RECVORIGDSTADDR = 0x14
-- IP_RECVRETOPTS = 0x7
-- IP_RECVTOS = 0xd
-- IP_RECVTTL = 0xc
-- IP_RETOPTS = 0x7
-- IP_RF = 0x8000
-- IP_ROUTER_ALERT = 0x5
-- IP_TOS = 0x1
-- IP_TRANSPARENT = 0x13
-- IP_TTL = 0x2
-- IP_UNBLOCK_SOURCE = 0x25
-- IP_UNICAST_IF = 0x32
-- IP_XFRM_POLICY = 0x11
-- ISIG = 0x1
-- ISTRIP = 0x20
-- IUCLC = 0x200
-- IUTF8 = 0x4000
-- IXANY = 0x800
-- IXOFF = 0x1000
-- IXON = 0x400
-- KEYCTL_ASSUME_AUTHORITY = 0x10
-- KEYCTL_CHOWN = 0x4
-- KEYCTL_CLEAR = 0x7
-- KEYCTL_DESCRIBE = 0x6
-- KEYCTL_DH_COMPUTE = 0x17
-- KEYCTL_GET_KEYRING_ID = 0x0
-- KEYCTL_GET_PERSISTENT = 0x16
-- KEYCTL_GET_SECURITY = 0x11
-- KEYCTL_INSTANTIATE = 0xc
-- KEYCTL_INSTANTIATE_IOV = 0x14
-- KEYCTL_INVALIDATE = 0x15
-- KEYCTL_JOIN_SESSION_KEYRING = 0x1
-- KEYCTL_LINK = 0x8
-- KEYCTL_NEGATE = 0xd
-- KEYCTL_READ = 0xb
-- KEYCTL_REJECT = 0x13
-- KEYCTL_REVOKE = 0x3
-- KEYCTL_SEARCH = 0xa
-- KEYCTL_SESSION_TO_PARENT = 0x12
-- KEYCTL_SETPERM = 0x5
-- KEYCTL_SET_REQKEY_KEYRING = 0xe
-- KEYCTL_SET_TIMEOUT = 0xf
-- KEYCTL_UNLINK = 0x9
-- KEYCTL_UPDATE = 0x2
-- KEY_REQKEY_DEFL_DEFAULT = 0x0
-- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
-- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
-- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
-- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
-- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
-- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
-- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
-- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
-- KEY_SPEC_GROUP_KEYRING = -0x6
-- KEY_SPEC_PROCESS_KEYRING = -0x2
-- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
-- KEY_SPEC_REQUESTOR_KEYRING = -0x8
-- KEY_SPEC_SESSION_KEYRING = -0x3
-- KEY_SPEC_THREAD_KEYRING = -0x1
-- KEY_SPEC_USER_KEYRING = -0x4
-- KEY_SPEC_USER_SESSION_KEYRING = -0x5
-- LINUX_REBOOT_CMD_CAD_OFF = 0x0
-- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
-- LINUX_REBOOT_CMD_HALT = 0xcdef0123
-- LINUX_REBOOT_CMD_KEXEC = 0x45584543
-- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
-- LINUX_REBOOT_CMD_RESTART = 0x1234567
-- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
-- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
-- LINUX_REBOOT_MAGIC1 = 0xfee1dead
-- LINUX_REBOOT_MAGIC2 = 0x28121969
-- LOCK_EX = 0x2
-- LOCK_NB = 0x4
-- LOCK_SH = 0x1
-- LOCK_UN = 0x8
-- MADV_DODUMP = 0x11
-- MADV_DOFORK = 0xb
-- MADV_DONTDUMP = 0x10
-- MADV_DONTFORK = 0xa
-- MADV_DONTNEED = 0x4
-- MADV_FREE = 0x8
-- MADV_HUGEPAGE = 0xe
-- MADV_HWPOISON = 0x64
-- MADV_MERGEABLE = 0xc
-- MADV_NOHUGEPAGE = 0xf
-- MADV_NORMAL = 0x0
-- MADV_RANDOM = 0x1
-- MADV_REMOVE = 0x9
-- MADV_SEQUENTIAL = 0x2
-- MADV_UNMERGEABLE = 0xd
-- MADV_WILLNEED = 0x3
-- MAP_ANON = 0x800
-- MAP_ANONYMOUS = 0x800
-- MAP_DENYWRITE = 0x2000
-- MAP_EXECUTABLE = 0x4000
-- MAP_FILE = 0x0
-- MAP_FIXED = 0x10
-- MAP_GROWSDOWN = 0x1000
-- MAP_HUGETLB = 0x80000
-- MAP_HUGE_MASK = 0x3f
-- MAP_HUGE_SHIFT = 0x1a
-- MAP_LOCKED = 0x8000
-- MAP_NONBLOCK = 0x20000
-- MAP_NORESERVE = 0x400
-- MAP_POPULATE = 0x10000
-- MAP_PRIVATE = 0x2
-- MAP_RENAME = 0x800
-- MAP_SHARED = 0x1
-- MAP_STACK = 0x40000
-- MAP_TYPE = 0xf
-- MCL_CURRENT = 0x1
-- MCL_FUTURE = 0x2
-- MCL_ONFAULT = 0x4
-- MNT_DETACH = 0x2
-- MNT_EXPIRE = 0x4
-- MNT_FORCE = 0x1
-- MSG_BATCH = 0x40000
-- MSG_CMSG_CLOEXEC = 0x40000000
-- MSG_CONFIRM = 0x800
-- MSG_CTRUNC = 0x8
-- MSG_DONTROUTE = 0x4
-- MSG_DONTWAIT = 0x40
-- MSG_EOR = 0x80
-- MSG_ERRQUEUE = 0x2000
-- MSG_FASTOPEN = 0x20000000
-- MSG_FIN = 0x200
-- MSG_MORE = 0x8000
-- MSG_NOSIGNAL = 0x4000
-- MSG_OOB = 0x1
-- MSG_PEEK = 0x2
-- MSG_PROXY = 0x10
-- MSG_RST = 0x1000
-- MSG_SYN = 0x400
-- MSG_TRUNC = 0x20
-- MSG_TRYHARD = 0x4
-- MSG_WAITALL = 0x100
-- MSG_WAITFORONE = 0x10000
-- MS_ACTIVE = 0x40000000
-- MS_ASYNC = 0x1
-- MS_BIND = 0x1000
-- MS_BORN = 0x20000000
-- MS_DIRSYNC = 0x80
-- MS_INVALIDATE = 0x2
-- MS_I_VERSION = 0x800000
-- MS_KERNMOUNT = 0x400000
-- MS_LAZYTIME = 0x2000000
-- MS_MANDLOCK = 0x40
-- MS_MGC_MSK = 0xffff0000
-- MS_MGC_VAL = 0xc0ed0000
-- MS_MOVE = 0x2000
-- MS_NOATIME = 0x400
-- MS_NODEV = 0x4
-- MS_NODIRATIME = 0x800
-- MS_NOEXEC = 0x8
-- MS_NOREMOTELOCK = 0x8000000
-- MS_NOSEC = 0x10000000
-- MS_NOSUID = 0x2
-- MS_NOUSER = -0x80000000
-- MS_POSIXACL = 0x10000
-- MS_PRIVATE = 0x40000
-- MS_RDONLY = 0x1
-- MS_REC = 0x4000
-- MS_RELATIME = 0x200000
-- MS_REMOUNT = 0x20
-- MS_RMT_MASK = 0x2800051
-- MS_SHARED = 0x100000
-- MS_SILENT = 0x8000
-- MS_SLAVE = 0x80000
-- MS_STRICTATIME = 0x1000000
-- MS_SYNC = 0x4
-- MS_SYNCHRONOUS = 0x10
-- MS_UNBINDABLE = 0x20000
-- MS_VERBOSE = 0x8000
-- NAME_MAX = 0xff
-- NETLINK_ADD_MEMBERSHIP = 0x1
-- NETLINK_AUDIT = 0x9
-- NETLINK_BROADCAST_ERROR = 0x4
-- NETLINK_CAP_ACK = 0xa
-- NETLINK_CONNECTOR = 0xb
-- NETLINK_CRYPTO = 0x15
-- NETLINK_DNRTMSG = 0xe
-- NETLINK_DROP_MEMBERSHIP = 0x2
-- NETLINK_ECRYPTFS = 0x13
-- NETLINK_FIB_LOOKUP = 0xa
-- NETLINK_FIREWALL = 0x3
-- NETLINK_GENERIC = 0x10
-- NETLINK_INET_DIAG = 0x4
-- NETLINK_IP6_FW = 0xd
-- NETLINK_ISCSI = 0x8
-- NETLINK_KOBJECT_UEVENT = 0xf
-- NETLINK_LISTEN_ALL_NSID = 0x8
-- NETLINK_LIST_MEMBERSHIPS = 0x9
-- NETLINK_NETFILTER = 0xc
-- NETLINK_NFLOG = 0x5
-- NETLINK_NO_ENOBUFS = 0x5
-- NETLINK_PKTINFO = 0x3
-- NETLINK_RDMA = 0x14
-- NETLINK_ROUTE = 0x0
-- NETLINK_RX_RING = 0x6
-- NETLINK_SCSITRANSPORT = 0x12
-- NETLINK_SELINUX = 0x7
-- NETLINK_SOCK_DIAG = 0x4
-- NETLINK_TX_RING = 0x7
-- NETLINK_UNUSED = 0x1
-- NETLINK_USERSOCK = 0x2
-- NETLINK_XFRM = 0x6
-- NL0 = 0x0
-- NL1 = 0x100
-- NLA_ALIGNTO = 0x4
-- NLA_F_NESTED = 0x8000
-- NLA_F_NET_BYTEORDER = 0x4000
-- NLA_HDRLEN = 0x4
-- NLDLY = 0x100
-- NLMSG_ALIGNTO = 0x4
-- NLMSG_DONE = 0x3
-- NLMSG_ERROR = 0x2
-- NLMSG_HDRLEN = 0x10
-- NLMSG_MIN_TYPE = 0x10
-- NLMSG_NOOP = 0x1
-- NLMSG_OVERRUN = 0x4
-- NLM_F_ACK = 0x4
-- NLM_F_APPEND = 0x800
-- NLM_F_ATOMIC = 0x400
-- NLM_F_CREATE = 0x400
-- NLM_F_DUMP = 0x300
-- NLM_F_DUMP_FILTERED = 0x20
-- NLM_F_DUMP_INTR = 0x10
-- NLM_F_ECHO = 0x8
-- NLM_F_EXCL = 0x200
-- NLM_F_MATCH = 0x200
-- NLM_F_MULTI = 0x2
-- NLM_F_REPLACE = 0x100
-- NLM_F_REQUEST = 0x1
-- NLM_F_ROOT = 0x100
-- NOFLSH = 0x80
-- OCRNL = 0x8
-- OFDEL = 0x80
-- OFILL = 0x40
-- OLCUC = 0x2
-- ONLCR = 0x4
-- ONLRET = 0x20
-- ONOCR = 0x10
-- OPOST = 0x1
-- O_ACCMODE = 0x3
-- O_APPEND = 0x8
-- O_ASYNC = 0x1000
-- O_CLOEXEC = 0x80000
-- O_CREAT = 0x100
-- O_DIRECT = 0x8000
-- O_DIRECTORY = 0x10000
-- O_DSYNC = 0x10
-- O_EXCL = 0x400
-- O_FSYNC = 0x4010
-- O_LARGEFILE = 0x0
-- O_NDELAY = 0x80
-- O_NOATIME = 0x40000
-- O_NOCTTY = 0x800
-- O_NOFOLLOW = 0x20000
-- O_NONBLOCK = 0x80
-- O_PATH = 0x200000
-- O_RDONLY = 0x0
-- O_RDWR = 0x2
-- O_RSYNC = 0x4010
-- O_SYNC = 0x4010
-- O_TMPFILE = 0x410000
-- O_TRUNC = 0x200
-- O_WRONLY = 0x1
-- PACKET_ADD_MEMBERSHIP = 0x1
-- PACKET_AUXDATA = 0x8
-- PACKET_BROADCAST = 0x1
-- PACKET_COPY_THRESH = 0x7
-- PACKET_DROP_MEMBERSHIP = 0x2
-- PACKET_FANOUT = 0x12
-- PACKET_FANOUT_CBPF = 0x6
-- PACKET_FANOUT_CPU = 0x2
-- PACKET_FANOUT_DATA = 0x16
-- PACKET_FANOUT_EBPF = 0x7
-- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
-- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
-- PACKET_FANOUT_HASH = 0x0
-- PACKET_FANOUT_LB = 0x1
-- PACKET_FANOUT_QM = 0x5
-- PACKET_FANOUT_RND = 0x4
-- PACKET_FANOUT_ROLLOVER = 0x3
-- PACKET_FASTROUTE = 0x6
-- PACKET_HDRLEN = 0xb
-- PACKET_HOST = 0x0
-- PACKET_KERNEL = 0x7
-- PACKET_LOOPBACK = 0x5
-- PACKET_LOSS = 0xe
-- PACKET_MR_ALLMULTI = 0x2
-- PACKET_MR_MULTICAST = 0x0
-- PACKET_MR_PROMISC = 0x1
-- PACKET_MR_UNICAST = 0x3
-- PACKET_MULTICAST = 0x2
-- PACKET_ORIGDEV = 0x9
-- PACKET_OTHERHOST = 0x3
-- PACKET_OUTGOING = 0x4
-- PACKET_QDISC_BYPASS = 0x14
-- PACKET_RECV_OUTPUT = 0x3
-- PACKET_RESERVE = 0xc
-- PACKET_ROLLOVER_STATS = 0x15
-- PACKET_RX_RING = 0x5
-- PACKET_STATISTICS = 0x6
-- PACKET_TIMESTAMP = 0x11
-- PACKET_TX_HAS_OFF = 0x13
-- PACKET_TX_RING = 0xd
-- PACKET_TX_TIMESTAMP = 0x10
-- PACKET_USER = 0x6
-- PACKET_VERSION = 0xa
-- PACKET_VNET_HDR = 0xf
-- PARENB = 0x100
-- PARITY_CRC16_PR0 = 0x2
-- PARITY_CRC16_PR0_CCITT = 0x4
-- PARITY_CRC16_PR1 = 0x3
-- PARITY_CRC16_PR1_CCITT = 0x5
-- PARITY_CRC32_PR0_CCITT = 0x6
-- PARITY_CRC32_PR1_CCITT = 0x7
-- PARITY_DEFAULT = 0x0
-- PARITY_NONE = 0x1
-- PARMRK = 0x8
-- PARODD = 0x200
-- PENDIN = 0x4000
-- PERF_EVENT_IOC_DISABLE = 0x20002401
-- PERF_EVENT_IOC_ENABLE = 0x20002400
-- PERF_EVENT_IOC_ID = 0x40082407
-- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
-- PERF_EVENT_IOC_PERIOD = 0x80082404
-- PERF_EVENT_IOC_REFRESH = 0x20002402
-- PERF_EVENT_IOC_RESET = 0x20002403
-- PERF_EVENT_IOC_SET_BPF = 0x80042408
-- PERF_EVENT_IOC_SET_FILTER = 0x80082406
-- PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
-- PRIO_PGRP = 0x1
-- PRIO_PROCESS = 0x0
-- PRIO_USER = 0x2
-- PROT_EXEC = 0x4
-- PROT_GROWSDOWN = 0x1000000
-- PROT_GROWSUP = 0x2000000
-- PROT_NONE = 0x0
-- PROT_READ = 0x1
-- PROT_WRITE = 0x2
-- PR_CAPBSET_DROP = 0x18
-- PR_CAPBSET_READ = 0x17
-- PR_CAP_AMBIENT = 0x2f
-- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
-- PR_CAP_AMBIENT_IS_SET = 0x1
-- PR_CAP_AMBIENT_LOWER = 0x3
-- PR_CAP_AMBIENT_RAISE = 0x2
-- PR_ENDIAN_BIG = 0x0
-- PR_ENDIAN_LITTLE = 0x1
-- PR_ENDIAN_PPC_LITTLE = 0x2
-- PR_FPEMU_NOPRINT = 0x1
-- PR_FPEMU_SIGFPE = 0x2
-- PR_FP_EXC_ASYNC = 0x2
-- PR_FP_EXC_DISABLED = 0x0
-- PR_FP_EXC_DIV = 0x10000
-- PR_FP_EXC_INV = 0x100000
-- PR_FP_EXC_NONRECOV = 0x1
-- PR_FP_EXC_OVF = 0x20000
-- PR_FP_EXC_PRECISE = 0x3
-- PR_FP_EXC_RES = 0x80000
-- PR_FP_EXC_SW_ENABLE = 0x80
-- PR_FP_EXC_UND = 0x40000
-- PR_FP_MODE_FR = 0x1
-- PR_FP_MODE_FRE = 0x2
-- PR_GET_CHILD_SUBREAPER = 0x25
-- PR_GET_DUMPABLE = 0x3
-- PR_GET_ENDIAN = 0x13
-- PR_GET_FPEMU = 0x9
-- PR_GET_FPEXC = 0xb
-- PR_GET_FP_MODE = 0x2e
-- PR_GET_KEEPCAPS = 0x7
-- PR_GET_NAME = 0x10
-- PR_GET_NO_NEW_PRIVS = 0x27
-- PR_GET_PDEATHSIG = 0x2
-- PR_GET_SECCOMP = 0x15
-- PR_GET_SECUREBITS = 0x1b
-- PR_GET_THP_DISABLE = 0x2a
-- PR_GET_TID_ADDRESS = 0x28
-- PR_GET_TIMERSLACK = 0x1e
-- PR_GET_TIMING = 0xd
-- PR_GET_TSC = 0x19
-- PR_GET_UNALIGN = 0x5
-- PR_MCE_KILL = 0x21
-- PR_MCE_KILL_CLEAR = 0x0
-- PR_MCE_KILL_DEFAULT = 0x2
-- PR_MCE_KILL_EARLY = 0x1
-- PR_MCE_KILL_GET = 0x22
-- PR_MCE_KILL_LATE = 0x0
-- PR_MCE_KILL_SET = 0x1
-- PR_MPX_DISABLE_MANAGEMENT = 0x2c
-- PR_MPX_ENABLE_MANAGEMENT = 0x2b
-- PR_SET_CHILD_SUBREAPER = 0x24
-- PR_SET_DUMPABLE = 0x4
-- PR_SET_ENDIAN = 0x14
-- PR_SET_FPEMU = 0xa
-- PR_SET_FPEXC = 0xc
-- PR_SET_FP_MODE = 0x2d
-- PR_SET_KEEPCAPS = 0x8
-- PR_SET_MM = 0x23
-- PR_SET_MM_ARG_END = 0x9
-- PR_SET_MM_ARG_START = 0x8
-- PR_SET_MM_AUXV = 0xc
-- PR_SET_MM_BRK = 0x7
-- PR_SET_MM_END_CODE = 0x2
-- PR_SET_MM_END_DATA = 0x4
-- PR_SET_MM_ENV_END = 0xb
-- PR_SET_MM_ENV_START = 0xa
-- PR_SET_MM_EXE_FILE = 0xd
-- PR_SET_MM_MAP = 0xe
-- PR_SET_MM_MAP_SIZE = 0xf
-- PR_SET_MM_START_BRK = 0x6
-- PR_SET_MM_START_CODE = 0x1
-- PR_SET_MM_START_DATA = 0x3
-- PR_SET_MM_START_STACK = 0x5
-- PR_SET_NAME = 0xf
-- PR_SET_NO_NEW_PRIVS = 0x26
-- PR_SET_PDEATHSIG = 0x1
-- PR_SET_PTRACER = 0x59616d61
-- PR_SET_PTRACER_ANY = -0x1
-- PR_SET_SECCOMP = 0x16
-- PR_SET_SECUREBITS = 0x1c
-- PR_SET_THP_DISABLE = 0x29
-- PR_SET_TIMERSLACK = 0x1d
-- PR_SET_TIMING = 0xe
-- PR_SET_TSC = 0x1a
-- PR_SET_UNALIGN = 0x6
-- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
-- PR_TASK_PERF_EVENTS_ENABLE = 0x20
-- PR_TIMING_STATISTICAL = 0x0
-- PR_TIMING_TIMESTAMP = 0x1
-- PR_TSC_ENABLE = 0x1
-- PR_TSC_SIGSEGV = 0x2
-- PR_UNALIGN_NOPRINT = 0x1
-- PR_UNALIGN_SIGBUS = 0x2
-- PTRACE_ATTACH = 0x10
-- PTRACE_CONT = 0x7
-- PTRACE_DETACH = 0x11
-- PTRACE_EVENT_CLONE = 0x3
-- PTRACE_EVENT_EXEC = 0x4
-- PTRACE_EVENT_EXIT = 0x6
-- PTRACE_EVENT_FORK = 0x1
-- PTRACE_EVENT_SECCOMP = 0x7
-- PTRACE_EVENT_STOP = 0x80
-- PTRACE_EVENT_VFORK = 0x2
-- PTRACE_EVENT_VFORK_DONE = 0x5
-- PTRACE_GETEVENTMSG = 0x4201
-- PTRACE_GETFPREGS = 0xe
-- PTRACE_GETREGS = 0xc
-- PTRACE_GETREGSET = 0x4204
-- PTRACE_GETSIGINFO = 0x4202
-- PTRACE_GETSIGMASK = 0x420a
-- PTRACE_GET_THREAD_AREA = 0x19
-- PTRACE_GET_THREAD_AREA_3264 = 0xc4
-- PTRACE_GET_WATCH_REGS = 0xd0
-- PTRACE_INTERRUPT = 0x4207
-- PTRACE_KILL = 0x8
-- PTRACE_LISTEN = 0x4208
-- PTRACE_OLDSETOPTIONS = 0x15
-- PTRACE_O_EXITKILL = 0x100000
-- PTRACE_O_MASK = 0x3000ff
-- PTRACE_O_SUSPEND_SECCOMP = 0x200000
-- PTRACE_O_TRACECLONE = 0x8
-- PTRACE_O_TRACEEXEC = 0x10
-- PTRACE_O_TRACEEXIT = 0x40
-- PTRACE_O_TRACEFORK = 0x2
-- PTRACE_O_TRACESECCOMP = 0x80
-- PTRACE_O_TRACESYSGOOD = 0x1
-- PTRACE_O_TRACEVFORK = 0x4
-- PTRACE_O_TRACEVFORKDONE = 0x20
-- PTRACE_PEEKDATA = 0x2
-- PTRACE_PEEKDATA_3264 = 0xc1
-- PTRACE_PEEKSIGINFO = 0x4209
-- PTRACE_PEEKSIGINFO_SHARED = 0x1
-- PTRACE_PEEKTEXT = 0x1
-- PTRACE_PEEKTEXT_3264 = 0xc0
-- PTRACE_PEEKUSR = 0x3
-- PTRACE_POKEDATA = 0x5
-- PTRACE_POKEDATA_3264 = 0xc3
-- PTRACE_POKETEXT = 0x4
-- PTRACE_POKETEXT_3264 = 0xc2
-- PTRACE_POKEUSR = 0x6
-- PTRACE_SECCOMP_GET_FILTER = 0x420c
-- PTRACE_SEIZE = 0x4206
-- PTRACE_SETFPREGS = 0xf
-- PTRACE_SETOPTIONS = 0x4200
-- PTRACE_SETREGS = 0xd
-- PTRACE_SETREGSET = 0x4205
-- PTRACE_SETSIGINFO = 0x4203
-- PTRACE_SETSIGMASK = 0x420b
-- PTRACE_SET_THREAD_AREA = 0x1a
-- PTRACE_SET_WATCH_REGS = 0xd1
-- PTRACE_SINGLESTEP = 0x9
-- PTRACE_SYSCALL = 0x18
-- PTRACE_TRACEME = 0x0
-- RLIMIT_AS = 0x6
-- RLIMIT_CORE = 0x4
-- RLIMIT_CPU = 0x0
-- RLIMIT_DATA = 0x2
-- RLIMIT_FSIZE = 0x1
-- RLIMIT_LOCKS = 0xa
-- RLIMIT_MEMLOCK = 0x9
-- RLIMIT_MSGQUEUE = 0xc
-- RLIMIT_NICE = 0xd
-- RLIMIT_NOFILE = 0x5
-- RLIMIT_NPROC = 0x8
-- RLIMIT_RSS = 0x7
-- RLIMIT_RTPRIO = 0xe
-- RLIMIT_RTTIME = 0xf
-- RLIMIT_SIGPENDING = 0xb
-- RLIMIT_STACK = 0x3
-- RLIM_INFINITY = -0x1
-- RTAX_ADVMSS = 0x8
-- RTAX_CC_ALGO = 0x10
-- RTAX_CWND = 0x7
-- RTAX_FEATURES = 0xc
-- RTAX_FEATURE_ALLFRAG = 0x8
-- RTAX_FEATURE_ECN = 0x1
-- RTAX_FEATURE_MASK = 0xf
-- RTAX_FEATURE_SACK = 0x2
-- RTAX_FEATURE_TIMESTAMP = 0x4
-- RTAX_HOPLIMIT = 0xa
-- RTAX_INITCWND = 0xb
-- RTAX_INITRWND = 0xe
-- RTAX_LOCK = 0x1
-- RTAX_MAX = 0x10
-- RTAX_MTU = 0x2
-- RTAX_QUICKACK = 0xf
-- RTAX_REORDERING = 0x9
-- RTAX_RTO_MIN = 0xd
-- RTAX_RTT = 0x4
-- RTAX_RTTVAR = 0x5
-- RTAX_SSTHRESH = 0x6
-- RTAX_UNSPEC = 0x0
-- RTAX_WINDOW = 0x3
-- RTA_ALIGNTO = 0x4
-- RTA_MAX = 0x19
-- RTCF_DIRECTSRC = 0x4000000
-- RTCF_DOREDIRECT = 0x1000000
-- RTCF_LOG = 0x2000000
-- RTCF_MASQ = 0x400000
-- RTCF_NAT = 0x800000
-- RTCF_VALVE = 0x200000
-- RTF_ADDRCLASSMASK = 0xf8000000
-- RTF_ADDRCONF = 0x40000
-- RTF_ALLONLINK = 0x20000
-- RTF_BROADCAST = 0x10000000
-- RTF_CACHE = 0x1000000
-- RTF_DEFAULT = 0x10000
-- RTF_DYNAMIC = 0x10
-- RTF_FLOW = 0x2000000
-- RTF_GATEWAY = 0x2
-- RTF_HOST = 0x4
-- RTF_INTERFACE = 0x40000000
-- RTF_IRTT = 0x100
-- RTF_LINKRT = 0x100000
-- RTF_LOCAL = 0x80000000
-- RTF_MODIFIED = 0x20
-- RTF_MSS = 0x40
-- RTF_MTU = 0x40
-- RTF_MULTICAST = 0x20000000
-- RTF_NAT = 0x8000000
-- RTF_NOFORWARD = 0x1000
-- RTF_NONEXTHOP = 0x200000
-- RTF_NOPMTUDISC = 0x4000
-- RTF_POLICY = 0x4000000
-- RTF_REINSTATE = 0x8
-- RTF_REJECT = 0x200
-- RTF_STATIC = 0x400
-- RTF_THROW = 0x2000
-- RTF_UP = 0x1
-- RTF_WINDOW = 0x80
-- RTF_XRESOLVE = 0x800
-- RTM_BASE = 0x10
-- RTM_DELACTION = 0x31
-- RTM_DELADDR = 0x15
-- RTM_DELADDRLABEL = 0x49
-- RTM_DELLINK = 0x11
-- RTM_DELMDB = 0x55
-- RTM_DELNEIGH = 0x1d
-- RTM_DELNSID = 0x59
-- RTM_DELQDISC = 0x25
-- RTM_DELROUTE = 0x19
-- RTM_DELRULE = 0x21
-- RTM_DELTCLASS = 0x29
-- RTM_DELTFILTER = 0x2d
-- RTM_F_CLONED = 0x200
-- RTM_F_EQUALIZE = 0x400
-- RTM_F_LOOKUP_TABLE = 0x1000
-- RTM_F_NOTIFY = 0x100
-- RTM_F_PREFIX = 0x800
-- RTM_GETACTION = 0x32
-- RTM_GETADDR = 0x16
-- RTM_GETADDRLABEL = 0x4a
-- RTM_GETANYCAST = 0x3e
-- RTM_GETDCB = 0x4e
-- RTM_GETLINK = 0x12
-- RTM_GETMDB = 0x56
-- RTM_GETMULTICAST = 0x3a
-- RTM_GETNEIGH = 0x1e
-- RTM_GETNEIGHTBL = 0x42
-- RTM_GETNETCONF = 0x52
-- RTM_GETNSID = 0x5a
-- RTM_GETQDISC = 0x26
-- RTM_GETROUTE = 0x1a
-- RTM_GETRULE = 0x22
-- RTM_GETSTATS = 0x5e
-- RTM_GETTCLASS = 0x2a
-- RTM_GETTFILTER = 0x2e
-- RTM_MAX = 0x5f
-- RTM_NEWACTION = 0x30
-- RTM_NEWADDR = 0x14
-- RTM_NEWADDRLABEL = 0x48
-- RTM_NEWLINK = 0x10
-- RTM_NEWMDB = 0x54
-- RTM_NEWNDUSEROPT = 0x44
-- RTM_NEWNEIGH = 0x1c
-- RTM_NEWNEIGHTBL = 0x40
-- RTM_NEWNETCONF = 0x50
-- RTM_NEWNSID = 0x58
-- RTM_NEWPREFIX = 0x34
-- RTM_NEWQDISC = 0x24
-- RTM_NEWROUTE = 0x18
-- RTM_NEWRULE = 0x20
-- RTM_NEWSTATS = 0x5c
-- RTM_NEWTCLASS = 0x28
-- RTM_NEWTFILTER = 0x2c
-- RTM_NR_FAMILIES = 0x14
-- RTM_NR_MSGTYPES = 0x50
-- RTM_SETDCB = 0x4f
-- RTM_SETLINK = 0x13
-- RTM_SETNEIGHTBL = 0x43
-- RTNH_ALIGNTO = 0x4
-- RTNH_COMPARE_MASK = 0x19
-- RTNH_F_DEAD = 0x1
-- RTNH_F_LINKDOWN = 0x10
-- RTNH_F_OFFLOAD = 0x8
-- RTNH_F_ONLINK = 0x4
-- RTNH_F_PERVASIVE = 0x2
-- RTN_MAX = 0xb
-- RTPROT_BABEL = 0x2a
-- RTPROT_BIRD = 0xc
-- RTPROT_BOOT = 0x3
-- RTPROT_DHCP = 0x10
-- RTPROT_DNROUTED = 0xd
-- RTPROT_GATED = 0x8
-- RTPROT_KERNEL = 0x2
-- RTPROT_MROUTED = 0x11
-- RTPROT_MRT = 0xa
-- RTPROT_NTK = 0xf
-- RTPROT_RA = 0x9
-- RTPROT_REDIRECT = 0x1
-- RTPROT_STATIC = 0x4
-- RTPROT_UNSPEC = 0x0
-- RTPROT_XORP = 0xe
-- RTPROT_ZEBRA = 0xb
-- RT_CLASS_DEFAULT = 0xfd
-- RT_CLASS_LOCAL = 0xff
-- RT_CLASS_MAIN = 0xfe
-- RT_CLASS_MAX = 0xff
-- RT_CLASS_UNSPEC = 0x0
-- RUSAGE_CHILDREN = -0x1
-- RUSAGE_SELF = 0x0
-- RUSAGE_THREAD = 0x1
-- SCM_CREDENTIALS = 0x2
-- SCM_RIGHTS = 0x1
-- SCM_TIMESTAMP = 0x1d
-- SCM_TIMESTAMPING = 0x25
-- SCM_TIMESTAMPING_OPT_STATS = 0x36
-- SCM_TIMESTAMPNS = 0x23
-- SCM_WIFI_STATUS = 0x29
-- SECCOMP_MODE_DISABLED = 0x0
-- SECCOMP_MODE_FILTER = 0x2
-- SECCOMP_MODE_STRICT = 0x1
-- SHUT_RD = 0x0
-- SHUT_RDWR = 0x2
-- SHUT_WR = 0x1
-- SIOCADDDLCI = 0x8980
-- SIOCADDMULTI = 0x8931
-- SIOCADDRT = 0x890b
-- SIOCATMARK = 0x40047307
-- SIOCBONDCHANGEACTIVE = 0x8995
-- SIOCBONDENSLAVE = 0x8990
-- SIOCBONDINFOQUERY = 0x8994
-- SIOCBONDRELEASE = 0x8991
-- SIOCBONDSETHWADDR = 0x8992
-- SIOCBONDSLAVEINFOQUERY = 0x8993
-- SIOCBRADDBR = 0x89a0
-- SIOCBRADDIF = 0x89a2
-- SIOCBRDELBR = 0x89a1
-- SIOCBRDELIF = 0x89a3
-- SIOCDARP = 0x8953
-- SIOCDELDLCI = 0x8981
-- SIOCDELMULTI = 0x8932
-- SIOCDELRT = 0x890c
-- SIOCDEVPRIVATE = 0x89f0
-- SIOCDIFADDR = 0x8936
-- SIOCDRARP = 0x8960
-- SIOCETHTOOL = 0x8946
-- SIOCGARP = 0x8954
-- SIOCGHWTSTAMP = 0x89b1
-- SIOCGIFADDR = 0x8915
-- SIOCGIFBR = 0x8940
-- SIOCGIFBRDADDR = 0x8919
-- SIOCGIFCONF = 0x8912
-- SIOCGIFCOUNT = 0x8938
-- SIOCGIFDSTADDR = 0x8917
-- SIOCGIFENCAP = 0x8925
-- SIOCGIFFLAGS = 0x8913
-- SIOCGIFHWADDR = 0x8927
-- SIOCGIFINDEX = 0x8933
-- SIOCGIFMAP = 0x8970
-- SIOCGIFMEM = 0x891f
-- SIOCGIFMETRIC = 0x891d
-- SIOCGIFMTU = 0x8921
-- SIOCGIFNAME = 0x8910
-- SIOCGIFNETMASK = 0x891b
-- SIOCGIFPFLAGS = 0x8935
-- SIOCGIFSLAVE = 0x8929
-- SIOCGIFTXQLEN = 0x8942
-- SIOCGIFVLAN = 0x8982
-- SIOCGMIIPHY = 0x8947
-- SIOCGMIIREG = 0x8948
-- SIOCGPGRP = 0x40047309
-- SIOCGRARP = 0x8961
-- SIOCGSKNS = 0x894c
-- SIOCGSTAMP = 0x8906
-- SIOCGSTAMPNS = 0x8907
-- SIOCINQ = 0x467f
-- SIOCOUTQ = 0x7472
-- SIOCOUTQNSD = 0x894b
-- SIOCPROTOPRIVATE = 0x89e0
-- SIOCRTMSG = 0x890d
-- SIOCSARP = 0x8955
-- SIOCSHWTSTAMP = 0x89b0
-- SIOCSIFADDR = 0x8916
-- SIOCSIFBR = 0x8941
-- SIOCSIFBRDADDR = 0x891a
-- SIOCSIFDSTADDR = 0x8918
-- SIOCSIFENCAP = 0x8926
-- SIOCSIFFLAGS = 0x8914
-- SIOCSIFHWADDR = 0x8924
-- SIOCSIFHWBROADCAST = 0x8937
-- SIOCSIFLINK = 0x8911
-- SIOCSIFMAP = 0x8971
-- SIOCSIFMEM = 0x8920
-- SIOCSIFMETRIC = 0x891e
-- SIOCSIFMTU = 0x8922
-- SIOCSIFNAME = 0x8923
-- SIOCSIFNETMASK = 0x891c
-- SIOCSIFPFLAGS = 0x8934
-- SIOCSIFSLAVE = 0x8930
-- SIOCSIFTXQLEN = 0x8943
-- SIOCSIFVLAN = 0x8983
-- SIOCSMIIREG = 0x8949
-- SIOCSPGRP = 0x80047308
-- SIOCSRARP = 0x8962
-- SIOCWANDEV = 0x894a
-- SOCK_CLOEXEC = 0x80000
-- SOCK_DCCP = 0x6
-- SOCK_DGRAM = 0x1
-- SOCK_IOC_TYPE = 0x89
-- SOCK_NONBLOCK = 0x80
-- SOCK_PACKET = 0xa
-- SOCK_RAW = 0x3
-- SOCK_RDM = 0x4
-- SOCK_SEQPACKET = 0x5
-- SOCK_STREAM = 0x2
-- SOL_AAL = 0x109
-- SOL_ALG = 0x117
-- SOL_ATM = 0x108
-- SOL_CAIF = 0x116
-- SOL_CAN_BASE = 0x64
-- SOL_DCCP = 0x10d
-- SOL_DECNET = 0x105
-- SOL_ICMPV6 = 0x3a
-- SOL_IP = 0x0
-- SOL_IPV6 = 0x29
-- SOL_IRDA = 0x10a
-- SOL_IUCV = 0x115
-- SOL_KCM = 0x119
-- SOL_LLC = 0x10c
-- SOL_NETBEUI = 0x10b
-- SOL_NETLINK = 0x10e
-- SOL_NFC = 0x118
-- SOL_PACKET = 0x107
-- SOL_PNPIPE = 0x113
-- SOL_PPPOL2TP = 0x111
-- SOL_RAW = 0xff
-- SOL_RDS = 0x114
-- SOL_RXRPC = 0x110
-- SOL_SOCKET = 0xffff
-- SOL_TCP = 0x6
-- SOL_TIPC = 0x10f
-- SOL_X25 = 0x106
-- SOMAXCONN = 0x80
-- SO_ACCEPTCONN = 0x1009
-- SO_ATTACH_BPF = 0x32
-- SO_ATTACH_FILTER = 0x1a
-- SO_ATTACH_REUSEPORT_CBPF = 0x33
-- SO_ATTACH_REUSEPORT_EBPF = 0x34
-- SO_BINDTODEVICE = 0x19
-- SO_BPF_EXTENSIONS = 0x30
-- SO_BROADCAST = 0x20
-- SO_BSDCOMPAT = 0xe
-- SO_BUSY_POLL = 0x2e
-- SO_CNX_ADVICE = 0x35
-- SO_DEBUG = 0x1
-- SO_DETACH_BPF = 0x1b
-- SO_DETACH_FILTER = 0x1b
-- SO_DOMAIN = 0x1029
-- SO_DONTROUTE = 0x10
-- SO_ERROR = 0x1007
-- SO_GET_FILTER = 0x1a
-- SO_INCOMING_CPU = 0x31
-- SO_KEEPALIVE = 0x8
-- SO_LINGER = 0x80
-- SO_LOCK_FILTER = 0x2c
-- SO_MARK = 0x24
-- SO_MAX_PACING_RATE = 0x2f
-- SO_NOFCS = 0x2b
-- SO_NO_CHECK = 0xb
-- SO_OOBINLINE = 0x100
-- SO_PASSCRED = 0x11
-- SO_PASSSEC = 0x22
-- SO_PEEK_OFF = 0x2a
-- SO_PEERCRED = 0x12
-- SO_PEERNAME = 0x1c
-- SO_PEERSEC = 0x1e
-- SO_PRIORITY = 0xc
-- SO_PROTOCOL = 0x1028
-- SO_RCVBUF = 0x1002
-- SO_RCVBUFFORCE = 0x21
-- SO_RCVLOWAT = 0x1004
-- SO_RCVTIMEO = 0x1006
-- SO_REUSEADDR = 0x4
-- SO_REUSEPORT = 0x200
-- SO_RXQ_OVFL = 0x28
-- SO_SECURITY_AUTHENTICATION = 0x16
-- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-- SO_SELECT_ERR_QUEUE = 0x2d
-- SO_SNDBUF = 0x1001
-- SO_SNDBUFFORCE = 0x1f
-- SO_SNDLOWAT = 0x1003
-- SO_SNDTIMEO = 0x1005
-- SO_STYLE = 0x1008
-- SO_TIMESTAMP = 0x1d
-- SO_TIMESTAMPING = 0x25
-- SO_TIMESTAMPNS = 0x23
-- SO_TYPE = 0x1008
-- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
-- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
-- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
-- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
-- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
-- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
-- SO_VM_SOCKETS_TRUSTED = 0x5
-- SO_WIFI_STATUS = 0x29
-- SPLICE_F_GIFT = 0x8
-- SPLICE_F_MORE = 0x4
-- SPLICE_F_MOVE = 0x1
-- SPLICE_F_NONBLOCK = 0x2
-- S_BLKSIZE = 0x200
-- S_IEXEC = 0x40
-- S_IFBLK = 0x6000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFIFO = 0x1000
-- S_IFLNK = 0xa000
-- S_IFMT = 0xf000
-- S_IFREG = 0x8000
-- S_IFSOCK = 0xc000
-- S_IREAD = 0x100
-- S_IRGRP = 0x20
-- S_IROTH = 0x4
-- S_IRUSR = 0x100
-- S_IRWXG = 0x38
-- S_IRWXO = 0x7
-- S_IRWXU = 0x1c0
-- S_ISGID = 0x400
-- S_ISUID = 0x800
-- S_ISVTX = 0x200
-- S_IWGRP = 0x10
-- S_IWOTH = 0x2
-- S_IWRITE = 0x80
-- S_IWUSR = 0x80
-- S_IXGRP = 0x8
-- S_IXOTH = 0x1
-- S_IXUSR = 0x40
-- TAB0 = 0x0
-- TAB1 = 0x800
-- TAB2 = 0x1000
-- TAB3 = 0x1800
-- TABDLY = 0x1800
-- TASKSTATS_CMD_ATTR_MAX = 0x4
-- TASKSTATS_CMD_MAX = 0x2
-- TASKSTATS_GENL_NAME = "TASKSTATS"
-- TASKSTATS_GENL_VERSION = 0x1
-- TASKSTATS_TYPE_MAX = 0x6
-- TASKSTATS_VERSION = 0x8
-- TCFLSH = 0x5407
-- TCGETA = 0x5401
-- TCGETS = 0x540d
-- TCGETS2 = 0x4030542a
-- TCIFLUSH = 0x0
-- TCIOFF = 0x2
-- TCIOFLUSH = 0x2
-- TCION = 0x3
-- TCOFLUSH = 0x1
-- TCOOFF = 0x0
-- TCOON = 0x1
-- TCP_CC_INFO = 0x1a
-- TCP_CONGESTION = 0xd
-- TCP_COOKIE_IN_ALWAYS = 0x1
-- TCP_COOKIE_MAX = 0x10
-- TCP_COOKIE_MIN = 0x8
-- TCP_COOKIE_OUT_NEVER = 0x2
-- TCP_COOKIE_PAIR_SIZE = 0x20
-- TCP_COOKIE_TRANSACTIONS = 0xf
-- TCP_CORK = 0x3
-- TCP_DEFER_ACCEPT = 0x9
-- TCP_FASTOPEN = 0x17
-- TCP_INFO = 0xb
-- TCP_KEEPCNT = 0x6
-- TCP_KEEPIDLE = 0x4
-- TCP_KEEPINTVL = 0x5
-- TCP_LINGER2 = 0x8
-- TCP_MAXSEG = 0x2
-- TCP_MAXWIN = 0xffff
-- TCP_MAX_WINSHIFT = 0xe
-- TCP_MD5SIG = 0xe
-- TCP_MD5SIG_MAXKEYLEN = 0x50
-- TCP_MSS = 0x200
-- TCP_MSS_DEFAULT = 0x218
-- TCP_MSS_DESIRED = 0x4c4
-- TCP_NODELAY = 0x1
-- TCP_NOTSENT_LOWAT = 0x19
-- TCP_QUEUE_SEQ = 0x15
-- TCP_QUICKACK = 0xc
-- TCP_REPAIR = 0x13
-- TCP_REPAIR_OPTIONS = 0x16
-- TCP_REPAIR_QUEUE = 0x14
-- TCP_REPAIR_WINDOW = 0x1d
-- TCP_SAVED_SYN = 0x1c
-- TCP_SAVE_SYN = 0x1b
-- TCP_SYNCNT = 0x7
-- TCP_S_DATA_IN = 0x4
-- TCP_S_DATA_OUT = 0x8
-- TCP_THIN_DUPACK = 0x11
-- TCP_THIN_LINEAR_TIMEOUTS = 0x10
-- TCP_TIMESTAMP = 0x18
-- TCP_USER_TIMEOUT = 0x12
-- TCP_WINDOW_CLAMP = 0xa
-- TCSAFLUSH = 0x5410
-- TCSBRK = 0x5405
-- TCSBRKP = 0x5486
-- TCSETA = 0x5402
-- TCSETAF = 0x5404
-- TCSETAW = 0x5403
-- TCSETS = 0x540e
-- TCSETS2 = 0x8030542b
-- TCSETSF = 0x5410
-- TCSETSF2 = 0x8030542d
-- TCSETSW = 0x540f
-- TCSETSW2 = 0x8030542c
-- TCXONC = 0x5406
-- TIOCCBRK = 0x5428
-- TIOCCONS = 0x80047478
-- TIOCEXCL = 0x740d
-- TIOCGDEV = 0x40045432
-- TIOCGETD = 0x7400
-- TIOCGETP = 0x7408
-- TIOCGEXCL = 0x40045440
-- TIOCGICOUNT = 0x5492
-- TIOCGLCKTRMIOS = 0x548b
-- TIOCGLTC = 0x7474
-- TIOCGPGRP = 0x40047477
-- TIOCGPKT = 0x40045438
-- TIOCGPTLCK = 0x40045439
-- TIOCGPTN = 0x40045430
-- TIOCGRS485 = 0x4020542e
-- TIOCGSERIAL = 0x5484
-- TIOCGSID = 0x7416
-- TIOCGSOFTCAR = 0x5481
-- TIOCGWINSZ = 0x40087468
-- TIOCINQ = 0x467f
-- TIOCLINUX = 0x5483
-- TIOCMBIC = 0x741c
-- TIOCMBIS = 0x741b
-- TIOCMGET = 0x741d
-- TIOCMIWAIT = 0x5491
-- TIOCMSET = 0x741a
-- TIOCM_CAR = 0x100
-- TIOCM_CD = 0x100
-- TIOCM_CTS = 0x40
-- TIOCM_DSR = 0x400
-- TIOCM_DTR = 0x2
-- TIOCM_LE = 0x1
-- TIOCM_RI = 0x200
-- TIOCM_RNG = 0x200
-- TIOCM_RTS = 0x4
-- TIOCM_SR = 0x20
-- TIOCM_ST = 0x10
-- TIOCNOTTY = 0x5471
-- TIOCNXCL = 0x740e
-- TIOCOUTQ = 0x7472
-- TIOCPKT = 0x5470
-- TIOCPKT_DATA = 0x0
-- TIOCPKT_DOSTOP = 0x20
-- TIOCPKT_FLUSHREAD = 0x1
-- TIOCPKT_FLUSHWRITE = 0x2
-- TIOCPKT_IOCTL = 0x40
-- TIOCPKT_NOSTOP = 0x10
-- TIOCPKT_START = 0x8
-- TIOCPKT_STOP = 0x4
-- TIOCSBRK = 0x5427
-- TIOCSCTTY = 0x5480
-- TIOCSERCONFIG = 0x5488
-- TIOCSERGETLSR = 0x548e
-- TIOCSERGETMULTI = 0x548f
-- TIOCSERGSTRUCT = 0x548d
-- TIOCSERGWILD = 0x5489
-- TIOCSERSETMULTI = 0x5490
-- TIOCSERSWILD = 0x548a
-- TIOCSER_TEMT = 0x1
-- TIOCSETD = 0x7401
-- TIOCSETN = 0x740a
-- TIOCSETP = 0x7409
-- TIOCSIG = 0x80045436
-- TIOCSLCKTRMIOS = 0x548c
-- TIOCSLTC = 0x7475
-- TIOCSPGRP = 0x80047476
-- TIOCSPTLCK = 0x80045431
-- TIOCSRS485 = 0xc020542f
-- TIOCSSERIAL = 0x5485
-- TIOCSSOFTCAR = 0x5482
-- TIOCSTI = 0x5472
-- TIOCSWINSZ = 0x80087467
-- TIOCVHANGUP = 0x5437
-- TOSTOP = 0x8000
-- TS_COMM_LEN = 0x20
-- TUNATTACHFILTER = 0x801054d5
-- TUNDETACHFILTER = 0x801054d6
-- TUNGETFEATURES = 0x400454cf
-- TUNGETFILTER = 0x401054db
-- TUNGETIFF = 0x400454d2
-- TUNGETSNDBUF = 0x400454d3
-- TUNGETVNETBE = 0x400454df
-- TUNGETVNETHDRSZ = 0x400454d7
-- TUNGETVNETLE = 0x400454dd
-- TUNSETDEBUG = 0x800454c9
-- TUNSETGROUP = 0x800454ce
-- TUNSETIFF = 0x800454ca
-- TUNSETIFINDEX = 0x800454da
-- TUNSETLINK = 0x800454cd
-- TUNSETNOCSUM = 0x800454c8
-- TUNSETOFFLOAD = 0x800454d0
-- TUNSETOWNER = 0x800454cc
-- TUNSETPERSIST = 0x800454cb
-- TUNSETQUEUE = 0x800454d9
-- TUNSETSNDBUF = 0x800454d4
-- TUNSETTXFILTER = 0x800454d1
-- TUNSETVNETBE = 0x800454de
-- TUNSETVNETHDRSZ = 0x800454d8
-- TUNSETVNETLE = 0x800454dc
-- UMOUNT_NOFOLLOW = 0x8
-- VDISCARD = 0xd
-- VEOF = 0x10
-- VEOL = 0x11
-- VEOL2 = 0x6
-- VERASE = 0x2
-- VINTR = 0x0
-- VKILL = 0x3
-- VLNEXT = 0xf
-- VMADDR_CID_ANY = 0xffffffff
-- VMADDR_CID_HOST = 0x2
-- VMADDR_CID_HYPERVISOR = 0x0
-- VMADDR_CID_RESERVED = 0x1
-- VMADDR_PORT_ANY = 0xffffffff
-- VMIN = 0x4
-- VM_SOCKETS_INVALID_VERSION = 0xffffffff
-- VQUIT = 0x1
-- VREPRINT = 0xc
-- VSTART = 0x8
-- VSTOP = 0x9
-- VSUSP = 0xa
-- VSWTC = 0x7
-- VSWTCH = 0x7
-- VT0 = 0x0
-- VT1 = 0x4000
-- VTDLY = 0x4000
-- VTIME = 0x5
-- VWERASE = 0xe
-- WALL = 0x40000000
-- WCLONE = 0x80000000
-- WCONTINUED = 0x8
-- WEXITED = 0x4
-- WNOHANG = 0x1
-- WNOTHREAD = 0x20000000
-- WNOWAIT = 0x1000000
-- WORDSIZE = 0x40
-- WSTOPPED = 0x2
-- WUNTRACED = 0x2
-- XATTR_CREATE = 0x1
-- XATTR_REPLACE = 0x2
-- XCASE = 0x4
-- XTABS = 0x1800
-+ B1000000 = 0x1008
-+ B115200 = 0x1002
-+ B1152000 = 0x1009
-+ B1500000 = 0x100a
-+ B2000000 = 0x100b
-+ B230400 = 0x1003
-+ B2500000 = 0x100c
-+ B3000000 = 0x100d
-+ B3500000 = 0x100e
-+ B4000000 = 0x100f
-+ B460800 = 0x1004
-+ B500000 = 0x1005
-+ B57600 = 0x1001
-+ B576000 = 0x1006
-+ B921600 = 0x1007
-+ BLKBSZGET = 0x40081270
-+ BLKBSZSET = 0x80081271
-+ BLKFLSBUF = 0x20001261
-+ BLKFRAGET = 0x20001265
-+ BLKFRASET = 0x20001264
-+ BLKGETSIZE = 0x20001260
-+ BLKGETSIZE64 = 0x40081272
-+ BLKPBSZGET = 0x2000127b
-+ BLKRAGET = 0x20001263
-+ BLKRASET = 0x20001262
-+ BLKROGET = 0x2000125e
-+ BLKROSET = 0x2000125d
-+ BLKRRPART = 0x2000125f
-+ BLKSECTGET = 0x20001267
-+ BLKSECTSET = 0x20001266
-+ BLKSSZGET = 0x20001268
-+ BOTHER = 0x1000
-+ BS1 = 0x2000
-+ BSDLY = 0x2000
-+ CBAUD = 0x100f
-+ CBAUDEX = 0x1000
-+ CIBAUD = 0x100f0000
-+ CLOCAL = 0x800
-+ CR1 = 0x200
-+ CR2 = 0x400
-+ CR3 = 0x600
-+ CRDLY = 0x600
-+ CREAD = 0x80
-+ CS6 = 0x10
-+ CS7 = 0x20
-+ CS8 = 0x30
-+ CSIZE = 0x30
-+ CSTOPB = 0x40
-+ ECHOCTL = 0x200
-+ ECHOE = 0x10
-+ ECHOK = 0x20
-+ ECHOKE = 0x800
-+ ECHONL = 0x40
-+ ECHOPRT = 0x400
-+ EFD_CLOEXEC = 0x80000
-+ EFD_NONBLOCK = 0x80
-+ EPOLL_CLOEXEC = 0x80000
-+ EXTPROC = 0x10000
-+ FF1 = 0x8000
-+ FFDLY = 0x8000
-+ FLUSHO = 0x2000
-+ FS_IOC_ENABLE_VERITY = 0x80806685
-+ FS_IOC_GETFLAGS = 0x40086601
-+ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
-+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
-+ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
-+ F_GETLK = 0xe
-+ F_GETLK64 = 0xe
-+ F_GETOWN = 0x17
-+ F_RDLCK = 0x0
-+ F_SETLK = 0x6
-+ F_SETLK64 = 0x6
-+ F_SETLKW = 0x7
-+ F_SETLKW64 = 0x7
-+ F_SETOWN = 0x18
-+ F_UNLCK = 0x2
-+ F_WRLCK = 0x1
-+ HUPCL = 0x400
-+ ICANON = 0x2
-+ IEXTEN = 0x100
-+ IN_CLOEXEC = 0x80000
-+ IN_NONBLOCK = 0x80
-+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
-+ ISIG = 0x1
-+ IUCLC = 0x200
-+ IXOFF = 0x1000
-+ IXON = 0x400
-+ MAP_ANON = 0x800
-+ MAP_ANONYMOUS = 0x800
-+ MAP_DENYWRITE = 0x2000
-+ MAP_EXECUTABLE = 0x4000
-+ MAP_GROWSDOWN = 0x1000
-+ MAP_HUGETLB = 0x80000
-+ MAP_LOCKED = 0x8000
-+ MAP_NONBLOCK = 0x20000
-+ MAP_NORESERVE = 0x400
-+ MAP_POPULATE = 0x10000
-+ MAP_RENAME = 0x800
-+ MAP_STACK = 0x40000
-+ MCL_CURRENT = 0x1
-+ MCL_FUTURE = 0x2
-+ MCL_ONFAULT = 0x4
-+ NFDBITS = 0x40
-+ NLDLY = 0x100
-+ NOFLSH = 0x80
-+ NS_GET_NSTYPE = 0x2000b703
-+ NS_GET_OWNER_UID = 0x2000b704
-+ NS_GET_PARENT = 0x2000b702
-+ NS_GET_USERNS = 0x2000b701
-+ OLCUC = 0x2
-+ ONLCR = 0x4
-+ O_APPEND = 0x8
-+ O_ASYNC = 0x1000
-+ O_CLOEXEC = 0x80000
-+ O_CREAT = 0x100
-+ O_DIRECT = 0x8000
-+ O_DIRECTORY = 0x10000
-+ O_DSYNC = 0x10
-+ O_EXCL = 0x400
-+ O_FSYNC = 0x4010
-+ O_LARGEFILE = 0x0
-+ O_NDELAY = 0x80
-+ O_NOATIME = 0x40000
-+ O_NOCTTY = 0x800
-+ O_NOFOLLOW = 0x20000
-+ O_NONBLOCK = 0x80
-+ O_PATH = 0x200000
-+ O_RSYNC = 0x4010
-+ O_SYNC = 0x4010
-+ O_TMPFILE = 0x410000
-+ O_TRUNC = 0x200
-+ PARENB = 0x100
-+ PARODD = 0x200
-+ PENDIN = 0x4000
-+ PERF_EVENT_IOC_DISABLE = 0x20002401
-+ PERF_EVENT_IOC_ENABLE = 0x20002400
-+ PERF_EVENT_IOC_ID = 0x40082407
-+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
-+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
-+ PERF_EVENT_IOC_PERIOD = 0x80082404
-+ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
-+ PERF_EVENT_IOC_REFRESH = 0x20002402
-+ PERF_EVENT_IOC_RESET = 0x20002403
-+ PERF_EVENT_IOC_SET_BPF = 0x80042408
-+ PERF_EVENT_IOC_SET_FILTER = 0x80082406
-+ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
-+ PPPIOCATTACH = 0x8004743d
-+ PPPIOCATTCHAN = 0x80047438
-+ PPPIOCCONNECT = 0x8004743a
-+ PPPIOCDETACH = 0x8004743c
-+ PPPIOCDISCONN = 0x20007439
-+ PPPIOCGASYNCMAP = 0x40047458
-+ PPPIOCGCHAN = 0x40047437
-+ PPPIOCGDEBUG = 0x40047441
-+ PPPIOCGFLAGS = 0x4004745a
-+ PPPIOCGIDLE = 0x4010743f
-+ PPPIOCGIDLE32 = 0x4008743f
-+ PPPIOCGIDLE64 = 0x4010743f
-+ PPPIOCGL2TPSTATS = 0x40487436
-+ PPPIOCGMRU = 0x40047453
-+ PPPIOCGRASYNCMAP = 0x40047455
-+ PPPIOCGUNIT = 0x40047456
-+ PPPIOCGXASYNCMAP = 0x40207450
-+ PPPIOCSACTIVE = 0x80107446
-+ PPPIOCSASYNCMAP = 0x80047457
-+ PPPIOCSCOMPRESS = 0x8010744d
-+ PPPIOCSDEBUG = 0x80047440
-+ PPPIOCSFLAGS = 0x80047459
-+ PPPIOCSMAXCID = 0x80047451
-+ PPPIOCSMRRU = 0x8004743b
-+ PPPIOCSMRU = 0x80047452
-+ PPPIOCSNPMODE = 0x8008744b
-+ PPPIOCSPASS = 0x80107447
-+ PPPIOCSRASYNCMAP = 0x80047454
-+ PPPIOCSXASYNCMAP = 0x8020744f
-+ PPPIOCXFERUNIT = 0x2000744e
-+ PR_SET_PTRACER_ANY = 0xffffffffffffffff
-+ PTRACE_GETFPREGS = 0xe
-+ PTRACE_GET_THREAD_AREA = 0x19
-+ PTRACE_GET_THREAD_AREA_3264 = 0xc4
-+ PTRACE_GET_WATCH_REGS = 0xd0
-+ PTRACE_OLDSETOPTIONS = 0x15
-+ PTRACE_PEEKDATA_3264 = 0xc1
-+ PTRACE_PEEKTEXT_3264 = 0xc0
-+ PTRACE_POKEDATA_3264 = 0xc3
-+ PTRACE_POKETEXT_3264 = 0xc2
-+ PTRACE_SETFPREGS = 0xf
-+ PTRACE_SET_THREAD_AREA = 0x1a
-+ PTRACE_SET_WATCH_REGS = 0xd1
-+ RLIMIT_AS = 0x6
-+ RLIMIT_MEMLOCK = 0x9
-+ RLIMIT_NOFILE = 0x5
-+ RLIMIT_NPROC = 0x8
-+ RLIMIT_RSS = 0x7
-+ RNDADDENTROPY = 0x80085203
-+ RNDADDTOENTCNT = 0x80045201
-+ RNDCLEARPOOL = 0x20005206
-+ RNDGETENTCNT = 0x40045200
-+ RNDGETPOOL = 0x40085202
-+ RNDRESEEDCRNG = 0x20005207
-+ RNDZAPENTCNT = 0x20005204
-+ RTC_AIE_OFF = 0x20007002
-+ RTC_AIE_ON = 0x20007001
-+ RTC_ALM_READ = 0x40247008
-+ RTC_ALM_SET = 0x80247007
-+ RTC_EPOCH_READ = 0x4008700d
-+ RTC_EPOCH_SET = 0x8008700e
-+ RTC_IRQP_READ = 0x4008700b
-+ RTC_IRQP_SET = 0x8008700c
-+ RTC_PIE_OFF = 0x20007006
-+ RTC_PIE_ON = 0x20007005
-+ RTC_PLL_GET = 0x40207011
-+ RTC_PLL_SET = 0x80207012
-+ RTC_RD_TIME = 0x40247009
-+ RTC_SET_TIME = 0x8024700a
-+ RTC_UIE_OFF = 0x20007004
-+ RTC_UIE_ON = 0x20007003
-+ RTC_VL_CLR = 0x20007014
-+ RTC_VL_READ = 0x40047013
-+ RTC_WIE_OFF = 0x20007010
-+ RTC_WIE_ON = 0x2000700f
-+ RTC_WKALM_RD = 0x40287010
-+ RTC_WKALM_SET = 0x8028700f
-+ SCM_TIMESTAMPING = 0x25
-+ SCM_TIMESTAMPING_OPT_STATS = 0x36
-+ SCM_TIMESTAMPING_PKTINFO = 0x3a
-+ SCM_TIMESTAMPNS = 0x23
-+ SCM_TXTIME = 0x3d
-+ SCM_WIFI_STATUS = 0x29
-+ SFD_CLOEXEC = 0x80000
-+ SFD_NONBLOCK = 0x80
-+ SIOCATMARK = 0x40047307
-+ SIOCGPGRP = 0x40047309
-+ SIOCGSTAMPNS_NEW = 0x40108907
-+ SIOCGSTAMP_NEW = 0x40108906
-+ SIOCINQ = 0x467f
-+ SIOCOUTQ = 0x7472
-+ SIOCSPGRP = 0x80047308
-+ SOCK_CLOEXEC = 0x80000
-+ SOCK_DGRAM = 0x1
-+ SOCK_NONBLOCK = 0x80
-+ SOCK_STREAM = 0x2
-+ SOL_SOCKET = 0xffff
-+ SO_ACCEPTCONN = 0x1009
-+ SO_ATTACH_BPF = 0x32
-+ SO_ATTACH_REUSEPORT_CBPF = 0x33
-+ SO_ATTACH_REUSEPORT_EBPF = 0x34
-+ SO_BINDTODEVICE = 0x19
-+ SO_BINDTOIFINDEX = 0x3e
-+ SO_BPF_EXTENSIONS = 0x30
-+ SO_BROADCAST = 0x20
-+ SO_BSDCOMPAT = 0xe
-+ SO_BUSY_POLL = 0x2e
-+ SO_CNX_ADVICE = 0x35
-+ SO_COOKIE = 0x39
-+ SO_DETACH_REUSEPORT_BPF = 0x44
-+ SO_DOMAIN = 0x1029
-+ SO_DONTROUTE = 0x10
-+ SO_ERROR = 0x1007
-+ SO_INCOMING_CPU = 0x31
-+ SO_INCOMING_NAPI_ID = 0x38
-+ SO_KEEPALIVE = 0x8
-+ SO_LINGER = 0x80
-+ SO_LOCK_FILTER = 0x2c
-+ SO_MARK = 0x24
-+ SO_MAX_PACING_RATE = 0x2f
-+ SO_MEMINFO = 0x37
-+ SO_NOFCS = 0x2b
-+ SO_OOBINLINE = 0x100
-+ SO_PASSCRED = 0x11
-+ SO_PASSSEC = 0x22
-+ SO_PEEK_OFF = 0x2a
-+ SO_PEERCRED = 0x12
-+ SO_PEERGROUPS = 0x3b
-+ SO_PEERSEC = 0x1e
-+ SO_PROTOCOL = 0x1028
-+ SO_RCVBUF = 0x1002
-+ SO_RCVBUFFORCE = 0x21
-+ SO_RCVLOWAT = 0x1004
-+ SO_RCVTIMEO = 0x1006
-+ SO_RCVTIMEO_NEW = 0x42
-+ SO_RCVTIMEO_OLD = 0x1006
-+ SO_REUSEADDR = 0x4
-+ SO_REUSEPORT = 0x200
-+ SO_RXQ_OVFL = 0x28
-+ SO_SECURITY_AUTHENTICATION = 0x16
-+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-+ SO_SELECT_ERR_QUEUE = 0x2d
-+ SO_SNDBUF = 0x1001
-+ SO_SNDBUFFORCE = 0x1f
-+ SO_SNDLOWAT = 0x1003
-+ SO_SNDTIMEO = 0x1005
-+ SO_SNDTIMEO_NEW = 0x43
-+ SO_SNDTIMEO_OLD = 0x1005
-+ SO_STYLE = 0x1008
-+ SO_TIMESTAMPING = 0x25
-+ SO_TIMESTAMPING_NEW = 0x41
-+ SO_TIMESTAMPING_OLD = 0x25
-+ SO_TIMESTAMPNS = 0x23
-+ SO_TIMESTAMPNS_NEW = 0x40
-+ SO_TIMESTAMPNS_OLD = 0x23
-+ SO_TIMESTAMP_NEW = 0x3f
-+ SO_TXTIME = 0x3d
-+ SO_TYPE = 0x1008
-+ SO_WIFI_STATUS = 0x29
-+ SO_ZEROCOPY = 0x3c
-+ TAB1 = 0x800
-+ TAB2 = 0x1000
-+ TAB3 = 0x1800
-+ TABDLY = 0x1800
-+ TCFLSH = 0x5407
-+ TCGETA = 0x5401
-+ TCGETS = 0x540d
-+ TCGETS2 = 0x4030542a
-+ TCSAFLUSH = 0x5410
-+ TCSBRK = 0x5405
-+ TCSBRKP = 0x5486
-+ TCSETA = 0x5402
-+ TCSETAF = 0x5404
-+ TCSETAW = 0x5403
-+ TCSETS = 0x540e
-+ TCSETS2 = 0x8030542b
-+ TCSETSF = 0x5410
-+ TCSETSF2 = 0x8030542d
-+ TCSETSW = 0x540f
-+ TCSETSW2 = 0x8030542c
-+ TCXONC = 0x5406
-+ TIOCCBRK = 0x5428
-+ TIOCCONS = 0x80047478
-+ TIOCEXCL = 0x740d
-+ TIOCGDEV = 0x40045432
-+ TIOCGETD = 0x7400
-+ TIOCGETP = 0x7408
-+ TIOCGEXCL = 0x40045440
-+ TIOCGICOUNT = 0x5492
-+ TIOCGISO7816 = 0x40285442
-+ TIOCGLCKTRMIOS = 0x548b
-+ TIOCGLTC = 0x7474
-+ TIOCGPGRP = 0x40047477
-+ TIOCGPKT = 0x40045438
-+ TIOCGPTLCK = 0x40045439
-+ TIOCGPTN = 0x40045430
-+ TIOCGPTPEER = 0x20005441
-+ TIOCGRS485 = 0x4020542e
-+ TIOCGSERIAL = 0x5484
-+ TIOCGSID = 0x7416
-+ TIOCGSOFTCAR = 0x5481
-+ TIOCGWINSZ = 0x40087468
-+ TIOCINQ = 0x467f
-+ TIOCLINUX = 0x5483
-+ TIOCMBIC = 0x741c
-+ TIOCMBIS = 0x741b
-+ TIOCMGET = 0x741d
-+ TIOCMIWAIT = 0x5491
-+ TIOCMSET = 0x741a
-+ TIOCM_CAR = 0x100
-+ TIOCM_CD = 0x100
-+ TIOCM_CTS = 0x40
-+ TIOCM_DSR = 0x400
-+ TIOCM_RI = 0x200
-+ TIOCM_RNG = 0x200
-+ TIOCM_SR = 0x20
-+ TIOCM_ST = 0x10
-+ TIOCNOTTY = 0x5471
-+ TIOCNXCL = 0x740e
-+ TIOCOUTQ = 0x7472
-+ TIOCPKT = 0x5470
-+ TIOCSBRK = 0x5427
-+ TIOCSCTTY = 0x5480
-+ TIOCSERCONFIG = 0x5488
-+ TIOCSERGETLSR = 0x548e
-+ TIOCSERGETMULTI = 0x548f
-+ TIOCSERGSTRUCT = 0x548d
-+ TIOCSERGWILD = 0x5489
-+ TIOCSERSETMULTI = 0x5490
-+ TIOCSERSWILD = 0x548a
-+ TIOCSER_TEMT = 0x1
-+ TIOCSETD = 0x7401
-+ TIOCSETN = 0x740a
-+ TIOCSETP = 0x7409
-+ TIOCSIG = 0x80045436
-+ TIOCSISO7816 = 0xc0285443
-+ TIOCSLCKTRMIOS = 0x548c
-+ TIOCSLTC = 0x7475
-+ TIOCSPGRP = 0x80047476
-+ TIOCSPTLCK = 0x80045431
-+ TIOCSRS485 = 0xc020542f
-+ TIOCSSERIAL = 0x5485
-+ TIOCSSOFTCAR = 0x5482
-+ TIOCSTI = 0x5472
-+ TIOCSWINSZ = 0x80087467
-+ TIOCVHANGUP = 0x5437
-+ TOSTOP = 0x8000
-+ TUNATTACHFILTER = 0x801054d5
-+ TUNDETACHFILTER = 0x801054d6
-+ TUNGETDEVNETNS = 0x200054e3
-+ TUNGETFEATURES = 0x400454cf
-+ TUNGETFILTER = 0x401054db
-+ TUNGETIFF = 0x400454d2
-+ TUNGETSNDBUF = 0x400454d3
-+ TUNGETVNETBE = 0x400454df
-+ TUNGETVNETHDRSZ = 0x400454d7
-+ TUNGETVNETLE = 0x400454dd
-+ TUNSETCARRIER = 0x800454e2
-+ TUNSETDEBUG = 0x800454c9
-+ TUNSETFILTEREBPF = 0x400454e1
-+ TUNSETGROUP = 0x800454ce
-+ TUNSETIFF = 0x800454ca
-+ TUNSETIFINDEX = 0x800454da
-+ TUNSETLINK = 0x800454cd
-+ TUNSETNOCSUM = 0x800454c8
-+ TUNSETOFFLOAD = 0x800454d0
-+ TUNSETOWNER = 0x800454cc
-+ TUNSETPERSIST = 0x800454cb
-+ TUNSETQUEUE = 0x800454d9
-+ TUNSETSNDBUF = 0x800454d4
-+ TUNSETSTEERINGEBPF = 0x400454e0
-+ TUNSETTXFILTER = 0x800454d1
-+ TUNSETVNETBE = 0x800454de
-+ TUNSETVNETHDRSZ = 0x800454d8
-+ TUNSETVNETLE = 0x800454dc
-+ UBI_IOCATT = 0x80186f40
-+ UBI_IOCDET = 0x80046f41
-+ UBI_IOCEBCH = 0x80044f02
-+ UBI_IOCEBER = 0x80044f01
-+ UBI_IOCEBISMAP = 0x40044f05
-+ UBI_IOCEBMAP = 0x80084f03
-+ UBI_IOCEBUNMAP = 0x80044f04
-+ UBI_IOCMKVOL = 0x80986f00
-+ UBI_IOCRMVOL = 0x80046f01
-+ UBI_IOCRNVOL = 0x91106f03
-+ UBI_IOCRPEB = 0x80046f04
-+ UBI_IOCRSVOL = 0x800c6f02
-+ UBI_IOCSETVOLPROP = 0x80104f06
-+ UBI_IOCSPEB = 0x80046f05
-+ UBI_IOCVOLCRBLK = 0x80804f07
-+ UBI_IOCVOLRMBLK = 0x20004f08
-+ UBI_IOCVOLUP = 0x80084f00
-+ VDISCARD = 0xd
-+ VEOF = 0x10
-+ VEOL = 0x11
-+ VEOL2 = 0x6
-+ VMIN = 0x4
-+ VREPRINT = 0xc
-+ VSTART = 0x8
-+ VSTOP = 0x9
-+ VSUSP = 0xa
-+ VSWTC = 0x7
-+ VSWTCH = 0x7
-+ VT1 = 0x4000
-+ VTDLY = 0x4000
-+ VTIME = 0x5
-+ VWERASE = 0xe
-+ WDIOC_GETBOOTSTATUS = 0x40045702
-+ WDIOC_GETPRETIMEOUT = 0x40045709
-+ WDIOC_GETSTATUS = 0x40045701
-+ WDIOC_GETSUPPORT = 0x40285700
-+ WDIOC_GETTEMP = 0x40045703
-+ WDIOC_GETTIMELEFT = 0x4004570a
-+ WDIOC_GETTIMEOUT = 0x40045707
-+ WDIOC_KEEPALIVE = 0x40045705
-+ WDIOC_SETOPTIONS = 0x40045704
-+ WORDSIZE = 0x40
-+ XCASE = 0x4
-+ XTABS = 0x1800
- )
-
- // Errors
- const (
-- E2BIG = syscall.Errno(0x7)
-- EACCES = syscall.Errno(0xd)
- EADDRINUSE = syscall.Errno(0x7d)
- EADDRNOTAVAIL = syscall.Errno(0x7e)
- EADV = syscall.Errno(0x44)
- EAFNOSUPPORT = syscall.Errno(0x7c)
-- EAGAIN = syscall.Errno(0xb)
- EALREADY = syscall.Errno(0x95)
- EBADE = syscall.Errno(0x32)
-- EBADF = syscall.Errno(0x9)
- EBADFD = syscall.Errno(0x51)
- EBADMSG = syscall.Errno(0x4d)
- EBADR = syscall.Errno(0x33)
- EBADRQC = syscall.Errno(0x36)
- EBADSLT = syscall.Errno(0x37)
- EBFONT = syscall.Errno(0x3b)
-- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x9e)
-- ECHILD = syscall.Errno(0xa)
- ECHRNG = syscall.Errno(0x25)
- ECOMM = syscall.Errno(0x46)
- ECONNABORTED = syscall.Errno(0x82)
-@@ -1886,12 +502,8 @@ const (
- EDEADLK = syscall.Errno(0x2d)
- EDEADLOCK = syscall.Errno(0x38)
- EDESTADDRREQ = syscall.Errno(0x60)
-- EDOM = syscall.Errno(0x21)
- EDOTDOT = syscall.Errno(0x49)
- EDQUOT = syscall.Errno(0x46d)
-- EEXIST = syscall.Errno(0x11)
-- EFAULT = syscall.Errno(0xe)
-- EFBIG = syscall.Errno(0x1b)
- EHOSTDOWN = syscall.Errno(0x93)
- EHOSTUNREACH = syscall.Errno(0x94)
- EHWPOISON = syscall.Errno(0xa8)
-@@ -1899,11 +511,7 @@ const (
- EILSEQ = syscall.Errno(0x58)
- EINIT = syscall.Errno(0x8d)
- EINPROGRESS = syscall.Errno(0x96)
-- EINTR = syscall.Errno(0x4)
-- EINVAL = syscall.Errno(0x16)
-- EIO = syscall.Errno(0x5)
- EISCONN = syscall.Errno(0x85)
-- EISDIR = syscall.Errno(0x15)
- EISNAM = syscall.Errno(0x8b)
- EKEYEXPIRED = syscall.Errno(0xa2)
- EKEYREJECTED = syscall.Errno(0xa4)
-@@ -1920,8 +528,6 @@ const (
- ELNRNG = syscall.Errno(0x29)
- ELOOP = syscall.Errno(0x5a)
- EMEDIUMTYPE = syscall.Errno(0xa0)
-- EMFILE = syscall.Errno(0x18)
-- EMLINK = syscall.Errno(0x1f)
- EMSGSIZE = syscall.Errno(0x61)
- EMULTIHOP = syscall.Errno(0x4a)
- ENAMETOOLONG = syscall.Errno(0x4e)
-@@ -1929,100 +535,68 @@ const (
- ENETDOWN = syscall.Errno(0x7f)
- ENETRESET = syscall.Errno(0x81)
- ENETUNREACH = syscall.Errno(0x80)
-- ENFILE = syscall.Errno(0x17)
- ENOANO = syscall.Errno(0x35)
- ENOBUFS = syscall.Errno(0x84)
- ENOCSI = syscall.Errno(0x2b)
- ENODATA = syscall.Errno(0x3d)
-- ENODEV = syscall.Errno(0x13)
-- ENOENT = syscall.Errno(0x2)
-- ENOEXEC = syscall.Errno(0x8)
- ENOKEY = syscall.Errno(0xa1)
- ENOLCK = syscall.Errno(0x2e)
- ENOLINK = syscall.Errno(0x43)
- ENOMEDIUM = syscall.Errno(0x9f)
-- ENOMEM = syscall.Errno(0xc)
- ENOMSG = syscall.Errno(0x23)
- ENONET = syscall.Errno(0x40)
- ENOPKG = syscall.Errno(0x41)
- ENOPROTOOPT = syscall.Errno(0x63)
-- ENOSPC = syscall.Errno(0x1c)
- ENOSR = syscall.Errno(0x3f)
- ENOSTR = syscall.Errno(0x3c)
- ENOSYS = syscall.Errno(0x59)
-- ENOTBLK = syscall.Errno(0xf)
- ENOTCONN = syscall.Errno(0x86)
-- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x5d)
- ENOTNAM = syscall.Errno(0x89)
- ENOTRECOVERABLE = syscall.Errno(0xa6)
- ENOTSOCK = syscall.Errno(0x5f)
- ENOTSUP = syscall.Errno(0x7a)
-- ENOTTY = syscall.Errno(0x19)
- ENOTUNIQ = syscall.Errno(0x50)
-- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x7a)
- EOVERFLOW = syscall.Errno(0x4f)
- EOWNERDEAD = syscall.Errno(0xa5)
-- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x7b)
-- EPIPE = syscall.Errno(0x20)
- EPROTO = syscall.Errno(0x47)
- EPROTONOSUPPORT = syscall.Errno(0x78)
- EPROTOTYPE = syscall.Errno(0x62)
-- ERANGE = syscall.Errno(0x22)
- EREMCHG = syscall.Errno(0x52)
- EREMDEV = syscall.Errno(0x8e)
- EREMOTE = syscall.Errno(0x42)
- EREMOTEIO = syscall.Errno(0x8c)
- ERESTART = syscall.Errno(0x5b)
- ERFKILL = syscall.Errno(0xa7)
-- EROFS = syscall.Errno(0x1e)
- ESHUTDOWN = syscall.Errno(0x8f)
- ESOCKTNOSUPPORT = syscall.Errno(0x79)
-- ESPIPE = syscall.Errno(0x1d)
-- ESRCH = syscall.Errno(0x3)
- ESRMNT = syscall.Errno(0x45)
- ESTALE = syscall.Errno(0x97)
- ESTRPIPE = syscall.Errno(0x5c)
- ETIME = syscall.Errno(0x3e)
- ETIMEDOUT = syscall.Errno(0x91)
- ETOOMANYREFS = syscall.Errno(0x90)
-- ETXTBSY = syscall.Errno(0x1a)
- EUCLEAN = syscall.Errno(0x87)
- EUNATCH = syscall.Errno(0x2a)
- EUSERS = syscall.Errno(0x5e)
-- EWOULDBLOCK = syscall.Errno(0xb)
-- EXDEV = syscall.Errno(0x12)
- EXFULL = syscall.Errno(0x34)
- )
-
- // Signals
- const (
-- SIGABRT = syscall.Signal(0x6)
-- SIGALRM = syscall.Signal(0xe)
- SIGBUS = syscall.Signal(0xa)
- SIGCHLD = syscall.Signal(0x12)
- SIGCLD = syscall.Signal(0x12)
- SIGCONT = syscall.Signal(0x19)
- SIGEMT = syscall.Signal(0x7)
-- SIGFPE = syscall.Signal(0x8)
-- SIGHUP = syscall.Signal(0x1)
-- SIGILL = syscall.Signal(0x4)
-- SIGINT = syscall.Signal(0x2)
- SIGIO = syscall.Signal(0x16)
-- SIGIOT = syscall.Signal(0x6)
-- SIGKILL = syscall.Signal(0x9)
-- SIGPIPE = syscall.Signal(0xd)
- SIGPOLL = syscall.Signal(0x16)
- SIGPROF = syscall.Signal(0x1d)
- SIGPWR = syscall.Signal(0x13)
-- SIGQUIT = syscall.Signal(0x3)
-- SIGSEGV = syscall.Signal(0xb)
- SIGSTOP = syscall.Signal(0x17)
- SIGSYS = syscall.Signal(0xc)
-- SIGTERM = syscall.Signal(0xf)
-- SIGTRAP = syscall.Signal(0x5)
- SIGTSTP = syscall.Signal(0x18)
- SIGTTIN = syscall.Signal(0x1a)
- SIGTTOU = syscall.Signal(0x1b)
-@@ -2036,174 +610,182 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "no such device or address",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource temporarily unavailable",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device or resource busy",
-- 17: "file exists",
-- 18: "invalid cross-device link",
-- 19: "no such device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "numerical result out of range",
-- 35: "no message of desired type",
-- 36: "identifier removed",
-- 37: "channel number out of range",
-- 38: "level 2 not synchronized",
-- 39: "level 3 halted",
-- 40: "level 3 reset",
-- 41: "link number out of range",
-- 42: "protocol driver not attached",
-- 43: "no CSI structure available",
-- 44: "level 2 halted",
-- 45: "resource deadlock avoided",
-- 46: "no locks available",
-- 50: "invalid exchange",
-- 51: "invalid request descriptor",
-- 52: "exchange full",
-- 53: "no anode",
-- 54: "invalid request code",
-- 55: "invalid slot",
-- 56: "file locking deadlock error",
-- 59: "bad font file format",
-- 60: "device not a stream",
-- 61: "no data available",
-- 62: "timer expired",
-- 63: "out of streams resources",
-- 64: "machine is not on the network",
-- 65: "package not installed",
-- 66: "object is remote",
-- 67: "link has been severed",
-- 68: "advertise error",
-- 69: "srmount error",
-- 70: "communication error on send",
-- 71: "protocol error",
-- 73: "RFS specific error",
-- 74: "multihop attempted",
-- 77: "bad message",
-- 78: "file name too long",
-- 79: "value too large for defined data type",
-- 80: "name not unique on network",
-- 81: "file descriptor in bad state",
-- 82: "remote address changed",
-- 83: "can not access a needed shared library",
-- 84: "accessing a corrupted shared library",
-- 85: ".lib section in a.out corrupted",
-- 86: "attempting to link in too many shared libraries",
-- 87: "cannot exec a shared library directly",
-- 88: "invalid or incomplete multibyte or wide character",
-- 89: "function not implemented",
-- 90: "too many levels of symbolic links",
-- 91: "interrupted system call should be restarted",
-- 92: "streams pipe error",
-- 93: "directory not empty",
-- 94: "too many users",
-- 95: "socket operation on non-socket",
-- 96: "destination address required",
-- 97: "message too long",
-- 98: "protocol wrong type for socket",
-- 99: "protocol not available",
-- 120: "protocol not supported",
-- 121: "socket type not supported",
-- 122: "operation not supported",
-- 123: "protocol family not supported",
-- 124: "address family not supported by protocol",
-- 125: "address already in use",
-- 126: "cannot assign requested address",
-- 127: "network is down",
-- 128: "network is unreachable",
-- 129: "network dropped connection on reset",
-- 130: "software caused connection abort",
-- 131: "connection reset by peer",
-- 132: "no buffer space available",
-- 133: "transport endpoint is already connected",
-- 134: "transport endpoint is not connected",
-- 135: "structure needs cleaning",
-- 137: "not a XENIX named type file",
-- 138: "no XENIX semaphores available",
-- 139: "is a named type file",
-- 140: "remote I/O error",
-- 141: "unknown error 141",
-- 142: "unknown error 142",
-- 143: "cannot send after transport endpoint shutdown",
-- 144: "too many references: cannot splice",
-- 145: "connection timed out",
-- 146: "connection refused",
-- 147: "host is down",
-- 148: "no route to host",
-- 149: "operation already in progress",
-- 150: "operation now in progress",
-- 151: "stale file handle",
-- 158: "operation canceled",
-- 159: "no medium found",
-- 160: "wrong medium type",
-- 161: "required key not available",
-- 162: "key has expired",
-- 163: "key has been revoked",
-- 164: "key was rejected by service",
-- 165: "owner died",
-- 166: "state not recoverable",
-- 167: "operation not possible due to RF-kill",
-- 168: "memory page has hardware error",
-- 1133: "disk quota exceeded",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device or resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "invalid cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "numerical result out of range"},
-+ {35, "ENOMSG", "no message of desired type"},
-+ {36, "EIDRM", "identifier removed"},
-+ {37, "ECHRNG", "channel number out of range"},
-+ {38, "EL2NSYNC", "level 2 not synchronized"},
-+ {39, "EL3HLT", "level 3 halted"},
-+ {40, "EL3RST", "level 3 reset"},
-+ {41, "ELNRNG", "link number out of range"},
-+ {42, "EUNATCH", "protocol driver not attached"},
-+ {43, "ENOCSI", "no CSI structure available"},
-+ {44, "EL2HLT", "level 2 halted"},
-+ {45, "EDEADLK", "resource deadlock avoided"},
-+ {46, "ENOLCK", "no locks available"},
-+ {50, "EBADE", "invalid exchange"},
-+ {51, "EBADR", "invalid request descriptor"},
-+ {52, "EXFULL", "exchange full"},
-+ {53, "ENOANO", "no anode"},
-+ {54, "EBADRQC", "invalid request code"},
-+ {55, "EBADSLT", "invalid slot"},
-+ {56, "EDEADLOCK", "file locking deadlock error"},
-+ {59, "EBFONT", "bad font file format"},
-+ {60, "ENOSTR", "device not a stream"},
-+ {61, "ENODATA", "no data available"},
-+ {62, "ETIME", "timer expired"},
-+ {63, "ENOSR", "out of streams resources"},
-+ {64, "ENONET", "machine is not on the network"},
-+ {65, "ENOPKG", "package not installed"},
-+ {66, "EREMOTE", "object is remote"},
-+ {67, "ENOLINK", "link has been severed"},
-+ {68, "EADV", "advertise error"},
-+ {69, "ESRMNT", "srmount error"},
-+ {70, "ECOMM", "communication error on send"},
-+ {71, "EPROTO", "protocol error"},
-+ {73, "EDOTDOT", "RFS specific error"},
-+ {74, "EMULTIHOP", "multihop attempted"},
-+ {77, "EBADMSG", "bad message"},
-+ {78, "ENAMETOOLONG", "file name too long"},
-+ {79, "EOVERFLOW", "value too large for defined data type"},
-+ {80, "ENOTUNIQ", "name not unique on network"},
-+ {81, "EBADFD", "file descriptor in bad state"},
-+ {82, "EREMCHG", "remote address changed"},
-+ {83, "ELIBACC", "can not access a needed shared library"},
-+ {84, "ELIBBAD", "accessing a corrupted shared library"},
-+ {85, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {86, "ELIBMAX", "attempting to link in too many shared libraries"},
-+ {87, "ELIBEXEC", "cannot exec a shared library directly"},
-+ {88, "EILSEQ", "invalid or incomplete multibyte or wide character"},
-+ {89, "ENOSYS", "function not implemented"},
-+ {90, "ELOOP", "too many levels of symbolic links"},
-+ {91, "ERESTART", "interrupted system call should be restarted"},
-+ {92, "ESTRPIPE", "streams pipe error"},
-+ {93, "ENOTEMPTY", "directory not empty"},
-+ {94, "EUSERS", "too many users"},
-+ {95, "ENOTSOCK", "socket operation on non-socket"},
-+ {96, "EDESTADDRREQ", "destination address required"},
-+ {97, "EMSGSIZE", "message too long"},
-+ {98, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {99, "ENOPROTOOPT", "protocol not available"},
-+ {120, "EPROTONOSUPPORT", "protocol not supported"},
-+ {121, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {122, "ENOTSUP", "operation not supported"},
-+ {123, "EPFNOSUPPORT", "protocol family not supported"},
-+ {124, "EAFNOSUPPORT", "address family not supported by protocol"},
-+ {125, "EADDRINUSE", "address already in use"},
-+ {126, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {127, "ENETDOWN", "network is down"},
-+ {128, "ENETUNREACH", "network is unreachable"},
-+ {129, "ENETRESET", "network dropped connection on reset"},
-+ {130, "ECONNABORTED", "software caused connection abort"},
-+ {131, "ECONNRESET", "connection reset by peer"},
-+ {132, "ENOBUFS", "no buffer space available"},
-+ {133, "EISCONN", "transport endpoint is already connected"},
-+ {134, "ENOTCONN", "transport endpoint is not connected"},
-+ {135, "EUCLEAN", "structure needs cleaning"},
-+ {137, "ENOTNAM", "not a XENIX named type file"},
-+ {138, "ENAVAIL", "no XENIX semaphores available"},
-+ {139, "EISNAM", "is a named type file"},
-+ {140, "EREMOTEIO", "remote I/O error"},
-+ {141, "EINIT", "unknown error 141"},
-+ {142, "EREMDEV", "unknown error 142"},
-+ {143, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
-+ {144, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {145, "ETIMEDOUT", "connection timed out"},
-+ {146, "ECONNREFUSED", "connection refused"},
-+ {147, "EHOSTDOWN", "host is down"},
-+ {148, "EHOSTUNREACH", "no route to host"},
-+ {149, "EALREADY", "operation already in progress"},
-+ {150, "EINPROGRESS", "operation now in progress"},
-+ {151, "ESTALE", "stale file handle"},
-+ {158, "ECANCELED", "operation canceled"},
-+ {159, "ENOMEDIUM", "no medium found"},
-+ {160, "EMEDIUMTYPE", "wrong medium type"},
-+ {161, "ENOKEY", "required key not available"},
-+ {162, "EKEYEXPIRED", "key has expired"},
-+ {163, "EKEYREVOKED", "key has been revoked"},
-+ {164, "EKEYREJECTED", "key was rejected by service"},
-+ {165, "EOWNERDEAD", "owner died"},
-+ {166, "ENOTRECOVERABLE", "state not recoverable"},
-+ {167, "ERFKILL", "operation not possible due to RF-kill"},
-+ {168, "EHWPOISON", "memory page has hardware error"},
-+ {1133, "EDQUOT", "disk quota exceeded"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/breakpoint trap",
-- 6: "aborted",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "user defined signal 1",
-- 17: "user defined signal 2",
-- 18: "child exited",
-- 19: "power failure",
-- 20: "window changed",
-- 21: "urgent I/O condition",
-- 22: "I/O possible",
-- 23: "stopped (signal)",
-- 24: "stopped",
-- 25: "continued",
-- 26: "stopped (tty input)",
-- 27: "stopped (tty output)",
-- 28: "virtual timer expired",
-- 29: "profiling timer expired",
-- 30: "CPU time limit exceeded",
-- 31: "file size limit exceeded",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/breakpoint trap"},
-+ {6, "SIGABRT", "aborted"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGUSR1", "user defined signal 1"},
-+ {17, "SIGUSR2", "user defined signal 2"},
-+ {18, "SIGCHLD", "child exited"},
-+ {19, "SIGPWR", "power failure"},
-+ {20, "SIGWINCH", "window changed"},
-+ {21, "SIGURG", "urgent I/O condition"},
-+ {22, "SIGIO", "I/O possible"},
-+ {23, "SIGSTOP", "stopped (signal)"},
-+ {24, "SIGTSTP", "stopped"},
-+ {25, "SIGCONT", "continued"},
-+ {26, "SIGTTIN", "stopped (tty input)"},
-+ {27, "SIGTTOU", "stopped (tty output)"},
-+ {28, "SIGVTALRM", "virtual timer expired"},
-+ {29, "SIGPROF", "profiling timer expired"},
-+ {30, "SIGXCPU", "CPU time limit exceeded"},
-+ {31, "SIGXFSZ", "file size limit exceeded"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
-index 2310beeb..e758b61e 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
-@@ -3,7 +3,7 @@
-
- // +build mips64le,linux
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
-
- package unix
-@@ -11,1873 +11,489 @@ package unix
- import "syscall"
-
- const (
-- AF_ALG = 0x26
-- AF_APPLETALK = 0x5
-- AF_ASH = 0x12
-- AF_ATMPVC = 0x8
-- AF_ATMSVC = 0x14
-- AF_AX25 = 0x3
-- AF_BLUETOOTH = 0x1f
-- AF_BRIDGE = 0x7
-- AF_CAIF = 0x25
-- AF_CAN = 0x1d
-- AF_DECnet = 0xc
-- AF_ECONET = 0x13
-- AF_FILE = 0x1
-- AF_IB = 0x1b
-- AF_IEEE802154 = 0x24
-- AF_INET = 0x2
-- AF_INET6 = 0xa
-- AF_IPX = 0x4
-- AF_IRDA = 0x17
-- AF_ISDN = 0x22
-- AF_IUCV = 0x20
-- AF_KCM = 0x29
-- AF_KEY = 0xf
-- AF_LLC = 0x1a
-- AF_LOCAL = 0x1
-- AF_MAX = 0x2b
-- AF_MPLS = 0x1c
-- AF_NETBEUI = 0xd
-- AF_NETLINK = 0x10
-- AF_NETROM = 0x6
-- AF_NFC = 0x27
-- AF_PACKET = 0x11
-- AF_PHONET = 0x23
-- AF_PPPOX = 0x18
-- AF_QIPCRTR = 0x2a
-- AF_RDS = 0x15
-- AF_ROSE = 0xb
-- AF_ROUTE = 0x10
-- AF_RXRPC = 0x21
-- AF_SECURITY = 0xe
-- AF_SNA = 0x16
-- AF_TIPC = 0x1e
-- AF_UNIX = 0x1
-- AF_UNSPEC = 0x0
-- AF_VSOCK = 0x28
-- AF_WANPIPE = 0x19
-- AF_X25 = 0x9
-- ALG_OP_DECRYPT = 0x0
-- ALG_OP_ENCRYPT = 0x1
-- ALG_SET_AEAD_ASSOCLEN = 0x4
-- ALG_SET_AEAD_AUTHSIZE = 0x5
-- ALG_SET_IV = 0x2
-- ALG_SET_KEY = 0x1
-- ALG_SET_OP = 0x3
-- ARPHRD_6LOWPAN = 0x339
-- ARPHRD_ADAPT = 0x108
-- ARPHRD_APPLETLK = 0x8
-- ARPHRD_ARCNET = 0x7
-- ARPHRD_ASH = 0x30d
-- ARPHRD_ATM = 0x13
-- ARPHRD_AX25 = 0x3
-- ARPHRD_BIF = 0x307
-- ARPHRD_CAIF = 0x336
-- ARPHRD_CAN = 0x118
-- ARPHRD_CHAOS = 0x5
-- ARPHRD_CISCO = 0x201
-- ARPHRD_CSLIP = 0x101
-- ARPHRD_CSLIP6 = 0x103
-- ARPHRD_DDCMP = 0x205
-- ARPHRD_DLCI = 0xf
-- ARPHRD_ECONET = 0x30e
-- ARPHRD_EETHER = 0x2
-- ARPHRD_ETHER = 0x1
-- ARPHRD_EUI64 = 0x1b
-- ARPHRD_FCAL = 0x311
-- ARPHRD_FCFABRIC = 0x313
-- ARPHRD_FCPL = 0x312
-- ARPHRD_FCPP = 0x310
-- ARPHRD_FDDI = 0x306
-- ARPHRD_FRAD = 0x302
-- ARPHRD_HDLC = 0x201
-- ARPHRD_HIPPI = 0x30c
-- ARPHRD_HWX25 = 0x110
-- ARPHRD_IEEE1394 = 0x18
-- ARPHRD_IEEE802 = 0x6
-- ARPHRD_IEEE80211 = 0x321
-- ARPHRD_IEEE80211_PRISM = 0x322
-- ARPHRD_IEEE80211_RADIOTAP = 0x323
-- ARPHRD_IEEE802154 = 0x324
-- ARPHRD_IEEE802154_MONITOR = 0x325
-- ARPHRD_IEEE802_TR = 0x320
-- ARPHRD_INFINIBAND = 0x20
-- ARPHRD_IP6GRE = 0x337
-- ARPHRD_IPDDP = 0x309
-- ARPHRD_IPGRE = 0x30a
-- ARPHRD_IRDA = 0x30f
-- ARPHRD_LAPB = 0x204
-- ARPHRD_LOCALTLK = 0x305
-- ARPHRD_LOOPBACK = 0x304
-- ARPHRD_METRICOM = 0x17
-- ARPHRD_NETLINK = 0x338
-- ARPHRD_NETROM = 0x0
-- ARPHRD_NONE = 0xfffe
-- ARPHRD_PHONET = 0x334
-- ARPHRD_PHONET_PIPE = 0x335
-- ARPHRD_PIMREG = 0x30b
-- ARPHRD_PPP = 0x200
-- ARPHRD_PRONET = 0x4
-- ARPHRD_RAWHDLC = 0x206
-- ARPHRD_ROSE = 0x10e
-- ARPHRD_RSRVD = 0x104
-- ARPHRD_SIT = 0x308
-- ARPHRD_SKIP = 0x303
-- ARPHRD_SLIP = 0x100
-- ARPHRD_SLIP6 = 0x102
-- ARPHRD_TUNNEL = 0x300
-- ARPHRD_TUNNEL6 = 0x301
-- ARPHRD_VOID = 0xffff
-- ARPHRD_X25 = 0x10f
-- B0 = 0x0
-- B1000000 = 0x1008
-- B110 = 0x3
-- B115200 = 0x1002
-- B1152000 = 0x1009
-- B1200 = 0x9
-- B134 = 0x4
-- B150 = 0x5
-- B1500000 = 0x100a
-- B1800 = 0xa
-- B19200 = 0xe
-- B200 = 0x6
-- B2000000 = 0x100b
-- B230400 = 0x1003
-- B2400 = 0xb
-- B2500000 = 0x100c
-- B300 = 0x7
-- B3000000 = 0x100d
-- B3500000 = 0x100e
-- B38400 = 0xf
-- B4000000 = 0x100f
-- B460800 = 0x1004
-- B4800 = 0xc
-- B50 = 0x1
-- B500000 = 0x1005
-- B57600 = 0x1001
-- B576000 = 0x1006
-- B600 = 0x8
-- B75 = 0x2
-- B921600 = 0x1007
-- B9600 = 0xd
-- BLKBSZGET = 0x40081270
-- BLKBSZSET = 0x80081271
-- BLKFLSBUF = 0x20001261
-- BLKFRAGET = 0x20001265
-- BLKFRASET = 0x20001264
-- BLKGETSIZE = 0x20001260
-- BLKGETSIZE64 = 0x40081272
-- BLKPBSZGET = 0x2000127b
-- BLKRAGET = 0x20001263
-- BLKRASET = 0x20001262
-- BLKROGET = 0x2000125e
-- BLKROSET = 0x2000125d
-- BLKRRPART = 0x2000125f
-- BLKSECTGET = 0x20001267
-- BLKSECTSET = 0x20001266
-- BLKSSZGET = 0x20001268
-- BOTHER = 0x1000
-- BPF_A = 0x10
-- BPF_ABS = 0x20
-- BPF_ADD = 0x0
-- BPF_ALU = 0x4
-- BPF_AND = 0x50
-- BPF_B = 0x10
-- BPF_DIV = 0x30
-- BPF_H = 0x8
-- BPF_IMM = 0x0
-- BPF_IND = 0x40
-- BPF_JA = 0x0
-- BPF_JEQ = 0x10
-- BPF_JGE = 0x30
-- BPF_JGT = 0x20
-- BPF_JMP = 0x5
-- BPF_JSET = 0x40
-- BPF_K = 0x0
-- BPF_LD = 0x0
-- BPF_LDX = 0x1
-- BPF_LEN = 0x80
-- BPF_LL_OFF = -0x200000
-- BPF_LSH = 0x60
-- BPF_MAJOR_VERSION = 0x1
-- BPF_MAXINSNS = 0x1000
-- BPF_MEM = 0x60
-- BPF_MEMWORDS = 0x10
-- BPF_MINOR_VERSION = 0x1
-- BPF_MISC = 0x7
-- BPF_MOD = 0x90
-- BPF_MSH = 0xa0
-- BPF_MUL = 0x20
-- BPF_NEG = 0x80
-- BPF_NET_OFF = -0x100000
-- BPF_OR = 0x40
-- BPF_RET = 0x6
-- BPF_RSH = 0x70
-- BPF_ST = 0x2
-- BPF_STX = 0x3
-- BPF_SUB = 0x10
-- BPF_TAX = 0x0
-- BPF_TXA = 0x80
-- BPF_W = 0x0
-- BPF_X = 0x8
-- BPF_XOR = 0xa0
-- BRKINT = 0x2
-- BS0 = 0x0
-- BS1 = 0x2000
-- BSDLY = 0x2000
-- CAN_BCM = 0x2
-- CAN_EFF_FLAG = 0x80000000
-- CAN_EFF_ID_BITS = 0x1d
-- CAN_EFF_MASK = 0x1fffffff
-- CAN_ERR_FLAG = 0x20000000
-- CAN_ERR_MASK = 0x1fffffff
-- CAN_INV_FILTER = 0x20000000
-- CAN_ISOTP = 0x6
-- CAN_MAX_DLC = 0x8
-- CAN_MAX_DLEN = 0x8
-- CAN_MCNET = 0x5
-- CAN_MTU = 0x10
-- CAN_NPROTO = 0x7
-- CAN_RAW = 0x1
-- CAN_RAW_FILTER_MAX = 0x200
-- CAN_RTR_FLAG = 0x40000000
-- CAN_SFF_ID_BITS = 0xb
-- CAN_SFF_MASK = 0x7ff
-- CAN_TP16 = 0x3
-- CAN_TP20 = 0x4
-- CBAUD = 0x100f
-- CBAUDEX = 0x1000
-- CFLUSH = 0xf
-- CIBAUD = 0x100f0000
-- CLOCAL = 0x800
-- CLOCK_BOOTTIME = 0x7
-- CLOCK_BOOTTIME_ALARM = 0x9
-- CLOCK_DEFAULT = 0x0
-- CLOCK_EXT = 0x1
-- CLOCK_INT = 0x2
-- CLOCK_MONOTONIC = 0x1
-- CLOCK_MONOTONIC_COARSE = 0x6
-- CLOCK_MONOTONIC_RAW = 0x4
-- CLOCK_PROCESS_CPUTIME_ID = 0x2
-- CLOCK_REALTIME = 0x0
-- CLOCK_REALTIME_ALARM = 0x8
-- CLOCK_REALTIME_COARSE = 0x5
-- CLOCK_TAI = 0xb
-- CLOCK_THREAD_CPUTIME_ID = 0x3
-- CLOCK_TXFROMRX = 0x4
-- CLOCK_TXINT = 0x3
-- CLONE_CHILD_CLEARTID = 0x200000
-- CLONE_CHILD_SETTID = 0x1000000
-- CLONE_DETACHED = 0x400000
-- CLONE_FILES = 0x400
-- CLONE_FS = 0x200
-- CLONE_IO = 0x80000000
-- CLONE_NEWCGROUP = 0x2000000
-- CLONE_NEWIPC = 0x8000000
-- CLONE_NEWNET = 0x40000000
-- CLONE_NEWNS = 0x20000
-- CLONE_NEWPID = 0x20000000
-- CLONE_NEWUSER = 0x10000000
-- CLONE_NEWUTS = 0x4000000
-- CLONE_PARENT = 0x8000
-- CLONE_PARENT_SETTID = 0x100000
-- CLONE_PTRACE = 0x2000
-- CLONE_SETTLS = 0x80000
-- CLONE_SIGHAND = 0x800
-- CLONE_SYSVSEM = 0x40000
-- CLONE_THREAD = 0x10000
-- CLONE_UNTRACED = 0x800000
-- CLONE_VFORK = 0x4000
-- CLONE_VM = 0x100
-- CMSPAR = 0x40000000
-- CR0 = 0x0
-- CR1 = 0x200
-- CR2 = 0x400
-- CR3 = 0x600
-- CRDLY = 0x600
-- CREAD = 0x80
-- CRTSCTS = 0x80000000
-- CS5 = 0x0
-- CS6 = 0x10
-- CS7 = 0x20
-- CS8 = 0x30
-- CSIGNAL = 0xff
-- CSIZE = 0x30
-- CSTART = 0x11
-- CSTATUS = 0x0
-- CSTOP = 0x13
-- CSTOPB = 0x40
-- CSUSP = 0x1a
-- DT_BLK = 0x6
-- DT_CHR = 0x2
-- DT_DIR = 0x4
-- DT_FIFO = 0x1
-- DT_LNK = 0xa
-- DT_REG = 0x8
-- DT_SOCK = 0xc
-- DT_UNKNOWN = 0x0
-- DT_WHT = 0xe
-- ECHO = 0x8
-- ECHOCTL = 0x200
-- ECHOE = 0x10
-- ECHOK = 0x20
-- ECHOKE = 0x800
-- ECHONL = 0x40
-- ECHOPRT = 0x400
-- EFD_CLOEXEC = 0x80000
-- EFD_NONBLOCK = 0x80
-- EFD_SEMAPHORE = 0x1
-- ENCODING_DEFAULT = 0x0
-- ENCODING_FM_MARK = 0x3
-- ENCODING_FM_SPACE = 0x4
-- ENCODING_MANCHESTER = 0x5
-- ENCODING_NRZ = 0x1
-- ENCODING_NRZI = 0x2
-- EPOLLERR = 0x8
-- EPOLLET = 0x80000000
-- EPOLLEXCLUSIVE = 0x10000000
-- EPOLLHUP = 0x10
-- EPOLLIN = 0x1
-- EPOLLMSG = 0x400
-- EPOLLONESHOT = 0x40000000
-- EPOLLOUT = 0x4
-- EPOLLPRI = 0x2
-- EPOLLRDBAND = 0x80
-- EPOLLRDHUP = 0x2000
-- EPOLLRDNORM = 0x40
-- EPOLLWAKEUP = 0x20000000
-- EPOLLWRBAND = 0x200
-- EPOLLWRNORM = 0x100
-- EPOLL_CLOEXEC = 0x80000
-- EPOLL_CTL_ADD = 0x1
-- EPOLL_CTL_DEL = 0x2
-- EPOLL_CTL_MOD = 0x3
-- ETH_P_1588 = 0x88f7
-- ETH_P_8021AD = 0x88a8
-- ETH_P_8021AH = 0x88e7
-- ETH_P_8021Q = 0x8100
-- ETH_P_80221 = 0x8917
-- ETH_P_802_2 = 0x4
-- ETH_P_802_3 = 0x1
-- ETH_P_802_3_MIN = 0x600
-- ETH_P_802_EX1 = 0x88b5
-- ETH_P_AARP = 0x80f3
-- ETH_P_AF_IUCV = 0xfbfb
-- ETH_P_ALL = 0x3
-- ETH_P_AOE = 0x88a2
-- ETH_P_ARCNET = 0x1a
-- ETH_P_ARP = 0x806
-- ETH_P_ATALK = 0x809b
-- ETH_P_ATMFATE = 0x8884
-- ETH_P_ATMMPOA = 0x884c
-- ETH_P_AX25 = 0x2
-- ETH_P_BATMAN = 0x4305
-- ETH_P_BPQ = 0x8ff
-- ETH_P_CAIF = 0xf7
-- ETH_P_CAN = 0xc
-- ETH_P_CANFD = 0xd
-- ETH_P_CONTROL = 0x16
-- ETH_P_CUST = 0x6006
-- ETH_P_DDCMP = 0x6
-- ETH_P_DEC = 0x6000
-- ETH_P_DIAG = 0x6005
-- ETH_P_DNA_DL = 0x6001
-- ETH_P_DNA_RC = 0x6002
-- ETH_P_DNA_RT = 0x6003
-- ETH_P_DSA = 0x1b
-- ETH_P_ECONET = 0x18
-- ETH_P_EDSA = 0xdada
-- ETH_P_FCOE = 0x8906
-- ETH_P_FIP = 0x8914
-- ETH_P_HDLC = 0x19
-- ETH_P_HSR = 0x892f
-- ETH_P_IEEE802154 = 0xf6
-- ETH_P_IEEEPUP = 0xa00
-- ETH_P_IEEEPUPAT = 0xa01
-- ETH_P_IP = 0x800
-- ETH_P_IPV6 = 0x86dd
-- ETH_P_IPX = 0x8137
-- ETH_P_IRDA = 0x17
-- ETH_P_LAT = 0x6004
-- ETH_P_LINK_CTL = 0x886c
-- ETH_P_LOCALTALK = 0x9
-- ETH_P_LOOP = 0x60
-- ETH_P_LOOPBACK = 0x9000
-- ETH_P_MACSEC = 0x88e5
-- ETH_P_MOBITEX = 0x15
-- ETH_P_MPLS_MC = 0x8848
-- ETH_P_MPLS_UC = 0x8847
-- ETH_P_MVRP = 0x88f5
-- ETH_P_NCSI = 0x88f8
-- ETH_P_PAE = 0x888e
-- ETH_P_PAUSE = 0x8808
-- ETH_P_PHONET = 0xf5
-- ETH_P_PPPTALK = 0x10
-- ETH_P_PPP_DISC = 0x8863
-- ETH_P_PPP_MP = 0x8
-- ETH_P_PPP_SES = 0x8864
-- ETH_P_PRP = 0x88fb
-- ETH_P_PUP = 0x200
-- ETH_P_PUPAT = 0x201
-- ETH_P_QINQ1 = 0x9100
-- ETH_P_QINQ2 = 0x9200
-- ETH_P_QINQ3 = 0x9300
-- ETH_P_RARP = 0x8035
-- ETH_P_SCA = 0x6007
-- ETH_P_SLOW = 0x8809
-- ETH_P_SNAP = 0x5
-- ETH_P_TDLS = 0x890d
-- ETH_P_TEB = 0x6558
-- ETH_P_TIPC = 0x88ca
-- ETH_P_TRAILER = 0x1c
-- ETH_P_TR_802_2 = 0x11
-- ETH_P_TSN = 0x22f0
-- ETH_P_WAN_PPP = 0x7
-- ETH_P_WCCP = 0x883e
-- ETH_P_X25 = 0x805
-- ETH_P_XDSA = 0xf8
-- EXTA = 0xe
-- EXTB = 0xf
-- EXTPROC = 0x10000
-- FALLOC_FL_COLLAPSE_RANGE = 0x8
-- FALLOC_FL_INSERT_RANGE = 0x20
-- FALLOC_FL_KEEP_SIZE = 0x1
-- FALLOC_FL_NO_HIDE_STALE = 0x4
-- FALLOC_FL_PUNCH_HOLE = 0x2
-- FALLOC_FL_UNSHARE_RANGE = 0x40
-- FALLOC_FL_ZERO_RANGE = 0x10
-- FD_CLOEXEC = 0x1
-- FD_SETSIZE = 0x400
-- FF0 = 0x0
-- FF1 = 0x8000
-- FFDLY = 0x8000
-- FLUSHO = 0x2000
-- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
-- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
-- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
-- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
-- FS_ENCRYPTION_MODE_INVALID = 0x0
-- FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
-- FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
-- FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
-- FS_KEY_DESCRIPTOR_SIZE = 0x8
-- FS_KEY_DESC_PREFIX = "fscrypt:"
-- FS_KEY_DESC_PREFIX_SIZE = 0x8
-- FS_MAX_KEY_SIZE = 0x40
-- FS_POLICY_FLAGS_PAD_16 = 0x2
-- FS_POLICY_FLAGS_PAD_32 = 0x3
-- FS_POLICY_FLAGS_PAD_4 = 0x0
-- FS_POLICY_FLAGS_PAD_8 = 0x1
-- FS_POLICY_FLAGS_PAD_MASK = 0x3
-- FS_POLICY_FLAGS_VALID = 0x3
-- F_DUPFD = 0x0
-- F_DUPFD_CLOEXEC = 0x406
-- F_EXLCK = 0x4
-- F_GETFD = 0x1
-- F_GETFL = 0x3
-- F_GETLEASE = 0x401
-- F_GETLK = 0xe
-- F_GETLK64 = 0xe
-- F_GETOWN = 0x17
-- F_GETOWN_EX = 0x10
-- F_GETPIPE_SZ = 0x408
-- F_GETSIG = 0xb
-- F_LOCK = 0x1
-- F_NOTIFY = 0x402
-- F_OFD_GETLK = 0x24
-- F_OFD_SETLK = 0x25
-- F_OFD_SETLKW = 0x26
-- F_OK = 0x0
-- F_RDLCK = 0x0
-- F_SETFD = 0x2
-- F_SETFL = 0x4
-- F_SETLEASE = 0x400
-- F_SETLK = 0x6
-- F_SETLK64 = 0x6
-- F_SETLKW = 0x7
-- F_SETLKW64 = 0x7
-- F_SETOWN = 0x18
-- F_SETOWN_EX = 0xf
-- F_SETPIPE_SZ = 0x407
-- F_SETSIG = 0xa
-- F_SHLCK = 0x8
-- F_TEST = 0x3
-- F_TLOCK = 0x2
-- F_ULOCK = 0x0
-- F_UNLCK = 0x2
-- F_WRLCK = 0x1
-- GENL_ADMIN_PERM = 0x1
-- GENL_CMD_CAP_DO = 0x2
-- GENL_CMD_CAP_DUMP = 0x4
-- GENL_CMD_CAP_HASPOL = 0x8
-- GENL_HDRLEN = 0x4
-- GENL_ID_CTRL = 0x10
-- GENL_ID_PMCRAID = 0x12
-- GENL_ID_VFS_DQUOT = 0x11
-- GENL_MAX_ID = 0x3ff
-- GENL_MIN_ID = 0x10
-- GENL_NAMSIZ = 0x10
-- GENL_START_ALLOC = 0x13
-- GENL_UNS_ADMIN_PERM = 0x10
-- GRND_NONBLOCK = 0x1
-- GRND_RANDOM = 0x2
-- HUPCL = 0x400
-- IBSHIFT = 0x10
-- ICANON = 0x2
-- ICMPV6_FILTER = 0x1
-- ICRNL = 0x100
-- IEXTEN = 0x100
-- IFA_F_DADFAILED = 0x8
-- IFA_F_DEPRECATED = 0x20
-- IFA_F_HOMEADDRESS = 0x10
-- IFA_F_MANAGETEMPADDR = 0x100
-- IFA_F_MCAUTOJOIN = 0x400
-- IFA_F_NODAD = 0x2
-- IFA_F_NOPREFIXROUTE = 0x200
-- IFA_F_OPTIMISTIC = 0x4
-- IFA_F_PERMANENT = 0x80
-- IFA_F_SECONDARY = 0x1
-- IFA_F_STABLE_PRIVACY = 0x800
-- IFA_F_TEMPORARY = 0x1
-- IFA_F_TENTATIVE = 0x40
-- IFA_MAX = 0x8
-- IFF_ALLMULTI = 0x200
-- IFF_ATTACH_QUEUE = 0x200
-- IFF_AUTOMEDIA = 0x4000
-- IFF_BROADCAST = 0x2
-- IFF_DEBUG = 0x4
-- IFF_DETACH_QUEUE = 0x400
-- IFF_DORMANT = 0x20000
-- IFF_DYNAMIC = 0x8000
-- IFF_ECHO = 0x40000
-- IFF_LOOPBACK = 0x8
-- IFF_LOWER_UP = 0x10000
-- IFF_MASTER = 0x400
-- IFF_MULTICAST = 0x1000
-- IFF_MULTI_QUEUE = 0x100
-- IFF_NOARP = 0x80
-- IFF_NOFILTER = 0x1000
-- IFF_NOTRAILERS = 0x20
-- IFF_NO_PI = 0x1000
-- IFF_ONE_QUEUE = 0x2000
-- IFF_PERSIST = 0x800
-- IFF_POINTOPOINT = 0x10
-- IFF_PORTSEL = 0x2000
-- IFF_PROMISC = 0x100
-- IFF_RUNNING = 0x40
-- IFF_SLAVE = 0x800
-- IFF_TAP = 0x2
-- IFF_TUN = 0x1
-- IFF_TUN_EXCL = 0x8000
-- IFF_UP = 0x1
-- IFF_VNET_HDR = 0x4000
-- IFF_VOLATILE = 0x70c5a
-- IFNAMSIZ = 0x10
-- IGNBRK = 0x1
-- IGNCR = 0x80
-- IGNPAR = 0x4
-- IMAXBEL = 0x2000
-- INLCR = 0x40
-- INPCK = 0x10
-- IN_ACCESS = 0x1
-- IN_ALL_EVENTS = 0xfff
-- IN_ATTRIB = 0x4
-- IN_CLASSA_HOST = 0xffffff
-- IN_CLASSA_MAX = 0x80
-- IN_CLASSA_NET = 0xff000000
-- IN_CLASSA_NSHIFT = 0x18
-- IN_CLASSB_HOST = 0xffff
-- IN_CLASSB_MAX = 0x10000
-- IN_CLASSB_NET = 0xffff0000
-- IN_CLASSB_NSHIFT = 0x10
-- IN_CLASSC_HOST = 0xff
-- IN_CLASSC_NET = 0xffffff00
-- IN_CLASSC_NSHIFT = 0x8
-- IN_CLOEXEC = 0x80000
-- IN_CLOSE = 0x18
-- IN_CLOSE_NOWRITE = 0x10
-- IN_CLOSE_WRITE = 0x8
-- IN_CREATE = 0x100
-- IN_DELETE = 0x200
-- IN_DELETE_SELF = 0x400
-- IN_DONT_FOLLOW = 0x2000000
-- IN_EXCL_UNLINK = 0x4000000
-- IN_IGNORED = 0x8000
-- IN_ISDIR = 0x40000000
-- IN_LOOPBACKNET = 0x7f
-- IN_MASK_ADD = 0x20000000
-- IN_MODIFY = 0x2
-- IN_MOVE = 0xc0
-- IN_MOVED_FROM = 0x40
-- IN_MOVED_TO = 0x80
-- IN_MOVE_SELF = 0x800
-- IN_NONBLOCK = 0x80
-- IN_ONESHOT = 0x80000000
-- IN_ONLYDIR = 0x1000000
-- IN_OPEN = 0x20
-- IN_Q_OVERFLOW = 0x4000
-- IN_UNMOUNT = 0x2000
-- IPPROTO_AH = 0x33
-- IPPROTO_BEETPH = 0x5e
-- IPPROTO_COMP = 0x6c
-- IPPROTO_DCCP = 0x21
-- IPPROTO_DSTOPTS = 0x3c
-- IPPROTO_EGP = 0x8
-- IPPROTO_ENCAP = 0x62
-- IPPROTO_ESP = 0x32
-- IPPROTO_FRAGMENT = 0x2c
-- IPPROTO_GRE = 0x2f
-- IPPROTO_HOPOPTS = 0x0
-- IPPROTO_ICMP = 0x1
-- IPPROTO_ICMPV6 = 0x3a
-- IPPROTO_IDP = 0x16
-- IPPROTO_IGMP = 0x2
-- IPPROTO_IP = 0x0
-- IPPROTO_IPIP = 0x4
-- IPPROTO_IPV6 = 0x29
-- IPPROTO_MH = 0x87
-- IPPROTO_MPLS = 0x89
-- IPPROTO_MTP = 0x5c
-- IPPROTO_NONE = 0x3b
-- IPPROTO_PIM = 0x67
-- IPPROTO_PUP = 0xc
-- IPPROTO_RAW = 0xff
-- IPPROTO_ROUTING = 0x2b
-- IPPROTO_RSVP = 0x2e
-- IPPROTO_SCTP = 0x84
-- IPPROTO_TCP = 0x6
-- IPPROTO_TP = 0x1d
-- IPPROTO_UDP = 0x11
-- IPPROTO_UDPLITE = 0x88
-- IPV6_2292DSTOPTS = 0x4
-- IPV6_2292HOPLIMIT = 0x8
-- IPV6_2292HOPOPTS = 0x3
-- IPV6_2292PKTINFO = 0x2
-- IPV6_2292PKTOPTIONS = 0x6
-- IPV6_2292RTHDR = 0x5
-- IPV6_ADDRFORM = 0x1
-- IPV6_ADD_MEMBERSHIP = 0x14
-- IPV6_AUTHHDR = 0xa
-- IPV6_CHECKSUM = 0x7
-- IPV6_DONTFRAG = 0x3e
-- IPV6_DROP_MEMBERSHIP = 0x15
-- IPV6_DSTOPTS = 0x3b
-- IPV6_HDRINCL = 0x24
-- IPV6_HOPLIMIT = 0x34
-- IPV6_HOPOPTS = 0x36
-- IPV6_IPSEC_POLICY = 0x22
-- IPV6_JOIN_ANYCAST = 0x1b
-- IPV6_JOIN_GROUP = 0x14
-- IPV6_LEAVE_ANYCAST = 0x1c
-- IPV6_LEAVE_GROUP = 0x15
-- IPV6_MTU = 0x18
-- IPV6_MTU_DISCOVER = 0x17
-- IPV6_MULTICAST_HOPS = 0x12
-- IPV6_MULTICAST_IF = 0x11
-- IPV6_MULTICAST_LOOP = 0x13
-- IPV6_NEXTHOP = 0x9
-- IPV6_PATHMTU = 0x3d
-- IPV6_PKTINFO = 0x32
-- IPV6_PMTUDISC_DO = 0x2
-- IPV6_PMTUDISC_DONT = 0x0
-- IPV6_PMTUDISC_INTERFACE = 0x4
-- IPV6_PMTUDISC_OMIT = 0x5
-- IPV6_PMTUDISC_PROBE = 0x3
-- IPV6_PMTUDISC_WANT = 0x1
-- IPV6_RECVDSTOPTS = 0x3a
-- IPV6_RECVERR = 0x19
-- IPV6_RECVHOPLIMIT = 0x33
-- IPV6_RECVHOPOPTS = 0x35
-- IPV6_RECVPATHMTU = 0x3c
-- IPV6_RECVPKTINFO = 0x31
-- IPV6_RECVRTHDR = 0x38
-- IPV6_RECVTCLASS = 0x42
-- IPV6_ROUTER_ALERT = 0x16
-- IPV6_RTHDR = 0x39
-- IPV6_RTHDRDSTOPTS = 0x37
-- IPV6_RTHDR_LOOSE = 0x0
-- IPV6_RTHDR_STRICT = 0x1
-- IPV6_RTHDR_TYPE_0 = 0x0
-- IPV6_RXDSTOPTS = 0x3b
-- IPV6_RXHOPOPTS = 0x36
-- IPV6_TCLASS = 0x43
-- IPV6_UNICAST_HOPS = 0x10
-- IPV6_V6ONLY = 0x1a
-- IPV6_XFRM_POLICY = 0x23
-- IP_ADD_MEMBERSHIP = 0x23
-- IP_ADD_SOURCE_MEMBERSHIP = 0x27
-- IP_BIND_ADDRESS_NO_PORT = 0x18
-- IP_BLOCK_SOURCE = 0x26
-- IP_CHECKSUM = 0x17
-- IP_DEFAULT_MULTICAST_LOOP = 0x1
-- IP_DEFAULT_MULTICAST_TTL = 0x1
-- IP_DF = 0x4000
-- IP_DROP_MEMBERSHIP = 0x24
-- IP_DROP_SOURCE_MEMBERSHIP = 0x28
-- IP_FREEBIND = 0xf
-- IP_HDRINCL = 0x3
-- IP_IPSEC_POLICY = 0x10
-- IP_MAXPACKET = 0xffff
-- IP_MAX_MEMBERSHIPS = 0x14
-- IP_MF = 0x2000
-- IP_MINTTL = 0x15
-- IP_MSFILTER = 0x29
-- IP_MSS = 0x240
-- IP_MTU = 0xe
-- IP_MTU_DISCOVER = 0xa
-- IP_MULTICAST_ALL = 0x31
-- IP_MULTICAST_IF = 0x20
-- IP_MULTICAST_LOOP = 0x22
-- IP_MULTICAST_TTL = 0x21
-- IP_NODEFRAG = 0x16
-- IP_OFFMASK = 0x1fff
-- IP_OPTIONS = 0x4
-- IP_ORIGDSTADDR = 0x14
-- IP_PASSSEC = 0x12
-- IP_PKTINFO = 0x8
-- IP_PKTOPTIONS = 0x9
-- IP_PMTUDISC = 0xa
-- IP_PMTUDISC_DO = 0x2
-- IP_PMTUDISC_DONT = 0x0
-- IP_PMTUDISC_INTERFACE = 0x4
-- IP_PMTUDISC_OMIT = 0x5
-- IP_PMTUDISC_PROBE = 0x3
-- IP_PMTUDISC_WANT = 0x1
-- IP_RECVERR = 0xb
-- IP_RECVOPTS = 0x6
-- IP_RECVORIGDSTADDR = 0x14
-- IP_RECVRETOPTS = 0x7
-- IP_RECVTOS = 0xd
-- IP_RECVTTL = 0xc
-- IP_RETOPTS = 0x7
-- IP_RF = 0x8000
-- IP_ROUTER_ALERT = 0x5
-- IP_TOS = 0x1
-- IP_TRANSPARENT = 0x13
-- IP_TTL = 0x2
-- IP_UNBLOCK_SOURCE = 0x25
-- IP_UNICAST_IF = 0x32
-- IP_XFRM_POLICY = 0x11
-- ISIG = 0x1
-- ISTRIP = 0x20
-- IUCLC = 0x200
-- IUTF8 = 0x4000
-- IXANY = 0x800
-- IXOFF = 0x1000
-- IXON = 0x400
-- KEYCTL_ASSUME_AUTHORITY = 0x10
-- KEYCTL_CHOWN = 0x4
-- KEYCTL_CLEAR = 0x7
-- KEYCTL_DESCRIBE = 0x6
-- KEYCTL_DH_COMPUTE = 0x17
-- KEYCTL_GET_KEYRING_ID = 0x0
-- KEYCTL_GET_PERSISTENT = 0x16
-- KEYCTL_GET_SECURITY = 0x11
-- KEYCTL_INSTANTIATE = 0xc
-- KEYCTL_INSTANTIATE_IOV = 0x14
-- KEYCTL_INVALIDATE = 0x15
-- KEYCTL_JOIN_SESSION_KEYRING = 0x1
-- KEYCTL_LINK = 0x8
-- KEYCTL_NEGATE = 0xd
-- KEYCTL_READ = 0xb
-- KEYCTL_REJECT = 0x13
-- KEYCTL_REVOKE = 0x3
-- KEYCTL_SEARCH = 0xa
-- KEYCTL_SESSION_TO_PARENT = 0x12
-- KEYCTL_SETPERM = 0x5
-- KEYCTL_SET_REQKEY_KEYRING = 0xe
-- KEYCTL_SET_TIMEOUT = 0xf
-- KEYCTL_UNLINK = 0x9
-- KEYCTL_UPDATE = 0x2
-- KEY_REQKEY_DEFL_DEFAULT = 0x0
-- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
-- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
-- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
-- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
-- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
-- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
-- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
-- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
-- KEY_SPEC_GROUP_KEYRING = -0x6
-- KEY_SPEC_PROCESS_KEYRING = -0x2
-- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
-- KEY_SPEC_REQUESTOR_KEYRING = -0x8
-- KEY_SPEC_SESSION_KEYRING = -0x3
-- KEY_SPEC_THREAD_KEYRING = -0x1
-- KEY_SPEC_USER_KEYRING = -0x4
-- KEY_SPEC_USER_SESSION_KEYRING = -0x5
-- LINUX_REBOOT_CMD_CAD_OFF = 0x0
-- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
-- LINUX_REBOOT_CMD_HALT = 0xcdef0123
-- LINUX_REBOOT_CMD_KEXEC = 0x45584543
-- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
-- LINUX_REBOOT_CMD_RESTART = 0x1234567
-- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
-- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
-- LINUX_REBOOT_MAGIC1 = 0xfee1dead
-- LINUX_REBOOT_MAGIC2 = 0x28121969
-- LOCK_EX = 0x2
-- LOCK_NB = 0x4
-- LOCK_SH = 0x1
-- LOCK_UN = 0x8
-- MADV_DODUMP = 0x11
-- MADV_DOFORK = 0xb
-- MADV_DONTDUMP = 0x10
-- MADV_DONTFORK = 0xa
-- MADV_DONTNEED = 0x4
-- MADV_FREE = 0x8
-- MADV_HUGEPAGE = 0xe
-- MADV_HWPOISON = 0x64
-- MADV_MERGEABLE = 0xc
-- MADV_NOHUGEPAGE = 0xf
-- MADV_NORMAL = 0x0
-- MADV_RANDOM = 0x1
-- MADV_REMOVE = 0x9
-- MADV_SEQUENTIAL = 0x2
-- MADV_UNMERGEABLE = 0xd
-- MADV_WILLNEED = 0x3
-- MAP_ANON = 0x800
-- MAP_ANONYMOUS = 0x800
-- MAP_DENYWRITE = 0x2000
-- MAP_EXECUTABLE = 0x4000
-- MAP_FILE = 0x0
-- MAP_FIXED = 0x10
-- MAP_GROWSDOWN = 0x1000
-- MAP_HUGETLB = 0x80000
-- MAP_HUGE_MASK = 0x3f
-- MAP_HUGE_SHIFT = 0x1a
-- MAP_LOCKED = 0x8000
-- MAP_NONBLOCK = 0x20000
-- MAP_NORESERVE = 0x400
-- MAP_POPULATE = 0x10000
-- MAP_PRIVATE = 0x2
-- MAP_RENAME = 0x800
-- MAP_SHARED = 0x1
-- MAP_STACK = 0x40000
-- MAP_TYPE = 0xf
-- MCL_CURRENT = 0x1
-- MCL_FUTURE = 0x2
-- MCL_ONFAULT = 0x4
-- MNT_DETACH = 0x2
-- MNT_EXPIRE = 0x4
-- MNT_FORCE = 0x1
-- MSG_BATCH = 0x40000
-- MSG_CMSG_CLOEXEC = 0x40000000
-- MSG_CONFIRM = 0x800
-- MSG_CTRUNC = 0x8
-- MSG_DONTROUTE = 0x4
-- MSG_DONTWAIT = 0x40
-- MSG_EOR = 0x80
-- MSG_ERRQUEUE = 0x2000
-- MSG_FASTOPEN = 0x20000000
-- MSG_FIN = 0x200
-- MSG_MORE = 0x8000
-- MSG_NOSIGNAL = 0x4000
-- MSG_OOB = 0x1
-- MSG_PEEK = 0x2
-- MSG_PROXY = 0x10
-- MSG_RST = 0x1000
-- MSG_SYN = 0x400
-- MSG_TRUNC = 0x20
-- MSG_TRYHARD = 0x4
-- MSG_WAITALL = 0x100
-- MSG_WAITFORONE = 0x10000
-- MS_ACTIVE = 0x40000000
-- MS_ASYNC = 0x1
-- MS_BIND = 0x1000
-- MS_BORN = 0x20000000
-- MS_DIRSYNC = 0x80
-- MS_INVALIDATE = 0x2
-- MS_I_VERSION = 0x800000
-- MS_KERNMOUNT = 0x400000
-- MS_LAZYTIME = 0x2000000
-- MS_MANDLOCK = 0x40
-- MS_MGC_MSK = 0xffff0000
-- MS_MGC_VAL = 0xc0ed0000
-- MS_MOVE = 0x2000
-- MS_NOATIME = 0x400
-- MS_NODEV = 0x4
-- MS_NODIRATIME = 0x800
-- MS_NOEXEC = 0x8
-- MS_NOREMOTELOCK = 0x8000000
-- MS_NOSEC = 0x10000000
-- MS_NOSUID = 0x2
-- MS_NOUSER = -0x80000000
-- MS_POSIXACL = 0x10000
-- MS_PRIVATE = 0x40000
-- MS_RDONLY = 0x1
-- MS_REC = 0x4000
-- MS_RELATIME = 0x200000
-- MS_REMOUNT = 0x20
-- MS_RMT_MASK = 0x2800051
-- MS_SHARED = 0x100000
-- MS_SILENT = 0x8000
-- MS_SLAVE = 0x80000
-- MS_STRICTATIME = 0x1000000
-- MS_SYNC = 0x4
-- MS_SYNCHRONOUS = 0x10
-- MS_UNBINDABLE = 0x20000
-- MS_VERBOSE = 0x8000
-- NAME_MAX = 0xff
-- NETLINK_ADD_MEMBERSHIP = 0x1
-- NETLINK_AUDIT = 0x9
-- NETLINK_BROADCAST_ERROR = 0x4
-- NETLINK_CAP_ACK = 0xa
-- NETLINK_CONNECTOR = 0xb
-- NETLINK_CRYPTO = 0x15
-- NETLINK_DNRTMSG = 0xe
-- NETLINK_DROP_MEMBERSHIP = 0x2
-- NETLINK_ECRYPTFS = 0x13
-- NETLINK_FIB_LOOKUP = 0xa
-- NETLINK_FIREWALL = 0x3
-- NETLINK_GENERIC = 0x10
-- NETLINK_INET_DIAG = 0x4
-- NETLINK_IP6_FW = 0xd
-- NETLINK_ISCSI = 0x8
-- NETLINK_KOBJECT_UEVENT = 0xf
-- NETLINK_LISTEN_ALL_NSID = 0x8
-- NETLINK_LIST_MEMBERSHIPS = 0x9
-- NETLINK_NETFILTER = 0xc
-- NETLINK_NFLOG = 0x5
-- NETLINK_NO_ENOBUFS = 0x5
-- NETLINK_PKTINFO = 0x3
-- NETLINK_RDMA = 0x14
-- NETLINK_ROUTE = 0x0
-- NETLINK_RX_RING = 0x6
-- NETLINK_SCSITRANSPORT = 0x12
-- NETLINK_SELINUX = 0x7
-- NETLINK_SOCK_DIAG = 0x4
-- NETLINK_TX_RING = 0x7
-- NETLINK_UNUSED = 0x1
-- NETLINK_USERSOCK = 0x2
-- NETLINK_XFRM = 0x6
-- NL0 = 0x0
-- NL1 = 0x100
-- NLA_ALIGNTO = 0x4
-- NLA_F_NESTED = 0x8000
-- NLA_F_NET_BYTEORDER = 0x4000
-- NLA_HDRLEN = 0x4
-- NLDLY = 0x100
-- NLMSG_ALIGNTO = 0x4
-- NLMSG_DONE = 0x3
-- NLMSG_ERROR = 0x2
-- NLMSG_HDRLEN = 0x10
-- NLMSG_MIN_TYPE = 0x10
-- NLMSG_NOOP = 0x1
-- NLMSG_OVERRUN = 0x4
-- NLM_F_ACK = 0x4
-- NLM_F_APPEND = 0x800
-- NLM_F_ATOMIC = 0x400
-- NLM_F_CREATE = 0x400
-- NLM_F_DUMP = 0x300
-- NLM_F_DUMP_FILTERED = 0x20
-- NLM_F_DUMP_INTR = 0x10
-- NLM_F_ECHO = 0x8
-- NLM_F_EXCL = 0x200
-- NLM_F_MATCH = 0x200
-- NLM_F_MULTI = 0x2
-- NLM_F_REPLACE = 0x100
-- NLM_F_REQUEST = 0x1
-- NLM_F_ROOT = 0x100
-- NOFLSH = 0x80
-- OCRNL = 0x8
-- OFDEL = 0x80
-- OFILL = 0x40
-- OLCUC = 0x2
-- ONLCR = 0x4
-- ONLRET = 0x20
-- ONOCR = 0x10
-- OPOST = 0x1
-- O_ACCMODE = 0x3
-- O_APPEND = 0x8
-- O_ASYNC = 0x1000
-- O_CLOEXEC = 0x80000
-- O_CREAT = 0x100
-- O_DIRECT = 0x8000
-- O_DIRECTORY = 0x10000
-- O_DSYNC = 0x10
-- O_EXCL = 0x400
-- O_FSYNC = 0x4010
-- O_LARGEFILE = 0x0
-- O_NDELAY = 0x80
-- O_NOATIME = 0x40000
-- O_NOCTTY = 0x800
-- O_NOFOLLOW = 0x20000
-- O_NONBLOCK = 0x80
-- O_PATH = 0x200000
-- O_RDONLY = 0x0
-- O_RDWR = 0x2
-- O_RSYNC = 0x4010
-- O_SYNC = 0x4010
-- O_TMPFILE = 0x410000
-- O_TRUNC = 0x200
-- O_WRONLY = 0x1
-- PACKET_ADD_MEMBERSHIP = 0x1
-- PACKET_AUXDATA = 0x8
-- PACKET_BROADCAST = 0x1
-- PACKET_COPY_THRESH = 0x7
-- PACKET_DROP_MEMBERSHIP = 0x2
-- PACKET_FANOUT = 0x12
-- PACKET_FANOUT_CBPF = 0x6
-- PACKET_FANOUT_CPU = 0x2
-- PACKET_FANOUT_DATA = 0x16
-- PACKET_FANOUT_EBPF = 0x7
-- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
-- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
-- PACKET_FANOUT_HASH = 0x0
-- PACKET_FANOUT_LB = 0x1
-- PACKET_FANOUT_QM = 0x5
-- PACKET_FANOUT_RND = 0x4
-- PACKET_FANOUT_ROLLOVER = 0x3
-- PACKET_FASTROUTE = 0x6
-- PACKET_HDRLEN = 0xb
-- PACKET_HOST = 0x0
-- PACKET_KERNEL = 0x7
-- PACKET_LOOPBACK = 0x5
-- PACKET_LOSS = 0xe
-- PACKET_MR_ALLMULTI = 0x2
-- PACKET_MR_MULTICAST = 0x0
-- PACKET_MR_PROMISC = 0x1
-- PACKET_MR_UNICAST = 0x3
-- PACKET_MULTICAST = 0x2
-- PACKET_ORIGDEV = 0x9
-- PACKET_OTHERHOST = 0x3
-- PACKET_OUTGOING = 0x4
-- PACKET_QDISC_BYPASS = 0x14
-- PACKET_RECV_OUTPUT = 0x3
-- PACKET_RESERVE = 0xc
-- PACKET_ROLLOVER_STATS = 0x15
-- PACKET_RX_RING = 0x5
-- PACKET_STATISTICS = 0x6
-- PACKET_TIMESTAMP = 0x11
-- PACKET_TX_HAS_OFF = 0x13
-- PACKET_TX_RING = 0xd
-- PACKET_TX_TIMESTAMP = 0x10
-- PACKET_USER = 0x6
-- PACKET_VERSION = 0xa
-- PACKET_VNET_HDR = 0xf
-- PARENB = 0x100
-- PARITY_CRC16_PR0 = 0x2
-- PARITY_CRC16_PR0_CCITT = 0x4
-- PARITY_CRC16_PR1 = 0x3
-- PARITY_CRC16_PR1_CCITT = 0x5
-- PARITY_CRC32_PR0_CCITT = 0x6
-- PARITY_CRC32_PR1_CCITT = 0x7
-- PARITY_DEFAULT = 0x0
-- PARITY_NONE = 0x1
-- PARMRK = 0x8
-- PARODD = 0x200
-- PENDIN = 0x4000
-- PERF_EVENT_IOC_DISABLE = 0x20002401
-- PERF_EVENT_IOC_ENABLE = 0x20002400
-- PERF_EVENT_IOC_ID = 0x40082407
-- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
-- PERF_EVENT_IOC_PERIOD = 0x80082404
-- PERF_EVENT_IOC_REFRESH = 0x20002402
-- PERF_EVENT_IOC_RESET = 0x20002403
-- PERF_EVENT_IOC_SET_BPF = 0x80042408
-- PERF_EVENT_IOC_SET_FILTER = 0x80082406
-- PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
-- PRIO_PGRP = 0x1
-- PRIO_PROCESS = 0x0
-- PRIO_USER = 0x2
-- PROT_EXEC = 0x4
-- PROT_GROWSDOWN = 0x1000000
-- PROT_GROWSUP = 0x2000000
-- PROT_NONE = 0x0
-- PROT_READ = 0x1
-- PROT_WRITE = 0x2
-- PR_CAPBSET_DROP = 0x18
-- PR_CAPBSET_READ = 0x17
-- PR_CAP_AMBIENT = 0x2f
-- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
-- PR_CAP_AMBIENT_IS_SET = 0x1
-- PR_CAP_AMBIENT_LOWER = 0x3
-- PR_CAP_AMBIENT_RAISE = 0x2
-- PR_ENDIAN_BIG = 0x0
-- PR_ENDIAN_LITTLE = 0x1
-- PR_ENDIAN_PPC_LITTLE = 0x2
-- PR_FPEMU_NOPRINT = 0x1
-- PR_FPEMU_SIGFPE = 0x2
-- PR_FP_EXC_ASYNC = 0x2
-- PR_FP_EXC_DISABLED = 0x0
-- PR_FP_EXC_DIV = 0x10000
-- PR_FP_EXC_INV = 0x100000
-- PR_FP_EXC_NONRECOV = 0x1
-- PR_FP_EXC_OVF = 0x20000
-- PR_FP_EXC_PRECISE = 0x3
-- PR_FP_EXC_RES = 0x80000
-- PR_FP_EXC_SW_ENABLE = 0x80
-- PR_FP_EXC_UND = 0x40000
-- PR_FP_MODE_FR = 0x1
-- PR_FP_MODE_FRE = 0x2
-- PR_GET_CHILD_SUBREAPER = 0x25
-- PR_GET_DUMPABLE = 0x3
-- PR_GET_ENDIAN = 0x13
-- PR_GET_FPEMU = 0x9
-- PR_GET_FPEXC = 0xb
-- PR_GET_FP_MODE = 0x2e
-- PR_GET_KEEPCAPS = 0x7
-- PR_GET_NAME = 0x10
-- PR_GET_NO_NEW_PRIVS = 0x27
-- PR_GET_PDEATHSIG = 0x2
-- PR_GET_SECCOMP = 0x15
-- PR_GET_SECUREBITS = 0x1b
-- PR_GET_THP_DISABLE = 0x2a
-- PR_GET_TID_ADDRESS = 0x28
-- PR_GET_TIMERSLACK = 0x1e
-- PR_GET_TIMING = 0xd
-- PR_GET_TSC = 0x19
-- PR_GET_UNALIGN = 0x5
-- PR_MCE_KILL = 0x21
-- PR_MCE_KILL_CLEAR = 0x0
-- PR_MCE_KILL_DEFAULT = 0x2
-- PR_MCE_KILL_EARLY = 0x1
-- PR_MCE_KILL_GET = 0x22
-- PR_MCE_KILL_LATE = 0x0
-- PR_MCE_KILL_SET = 0x1
-- PR_MPX_DISABLE_MANAGEMENT = 0x2c
-- PR_MPX_ENABLE_MANAGEMENT = 0x2b
-- PR_SET_CHILD_SUBREAPER = 0x24
-- PR_SET_DUMPABLE = 0x4
-- PR_SET_ENDIAN = 0x14
-- PR_SET_FPEMU = 0xa
-- PR_SET_FPEXC = 0xc
-- PR_SET_FP_MODE = 0x2d
-- PR_SET_KEEPCAPS = 0x8
-- PR_SET_MM = 0x23
-- PR_SET_MM_ARG_END = 0x9
-- PR_SET_MM_ARG_START = 0x8
-- PR_SET_MM_AUXV = 0xc
-- PR_SET_MM_BRK = 0x7
-- PR_SET_MM_END_CODE = 0x2
-- PR_SET_MM_END_DATA = 0x4
-- PR_SET_MM_ENV_END = 0xb
-- PR_SET_MM_ENV_START = 0xa
-- PR_SET_MM_EXE_FILE = 0xd
-- PR_SET_MM_MAP = 0xe
-- PR_SET_MM_MAP_SIZE = 0xf
-- PR_SET_MM_START_BRK = 0x6
-- PR_SET_MM_START_CODE = 0x1
-- PR_SET_MM_START_DATA = 0x3
-- PR_SET_MM_START_STACK = 0x5
-- PR_SET_NAME = 0xf
-- PR_SET_NO_NEW_PRIVS = 0x26
-- PR_SET_PDEATHSIG = 0x1
-- PR_SET_PTRACER = 0x59616d61
-- PR_SET_PTRACER_ANY = -0x1
-- PR_SET_SECCOMP = 0x16
-- PR_SET_SECUREBITS = 0x1c
-- PR_SET_THP_DISABLE = 0x29
-- PR_SET_TIMERSLACK = 0x1d
-- PR_SET_TIMING = 0xe
-- PR_SET_TSC = 0x1a
-- PR_SET_UNALIGN = 0x6
-- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
-- PR_TASK_PERF_EVENTS_ENABLE = 0x20
-- PR_TIMING_STATISTICAL = 0x0
-- PR_TIMING_TIMESTAMP = 0x1
-- PR_TSC_ENABLE = 0x1
-- PR_TSC_SIGSEGV = 0x2
-- PR_UNALIGN_NOPRINT = 0x1
-- PR_UNALIGN_SIGBUS = 0x2
-- PTRACE_ATTACH = 0x10
-- PTRACE_CONT = 0x7
-- PTRACE_DETACH = 0x11
-- PTRACE_EVENT_CLONE = 0x3
-- PTRACE_EVENT_EXEC = 0x4
-- PTRACE_EVENT_EXIT = 0x6
-- PTRACE_EVENT_FORK = 0x1
-- PTRACE_EVENT_SECCOMP = 0x7
-- PTRACE_EVENT_STOP = 0x80
-- PTRACE_EVENT_VFORK = 0x2
-- PTRACE_EVENT_VFORK_DONE = 0x5
-- PTRACE_GETEVENTMSG = 0x4201
-- PTRACE_GETFPREGS = 0xe
-- PTRACE_GETREGS = 0xc
-- PTRACE_GETREGSET = 0x4204
-- PTRACE_GETSIGINFO = 0x4202
-- PTRACE_GETSIGMASK = 0x420a
-- PTRACE_GET_THREAD_AREA = 0x19
-- PTRACE_GET_THREAD_AREA_3264 = 0xc4
-- PTRACE_GET_WATCH_REGS = 0xd0
-- PTRACE_INTERRUPT = 0x4207
-- PTRACE_KILL = 0x8
-- PTRACE_LISTEN = 0x4208
-- PTRACE_OLDSETOPTIONS = 0x15
-- PTRACE_O_EXITKILL = 0x100000
-- PTRACE_O_MASK = 0x3000ff
-- PTRACE_O_SUSPEND_SECCOMP = 0x200000
-- PTRACE_O_TRACECLONE = 0x8
-- PTRACE_O_TRACEEXEC = 0x10
-- PTRACE_O_TRACEEXIT = 0x40
-- PTRACE_O_TRACEFORK = 0x2
-- PTRACE_O_TRACESECCOMP = 0x80
-- PTRACE_O_TRACESYSGOOD = 0x1
-- PTRACE_O_TRACEVFORK = 0x4
-- PTRACE_O_TRACEVFORKDONE = 0x20
-- PTRACE_PEEKDATA = 0x2
-- PTRACE_PEEKDATA_3264 = 0xc1
-- PTRACE_PEEKSIGINFO = 0x4209
-- PTRACE_PEEKSIGINFO_SHARED = 0x1
-- PTRACE_PEEKTEXT = 0x1
-- PTRACE_PEEKTEXT_3264 = 0xc0
-- PTRACE_PEEKUSR = 0x3
-- PTRACE_POKEDATA = 0x5
-- PTRACE_POKEDATA_3264 = 0xc3
-- PTRACE_POKETEXT = 0x4
-- PTRACE_POKETEXT_3264 = 0xc2
-- PTRACE_POKEUSR = 0x6
-- PTRACE_SECCOMP_GET_FILTER = 0x420c
-- PTRACE_SEIZE = 0x4206
-- PTRACE_SETFPREGS = 0xf
-- PTRACE_SETOPTIONS = 0x4200
-- PTRACE_SETREGS = 0xd
-- PTRACE_SETREGSET = 0x4205
-- PTRACE_SETSIGINFO = 0x4203
-- PTRACE_SETSIGMASK = 0x420b
-- PTRACE_SET_THREAD_AREA = 0x1a
-- PTRACE_SET_WATCH_REGS = 0xd1
-- PTRACE_SINGLESTEP = 0x9
-- PTRACE_SYSCALL = 0x18
-- PTRACE_TRACEME = 0x0
-- RLIMIT_AS = 0x6
-- RLIMIT_CORE = 0x4
-- RLIMIT_CPU = 0x0
-- RLIMIT_DATA = 0x2
-- RLIMIT_FSIZE = 0x1
-- RLIMIT_LOCKS = 0xa
-- RLIMIT_MEMLOCK = 0x9
-- RLIMIT_MSGQUEUE = 0xc
-- RLIMIT_NICE = 0xd
-- RLIMIT_NOFILE = 0x5
-- RLIMIT_NPROC = 0x8
-- RLIMIT_RSS = 0x7
-- RLIMIT_RTPRIO = 0xe
-- RLIMIT_RTTIME = 0xf
-- RLIMIT_SIGPENDING = 0xb
-- RLIMIT_STACK = 0x3
-- RLIM_INFINITY = -0x1
-- RTAX_ADVMSS = 0x8
-- RTAX_CC_ALGO = 0x10
-- RTAX_CWND = 0x7
-- RTAX_FEATURES = 0xc
-- RTAX_FEATURE_ALLFRAG = 0x8
-- RTAX_FEATURE_ECN = 0x1
-- RTAX_FEATURE_MASK = 0xf
-- RTAX_FEATURE_SACK = 0x2
-- RTAX_FEATURE_TIMESTAMP = 0x4
-- RTAX_HOPLIMIT = 0xa
-- RTAX_INITCWND = 0xb
-- RTAX_INITRWND = 0xe
-- RTAX_LOCK = 0x1
-- RTAX_MAX = 0x10
-- RTAX_MTU = 0x2
-- RTAX_QUICKACK = 0xf
-- RTAX_REORDERING = 0x9
-- RTAX_RTO_MIN = 0xd
-- RTAX_RTT = 0x4
-- RTAX_RTTVAR = 0x5
-- RTAX_SSTHRESH = 0x6
-- RTAX_UNSPEC = 0x0
-- RTAX_WINDOW = 0x3
-- RTA_ALIGNTO = 0x4
-- RTA_MAX = 0x19
-- RTCF_DIRECTSRC = 0x4000000
-- RTCF_DOREDIRECT = 0x1000000
-- RTCF_LOG = 0x2000000
-- RTCF_MASQ = 0x400000
-- RTCF_NAT = 0x800000
-- RTCF_VALVE = 0x200000
-- RTF_ADDRCLASSMASK = 0xf8000000
-- RTF_ADDRCONF = 0x40000
-- RTF_ALLONLINK = 0x20000
-- RTF_BROADCAST = 0x10000000
-- RTF_CACHE = 0x1000000
-- RTF_DEFAULT = 0x10000
-- RTF_DYNAMIC = 0x10
-- RTF_FLOW = 0x2000000
-- RTF_GATEWAY = 0x2
-- RTF_HOST = 0x4
-- RTF_INTERFACE = 0x40000000
-- RTF_IRTT = 0x100
-- RTF_LINKRT = 0x100000
-- RTF_LOCAL = 0x80000000
-- RTF_MODIFIED = 0x20
-- RTF_MSS = 0x40
-- RTF_MTU = 0x40
-- RTF_MULTICAST = 0x20000000
-- RTF_NAT = 0x8000000
-- RTF_NOFORWARD = 0x1000
-- RTF_NONEXTHOP = 0x200000
-- RTF_NOPMTUDISC = 0x4000
-- RTF_POLICY = 0x4000000
-- RTF_REINSTATE = 0x8
-- RTF_REJECT = 0x200
-- RTF_STATIC = 0x400
-- RTF_THROW = 0x2000
-- RTF_UP = 0x1
-- RTF_WINDOW = 0x80
-- RTF_XRESOLVE = 0x800
-- RTM_BASE = 0x10
-- RTM_DELACTION = 0x31
-- RTM_DELADDR = 0x15
-- RTM_DELADDRLABEL = 0x49
-- RTM_DELLINK = 0x11
-- RTM_DELMDB = 0x55
-- RTM_DELNEIGH = 0x1d
-- RTM_DELNSID = 0x59
-- RTM_DELQDISC = 0x25
-- RTM_DELROUTE = 0x19
-- RTM_DELRULE = 0x21
-- RTM_DELTCLASS = 0x29
-- RTM_DELTFILTER = 0x2d
-- RTM_F_CLONED = 0x200
-- RTM_F_EQUALIZE = 0x400
-- RTM_F_LOOKUP_TABLE = 0x1000
-- RTM_F_NOTIFY = 0x100
-- RTM_F_PREFIX = 0x800
-- RTM_GETACTION = 0x32
-- RTM_GETADDR = 0x16
-- RTM_GETADDRLABEL = 0x4a
-- RTM_GETANYCAST = 0x3e
-- RTM_GETDCB = 0x4e
-- RTM_GETLINK = 0x12
-- RTM_GETMDB = 0x56
-- RTM_GETMULTICAST = 0x3a
-- RTM_GETNEIGH = 0x1e
-- RTM_GETNEIGHTBL = 0x42
-- RTM_GETNETCONF = 0x52
-- RTM_GETNSID = 0x5a
-- RTM_GETQDISC = 0x26
-- RTM_GETROUTE = 0x1a
-- RTM_GETRULE = 0x22
-- RTM_GETSTATS = 0x5e
-- RTM_GETTCLASS = 0x2a
-- RTM_GETTFILTER = 0x2e
-- RTM_MAX = 0x5f
-- RTM_NEWACTION = 0x30
-- RTM_NEWADDR = 0x14
-- RTM_NEWADDRLABEL = 0x48
-- RTM_NEWLINK = 0x10
-- RTM_NEWMDB = 0x54
-- RTM_NEWNDUSEROPT = 0x44
-- RTM_NEWNEIGH = 0x1c
-- RTM_NEWNEIGHTBL = 0x40
-- RTM_NEWNETCONF = 0x50
-- RTM_NEWNSID = 0x58
-- RTM_NEWPREFIX = 0x34
-- RTM_NEWQDISC = 0x24
-- RTM_NEWROUTE = 0x18
-- RTM_NEWRULE = 0x20
-- RTM_NEWSTATS = 0x5c
-- RTM_NEWTCLASS = 0x28
-- RTM_NEWTFILTER = 0x2c
-- RTM_NR_FAMILIES = 0x14
-- RTM_NR_MSGTYPES = 0x50
-- RTM_SETDCB = 0x4f
-- RTM_SETLINK = 0x13
-- RTM_SETNEIGHTBL = 0x43
-- RTNH_ALIGNTO = 0x4
-- RTNH_COMPARE_MASK = 0x19
-- RTNH_F_DEAD = 0x1
-- RTNH_F_LINKDOWN = 0x10
-- RTNH_F_OFFLOAD = 0x8
-- RTNH_F_ONLINK = 0x4
-- RTNH_F_PERVASIVE = 0x2
-- RTN_MAX = 0xb
-- RTPROT_BABEL = 0x2a
-- RTPROT_BIRD = 0xc
-- RTPROT_BOOT = 0x3
-- RTPROT_DHCP = 0x10
-- RTPROT_DNROUTED = 0xd
-- RTPROT_GATED = 0x8
-- RTPROT_KERNEL = 0x2
-- RTPROT_MROUTED = 0x11
-- RTPROT_MRT = 0xa
-- RTPROT_NTK = 0xf
-- RTPROT_RA = 0x9
-- RTPROT_REDIRECT = 0x1
-- RTPROT_STATIC = 0x4
-- RTPROT_UNSPEC = 0x0
-- RTPROT_XORP = 0xe
-- RTPROT_ZEBRA = 0xb
-- RT_CLASS_DEFAULT = 0xfd
-- RT_CLASS_LOCAL = 0xff
-- RT_CLASS_MAIN = 0xfe
-- RT_CLASS_MAX = 0xff
-- RT_CLASS_UNSPEC = 0x0
-- RUSAGE_CHILDREN = -0x1
-- RUSAGE_SELF = 0x0
-- RUSAGE_THREAD = 0x1
-- SCM_CREDENTIALS = 0x2
-- SCM_RIGHTS = 0x1
-- SCM_TIMESTAMP = 0x1d
-- SCM_TIMESTAMPING = 0x25
-- SCM_TIMESTAMPING_OPT_STATS = 0x36
-- SCM_TIMESTAMPNS = 0x23
-- SCM_WIFI_STATUS = 0x29
-- SECCOMP_MODE_DISABLED = 0x0
-- SECCOMP_MODE_FILTER = 0x2
-- SECCOMP_MODE_STRICT = 0x1
-- SHUT_RD = 0x0
-- SHUT_RDWR = 0x2
-- SHUT_WR = 0x1
-- SIOCADDDLCI = 0x8980
-- SIOCADDMULTI = 0x8931
-- SIOCADDRT = 0x890b
-- SIOCATMARK = 0x40047307
-- SIOCBONDCHANGEACTIVE = 0x8995
-- SIOCBONDENSLAVE = 0x8990
-- SIOCBONDINFOQUERY = 0x8994
-- SIOCBONDRELEASE = 0x8991
-- SIOCBONDSETHWADDR = 0x8992
-- SIOCBONDSLAVEINFOQUERY = 0x8993
-- SIOCBRADDBR = 0x89a0
-- SIOCBRADDIF = 0x89a2
-- SIOCBRDELBR = 0x89a1
-- SIOCBRDELIF = 0x89a3
-- SIOCDARP = 0x8953
-- SIOCDELDLCI = 0x8981
-- SIOCDELMULTI = 0x8932
-- SIOCDELRT = 0x890c
-- SIOCDEVPRIVATE = 0x89f0
-- SIOCDIFADDR = 0x8936
-- SIOCDRARP = 0x8960
-- SIOCETHTOOL = 0x8946
-- SIOCGARP = 0x8954
-- SIOCGHWTSTAMP = 0x89b1
-- SIOCGIFADDR = 0x8915
-- SIOCGIFBR = 0x8940
-- SIOCGIFBRDADDR = 0x8919
-- SIOCGIFCONF = 0x8912
-- SIOCGIFCOUNT = 0x8938
-- SIOCGIFDSTADDR = 0x8917
-- SIOCGIFENCAP = 0x8925
-- SIOCGIFFLAGS = 0x8913
-- SIOCGIFHWADDR = 0x8927
-- SIOCGIFINDEX = 0x8933
-- SIOCGIFMAP = 0x8970
-- SIOCGIFMEM = 0x891f
-- SIOCGIFMETRIC = 0x891d
-- SIOCGIFMTU = 0x8921
-- SIOCGIFNAME = 0x8910
-- SIOCGIFNETMASK = 0x891b
-- SIOCGIFPFLAGS = 0x8935
-- SIOCGIFSLAVE = 0x8929
-- SIOCGIFTXQLEN = 0x8942
-- SIOCGIFVLAN = 0x8982
-- SIOCGMIIPHY = 0x8947
-- SIOCGMIIREG = 0x8948
-- SIOCGPGRP = 0x40047309
-- SIOCGRARP = 0x8961
-- SIOCGSKNS = 0x894c
-- SIOCGSTAMP = 0x8906
-- SIOCGSTAMPNS = 0x8907
-- SIOCINQ = 0x467f
-- SIOCOUTQ = 0x7472
-- SIOCOUTQNSD = 0x894b
-- SIOCPROTOPRIVATE = 0x89e0
-- SIOCRTMSG = 0x890d
-- SIOCSARP = 0x8955
-- SIOCSHWTSTAMP = 0x89b0
-- SIOCSIFADDR = 0x8916
-- SIOCSIFBR = 0x8941
-- SIOCSIFBRDADDR = 0x891a
-- SIOCSIFDSTADDR = 0x8918
-- SIOCSIFENCAP = 0x8926
-- SIOCSIFFLAGS = 0x8914
-- SIOCSIFHWADDR = 0x8924
-- SIOCSIFHWBROADCAST = 0x8937
-- SIOCSIFLINK = 0x8911
-- SIOCSIFMAP = 0x8971
-- SIOCSIFMEM = 0x8920
-- SIOCSIFMETRIC = 0x891e
-- SIOCSIFMTU = 0x8922
-- SIOCSIFNAME = 0x8923
-- SIOCSIFNETMASK = 0x891c
-- SIOCSIFPFLAGS = 0x8934
-- SIOCSIFSLAVE = 0x8930
-- SIOCSIFTXQLEN = 0x8943
-- SIOCSIFVLAN = 0x8983
-- SIOCSMIIREG = 0x8949
-- SIOCSPGRP = 0x80047308
-- SIOCSRARP = 0x8962
-- SIOCWANDEV = 0x894a
-- SOCK_CLOEXEC = 0x80000
-- SOCK_DCCP = 0x6
-- SOCK_DGRAM = 0x1
-- SOCK_IOC_TYPE = 0x89
-- SOCK_NONBLOCK = 0x80
-- SOCK_PACKET = 0xa
-- SOCK_RAW = 0x3
-- SOCK_RDM = 0x4
-- SOCK_SEQPACKET = 0x5
-- SOCK_STREAM = 0x2
-- SOL_AAL = 0x109
-- SOL_ALG = 0x117
-- SOL_ATM = 0x108
-- SOL_CAIF = 0x116
-- SOL_CAN_BASE = 0x64
-- SOL_DCCP = 0x10d
-- SOL_DECNET = 0x105
-- SOL_ICMPV6 = 0x3a
-- SOL_IP = 0x0
-- SOL_IPV6 = 0x29
-- SOL_IRDA = 0x10a
-- SOL_IUCV = 0x115
-- SOL_KCM = 0x119
-- SOL_LLC = 0x10c
-- SOL_NETBEUI = 0x10b
-- SOL_NETLINK = 0x10e
-- SOL_NFC = 0x118
-- SOL_PACKET = 0x107
-- SOL_PNPIPE = 0x113
-- SOL_PPPOL2TP = 0x111
-- SOL_RAW = 0xff
-- SOL_RDS = 0x114
-- SOL_RXRPC = 0x110
-- SOL_SOCKET = 0xffff
-- SOL_TCP = 0x6
-- SOL_TIPC = 0x10f
-- SOL_X25 = 0x106
-- SOMAXCONN = 0x80
-- SO_ACCEPTCONN = 0x1009
-- SO_ATTACH_BPF = 0x32
-- SO_ATTACH_FILTER = 0x1a
-- SO_ATTACH_REUSEPORT_CBPF = 0x33
-- SO_ATTACH_REUSEPORT_EBPF = 0x34
-- SO_BINDTODEVICE = 0x19
-- SO_BPF_EXTENSIONS = 0x30
-- SO_BROADCAST = 0x20
-- SO_BSDCOMPAT = 0xe
-- SO_BUSY_POLL = 0x2e
-- SO_CNX_ADVICE = 0x35
-- SO_DEBUG = 0x1
-- SO_DETACH_BPF = 0x1b
-- SO_DETACH_FILTER = 0x1b
-- SO_DOMAIN = 0x1029
-- SO_DONTROUTE = 0x10
-- SO_ERROR = 0x1007
-- SO_GET_FILTER = 0x1a
-- SO_INCOMING_CPU = 0x31
-- SO_KEEPALIVE = 0x8
-- SO_LINGER = 0x80
-- SO_LOCK_FILTER = 0x2c
-- SO_MARK = 0x24
-- SO_MAX_PACING_RATE = 0x2f
-- SO_NOFCS = 0x2b
-- SO_NO_CHECK = 0xb
-- SO_OOBINLINE = 0x100
-- SO_PASSCRED = 0x11
-- SO_PASSSEC = 0x22
-- SO_PEEK_OFF = 0x2a
-- SO_PEERCRED = 0x12
-- SO_PEERNAME = 0x1c
-- SO_PEERSEC = 0x1e
-- SO_PRIORITY = 0xc
-- SO_PROTOCOL = 0x1028
-- SO_RCVBUF = 0x1002
-- SO_RCVBUFFORCE = 0x21
-- SO_RCVLOWAT = 0x1004
-- SO_RCVTIMEO = 0x1006
-- SO_REUSEADDR = 0x4
-- SO_REUSEPORT = 0x200
-- SO_RXQ_OVFL = 0x28
-- SO_SECURITY_AUTHENTICATION = 0x16
-- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-- SO_SELECT_ERR_QUEUE = 0x2d
-- SO_SNDBUF = 0x1001
-- SO_SNDBUFFORCE = 0x1f
-- SO_SNDLOWAT = 0x1003
-- SO_SNDTIMEO = 0x1005
-- SO_STYLE = 0x1008
-- SO_TIMESTAMP = 0x1d
-- SO_TIMESTAMPING = 0x25
-- SO_TIMESTAMPNS = 0x23
-- SO_TYPE = 0x1008
-- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
-- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
-- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
-- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
-- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
-- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
-- SO_VM_SOCKETS_TRUSTED = 0x5
-- SO_WIFI_STATUS = 0x29
-- SPLICE_F_GIFT = 0x8
-- SPLICE_F_MORE = 0x4
-- SPLICE_F_MOVE = 0x1
-- SPLICE_F_NONBLOCK = 0x2
-- S_BLKSIZE = 0x200
-- S_IEXEC = 0x40
-- S_IFBLK = 0x6000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFIFO = 0x1000
-- S_IFLNK = 0xa000
-- S_IFMT = 0xf000
-- S_IFREG = 0x8000
-- S_IFSOCK = 0xc000
-- S_IREAD = 0x100
-- S_IRGRP = 0x20
-- S_IROTH = 0x4
-- S_IRUSR = 0x100
-- S_IRWXG = 0x38
-- S_IRWXO = 0x7
-- S_IRWXU = 0x1c0
-- S_ISGID = 0x400
-- S_ISUID = 0x800
-- S_ISVTX = 0x200
-- S_IWGRP = 0x10
-- S_IWOTH = 0x2
-- S_IWRITE = 0x80
-- S_IWUSR = 0x80
-- S_IXGRP = 0x8
-- S_IXOTH = 0x1
-- S_IXUSR = 0x40
-- TAB0 = 0x0
-- TAB1 = 0x800
-- TAB2 = 0x1000
-- TAB3 = 0x1800
-- TABDLY = 0x1800
-- TASKSTATS_CMD_ATTR_MAX = 0x4
-- TASKSTATS_CMD_MAX = 0x2
-- TASKSTATS_GENL_NAME = "TASKSTATS"
-- TASKSTATS_GENL_VERSION = 0x1
-- TASKSTATS_TYPE_MAX = 0x6
-- TASKSTATS_VERSION = 0x8
-- TCFLSH = 0x5407
-- TCGETA = 0x5401
-- TCGETS = 0x540d
-- TCGETS2 = 0x4030542a
-- TCIFLUSH = 0x0
-- TCIOFF = 0x2
-- TCIOFLUSH = 0x2
-- TCION = 0x3
-- TCOFLUSH = 0x1
-- TCOOFF = 0x0
-- TCOON = 0x1
-- TCP_CC_INFO = 0x1a
-- TCP_CONGESTION = 0xd
-- TCP_COOKIE_IN_ALWAYS = 0x1
-- TCP_COOKIE_MAX = 0x10
-- TCP_COOKIE_MIN = 0x8
-- TCP_COOKIE_OUT_NEVER = 0x2
-- TCP_COOKIE_PAIR_SIZE = 0x20
-- TCP_COOKIE_TRANSACTIONS = 0xf
-- TCP_CORK = 0x3
-- TCP_DEFER_ACCEPT = 0x9
-- TCP_FASTOPEN = 0x17
-- TCP_INFO = 0xb
-- TCP_KEEPCNT = 0x6
-- TCP_KEEPIDLE = 0x4
-- TCP_KEEPINTVL = 0x5
-- TCP_LINGER2 = 0x8
-- TCP_MAXSEG = 0x2
-- TCP_MAXWIN = 0xffff
-- TCP_MAX_WINSHIFT = 0xe
-- TCP_MD5SIG = 0xe
-- TCP_MD5SIG_MAXKEYLEN = 0x50
-- TCP_MSS = 0x200
-- TCP_MSS_DEFAULT = 0x218
-- TCP_MSS_DESIRED = 0x4c4
-- TCP_NODELAY = 0x1
-- TCP_NOTSENT_LOWAT = 0x19
-- TCP_QUEUE_SEQ = 0x15
-- TCP_QUICKACK = 0xc
-- TCP_REPAIR = 0x13
-- TCP_REPAIR_OPTIONS = 0x16
-- TCP_REPAIR_QUEUE = 0x14
-- TCP_REPAIR_WINDOW = 0x1d
-- TCP_SAVED_SYN = 0x1c
-- TCP_SAVE_SYN = 0x1b
-- TCP_SYNCNT = 0x7
-- TCP_S_DATA_IN = 0x4
-- TCP_S_DATA_OUT = 0x8
-- TCP_THIN_DUPACK = 0x11
-- TCP_THIN_LINEAR_TIMEOUTS = 0x10
-- TCP_TIMESTAMP = 0x18
-- TCP_USER_TIMEOUT = 0x12
-- TCP_WINDOW_CLAMP = 0xa
-- TCSAFLUSH = 0x5410
-- TCSBRK = 0x5405
-- TCSBRKP = 0x5486
-- TCSETA = 0x5402
-- TCSETAF = 0x5404
-- TCSETAW = 0x5403
-- TCSETS = 0x540e
-- TCSETS2 = 0x8030542b
-- TCSETSF = 0x5410
-- TCSETSF2 = 0x8030542d
-- TCSETSW = 0x540f
-- TCSETSW2 = 0x8030542c
-- TCXONC = 0x5406
-- TIOCCBRK = 0x5428
-- TIOCCONS = 0x80047478
-- TIOCEXCL = 0x740d
-- TIOCGDEV = 0x40045432
-- TIOCGETD = 0x7400
-- TIOCGETP = 0x7408
-- TIOCGEXCL = 0x40045440
-- TIOCGICOUNT = 0x5492
-- TIOCGLCKTRMIOS = 0x548b
-- TIOCGLTC = 0x7474
-- TIOCGPGRP = 0x40047477
-- TIOCGPKT = 0x40045438
-- TIOCGPTLCK = 0x40045439
-- TIOCGPTN = 0x40045430
-- TIOCGRS485 = 0x4020542e
-- TIOCGSERIAL = 0x5484
-- TIOCGSID = 0x7416
-- TIOCGSOFTCAR = 0x5481
-- TIOCGWINSZ = 0x40087468
-- TIOCINQ = 0x467f
-- TIOCLINUX = 0x5483
-- TIOCMBIC = 0x741c
-- TIOCMBIS = 0x741b
-- TIOCMGET = 0x741d
-- TIOCMIWAIT = 0x5491
-- TIOCMSET = 0x741a
-- TIOCM_CAR = 0x100
-- TIOCM_CD = 0x100
-- TIOCM_CTS = 0x40
-- TIOCM_DSR = 0x400
-- TIOCM_DTR = 0x2
-- TIOCM_LE = 0x1
-- TIOCM_RI = 0x200
-- TIOCM_RNG = 0x200
-- TIOCM_RTS = 0x4
-- TIOCM_SR = 0x20
-- TIOCM_ST = 0x10
-- TIOCNOTTY = 0x5471
-- TIOCNXCL = 0x740e
-- TIOCOUTQ = 0x7472
-- TIOCPKT = 0x5470
-- TIOCPKT_DATA = 0x0
-- TIOCPKT_DOSTOP = 0x20
-- TIOCPKT_FLUSHREAD = 0x1
-- TIOCPKT_FLUSHWRITE = 0x2
-- TIOCPKT_IOCTL = 0x40
-- TIOCPKT_NOSTOP = 0x10
-- TIOCPKT_START = 0x8
-- TIOCPKT_STOP = 0x4
-- TIOCSBRK = 0x5427
-- TIOCSCTTY = 0x5480
-- TIOCSERCONFIG = 0x5488
-- TIOCSERGETLSR = 0x548e
-- TIOCSERGETMULTI = 0x548f
-- TIOCSERGSTRUCT = 0x548d
-- TIOCSERGWILD = 0x5489
-- TIOCSERSETMULTI = 0x5490
-- TIOCSERSWILD = 0x548a
-- TIOCSER_TEMT = 0x1
-- TIOCSETD = 0x7401
-- TIOCSETN = 0x740a
-- TIOCSETP = 0x7409
-- TIOCSIG = 0x80045436
-- TIOCSLCKTRMIOS = 0x548c
-- TIOCSLTC = 0x7475
-- TIOCSPGRP = 0x80047476
-- TIOCSPTLCK = 0x80045431
-- TIOCSRS485 = 0xc020542f
-- TIOCSSERIAL = 0x5485
-- TIOCSSOFTCAR = 0x5482
-- TIOCSTI = 0x5472
-- TIOCSWINSZ = 0x80087467
-- TIOCVHANGUP = 0x5437
-- TOSTOP = 0x8000
-- TS_COMM_LEN = 0x20
-- TUNATTACHFILTER = 0x801054d5
-- TUNDETACHFILTER = 0x801054d6
-- TUNGETFEATURES = 0x400454cf
-- TUNGETFILTER = 0x401054db
-- TUNGETIFF = 0x400454d2
-- TUNGETSNDBUF = 0x400454d3
-- TUNGETVNETBE = 0x400454df
-- TUNGETVNETHDRSZ = 0x400454d7
-- TUNGETVNETLE = 0x400454dd
-- TUNSETDEBUG = 0x800454c9
-- TUNSETGROUP = 0x800454ce
-- TUNSETIFF = 0x800454ca
-- TUNSETIFINDEX = 0x800454da
-- TUNSETLINK = 0x800454cd
-- TUNSETNOCSUM = 0x800454c8
-- TUNSETOFFLOAD = 0x800454d0
-- TUNSETOWNER = 0x800454cc
-- TUNSETPERSIST = 0x800454cb
-- TUNSETQUEUE = 0x800454d9
-- TUNSETSNDBUF = 0x800454d4
-- TUNSETTXFILTER = 0x800454d1
-- TUNSETVNETBE = 0x800454de
-- TUNSETVNETHDRSZ = 0x800454d8
-- TUNSETVNETLE = 0x800454dc
-- UMOUNT_NOFOLLOW = 0x8
-- VDISCARD = 0xd
-- VEOF = 0x10
-- VEOL = 0x11
-- VEOL2 = 0x6
-- VERASE = 0x2
-- VINTR = 0x0
-- VKILL = 0x3
-- VLNEXT = 0xf
-- VMADDR_CID_ANY = 0xffffffff
-- VMADDR_CID_HOST = 0x2
-- VMADDR_CID_HYPERVISOR = 0x0
-- VMADDR_CID_RESERVED = 0x1
-- VMADDR_PORT_ANY = 0xffffffff
-- VMIN = 0x4
-- VM_SOCKETS_INVALID_VERSION = 0xffffffff
-- VQUIT = 0x1
-- VREPRINT = 0xc
-- VSTART = 0x8
-- VSTOP = 0x9
-- VSUSP = 0xa
-- VSWTC = 0x7
-- VSWTCH = 0x7
-- VT0 = 0x0
-- VT1 = 0x4000
-- VTDLY = 0x4000
-- VTIME = 0x5
-- VWERASE = 0xe
-- WALL = 0x40000000
-- WCLONE = 0x80000000
-- WCONTINUED = 0x8
-- WEXITED = 0x4
-- WNOHANG = 0x1
-- WNOTHREAD = 0x20000000
-- WNOWAIT = 0x1000000
-- WORDSIZE = 0x40
-- WSTOPPED = 0x2
-- WUNTRACED = 0x2
-- XATTR_CREATE = 0x1
-- XATTR_REPLACE = 0x2
-- XCASE = 0x4
-- XTABS = 0x1800
-+ B1000000 = 0x1008
-+ B115200 = 0x1002
-+ B1152000 = 0x1009
-+ B1500000 = 0x100a
-+ B2000000 = 0x100b
-+ B230400 = 0x1003
-+ B2500000 = 0x100c
-+ B3000000 = 0x100d
-+ B3500000 = 0x100e
-+ B4000000 = 0x100f
-+ B460800 = 0x1004
-+ B500000 = 0x1005
-+ B57600 = 0x1001
-+ B576000 = 0x1006
-+ B921600 = 0x1007
-+ BLKBSZGET = 0x40081270
-+ BLKBSZSET = 0x80081271
-+ BLKFLSBUF = 0x20001261
-+ BLKFRAGET = 0x20001265
-+ BLKFRASET = 0x20001264
-+ BLKGETSIZE = 0x20001260
-+ BLKGETSIZE64 = 0x40081272
-+ BLKPBSZGET = 0x2000127b
-+ BLKRAGET = 0x20001263
-+ BLKRASET = 0x20001262
-+ BLKROGET = 0x2000125e
-+ BLKROSET = 0x2000125d
-+ BLKRRPART = 0x2000125f
-+ BLKSECTGET = 0x20001267
-+ BLKSECTSET = 0x20001266
-+ BLKSSZGET = 0x20001268
-+ BOTHER = 0x1000
-+ BS1 = 0x2000
-+ BSDLY = 0x2000
-+ CBAUD = 0x100f
-+ CBAUDEX = 0x1000
-+ CIBAUD = 0x100f0000
-+ CLOCAL = 0x800
-+ CR1 = 0x200
-+ CR2 = 0x400
-+ CR3 = 0x600
-+ CRDLY = 0x600
-+ CREAD = 0x80
-+ CS6 = 0x10
-+ CS7 = 0x20
-+ CS8 = 0x30
-+ CSIZE = 0x30
-+ CSTOPB = 0x40
-+ ECHOCTL = 0x200
-+ ECHOE = 0x10
-+ ECHOK = 0x20
-+ ECHOKE = 0x800
-+ ECHONL = 0x40
-+ ECHOPRT = 0x400
-+ EFD_CLOEXEC = 0x80000
-+ EFD_NONBLOCK = 0x80
-+ EPOLL_CLOEXEC = 0x80000
-+ EXTPROC = 0x10000
-+ FF1 = 0x8000
-+ FFDLY = 0x8000
-+ FLUSHO = 0x2000
-+ FS_IOC_ENABLE_VERITY = 0x80806685
-+ FS_IOC_GETFLAGS = 0x40086601
-+ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
-+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
-+ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
-+ F_GETLK = 0xe
-+ F_GETLK64 = 0xe
-+ F_GETOWN = 0x17
-+ F_RDLCK = 0x0
-+ F_SETLK = 0x6
-+ F_SETLK64 = 0x6
-+ F_SETLKW = 0x7
-+ F_SETLKW64 = 0x7
-+ F_SETOWN = 0x18
-+ F_UNLCK = 0x2
-+ F_WRLCK = 0x1
-+ HUPCL = 0x400
-+ ICANON = 0x2
-+ IEXTEN = 0x100
-+ IN_CLOEXEC = 0x80000
-+ IN_NONBLOCK = 0x80
-+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
-+ ISIG = 0x1
-+ IUCLC = 0x200
-+ IXOFF = 0x1000
-+ IXON = 0x400
-+ MAP_ANON = 0x800
-+ MAP_ANONYMOUS = 0x800
-+ MAP_DENYWRITE = 0x2000
-+ MAP_EXECUTABLE = 0x4000
-+ MAP_GROWSDOWN = 0x1000
-+ MAP_HUGETLB = 0x80000
-+ MAP_LOCKED = 0x8000
-+ MAP_NONBLOCK = 0x20000
-+ MAP_NORESERVE = 0x400
-+ MAP_POPULATE = 0x10000
-+ MAP_RENAME = 0x800
-+ MAP_STACK = 0x40000
-+ MCL_CURRENT = 0x1
-+ MCL_FUTURE = 0x2
-+ MCL_ONFAULT = 0x4
-+ NFDBITS = 0x40
-+ NLDLY = 0x100
-+ NOFLSH = 0x80
-+ NS_GET_NSTYPE = 0x2000b703
-+ NS_GET_OWNER_UID = 0x2000b704
-+ NS_GET_PARENT = 0x2000b702
-+ NS_GET_USERNS = 0x2000b701
-+ OLCUC = 0x2
-+ ONLCR = 0x4
-+ O_APPEND = 0x8
-+ O_ASYNC = 0x1000
-+ O_CLOEXEC = 0x80000
-+ O_CREAT = 0x100
-+ O_DIRECT = 0x8000
-+ O_DIRECTORY = 0x10000
-+ O_DSYNC = 0x10
-+ O_EXCL = 0x400
-+ O_FSYNC = 0x4010
-+ O_LARGEFILE = 0x0
-+ O_NDELAY = 0x80
-+ O_NOATIME = 0x40000
-+ O_NOCTTY = 0x800
-+ O_NOFOLLOW = 0x20000
-+ O_NONBLOCK = 0x80
-+ O_PATH = 0x200000
-+ O_RSYNC = 0x4010
-+ O_SYNC = 0x4010
-+ O_TMPFILE = 0x410000
-+ O_TRUNC = 0x200
-+ PARENB = 0x100
-+ PARODD = 0x200
-+ PENDIN = 0x4000
-+ PERF_EVENT_IOC_DISABLE = 0x20002401
-+ PERF_EVENT_IOC_ENABLE = 0x20002400
-+ PERF_EVENT_IOC_ID = 0x40082407
-+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
-+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
-+ PERF_EVENT_IOC_PERIOD = 0x80082404
-+ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
-+ PERF_EVENT_IOC_REFRESH = 0x20002402
-+ PERF_EVENT_IOC_RESET = 0x20002403
-+ PERF_EVENT_IOC_SET_BPF = 0x80042408
-+ PERF_EVENT_IOC_SET_FILTER = 0x80082406
-+ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
-+ PPPIOCATTACH = 0x8004743d
-+ PPPIOCATTCHAN = 0x80047438
-+ PPPIOCCONNECT = 0x8004743a
-+ PPPIOCDETACH = 0x8004743c
-+ PPPIOCDISCONN = 0x20007439
-+ PPPIOCGASYNCMAP = 0x40047458
-+ PPPIOCGCHAN = 0x40047437
-+ PPPIOCGDEBUG = 0x40047441
-+ PPPIOCGFLAGS = 0x4004745a
-+ PPPIOCGIDLE = 0x4010743f
-+ PPPIOCGIDLE32 = 0x4008743f
-+ PPPIOCGIDLE64 = 0x4010743f
-+ PPPIOCGL2TPSTATS = 0x40487436
-+ PPPIOCGMRU = 0x40047453
-+ PPPIOCGRASYNCMAP = 0x40047455
-+ PPPIOCGUNIT = 0x40047456
-+ PPPIOCGXASYNCMAP = 0x40207450
-+ PPPIOCSACTIVE = 0x80107446
-+ PPPIOCSASYNCMAP = 0x80047457
-+ PPPIOCSCOMPRESS = 0x8010744d
-+ PPPIOCSDEBUG = 0x80047440
-+ PPPIOCSFLAGS = 0x80047459
-+ PPPIOCSMAXCID = 0x80047451
-+ PPPIOCSMRRU = 0x8004743b
-+ PPPIOCSMRU = 0x80047452
-+ PPPIOCSNPMODE = 0x8008744b
-+ PPPIOCSPASS = 0x80107447
-+ PPPIOCSRASYNCMAP = 0x80047454
-+ PPPIOCSXASYNCMAP = 0x8020744f
-+ PPPIOCXFERUNIT = 0x2000744e
-+ PR_SET_PTRACER_ANY = 0xffffffffffffffff
-+ PTRACE_GETFPREGS = 0xe
-+ PTRACE_GET_THREAD_AREA = 0x19
-+ PTRACE_GET_THREAD_AREA_3264 = 0xc4
-+ PTRACE_GET_WATCH_REGS = 0xd0
-+ PTRACE_OLDSETOPTIONS = 0x15
-+ PTRACE_PEEKDATA_3264 = 0xc1
-+ PTRACE_PEEKTEXT_3264 = 0xc0
-+ PTRACE_POKEDATA_3264 = 0xc3
-+ PTRACE_POKETEXT_3264 = 0xc2
-+ PTRACE_SETFPREGS = 0xf
-+ PTRACE_SET_THREAD_AREA = 0x1a
-+ PTRACE_SET_WATCH_REGS = 0xd1
-+ RLIMIT_AS = 0x6
-+ RLIMIT_MEMLOCK = 0x9
-+ RLIMIT_NOFILE = 0x5
-+ RLIMIT_NPROC = 0x8
-+ RLIMIT_RSS = 0x7
-+ RNDADDENTROPY = 0x80085203
-+ RNDADDTOENTCNT = 0x80045201
-+ RNDCLEARPOOL = 0x20005206
-+ RNDGETENTCNT = 0x40045200
-+ RNDGETPOOL = 0x40085202
-+ RNDRESEEDCRNG = 0x20005207
-+ RNDZAPENTCNT = 0x20005204
-+ RTC_AIE_OFF = 0x20007002
-+ RTC_AIE_ON = 0x20007001
-+ RTC_ALM_READ = 0x40247008
-+ RTC_ALM_SET = 0x80247007
-+ RTC_EPOCH_READ = 0x4008700d
-+ RTC_EPOCH_SET = 0x8008700e
-+ RTC_IRQP_READ = 0x4008700b
-+ RTC_IRQP_SET = 0x8008700c
-+ RTC_PIE_OFF = 0x20007006
-+ RTC_PIE_ON = 0x20007005
-+ RTC_PLL_GET = 0x40207011
-+ RTC_PLL_SET = 0x80207012
-+ RTC_RD_TIME = 0x40247009
-+ RTC_SET_TIME = 0x8024700a
-+ RTC_UIE_OFF = 0x20007004
-+ RTC_UIE_ON = 0x20007003
-+ RTC_VL_CLR = 0x20007014
-+ RTC_VL_READ = 0x40047013
-+ RTC_WIE_OFF = 0x20007010
-+ RTC_WIE_ON = 0x2000700f
-+ RTC_WKALM_RD = 0x40287010
-+ RTC_WKALM_SET = 0x8028700f
-+ SCM_TIMESTAMPING = 0x25
-+ SCM_TIMESTAMPING_OPT_STATS = 0x36
-+ SCM_TIMESTAMPING_PKTINFO = 0x3a
-+ SCM_TIMESTAMPNS = 0x23
-+ SCM_TXTIME = 0x3d
-+ SCM_WIFI_STATUS = 0x29
-+ SFD_CLOEXEC = 0x80000
-+ SFD_NONBLOCK = 0x80
-+ SIOCATMARK = 0x40047307
-+ SIOCGPGRP = 0x40047309
-+ SIOCGSTAMPNS_NEW = 0x40108907
-+ SIOCGSTAMP_NEW = 0x40108906
-+ SIOCINQ = 0x467f
-+ SIOCOUTQ = 0x7472
-+ SIOCSPGRP = 0x80047308
-+ SOCK_CLOEXEC = 0x80000
-+ SOCK_DGRAM = 0x1
-+ SOCK_NONBLOCK = 0x80
-+ SOCK_STREAM = 0x2
-+ SOL_SOCKET = 0xffff
-+ SO_ACCEPTCONN = 0x1009
-+ SO_ATTACH_BPF = 0x32
-+ SO_ATTACH_REUSEPORT_CBPF = 0x33
-+ SO_ATTACH_REUSEPORT_EBPF = 0x34
-+ SO_BINDTODEVICE = 0x19
-+ SO_BINDTOIFINDEX = 0x3e
-+ SO_BPF_EXTENSIONS = 0x30
-+ SO_BROADCAST = 0x20
-+ SO_BSDCOMPAT = 0xe
-+ SO_BUSY_POLL = 0x2e
-+ SO_CNX_ADVICE = 0x35
-+ SO_COOKIE = 0x39
-+ SO_DETACH_REUSEPORT_BPF = 0x44
-+ SO_DOMAIN = 0x1029
-+ SO_DONTROUTE = 0x10
-+ SO_ERROR = 0x1007
-+ SO_INCOMING_CPU = 0x31
-+ SO_INCOMING_NAPI_ID = 0x38
-+ SO_KEEPALIVE = 0x8
-+ SO_LINGER = 0x80
-+ SO_LOCK_FILTER = 0x2c
-+ SO_MARK = 0x24
-+ SO_MAX_PACING_RATE = 0x2f
-+ SO_MEMINFO = 0x37
-+ SO_NOFCS = 0x2b
-+ SO_OOBINLINE = 0x100
-+ SO_PASSCRED = 0x11
-+ SO_PASSSEC = 0x22
-+ SO_PEEK_OFF = 0x2a
-+ SO_PEERCRED = 0x12
-+ SO_PEERGROUPS = 0x3b
-+ SO_PEERSEC = 0x1e
-+ SO_PROTOCOL = 0x1028
-+ SO_RCVBUF = 0x1002
-+ SO_RCVBUFFORCE = 0x21
-+ SO_RCVLOWAT = 0x1004
-+ SO_RCVTIMEO = 0x1006
-+ SO_RCVTIMEO_NEW = 0x42
-+ SO_RCVTIMEO_OLD = 0x1006
-+ SO_REUSEADDR = 0x4
-+ SO_REUSEPORT = 0x200
-+ SO_RXQ_OVFL = 0x28
-+ SO_SECURITY_AUTHENTICATION = 0x16
-+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-+ SO_SELECT_ERR_QUEUE = 0x2d
-+ SO_SNDBUF = 0x1001
-+ SO_SNDBUFFORCE = 0x1f
-+ SO_SNDLOWAT = 0x1003
-+ SO_SNDTIMEO = 0x1005
-+ SO_SNDTIMEO_NEW = 0x43
-+ SO_SNDTIMEO_OLD = 0x1005
-+ SO_STYLE = 0x1008
-+ SO_TIMESTAMPING = 0x25
-+ SO_TIMESTAMPING_NEW = 0x41
-+ SO_TIMESTAMPING_OLD = 0x25
-+ SO_TIMESTAMPNS = 0x23
-+ SO_TIMESTAMPNS_NEW = 0x40
-+ SO_TIMESTAMPNS_OLD = 0x23
-+ SO_TIMESTAMP_NEW = 0x3f
-+ SO_TXTIME = 0x3d
-+ SO_TYPE = 0x1008
-+ SO_WIFI_STATUS = 0x29
-+ SO_ZEROCOPY = 0x3c
-+ TAB1 = 0x800
-+ TAB2 = 0x1000
-+ TAB3 = 0x1800
-+ TABDLY = 0x1800
-+ TCFLSH = 0x5407
-+ TCGETA = 0x5401
-+ TCGETS = 0x540d
-+ TCGETS2 = 0x4030542a
-+ TCSAFLUSH = 0x5410
-+ TCSBRK = 0x5405
-+ TCSBRKP = 0x5486
-+ TCSETA = 0x5402
-+ TCSETAF = 0x5404
-+ TCSETAW = 0x5403
-+ TCSETS = 0x540e
-+ TCSETS2 = 0x8030542b
-+ TCSETSF = 0x5410
-+ TCSETSF2 = 0x8030542d
-+ TCSETSW = 0x540f
-+ TCSETSW2 = 0x8030542c
-+ TCXONC = 0x5406
-+ TIOCCBRK = 0x5428
-+ TIOCCONS = 0x80047478
-+ TIOCEXCL = 0x740d
-+ TIOCGDEV = 0x40045432
-+ TIOCGETD = 0x7400
-+ TIOCGETP = 0x7408
-+ TIOCGEXCL = 0x40045440
-+ TIOCGICOUNT = 0x5492
-+ TIOCGISO7816 = 0x40285442
-+ TIOCGLCKTRMIOS = 0x548b
-+ TIOCGLTC = 0x7474
-+ TIOCGPGRP = 0x40047477
-+ TIOCGPKT = 0x40045438
-+ TIOCGPTLCK = 0x40045439
-+ TIOCGPTN = 0x40045430
-+ TIOCGPTPEER = 0x20005441
-+ TIOCGRS485 = 0x4020542e
-+ TIOCGSERIAL = 0x5484
-+ TIOCGSID = 0x7416
-+ TIOCGSOFTCAR = 0x5481
-+ TIOCGWINSZ = 0x40087468
-+ TIOCINQ = 0x467f
-+ TIOCLINUX = 0x5483
-+ TIOCMBIC = 0x741c
-+ TIOCMBIS = 0x741b
-+ TIOCMGET = 0x741d
-+ TIOCMIWAIT = 0x5491
-+ TIOCMSET = 0x741a
-+ TIOCM_CAR = 0x100
-+ TIOCM_CD = 0x100
-+ TIOCM_CTS = 0x40
-+ TIOCM_DSR = 0x400
-+ TIOCM_RI = 0x200
-+ TIOCM_RNG = 0x200
-+ TIOCM_SR = 0x20
-+ TIOCM_ST = 0x10
-+ TIOCNOTTY = 0x5471
-+ TIOCNXCL = 0x740e
-+ TIOCOUTQ = 0x7472
-+ TIOCPKT = 0x5470
-+ TIOCSBRK = 0x5427
-+ TIOCSCTTY = 0x5480
-+ TIOCSERCONFIG = 0x5488
-+ TIOCSERGETLSR = 0x548e
-+ TIOCSERGETMULTI = 0x548f
-+ TIOCSERGSTRUCT = 0x548d
-+ TIOCSERGWILD = 0x5489
-+ TIOCSERSETMULTI = 0x5490
-+ TIOCSERSWILD = 0x548a
-+ TIOCSER_TEMT = 0x1
-+ TIOCSETD = 0x7401
-+ TIOCSETN = 0x740a
-+ TIOCSETP = 0x7409
-+ TIOCSIG = 0x80045436
-+ TIOCSISO7816 = 0xc0285443
-+ TIOCSLCKTRMIOS = 0x548c
-+ TIOCSLTC = 0x7475
-+ TIOCSPGRP = 0x80047476
-+ TIOCSPTLCK = 0x80045431
-+ TIOCSRS485 = 0xc020542f
-+ TIOCSSERIAL = 0x5485
-+ TIOCSSOFTCAR = 0x5482
-+ TIOCSTI = 0x5472
-+ TIOCSWINSZ = 0x80087467
-+ TIOCVHANGUP = 0x5437
-+ TOSTOP = 0x8000
-+ TUNATTACHFILTER = 0x801054d5
-+ TUNDETACHFILTER = 0x801054d6
-+ TUNGETDEVNETNS = 0x200054e3
-+ TUNGETFEATURES = 0x400454cf
-+ TUNGETFILTER = 0x401054db
-+ TUNGETIFF = 0x400454d2
-+ TUNGETSNDBUF = 0x400454d3
-+ TUNGETVNETBE = 0x400454df
-+ TUNGETVNETHDRSZ = 0x400454d7
-+ TUNGETVNETLE = 0x400454dd
-+ TUNSETCARRIER = 0x800454e2
-+ TUNSETDEBUG = 0x800454c9
-+ TUNSETFILTEREBPF = 0x400454e1
-+ TUNSETGROUP = 0x800454ce
-+ TUNSETIFF = 0x800454ca
-+ TUNSETIFINDEX = 0x800454da
-+ TUNSETLINK = 0x800454cd
-+ TUNSETNOCSUM = 0x800454c8
-+ TUNSETOFFLOAD = 0x800454d0
-+ TUNSETOWNER = 0x800454cc
-+ TUNSETPERSIST = 0x800454cb
-+ TUNSETQUEUE = 0x800454d9
-+ TUNSETSNDBUF = 0x800454d4
-+ TUNSETSTEERINGEBPF = 0x400454e0
-+ TUNSETTXFILTER = 0x800454d1
-+ TUNSETVNETBE = 0x800454de
-+ TUNSETVNETHDRSZ = 0x800454d8
-+ TUNSETVNETLE = 0x800454dc
-+ UBI_IOCATT = 0x80186f40
-+ UBI_IOCDET = 0x80046f41
-+ UBI_IOCEBCH = 0x80044f02
-+ UBI_IOCEBER = 0x80044f01
-+ UBI_IOCEBISMAP = 0x40044f05
-+ UBI_IOCEBMAP = 0x80084f03
-+ UBI_IOCEBUNMAP = 0x80044f04
-+ UBI_IOCMKVOL = 0x80986f00
-+ UBI_IOCRMVOL = 0x80046f01
-+ UBI_IOCRNVOL = 0x91106f03
-+ UBI_IOCRPEB = 0x80046f04
-+ UBI_IOCRSVOL = 0x800c6f02
-+ UBI_IOCSETVOLPROP = 0x80104f06
-+ UBI_IOCSPEB = 0x80046f05
-+ UBI_IOCVOLCRBLK = 0x80804f07
-+ UBI_IOCVOLRMBLK = 0x20004f08
-+ UBI_IOCVOLUP = 0x80084f00
-+ VDISCARD = 0xd
-+ VEOF = 0x10
-+ VEOL = 0x11
-+ VEOL2 = 0x6
-+ VMIN = 0x4
-+ VREPRINT = 0xc
-+ VSTART = 0x8
-+ VSTOP = 0x9
-+ VSUSP = 0xa
-+ VSWTC = 0x7
-+ VSWTCH = 0x7
-+ VT1 = 0x4000
-+ VTDLY = 0x4000
-+ VTIME = 0x5
-+ VWERASE = 0xe
-+ WDIOC_GETBOOTSTATUS = 0x40045702
-+ WDIOC_GETPRETIMEOUT = 0x40045709
-+ WDIOC_GETSTATUS = 0x40045701
-+ WDIOC_GETSUPPORT = 0x40285700
-+ WDIOC_GETTEMP = 0x40045703
-+ WDIOC_GETTIMELEFT = 0x4004570a
-+ WDIOC_GETTIMEOUT = 0x40045707
-+ WDIOC_KEEPALIVE = 0x40045705
-+ WDIOC_SETOPTIONS = 0x40045704
-+ WORDSIZE = 0x40
-+ XCASE = 0x4
-+ XTABS = 0x1800
- )
-
- // Errors
- const (
-- E2BIG = syscall.Errno(0x7)
-- EACCES = syscall.Errno(0xd)
- EADDRINUSE = syscall.Errno(0x7d)
- EADDRNOTAVAIL = syscall.Errno(0x7e)
- EADV = syscall.Errno(0x44)
- EAFNOSUPPORT = syscall.Errno(0x7c)
-- EAGAIN = syscall.Errno(0xb)
- EALREADY = syscall.Errno(0x95)
- EBADE = syscall.Errno(0x32)
-- EBADF = syscall.Errno(0x9)
- EBADFD = syscall.Errno(0x51)
- EBADMSG = syscall.Errno(0x4d)
- EBADR = syscall.Errno(0x33)
- EBADRQC = syscall.Errno(0x36)
- EBADSLT = syscall.Errno(0x37)
- EBFONT = syscall.Errno(0x3b)
-- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x9e)
-- ECHILD = syscall.Errno(0xa)
- ECHRNG = syscall.Errno(0x25)
- ECOMM = syscall.Errno(0x46)
- ECONNABORTED = syscall.Errno(0x82)
-@@ -1886,12 +502,8 @@ const (
- EDEADLK = syscall.Errno(0x2d)
- EDEADLOCK = syscall.Errno(0x38)
- EDESTADDRREQ = syscall.Errno(0x60)
-- EDOM = syscall.Errno(0x21)
- EDOTDOT = syscall.Errno(0x49)
- EDQUOT = syscall.Errno(0x46d)
-- EEXIST = syscall.Errno(0x11)
-- EFAULT = syscall.Errno(0xe)
-- EFBIG = syscall.Errno(0x1b)
- EHOSTDOWN = syscall.Errno(0x93)
- EHOSTUNREACH = syscall.Errno(0x94)
- EHWPOISON = syscall.Errno(0xa8)
-@@ -1899,11 +511,7 @@ const (
- EILSEQ = syscall.Errno(0x58)
- EINIT = syscall.Errno(0x8d)
- EINPROGRESS = syscall.Errno(0x96)
-- EINTR = syscall.Errno(0x4)
-- EINVAL = syscall.Errno(0x16)
-- EIO = syscall.Errno(0x5)
- EISCONN = syscall.Errno(0x85)
-- EISDIR = syscall.Errno(0x15)
- EISNAM = syscall.Errno(0x8b)
- EKEYEXPIRED = syscall.Errno(0xa2)
- EKEYREJECTED = syscall.Errno(0xa4)
-@@ -1920,8 +528,6 @@ const (
- ELNRNG = syscall.Errno(0x29)
- ELOOP = syscall.Errno(0x5a)
- EMEDIUMTYPE = syscall.Errno(0xa0)
-- EMFILE = syscall.Errno(0x18)
-- EMLINK = syscall.Errno(0x1f)
- EMSGSIZE = syscall.Errno(0x61)
- EMULTIHOP = syscall.Errno(0x4a)
- ENAMETOOLONG = syscall.Errno(0x4e)
-@@ -1929,100 +535,68 @@ const (
- ENETDOWN = syscall.Errno(0x7f)
- ENETRESET = syscall.Errno(0x81)
- ENETUNREACH = syscall.Errno(0x80)
-- ENFILE = syscall.Errno(0x17)
- ENOANO = syscall.Errno(0x35)
- ENOBUFS = syscall.Errno(0x84)
- ENOCSI = syscall.Errno(0x2b)
- ENODATA = syscall.Errno(0x3d)
-- ENODEV = syscall.Errno(0x13)
-- ENOENT = syscall.Errno(0x2)
-- ENOEXEC = syscall.Errno(0x8)
- ENOKEY = syscall.Errno(0xa1)
- ENOLCK = syscall.Errno(0x2e)
- ENOLINK = syscall.Errno(0x43)
- ENOMEDIUM = syscall.Errno(0x9f)
-- ENOMEM = syscall.Errno(0xc)
- ENOMSG = syscall.Errno(0x23)
- ENONET = syscall.Errno(0x40)
- ENOPKG = syscall.Errno(0x41)
- ENOPROTOOPT = syscall.Errno(0x63)
-- ENOSPC = syscall.Errno(0x1c)
- ENOSR = syscall.Errno(0x3f)
- ENOSTR = syscall.Errno(0x3c)
- ENOSYS = syscall.Errno(0x59)
-- ENOTBLK = syscall.Errno(0xf)
- ENOTCONN = syscall.Errno(0x86)
-- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x5d)
- ENOTNAM = syscall.Errno(0x89)
- ENOTRECOVERABLE = syscall.Errno(0xa6)
- ENOTSOCK = syscall.Errno(0x5f)
- ENOTSUP = syscall.Errno(0x7a)
-- ENOTTY = syscall.Errno(0x19)
- ENOTUNIQ = syscall.Errno(0x50)
-- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x7a)
- EOVERFLOW = syscall.Errno(0x4f)
- EOWNERDEAD = syscall.Errno(0xa5)
-- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x7b)
-- EPIPE = syscall.Errno(0x20)
- EPROTO = syscall.Errno(0x47)
- EPROTONOSUPPORT = syscall.Errno(0x78)
- EPROTOTYPE = syscall.Errno(0x62)
-- ERANGE = syscall.Errno(0x22)
- EREMCHG = syscall.Errno(0x52)
- EREMDEV = syscall.Errno(0x8e)
- EREMOTE = syscall.Errno(0x42)
- EREMOTEIO = syscall.Errno(0x8c)
- ERESTART = syscall.Errno(0x5b)
- ERFKILL = syscall.Errno(0xa7)
-- EROFS = syscall.Errno(0x1e)
- ESHUTDOWN = syscall.Errno(0x8f)
- ESOCKTNOSUPPORT = syscall.Errno(0x79)
-- ESPIPE = syscall.Errno(0x1d)
-- ESRCH = syscall.Errno(0x3)
- ESRMNT = syscall.Errno(0x45)
- ESTALE = syscall.Errno(0x97)
- ESTRPIPE = syscall.Errno(0x5c)
- ETIME = syscall.Errno(0x3e)
- ETIMEDOUT = syscall.Errno(0x91)
- ETOOMANYREFS = syscall.Errno(0x90)
-- ETXTBSY = syscall.Errno(0x1a)
- EUCLEAN = syscall.Errno(0x87)
- EUNATCH = syscall.Errno(0x2a)
- EUSERS = syscall.Errno(0x5e)
-- EWOULDBLOCK = syscall.Errno(0xb)
-- EXDEV = syscall.Errno(0x12)
- EXFULL = syscall.Errno(0x34)
- )
-
- // Signals
- const (
-- SIGABRT = syscall.Signal(0x6)
-- SIGALRM = syscall.Signal(0xe)
- SIGBUS = syscall.Signal(0xa)
- SIGCHLD = syscall.Signal(0x12)
- SIGCLD = syscall.Signal(0x12)
- SIGCONT = syscall.Signal(0x19)
- SIGEMT = syscall.Signal(0x7)
-- SIGFPE = syscall.Signal(0x8)
-- SIGHUP = syscall.Signal(0x1)
-- SIGILL = syscall.Signal(0x4)
-- SIGINT = syscall.Signal(0x2)
- SIGIO = syscall.Signal(0x16)
-- SIGIOT = syscall.Signal(0x6)
-- SIGKILL = syscall.Signal(0x9)
-- SIGPIPE = syscall.Signal(0xd)
- SIGPOLL = syscall.Signal(0x16)
- SIGPROF = syscall.Signal(0x1d)
- SIGPWR = syscall.Signal(0x13)
-- SIGQUIT = syscall.Signal(0x3)
-- SIGSEGV = syscall.Signal(0xb)
- SIGSTOP = syscall.Signal(0x17)
- SIGSYS = syscall.Signal(0xc)
-- SIGTERM = syscall.Signal(0xf)
-- SIGTRAP = syscall.Signal(0x5)
- SIGTSTP = syscall.Signal(0x18)
- SIGTTIN = syscall.Signal(0x1a)
- SIGTTOU = syscall.Signal(0x1b)
-@@ -2036,174 +610,182 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "no such device or address",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource temporarily unavailable",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device or resource busy",
-- 17: "file exists",
-- 18: "invalid cross-device link",
-- 19: "no such device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "numerical result out of range",
-- 35: "no message of desired type",
-- 36: "identifier removed",
-- 37: "channel number out of range",
-- 38: "level 2 not synchronized",
-- 39: "level 3 halted",
-- 40: "level 3 reset",
-- 41: "link number out of range",
-- 42: "protocol driver not attached",
-- 43: "no CSI structure available",
-- 44: "level 2 halted",
-- 45: "resource deadlock avoided",
-- 46: "no locks available",
-- 50: "invalid exchange",
-- 51: "invalid request descriptor",
-- 52: "exchange full",
-- 53: "no anode",
-- 54: "invalid request code",
-- 55: "invalid slot",
-- 56: "file locking deadlock error",
-- 59: "bad font file format",
-- 60: "device not a stream",
-- 61: "no data available",
-- 62: "timer expired",
-- 63: "out of streams resources",
-- 64: "machine is not on the network",
-- 65: "package not installed",
-- 66: "object is remote",
-- 67: "link has been severed",
-- 68: "advertise error",
-- 69: "srmount error",
-- 70: "communication error on send",
-- 71: "protocol error",
-- 73: "RFS specific error",
-- 74: "multihop attempted",
-- 77: "bad message",
-- 78: "file name too long",
-- 79: "value too large for defined data type",
-- 80: "name not unique on network",
-- 81: "file descriptor in bad state",
-- 82: "remote address changed",
-- 83: "can not access a needed shared library",
-- 84: "accessing a corrupted shared library",
-- 85: ".lib section in a.out corrupted",
-- 86: "attempting to link in too many shared libraries",
-- 87: "cannot exec a shared library directly",
-- 88: "invalid or incomplete multibyte or wide character",
-- 89: "function not implemented",
-- 90: "too many levels of symbolic links",
-- 91: "interrupted system call should be restarted",
-- 92: "streams pipe error",
-- 93: "directory not empty",
-- 94: "too many users",
-- 95: "socket operation on non-socket",
-- 96: "destination address required",
-- 97: "message too long",
-- 98: "protocol wrong type for socket",
-- 99: "protocol not available",
-- 120: "protocol not supported",
-- 121: "socket type not supported",
-- 122: "operation not supported",
-- 123: "protocol family not supported",
-- 124: "address family not supported by protocol",
-- 125: "address already in use",
-- 126: "cannot assign requested address",
-- 127: "network is down",
-- 128: "network is unreachable",
-- 129: "network dropped connection on reset",
-- 130: "software caused connection abort",
-- 131: "connection reset by peer",
-- 132: "no buffer space available",
-- 133: "transport endpoint is already connected",
-- 134: "transport endpoint is not connected",
-- 135: "structure needs cleaning",
-- 137: "not a XENIX named type file",
-- 138: "no XENIX semaphores available",
-- 139: "is a named type file",
-- 140: "remote I/O error",
-- 141: "unknown error 141",
-- 142: "unknown error 142",
-- 143: "cannot send after transport endpoint shutdown",
-- 144: "too many references: cannot splice",
-- 145: "connection timed out",
-- 146: "connection refused",
-- 147: "host is down",
-- 148: "no route to host",
-- 149: "operation already in progress",
-- 150: "operation now in progress",
-- 151: "stale file handle",
-- 158: "operation canceled",
-- 159: "no medium found",
-- 160: "wrong medium type",
-- 161: "required key not available",
-- 162: "key has expired",
-- 163: "key has been revoked",
-- 164: "key was rejected by service",
-- 165: "owner died",
-- 166: "state not recoverable",
-- 167: "operation not possible due to RF-kill",
-- 168: "memory page has hardware error",
-- 1133: "disk quota exceeded",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device or resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "invalid cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "numerical result out of range"},
-+ {35, "ENOMSG", "no message of desired type"},
-+ {36, "EIDRM", "identifier removed"},
-+ {37, "ECHRNG", "channel number out of range"},
-+ {38, "EL2NSYNC", "level 2 not synchronized"},
-+ {39, "EL3HLT", "level 3 halted"},
-+ {40, "EL3RST", "level 3 reset"},
-+ {41, "ELNRNG", "link number out of range"},
-+ {42, "EUNATCH", "protocol driver not attached"},
-+ {43, "ENOCSI", "no CSI structure available"},
-+ {44, "EL2HLT", "level 2 halted"},
-+ {45, "EDEADLK", "resource deadlock avoided"},
-+ {46, "ENOLCK", "no locks available"},
-+ {50, "EBADE", "invalid exchange"},
-+ {51, "EBADR", "invalid request descriptor"},
-+ {52, "EXFULL", "exchange full"},
-+ {53, "ENOANO", "no anode"},
-+ {54, "EBADRQC", "invalid request code"},
-+ {55, "EBADSLT", "invalid slot"},
-+ {56, "EDEADLOCK", "file locking deadlock error"},
-+ {59, "EBFONT", "bad font file format"},
-+ {60, "ENOSTR", "device not a stream"},
-+ {61, "ENODATA", "no data available"},
-+ {62, "ETIME", "timer expired"},
-+ {63, "ENOSR", "out of streams resources"},
-+ {64, "ENONET", "machine is not on the network"},
-+ {65, "ENOPKG", "package not installed"},
-+ {66, "EREMOTE", "object is remote"},
-+ {67, "ENOLINK", "link has been severed"},
-+ {68, "EADV", "advertise error"},
-+ {69, "ESRMNT", "srmount error"},
-+ {70, "ECOMM", "communication error on send"},
-+ {71, "EPROTO", "protocol error"},
-+ {73, "EDOTDOT", "RFS specific error"},
-+ {74, "EMULTIHOP", "multihop attempted"},
-+ {77, "EBADMSG", "bad message"},
-+ {78, "ENAMETOOLONG", "file name too long"},
-+ {79, "EOVERFLOW", "value too large for defined data type"},
-+ {80, "ENOTUNIQ", "name not unique on network"},
-+ {81, "EBADFD", "file descriptor in bad state"},
-+ {82, "EREMCHG", "remote address changed"},
-+ {83, "ELIBACC", "can not access a needed shared library"},
-+ {84, "ELIBBAD", "accessing a corrupted shared library"},
-+ {85, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {86, "ELIBMAX", "attempting to link in too many shared libraries"},
-+ {87, "ELIBEXEC", "cannot exec a shared library directly"},
-+ {88, "EILSEQ", "invalid or incomplete multibyte or wide character"},
-+ {89, "ENOSYS", "function not implemented"},
-+ {90, "ELOOP", "too many levels of symbolic links"},
-+ {91, "ERESTART", "interrupted system call should be restarted"},
-+ {92, "ESTRPIPE", "streams pipe error"},
-+ {93, "ENOTEMPTY", "directory not empty"},
-+ {94, "EUSERS", "too many users"},
-+ {95, "ENOTSOCK", "socket operation on non-socket"},
-+ {96, "EDESTADDRREQ", "destination address required"},
-+ {97, "EMSGSIZE", "message too long"},
-+ {98, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {99, "ENOPROTOOPT", "protocol not available"},
-+ {120, "EPROTONOSUPPORT", "protocol not supported"},
-+ {121, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {122, "ENOTSUP", "operation not supported"},
-+ {123, "EPFNOSUPPORT", "protocol family not supported"},
-+ {124, "EAFNOSUPPORT", "address family not supported by protocol"},
-+ {125, "EADDRINUSE", "address already in use"},
-+ {126, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {127, "ENETDOWN", "network is down"},
-+ {128, "ENETUNREACH", "network is unreachable"},
-+ {129, "ENETRESET", "network dropped connection on reset"},
-+ {130, "ECONNABORTED", "software caused connection abort"},
-+ {131, "ECONNRESET", "connection reset by peer"},
-+ {132, "ENOBUFS", "no buffer space available"},
-+ {133, "EISCONN", "transport endpoint is already connected"},
-+ {134, "ENOTCONN", "transport endpoint is not connected"},
-+ {135, "EUCLEAN", "structure needs cleaning"},
-+ {137, "ENOTNAM", "not a XENIX named type file"},
-+ {138, "ENAVAIL", "no XENIX semaphores available"},
-+ {139, "EISNAM", "is a named type file"},
-+ {140, "EREMOTEIO", "remote I/O error"},
-+ {141, "EINIT", "unknown error 141"},
-+ {142, "EREMDEV", "unknown error 142"},
-+ {143, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
-+ {144, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {145, "ETIMEDOUT", "connection timed out"},
-+ {146, "ECONNREFUSED", "connection refused"},
-+ {147, "EHOSTDOWN", "host is down"},
-+ {148, "EHOSTUNREACH", "no route to host"},
-+ {149, "EALREADY", "operation already in progress"},
-+ {150, "EINPROGRESS", "operation now in progress"},
-+ {151, "ESTALE", "stale file handle"},
-+ {158, "ECANCELED", "operation canceled"},
-+ {159, "ENOMEDIUM", "no medium found"},
-+ {160, "EMEDIUMTYPE", "wrong medium type"},
-+ {161, "ENOKEY", "required key not available"},
-+ {162, "EKEYEXPIRED", "key has expired"},
-+ {163, "EKEYREVOKED", "key has been revoked"},
-+ {164, "EKEYREJECTED", "key was rejected by service"},
-+ {165, "EOWNERDEAD", "owner died"},
-+ {166, "ENOTRECOVERABLE", "state not recoverable"},
-+ {167, "ERFKILL", "operation not possible due to RF-kill"},
-+ {168, "EHWPOISON", "memory page has hardware error"},
-+ {1133, "EDQUOT", "disk quota exceeded"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/breakpoint trap",
-- 6: "aborted",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "user defined signal 1",
-- 17: "user defined signal 2",
-- 18: "child exited",
-- 19: "power failure",
-- 20: "window changed",
-- 21: "urgent I/O condition",
-- 22: "I/O possible",
-- 23: "stopped (signal)",
-- 24: "stopped",
-- 25: "continued",
-- 26: "stopped (tty input)",
-- 27: "stopped (tty output)",
-- 28: "virtual timer expired",
-- 29: "profiling timer expired",
-- 30: "CPU time limit exceeded",
-- 31: "file size limit exceeded",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/breakpoint trap"},
-+ {6, "SIGABRT", "aborted"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGUSR1", "user defined signal 1"},
-+ {17, "SIGUSR2", "user defined signal 2"},
-+ {18, "SIGCHLD", "child exited"},
-+ {19, "SIGPWR", "power failure"},
-+ {20, "SIGWINCH", "window changed"},
-+ {21, "SIGURG", "urgent I/O condition"},
-+ {22, "SIGIO", "I/O possible"},
-+ {23, "SIGSTOP", "stopped (signal)"},
-+ {24, "SIGTSTP", "stopped"},
-+ {25, "SIGCONT", "continued"},
-+ {26, "SIGTTIN", "stopped (tty input)"},
-+ {27, "SIGTTOU", "stopped (tty output)"},
-+ {28, "SIGVTALRM", "virtual timer expired"},
-+ {29, "SIGPROF", "profiling timer expired"},
-+ {30, "SIGXCPU", "CPU time limit exceeded"},
-+ {31, "SIGXFSZ", "file size limit exceeded"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
-index 44191b0c..2dfe6bba 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
-@@ -3,7 +3,7 @@
-
- // +build mipsle,linux
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
-
- package unix
-@@ -11,1873 +11,489 @@ package unix
- import "syscall"
-
- const (
-- AF_ALG = 0x26
-- AF_APPLETALK = 0x5
-- AF_ASH = 0x12
-- AF_ATMPVC = 0x8
-- AF_ATMSVC = 0x14
-- AF_AX25 = 0x3
-- AF_BLUETOOTH = 0x1f
-- AF_BRIDGE = 0x7
-- AF_CAIF = 0x25
-- AF_CAN = 0x1d
-- AF_DECnet = 0xc
-- AF_ECONET = 0x13
-- AF_FILE = 0x1
-- AF_IB = 0x1b
-- AF_IEEE802154 = 0x24
-- AF_INET = 0x2
-- AF_INET6 = 0xa
-- AF_IPX = 0x4
-- AF_IRDA = 0x17
-- AF_ISDN = 0x22
-- AF_IUCV = 0x20
-- AF_KCM = 0x29
-- AF_KEY = 0xf
-- AF_LLC = 0x1a
-- AF_LOCAL = 0x1
-- AF_MAX = 0x2b
-- AF_MPLS = 0x1c
-- AF_NETBEUI = 0xd
-- AF_NETLINK = 0x10
-- AF_NETROM = 0x6
-- AF_NFC = 0x27
-- AF_PACKET = 0x11
-- AF_PHONET = 0x23
-- AF_PPPOX = 0x18
-- AF_QIPCRTR = 0x2a
-- AF_RDS = 0x15
-- AF_ROSE = 0xb
-- AF_ROUTE = 0x10
-- AF_RXRPC = 0x21
-- AF_SECURITY = 0xe
-- AF_SNA = 0x16
-- AF_TIPC = 0x1e
-- AF_UNIX = 0x1
-- AF_UNSPEC = 0x0
-- AF_VSOCK = 0x28
-- AF_WANPIPE = 0x19
-- AF_X25 = 0x9
-- ALG_OP_DECRYPT = 0x0
-- ALG_OP_ENCRYPT = 0x1
-- ALG_SET_AEAD_ASSOCLEN = 0x4
-- ALG_SET_AEAD_AUTHSIZE = 0x5
-- ALG_SET_IV = 0x2
-- ALG_SET_KEY = 0x1
-- ALG_SET_OP = 0x3
-- ARPHRD_6LOWPAN = 0x339
-- ARPHRD_ADAPT = 0x108
-- ARPHRD_APPLETLK = 0x8
-- ARPHRD_ARCNET = 0x7
-- ARPHRD_ASH = 0x30d
-- ARPHRD_ATM = 0x13
-- ARPHRD_AX25 = 0x3
-- ARPHRD_BIF = 0x307
-- ARPHRD_CAIF = 0x336
-- ARPHRD_CAN = 0x118
-- ARPHRD_CHAOS = 0x5
-- ARPHRD_CISCO = 0x201
-- ARPHRD_CSLIP = 0x101
-- ARPHRD_CSLIP6 = 0x103
-- ARPHRD_DDCMP = 0x205
-- ARPHRD_DLCI = 0xf
-- ARPHRD_ECONET = 0x30e
-- ARPHRD_EETHER = 0x2
-- ARPHRD_ETHER = 0x1
-- ARPHRD_EUI64 = 0x1b
-- ARPHRD_FCAL = 0x311
-- ARPHRD_FCFABRIC = 0x313
-- ARPHRD_FCPL = 0x312
-- ARPHRD_FCPP = 0x310
-- ARPHRD_FDDI = 0x306
-- ARPHRD_FRAD = 0x302
-- ARPHRD_HDLC = 0x201
-- ARPHRD_HIPPI = 0x30c
-- ARPHRD_HWX25 = 0x110
-- ARPHRD_IEEE1394 = 0x18
-- ARPHRD_IEEE802 = 0x6
-- ARPHRD_IEEE80211 = 0x321
-- ARPHRD_IEEE80211_PRISM = 0x322
-- ARPHRD_IEEE80211_RADIOTAP = 0x323
-- ARPHRD_IEEE802154 = 0x324
-- ARPHRD_IEEE802154_MONITOR = 0x325
-- ARPHRD_IEEE802_TR = 0x320
-- ARPHRD_INFINIBAND = 0x20
-- ARPHRD_IP6GRE = 0x337
-- ARPHRD_IPDDP = 0x309
-- ARPHRD_IPGRE = 0x30a
-- ARPHRD_IRDA = 0x30f
-- ARPHRD_LAPB = 0x204
-- ARPHRD_LOCALTLK = 0x305
-- ARPHRD_LOOPBACK = 0x304
-- ARPHRD_METRICOM = 0x17
-- ARPHRD_NETLINK = 0x338
-- ARPHRD_NETROM = 0x0
-- ARPHRD_NONE = 0xfffe
-- ARPHRD_PHONET = 0x334
-- ARPHRD_PHONET_PIPE = 0x335
-- ARPHRD_PIMREG = 0x30b
-- ARPHRD_PPP = 0x200
-- ARPHRD_PRONET = 0x4
-- ARPHRD_RAWHDLC = 0x206
-- ARPHRD_ROSE = 0x10e
-- ARPHRD_RSRVD = 0x104
-- ARPHRD_SIT = 0x308
-- ARPHRD_SKIP = 0x303
-- ARPHRD_SLIP = 0x100
-- ARPHRD_SLIP6 = 0x102
-- ARPHRD_TUNNEL = 0x300
-- ARPHRD_TUNNEL6 = 0x301
-- ARPHRD_VOID = 0xffff
-- ARPHRD_X25 = 0x10f
-- B0 = 0x0
-- B1000000 = 0x1008
-- B110 = 0x3
-- B115200 = 0x1002
-- B1152000 = 0x1009
-- B1200 = 0x9
-- B134 = 0x4
-- B150 = 0x5
-- B1500000 = 0x100a
-- B1800 = 0xa
-- B19200 = 0xe
-- B200 = 0x6
-- B2000000 = 0x100b
-- B230400 = 0x1003
-- B2400 = 0xb
-- B2500000 = 0x100c
-- B300 = 0x7
-- B3000000 = 0x100d
-- B3500000 = 0x100e
-- B38400 = 0xf
-- B4000000 = 0x100f
-- B460800 = 0x1004
-- B4800 = 0xc
-- B50 = 0x1
-- B500000 = 0x1005
-- B57600 = 0x1001
-- B576000 = 0x1006
-- B600 = 0x8
-- B75 = 0x2
-- B921600 = 0x1007
-- B9600 = 0xd
-- BLKBSZGET = 0x40041270
-- BLKBSZSET = 0x80041271
-- BLKFLSBUF = 0x20001261
-- BLKFRAGET = 0x20001265
-- BLKFRASET = 0x20001264
-- BLKGETSIZE = 0x20001260
-- BLKGETSIZE64 = 0x40041272
-- BLKPBSZGET = 0x2000127b
-- BLKRAGET = 0x20001263
-- BLKRASET = 0x20001262
-- BLKROGET = 0x2000125e
-- BLKROSET = 0x2000125d
-- BLKRRPART = 0x2000125f
-- BLKSECTGET = 0x20001267
-- BLKSECTSET = 0x20001266
-- BLKSSZGET = 0x20001268
-- BOTHER = 0x1000
-- BPF_A = 0x10
-- BPF_ABS = 0x20
-- BPF_ADD = 0x0
-- BPF_ALU = 0x4
-- BPF_AND = 0x50
-- BPF_B = 0x10
-- BPF_DIV = 0x30
-- BPF_H = 0x8
-- BPF_IMM = 0x0
-- BPF_IND = 0x40
-- BPF_JA = 0x0
-- BPF_JEQ = 0x10
-- BPF_JGE = 0x30
-- BPF_JGT = 0x20
-- BPF_JMP = 0x5
-- BPF_JSET = 0x40
-- BPF_K = 0x0
-- BPF_LD = 0x0
-- BPF_LDX = 0x1
-- BPF_LEN = 0x80
-- BPF_LL_OFF = -0x200000
-- BPF_LSH = 0x60
-- BPF_MAJOR_VERSION = 0x1
-- BPF_MAXINSNS = 0x1000
-- BPF_MEM = 0x60
-- BPF_MEMWORDS = 0x10
-- BPF_MINOR_VERSION = 0x1
-- BPF_MISC = 0x7
-- BPF_MOD = 0x90
-- BPF_MSH = 0xa0
-- BPF_MUL = 0x20
-- BPF_NEG = 0x80
-- BPF_NET_OFF = -0x100000
-- BPF_OR = 0x40
-- BPF_RET = 0x6
-- BPF_RSH = 0x70
-- BPF_ST = 0x2
-- BPF_STX = 0x3
-- BPF_SUB = 0x10
-- BPF_TAX = 0x0
-- BPF_TXA = 0x80
-- BPF_W = 0x0
-- BPF_X = 0x8
-- BPF_XOR = 0xa0
-- BRKINT = 0x2
-- BS0 = 0x0
-- BS1 = 0x2000
-- BSDLY = 0x2000
-- CAN_BCM = 0x2
-- CAN_EFF_FLAG = 0x80000000
-- CAN_EFF_ID_BITS = 0x1d
-- CAN_EFF_MASK = 0x1fffffff
-- CAN_ERR_FLAG = 0x20000000
-- CAN_ERR_MASK = 0x1fffffff
-- CAN_INV_FILTER = 0x20000000
-- CAN_ISOTP = 0x6
-- CAN_MAX_DLC = 0x8
-- CAN_MAX_DLEN = 0x8
-- CAN_MCNET = 0x5
-- CAN_MTU = 0x10
-- CAN_NPROTO = 0x7
-- CAN_RAW = 0x1
-- CAN_RAW_FILTER_MAX = 0x200
-- CAN_RTR_FLAG = 0x40000000
-- CAN_SFF_ID_BITS = 0xb
-- CAN_SFF_MASK = 0x7ff
-- CAN_TP16 = 0x3
-- CAN_TP20 = 0x4
-- CBAUD = 0x100f
-- CBAUDEX = 0x1000
-- CFLUSH = 0xf
-- CIBAUD = 0x100f0000
-- CLOCAL = 0x800
-- CLOCK_BOOTTIME = 0x7
-- CLOCK_BOOTTIME_ALARM = 0x9
-- CLOCK_DEFAULT = 0x0
-- CLOCK_EXT = 0x1
-- CLOCK_INT = 0x2
-- CLOCK_MONOTONIC = 0x1
-- CLOCK_MONOTONIC_COARSE = 0x6
-- CLOCK_MONOTONIC_RAW = 0x4
-- CLOCK_PROCESS_CPUTIME_ID = 0x2
-- CLOCK_REALTIME = 0x0
-- CLOCK_REALTIME_ALARM = 0x8
-- CLOCK_REALTIME_COARSE = 0x5
-- CLOCK_TAI = 0xb
-- CLOCK_THREAD_CPUTIME_ID = 0x3
-- CLOCK_TXFROMRX = 0x4
-- CLOCK_TXINT = 0x3
-- CLONE_CHILD_CLEARTID = 0x200000
-- CLONE_CHILD_SETTID = 0x1000000
-- CLONE_DETACHED = 0x400000
-- CLONE_FILES = 0x400
-- CLONE_FS = 0x200
-- CLONE_IO = 0x80000000
-- CLONE_NEWCGROUP = 0x2000000
-- CLONE_NEWIPC = 0x8000000
-- CLONE_NEWNET = 0x40000000
-- CLONE_NEWNS = 0x20000
-- CLONE_NEWPID = 0x20000000
-- CLONE_NEWUSER = 0x10000000
-- CLONE_NEWUTS = 0x4000000
-- CLONE_PARENT = 0x8000
-- CLONE_PARENT_SETTID = 0x100000
-- CLONE_PTRACE = 0x2000
-- CLONE_SETTLS = 0x80000
-- CLONE_SIGHAND = 0x800
-- CLONE_SYSVSEM = 0x40000
-- CLONE_THREAD = 0x10000
-- CLONE_UNTRACED = 0x800000
-- CLONE_VFORK = 0x4000
-- CLONE_VM = 0x100
-- CMSPAR = 0x40000000
-- CR0 = 0x0
-- CR1 = 0x200
-- CR2 = 0x400
-- CR3 = 0x600
-- CRDLY = 0x600
-- CREAD = 0x80
-- CRTSCTS = 0x80000000
-- CS5 = 0x0
-- CS6 = 0x10
-- CS7 = 0x20
-- CS8 = 0x30
-- CSIGNAL = 0xff
-- CSIZE = 0x30
-- CSTART = 0x11
-- CSTATUS = 0x0
-- CSTOP = 0x13
-- CSTOPB = 0x40
-- CSUSP = 0x1a
-- DT_BLK = 0x6
-- DT_CHR = 0x2
-- DT_DIR = 0x4
-- DT_FIFO = 0x1
-- DT_LNK = 0xa
-- DT_REG = 0x8
-- DT_SOCK = 0xc
-- DT_UNKNOWN = 0x0
-- DT_WHT = 0xe
-- ECHO = 0x8
-- ECHOCTL = 0x200
-- ECHOE = 0x10
-- ECHOK = 0x20
-- ECHOKE = 0x800
-- ECHONL = 0x40
-- ECHOPRT = 0x400
-- EFD_CLOEXEC = 0x80000
-- EFD_NONBLOCK = 0x80
-- EFD_SEMAPHORE = 0x1
-- ENCODING_DEFAULT = 0x0
-- ENCODING_FM_MARK = 0x3
-- ENCODING_FM_SPACE = 0x4
-- ENCODING_MANCHESTER = 0x5
-- ENCODING_NRZ = 0x1
-- ENCODING_NRZI = 0x2
-- EPOLLERR = 0x8
-- EPOLLET = 0x80000000
-- EPOLLEXCLUSIVE = 0x10000000
-- EPOLLHUP = 0x10
-- EPOLLIN = 0x1
-- EPOLLMSG = 0x400
-- EPOLLONESHOT = 0x40000000
-- EPOLLOUT = 0x4
-- EPOLLPRI = 0x2
-- EPOLLRDBAND = 0x80
-- EPOLLRDHUP = 0x2000
-- EPOLLRDNORM = 0x40
-- EPOLLWAKEUP = 0x20000000
-- EPOLLWRBAND = 0x200
-- EPOLLWRNORM = 0x100
-- EPOLL_CLOEXEC = 0x80000
-- EPOLL_CTL_ADD = 0x1
-- EPOLL_CTL_DEL = 0x2
-- EPOLL_CTL_MOD = 0x3
-- ETH_P_1588 = 0x88f7
-- ETH_P_8021AD = 0x88a8
-- ETH_P_8021AH = 0x88e7
-- ETH_P_8021Q = 0x8100
-- ETH_P_80221 = 0x8917
-- ETH_P_802_2 = 0x4
-- ETH_P_802_3 = 0x1
-- ETH_P_802_3_MIN = 0x600
-- ETH_P_802_EX1 = 0x88b5
-- ETH_P_AARP = 0x80f3
-- ETH_P_AF_IUCV = 0xfbfb
-- ETH_P_ALL = 0x3
-- ETH_P_AOE = 0x88a2
-- ETH_P_ARCNET = 0x1a
-- ETH_P_ARP = 0x806
-- ETH_P_ATALK = 0x809b
-- ETH_P_ATMFATE = 0x8884
-- ETH_P_ATMMPOA = 0x884c
-- ETH_P_AX25 = 0x2
-- ETH_P_BATMAN = 0x4305
-- ETH_P_BPQ = 0x8ff
-- ETH_P_CAIF = 0xf7
-- ETH_P_CAN = 0xc
-- ETH_P_CANFD = 0xd
-- ETH_P_CONTROL = 0x16
-- ETH_P_CUST = 0x6006
-- ETH_P_DDCMP = 0x6
-- ETH_P_DEC = 0x6000
-- ETH_P_DIAG = 0x6005
-- ETH_P_DNA_DL = 0x6001
-- ETH_P_DNA_RC = 0x6002
-- ETH_P_DNA_RT = 0x6003
-- ETH_P_DSA = 0x1b
-- ETH_P_ECONET = 0x18
-- ETH_P_EDSA = 0xdada
-- ETH_P_FCOE = 0x8906
-- ETH_P_FIP = 0x8914
-- ETH_P_HDLC = 0x19
-- ETH_P_HSR = 0x892f
-- ETH_P_IEEE802154 = 0xf6
-- ETH_P_IEEEPUP = 0xa00
-- ETH_P_IEEEPUPAT = 0xa01
-- ETH_P_IP = 0x800
-- ETH_P_IPV6 = 0x86dd
-- ETH_P_IPX = 0x8137
-- ETH_P_IRDA = 0x17
-- ETH_P_LAT = 0x6004
-- ETH_P_LINK_CTL = 0x886c
-- ETH_P_LOCALTALK = 0x9
-- ETH_P_LOOP = 0x60
-- ETH_P_LOOPBACK = 0x9000
-- ETH_P_MACSEC = 0x88e5
-- ETH_P_MOBITEX = 0x15
-- ETH_P_MPLS_MC = 0x8848
-- ETH_P_MPLS_UC = 0x8847
-- ETH_P_MVRP = 0x88f5
-- ETH_P_NCSI = 0x88f8
-- ETH_P_PAE = 0x888e
-- ETH_P_PAUSE = 0x8808
-- ETH_P_PHONET = 0xf5
-- ETH_P_PPPTALK = 0x10
-- ETH_P_PPP_DISC = 0x8863
-- ETH_P_PPP_MP = 0x8
-- ETH_P_PPP_SES = 0x8864
-- ETH_P_PRP = 0x88fb
-- ETH_P_PUP = 0x200
-- ETH_P_PUPAT = 0x201
-- ETH_P_QINQ1 = 0x9100
-- ETH_P_QINQ2 = 0x9200
-- ETH_P_QINQ3 = 0x9300
-- ETH_P_RARP = 0x8035
-- ETH_P_SCA = 0x6007
-- ETH_P_SLOW = 0x8809
-- ETH_P_SNAP = 0x5
-- ETH_P_TDLS = 0x890d
-- ETH_P_TEB = 0x6558
-- ETH_P_TIPC = 0x88ca
-- ETH_P_TRAILER = 0x1c
-- ETH_P_TR_802_2 = 0x11
-- ETH_P_TSN = 0x22f0
-- ETH_P_WAN_PPP = 0x7
-- ETH_P_WCCP = 0x883e
-- ETH_P_X25 = 0x805
-- ETH_P_XDSA = 0xf8
-- EXTA = 0xe
-- EXTB = 0xf
-- EXTPROC = 0x10000
-- FALLOC_FL_COLLAPSE_RANGE = 0x8
-- FALLOC_FL_INSERT_RANGE = 0x20
-- FALLOC_FL_KEEP_SIZE = 0x1
-- FALLOC_FL_NO_HIDE_STALE = 0x4
-- FALLOC_FL_PUNCH_HOLE = 0x2
-- FALLOC_FL_UNSHARE_RANGE = 0x40
-- FALLOC_FL_ZERO_RANGE = 0x10
-- FD_CLOEXEC = 0x1
-- FD_SETSIZE = 0x400
-- FF0 = 0x0
-- FF1 = 0x8000
-- FFDLY = 0x8000
-- FLUSHO = 0x2000
-- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
-- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
-- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
-- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
-- FS_ENCRYPTION_MODE_INVALID = 0x0
-- FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
-- FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
-- FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
-- FS_KEY_DESCRIPTOR_SIZE = 0x8
-- FS_KEY_DESC_PREFIX = "fscrypt:"
-- FS_KEY_DESC_PREFIX_SIZE = 0x8
-- FS_MAX_KEY_SIZE = 0x40
-- FS_POLICY_FLAGS_PAD_16 = 0x2
-- FS_POLICY_FLAGS_PAD_32 = 0x3
-- FS_POLICY_FLAGS_PAD_4 = 0x0
-- FS_POLICY_FLAGS_PAD_8 = 0x1
-- FS_POLICY_FLAGS_PAD_MASK = 0x3
-- FS_POLICY_FLAGS_VALID = 0x3
-- F_DUPFD = 0x0
-- F_DUPFD_CLOEXEC = 0x406
-- F_EXLCK = 0x4
-- F_GETFD = 0x1
-- F_GETFL = 0x3
-- F_GETLEASE = 0x401
-- F_GETLK = 0x21
-- F_GETLK64 = 0x21
-- F_GETOWN = 0x17
-- F_GETOWN_EX = 0x10
-- F_GETPIPE_SZ = 0x408
-- F_GETSIG = 0xb
-- F_LOCK = 0x1
-- F_NOTIFY = 0x402
-- F_OFD_GETLK = 0x24
-- F_OFD_SETLK = 0x25
-- F_OFD_SETLKW = 0x26
-- F_OK = 0x0
-- F_RDLCK = 0x0
-- F_SETFD = 0x2
-- F_SETFL = 0x4
-- F_SETLEASE = 0x400
-- F_SETLK = 0x22
-- F_SETLK64 = 0x22
-- F_SETLKW = 0x23
-- F_SETLKW64 = 0x23
-- F_SETOWN = 0x18
-- F_SETOWN_EX = 0xf
-- F_SETPIPE_SZ = 0x407
-- F_SETSIG = 0xa
-- F_SHLCK = 0x8
-- F_TEST = 0x3
-- F_TLOCK = 0x2
-- F_ULOCK = 0x0
-- F_UNLCK = 0x2
-- F_WRLCK = 0x1
-- GENL_ADMIN_PERM = 0x1
-- GENL_CMD_CAP_DO = 0x2
-- GENL_CMD_CAP_DUMP = 0x4
-- GENL_CMD_CAP_HASPOL = 0x8
-- GENL_HDRLEN = 0x4
-- GENL_ID_CTRL = 0x10
-- GENL_ID_PMCRAID = 0x12
-- GENL_ID_VFS_DQUOT = 0x11
-- GENL_MAX_ID = 0x3ff
-- GENL_MIN_ID = 0x10
-- GENL_NAMSIZ = 0x10
-- GENL_START_ALLOC = 0x13
-- GENL_UNS_ADMIN_PERM = 0x10
-- GRND_NONBLOCK = 0x1
-- GRND_RANDOM = 0x2
-- HUPCL = 0x400
-- IBSHIFT = 0x10
-- ICANON = 0x2
-- ICMPV6_FILTER = 0x1
-- ICRNL = 0x100
-- IEXTEN = 0x100
-- IFA_F_DADFAILED = 0x8
-- IFA_F_DEPRECATED = 0x20
-- IFA_F_HOMEADDRESS = 0x10
-- IFA_F_MANAGETEMPADDR = 0x100
-- IFA_F_MCAUTOJOIN = 0x400
-- IFA_F_NODAD = 0x2
-- IFA_F_NOPREFIXROUTE = 0x200
-- IFA_F_OPTIMISTIC = 0x4
-- IFA_F_PERMANENT = 0x80
-- IFA_F_SECONDARY = 0x1
-- IFA_F_STABLE_PRIVACY = 0x800
-- IFA_F_TEMPORARY = 0x1
-- IFA_F_TENTATIVE = 0x40
-- IFA_MAX = 0x8
-- IFF_ALLMULTI = 0x200
-- IFF_ATTACH_QUEUE = 0x200
-- IFF_AUTOMEDIA = 0x4000
-- IFF_BROADCAST = 0x2
-- IFF_DEBUG = 0x4
-- IFF_DETACH_QUEUE = 0x400
-- IFF_DORMANT = 0x20000
-- IFF_DYNAMIC = 0x8000
-- IFF_ECHO = 0x40000
-- IFF_LOOPBACK = 0x8
-- IFF_LOWER_UP = 0x10000
-- IFF_MASTER = 0x400
-- IFF_MULTICAST = 0x1000
-- IFF_MULTI_QUEUE = 0x100
-- IFF_NOARP = 0x80
-- IFF_NOFILTER = 0x1000
-- IFF_NOTRAILERS = 0x20
-- IFF_NO_PI = 0x1000
-- IFF_ONE_QUEUE = 0x2000
-- IFF_PERSIST = 0x800
-- IFF_POINTOPOINT = 0x10
-- IFF_PORTSEL = 0x2000
-- IFF_PROMISC = 0x100
-- IFF_RUNNING = 0x40
-- IFF_SLAVE = 0x800
-- IFF_TAP = 0x2
-- IFF_TUN = 0x1
-- IFF_TUN_EXCL = 0x8000
-- IFF_UP = 0x1
-- IFF_VNET_HDR = 0x4000
-- IFF_VOLATILE = 0x70c5a
-- IFNAMSIZ = 0x10
-- IGNBRK = 0x1
-- IGNCR = 0x80
-- IGNPAR = 0x4
-- IMAXBEL = 0x2000
-- INLCR = 0x40
-- INPCK = 0x10
-- IN_ACCESS = 0x1
-- IN_ALL_EVENTS = 0xfff
-- IN_ATTRIB = 0x4
-- IN_CLASSA_HOST = 0xffffff
-- IN_CLASSA_MAX = 0x80
-- IN_CLASSA_NET = 0xff000000
-- IN_CLASSA_NSHIFT = 0x18
-- IN_CLASSB_HOST = 0xffff
-- IN_CLASSB_MAX = 0x10000
-- IN_CLASSB_NET = 0xffff0000
-- IN_CLASSB_NSHIFT = 0x10
-- IN_CLASSC_HOST = 0xff
-- IN_CLASSC_NET = 0xffffff00
-- IN_CLASSC_NSHIFT = 0x8
-- IN_CLOEXEC = 0x80000
-- IN_CLOSE = 0x18
-- IN_CLOSE_NOWRITE = 0x10
-- IN_CLOSE_WRITE = 0x8
-- IN_CREATE = 0x100
-- IN_DELETE = 0x200
-- IN_DELETE_SELF = 0x400
-- IN_DONT_FOLLOW = 0x2000000
-- IN_EXCL_UNLINK = 0x4000000
-- IN_IGNORED = 0x8000
-- IN_ISDIR = 0x40000000
-- IN_LOOPBACKNET = 0x7f
-- IN_MASK_ADD = 0x20000000
-- IN_MODIFY = 0x2
-- IN_MOVE = 0xc0
-- IN_MOVED_FROM = 0x40
-- IN_MOVED_TO = 0x80
-- IN_MOVE_SELF = 0x800
-- IN_NONBLOCK = 0x80
-- IN_ONESHOT = 0x80000000
-- IN_ONLYDIR = 0x1000000
-- IN_OPEN = 0x20
-- IN_Q_OVERFLOW = 0x4000
-- IN_UNMOUNT = 0x2000
-- IPPROTO_AH = 0x33
-- IPPROTO_BEETPH = 0x5e
-- IPPROTO_COMP = 0x6c
-- IPPROTO_DCCP = 0x21
-- IPPROTO_DSTOPTS = 0x3c
-- IPPROTO_EGP = 0x8
-- IPPROTO_ENCAP = 0x62
-- IPPROTO_ESP = 0x32
-- IPPROTO_FRAGMENT = 0x2c
-- IPPROTO_GRE = 0x2f
-- IPPROTO_HOPOPTS = 0x0
-- IPPROTO_ICMP = 0x1
-- IPPROTO_ICMPV6 = 0x3a
-- IPPROTO_IDP = 0x16
-- IPPROTO_IGMP = 0x2
-- IPPROTO_IP = 0x0
-- IPPROTO_IPIP = 0x4
-- IPPROTO_IPV6 = 0x29
-- IPPROTO_MH = 0x87
-- IPPROTO_MPLS = 0x89
-- IPPROTO_MTP = 0x5c
-- IPPROTO_NONE = 0x3b
-- IPPROTO_PIM = 0x67
-- IPPROTO_PUP = 0xc
-- IPPROTO_RAW = 0xff
-- IPPROTO_ROUTING = 0x2b
-- IPPROTO_RSVP = 0x2e
-- IPPROTO_SCTP = 0x84
-- IPPROTO_TCP = 0x6
-- IPPROTO_TP = 0x1d
-- IPPROTO_UDP = 0x11
-- IPPROTO_UDPLITE = 0x88
-- IPV6_2292DSTOPTS = 0x4
-- IPV6_2292HOPLIMIT = 0x8
-- IPV6_2292HOPOPTS = 0x3
-- IPV6_2292PKTINFO = 0x2
-- IPV6_2292PKTOPTIONS = 0x6
-- IPV6_2292RTHDR = 0x5
-- IPV6_ADDRFORM = 0x1
-- IPV6_ADD_MEMBERSHIP = 0x14
-- IPV6_AUTHHDR = 0xa
-- IPV6_CHECKSUM = 0x7
-- IPV6_DONTFRAG = 0x3e
-- IPV6_DROP_MEMBERSHIP = 0x15
-- IPV6_DSTOPTS = 0x3b
-- IPV6_HDRINCL = 0x24
-- IPV6_HOPLIMIT = 0x34
-- IPV6_HOPOPTS = 0x36
-- IPV6_IPSEC_POLICY = 0x22
-- IPV6_JOIN_ANYCAST = 0x1b
-- IPV6_JOIN_GROUP = 0x14
-- IPV6_LEAVE_ANYCAST = 0x1c
-- IPV6_LEAVE_GROUP = 0x15
-- IPV6_MTU = 0x18
-- IPV6_MTU_DISCOVER = 0x17
-- IPV6_MULTICAST_HOPS = 0x12
-- IPV6_MULTICAST_IF = 0x11
-- IPV6_MULTICAST_LOOP = 0x13
-- IPV6_NEXTHOP = 0x9
-- IPV6_PATHMTU = 0x3d
-- IPV6_PKTINFO = 0x32
-- IPV6_PMTUDISC_DO = 0x2
-- IPV6_PMTUDISC_DONT = 0x0
-- IPV6_PMTUDISC_INTERFACE = 0x4
-- IPV6_PMTUDISC_OMIT = 0x5
-- IPV6_PMTUDISC_PROBE = 0x3
-- IPV6_PMTUDISC_WANT = 0x1
-- IPV6_RECVDSTOPTS = 0x3a
-- IPV6_RECVERR = 0x19
-- IPV6_RECVHOPLIMIT = 0x33
-- IPV6_RECVHOPOPTS = 0x35
-- IPV6_RECVPATHMTU = 0x3c
-- IPV6_RECVPKTINFO = 0x31
-- IPV6_RECVRTHDR = 0x38
-- IPV6_RECVTCLASS = 0x42
-- IPV6_ROUTER_ALERT = 0x16
-- IPV6_RTHDR = 0x39
-- IPV6_RTHDRDSTOPTS = 0x37
-- IPV6_RTHDR_LOOSE = 0x0
-- IPV6_RTHDR_STRICT = 0x1
-- IPV6_RTHDR_TYPE_0 = 0x0
-- IPV6_RXDSTOPTS = 0x3b
-- IPV6_RXHOPOPTS = 0x36
-- IPV6_TCLASS = 0x43
-- IPV6_UNICAST_HOPS = 0x10
-- IPV6_V6ONLY = 0x1a
-- IPV6_XFRM_POLICY = 0x23
-- IP_ADD_MEMBERSHIP = 0x23
-- IP_ADD_SOURCE_MEMBERSHIP = 0x27
-- IP_BIND_ADDRESS_NO_PORT = 0x18
-- IP_BLOCK_SOURCE = 0x26
-- IP_CHECKSUM = 0x17
-- IP_DEFAULT_MULTICAST_LOOP = 0x1
-- IP_DEFAULT_MULTICAST_TTL = 0x1
-- IP_DF = 0x4000
-- IP_DROP_MEMBERSHIP = 0x24
-- IP_DROP_SOURCE_MEMBERSHIP = 0x28
-- IP_FREEBIND = 0xf
-- IP_HDRINCL = 0x3
-- IP_IPSEC_POLICY = 0x10
-- IP_MAXPACKET = 0xffff
-- IP_MAX_MEMBERSHIPS = 0x14
-- IP_MF = 0x2000
-- IP_MINTTL = 0x15
-- IP_MSFILTER = 0x29
-- IP_MSS = 0x240
-- IP_MTU = 0xe
-- IP_MTU_DISCOVER = 0xa
-- IP_MULTICAST_ALL = 0x31
-- IP_MULTICAST_IF = 0x20
-- IP_MULTICAST_LOOP = 0x22
-- IP_MULTICAST_TTL = 0x21
-- IP_NODEFRAG = 0x16
-- IP_OFFMASK = 0x1fff
-- IP_OPTIONS = 0x4
-- IP_ORIGDSTADDR = 0x14
-- IP_PASSSEC = 0x12
-- IP_PKTINFO = 0x8
-- IP_PKTOPTIONS = 0x9
-- IP_PMTUDISC = 0xa
-- IP_PMTUDISC_DO = 0x2
-- IP_PMTUDISC_DONT = 0x0
-- IP_PMTUDISC_INTERFACE = 0x4
-- IP_PMTUDISC_OMIT = 0x5
-- IP_PMTUDISC_PROBE = 0x3
-- IP_PMTUDISC_WANT = 0x1
-- IP_RECVERR = 0xb
-- IP_RECVOPTS = 0x6
-- IP_RECVORIGDSTADDR = 0x14
-- IP_RECVRETOPTS = 0x7
-- IP_RECVTOS = 0xd
-- IP_RECVTTL = 0xc
-- IP_RETOPTS = 0x7
-- IP_RF = 0x8000
-- IP_ROUTER_ALERT = 0x5
-- IP_TOS = 0x1
-- IP_TRANSPARENT = 0x13
-- IP_TTL = 0x2
-- IP_UNBLOCK_SOURCE = 0x25
-- IP_UNICAST_IF = 0x32
-- IP_XFRM_POLICY = 0x11
-- ISIG = 0x1
-- ISTRIP = 0x20
-- IUCLC = 0x200
-- IUTF8 = 0x4000
-- IXANY = 0x800
-- IXOFF = 0x1000
-- IXON = 0x400
-- KEYCTL_ASSUME_AUTHORITY = 0x10
-- KEYCTL_CHOWN = 0x4
-- KEYCTL_CLEAR = 0x7
-- KEYCTL_DESCRIBE = 0x6
-- KEYCTL_DH_COMPUTE = 0x17
-- KEYCTL_GET_KEYRING_ID = 0x0
-- KEYCTL_GET_PERSISTENT = 0x16
-- KEYCTL_GET_SECURITY = 0x11
-- KEYCTL_INSTANTIATE = 0xc
-- KEYCTL_INSTANTIATE_IOV = 0x14
-- KEYCTL_INVALIDATE = 0x15
-- KEYCTL_JOIN_SESSION_KEYRING = 0x1
-- KEYCTL_LINK = 0x8
-- KEYCTL_NEGATE = 0xd
-- KEYCTL_READ = 0xb
-- KEYCTL_REJECT = 0x13
-- KEYCTL_REVOKE = 0x3
-- KEYCTL_SEARCH = 0xa
-- KEYCTL_SESSION_TO_PARENT = 0x12
-- KEYCTL_SETPERM = 0x5
-- KEYCTL_SET_REQKEY_KEYRING = 0xe
-- KEYCTL_SET_TIMEOUT = 0xf
-- KEYCTL_UNLINK = 0x9
-- KEYCTL_UPDATE = 0x2
-- KEY_REQKEY_DEFL_DEFAULT = 0x0
-- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
-- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
-- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
-- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
-- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
-- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
-- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
-- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
-- KEY_SPEC_GROUP_KEYRING = -0x6
-- KEY_SPEC_PROCESS_KEYRING = -0x2
-- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
-- KEY_SPEC_REQUESTOR_KEYRING = -0x8
-- KEY_SPEC_SESSION_KEYRING = -0x3
-- KEY_SPEC_THREAD_KEYRING = -0x1
-- KEY_SPEC_USER_KEYRING = -0x4
-- KEY_SPEC_USER_SESSION_KEYRING = -0x5
-- LINUX_REBOOT_CMD_CAD_OFF = 0x0
-- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
-- LINUX_REBOOT_CMD_HALT = 0xcdef0123
-- LINUX_REBOOT_CMD_KEXEC = 0x45584543
-- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
-- LINUX_REBOOT_CMD_RESTART = 0x1234567
-- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
-- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
-- LINUX_REBOOT_MAGIC1 = 0xfee1dead
-- LINUX_REBOOT_MAGIC2 = 0x28121969
-- LOCK_EX = 0x2
-- LOCK_NB = 0x4
-- LOCK_SH = 0x1
-- LOCK_UN = 0x8
-- MADV_DODUMP = 0x11
-- MADV_DOFORK = 0xb
-- MADV_DONTDUMP = 0x10
-- MADV_DONTFORK = 0xa
-- MADV_DONTNEED = 0x4
-- MADV_FREE = 0x8
-- MADV_HUGEPAGE = 0xe
-- MADV_HWPOISON = 0x64
-- MADV_MERGEABLE = 0xc
-- MADV_NOHUGEPAGE = 0xf
-- MADV_NORMAL = 0x0
-- MADV_RANDOM = 0x1
-- MADV_REMOVE = 0x9
-- MADV_SEQUENTIAL = 0x2
-- MADV_UNMERGEABLE = 0xd
-- MADV_WILLNEED = 0x3
-- MAP_ANON = 0x800
-- MAP_ANONYMOUS = 0x800
-- MAP_DENYWRITE = 0x2000
-- MAP_EXECUTABLE = 0x4000
-- MAP_FILE = 0x0
-- MAP_FIXED = 0x10
-- MAP_GROWSDOWN = 0x1000
-- MAP_HUGETLB = 0x80000
-- MAP_HUGE_MASK = 0x3f
-- MAP_HUGE_SHIFT = 0x1a
-- MAP_LOCKED = 0x8000
-- MAP_NONBLOCK = 0x20000
-- MAP_NORESERVE = 0x400
-- MAP_POPULATE = 0x10000
-- MAP_PRIVATE = 0x2
-- MAP_RENAME = 0x800
-- MAP_SHARED = 0x1
-- MAP_STACK = 0x40000
-- MAP_TYPE = 0xf
-- MCL_CURRENT = 0x1
-- MCL_FUTURE = 0x2
-- MCL_ONFAULT = 0x4
-- MNT_DETACH = 0x2
-- MNT_EXPIRE = 0x4
-- MNT_FORCE = 0x1
-- MSG_BATCH = 0x40000
-- MSG_CMSG_CLOEXEC = 0x40000000
-- MSG_CONFIRM = 0x800
-- MSG_CTRUNC = 0x8
-- MSG_DONTROUTE = 0x4
-- MSG_DONTWAIT = 0x40
-- MSG_EOR = 0x80
-- MSG_ERRQUEUE = 0x2000
-- MSG_FASTOPEN = 0x20000000
-- MSG_FIN = 0x200
-- MSG_MORE = 0x8000
-- MSG_NOSIGNAL = 0x4000
-- MSG_OOB = 0x1
-- MSG_PEEK = 0x2
-- MSG_PROXY = 0x10
-- MSG_RST = 0x1000
-- MSG_SYN = 0x400
-- MSG_TRUNC = 0x20
-- MSG_TRYHARD = 0x4
-- MSG_WAITALL = 0x100
-- MSG_WAITFORONE = 0x10000
-- MS_ACTIVE = 0x40000000
-- MS_ASYNC = 0x1
-- MS_BIND = 0x1000
-- MS_BORN = 0x20000000
-- MS_DIRSYNC = 0x80
-- MS_INVALIDATE = 0x2
-- MS_I_VERSION = 0x800000
-- MS_KERNMOUNT = 0x400000
-- MS_LAZYTIME = 0x2000000
-- MS_MANDLOCK = 0x40
-- MS_MGC_MSK = 0xffff0000
-- MS_MGC_VAL = 0xc0ed0000
-- MS_MOVE = 0x2000
-- MS_NOATIME = 0x400
-- MS_NODEV = 0x4
-- MS_NODIRATIME = 0x800
-- MS_NOEXEC = 0x8
-- MS_NOREMOTELOCK = 0x8000000
-- MS_NOSEC = 0x10000000
-- MS_NOSUID = 0x2
-- MS_NOUSER = -0x80000000
-- MS_POSIXACL = 0x10000
-- MS_PRIVATE = 0x40000
-- MS_RDONLY = 0x1
-- MS_REC = 0x4000
-- MS_RELATIME = 0x200000
-- MS_REMOUNT = 0x20
-- MS_RMT_MASK = 0x2800051
-- MS_SHARED = 0x100000
-- MS_SILENT = 0x8000
-- MS_SLAVE = 0x80000
-- MS_STRICTATIME = 0x1000000
-- MS_SYNC = 0x4
-- MS_SYNCHRONOUS = 0x10
-- MS_UNBINDABLE = 0x20000
-- MS_VERBOSE = 0x8000
-- NAME_MAX = 0xff
-- NETLINK_ADD_MEMBERSHIP = 0x1
-- NETLINK_AUDIT = 0x9
-- NETLINK_BROADCAST_ERROR = 0x4
-- NETLINK_CAP_ACK = 0xa
-- NETLINK_CONNECTOR = 0xb
-- NETLINK_CRYPTO = 0x15
-- NETLINK_DNRTMSG = 0xe
-- NETLINK_DROP_MEMBERSHIP = 0x2
-- NETLINK_ECRYPTFS = 0x13
-- NETLINK_FIB_LOOKUP = 0xa
-- NETLINK_FIREWALL = 0x3
-- NETLINK_GENERIC = 0x10
-- NETLINK_INET_DIAG = 0x4
-- NETLINK_IP6_FW = 0xd
-- NETLINK_ISCSI = 0x8
-- NETLINK_KOBJECT_UEVENT = 0xf
-- NETLINK_LISTEN_ALL_NSID = 0x8
-- NETLINK_LIST_MEMBERSHIPS = 0x9
-- NETLINK_NETFILTER = 0xc
-- NETLINK_NFLOG = 0x5
-- NETLINK_NO_ENOBUFS = 0x5
-- NETLINK_PKTINFO = 0x3
-- NETLINK_RDMA = 0x14
-- NETLINK_ROUTE = 0x0
-- NETLINK_RX_RING = 0x6
-- NETLINK_SCSITRANSPORT = 0x12
-- NETLINK_SELINUX = 0x7
-- NETLINK_SOCK_DIAG = 0x4
-- NETLINK_TX_RING = 0x7
-- NETLINK_UNUSED = 0x1
-- NETLINK_USERSOCK = 0x2
-- NETLINK_XFRM = 0x6
-- NL0 = 0x0
-- NL1 = 0x100
-- NLA_ALIGNTO = 0x4
-- NLA_F_NESTED = 0x8000
-- NLA_F_NET_BYTEORDER = 0x4000
-- NLA_HDRLEN = 0x4
-- NLDLY = 0x100
-- NLMSG_ALIGNTO = 0x4
-- NLMSG_DONE = 0x3
-- NLMSG_ERROR = 0x2
-- NLMSG_HDRLEN = 0x10
-- NLMSG_MIN_TYPE = 0x10
-- NLMSG_NOOP = 0x1
-- NLMSG_OVERRUN = 0x4
-- NLM_F_ACK = 0x4
-- NLM_F_APPEND = 0x800
-- NLM_F_ATOMIC = 0x400
-- NLM_F_CREATE = 0x400
-- NLM_F_DUMP = 0x300
-- NLM_F_DUMP_FILTERED = 0x20
-- NLM_F_DUMP_INTR = 0x10
-- NLM_F_ECHO = 0x8
-- NLM_F_EXCL = 0x200
-- NLM_F_MATCH = 0x200
-- NLM_F_MULTI = 0x2
-- NLM_F_REPLACE = 0x100
-- NLM_F_REQUEST = 0x1
-- NLM_F_ROOT = 0x100
-- NOFLSH = 0x80
-- OCRNL = 0x8
-- OFDEL = 0x80
-- OFILL = 0x40
-- OLCUC = 0x2
-- ONLCR = 0x4
-- ONLRET = 0x20
-- ONOCR = 0x10
-- OPOST = 0x1
-- O_ACCMODE = 0x3
-- O_APPEND = 0x8
-- O_ASYNC = 0x1000
-- O_CLOEXEC = 0x80000
-- O_CREAT = 0x100
-- O_DIRECT = 0x8000
-- O_DIRECTORY = 0x10000
-- O_DSYNC = 0x10
-- O_EXCL = 0x400
-- O_FSYNC = 0x4010
-- O_LARGEFILE = 0x2000
-- O_NDELAY = 0x80
-- O_NOATIME = 0x40000
-- O_NOCTTY = 0x800
-- O_NOFOLLOW = 0x20000
-- O_NONBLOCK = 0x80
-- O_PATH = 0x200000
-- O_RDONLY = 0x0
-- O_RDWR = 0x2
-- O_RSYNC = 0x4010
-- O_SYNC = 0x4010
-- O_TMPFILE = 0x410000
-- O_TRUNC = 0x200
-- O_WRONLY = 0x1
-- PACKET_ADD_MEMBERSHIP = 0x1
-- PACKET_AUXDATA = 0x8
-- PACKET_BROADCAST = 0x1
-- PACKET_COPY_THRESH = 0x7
-- PACKET_DROP_MEMBERSHIP = 0x2
-- PACKET_FANOUT = 0x12
-- PACKET_FANOUT_CBPF = 0x6
-- PACKET_FANOUT_CPU = 0x2
-- PACKET_FANOUT_DATA = 0x16
-- PACKET_FANOUT_EBPF = 0x7
-- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
-- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
-- PACKET_FANOUT_HASH = 0x0
-- PACKET_FANOUT_LB = 0x1
-- PACKET_FANOUT_QM = 0x5
-- PACKET_FANOUT_RND = 0x4
-- PACKET_FANOUT_ROLLOVER = 0x3
-- PACKET_FASTROUTE = 0x6
-- PACKET_HDRLEN = 0xb
-- PACKET_HOST = 0x0
-- PACKET_KERNEL = 0x7
-- PACKET_LOOPBACK = 0x5
-- PACKET_LOSS = 0xe
-- PACKET_MR_ALLMULTI = 0x2
-- PACKET_MR_MULTICAST = 0x0
-- PACKET_MR_PROMISC = 0x1
-- PACKET_MR_UNICAST = 0x3
-- PACKET_MULTICAST = 0x2
-- PACKET_ORIGDEV = 0x9
-- PACKET_OTHERHOST = 0x3
-- PACKET_OUTGOING = 0x4
-- PACKET_QDISC_BYPASS = 0x14
-- PACKET_RECV_OUTPUT = 0x3
-- PACKET_RESERVE = 0xc
-- PACKET_ROLLOVER_STATS = 0x15
-- PACKET_RX_RING = 0x5
-- PACKET_STATISTICS = 0x6
-- PACKET_TIMESTAMP = 0x11
-- PACKET_TX_HAS_OFF = 0x13
-- PACKET_TX_RING = 0xd
-- PACKET_TX_TIMESTAMP = 0x10
-- PACKET_USER = 0x6
-- PACKET_VERSION = 0xa
-- PACKET_VNET_HDR = 0xf
-- PARENB = 0x100
-- PARITY_CRC16_PR0 = 0x2
-- PARITY_CRC16_PR0_CCITT = 0x4
-- PARITY_CRC16_PR1 = 0x3
-- PARITY_CRC16_PR1_CCITT = 0x5
-- PARITY_CRC32_PR0_CCITT = 0x6
-- PARITY_CRC32_PR1_CCITT = 0x7
-- PARITY_DEFAULT = 0x0
-- PARITY_NONE = 0x1
-- PARMRK = 0x8
-- PARODD = 0x200
-- PENDIN = 0x4000
-- PERF_EVENT_IOC_DISABLE = 0x20002401
-- PERF_EVENT_IOC_ENABLE = 0x20002400
-- PERF_EVENT_IOC_ID = 0x40042407
-- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
-- PERF_EVENT_IOC_PERIOD = 0x80082404
-- PERF_EVENT_IOC_REFRESH = 0x20002402
-- PERF_EVENT_IOC_RESET = 0x20002403
-- PERF_EVENT_IOC_SET_BPF = 0x80042408
-- PERF_EVENT_IOC_SET_FILTER = 0x80042406
-- PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
-- PRIO_PGRP = 0x1
-- PRIO_PROCESS = 0x0
-- PRIO_USER = 0x2
-- PROT_EXEC = 0x4
-- PROT_GROWSDOWN = 0x1000000
-- PROT_GROWSUP = 0x2000000
-- PROT_NONE = 0x0
-- PROT_READ = 0x1
-- PROT_WRITE = 0x2
-- PR_CAPBSET_DROP = 0x18
-- PR_CAPBSET_READ = 0x17
-- PR_CAP_AMBIENT = 0x2f
-- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
-- PR_CAP_AMBIENT_IS_SET = 0x1
-- PR_CAP_AMBIENT_LOWER = 0x3
-- PR_CAP_AMBIENT_RAISE = 0x2
-- PR_ENDIAN_BIG = 0x0
-- PR_ENDIAN_LITTLE = 0x1
-- PR_ENDIAN_PPC_LITTLE = 0x2
-- PR_FPEMU_NOPRINT = 0x1
-- PR_FPEMU_SIGFPE = 0x2
-- PR_FP_EXC_ASYNC = 0x2
-- PR_FP_EXC_DISABLED = 0x0
-- PR_FP_EXC_DIV = 0x10000
-- PR_FP_EXC_INV = 0x100000
-- PR_FP_EXC_NONRECOV = 0x1
-- PR_FP_EXC_OVF = 0x20000
-- PR_FP_EXC_PRECISE = 0x3
-- PR_FP_EXC_RES = 0x80000
-- PR_FP_EXC_SW_ENABLE = 0x80
-- PR_FP_EXC_UND = 0x40000
-- PR_FP_MODE_FR = 0x1
-- PR_FP_MODE_FRE = 0x2
-- PR_GET_CHILD_SUBREAPER = 0x25
-- PR_GET_DUMPABLE = 0x3
-- PR_GET_ENDIAN = 0x13
-- PR_GET_FPEMU = 0x9
-- PR_GET_FPEXC = 0xb
-- PR_GET_FP_MODE = 0x2e
-- PR_GET_KEEPCAPS = 0x7
-- PR_GET_NAME = 0x10
-- PR_GET_NO_NEW_PRIVS = 0x27
-- PR_GET_PDEATHSIG = 0x2
-- PR_GET_SECCOMP = 0x15
-- PR_GET_SECUREBITS = 0x1b
-- PR_GET_THP_DISABLE = 0x2a
-- PR_GET_TID_ADDRESS = 0x28
-- PR_GET_TIMERSLACK = 0x1e
-- PR_GET_TIMING = 0xd
-- PR_GET_TSC = 0x19
-- PR_GET_UNALIGN = 0x5
-- PR_MCE_KILL = 0x21
-- PR_MCE_KILL_CLEAR = 0x0
-- PR_MCE_KILL_DEFAULT = 0x2
-- PR_MCE_KILL_EARLY = 0x1
-- PR_MCE_KILL_GET = 0x22
-- PR_MCE_KILL_LATE = 0x0
-- PR_MCE_KILL_SET = 0x1
-- PR_MPX_DISABLE_MANAGEMENT = 0x2c
-- PR_MPX_ENABLE_MANAGEMENT = 0x2b
-- PR_SET_CHILD_SUBREAPER = 0x24
-- PR_SET_DUMPABLE = 0x4
-- PR_SET_ENDIAN = 0x14
-- PR_SET_FPEMU = 0xa
-- PR_SET_FPEXC = 0xc
-- PR_SET_FP_MODE = 0x2d
-- PR_SET_KEEPCAPS = 0x8
-- PR_SET_MM = 0x23
-- PR_SET_MM_ARG_END = 0x9
-- PR_SET_MM_ARG_START = 0x8
-- PR_SET_MM_AUXV = 0xc
-- PR_SET_MM_BRK = 0x7
-- PR_SET_MM_END_CODE = 0x2
-- PR_SET_MM_END_DATA = 0x4
-- PR_SET_MM_ENV_END = 0xb
-- PR_SET_MM_ENV_START = 0xa
-- PR_SET_MM_EXE_FILE = 0xd
-- PR_SET_MM_MAP = 0xe
-- PR_SET_MM_MAP_SIZE = 0xf
-- PR_SET_MM_START_BRK = 0x6
-- PR_SET_MM_START_CODE = 0x1
-- PR_SET_MM_START_DATA = 0x3
-- PR_SET_MM_START_STACK = 0x5
-- PR_SET_NAME = 0xf
-- PR_SET_NO_NEW_PRIVS = 0x26
-- PR_SET_PDEATHSIG = 0x1
-- PR_SET_PTRACER = 0x59616d61
-- PR_SET_PTRACER_ANY = 0xffffffff
-- PR_SET_SECCOMP = 0x16
-- PR_SET_SECUREBITS = 0x1c
-- PR_SET_THP_DISABLE = 0x29
-- PR_SET_TIMERSLACK = 0x1d
-- PR_SET_TIMING = 0xe
-- PR_SET_TSC = 0x1a
-- PR_SET_UNALIGN = 0x6
-- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
-- PR_TASK_PERF_EVENTS_ENABLE = 0x20
-- PR_TIMING_STATISTICAL = 0x0
-- PR_TIMING_TIMESTAMP = 0x1
-- PR_TSC_ENABLE = 0x1
-- PR_TSC_SIGSEGV = 0x2
-- PR_UNALIGN_NOPRINT = 0x1
-- PR_UNALIGN_SIGBUS = 0x2
-- PTRACE_ATTACH = 0x10
-- PTRACE_CONT = 0x7
-- PTRACE_DETACH = 0x11
-- PTRACE_EVENT_CLONE = 0x3
-- PTRACE_EVENT_EXEC = 0x4
-- PTRACE_EVENT_EXIT = 0x6
-- PTRACE_EVENT_FORK = 0x1
-- PTRACE_EVENT_SECCOMP = 0x7
-- PTRACE_EVENT_STOP = 0x80
-- PTRACE_EVENT_VFORK = 0x2
-- PTRACE_EVENT_VFORK_DONE = 0x5
-- PTRACE_GETEVENTMSG = 0x4201
-- PTRACE_GETFPREGS = 0xe
-- PTRACE_GETREGS = 0xc
-- PTRACE_GETREGSET = 0x4204
-- PTRACE_GETSIGINFO = 0x4202
-- PTRACE_GETSIGMASK = 0x420a
-- PTRACE_GET_THREAD_AREA = 0x19
-- PTRACE_GET_THREAD_AREA_3264 = 0xc4
-- PTRACE_GET_WATCH_REGS = 0xd0
-- PTRACE_INTERRUPT = 0x4207
-- PTRACE_KILL = 0x8
-- PTRACE_LISTEN = 0x4208
-- PTRACE_OLDSETOPTIONS = 0x15
-- PTRACE_O_EXITKILL = 0x100000
-- PTRACE_O_MASK = 0x3000ff
-- PTRACE_O_SUSPEND_SECCOMP = 0x200000
-- PTRACE_O_TRACECLONE = 0x8
-- PTRACE_O_TRACEEXEC = 0x10
-- PTRACE_O_TRACEEXIT = 0x40
-- PTRACE_O_TRACEFORK = 0x2
-- PTRACE_O_TRACESECCOMP = 0x80
-- PTRACE_O_TRACESYSGOOD = 0x1
-- PTRACE_O_TRACEVFORK = 0x4
-- PTRACE_O_TRACEVFORKDONE = 0x20
-- PTRACE_PEEKDATA = 0x2
-- PTRACE_PEEKDATA_3264 = 0xc1
-- PTRACE_PEEKSIGINFO = 0x4209
-- PTRACE_PEEKSIGINFO_SHARED = 0x1
-- PTRACE_PEEKTEXT = 0x1
-- PTRACE_PEEKTEXT_3264 = 0xc0
-- PTRACE_PEEKUSR = 0x3
-- PTRACE_POKEDATA = 0x5
-- PTRACE_POKEDATA_3264 = 0xc3
-- PTRACE_POKETEXT = 0x4
-- PTRACE_POKETEXT_3264 = 0xc2
-- PTRACE_POKEUSR = 0x6
-- PTRACE_SECCOMP_GET_FILTER = 0x420c
-- PTRACE_SEIZE = 0x4206
-- PTRACE_SETFPREGS = 0xf
-- PTRACE_SETOPTIONS = 0x4200
-- PTRACE_SETREGS = 0xd
-- PTRACE_SETREGSET = 0x4205
-- PTRACE_SETSIGINFO = 0x4203
-- PTRACE_SETSIGMASK = 0x420b
-- PTRACE_SET_THREAD_AREA = 0x1a
-- PTRACE_SET_WATCH_REGS = 0xd1
-- PTRACE_SINGLESTEP = 0x9
-- PTRACE_SYSCALL = 0x18
-- PTRACE_TRACEME = 0x0
-- RLIMIT_AS = 0x6
-- RLIMIT_CORE = 0x4
-- RLIMIT_CPU = 0x0
-- RLIMIT_DATA = 0x2
-- RLIMIT_FSIZE = 0x1
-- RLIMIT_LOCKS = 0xa
-- RLIMIT_MEMLOCK = 0x9
-- RLIMIT_MSGQUEUE = 0xc
-- RLIMIT_NICE = 0xd
-- RLIMIT_NOFILE = 0x5
-- RLIMIT_NPROC = 0x8
-- RLIMIT_RSS = 0x7
-- RLIMIT_RTPRIO = 0xe
-- RLIMIT_RTTIME = 0xf
-- RLIMIT_SIGPENDING = 0xb
-- RLIMIT_STACK = 0x3
-- RLIM_INFINITY = -0x1
-- RTAX_ADVMSS = 0x8
-- RTAX_CC_ALGO = 0x10
-- RTAX_CWND = 0x7
-- RTAX_FEATURES = 0xc
-- RTAX_FEATURE_ALLFRAG = 0x8
-- RTAX_FEATURE_ECN = 0x1
-- RTAX_FEATURE_MASK = 0xf
-- RTAX_FEATURE_SACK = 0x2
-- RTAX_FEATURE_TIMESTAMP = 0x4
-- RTAX_HOPLIMIT = 0xa
-- RTAX_INITCWND = 0xb
-- RTAX_INITRWND = 0xe
-- RTAX_LOCK = 0x1
-- RTAX_MAX = 0x10
-- RTAX_MTU = 0x2
-- RTAX_QUICKACK = 0xf
-- RTAX_REORDERING = 0x9
-- RTAX_RTO_MIN = 0xd
-- RTAX_RTT = 0x4
-- RTAX_RTTVAR = 0x5
-- RTAX_SSTHRESH = 0x6
-- RTAX_UNSPEC = 0x0
-- RTAX_WINDOW = 0x3
-- RTA_ALIGNTO = 0x4
-- RTA_MAX = 0x19
-- RTCF_DIRECTSRC = 0x4000000
-- RTCF_DOREDIRECT = 0x1000000
-- RTCF_LOG = 0x2000000
-- RTCF_MASQ = 0x400000
-- RTCF_NAT = 0x800000
-- RTCF_VALVE = 0x200000
-- RTF_ADDRCLASSMASK = 0xf8000000
-- RTF_ADDRCONF = 0x40000
-- RTF_ALLONLINK = 0x20000
-- RTF_BROADCAST = 0x10000000
-- RTF_CACHE = 0x1000000
-- RTF_DEFAULT = 0x10000
-- RTF_DYNAMIC = 0x10
-- RTF_FLOW = 0x2000000
-- RTF_GATEWAY = 0x2
-- RTF_HOST = 0x4
-- RTF_INTERFACE = 0x40000000
-- RTF_IRTT = 0x100
-- RTF_LINKRT = 0x100000
-- RTF_LOCAL = 0x80000000
-- RTF_MODIFIED = 0x20
-- RTF_MSS = 0x40
-- RTF_MTU = 0x40
-- RTF_MULTICAST = 0x20000000
-- RTF_NAT = 0x8000000
-- RTF_NOFORWARD = 0x1000
-- RTF_NONEXTHOP = 0x200000
-- RTF_NOPMTUDISC = 0x4000
-- RTF_POLICY = 0x4000000
-- RTF_REINSTATE = 0x8
-- RTF_REJECT = 0x200
-- RTF_STATIC = 0x400
-- RTF_THROW = 0x2000
-- RTF_UP = 0x1
-- RTF_WINDOW = 0x80
-- RTF_XRESOLVE = 0x800
-- RTM_BASE = 0x10
-- RTM_DELACTION = 0x31
-- RTM_DELADDR = 0x15
-- RTM_DELADDRLABEL = 0x49
-- RTM_DELLINK = 0x11
-- RTM_DELMDB = 0x55
-- RTM_DELNEIGH = 0x1d
-- RTM_DELNSID = 0x59
-- RTM_DELQDISC = 0x25
-- RTM_DELROUTE = 0x19
-- RTM_DELRULE = 0x21
-- RTM_DELTCLASS = 0x29
-- RTM_DELTFILTER = 0x2d
-- RTM_F_CLONED = 0x200
-- RTM_F_EQUALIZE = 0x400
-- RTM_F_LOOKUP_TABLE = 0x1000
-- RTM_F_NOTIFY = 0x100
-- RTM_F_PREFIX = 0x800
-- RTM_GETACTION = 0x32
-- RTM_GETADDR = 0x16
-- RTM_GETADDRLABEL = 0x4a
-- RTM_GETANYCAST = 0x3e
-- RTM_GETDCB = 0x4e
-- RTM_GETLINK = 0x12
-- RTM_GETMDB = 0x56
-- RTM_GETMULTICAST = 0x3a
-- RTM_GETNEIGH = 0x1e
-- RTM_GETNEIGHTBL = 0x42
-- RTM_GETNETCONF = 0x52
-- RTM_GETNSID = 0x5a
-- RTM_GETQDISC = 0x26
-- RTM_GETROUTE = 0x1a
-- RTM_GETRULE = 0x22
-- RTM_GETSTATS = 0x5e
-- RTM_GETTCLASS = 0x2a
-- RTM_GETTFILTER = 0x2e
-- RTM_MAX = 0x5f
-- RTM_NEWACTION = 0x30
-- RTM_NEWADDR = 0x14
-- RTM_NEWADDRLABEL = 0x48
-- RTM_NEWLINK = 0x10
-- RTM_NEWMDB = 0x54
-- RTM_NEWNDUSEROPT = 0x44
-- RTM_NEWNEIGH = 0x1c
-- RTM_NEWNEIGHTBL = 0x40
-- RTM_NEWNETCONF = 0x50
-- RTM_NEWNSID = 0x58
-- RTM_NEWPREFIX = 0x34
-- RTM_NEWQDISC = 0x24
-- RTM_NEWROUTE = 0x18
-- RTM_NEWRULE = 0x20
-- RTM_NEWSTATS = 0x5c
-- RTM_NEWTCLASS = 0x28
-- RTM_NEWTFILTER = 0x2c
-- RTM_NR_FAMILIES = 0x14
-- RTM_NR_MSGTYPES = 0x50
-- RTM_SETDCB = 0x4f
-- RTM_SETLINK = 0x13
-- RTM_SETNEIGHTBL = 0x43
-- RTNH_ALIGNTO = 0x4
-- RTNH_COMPARE_MASK = 0x19
-- RTNH_F_DEAD = 0x1
-- RTNH_F_LINKDOWN = 0x10
-- RTNH_F_OFFLOAD = 0x8
-- RTNH_F_ONLINK = 0x4
-- RTNH_F_PERVASIVE = 0x2
-- RTN_MAX = 0xb
-- RTPROT_BABEL = 0x2a
-- RTPROT_BIRD = 0xc
-- RTPROT_BOOT = 0x3
-- RTPROT_DHCP = 0x10
-- RTPROT_DNROUTED = 0xd
-- RTPROT_GATED = 0x8
-- RTPROT_KERNEL = 0x2
-- RTPROT_MROUTED = 0x11
-- RTPROT_MRT = 0xa
-- RTPROT_NTK = 0xf
-- RTPROT_RA = 0x9
-- RTPROT_REDIRECT = 0x1
-- RTPROT_STATIC = 0x4
-- RTPROT_UNSPEC = 0x0
-- RTPROT_XORP = 0xe
-- RTPROT_ZEBRA = 0xb
-- RT_CLASS_DEFAULT = 0xfd
-- RT_CLASS_LOCAL = 0xff
-- RT_CLASS_MAIN = 0xfe
-- RT_CLASS_MAX = 0xff
-- RT_CLASS_UNSPEC = 0x0
-- RUSAGE_CHILDREN = -0x1
-- RUSAGE_SELF = 0x0
-- RUSAGE_THREAD = 0x1
-- SCM_CREDENTIALS = 0x2
-- SCM_RIGHTS = 0x1
-- SCM_TIMESTAMP = 0x1d
-- SCM_TIMESTAMPING = 0x25
-- SCM_TIMESTAMPING_OPT_STATS = 0x36
-- SCM_TIMESTAMPNS = 0x23
-- SCM_WIFI_STATUS = 0x29
-- SECCOMP_MODE_DISABLED = 0x0
-- SECCOMP_MODE_FILTER = 0x2
-- SECCOMP_MODE_STRICT = 0x1
-- SHUT_RD = 0x0
-- SHUT_RDWR = 0x2
-- SHUT_WR = 0x1
-- SIOCADDDLCI = 0x8980
-- SIOCADDMULTI = 0x8931
-- SIOCADDRT = 0x890b
-- SIOCATMARK = 0x40047307
-- SIOCBONDCHANGEACTIVE = 0x8995
-- SIOCBONDENSLAVE = 0x8990
-- SIOCBONDINFOQUERY = 0x8994
-- SIOCBONDRELEASE = 0x8991
-- SIOCBONDSETHWADDR = 0x8992
-- SIOCBONDSLAVEINFOQUERY = 0x8993
-- SIOCBRADDBR = 0x89a0
-- SIOCBRADDIF = 0x89a2
-- SIOCBRDELBR = 0x89a1
-- SIOCBRDELIF = 0x89a3
-- SIOCDARP = 0x8953
-- SIOCDELDLCI = 0x8981
-- SIOCDELMULTI = 0x8932
-- SIOCDELRT = 0x890c
-- SIOCDEVPRIVATE = 0x89f0
-- SIOCDIFADDR = 0x8936
-- SIOCDRARP = 0x8960
-- SIOCETHTOOL = 0x8946
-- SIOCGARP = 0x8954
-- SIOCGHWTSTAMP = 0x89b1
-- SIOCGIFADDR = 0x8915
-- SIOCGIFBR = 0x8940
-- SIOCGIFBRDADDR = 0x8919
-- SIOCGIFCONF = 0x8912
-- SIOCGIFCOUNT = 0x8938
-- SIOCGIFDSTADDR = 0x8917
-- SIOCGIFENCAP = 0x8925
-- SIOCGIFFLAGS = 0x8913
-- SIOCGIFHWADDR = 0x8927
-- SIOCGIFINDEX = 0x8933
-- SIOCGIFMAP = 0x8970
-- SIOCGIFMEM = 0x891f
-- SIOCGIFMETRIC = 0x891d
-- SIOCGIFMTU = 0x8921
-- SIOCGIFNAME = 0x8910
-- SIOCGIFNETMASK = 0x891b
-- SIOCGIFPFLAGS = 0x8935
-- SIOCGIFSLAVE = 0x8929
-- SIOCGIFTXQLEN = 0x8942
-- SIOCGIFVLAN = 0x8982
-- SIOCGMIIPHY = 0x8947
-- SIOCGMIIREG = 0x8948
-- SIOCGPGRP = 0x40047309
-- SIOCGRARP = 0x8961
-- SIOCGSKNS = 0x894c
-- SIOCGSTAMP = 0x8906
-- SIOCGSTAMPNS = 0x8907
-- SIOCINQ = 0x467f
-- SIOCOUTQ = 0x7472
-- SIOCOUTQNSD = 0x894b
-- SIOCPROTOPRIVATE = 0x89e0
-- SIOCRTMSG = 0x890d
-- SIOCSARP = 0x8955
-- SIOCSHWTSTAMP = 0x89b0
-- SIOCSIFADDR = 0x8916
-- SIOCSIFBR = 0x8941
-- SIOCSIFBRDADDR = 0x891a
-- SIOCSIFDSTADDR = 0x8918
-- SIOCSIFENCAP = 0x8926
-- SIOCSIFFLAGS = 0x8914
-- SIOCSIFHWADDR = 0x8924
-- SIOCSIFHWBROADCAST = 0x8937
-- SIOCSIFLINK = 0x8911
-- SIOCSIFMAP = 0x8971
-- SIOCSIFMEM = 0x8920
-- SIOCSIFMETRIC = 0x891e
-- SIOCSIFMTU = 0x8922
-- SIOCSIFNAME = 0x8923
-- SIOCSIFNETMASK = 0x891c
-- SIOCSIFPFLAGS = 0x8934
-- SIOCSIFSLAVE = 0x8930
-- SIOCSIFTXQLEN = 0x8943
-- SIOCSIFVLAN = 0x8983
-- SIOCSMIIREG = 0x8949
-- SIOCSPGRP = 0x80047308
-- SIOCSRARP = 0x8962
-- SIOCWANDEV = 0x894a
-- SOCK_CLOEXEC = 0x80000
-- SOCK_DCCP = 0x6
-- SOCK_DGRAM = 0x1
-- SOCK_IOC_TYPE = 0x89
-- SOCK_NONBLOCK = 0x80
-- SOCK_PACKET = 0xa
-- SOCK_RAW = 0x3
-- SOCK_RDM = 0x4
-- SOCK_SEQPACKET = 0x5
-- SOCK_STREAM = 0x2
-- SOL_AAL = 0x109
-- SOL_ALG = 0x117
-- SOL_ATM = 0x108
-- SOL_CAIF = 0x116
-- SOL_CAN_BASE = 0x64
-- SOL_DCCP = 0x10d
-- SOL_DECNET = 0x105
-- SOL_ICMPV6 = 0x3a
-- SOL_IP = 0x0
-- SOL_IPV6 = 0x29
-- SOL_IRDA = 0x10a
-- SOL_IUCV = 0x115
-- SOL_KCM = 0x119
-- SOL_LLC = 0x10c
-- SOL_NETBEUI = 0x10b
-- SOL_NETLINK = 0x10e
-- SOL_NFC = 0x118
-- SOL_PACKET = 0x107
-- SOL_PNPIPE = 0x113
-- SOL_PPPOL2TP = 0x111
-- SOL_RAW = 0xff
-- SOL_RDS = 0x114
-- SOL_RXRPC = 0x110
-- SOL_SOCKET = 0xffff
-- SOL_TCP = 0x6
-- SOL_TIPC = 0x10f
-- SOL_X25 = 0x106
-- SOMAXCONN = 0x80
-- SO_ACCEPTCONN = 0x1009
-- SO_ATTACH_BPF = 0x32
-- SO_ATTACH_FILTER = 0x1a
-- SO_ATTACH_REUSEPORT_CBPF = 0x33
-- SO_ATTACH_REUSEPORT_EBPF = 0x34
-- SO_BINDTODEVICE = 0x19
-- SO_BPF_EXTENSIONS = 0x30
-- SO_BROADCAST = 0x20
-- SO_BSDCOMPAT = 0xe
-- SO_BUSY_POLL = 0x2e
-- SO_CNX_ADVICE = 0x35
-- SO_DEBUG = 0x1
-- SO_DETACH_BPF = 0x1b
-- SO_DETACH_FILTER = 0x1b
-- SO_DOMAIN = 0x1029
-- SO_DONTROUTE = 0x10
-- SO_ERROR = 0x1007
-- SO_GET_FILTER = 0x1a
-- SO_INCOMING_CPU = 0x31
-- SO_KEEPALIVE = 0x8
-- SO_LINGER = 0x80
-- SO_LOCK_FILTER = 0x2c
-- SO_MARK = 0x24
-- SO_MAX_PACING_RATE = 0x2f
-- SO_NOFCS = 0x2b
-- SO_NO_CHECK = 0xb
-- SO_OOBINLINE = 0x100
-- SO_PASSCRED = 0x11
-- SO_PASSSEC = 0x22
-- SO_PEEK_OFF = 0x2a
-- SO_PEERCRED = 0x12
-- SO_PEERNAME = 0x1c
-- SO_PEERSEC = 0x1e
-- SO_PRIORITY = 0xc
-- SO_PROTOCOL = 0x1028
-- SO_RCVBUF = 0x1002
-- SO_RCVBUFFORCE = 0x21
-- SO_RCVLOWAT = 0x1004
-- SO_RCVTIMEO = 0x1006
-- SO_REUSEADDR = 0x4
-- SO_REUSEPORT = 0x200
-- SO_RXQ_OVFL = 0x28
-- SO_SECURITY_AUTHENTICATION = 0x16
-- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-- SO_SELECT_ERR_QUEUE = 0x2d
-- SO_SNDBUF = 0x1001
-- SO_SNDBUFFORCE = 0x1f
-- SO_SNDLOWAT = 0x1003
-- SO_SNDTIMEO = 0x1005
-- SO_STYLE = 0x1008
-- SO_TIMESTAMP = 0x1d
-- SO_TIMESTAMPING = 0x25
-- SO_TIMESTAMPNS = 0x23
-- SO_TYPE = 0x1008
-- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
-- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
-- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
-- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
-- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
-- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
-- SO_VM_SOCKETS_TRUSTED = 0x5
-- SO_WIFI_STATUS = 0x29
-- SPLICE_F_GIFT = 0x8
-- SPLICE_F_MORE = 0x4
-- SPLICE_F_MOVE = 0x1
-- SPLICE_F_NONBLOCK = 0x2
-- S_BLKSIZE = 0x200
-- S_IEXEC = 0x40
-- S_IFBLK = 0x6000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFIFO = 0x1000
-- S_IFLNK = 0xa000
-- S_IFMT = 0xf000
-- S_IFREG = 0x8000
-- S_IFSOCK = 0xc000
-- S_IREAD = 0x100
-- S_IRGRP = 0x20
-- S_IROTH = 0x4
-- S_IRUSR = 0x100
-- S_IRWXG = 0x38
-- S_IRWXO = 0x7
-- S_IRWXU = 0x1c0
-- S_ISGID = 0x400
-- S_ISUID = 0x800
-- S_ISVTX = 0x200
-- S_IWGRP = 0x10
-- S_IWOTH = 0x2
-- S_IWRITE = 0x80
-- S_IWUSR = 0x80
-- S_IXGRP = 0x8
-- S_IXOTH = 0x1
-- S_IXUSR = 0x40
-- TAB0 = 0x0
-- TAB1 = 0x800
-- TAB2 = 0x1000
-- TAB3 = 0x1800
-- TABDLY = 0x1800
-- TASKSTATS_CMD_ATTR_MAX = 0x4
-- TASKSTATS_CMD_MAX = 0x2
-- TASKSTATS_GENL_NAME = "TASKSTATS"
-- TASKSTATS_GENL_VERSION = 0x1
-- TASKSTATS_TYPE_MAX = 0x6
-- TASKSTATS_VERSION = 0x8
-- TCFLSH = 0x5407
-- TCGETA = 0x5401
-- TCGETS = 0x540d
-- TCGETS2 = 0x4030542a
-- TCIFLUSH = 0x0
-- TCIOFF = 0x2
-- TCIOFLUSH = 0x2
-- TCION = 0x3
-- TCOFLUSH = 0x1
-- TCOOFF = 0x0
-- TCOON = 0x1
-- TCP_CC_INFO = 0x1a
-- TCP_CONGESTION = 0xd
-- TCP_COOKIE_IN_ALWAYS = 0x1
-- TCP_COOKIE_MAX = 0x10
-- TCP_COOKIE_MIN = 0x8
-- TCP_COOKIE_OUT_NEVER = 0x2
-- TCP_COOKIE_PAIR_SIZE = 0x20
-- TCP_COOKIE_TRANSACTIONS = 0xf
-- TCP_CORK = 0x3
-- TCP_DEFER_ACCEPT = 0x9
-- TCP_FASTOPEN = 0x17
-- TCP_INFO = 0xb
-- TCP_KEEPCNT = 0x6
-- TCP_KEEPIDLE = 0x4
-- TCP_KEEPINTVL = 0x5
-- TCP_LINGER2 = 0x8
-- TCP_MAXSEG = 0x2
-- TCP_MAXWIN = 0xffff
-- TCP_MAX_WINSHIFT = 0xe
-- TCP_MD5SIG = 0xe
-- TCP_MD5SIG_MAXKEYLEN = 0x50
-- TCP_MSS = 0x200
-- TCP_MSS_DEFAULT = 0x218
-- TCP_MSS_DESIRED = 0x4c4
-- TCP_NODELAY = 0x1
-- TCP_NOTSENT_LOWAT = 0x19
-- TCP_QUEUE_SEQ = 0x15
-- TCP_QUICKACK = 0xc
-- TCP_REPAIR = 0x13
-- TCP_REPAIR_OPTIONS = 0x16
-- TCP_REPAIR_QUEUE = 0x14
-- TCP_REPAIR_WINDOW = 0x1d
-- TCP_SAVED_SYN = 0x1c
-- TCP_SAVE_SYN = 0x1b
-- TCP_SYNCNT = 0x7
-- TCP_S_DATA_IN = 0x4
-- TCP_S_DATA_OUT = 0x8
-- TCP_THIN_DUPACK = 0x11
-- TCP_THIN_LINEAR_TIMEOUTS = 0x10
-- TCP_TIMESTAMP = 0x18
-- TCP_USER_TIMEOUT = 0x12
-- TCP_WINDOW_CLAMP = 0xa
-- TCSAFLUSH = 0x5410
-- TCSBRK = 0x5405
-- TCSBRKP = 0x5486
-- TCSETA = 0x5402
-- TCSETAF = 0x5404
-- TCSETAW = 0x5403
-- TCSETS = 0x540e
-- TCSETS2 = 0x8030542b
-- TCSETSF = 0x5410
-- TCSETSF2 = 0x8030542d
-- TCSETSW = 0x540f
-- TCSETSW2 = 0x8030542c
-- TCXONC = 0x5406
-- TIOCCBRK = 0x5428
-- TIOCCONS = 0x80047478
-- TIOCEXCL = 0x740d
-- TIOCGDEV = 0x40045432
-- TIOCGETD = 0x7400
-- TIOCGETP = 0x7408
-- TIOCGEXCL = 0x40045440
-- TIOCGICOUNT = 0x5492
-- TIOCGLCKTRMIOS = 0x548b
-- TIOCGLTC = 0x7474
-- TIOCGPGRP = 0x40047477
-- TIOCGPKT = 0x40045438
-- TIOCGPTLCK = 0x40045439
-- TIOCGPTN = 0x40045430
-- TIOCGRS485 = 0x4020542e
-- TIOCGSERIAL = 0x5484
-- TIOCGSID = 0x7416
-- TIOCGSOFTCAR = 0x5481
-- TIOCGWINSZ = 0x40087468
-- TIOCINQ = 0x467f
-- TIOCLINUX = 0x5483
-- TIOCMBIC = 0x741c
-- TIOCMBIS = 0x741b
-- TIOCMGET = 0x741d
-- TIOCMIWAIT = 0x5491
-- TIOCMSET = 0x741a
-- TIOCM_CAR = 0x100
-- TIOCM_CD = 0x100
-- TIOCM_CTS = 0x40
-- TIOCM_DSR = 0x400
-- TIOCM_DTR = 0x2
-- TIOCM_LE = 0x1
-- TIOCM_RI = 0x200
-- TIOCM_RNG = 0x200
-- TIOCM_RTS = 0x4
-- TIOCM_SR = 0x20
-- TIOCM_ST = 0x10
-- TIOCNOTTY = 0x5471
-- TIOCNXCL = 0x740e
-- TIOCOUTQ = 0x7472
-- TIOCPKT = 0x5470
-- TIOCPKT_DATA = 0x0
-- TIOCPKT_DOSTOP = 0x20
-- TIOCPKT_FLUSHREAD = 0x1
-- TIOCPKT_FLUSHWRITE = 0x2
-- TIOCPKT_IOCTL = 0x40
-- TIOCPKT_NOSTOP = 0x10
-- TIOCPKT_START = 0x8
-- TIOCPKT_STOP = 0x4
-- TIOCSBRK = 0x5427
-- TIOCSCTTY = 0x5480
-- TIOCSERCONFIG = 0x5488
-- TIOCSERGETLSR = 0x548e
-- TIOCSERGETMULTI = 0x548f
-- TIOCSERGSTRUCT = 0x548d
-- TIOCSERGWILD = 0x5489
-- TIOCSERSETMULTI = 0x5490
-- TIOCSERSWILD = 0x548a
-- TIOCSER_TEMT = 0x1
-- TIOCSETD = 0x7401
-- TIOCSETN = 0x740a
-- TIOCSETP = 0x7409
-- TIOCSIG = 0x80045436
-- TIOCSLCKTRMIOS = 0x548c
-- TIOCSLTC = 0x7475
-- TIOCSPGRP = 0x80047476
-- TIOCSPTLCK = 0x80045431
-- TIOCSRS485 = 0xc020542f
-- TIOCSSERIAL = 0x5485
-- TIOCSSOFTCAR = 0x5482
-- TIOCSTI = 0x5472
-- TIOCSWINSZ = 0x80087467
-- TIOCVHANGUP = 0x5437
-- TOSTOP = 0x8000
-- TS_COMM_LEN = 0x20
-- TUNATTACHFILTER = 0x800854d5
-- TUNDETACHFILTER = 0x800854d6
-- TUNGETFEATURES = 0x400454cf
-- TUNGETFILTER = 0x400854db
-- TUNGETIFF = 0x400454d2
-- TUNGETSNDBUF = 0x400454d3
-- TUNGETVNETBE = 0x400454df
-- TUNGETVNETHDRSZ = 0x400454d7
-- TUNGETVNETLE = 0x400454dd
-- TUNSETDEBUG = 0x800454c9
-- TUNSETGROUP = 0x800454ce
-- TUNSETIFF = 0x800454ca
-- TUNSETIFINDEX = 0x800454da
-- TUNSETLINK = 0x800454cd
-- TUNSETNOCSUM = 0x800454c8
-- TUNSETOFFLOAD = 0x800454d0
-- TUNSETOWNER = 0x800454cc
-- TUNSETPERSIST = 0x800454cb
-- TUNSETQUEUE = 0x800454d9
-- TUNSETSNDBUF = 0x800454d4
-- TUNSETTXFILTER = 0x800454d1
-- TUNSETVNETBE = 0x800454de
-- TUNSETVNETHDRSZ = 0x800454d8
-- TUNSETVNETLE = 0x800454dc
-- UMOUNT_NOFOLLOW = 0x8
-- VDISCARD = 0xd
-- VEOF = 0x10
-- VEOL = 0x11
-- VEOL2 = 0x6
-- VERASE = 0x2
-- VINTR = 0x0
-- VKILL = 0x3
-- VLNEXT = 0xf
-- VMADDR_CID_ANY = 0xffffffff
-- VMADDR_CID_HOST = 0x2
-- VMADDR_CID_HYPERVISOR = 0x0
-- VMADDR_CID_RESERVED = 0x1
-- VMADDR_PORT_ANY = 0xffffffff
-- VMIN = 0x4
-- VM_SOCKETS_INVALID_VERSION = 0xffffffff
-- VQUIT = 0x1
-- VREPRINT = 0xc
-- VSTART = 0x8
-- VSTOP = 0x9
-- VSUSP = 0xa
-- VSWTC = 0x7
-- VSWTCH = 0x7
-- VT0 = 0x0
-- VT1 = 0x4000
-- VTDLY = 0x4000
-- VTIME = 0x5
-- VWERASE = 0xe
-- WALL = 0x40000000
-- WCLONE = 0x80000000
-- WCONTINUED = 0x8
-- WEXITED = 0x4
-- WNOHANG = 0x1
-- WNOTHREAD = 0x20000000
-- WNOWAIT = 0x1000000
-- WORDSIZE = 0x20
-- WSTOPPED = 0x2
-- WUNTRACED = 0x2
-- XATTR_CREATE = 0x1
-- XATTR_REPLACE = 0x2
-- XCASE = 0x4
-- XTABS = 0x1800
-+ B1000000 = 0x1008
-+ B115200 = 0x1002
-+ B1152000 = 0x1009
-+ B1500000 = 0x100a
-+ B2000000 = 0x100b
-+ B230400 = 0x1003
-+ B2500000 = 0x100c
-+ B3000000 = 0x100d
-+ B3500000 = 0x100e
-+ B4000000 = 0x100f
-+ B460800 = 0x1004
-+ B500000 = 0x1005
-+ B57600 = 0x1001
-+ B576000 = 0x1006
-+ B921600 = 0x1007
-+ BLKBSZGET = 0x40041270
-+ BLKBSZSET = 0x80041271
-+ BLKFLSBUF = 0x20001261
-+ BLKFRAGET = 0x20001265
-+ BLKFRASET = 0x20001264
-+ BLKGETSIZE = 0x20001260
-+ BLKGETSIZE64 = 0x40041272
-+ BLKPBSZGET = 0x2000127b
-+ BLKRAGET = 0x20001263
-+ BLKRASET = 0x20001262
-+ BLKROGET = 0x2000125e
-+ BLKROSET = 0x2000125d
-+ BLKRRPART = 0x2000125f
-+ BLKSECTGET = 0x20001267
-+ BLKSECTSET = 0x20001266
-+ BLKSSZGET = 0x20001268
-+ BOTHER = 0x1000
-+ BS1 = 0x2000
-+ BSDLY = 0x2000
-+ CBAUD = 0x100f
-+ CBAUDEX = 0x1000
-+ CIBAUD = 0x100f0000
-+ CLOCAL = 0x800
-+ CR1 = 0x200
-+ CR2 = 0x400
-+ CR3 = 0x600
-+ CRDLY = 0x600
-+ CREAD = 0x80
-+ CS6 = 0x10
-+ CS7 = 0x20
-+ CS8 = 0x30
-+ CSIZE = 0x30
-+ CSTOPB = 0x40
-+ ECHOCTL = 0x200
-+ ECHOE = 0x10
-+ ECHOK = 0x20
-+ ECHOKE = 0x800
-+ ECHONL = 0x40
-+ ECHOPRT = 0x400
-+ EFD_CLOEXEC = 0x80000
-+ EFD_NONBLOCK = 0x80
-+ EPOLL_CLOEXEC = 0x80000
-+ EXTPROC = 0x10000
-+ FF1 = 0x8000
-+ FFDLY = 0x8000
-+ FLUSHO = 0x2000
-+ FS_IOC_ENABLE_VERITY = 0x80806685
-+ FS_IOC_GETFLAGS = 0x40046601
-+ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
-+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
-+ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
-+ F_GETLK = 0x21
-+ F_GETLK64 = 0x21
-+ F_GETOWN = 0x17
-+ F_RDLCK = 0x0
-+ F_SETLK = 0x22
-+ F_SETLK64 = 0x22
-+ F_SETLKW = 0x23
-+ F_SETLKW64 = 0x23
-+ F_SETOWN = 0x18
-+ F_UNLCK = 0x2
-+ F_WRLCK = 0x1
-+ HUPCL = 0x400
-+ ICANON = 0x2
-+ IEXTEN = 0x100
-+ IN_CLOEXEC = 0x80000
-+ IN_NONBLOCK = 0x80
-+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
-+ ISIG = 0x1
-+ IUCLC = 0x200
-+ IXOFF = 0x1000
-+ IXON = 0x400
-+ MAP_ANON = 0x800
-+ MAP_ANONYMOUS = 0x800
-+ MAP_DENYWRITE = 0x2000
-+ MAP_EXECUTABLE = 0x4000
-+ MAP_GROWSDOWN = 0x1000
-+ MAP_HUGETLB = 0x80000
-+ MAP_LOCKED = 0x8000
-+ MAP_NONBLOCK = 0x20000
-+ MAP_NORESERVE = 0x400
-+ MAP_POPULATE = 0x10000
-+ MAP_RENAME = 0x800
-+ MAP_STACK = 0x40000
-+ MCL_CURRENT = 0x1
-+ MCL_FUTURE = 0x2
-+ MCL_ONFAULT = 0x4
-+ NFDBITS = 0x20
-+ NLDLY = 0x100
-+ NOFLSH = 0x80
-+ NS_GET_NSTYPE = 0x2000b703
-+ NS_GET_OWNER_UID = 0x2000b704
-+ NS_GET_PARENT = 0x2000b702
-+ NS_GET_USERNS = 0x2000b701
-+ OLCUC = 0x2
-+ ONLCR = 0x4
-+ O_APPEND = 0x8
-+ O_ASYNC = 0x1000
-+ O_CLOEXEC = 0x80000
-+ O_CREAT = 0x100
-+ O_DIRECT = 0x8000
-+ O_DIRECTORY = 0x10000
-+ O_DSYNC = 0x10
-+ O_EXCL = 0x400
-+ O_FSYNC = 0x4010
-+ O_LARGEFILE = 0x2000
-+ O_NDELAY = 0x80
-+ O_NOATIME = 0x40000
-+ O_NOCTTY = 0x800
-+ O_NOFOLLOW = 0x20000
-+ O_NONBLOCK = 0x80
-+ O_PATH = 0x200000
-+ O_RSYNC = 0x4010
-+ O_SYNC = 0x4010
-+ O_TMPFILE = 0x410000
-+ O_TRUNC = 0x200
-+ PARENB = 0x100
-+ PARODD = 0x200
-+ PENDIN = 0x4000
-+ PERF_EVENT_IOC_DISABLE = 0x20002401
-+ PERF_EVENT_IOC_ENABLE = 0x20002400
-+ PERF_EVENT_IOC_ID = 0x40042407
-+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8004240b
-+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
-+ PERF_EVENT_IOC_PERIOD = 0x80082404
-+ PERF_EVENT_IOC_QUERY_BPF = 0xc004240a
-+ PERF_EVENT_IOC_REFRESH = 0x20002402
-+ PERF_EVENT_IOC_RESET = 0x20002403
-+ PERF_EVENT_IOC_SET_BPF = 0x80042408
-+ PERF_EVENT_IOC_SET_FILTER = 0x80042406
-+ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
-+ PPPIOCATTACH = 0x8004743d
-+ PPPIOCATTCHAN = 0x80047438
-+ PPPIOCCONNECT = 0x8004743a
-+ PPPIOCDETACH = 0x8004743c
-+ PPPIOCDISCONN = 0x20007439
-+ PPPIOCGASYNCMAP = 0x40047458
-+ PPPIOCGCHAN = 0x40047437
-+ PPPIOCGDEBUG = 0x40047441
-+ PPPIOCGFLAGS = 0x4004745a
-+ PPPIOCGIDLE = 0x4008743f
-+ PPPIOCGIDLE32 = 0x4008743f
-+ PPPIOCGIDLE64 = 0x4010743f
-+ PPPIOCGL2TPSTATS = 0x40487436
-+ PPPIOCGMRU = 0x40047453
-+ PPPIOCGRASYNCMAP = 0x40047455
-+ PPPIOCGUNIT = 0x40047456
-+ PPPIOCGXASYNCMAP = 0x40207450
-+ PPPIOCSACTIVE = 0x80087446
-+ PPPIOCSASYNCMAP = 0x80047457
-+ PPPIOCSCOMPRESS = 0x800c744d
-+ PPPIOCSDEBUG = 0x80047440
-+ PPPIOCSFLAGS = 0x80047459
-+ PPPIOCSMAXCID = 0x80047451
-+ PPPIOCSMRRU = 0x8004743b
-+ PPPIOCSMRU = 0x80047452
-+ PPPIOCSNPMODE = 0x8008744b
-+ PPPIOCSPASS = 0x80087447
-+ PPPIOCSRASYNCMAP = 0x80047454
-+ PPPIOCSXASYNCMAP = 0x8020744f
-+ PPPIOCXFERUNIT = 0x2000744e
-+ PR_SET_PTRACER_ANY = 0xffffffff
-+ PTRACE_GETFPREGS = 0xe
-+ PTRACE_GET_THREAD_AREA = 0x19
-+ PTRACE_GET_THREAD_AREA_3264 = 0xc4
-+ PTRACE_GET_WATCH_REGS = 0xd0
-+ PTRACE_OLDSETOPTIONS = 0x15
-+ PTRACE_PEEKDATA_3264 = 0xc1
-+ PTRACE_PEEKTEXT_3264 = 0xc0
-+ PTRACE_POKEDATA_3264 = 0xc3
-+ PTRACE_POKETEXT_3264 = 0xc2
-+ PTRACE_SETFPREGS = 0xf
-+ PTRACE_SET_THREAD_AREA = 0x1a
-+ PTRACE_SET_WATCH_REGS = 0xd1
-+ RLIMIT_AS = 0x6
-+ RLIMIT_MEMLOCK = 0x9
-+ RLIMIT_NOFILE = 0x5
-+ RLIMIT_NPROC = 0x8
-+ RLIMIT_RSS = 0x7
-+ RNDADDENTROPY = 0x80085203
-+ RNDADDTOENTCNT = 0x80045201
-+ RNDCLEARPOOL = 0x20005206
-+ RNDGETENTCNT = 0x40045200
-+ RNDGETPOOL = 0x40085202
-+ RNDRESEEDCRNG = 0x20005207
-+ RNDZAPENTCNT = 0x20005204
-+ RTC_AIE_OFF = 0x20007002
-+ RTC_AIE_ON = 0x20007001
-+ RTC_ALM_READ = 0x40247008
-+ RTC_ALM_SET = 0x80247007
-+ RTC_EPOCH_READ = 0x4004700d
-+ RTC_EPOCH_SET = 0x8004700e
-+ RTC_IRQP_READ = 0x4004700b
-+ RTC_IRQP_SET = 0x8004700c
-+ RTC_PIE_OFF = 0x20007006
-+ RTC_PIE_ON = 0x20007005
-+ RTC_PLL_GET = 0x401c7011
-+ RTC_PLL_SET = 0x801c7012
-+ RTC_RD_TIME = 0x40247009
-+ RTC_SET_TIME = 0x8024700a
-+ RTC_UIE_OFF = 0x20007004
-+ RTC_UIE_ON = 0x20007003
-+ RTC_VL_CLR = 0x20007014
-+ RTC_VL_READ = 0x40047013
-+ RTC_WIE_OFF = 0x20007010
-+ RTC_WIE_ON = 0x2000700f
-+ RTC_WKALM_RD = 0x40287010
-+ RTC_WKALM_SET = 0x8028700f
-+ SCM_TIMESTAMPING = 0x25
-+ SCM_TIMESTAMPING_OPT_STATS = 0x36
-+ SCM_TIMESTAMPING_PKTINFO = 0x3a
-+ SCM_TIMESTAMPNS = 0x23
-+ SCM_TXTIME = 0x3d
-+ SCM_WIFI_STATUS = 0x29
-+ SFD_CLOEXEC = 0x80000
-+ SFD_NONBLOCK = 0x80
-+ SIOCATMARK = 0x40047307
-+ SIOCGPGRP = 0x40047309
-+ SIOCGSTAMPNS_NEW = 0x40108907
-+ SIOCGSTAMP_NEW = 0x40108906
-+ SIOCINQ = 0x467f
-+ SIOCOUTQ = 0x7472
-+ SIOCSPGRP = 0x80047308
-+ SOCK_CLOEXEC = 0x80000
-+ SOCK_DGRAM = 0x1
-+ SOCK_NONBLOCK = 0x80
-+ SOCK_STREAM = 0x2
-+ SOL_SOCKET = 0xffff
-+ SO_ACCEPTCONN = 0x1009
-+ SO_ATTACH_BPF = 0x32
-+ SO_ATTACH_REUSEPORT_CBPF = 0x33
-+ SO_ATTACH_REUSEPORT_EBPF = 0x34
-+ SO_BINDTODEVICE = 0x19
-+ SO_BINDTOIFINDEX = 0x3e
-+ SO_BPF_EXTENSIONS = 0x30
-+ SO_BROADCAST = 0x20
-+ SO_BSDCOMPAT = 0xe
-+ SO_BUSY_POLL = 0x2e
-+ SO_CNX_ADVICE = 0x35
-+ SO_COOKIE = 0x39
-+ SO_DETACH_REUSEPORT_BPF = 0x44
-+ SO_DOMAIN = 0x1029
-+ SO_DONTROUTE = 0x10
-+ SO_ERROR = 0x1007
-+ SO_INCOMING_CPU = 0x31
-+ SO_INCOMING_NAPI_ID = 0x38
-+ SO_KEEPALIVE = 0x8
-+ SO_LINGER = 0x80
-+ SO_LOCK_FILTER = 0x2c
-+ SO_MARK = 0x24
-+ SO_MAX_PACING_RATE = 0x2f
-+ SO_MEMINFO = 0x37
-+ SO_NOFCS = 0x2b
-+ SO_OOBINLINE = 0x100
-+ SO_PASSCRED = 0x11
-+ SO_PASSSEC = 0x22
-+ SO_PEEK_OFF = 0x2a
-+ SO_PEERCRED = 0x12
-+ SO_PEERGROUPS = 0x3b
-+ SO_PEERSEC = 0x1e
-+ SO_PROTOCOL = 0x1028
-+ SO_RCVBUF = 0x1002
-+ SO_RCVBUFFORCE = 0x21
-+ SO_RCVLOWAT = 0x1004
-+ SO_RCVTIMEO = 0x1006
-+ SO_RCVTIMEO_NEW = 0x42
-+ SO_RCVTIMEO_OLD = 0x1006
-+ SO_REUSEADDR = 0x4
-+ SO_REUSEPORT = 0x200
-+ SO_RXQ_OVFL = 0x28
-+ SO_SECURITY_AUTHENTICATION = 0x16
-+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-+ SO_SELECT_ERR_QUEUE = 0x2d
-+ SO_SNDBUF = 0x1001
-+ SO_SNDBUFFORCE = 0x1f
-+ SO_SNDLOWAT = 0x1003
-+ SO_SNDTIMEO = 0x1005
-+ SO_SNDTIMEO_NEW = 0x43
-+ SO_SNDTIMEO_OLD = 0x1005
-+ SO_STYLE = 0x1008
-+ SO_TIMESTAMPING = 0x25
-+ SO_TIMESTAMPING_NEW = 0x41
-+ SO_TIMESTAMPING_OLD = 0x25
-+ SO_TIMESTAMPNS = 0x23
-+ SO_TIMESTAMPNS_NEW = 0x40
-+ SO_TIMESTAMPNS_OLD = 0x23
-+ SO_TIMESTAMP_NEW = 0x3f
-+ SO_TXTIME = 0x3d
-+ SO_TYPE = 0x1008
-+ SO_WIFI_STATUS = 0x29
-+ SO_ZEROCOPY = 0x3c
-+ TAB1 = 0x800
-+ TAB2 = 0x1000
-+ TAB3 = 0x1800
-+ TABDLY = 0x1800
-+ TCFLSH = 0x5407
-+ TCGETA = 0x5401
-+ TCGETS = 0x540d
-+ TCGETS2 = 0x4030542a
-+ TCSAFLUSH = 0x5410
-+ TCSBRK = 0x5405
-+ TCSBRKP = 0x5486
-+ TCSETA = 0x5402
-+ TCSETAF = 0x5404
-+ TCSETAW = 0x5403
-+ TCSETS = 0x540e
-+ TCSETS2 = 0x8030542b
-+ TCSETSF = 0x5410
-+ TCSETSF2 = 0x8030542d
-+ TCSETSW = 0x540f
-+ TCSETSW2 = 0x8030542c
-+ TCXONC = 0x5406
-+ TIOCCBRK = 0x5428
-+ TIOCCONS = 0x80047478
-+ TIOCEXCL = 0x740d
-+ TIOCGDEV = 0x40045432
-+ TIOCGETD = 0x7400
-+ TIOCGETP = 0x7408
-+ TIOCGEXCL = 0x40045440
-+ TIOCGICOUNT = 0x5492
-+ TIOCGISO7816 = 0x40285442
-+ TIOCGLCKTRMIOS = 0x548b
-+ TIOCGLTC = 0x7474
-+ TIOCGPGRP = 0x40047477
-+ TIOCGPKT = 0x40045438
-+ TIOCGPTLCK = 0x40045439
-+ TIOCGPTN = 0x40045430
-+ TIOCGPTPEER = 0x20005441
-+ TIOCGRS485 = 0x4020542e
-+ TIOCGSERIAL = 0x5484
-+ TIOCGSID = 0x7416
-+ TIOCGSOFTCAR = 0x5481
-+ TIOCGWINSZ = 0x40087468
-+ TIOCINQ = 0x467f
-+ TIOCLINUX = 0x5483
-+ TIOCMBIC = 0x741c
-+ TIOCMBIS = 0x741b
-+ TIOCMGET = 0x741d
-+ TIOCMIWAIT = 0x5491
-+ TIOCMSET = 0x741a
-+ TIOCM_CAR = 0x100
-+ TIOCM_CD = 0x100
-+ TIOCM_CTS = 0x40
-+ TIOCM_DSR = 0x400
-+ TIOCM_RI = 0x200
-+ TIOCM_RNG = 0x200
-+ TIOCM_SR = 0x20
-+ TIOCM_ST = 0x10
-+ TIOCNOTTY = 0x5471
-+ TIOCNXCL = 0x740e
-+ TIOCOUTQ = 0x7472
-+ TIOCPKT = 0x5470
-+ TIOCSBRK = 0x5427
-+ TIOCSCTTY = 0x5480
-+ TIOCSERCONFIG = 0x5488
-+ TIOCSERGETLSR = 0x548e
-+ TIOCSERGETMULTI = 0x548f
-+ TIOCSERGSTRUCT = 0x548d
-+ TIOCSERGWILD = 0x5489
-+ TIOCSERSETMULTI = 0x5490
-+ TIOCSERSWILD = 0x548a
-+ TIOCSER_TEMT = 0x1
-+ TIOCSETD = 0x7401
-+ TIOCSETN = 0x740a
-+ TIOCSETP = 0x7409
-+ TIOCSIG = 0x80045436
-+ TIOCSISO7816 = 0xc0285443
-+ TIOCSLCKTRMIOS = 0x548c
-+ TIOCSLTC = 0x7475
-+ TIOCSPGRP = 0x80047476
-+ TIOCSPTLCK = 0x80045431
-+ TIOCSRS485 = 0xc020542f
-+ TIOCSSERIAL = 0x5485
-+ TIOCSSOFTCAR = 0x5482
-+ TIOCSTI = 0x5472
-+ TIOCSWINSZ = 0x80087467
-+ TIOCVHANGUP = 0x5437
-+ TOSTOP = 0x8000
-+ TUNATTACHFILTER = 0x800854d5
-+ TUNDETACHFILTER = 0x800854d6
-+ TUNGETDEVNETNS = 0x200054e3
-+ TUNGETFEATURES = 0x400454cf
-+ TUNGETFILTER = 0x400854db
-+ TUNGETIFF = 0x400454d2
-+ TUNGETSNDBUF = 0x400454d3
-+ TUNGETVNETBE = 0x400454df
-+ TUNGETVNETHDRSZ = 0x400454d7
-+ TUNGETVNETLE = 0x400454dd
-+ TUNSETCARRIER = 0x800454e2
-+ TUNSETDEBUG = 0x800454c9
-+ TUNSETFILTEREBPF = 0x400454e1
-+ TUNSETGROUP = 0x800454ce
-+ TUNSETIFF = 0x800454ca
-+ TUNSETIFINDEX = 0x800454da
-+ TUNSETLINK = 0x800454cd
-+ TUNSETNOCSUM = 0x800454c8
-+ TUNSETOFFLOAD = 0x800454d0
-+ TUNSETOWNER = 0x800454cc
-+ TUNSETPERSIST = 0x800454cb
-+ TUNSETQUEUE = 0x800454d9
-+ TUNSETSNDBUF = 0x800454d4
-+ TUNSETSTEERINGEBPF = 0x400454e0
-+ TUNSETTXFILTER = 0x800454d1
-+ TUNSETVNETBE = 0x800454de
-+ TUNSETVNETHDRSZ = 0x800454d8
-+ TUNSETVNETLE = 0x800454dc
-+ UBI_IOCATT = 0x80186f40
-+ UBI_IOCDET = 0x80046f41
-+ UBI_IOCEBCH = 0x80044f02
-+ UBI_IOCEBER = 0x80044f01
-+ UBI_IOCEBISMAP = 0x40044f05
-+ UBI_IOCEBMAP = 0x80084f03
-+ UBI_IOCEBUNMAP = 0x80044f04
-+ UBI_IOCMKVOL = 0x80986f00
-+ UBI_IOCRMVOL = 0x80046f01
-+ UBI_IOCRNVOL = 0x91106f03
-+ UBI_IOCRPEB = 0x80046f04
-+ UBI_IOCRSVOL = 0x800c6f02
-+ UBI_IOCSETVOLPROP = 0x80104f06
-+ UBI_IOCSPEB = 0x80046f05
-+ UBI_IOCVOLCRBLK = 0x80804f07
-+ UBI_IOCVOLRMBLK = 0x20004f08
-+ UBI_IOCVOLUP = 0x80084f00
-+ VDISCARD = 0xd
-+ VEOF = 0x10
-+ VEOL = 0x11
-+ VEOL2 = 0x6
-+ VMIN = 0x4
-+ VREPRINT = 0xc
-+ VSTART = 0x8
-+ VSTOP = 0x9
-+ VSUSP = 0xa
-+ VSWTC = 0x7
-+ VSWTCH = 0x7
-+ VT1 = 0x4000
-+ VTDLY = 0x4000
-+ VTIME = 0x5
-+ VWERASE = 0xe
-+ WDIOC_GETBOOTSTATUS = 0x40045702
-+ WDIOC_GETPRETIMEOUT = 0x40045709
-+ WDIOC_GETSTATUS = 0x40045701
-+ WDIOC_GETSUPPORT = 0x40285700
-+ WDIOC_GETTEMP = 0x40045703
-+ WDIOC_GETTIMELEFT = 0x4004570a
-+ WDIOC_GETTIMEOUT = 0x40045707
-+ WDIOC_KEEPALIVE = 0x40045705
-+ WDIOC_SETOPTIONS = 0x40045704
-+ WORDSIZE = 0x20
-+ XCASE = 0x4
-+ XTABS = 0x1800
- )
-
- // Errors
- const (
-- E2BIG = syscall.Errno(0x7)
-- EACCES = syscall.Errno(0xd)
- EADDRINUSE = syscall.Errno(0x7d)
- EADDRNOTAVAIL = syscall.Errno(0x7e)
- EADV = syscall.Errno(0x44)
- EAFNOSUPPORT = syscall.Errno(0x7c)
-- EAGAIN = syscall.Errno(0xb)
- EALREADY = syscall.Errno(0x95)
- EBADE = syscall.Errno(0x32)
-- EBADF = syscall.Errno(0x9)
- EBADFD = syscall.Errno(0x51)
- EBADMSG = syscall.Errno(0x4d)
- EBADR = syscall.Errno(0x33)
- EBADRQC = syscall.Errno(0x36)
- EBADSLT = syscall.Errno(0x37)
- EBFONT = syscall.Errno(0x3b)
-- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x9e)
-- ECHILD = syscall.Errno(0xa)
- ECHRNG = syscall.Errno(0x25)
- ECOMM = syscall.Errno(0x46)
- ECONNABORTED = syscall.Errno(0x82)
-@@ -1886,12 +502,8 @@ const (
- EDEADLK = syscall.Errno(0x2d)
- EDEADLOCK = syscall.Errno(0x38)
- EDESTADDRREQ = syscall.Errno(0x60)
-- EDOM = syscall.Errno(0x21)
- EDOTDOT = syscall.Errno(0x49)
- EDQUOT = syscall.Errno(0x46d)
-- EEXIST = syscall.Errno(0x11)
-- EFAULT = syscall.Errno(0xe)
-- EFBIG = syscall.Errno(0x1b)
- EHOSTDOWN = syscall.Errno(0x93)
- EHOSTUNREACH = syscall.Errno(0x94)
- EHWPOISON = syscall.Errno(0xa8)
-@@ -1899,11 +511,7 @@ const (
- EILSEQ = syscall.Errno(0x58)
- EINIT = syscall.Errno(0x8d)
- EINPROGRESS = syscall.Errno(0x96)
-- EINTR = syscall.Errno(0x4)
-- EINVAL = syscall.Errno(0x16)
-- EIO = syscall.Errno(0x5)
- EISCONN = syscall.Errno(0x85)
-- EISDIR = syscall.Errno(0x15)
- EISNAM = syscall.Errno(0x8b)
- EKEYEXPIRED = syscall.Errno(0xa2)
- EKEYREJECTED = syscall.Errno(0xa4)
-@@ -1920,8 +528,6 @@ const (
- ELNRNG = syscall.Errno(0x29)
- ELOOP = syscall.Errno(0x5a)
- EMEDIUMTYPE = syscall.Errno(0xa0)
-- EMFILE = syscall.Errno(0x18)
-- EMLINK = syscall.Errno(0x1f)
- EMSGSIZE = syscall.Errno(0x61)
- EMULTIHOP = syscall.Errno(0x4a)
- ENAMETOOLONG = syscall.Errno(0x4e)
-@@ -1929,100 +535,68 @@ const (
- ENETDOWN = syscall.Errno(0x7f)
- ENETRESET = syscall.Errno(0x81)
- ENETUNREACH = syscall.Errno(0x80)
-- ENFILE = syscall.Errno(0x17)
- ENOANO = syscall.Errno(0x35)
- ENOBUFS = syscall.Errno(0x84)
- ENOCSI = syscall.Errno(0x2b)
- ENODATA = syscall.Errno(0x3d)
-- ENODEV = syscall.Errno(0x13)
-- ENOENT = syscall.Errno(0x2)
-- ENOEXEC = syscall.Errno(0x8)
- ENOKEY = syscall.Errno(0xa1)
- ENOLCK = syscall.Errno(0x2e)
- ENOLINK = syscall.Errno(0x43)
- ENOMEDIUM = syscall.Errno(0x9f)
-- ENOMEM = syscall.Errno(0xc)
- ENOMSG = syscall.Errno(0x23)
- ENONET = syscall.Errno(0x40)
- ENOPKG = syscall.Errno(0x41)
- ENOPROTOOPT = syscall.Errno(0x63)
-- ENOSPC = syscall.Errno(0x1c)
- ENOSR = syscall.Errno(0x3f)
- ENOSTR = syscall.Errno(0x3c)
- ENOSYS = syscall.Errno(0x59)
-- ENOTBLK = syscall.Errno(0xf)
- ENOTCONN = syscall.Errno(0x86)
-- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x5d)
- ENOTNAM = syscall.Errno(0x89)
- ENOTRECOVERABLE = syscall.Errno(0xa6)
- ENOTSOCK = syscall.Errno(0x5f)
- ENOTSUP = syscall.Errno(0x7a)
-- ENOTTY = syscall.Errno(0x19)
- ENOTUNIQ = syscall.Errno(0x50)
-- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x7a)
- EOVERFLOW = syscall.Errno(0x4f)
- EOWNERDEAD = syscall.Errno(0xa5)
-- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x7b)
-- EPIPE = syscall.Errno(0x20)
- EPROTO = syscall.Errno(0x47)
- EPROTONOSUPPORT = syscall.Errno(0x78)
- EPROTOTYPE = syscall.Errno(0x62)
-- ERANGE = syscall.Errno(0x22)
- EREMCHG = syscall.Errno(0x52)
- EREMDEV = syscall.Errno(0x8e)
- EREMOTE = syscall.Errno(0x42)
- EREMOTEIO = syscall.Errno(0x8c)
- ERESTART = syscall.Errno(0x5b)
- ERFKILL = syscall.Errno(0xa7)
-- EROFS = syscall.Errno(0x1e)
- ESHUTDOWN = syscall.Errno(0x8f)
- ESOCKTNOSUPPORT = syscall.Errno(0x79)
-- ESPIPE = syscall.Errno(0x1d)
-- ESRCH = syscall.Errno(0x3)
- ESRMNT = syscall.Errno(0x45)
- ESTALE = syscall.Errno(0x97)
- ESTRPIPE = syscall.Errno(0x5c)
- ETIME = syscall.Errno(0x3e)
- ETIMEDOUT = syscall.Errno(0x91)
- ETOOMANYREFS = syscall.Errno(0x90)
-- ETXTBSY = syscall.Errno(0x1a)
- EUCLEAN = syscall.Errno(0x87)
- EUNATCH = syscall.Errno(0x2a)
- EUSERS = syscall.Errno(0x5e)
-- EWOULDBLOCK = syscall.Errno(0xb)
-- EXDEV = syscall.Errno(0x12)
- EXFULL = syscall.Errno(0x34)
- )
-
- // Signals
- const (
-- SIGABRT = syscall.Signal(0x6)
-- SIGALRM = syscall.Signal(0xe)
- SIGBUS = syscall.Signal(0xa)
- SIGCHLD = syscall.Signal(0x12)
- SIGCLD = syscall.Signal(0x12)
- SIGCONT = syscall.Signal(0x19)
- SIGEMT = syscall.Signal(0x7)
-- SIGFPE = syscall.Signal(0x8)
-- SIGHUP = syscall.Signal(0x1)
-- SIGILL = syscall.Signal(0x4)
-- SIGINT = syscall.Signal(0x2)
- SIGIO = syscall.Signal(0x16)
-- SIGIOT = syscall.Signal(0x6)
-- SIGKILL = syscall.Signal(0x9)
-- SIGPIPE = syscall.Signal(0xd)
- SIGPOLL = syscall.Signal(0x16)
- SIGPROF = syscall.Signal(0x1d)
- SIGPWR = syscall.Signal(0x13)
-- SIGQUIT = syscall.Signal(0x3)
-- SIGSEGV = syscall.Signal(0xb)
- SIGSTOP = syscall.Signal(0x17)
- SIGSYS = syscall.Signal(0xc)
-- SIGTERM = syscall.Signal(0xf)
-- SIGTRAP = syscall.Signal(0x5)
- SIGTSTP = syscall.Signal(0x18)
- SIGTTIN = syscall.Signal(0x1a)
- SIGTTOU = syscall.Signal(0x1b)
-@@ -2036,174 +610,182 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "no such device or address",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource temporarily unavailable",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device or resource busy",
-- 17: "file exists",
-- 18: "invalid cross-device link",
-- 19: "no such device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "numerical result out of range",
-- 35: "no message of desired type",
-- 36: "identifier removed",
-- 37: "channel number out of range",
-- 38: "level 2 not synchronized",
-- 39: "level 3 halted",
-- 40: "level 3 reset",
-- 41: "link number out of range",
-- 42: "protocol driver not attached",
-- 43: "no CSI structure available",
-- 44: "level 2 halted",
-- 45: "resource deadlock avoided",
-- 46: "no locks available",
-- 50: "invalid exchange",
-- 51: "invalid request descriptor",
-- 52: "exchange full",
-- 53: "no anode",
-- 54: "invalid request code",
-- 55: "invalid slot",
-- 56: "file locking deadlock error",
-- 59: "bad font file format",
-- 60: "device not a stream",
-- 61: "no data available",
-- 62: "timer expired",
-- 63: "out of streams resources",
-- 64: "machine is not on the network",
-- 65: "package not installed",
-- 66: "object is remote",
-- 67: "link has been severed",
-- 68: "advertise error",
-- 69: "srmount error",
-- 70: "communication error on send",
-- 71: "protocol error",
-- 73: "RFS specific error",
-- 74: "multihop attempted",
-- 77: "bad message",
-- 78: "file name too long",
-- 79: "value too large for defined data type",
-- 80: "name not unique on network",
-- 81: "file descriptor in bad state",
-- 82: "remote address changed",
-- 83: "can not access a needed shared library",
-- 84: "accessing a corrupted shared library",
-- 85: ".lib section in a.out corrupted",
-- 86: "attempting to link in too many shared libraries",
-- 87: "cannot exec a shared library directly",
-- 88: "invalid or incomplete multibyte or wide character",
-- 89: "function not implemented",
-- 90: "too many levels of symbolic links",
-- 91: "interrupted system call should be restarted",
-- 92: "streams pipe error",
-- 93: "directory not empty",
-- 94: "too many users",
-- 95: "socket operation on non-socket",
-- 96: "destination address required",
-- 97: "message too long",
-- 98: "protocol wrong type for socket",
-- 99: "protocol not available",
-- 120: "protocol not supported",
-- 121: "socket type not supported",
-- 122: "operation not supported",
-- 123: "protocol family not supported",
-- 124: "address family not supported by protocol",
-- 125: "address already in use",
-- 126: "cannot assign requested address",
-- 127: "network is down",
-- 128: "network is unreachable",
-- 129: "network dropped connection on reset",
-- 130: "software caused connection abort",
-- 131: "connection reset by peer",
-- 132: "no buffer space available",
-- 133: "transport endpoint is already connected",
-- 134: "transport endpoint is not connected",
-- 135: "structure needs cleaning",
-- 137: "not a XENIX named type file",
-- 138: "no XENIX semaphores available",
-- 139: "is a named type file",
-- 140: "remote I/O error",
-- 141: "unknown error 141",
-- 142: "unknown error 142",
-- 143: "cannot send after transport endpoint shutdown",
-- 144: "too many references: cannot splice",
-- 145: "connection timed out",
-- 146: "connection refused",
-- 147: "host is down",
-- 148: "no route to host",
-- 149: "operation already in progress",
-- 150: "operation now in progress",
-- 151: "stale file handle",
-- 158: "operation canceled",
-- 159: "no medium found",
-- 160: "wrong medium type",
-- 161: "required key not available",
-- 162: "key has expired",
-- 163: "key has been revoked",
-- 164: "key was rejected by service",
-- 165: "owner died",
-- 166: "state not recoverable",
-- 167: "operation not possible due to RF-kill",
-- 168: "memory page has hardware error",
-- 1133: "disk quota exceeded",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device or resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "invalid cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "numerical result out of range"},
-+ {35, "ENOMSG", "no message of desired type"},
-+ {36, "EIDRM", "identifier removed"},
-+ {37, "ECHRNG", "channel number out of range"},
-+ {38, "EL2NSYNC", "level 2 not synchronized"},
-+ {39, "EL3HLT", "level 3 halted"},
-+ {40, "EL3RST", "level 3 reset"},
-+ {41, "ELNRNG", "link number out of range"},
-+ {42, "EUNATCH", "protocol driver not attached"},
-+ {43, "ENOCSI", "no CSI structure available"},
-+ {44, "EL2HLT", "level 2 halted"},
-+ {45, "EDEADLK", "resource deadlock avoided"},
-+ {46, "ENOLCK", "no locks available"},
-+ {50, "EBADE", "invalid exchange"},
-+ {51, "EBADR", "invalid request descriptor"},
-+ {52, "EXFULL", "exchange full"},
-+ {53, "ENOANO", "no anode"},
-+ {54, "EBADRQC", "invalid request code"},
-+ {55, "EBADSLT", "invalid slot"},
-+ {56, "EDEADLOCK", "file locking deadlock error"},
-+ {59, "EBFONT", "bad font file format"},
-+ {60, "ENOSTR", "device not a stream"},
-+ {61, "ENODATA", "no data available"},
-+ {62, "ETIME", "timer expired"},
-+ {63, "ENOSR", "out of streams resources"},
-+ {64, "ENONET", "machine is not on the network"},
-+ {65, "ENOPKG", "package not installed"},
-+ {66, "EREMOTE", "object is remote"},
-+ {67, "ENOLINK", "link has been severed"},
-+ {68, "EADV", "advertise error"},
-+ {69, "ESRMNT", "srmount error"},
-+ {70, "ECOMM", "communication error on send"},
-+ {71, "EPROTO", "protocol error"},
-+ {73, "EDOTDOT", "RFS specific error"},
-+ {74, "EMULTIHOP", "multihop attempted"},
-+ {77, "EBADMSG", "bad message"},
-+ {78, "ENAMETOOLONG", "file name too long"},
-+ {79, "EOVERFLOW", "value too large for defined data type"},
-+ {80, "ENOTUNIQ", "name not unique on network"},
-+ {81, "EBADFD", "file descriptor in bad state"},
-+ {82, "EREMCHG", "remote address changed"},
-+ {83, "ELIBACC", "can not access a needed shared library"},
-+ {84, "ELIBBAD", "accessing a corrupted shared library"},
-+ {85, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {86, "ELIBMAX", "attempting to link in too many shared libraries"},
-+ {87, "ELIBEXEC", "cannot exec a shared library directly"},
-+ {88, "EILSEQ", "invalid or incomplete multibyte or wide character"},
-+ {89, "ENOSYS", "function not implemented"},
-+ {90, "ELOOP", "too many levels of symbolic links"},
-+ {91, "ERESTART", "interrupted system call should be restarted"},
-+ {92, "ESTRPIPE", "streams pipe error"},
-+ {93, "ENOTEMPTY", "directory not empty"},
-+ {94, "EUSERS", "too many users"},
-+ {95, "ENOTSOCK", "socket operation on non-socket"},
-+ {96, "EDESTADDRREQ", "destination address required"},
-+ {97, "EMSGSIZE", "message too long"},
-+ {98, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {99, "ENOPROTOOPT", "protocol not available"},
-+ {120, "EPROTONOSUPPORT", "protocol not supported"},
-+ {121, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {122, "ENOTSUP", "operation not supported"},
-+ {123, "EPFNOSUPPORT", "protocol family not supported"},
-+ {124, "EAFNOSUPPORT", "address family not supported by protocol"},
-+ {125, "EADDRINUSE", "address already in use"},
-+ {126, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {127, "ENETDOWN", "network is down"},
-+ {128, "ENETUNREACH", "network is unreachable"},
-+ {129, "ENETRESET", "network dropped connection on reset"},
-+ {130, "ECONNABORTED", "software caused connection abort"},
-+ {131, "ECONNRESET", "connection reset by peer"},
-+ {132, "ENOBUFS", "no buffer space available"},
-+ {133, "EISCONN", "transport endpoint is already connected"},
-+ {134, "ENOTCONN", "transport endpoint is not connected"},
-+ {135, "EUCLEAN", "structure needs cleaning"},
-+ {137, "ENOTNAM", "not a XENIX named type file"},
-+ {138, "ENAVAIL", "no XENIX semaphores available"},
-+ {139, "EISNAM", "is a named type file"},
-+ {140, "EREMOTEIO", "remote I/O error"},
-+ {141, "EINIT", "unknown error 141"},
-+ {142, "EREMDEV", "unknown error 142"},
-+ {143, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
-+ {144, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {145, "ETIMEDOUT", "connection timed out"},
-+ {146, "ECONNREFUSED", "connection refused"},
-+ {147, "EHOSTDOWN", "host is down"},
-+ {148, "EHOSTUNREACH", "no route to host"},
-+ {149, "EALREADY", "operation already in progress"},
-+ {150, "EINPROGRESS", "operation now in progress"},
-+ {151, "ESTALE", "stale file handle"},
-+ {158, "ECANCELED", "operation canceled"},
-+ {159, "ENOMEDIUM", "no medium found"},
-+ {160, "EMEDIUMTYPE", "wrong medium type"},
-+ {161, "ENOKEY", "required key not available"},
-+ {162, "EKEYEXPIRED", "key has expired"},
-+ {163, "EKEYREVOKED", "key has been revoked"},
-+ {164, "EKEYREJECTED", "key was rejected by service"},
-+ {165, "EOWNERDEAD", "owner died"},
-+ {166, "ENOTRECOVERABLE", "state not recoverable"},
-+ {167, "ERFKILL", "operation not possible due to RF-kill"},
-+ {168, "EHWPOISON", "memory page has hardware error"},
-+ {1133, "EDQUOT", "disk quota exceeded"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/breakpoint trap",
-- 6: "aborted",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "user defined signal 1",
-- 17: "user defined signal 2",
-- 18: "child exited",
-- 19: "power failure",
-- 20: "window changed",
-- 21: "urgent I/O condition",
-- 22: "I/O possible",
-- 23: "stopped (signal)",
-- 24: "stopped",
-- 25: "continued",
-- 26: "stopped (tty input)",
-- 27: "stopped (tty output)",
-- 28: "virtual timer expired",
-- 29: "profiling timer expired",
-- 30: "CPU time limit exceeded",
-- 31: "file size limit exceeded",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/breakpoint trap"},
-+ {6, "SIGABRT", "aborted"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGUSR1", "user defined signal 1"},
-+ {17, "SIGUSR2", "user defined signal 2"},
-+ {18, "SIGCHLD", "child exited"},
-+ {19, "SIGPWR", "power failure"},
-+ {20, "SIGWINCH", "window changed"},
-+ {21, "SIGURG", "urgent I/O condition"},
-+ {22, "SIGIO", "I/O possible"},
-+ {23, "SIGSTOP", "stopped (signal)"},
-+ {24, "SIGTSTP", "stopped"},
-+ {25, "SIGCONT", "continued"},
-+ {26, "SIGTTIN", "stopped (tty input)"},
-+ {27, "SIGTTOU", "stopped (tty output)"},
-+ {28, "SIGVTALRM", "virtual timer expired"},
-+ {29, "SIGPROF", "profiling timer expired"},
-+ {30, "SIGXCPU", "CPU time limit exceeded"},
-+ {31, "SIGXFSZ", "file size limit exceeded"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
-index 6772a59b..51858667 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
-@@ -3,7 +3,7 @@
-
- // +build ppc64,linux
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
-
- package unix
-@@ -11,1930 +11,549 @@ package unix
- import "syscall"
-
- const (
-- AF_ALG = 0x26
-- AF_APPLETALK = 0x5
-- AF_ASH = 0x12
-- AF_ATMPVC = 0x8
-- AF_ATMSVC = 0x14
-- AF_AX25 = 0x3
-- AF_BLUETOOTH = 0x1f
-- AF_BRIDGE = 0x7
-- AF_CAIF = 0x25
-- AF_CAN = 0x1d
-- AF_DECnet = 0xc
-- AF_ECONET = 0x13
-- AF_FILE = 0x1
-- AF_IB = 0x1b
-- AF_IEEE802154 = 0x24
-- AF_INET = 0x2
-- AF_INET6 = 0xa
-- AF_IPX = 0x4
-- AF_IRDA = 0x17
-- AF_ISDN = 0x22
-- AF_IUCV = 0x20
-- AF_KCM = 0x29
-- AF_KEY = 0xf
-- AF_LLC = 0x1a
-- AF_LOCAL = 0x1
-- AF_MAX = 0x2b
-- AF_MPLS = 0x1c
-- AF_NETBEUI = 0xd
-- AF_NETLINK = 0x10
-- AF_NETROM = 0x6
-- AF_NFC = 0x27
-- AF_PACKET = 0x11
-- AF_PHONET = 0x23
-- AF_PPPOX = 0x18
-- AF_QIPCRTR = 0x2a
-- AF_RDS = 0x15
-- AF_ROSE = 0xb
-- AF_ROUTE = 0x10
-- AF_RXRPC = 0x21
-- AF_SECURITY = 0xe
-- AF_SNA = 0x16
-- AF_TIPC = 0x1e
-- AF_UNIX = 0x1
-- AF_UNSPEC = 0x0
-- AF_VSOCK = 0x28
-- AF_WANPIPE = 0x19
-- AF_X25 = 0x9
-- ALG_OP_DECRYPT = 0x0
-- ALG_OP_ENCRYPT = 0x1
-- ALG_SET_AEAD_ASSOCLEN = 0x4
-- ALG_SET_AEAD_AUTHSIZE = 0x5
-- ALG_SET_IV = 0x2
-- ALG_SET_KEY = 0x1
-- ALG_SET_OP = 0x3
-- ARPHRD_6LOWPAN = 0x339
-- ARPHRD_ADAPT = 0x108
-- ARPHRD_APPLETLK = 0x8
-- ARPHRD_ARCNET = 0x7
-- ARPHRD_ASH = 0x30d
-- ARPHRD_ATM = 0x13
-- ARPHRD_AX25 = 0x3
-- ARPHRD_BIF = 0x307
-- ARPHRD_CAIF = 0x336
-- ARPHRD_CAN = 0x118
-- ARPHRD_CHAOS = 0x5
-- ARPHRD_CISCO = 0x201
-- ARPHRD_CSLIP = 0x101
-- ARPHRD_CSLIP6 = 0x103
-- ARPHRD_DDCMP = 0x205
-- ARPHRD_DLCI = 0xf
-- ARPHRD_ECONET = 0x30e
-- ARPHRD_EETHER = 0x2
-- ARPHRD_ETHER = 0x1
-- ARPHRD_EUI64 = 0x1b
-- ARPHRD_FCAL = 0x311
-- ARPHRD_FCFABRIC = 0x313
-- ARPHRD_FCPL = 0x312
-- ARPHRD_FCPP = 0x310
-- ARPHRD_FDDI = 0x306
-- ARPHRD_FRAD = 0x302
-- ARPHRD_HDLC = 0x201
-- ARPHRD_HIPPI = 0x30c
-- ARPHRD_HWX25 = 0x110
-- ARPHRD_IEEE1394 = 0x18
-- ARPHRD_IEEE802 = 0x6
-- ARPHRD_IEEE80211 = 0x321
-- ARPHRD_IEEE80211_PRISM = 0x322
-- ARPHRD_IEEE80211_RADIOTAP = 0x323
-- ARPHRD_IEEE802154 = 0x324
-- ARPHRD_IEEE802154_MONITOR = 0x325
-- ARPHRD_IEEE802_TR = 0x320
-- ARPHRD_INFINIBAND = 0x20
-- ARPHRD_IP6GRE = 0x337
-- ARPHRD_IPDDP = 0x309
-- ARPHRD_IPGRE = 0x30a
-- ARPHRD_IRDA = 0x30f
-- ARPHRD_LAPB = 0x204
-- ARPHRD_LOCALTLK = 0x305
-- ARPHRD_LOOPBACK = 0x304
-- ARPHRD_METRICOM = 0x17
-- ARPHRD_NETLINK = 0x338
-- ARPHRD_NETROM = 0x0
-- ARPHRD_NONE = 0xfffe
-- ARPHRD_PHONET = 0x334
-- ARPHRD_PHONET_PIPE = 0x335
-- ARPHRD_PIMREG = 0x30b
-- ARPHRD_PPP = 0x200
-- ARPHRD_PRONET = 0x4
-- ARPHRD_RAWHDLC = 0x206
-- ARPHRD_ROSE = 0x10e
-- ARPHRD_RSRVD = 0x104
-- ARPHRD_SIT = 0x308
-- ARPHRD_SKIP = 0x303
-- ARPHRD_SLIP = 0x100
-- ARPHRD_SLIP6 = 0x102
-- ARPHRD_TUNNEL = 0x300
-- ARPHRD_TUNNEL6 = 0x301
-- ARPHRD_VOID = 0xffff
-- ARPHRD_X25 = 0x10f
-- B0 = 0x0
-- B1000000 = 0x17
-- B110 = 0x3
-- B115200 = 0x11
-- B1152000 = 0x18
-- B1200 = 0x9
-- B134 = 0x4
-- B150 = 0x5
-- B1500000 = 0x19
-- B1800 = 0xa
-- B19200 = 0xe
-- B200 = 0x6
-- B2000000 = 0x1a
-- B230400 = 0x12
-- B2400 = 0xb
-- B2500000 = 0x1b
-- B300 = 0x7
-- B3000000 = 0x1c
-- B3500000 = 0x1d
-- B38400 = 0xf
-- B4000000 = 0x1e
-- B460800 = 0x13
-- B4800 = 0xc
-- B50 = 0x1
-- B500000 = 0x14
-- B57600 = 0x10
-- B576000 = 0x15
-- B600 = 0x8
-- B75 = 0x2
-- B921600 = 0x16
-- B9600 = 0xd
-- BLKBSZGET = 0x40081270
-- BLKBSZSET = 0x80081271
-- BLKFLSBUF = 0x20001261
-- BLKFRAGET = 0x20001265
-- BLKFRASET = 0x20001264
-- BLKGETSIZE = 0x20001260
-- BLKGETSIZE64 = 0x40081272
-- BLKPBSZGET = 0x2000127b
-- BLKRAGET = 0x20001263
-- BLKRASET = 0x20001262
-- BLKROGET = 0x2000125e
-- BLKROSET = 0x2000125d
-- BLKRRPART = 0x2000125f
-- BLKSECTGET = 0x20001267
-- BLKSECTSET = 0x20001266
-- BLKSSZGET = 0x20001268
-- BOTHER = 0x1f
-- BPF_A = 0x10
-- BPF_ABS = 0x20
-- BPF_ADD = 0x0
-- BPF_ALU = 0x4
-- BPF_AND = 0x50
-- BPF_B = 0x10
-- BPF_DIV = 0x30
-- BPF_H = 0x8
-- BPF_IMM = 0x0
-- BPF_IND = 0x40
-- BPF_JA = 0x0
-- BPF_JEQ = 0x10
-- BPF_JGE = 0x30
-- BPF_JGT = 0x20
-- BPF_JMP = 0x5
-- BPF_JSET = 0x40
-- BPF_K = 0x0
-- BPF_LD = 0x0
-- BPF_LDX = 0x1
-- BPF_LEN = 0x80
-- BPF_LL_OFF = -0x200000
-- BPF_LSH = 0x60
-- BPF_MAJOR_VERSION = 0x1
-- BPF_MAXINSNS = 0x1000
-- BPF_MEM = 0x60
-- BPF_MEMWORDS = 0x10
-- BPF_MINOR_VERSION = 0x1
-- BPF_MISC = 0x7
-- BPF_MOD = 0x90
-- BPF_MSH = 0xa0
-- BPF_MUL = 0x20
-- BPF_NEG = 0x80
-- BPF_NET_OFF = -0x100000
-- BPF_OR = 0x40
-- BPF_RET = 0x6
-- BPF_RSH = 0x70
-- BPF_ST = 0x2
-- BPF_STX = 0x3
-- BPF_SUB = 0x10
-- BPF_TAX = 0x0
-- BPF_TXA = 0x80
-- BPF_W = 0x0
-- BPF_X = 0x8
-- BPF_XOR = 0xa0
-- BRKINT = 0x2
-- BS0 = 0x0
-- BS1 = 0x8000
-- BSDLY = 0x8000
-- CAN_BCM = 0x2
-- CAN_EFF_FLAG = 0x80000000
-- CAN_EFF_ID_BITS = 0x1d
-- CAN_EFF_MASK = 0x1fffffff
-- CAN_ERR_FLAG = 0x20000000
-- CAN_ERR_MASK = 0x1fffffff
-- CAN_INV_FILTER = 0x20000000
-- CAN_ISOTP = 0x6
-- CAN_MAX_DLC = 0x8
-- CAN_MAX_DLEN = 0x8
-- CAN_MCNET = 0x5
-- CAN_MTU = 0x10
-- CAN_NPROTO = 0x7
-- CAN_RAW = 0x1
-- CAN_RAW_FILTER_MAX = 0x200
-- CAN_RTR_FLAG = 0x40000000
-- CAN_SFF_ID_BITS = 0xb
-- CAN_SFF_MASK = 0x7ff
-- CAN_TP16 = 0x3
-- CAN_TP20 = 0x4
-- CBAUD = 0xff
-- CBAUDEX = 0x0
-- CFLUSH = 0xf
-- CIBAUD = 0xff0000
-- CLOCAL = 0x8000
-- CLOCK_BOOTTIME = 0x7
-- CLOCK_BOOTTIME_ALARM = 0x9
-- CLOCK_DEFAULT = 0x0
-- CLOCK_EXT = 0x1
-- CLOCK_INT = 0x2
-- CLOCK_MONOTONIC = 0x1
-- CLOCK_MONOTONIC_COARSE = 0x6
-- CLOCK_MONOTONIC_RAW = 0x4
-- CLOCK_PROCESS_CPUTIME_ID = 0x2
-- CLOCK_REALTIME = 0x0
-- CLOCK_REALTIME_ALARM = 0x8
-- CLOCK_REALTIME_COARSE = 0x5
-- CLOCK_TAI = 0xb
-- CLOCK_THREAD_CPUTIME_ID = 0x3
-- CLOCK_TXFROMRX = 0x4
-- CLOCK_TXINT = 0x3
-- CLONE_CHILD_CLEARTID = 0x200000
-- CLONE_CHILD_SETTID = 0x1000000
-- CLONE_DETACHED = 0x400000
-- CLONE_FILES = 0x400
-- CLONE_FS = 0x200
-- CLONE_IO = 0x80000000
-- CLONE_NEWCGROUP = 0x2000000
-- CLONE_NEWIPC = 0x8000000
-- CLONE_NEWNET = 0x40000000
-- CLONE_NEWNS = 0x20000
-- CLONE_NEWPID = 0x20000000
-- CLONE_NEWUSER = 0x10000000
-- CLONE_NEWUTS = 0x4000000
-- CLONE_PARENT = 0x8000
-- CLONE_PARENT_SETTID = 0x100000
-- CLONE_PTRACE = 0x2000
-- CLONE_SETTLS = 0x80000
-- CLONE_SIGHAND = 0x800
-- CLONE_SYSVSEM = 0x40000
-- CLONE_THREAD = 0x10000
-- CLONE_UNTRACED = 0x800000
-- CLONE_VFORK = 0x4000
-- CLONE_VM = 0x100
-- CMSPAR = 0x40000000
-- CR0 = 0x0
-- CR1 = 0x1000
-- CR2 = 0x2000
-- CR3 = 0x3000
-- CRDLY = 0x3000
-- CREAD = 0x800
-- CRTSCTS = 0x80000000
-- CS5 = 0x0
-- CS6 = 0x100
-- CS7 = 0x200
-- CS8 = 0x300
-- CSIGNAL = 0xff
-- CSIZE = 0x300
-- CSTART = 0x11
-- CSTATUS = 0x0
-- CSTOP = 0x13
-- CSTOPB = 0x400
-- CSUSP = 0x1a
-- DT_BLK = 0x6
-- DT_CHR = 0x2
-- DT_DIR = 0x4
-- DT_FIFO = 0x1
-- DT_LNK = 0xa
-- DT_REG = 0x8
-- DT_SOCK = 0xc
-- DT_UNKNOWN = 0x0
-- DT_WHT = 0xe
-- ECHO = 0x8
-- ECHOCTL = 0x40
-- ECHOE = 0x2
-- ECHOK = 0x4
-- ECHOKE = 0x1
-- ECHONL = 0x10
-- ECHOPRT = 0x20
-- EFD_CLOEXEC = 0x80000
-- EFD_NONBLOCK = 0x800
-- EFD_SEMAPHORE = 0x1
-- ENCODING_DEFAULT = 0x0
-- ENCODING_FM_MARK = 0x3
-- ENCODING_FM_SPACE = 0x4
-- ENCODING_MANCHESTER = 0x5
-- ENCODING_NRZ = 0x1
-- ENCODING_NRZI = 0x2
-- EPOLLERR = 0x8
-- EPOLLET = 0x80000000
-- EPOLLEXCLUSIVE = 0x10000000
-- EPOLLHUP = 0x10
-- EPOLLIN = 0x1
-- EPOLLMSG = 0x400
-- EPOLLONESHOT = 0x40000000
-- EPOLLOUT = 0x4
-- EPOLLPRI = 0x2
-- EPOLLRDBAND = 0x80
-- EPOLLRDHUP = 0x2000
-- EPOLLRDNORM = 0x40
-- EPOLLWAKEUP = 0x20000000
-- EPOLLWRBAND = 0x200
-- EPOLLWRNORM = 0x100
-- EPOLL_CLOEXEC = 0x80000
-- EPOLL_CTL_ADD = 0x1
-- EPOLL_CTL_DEL = 0x2
-- EPOLL_CTL_MOD = 0x3
-- ETH_P_1588 = 0x88f7
-- ETH_P_8021AD = 0x88a8
-- ETH_P_8021AH = 0x88e7
-- ETH_P_8021Q = 0x8100
-- ETH_P_80221 = 0x8917
-- ETH_P_802_2 = 0x4
-- ETH_P_802_3 = 0x1
-- ETH_P_802_3_MIN = 0x600
-- ETH_P_802_EX1 = 0x88b5
-- ETH_P_AARP = 0x80f3
-- ETH_P_AF_IUCV = 0xfbfb
-- ETH_P_ALL = 0x3
-- ETH_P_AOE = 0x88a2
-- ETH_P_ARCNET = 0x1a
-- ETH_P_ARP = 0x806
-- ETH_P_ATALK = 0x809b
-- ETH_P_ATMFATE = 0x8884
-- ETH_P_ATMMPOA = 0x884c
-- ETH_P_AX25 = 0x2
-- ETH_P_BATMAN = 0x4305
-- ETH_P_BPQ = 0x8ff
-- ETH_P_CAIF = 0xf7
-- ETH_P_CAN = 0xc
-- ETH_P_CANFD = 0xd
-- ETH_P_CONTROL = 0x16
-- ETH_P_CUST = 0x6006
-- ETH_P_DDCMP = 0x6
-- ETH_P_DEC = 0x6000
-- ETH_P_DIAG = 0x6005
-- ETH_P_DNA_DL = 0x6001
-- ETH_P_DNA_RC = 0x6002
-- ETH_P_DNA_RT = 0x6003
-- ETH_P_DSA = 0x1b
-- ETH_P_ECONET = 0x18
-- ETH_P_EDSA = 0xdada
-- ETH_P_FCOE = 0x8906
-- ETH_P_FIP = 0x8914
-- ETH_P_HDLC = 0x19
-- ETH_P_HSR = 0x892f
-- ETH_P_IEEE802154 = 0xf6
-- ETH_P_IEEEPUP = 0xa00
-- ETH_P_IEEEPUPAT = 0xa01
-- ETH_P_IP = 0x800
-- ETH_P_IPV6 = 0x86dd
-- ETH_P_IPX = 0x8137
-- ETH_P_IRDA = 0x17
-- ETH_P_LAT = 0x6004
-- ETH_P_LINK_CTL = 0x886c
-- ETH_P_LOCALTALK = 0x9
-- ETH_P_LOOP = 0x60
-- ETH_P_LOOPBACK = 0x9000
-- ETH_P_MACSEC = 0x88e5
-- ETH_P_MOBITEX = 0x15
-- ETH_P_MPLS_MC = 0x8848
-- ETH_P_MPLS_UC = 0x8847
-- ETH_P_MVRP = 0x88f5
-- ETH_P_NCSI = 0x88f8
-- ETH_P_PAE = 0x888e
-- ETH_P_PAUSE = 0x8808
-- ETH_P_PHONET = 0xf5
-- ETH_P_PPPTALK = 0x10
-- ETH_P_PPP_DISC = 0x8863
-- ETH_P_PPP_MP = 0x8
-- ETH_P_PPP_SES = 0x8864
-- ETH_P_PRP = 0x88fb
-- ETH_P_PUP = 0x200
-- ETH_P_PUPAT = 0x201
-- ETH_P_QINQ1 = 0x9100
-- ETH_P_QINQ2 = 0x9200
-- ETH_P_QINQ3 = 0x9300
-- ETH_P_RARP = 0x8035
-- ETH_P_SCA = 0x6007
-- ETH_P_SLOW = 0x8809
-- ETH_P_SNAP = 0x5
-- ETH_P_TDLS = 0x890d
-- ETH_P_TEB = 0x6558
-- ETH_P_TIPC = 0x88ca
-- ETH_P_TRAILER = 0x1c
-- ETH_P_TR_802_2 = 0x11
-- ETH_P_TSN = 0x22f0
-- ETH_P_WAN_PPP = 0x7
-- ETH_P_WCCP = 0x883e
-- ETH_P_X25 = 0x805
-- ETH_P_XDSA = 0xf8
-- EXTA = 0xe
-- EXTB = 0xf
-- EXTPROC = 0x10000000
-- FALLOC_FL_COLLAPSE_RANGE = 0x8
-- FALLOC_FL_INSERT_RANGE = 0x20
-- FALLOC_FL_KEEP_SIZE = 0x1
-- FALLOC_FL_NO_HIDE_STALE = 0x4
-- FALLOC_FL_PUNCH_HOLE = 0x2
-- FALLOC_FL_UNSHARE_RANGE = 0x40
-- FALLOC_FL_ZERO_RANGE = 0x10
-- FD_CLOEXEC = 0x1
-- FD_SETSIZE = 0x400
-- FF0 = 0x0
-- FF1 = 0x4000
-- FFDLY = 0x4000
-- FLUSHO = 0x800000
-- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
-- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
-- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
-- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
-- FS_ENCRYPTION_MODE_INVALID = 0x0
-- FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
-- FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
-- FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
-- FS_KEY_DESCRIPTOR_SIZE = 0x8
-- FS_KEY_DESC_PREFIX = "fscrypt:"
-- FS_KEY_DESC_PREFIX_SIZE = 0x8
-- FS_MAX_KEY_SIZE = 0x40
-- FS_POLICY_FLAGS_PAD_16 = 0x2
-- FS_POLICY_FLAGS_PAD_32 = 0x3
-- FS_POLICY_FLAGS_PAD_4 = 0x0
-- FS_POLICY_FLAGS_PAD_8 = 0x1
-- FS_POLICY_FLAGS_PAD_MASK = 0x3
-- FS_POLICY_FLAGS_VALID = 0x3
-- F_DUPFD = 0x0
-- F_DUPFD_CLOEXEC = 0x406
-- F_EXLCK = 0x4
-- F_GETFD = 0x1
-- F_GETFL = 0x3
-- F_GETLEASE = 0x401
-- F_GETLK = 0x5
-- F_GETLK64 = 0xc
-- F_GETOWN = 0x9
-- F_GETOWN_EX = 0x10
-- F_GETPIPE_SZ = 0x408
-- F_GETSIG = 0xb
-- F_LOCK = 0x1
-- F_NOTIFY = 0x402
-- F_OFD_GETLK = 0x24
-- F_OFD_SETLK = 0x25
-- F_OFD_SETLKW = 0x26
-- F_OK = 0x0
-- F_RDLCK = 0x0
-- F_SETFD = 0x2
-- F_SETFL = 0x4
-- F_SETLEASE = 0x400
-- F_SETLK = 0x6
-- F_SETLK64 = 0xd
-- F_SETLKW = 0x7
-- F_SETLKW64 = 0xe
-- F_SETOWN = 0x8
-- F_SETOWN_EX = 0xf
-- F_SETPIPE_SZ = 0x407
-- F_SETSIG = 0xa
-- F_SHLCK = 0x8
-- F_TEST = 0x3
-- F_TLOCK = 0x2
-- F_ULOCK = 0x0
-- F_UNLCK = 0x2
-- F_WRLCK = 0x1
-- GENL_ADMIN_PERM = 0x1
-- GENL_CMD_CAP_DO = 0x2
-- GENL_CMD_CAP_DUMP = 0x4
-- GENL_CMD_CAP_HASPOL = 0x8
-- GENL_HDRLEN = 0x4
-- GENL_ID_CTRL = 0x10
-- GENL_ID_PMCRAID = 0x12
-- GENL_ID_VFS_DQUOT = 0x11
-- GENL_MAX_ID = 0x3ff
-- GENL_MIN_ID = 0x10
-- GENL_NAMSIZ = 0x10
-- GENL_START_ALLOC = 0x13
-- GENL_UNS_ADMIN_PERM = 0x10
-- GRND_NONBLOCK = 0x1
-- GRND_RANDOM = 0x2
-- HUPCL = 0x4000
-- IBSHIFT = 0x10
-- ICANON = 0x100
-- ICMPV6_FILTER = 0x1
-- ICRNL = 0x100
-- IEXTEN = 0x400
-- IFA_F_DADFAILED = 0x8
-- IFA_F_DEPRECATED = 0x20
-- IFA_F_HOMEADDRESS = 0x10
-- IFA_F_MANAGETEMPADDR = 0x100
-- IFA_F_MCAUTOJOIN = 0x400
-- IFA_F_NODAD = 0x2
-- IFA_F_NOPREFIXROUTE = 0x200
-- IFA_F_OPTIMISTIC = 0x4
-- IFA_F_PERMANENT = 0x80
-- IFA_F_SECONDARY = 0x1
-- IFA_F_STABLE_PRIVACY = 0x800
-- IFA_F_TEMPORARY = 0x1
-- IFA_F_TENTATIVE = 0x40
-- IFA_MAX = 0x8
-- IFF_ALLMULTI = 0x200
-- IFF_ATTACH_QUEUE = 0x200
-- IFF_AUTOMEDIA = 0x4000
-- IFF_BROADCAST = 0x2
-- IFF_DEBUG = 0x4
-- IFF_DETACH_QUEUE = 0x400
-- IFF_DORMANT = 0x20000
-- IFF_DYNAMIC = 0x8000
-- IFF_ECHO = 0x40000
-- IFF_LOOPBACK = 0x8
-- IFF_LOWER_UP = 0x10000
-- IFF_MASTER = 0x400
-- IFF_MULTICAST = 0x1000
-- IFF_MULTI_QUEUE = 0x100
-- IFF_NOARP = 0x80
-- IFF_NOFILTER = 0x1000
-- IFF_NOTRAILERS = 0x20
-- IFF_NO_PI = 0x1000
-- IFF_ONE_QUEUE = 0x2000
-- IFF_PERSIST = 0x800
-- IFF_POINTOPOINT = 0x10
-- IFF_PORTSEL = 0x2000
-- IFF_PROMISC = 0x100
-- IFF_RUNNING = 0x40
-- IFF_SLAVE = 0x800
-- IFF_TAP = 0x2
-- IFF_TUN = 0x1
-- IFF_TUN_EXCL = 0x8000
-- IFF_UP = 0x1
-- IFF_VNET_HDR = 0x4000
-- IFF_VOLATILE = 0x70c5a
-- IFNAMSIZ = 0x10
-- IGNBRK = 0x1
-- IGNCR = 0x80
-- IGNPAR = 0x4
-- IMAXBEL = 0x2000
-- INLCR = 0x40
-- INPCK = 0x10
-- IN_ACCESS = 0x1
-- IN_ALL_EVENTS = 0xfff
-- IN_ATTRIB = 0x4
-- IN_CLASSA_HOST = 0xffffff
-- IN_CLASSA_MAX = 0x80
-- IN_CLASSA_NET = 0xff000000
-- IN_CLASSA_NSHIFT = 0x18
-- IN_CLASSB_HOST = 0xffff
-- IN_CLASSB_MAX = 0x10000
-- IN_CLASSB_NET = 0xffff0000
-- IN_CLASSB_NSHIFT = 0x10
-- IN_CLASSC_HOST = 0xff
-- IN_CLASSC_NET = 0xffffff00
-- IN_CLASSC_NSHIFT = 0x8
-- IN_CLOEXEC = 0x80000
-- IN_CLOSE = 0x18
-- IN_CLOSE_NOWRITE = 0x10
-- IN_CLOSE_WRITE = 0x8
-- IN_CREATE = 0x100
-- IN_DELETE = 0x200
-- IN_DELETE_SELF = 0x400
-- IN_DONT_FOLLOW = 0x2000000
-- IN_EXCL_UNLINK = 0x4000000
-- IN_IGNORED = 0x8000
-- IN_ISDIR = 0x40000000
-- IN_LOOPBACKNET = 0x7f
-- IN_MASK_ADD = 0x20000000
-- IN_MODIFY = 0x2
-- IN_MOVE = 0xc0
-- IN_MOVED_FROM = 0x40
-- IN_MOVED_TO = 0x80
-- IN_MOVE_SELF = 0x800
-- IN_NONBLOCK = 0x800
-- IN_ONESHOT = 0x80000000
-- IN_ONLYDIR = 0x1000000
-- IN_OPEN = 0x20
-- IN_Q_OVERFLOW = 0x4000
-- IN_UNMOUNT = 0x2000
-- IPPROTO_AH = 0x33
-- IPPROTO_BEETPH = 0x5e
-- IPPROTO_COMP = 0x6c
-- IPPROTO_DCCP = 0x21
-- IPPROTO_DSTOPTS = 0x3c
-- IPPROTO_EGP = 0x8
-- IPPROTO_ENCAP = 0x62
-- IPPROTO_ESP = 0x32
-- IPPROTO_FRAGMENT = 0x2c
-- IPPROTO_GRE = 0x2f
-- IPPROTO_HOPOPTS = 0x0
-- IPPROTO_ICMP = 0x1
-- IPPROTO_ICMPV6 = 0x3a
-- IPPROTO_IDP = 0x16
-- IPPROTO_IGMP = 0x2
-- IPPROTO_IP = 0x0
-- IPPROTO_IPIP = 0x4
-- IPPROTO_IPV6 = 0x29
-- IPPROTO_MH = 0x87
-- IPPROTO_MPLS = 0x89
-- IPPROTO_MTP = 0x5c
-- IPPROTO_NONE = 0x3b
-- IPPROTO_PIM = 0x67
-- IPPROTO_PUP = 0xc
-- IPPROTO_RAW = 0xff
-- IPPROTO_ROUTING = 0x2b
-- IPPROTO_RSVP = 0x2e
-- IPPROTO_SCTP = 0x84
-- IPPROTO_TCP = 0x6
-- IPPROTO_TP = 0x1d
-- IPPROTO_UDP = 0x11
-- IPPROTO_UDPLITE = 0x88
-- IPV6_2292DSTOPTS = 0x4
-- IPV6_2292HOPLIMIT = 0x8
-- IPV6_2292HOPOPTS = 0x3
-- IPV6_2292PKTINFO = 0x2
-- IPV6_2292PKTOPTIONS = 0x6
-- IPV6_2292RTHDR = 0x5
-- IPV6_ADDRFORM = 0x1
-- IPV6_ADD_MEMBERSHIP = 0x14
-- IPV6_AUTHHDR = 0xa
-- IPV6_CHECKSUM = 0x7
-- IPV6_DONTFRAG = 0x3e
-- IPV6_DROP_MEMBERSHIP = 0x15
-- IPV6_DSTOPTS = 0x3b
-- IPV6_HDRINCL = 0x24
-- IPV6_HOPLIMIT = 0x34
-- IPV6_HOPOPTS = 0x36
-- IPV6_IPSEC_POLICY = 0x22
-- IPV6_JOIN_ANYCAST = 0x1b
-- IPV6_JOIN_GROUP = 0x14
-- IPV6_LEAVE_ANYCAST = 0x1c
-- IPV6_LEAVE_GROUP = 0x15
-- IPV6_MTU = 0x18
-- IPV6_MTU_DISCOVER = 0x17
-- IPV6_MULTICAST_HOPS = 0x12
-- IPV6_MULTICAST_IF = 0x11
-- IPV6_MULTICAST_LOOP = 0x13
-- IPV6_NEXTHOP = 0x9
-- IPV6_PATHMTU = 0x3d
-- IPV6_PKTINFO = 0x32
-- IPV6_PMTUDISC_DO = 0x2
-- IPV6_PMTUDISC_DONT = 0x0
-- IPV6_PMTUDISC_INTERFACE = 0x4
-- IPV6_PMTUDISC_OMIT = 0x5
-- IPV6_PMTUDISC_PROBE = 0x3
-- IPV6_PMTUDISC_WANT = 0x1
-- IPV6_RECVDSTOPTS = 0x3a
-- IPV6_RECVERR = 0x19
-- IPV6_RECVHOPLIMIT = 0x33
-- IPV6_RECVHOPOPTS = 0x35
-- IPV6_RECVPATHMTU = 0x3c
-- IPV6_RECVPKTINFO = 0x31
-- IPV6_RECVRTHDR = 0x38
-- IPV6_RECVTCLASS = 0x42
-- IPV6_ROUTER_ALERT = 0x16
-- IPV6_RTHDR = 0x39
-- IPV6_RTHDRDSTOPTS = 0x37
-- IPV6_RTHDR_LOOSE = 0x0
-- IPV6_RTHDR_STRICT = 0x1
-- IPV6_RTHDR_TYPE_0 = 0x0
-- IPV6_RXDSTOPTS = 0x3b
-- IPV6_RXHOPOPTS = 0x36
-- IPV6_TCLASS = 0x43
-- IPV6_UNICAST_HOPS = 0x10
-- IPV6_V6ONLY = 0x1a
-- IPV6_XFRM_POLICY = 0x23
-- IP_ADD_MEMBERSHIP = 0x23
-- IP_ADD_SOURCE_MEMBERSHIP = 0x27
-- IP_BIND_ADDRESS_NO_PORT = 0x18
-- IP_BLOCK_SOURCE = 0x26
-- IP_CHECKSUM = 0x17
-- IP_DEFAULT_MULTICAST_LOOP = 0x1
-- IP_DEFAULT_MULTICAST_TTL = 0x1
-- IP_DF = 0x4000
-- IP_DROP_MEMBERSHIP = 0x24
-- IP_DROP_SOURCE_MEMBERSHIP = 0x28
-- IP_FREEBIND = 0xf
-- IP_HDRINCL = 0x3
-- IP_IPSEC_POLICY = 0x10
-- IP_MAXPACKET = 0xffff
-- IP_MAX_MEMBERSHIPS = 0x14
-- IP_MF = 0x2000
-- IP_MINTTL = 0x15
-- IP_MSFILTER = 0x29
-- IP_MSS = 0x240
-- IP_MTU = 0xe
-- IP_MTU_DISCOVER = 0xa
-- IP_MULTICAST_ALL = 0x31
-- IP_MULTICAST_IF = 0x20
-- IP_MULTICAST_LOOP = 0x22
-- IP_MULTICAST_TTL = 0x21
-- IP_NODEFRAG = 0x16
-- IP_OFFMASK = 0x1fff
-- IP_OPTIONS = 0x4
-- IP_ORIGDSTADDR = 0x14
-- IP_PASSSEC = 0x12
-- IP_PKTINFO = 0x8
-- IP_PKTOPTIONS = 0x9
-- IP_PMTUDISC = 0xa
-- IP_PMTUDISC_DO = 0x2
-- IP_PMTUDISC_DONT = 0x0
-- IP_PMTUDISC_INTERFACE = 0x4
-- IP_PMTUDISC_OMIT = 0x5
-- IP_PMTUDISC_PROBE = 0x3
-- IP_PMTUDISC_WANT = 0x1
-- IP_RECVERR = 0xb
-- IP_RECVOPTS = 0x6
-- IP_RECVORIGDSTADDR = 0x14
-- IP_RECVRETOPTS = 0x7
-- IP_RECVTOS = 0xd
-- IP_RECVTTL = 0xc
-- IP_RETOPTS = 0x7
-- IP_RF = 0x8000
-- IP_ROUTER_ALERT = 0x5
-- IP_TOS = 0x1
-- IP_TRANSPARENT = 0x13
-- IP_TTL = 0x2
-- IP_UNBLOCK_SOURCE = 0x25
-- IP_UNICAST_IF = 0x32
-- IP_XFRM_POLICY = 0x11
-- ISIG = 0x80
-- ISTRIP = 0x20
-- IUCLC = 0x1000
-- IUTF8 = 0x4000
-- IXANY = 0x800
-- IXOFF = 0x400
-- IXON = 0x200
-- KEYCTL_ASSUME_AUTHORITY = 0x10
-- KEYCTL_CHOWN = 0x4
-- KEYCTL_CLEAR = 0x7
-- KEYCTL_DESCRIBE = 0x6
-- KEYCTL_DH_COMPUTE = 0x17
-- KEYCTL_GET_KEYRING_ID = 0x0
-- KEYCTL_GET_PERSISTENT = 0x16
-- KEYCTL_GET_SECURITY = 0x11
-- KEYCTL_INSTANTIATE = 0xc
-- KEYCTL_INSTANTIATE_IOV = 0x14
-- KEYCTL_INVALIDATE = 0x15
-- KEYCTL_JOIN_SESSION_KEYRING = 0x1
-- KEYCTL_LINK = 0x8
-- KEYCTL_NEGATE = 0xd
-- KEYCTL_READ = 0xb
-- KEYCTL_REJECT = 0x13
-- KEYCTL_REVOKE = 0x3
-- KEYCTL_SEARCH = 0xa
-- KEYCTL_SESSION_TO_PARENT = 0x12
-- KEYCTL_SETPERM = 0x5
-- KEYCTL_SET_REQKEY_KEYRING = 0xe
-- KEYCTL_SET_TIMEOUT = 0xf
-- KEYCTL_UNLINK = 0x9
-- KEYCTL_UPDATE = 0x2
-- KEY_REQKEY_DEFL_DEFAULT = 0x0
-- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
-- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
-- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
-- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
-- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
-- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
-- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
-- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
-- KEY_SPEC_GROUP_KEYRING = -0x6
-- KEY_SPEC_PROCESS_KEYRING = -0x2
-- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
-- KEY_SPEC_REQUESTOR_KEYRING = -0x8
-- KEY_SPEC_SESSION_KEYRING = -0x3
-- KEY_SPEC_THREAD_KEYRING = -0x1
-- KEY_SPEC_USER_KEYRING = -0x4
-- KEY_SPEC_USER_SESSION_KEYRING = -0x5
-- LINUX_REBOOT_CMD_CAD_OFF = 0x0
-- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
-- LINUX_REBOOT_CMD_HALT = 0xcdef0123
-- LINUX_REBOOT_CMD_KEXEC = 0x45584543
-- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
-- LINUX_REBOOT_CMD_RESTART = 0x1234567
-- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
-- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
-- LINUX_REBOOT_MAGIC1 = 0xfee1dead
-- LINUX_REBOOT_MAGIC2 = 0x28121969
-- LOCK_EX = 0x2
-- LOCK_NB = 0x4
-- LOCK_SH = 0x1
-- LOCK_UN = 0x8
-- MADV_DODUMP = 0x11
-- MADV_DOFORK = 0xb
-- MADV_DONTDUMP = 0x10
-- MADV_DONTFORK = 0xa
-- MADV_DONTNEED = 0x4
-- MADV_FREE = 0x8
-- MADV_HUGEPAGE = 0xe
-- MADV_HWPOISON = 0x64
-- MADV_MERGEABLE = 0xc
-- MADV_NOHUGEPAGE = 0xf
-- MADV_NORMAL = 0x0
-- MADV_RANDOM = 0x1
-- MADV_REMOVE = 0x9
-- MADV_SEQUENTIAL = 0x2
-- MADV_UNMERGEABLE = 0xd
-- MADV_WILLNEED = 0x3
-- MAP_ANON = 0x20
-- MAP_ANONYMOUS = 0x20
-- MAP_DENYWRITE = 0x800
-- MAP_EXECUTABLE = 0x1000
-- MAP_FILE = 0x0
-- MAP_FIXED = 0x10
-- MAP_GROWSDOWN = 0x100
-- MAP_HUGETLB = 0x40000
-- MAP_HUGE_MASK = 0x3f
-- MAP_HUGE_SHIFT = 0x1a
-- MAP_LOCKED = 0x80
-- MAP_NONBLOCK = 0x10000
-- MAP_NORESERVE = 0x40
-- MAP_POPULATE = 0x8000
-- MAP_PRIVATE = 0x2
-- MAP_SHARED = 0x1
-- MAP_STACK = 0x20000
-- MAP_TYPE = 0xf
-- MCL_CURRENT = 0x2000
-- MCL_FUTURE = 0x4000
-- MCL_ONFAULT = 0x8000
-- MNT_DETACH = 0x2
-- MNT_EXPIRE = 0x4
-- MNT_FORCE = 0x1
-- MSG_BATCH = 0x40000
-- MSG_CMSG_CLOEXEC = 0x40000000
-- MSG_CONFIRM = 0x800
-- MSG_CTRUNC = 0x8
-- MSG_DONTROUTE = 0x4
-- MSG_DONTWAIT = 0x40
-- MSG_EOR = 0x80
-- MSG_ERRQUEUE = 0x2000
-- MSG_FASTOPEN = 0x20000000
-- MSG_FIN = 0x200
-- MSG_MORE = 0x8000
-- MSG_NOSIGNAL = 0x4000
-- MSG_OOB = 0x1
-- MSG_PEEK = 0x2
-- MSG_PROXY = 0x10
-- MSG_RST = 0x1000
-- MSG_SYN = 0x400
-- MSG_TRUNC = 0x20
-- MSG_TRYHARD = 0x4
-- MSG_WAITALL = 0x100
-- MSG_WAITFORONE = 0x10000
-- MS_ACTIVE = 0x40000000
-- MS_ASYNC = 0x1
-- MS_BIND = 0x1000
-- MS_BORN = 0x20000000
-- MS_DIRSYNC = 0x80
-- MS_INVALIDATE = 0x2
-- MS_I_VERSION = 0x800000
-- MS_KERNMOUNT = 0x400000
-- MS_LAZYTIME = 0x2000000
-- MS_MANDLOCK = 0x40
-- MS_MGC_MSK = 0xffff0000
-- MS_MGC_VAL = 0xc0ed0000
-- MS_MOVE = 0x2000
-- MS_NOATIME = 0x400
-- MS_NODEV = 0x4
-- MS_NODIRATIME = 0x800
-- MS_NOEXEC = 0x8
-- MS_NOREMOTELOCK = 0x8000000
-- MS_NOSEC = 0x10000000
-- MS_NOSUID = 0x2
-- MS_NOUSER = -0x80000000
-- MS_POSIXACL = 0x10000
-- MS_PRIVATE = 0x40000
-- MS_RDONLY = 0x1
-- MS_REC = 0x4000
-- MS_RELATIME = 0x200000
-- MS_REMOUNT = 0x20
-- MS_RMT_MASK = 0x2800051
-- MS_SHARED = 0x100000
-- MS_SILENT = 0x8000
-- MS_SLAVE = 0x80000
-- MS_STRICTATIME = 0x1000000
-- MS_SYNC = 0x4
-- MS_SYNCHRONOUS = 0x10
-- MS_UNBINDABLE = 0x20000
-- MS_VERBOSE = 0x8000
-- NAME_MAX = 0xff
-- NETLINK_ADD_MEMBERSHIP = 0x1
-- NETLINK_AUDIT = 0x9
-- NETLINK_BROADCAST_ERROR = 0x4
-- NETLINK_CAP_ACK = 0xa
-- NETLINK_CONNECTOR = 0xb
-- NETLINK_CRYPTO = 0x15
-- NETLINK_DNRTMSG = 0xe
-- NETLINK_DROP_MEMBERSHIP = 0x2
-- NETLINK_ECRYPTFS = 0x13
-- NETLINK_FIB_LOOKUP = 0xa
-- NETLINK_FIREWALL = 0x3
-- NETLINK_GENERIC = 0x10
-- NETLINK_INET_DIAG = 0x4
-- NETLINK_IP6_FW = 0xd
-- NETLINK_ISCSI = 0x8
-- NETLINK_KOBJECT_UEVENT = 0xf
-- NETLINK_LISTEN_ALL_NSID = 0x8
-- NETLINK_LIST_MEMBERSHIPS = 0x9
-- NETLINK_NETFILTER = 0xc
-- NETLINK_NFLOG = 0x5
-- NETLINK_NO_ENOBUFS = 0x5
-- NETLINK_PKTINFO = 0x3
-- NETLINK_RDMA = 0x14
-- NETLINK_ROUTE = 0x0
-- NETLINK_RX_RING = 0x6
-- NETLINK_SCSITRANSPORT = 0x12
-- NETLINK_SELINUX = 0x7
-- NETLINK_SOCK_DIAG = 0x4
-- NETLINK_TX_RING = 0x7
-- NETLINK_UNUSED = 0x1
-- NETLINK_USERSOCK = 0x2
-- NETLINK_XFRM = 0x6
-- NL0 = 0x0
-- NL1 = 0x100
-- NL2 = 0x200
-- NL3 = 0x300
-- NLA_ALIGNTO = 0x4
-- NLA_F_NESTED = 0x8000
-- NLA_F_NET_BYTEORDER = 0x4000
-- NLA_HDRLEN = 0x4
-- NLDLY = 0x300
-- NLMSG_ALIGNTO = 0x4
-- NLMSG_DONE = 0x3
-- NLMSG_ERROR = 0x2
-- NLMSG_HDRLEN = 0x10
-- NLMSG_MIN_TYPE = 0x10
-- NLMSG_NOOP = 0x1
-- NLMSG_OVERRUN = 0x4
-- NLM_F_ACK = 0x4
-- NLM_F_APPEND = 0x800
-- NLM_F_ATOMIC = 0x400
-- NLM_F_CREATE = 0x400
-- NLM_F_DUMP = 0x300
-- NLM_F_DUMP_FILTERED = 0x20
-- NLM_F_DUMP_INTR = 0x10
-- NLM_F_ECHO = 0x8
-- NLM_F_EXCL = 0x200
-- NLM_F_MATCH = 0x200
-- NLM_F_MULTI = 0x2
-- NLM_F_REPLACE = 0x100
-- NLM_F_REQUEST = 0x1
-- NLM_F_ROOT = 0x100
-- NOFLSH = 0x80000000
-- OCRNL = 0x8
-- OFDEL = 0x80
-- OFILL = 0x40
-- OLCUC = 0x4
-- ONLCR = 0x2
-- ONLRET = 0x20
-- ONOCR = 0x10
-- OPOST = 0x1
-- O_ACCMODE = 0x3
-- O_APPEND = 0x400
-- O_ASYNC = 0x2000
-- O_CLOEXEC = 0x80000
-- O_CREAT = 0x40
-- O_DIRECT = 0x20000
-- O_DIRECTORY = 0x4000
-- O_DSYNC = 0x1000
-- O_EXCL = 0x80
-- O_FSYNC = 0x101000
-- O_LARGEFILE = 0x0
-- O_NDELAY = 0x800
-- O_NOATIME = 0x40000
-- O_NOCTTY = 0x100
-- O_NOFOLLOW = 0x8000
-- O_NONBLOCK = 0x800
-- O_PATH = 0x200000
-- O_RDONLY = 0x0
-- O_RDWR = 0x2
-- O_RSYNC = 0x101000
-- O_SYNC = 0x101000
-- O_TMPFILE = 0x404000
-- O_TRUNC = 0x200
-- O_WRONLY = 0x1
-- PACKET_ADD_MEMBERSHIP = 0x1
-- PACKET_AUXDATA = 0x8
-- PACKET_BROADCAST = 0x1
-- PACKET_COPY_THRESH = 0x7
-- PACKET_DROP_MEMBERSHIP = 0x2
-- PACKET_FANOUT = 0x12
-- PACKET_FANOUT_CBPF = 0x6
-- PACKET_FANOUT_CPU = 0x2
-- PACKET_FANOUT_DATA = 0x16
-- PACKET_FANOUT_EBPF = 0x7
-- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
-- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
-- PACKET_FANOUT_HASH = 0x0
-- PACKET_FANOUT_LB = 0x1
-- PACKET_FANOUT_QM = 0x5
-- PACKET_FANOUT_RND = 0x4
-- PACKET_FANOUT_ROLLOVER = 0x3
-- PACKET_FASTROUTE = 0x6
-- PACKET_HDRLEN = 0xb
-- PACKET_HOST = 0x0
-- PACKET_KERNEL = 0x7
-- PACKET_LOOPBACK = 0x5
-- PACKET_LOSS = 0xe
-- PACKET_MR_ALLMULTI = 0x2
-- PACKET_MR_MULTICAST = 0x0
-- PACKET_MR_PROMISC = 0x1
-- PACKET_MR_UNICAST = 0x3
-- PACKET_MULTICAST = 0x2
-- PACKET_ORIGDEV = 0x9
-- PACKET_OTHERHOST = 0x3
-- PACKET_OUTGOING = 0x4
-- PACKET_QDISC_BYPASS = 0x14
-- PACKET_RECV_OUTPUT = 0x3
-- PACKET_RESERVE = 0xc
-- PACKET_ROLLOVER_STATS = 0x15
-- PACKET_RX_RING = 0x5
-- PACKET_STATISTICS = 0x6
-- PACKET_TIMESTAMP = 0x11
-- PACKET_TX_HAS_OFF = 0x13
-- PACKET_TX_RING = 0xd
-- PACKET_TX_TIMESTAMP = 0x10
-- PACKET_USER = 0x6
-- PACKET_VERSION = 0xa
-- PACKET_VNET_HDR = 0xf
-- PARENB = 0x1000
-- PARITY_CRC16_PR0 = 0x2
-- PARITY_CRC16_PR0_CCITT = 0x4
-- PARITY_CRC16_PR1 = 0x3
-- PARITY_CRC16_PR1_CCITT = 0x5
-- PARITY_CRC32_PR0_CCITT = 0x6
-- PARITY_CRC32_PR1_CCITT = 0x7
-- PARITY_DEFAULT = 0x0
-- PARITY_NONE = 0x1
-- PARMRK = 0x8
-- PARODD = 0x2000
-- PENDIN = 0x20000000
-- PERF_EVENT_IOC_DISABLE = 0x20002401
-- PERF_EVENT_IOC_ENABLE = 0x20002400
-- PERF_EVENT_IOC_ID = 0x40082407
-- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
-- PERF_EVENT_IOC_PERIOD = 0x80082404
-- PERF_EVENT_IOC_REFRESH = 0x20002402
-- PERF_EVENT_IOC_RESET = 0x20002403
-- PERF_EVENT_IOC_SET_BPF = 0x80042408
-- PERF_EVENT_IOC_SET_FILTER = 0x80082406
-- PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
-- PRIO_PGRP = 0x1
-- PRIO_PROCESS = 0x0
-- PRIO_USER = 0x2
-- PROT_EXEC = 0x4
-- PROT_GROWSDOWN = 0x1000000
-- PROT_GROWSUP = 0x2000000
-- PROT_NONE = 0x0
-- PROT_READ = 0x1
-- PROT_SAO = 0x10
-- PROT_WRITE = 0x2
-- PR_CAPBSET_DROP = 0x18
-- PR_CAPBSET_READ = 0x17
-- PR_CAP_AMBIENT = 0x2f
-- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
-- PR_CAP_AMBIENT_IS_SET = 0x1
-- PR_CAP_AMBIENT_LOWER = 0x3
-- PR_CAP_AMBIENT_RAISE = 0x2
-- PR_ENDIAN_BIG = 0x0
-- PR_ENDIAN_LITTLE = 0x1
-- PR_ENDIAN_PPC_LITTLE = 0x2
-- PR_FPEMU_NOPRINT = 0x1
-- PR_FPEMU_SIGFPE = 0x2
-- PR_FP_EXC_ASYNC = 0x2
-- PR_FP_EXC_DISABLED = 0x0
-- PR_FP_EXC_DIV = 0x10000
-- PR_FP_EXC_INV = 0x100000
-- PR_FP_EXC_NONRECOV = 0x1
-- PR_FP_EXC_OVF = 0x20000
-- PR_FP_EXC_PRECISE = 0x3
-- PR_FP_EXC_RES = 0x80000
-- PR_FP_EXC_SW_ENABLE = 0x80
-- PR_FP_EXC_UND = 0x40000
-- PR_FP_MODE_FR = 0x1
-- PR_FP_MODE_FRE = 0x2
-- PR_GET_CHILD_SUBREAPER = 0x25
-- PR_GET_DUMPABLE = 0x3
-- PR_GET_ENDIAN = 0x13
-- PR_GET_FPEMU = 0x9
-- PR_GET_FPEXC = 0xb
-- PR_GET_FP_MODE = 0x2e
-- PR_GET_KEEPCAPS = 0x7
-- PR_GET_NAME = 0x10
-- PR_GET_NO_NEW_PRIVS = 0x27
-- PR_GET_PDEATHSIG = 0x2
-- PR_GET_SECCOMP = 0x15
-- PR_GET_SECUREBITS = 0x1b
-- PR_GET_THP_DISABLE = 0x2a
-- PR_GET_TID_ADDRESS = 0x28
-- PR_GET_TIMERSLACK = 0x1e
-- PR_GET_TIMING = 0xd
-- PR_GET_TSC = 0x19
-- PR_GET_UNALIGN = 0x5
-- PR_MCE_KILL = 0x21
-- PR_MCE_KILL_CLEAR = 0x0
-- PR_MCE_KILL_DEFAULT = 0x2
-- PR_MCE_KILL_EARLY = 0x1
-- PR_MCE_KILL_GET = 0x22
-- PR_MCE_KILL_LATE = 0x0
-- PR_MCE_KILL_SET = 0x1
-- PR_MPX_DISABLE_MANAGEMENT = 0x2c
-- PR_MPX_ENABLE_MANAGEMENT = 0x2b
-- PR_SET_CHILD_SUBREAPER = 0x24
-- PR_SET_DUMPABLE = 0x4
-- PR_SET_ENDIAN = 0x14
-- PR_SET_FPEMU = 0xa
-- PR_SET_FPEXC = 0xc
-- PR_SET_FP_MODE = 0x2d
-- PR_SET_KEEPCAPS = 0x8
-- PR_SET_MM = 0x23
-- PR_SET_MM_ARG_END = 0x9
-- PR_SET_MM_ARG_START = 0x8
-- PR_SET_MM_AUXV = 0xc
-- PR_SET_MM_BRK = 0x7
-- PR_SET_MM_END_CODE = 0x2
-- PR_SET_MM_END_DATA = 0x4
-- PR_SET_MM_ENV_END = 0xb
-- PR_SET_MM_ENV_START = 0xa
-- PR_SET_MM_EXE_FILE = 0xd
-- PR_SET_MM_MAP = 0xe
-- PR_SET_MM_MAP_SIZE = 0xf
-- PR_SET_MM_START_BRK = 0x6
-- PR_SET_MM_START_CODE = 0x1
-- PR_SET_MM_START_DATA = 0x3
-- PR_SET_MM_START_STACK = 0x5
-- PR_SET_NAME = 0xf
-- PR_SET_NO_NEW_PRIVS = 0x26
-- PR_SET_PDEATHSIG = 0x1
-- PR_SET_PTRACER = 0x59616d61
-- PR_SET_PTRACER_ANY = -0x1
-- PR_SET_SECCOMP = 0x16
-- PR_SET_SECUREBITS = 0x1c
-- PR_SET_THP_DISABLE = 0x29
-- PR_SET_TIMERSLACK = 0x1d
-- PR_SET_TIMING = 0xe
-- PR_SET_TSC = 0x1a
-- PR_SET_UNALIGN = 0x6
-- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
-- PR_TASK_PERF_EVENTS_ENABLE = 0x20
-- PR_TIMING_STATISTICAL = 0x0
-- PR_TIMING_TIMESTAMP = 0x1
-- PR_TSC_ENABLE = 0x1
-- PR_TSC_SIGSEGV = 0x2
-- PR_UNALIGN_NOPRINT = 0x1
-- PR_UNALIGN_SIGBUS = 0x2
-- PTRACE_ATTACH = 0x10
-- PTRACE_CONT = 0x7
-- PTRACE_DETACH = 0x11
-- PTRACE_EVENT_CLONE = 0x3
-- PTRACE_EVENT_EXEC = 0x4
-- PTRACE_EVENT_EXIT = 0x6
-- PTRACE_EVENT_FORK = 0x1
-- PTRACE_EVENT_SECCOMP = 0x7
-- PTRACE_EVENT_STOP = 0x80
-- PTRACE_EVENT_VFORK = 0x2
-- PTRACE_EVENT_VFORK_DONE = 0x5
-- PTRACE_GETEVENTMSG = 0x4201
-- PTRACE_GETEVRREGS = 0x14
-- PTRACE_GETFPREGS = 0xe
-- PTRACE_GETREGS = 0xc
-- PTRACE_GETREGS64 = 0x16
-- PTRACE_GETREGSET = 0x4204
-- PTRACE_GETSIGINFO = 0x4202
-- PTRACE_GETSIGMASK = 0x420a
-- PTRACE_GETVRREGS = 0x12
-- PTRACE_GETVSRREGS = 0x1b
-- PTRACE_GET_DEBUGREG = 0x19
-- PTRACE_INTERRUPT = 0x4207
-- PTRACE_KILL = 0x8
-- PTRACE_LISTEN = 0x4208
-- PTRACE_O_EXITKILL = 0x100000
-- PTRACE_O_MASK = 0x3000ff
-- PTRACE_O_SUSPEND_SECCOMP = 0x200000
-- PTRACE_O_TRACECLONE = 0x8
-- PTRACE_O_TRACEEXEC = 0x10
-- PTRACE_O_TRACEEXIT = 0x40
-- PTRACE_O_TRACEFORK = 0x2
-- PTRACE_O_TRACESECCOMP = 0x80
-- PTRACE_O_TRACESYSGOOD = 0x1
-- PTRACE_O_TRACEVFORK = 0x4
-- PTRACE_O_TRACEVFORKDONE = 0x20
-- PTRACE_PEEKDATA = 0x2
-- PTRACE_PEEKSIGINFO = 0x4209
-- PTRACE_PEEKSIGINFO_SHARED = 0x1
-- PTRACE_PEEKTEXT = 0x1
-- PTRACE_PEEKUSR = 0x3
-- PTRACE_POKEDATA = 0x5
-- PTRACE_POKETEXT = 0x4
-- PTRACE_POKEUSR = 0x6
-- PTRACE_SECCOMP_GET_FILTER = 0x420c
-- PTRACE_SEIZE = 0x4206
-- PTRACE_SETEVRREGS = 0x15
-- PTRACE_SETFPREGS = 0xf
-- PTRACE_SETOPTIONS = 0x4200
-- PTRACE_SETREGS = 0xd
-- PTRACE_SETREGS64 = 0x17
-- PTRACE_SETREGSET = 0x4205
-- PTRACE_SETSIGINFO = 0x4203
-- PTRACE_SETSIGMASK = 0x420b
-- PTRACE_SETVRREGS = 0x13
-- PTRACE_SETVSRREGS = 0x1c
-- PTRACE_SET_DEBUGREG = 0x1a
-- PTRACE_SINGLEBLOCK = 0x100
-- PTRACE_SINGLESTEP = 0x9
-- PTRACE_SYSCALL = 0x18
-- PTRACE_TRACEME = 0x0
-- PT_CCR = 0x26
-- PT_CTR = 0x23
-- PT_DAR = 0x29
-- PT_DSCR = 0x2c
-- PT_DSISR = 0x2a
-- PT_FPR0 = 0x30
-- PT_FPSCR = 0x50
-- PT_LNK = 0x24
-- PT_MSR = 0x21
-- PT_NIP = 0x20
-- PT_ORIG_R3 = 0x22
-- PT_R0 = 0x0
-- PT_R1 = 0x1
-- PT_R10 = 0xa
-- PT_R11 = 0xb
-- PT_R12 = 0xc
-- PT_R13 = 0xd
-- PT_R14 = 0xe
-- PT_R15 = 0xf
-- PT_R16 = 0x10
-- PT_R17 = 0x11
-- PT_R18 = 0x12
-- PT_R19 = 0x13
-- PT_R2 = 0x2
-- PT_R20 = 0x14
-- PT_R21 = 0x15
-- PT_R22 = 0x16
-- PT_R23 = 0x17
-- PT_R24 = 0x18
-- PT_R25 = 0x19
-- PT_R26 = 0x1a
-- PT_R27 = 0x1b
-- PT_R28 = 0x1c
-- PT_R29 = 0x1d
-- PT_R3 = 0x3
-- PT_R30 = 0x1e
-- PT_R31 = 0x1f
-- PT_R4 = 0x4
-- PT_R5 = 0x5
-- PT_R6 = 0x6
-- PT_R7 = 0x7
-- PT_R8 = 0x8
-- PT_R9 = 0x9
-- PT_REGS_COUNT = 0x2c
-- PT_RESULT = 0x2b
-- PT_SOFTE = 0x27
-- PT_TRAP = 0x28
-- PT_VR0 = 0x52
-- PT_VRSAVE = 0x94
-- PT_VSCR = 0x93
-- PT_VSR0 = 0x96
-- PT_VSR31 = 0xd4
-- PT_XER = 0x25
-- RLIMIT_AS = 0x9
-- RLIMIT_CORE = 0x4
-- RLIMIT_CPU = 0x0
-- RLIMIT_DATA = 0x2
-- RLIMIT_FSIZE = 0x1
-- RLIMIT_LOCKS = 0xa
-- RLIMIT_MEMLOCK = 0x8
-- RLIMIT_MSGQUEUE = 0xc
-- RLIMIT_NICE = 0xd
-- RLIMIT_NOFILE = 0x7
-- RLIMIT_NPROC = 0x6
-- RLIMIT_RSS = 0x5
-- RLIMIT_RTPRIO = 0xe
-- RLIMIT_RTTIME = 0xf
-- RLIMIT_SIGPENDING = 0xb
-- RLIMIT_STACK = 0x3
-- RLIM_INFINITY = -0x1
-- RTAX_ADVMSS = 0x8
-- RTAX_CC_ALGO = 0x10
-- RTAX_CWND = 0x7
-- RTAX_FEATURES = 0xc
-- RTAX_FEATURE_ALLFRAG = 0x8
-- RTAX_FEATURE_ECN = 0x1
-- RTAX_FEATURE_MASK = 0xf
-- RTAX_FEATURE_SACK = 0x2
-- RTAX_FEATURE_TIMESTAMP = 0x4
-- RTAX_HOPLIMIT = 0xa
-- RTAX_INITCWND = 0xb
-- RTAX_INITRWND = 0xe
-- RTAX_LOCK = 0x1
-- RTAX_MAX = 0x10
-- RTAX_MTU = 0x2
-- RTAX_QUICKACK = 0xf
-- RTAX_REORDERING = 0x9
-- RTAX_RTO_MIN = 0xd
-- RTAX_RTT = 0x4
-- RTAX_RTTVAR = 0x5
-- RTAX_SSTHRESH = 0x6
-- RTAX_UNSPEC = 0x0
-- RTAX_WINDOW = 0x3
-- RTA_ALIGNTO = 0x4
-- RTA_MAX = 0x19
-- RTCF_DIRECTSRC = 0x4000000
-- RTCF_DOREDIRECT = 0x1000000
-- RTCF_LOG = 0x2000000
-- RTCF_MASQ = 0x400000
-- RTCF_NAT = 0x800000
-- RTCF_VALVE = 0x200000
-- RTF_ADDRCLASSMASK = 0xf8000000
-- RTF_ADDRCONF = 0x40000
-- RTF_ALLONLINK = 0x20000
-- RTF_BROADCAST = 0x10000000
-- RTF_CACHE = 0x1000000
-- RTF_DEFAULT = 0x10000
-- RTF_DYNAMIC = 0x10
-- RTF_FLOW = 0x2000000
-- RTF_GATEWAY = 0x2
-- RTF_HOST = 0x4
-- RTF_INTERFACE = 0x40000000
-- RTF_IRTT = 0x100
-- RTF_LINKRT = 0x100000
-- RTF_LOCAL = 0x80000000
-- RTF_MODIFIED = 0x20
-- RTF_MSS = 0x40
-- RTF_MTU = 0x40
-- RTF_MULTICAST = 0x20000000
-- RTF_NAT = 0x8000000
-- RTF_NOFORWARD = 0x1000
-- RTF_NONEXTHOP = 0x200000
-- RTF_NOPMTUDISC = 0x4000
-- RTF_POLICY = 0x4000000
-- RTF_REINSTATE = 0x8
-- RTF_REJECT = 0x200
-- RTF_STATIC = 0x400
-- RTF_THROW = 0x2000
-- RTF_UP = 0x1
-- RTF_WINDOW = 0x80
-- RTF_XRESOLVE = 0x800
-- RTM_BASE = 0x10
-- RTM_DELACTION = 0x31
-- RTM_DELADDR = 0x15
-- RTM_DELADDRLABEL = 0x49
-- RTM_DELLINK = 0x11
-- RTM_DELMDB = 0x55
-- RTM_DELNEIGH = 0x1d
-- RTM_DELNSID = 0x59
-- RTM_DELQDISC = 0x25
-- RTM_DELROUTE = 0x19
-- RTM_DELRULE = 0x21
-- RTM_DELTCLASS = 0x29
-- RTM_DELTFILTER = 0x2d
-- RTM_F_CLONED = 0x200
-- RTM_F_EQUALIZE = 0x400
-- RTM_F_LOOKUP_TABLE = 0x1000
-- RTM_F_NOTIFY = 0x100
-- RTM_F_PREFIX = 0x800
-- RTM_GETACTION = 0x32
-- RTM_GETADDR = 0x16
-- RTM_GETADDRLABEL = 0x4a
-- RTM_GETANYCAST = 0x3e
-- RTM_GETDCB = 0x4e
-- RTM_GETLINK = 0x12
-- RTM_GETMDB = 0x56
-- RTM_GETMULTICAST = 0x3a
-- RTM_GETNEIGH = 0x1e
-- RTM_GETNEIGHTBL = 0x42
-- RTM_GETNETCONF = 0x52
-- RTM_GETNSID = 0x5a
-- RTM_GETQDISC = 0x26
-- RTM_GETROUTE = 0x1a
-- RTM_GETRULE = 0x22
-- RTM_GETSTATS = 0x5e
-- RTM_GETTCLASS = 0x2a
-- RTM_GETTFILTER = 0x2e
-- RTM_MAX = 0x5f
-- RTM_NEWACTION = 0x30
-- RTM_NEWADDR = 0x14
-- RTM_NEWADDRLABEL = 0x48
-- RTM_NEWLINK = 0x10
-- RTM_NEWMDB = 0x54
-- RTM_NEWNDUSEROPT = 0x44
-- RTM_NEWNEIGH = 0x1c
-- RTM_NEWNEIGHTBL = 0x40
-- RTM_NEWNETCONF = 0x50
-- RTM_NEWNSID = 0x58
-- RTM_NEWPREFIX = 0x34
-- RTM_NEWQDISC = 0x24
-- RTM_NEWROUTE = 0x18
-- RTM_NEWRULE = 0x20
-- RTM_NEWSTATS = 0x5c
-- RTM_NEWTCLASS = 0x28
-- RTM_NEWTFILTER = 0x2c
-- RTM_NR_FAMILIES = 0x14
-- RTM_NR_MSGTYPES = 0x50
-- RTM_SETDCB = 0x4f
-- RTM_SETLINK = 0x13
-- RTM_SETNEIGHTBL = 0x43
-- RTNH_ALIGNTO = 0x4
-- RTNH_COMPARE_MASK = 0x19
-- RTNH_F_DEAD = 0x1
-- RTNH_F_LINKDOWN = 0x10
-- RTNH_F_OFFLOAD = 0x8
-- RTNH_F_ONLINK = 0x4
-- RTNH_F_PERVASIVE = 0x2
-- RTN_MAX = 0xb
-- RTPROT_BABEL = 0x2a
-- RTPROT_BIRD = 0xc
-- RTPROT_BOOT = 0x3
-- RTPROT_DHCP = 0x10
-- RTPROT_DNROUTED = 0xd
-- RTPROT_GATED = 0x8
-- RTPROT_KERNEL = 0x2
-- RTPROT_MROUTED = 0x11
-- RTPROT_MRT = 0xa
-- RTPROT_NTK = 0xf
-- RTPROT_RA = 0x9
-- RTPROT_REDIRECT = 0x1
-- RTPROT_STATIC = 0x4
-- RTPROT_UNSPEC = 0x0
-- RTPROT_XORP = 0xe
-- RTPROT_ZEBRA = 0xb
-- RT_CLASS_DEFAULT = 0xfd
-- RT_CLASS_LOCAL = 0xff
-- RT_CLASS_MAIN = 0xfe
-- RT_CLASS_MAX = 0xff
-- RT_CLASS_UNSPEC = 0x0
-- RUSAGE_CHILDREN = -0x1
-- RUSAGE_SELF = 0x0
-- RUSAGE_THREAD = 0x1
-- SCM_CREDENTIALS = 0x2
-- SCM_RIGHTS = 0x1
-- SCM_TIMESTAMP = 0x1d
-- SCM_TIMESTAMPING = 0x25
-- SCM_TIMESTAMPING_OPT_STATS = 0x36
-- SCM_TIMESTAMPNS = 0x23
-- SCM_WIFI_STATUS = 0x29
-- SECCOMP_MODE_DISABLED = 0x0
-- SECCOMP_MODE_FILTER = 0x2
-- SECCOMP_MODE_STRICT = 0x1
-- SHUT_RD = 0x0
-- SHUT_RDWR = 0x2
-- SHUT_WR = 0x1
-- SIOCADDDLCI = 0x8980
-- SIOCADDMULTI = 0x8931
-- SIOCADDRT = 0x890b
-- SIOCATMARK = 0x8905
-- SIOCBONDCHANGEACTIVE = 0x8995
-- SIOCBONDENSLAVE = 0x8990
-- SIOCBONDINFOQUERY = 0x8994
-- SIOCBONDRELEASE = 0x8991
-- SIOCBONDSETHWADDR = 0x8992
-- SIOCBONDSLAVEINFOQUERY = 0x8993
-- SIOCBRADDBR = 0x89a0
-- SIOCBRADDIF = 0x89a2
-- SIOCBRDELBR = 0x89a1
-- SIOCBRDELIF = 0x89a3
-- SIOCDARP = 0x8953
-- SIOCDELDLCI = 0x8981
-- SIOCDELMULTI = 0x8932
-- SIOCDELRT = 0x890c
-- SIOCDEVPRIVATE = 0x89f0
-- SIOCDIFADDR = 0x8936
-- SIOCDRARP = 0x8960
-- SIOCETHTOOL = 0x8946
-- SIOCGARP = 0x8954
-- SIOCGHWTSTAMP = 0x89b1
-- SIOCGIFADDR = 0x8915
-- SIOCGIFBR = 0x8940
-- SIOCGIFBRDADDR = 0x8919
-- SIOCGIFCONF = 0x8912
-- SIOCGIFCOUNT = 0x8938
-- SIOCGIFDSTADDR = 0x8917
-- SIOCGIFENCAP = 0x8925
-- SIOCGIFFLAGS = 0x8913
-- SIOCGIFHWADDR = 0x8927
-- SIOCGIFINDEX = 0x8933
-- SIOCGIFMAP = 0x8970
-- SIOCGIFMEM = 0x891f
-- SIOCGIFMETRIC = 0x891d
-- SIOCGIFMTU = 0x8921
-- SIOCGIFNAME = 0x8910
-- SIOCGIFNETMASK = 0x891b
-- SIOCGIFPFLAGS = 0x8935
-- SIOCGIFSLAVE = 0x8929
-- SIOCGIFTXQLEN = 0x8942
-- SIOCGIFVLAN = 0x8982
-- SIOCGMIIPHY = 0x8947
-- SIOCGMIIREG = 0x8948
-- SIOCGPGRP = 0x8904
-- SIOCGRARP = 0x8961
-- SIOCGSKNS = 0x894c
-- SIOCGSTAMP = 0x8906
-- SIOCGSTAMPNS = 0x8907
-- SIOCINQ = 0x4004667f
-- SIOCOUTQ = 0x40047473
-- SIOCOUTQNSD = 0x894b
-- SIOCPROTOPRIVATE = 0x89e0
-- SIOCRTMSG = 0x890d
-- SIOCSARP = 0x8955
-- SIOCSHWTSTAMP = 0x89b0
-- SIOCSIFADDR = 0x8916
-- SIOCSIFBR = 0x8941
-- SIOCSIFBRDADDR = 0x891a
-- SIOCSIFDSTADDR = 0x8918
-- SIOCSIFENCAP = 0x8926
-- SIOCSIFFLAGS = 0x8914
-- SIOCSIFHWADDR = 0x8924
-- SIOCSIFHWBROADCAST = 0x8937
-- SIOCSIFLINK = 0x8911
-- SIOCSIFMAP = 0x8971
-- SIOCSIFMEM = 0x8920
-- SIOCSIFMETRIC = 0x891e
-- SIOCSIFMTU = 0x8922
-- SIOCSIFNAME = 0x8923
-- SIOCSIFNETMASK = 0x891c
-- SIOCSIFPFLAGS = 0x8934
-- SIOCSIFSLAVE = 0x8930
-- SIOCSIFTXQLEN = 0x8943
-- SIOCSIFVLAN = 0x8983
-- SIOCSMIIREG = 0x8949
-- SIOCSPGRP = 0x8902
-- SIOCSRARP = 0x8962
-- SIOCWANDEV = 0x894a
-- SOCK_CLOEXEC = 0x80000
-- SOCK_DCCP = 0x6
-- SOCK_DGRAM = 0x2
-- SOCK_IOC_TYPE = 0x89
-- SOCK_NONBLOCK = 0x800
-- SOCK_PACKET = 0xa
-- SOCK_RAW = 0x3
-- SOCK_RDM = 0x4
-- SOCK_SEQPACKET = 0x5
-- SOCK_STREAM = 0x1
-- SOL_AAL = 0x109
-- SOL_ALG = 0x117
-- SOL_ATM = 0x108
-- SOL_CAIF = 0x116
-- SOL_CAN_BASE = 0x64
-- SOL_DCCP = 0x10d
-- SOL_DECNET = 0x105
-- SOL_ICMPV6 = 0x3a
-- SOL_IP = 0x0
-- SOL_IPV6 = 0x29
-- SOL_IRDA = 0x10a
-- SOL_IUCV = 0x115
-- SOL_KCM = 0x119
-- SOL_LLC = 0x10c
-- SOL_NETBEUI = 0x10b
-- SOL_NETLINK = 0x10e
-- SOL_NFC = 0x118
-- SOL_PACKET = 0x107
-- SOL_PNPIPE = 0x113
-- SOL_PPPOL2TP = 0x111
-- SOL_RAW = 0xff
-- SOL_RDS = 0x114
-- SOL_RXRPC = 0x110
-- SOL_SOCKET = 0x1
-- SOL_TCP = 0x6
-- SOL_TIPC = 0x10f
-- SOL_X25 = 0x106
-- SOMAXCONN = 0x80
-- SO_ACCEPTCONN = 0x1e
-- SO_ATTACH_BPF = 0x32
-- SO_ATTACH_FILTER = 0x1a
-- SO_ATTACH_REUSEPORT_CBPF = 0x33
-- SO_ATTACH_REUSEPORT_EBPF = 0x34
-- SO_BINDTODEVICE = 0x19
-- SO_BPF_EXTENSIONS = 0x30
-- SO_BROADCAST = 0x6
-- SO_BSDCOMPAT = 0xe
-- SO_BUSY_POLL = 0x2e
-- SO_CNX_ADVICE = 0x35
-- SO_DEBUG = 0x1
-- SO_DETACH_BPF = 0x1b
-- SO_DETACH_FILTER = 0x1b
-- SO_DOMAIN = 0x27
-- SO_DONTROUTE = 0x5
-- SO_ERROR = 0x4
-- SO_GET_FILTER = 0x1a
-- SO_INCOMING_CPU = 0x31
-- SO_KEEPALIVE = 0x9
-- SO_LINGER = 0xd
-- SO_LOCK_FILTER = 0x2c
-- SO_MARK = 0x24
-- SO_MAX_PACING_RATE = 0x2f
-- SO_NOFCS = 0x2b
-- SO_NO_CHECK = 0xb
-- SO_OOBINLINE = 0xa
-- SO_PASSCRED = 0x14
-- SO_PASSSEC = 0x22
-- SO_PEEK_OFF = 0x2a
-- SO_PEERCRED = 0x15
-- SO_PEERNAME = 0x1c
-- SO_PEERSEC = 0x1f
-- SO_PRIORITY = 0xc
-- SO_PROTOCOL = 0x26
-- SO_RCVBUF = 0x8
-- SO_RCVBUFFORCE = 0x21
-- SO_RCVLOWAT = 0x10
-- SO_RCVTIMEO = 0x12
-- SO_REUSEADDR = 0x2
-- SO_REUSEPORT = 0xf
-- SO_RXQ_OVFL = 0x28
-- SO_SECURITY_AUTHENTICATION = 0x16
-- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-- SO_SELECT_ERR_QUEUE = 0x2d
-- SO_SNDBUF = 0x7
-- SO_SNDBUFFORCE = 0x20
-- SO_SNDLOWAT = 0x11
-- SO_SNDTIMEO = 0x13
-- SO_TIMESTAMP = 0x1d
-- SO_TIMESTAMPING = 0x25
-- SO_TIMESTAMPNS = 0x23
-- SO_TYPE = 0x3
-- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
-- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
-- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
-- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
-- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
-- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
-- SO_VM_SOCKETS_TRUSTED = 0x5
-- SO_WIFI_STATUS = 0x29
-- SPLICE_F_GIFT = 0x8
-- SPLICE_F_MORE = 0x4
-- SPLICE_F_MOVE = 0x1
-- SPLICE_F_NONBLOCK = 0x2
-- S_BLKSIZE = 0x200
-- S_IEXEC = 0x40
-- S_IFBLK = 0x6000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFIFO = 0x1000
-- S_IFLNK = 0xa000
-- S_IFMT = 0xf000
-- S_IFREG = 0x8000
-- S_IFSOCK = 0xc000
-- S_IREAD = 0x100
-- S_IRGRP = 0x20
-- S_IROTH = 0x4
-- S_IRUSR = 0x100
-- S_IRWXG = 0x38
-- S_IRWXO = 0x7
-- S_IRWXU = 0x1c0
-- S_ISGID = 0x400
-- S_ISUID = 0x800
-- S_ISVTX = 0x200
-- S_IWGRP = 0x10
-- S_IWOTH = 0x2
-- S_IWRITE = 0x80
-- S_IWUSR = 0x80
-- S_IXGRP = 0x8
-- S_IXOTH = 0x1
-- S_IXUSR = 0x40
-- TAB0 = 0x0
-- TAB1 = 0x400
-- TAB2 = 0x800
-- TAB3 = 0xc00
-- TABDLY = 0xc00
-- TASKSTATS_CMD_ATTR_MAX = 0x4
-- TASKSTATS_CMD_MAX = 0x2
-- TASKSTATS_GENL_NAME = "TASKSTATS"
-- TASKSTATS_GENL_VERSION = 0x1
-- TASKSTATS_TYPE_MAX = 0x6
-- TASKSTATS_VERSION = 0x8
-- TCFLSH = 0x2000741f
-- TCGETA = 0x40147417
-- TCGETS = 0x402c7413
-- TCIFLUSH = 0x0
-- TCIOFF = 0x2
-- TCIOFLUSH = 0x2
-- TCION = 0x3
-- TCOFLUSH = 0x1
-- TCOOFF = 0x0
-- TCOON = 0x1
-- TCP_CC_INFO = 0x1a
-- TCP_CONGESTION = 0xd
-- TCP_COOKIE_IN_ALWAYS = 0x1
-- TCP_COOKIE_MAX = 0x10
-- TCP_COOKIE_MIN = 0x8
-- TCP_COOKIE_OUT_NEVER = 0x2
-- TCP_COOKIE_PAIR_SIZE = 0x20
-- TCP_COOKIE_TRANSACTIONS = 0xf
-- TCP_CORK = 0x3
-- TCP_DEFER_ACCEPT = 0x9
-- TCP_FASTOPEN = 0x17
-- TCP_INFO = 0xb
-- TCP_KEEPCNT = 0x6
-- TCP_KEEPIDLE = 0x4
-- TCP_KEEPINTVL = 0x5
-- TCP_LINGER2 = 0x8
-- TCP_MAXSEG = 0x2
-- TCP_MAXWIN = 0xffff
-- TCP_MAX_WINSHIFT = 0xe
-- TCP_MD5SIG = 0xe
-- TCP_MD5SIG_MAXKEYLEN = 0x50
-- TCP_MSS = 0x200
-- TCP_MSS_DEFAULT = 0x218
-- TCP_MSS_DESIRED = 0x4c4
-- TCP_NODELAY = 0x1
-- TCP_NOTSENT_LOWAT = 0x19
-- TCP_QUEUE_SEQ = 0x15
-- TCP_QUICKACK = 0xc
-- TCP_REPAIR = 0x13
-- TCP_REPAIR_OPTIONS = 0x16
-- TCP_REPAIR_QUEUE = 0x14
-- TCP_REPAIR_WINDOW = 0x1d
-- TCP_SAVED_SYN = 0x1c
-- TCP_SAVE_SYN = 0x1b
-- TCP_SYNCNT = 0x7
-- TCP_S_DATA_IN = 0x4
-- TCP_S_DATA_OUT = 0x8
-- TCP_THIN_DUPACK = 0x11
-- TCP_THIN_LINEAR_TIMEOUTS = 0x10
-- TCP_TIMESTAMP = 0x18
-- TCP_USER_TIMEOUT = 0x12
-- TCP_WINDOW_CLAMP = 0xa
-- TCSAFLUSH = 0x2
-- TCSBRK = 0x2000741d
-- TCSBRKP = 0x5425
-- TCSETA = 0x80147418
-- TCSETAF = 0x8014741c
-- TCSETAW = 0x80147419
-- TCSETS = 0x802c7414
-- TCSETSF = 0x802c7416
-- TCSETSW = 0x802c7415
-- TCXONC = 0x2000741e
-- TIOCCBRK = 0x5428
-- TIOCCONS = 0x541d
-- TIOCEXCL = 0x540c
-- TIOCGDEV = 0x40045432
-- TIOCGETC = 0x40067412
-- TIOCGETD = 0x5424
-- TIOCGETP = 0x40067408
-- TIOCGEXCL = 0x40045440
-- TIOCGICOUNT = 0x545d
-- TIOCGLCKTRMIOS = 0x5456
-- TIOCGLTC = 0x40067474
-- TIOCGPGRP = 0x40047477
-- TIOCGPKT = 0x40045438
-- TIOCGPTLCK = 0x40045439
-- TIOCGPTN = 0x40045430
-- TIOCGRS485 = 0x542e
-- TIOCGSERIAL = 0x541e
-- TIOCGSID = 0x5429
-- TIOCGSOFTCAR = 0x5419
-- TIOCGWINSZ = 0x40087468
-- TIOCINQ = 0x4004667f
-- TIOCLINUX = 0x541c
-- TIOCMBIC = 0x5417
-- TIOCMBIS = 0x5416
-- TIOCMGET = 0x5415
-- TIOCMIWAIT = 0x545c
-- TIOCMSET = 0x5418
-- TIOCM_CAR = 0x40
-- TIOCM_CD = 0x40
-- TIOCM_CTS = 0x20
-- TIOCM_DSR = 0x100
-- TIOCM_DTR = 0x2
-- TIOCM_LE = 0x1
-- TIOCM_LOOP = 0x8000
-- TIOCM_OUT1 = 0x2000
-- TIOCM_OUT2 = 0x4000
-- TIOCM_RI = 0x80
-- TIOCM_RNG = 0x80
-- TIOCM_RTS = 0x4
-- TIOCM_SR = 0x10
-- TIOCM_ST = 0x8
-- TIOCNOTTY = 0x5422
-- TIOCNXCL = 0x540d
-- TIOCOUTQ = 0x40047473
-- TIOCPKT = 0x5420
-- TIOCPKT_DATA = 0x0
-- TIOCPKT_DOSTOP = 0x20
-- TIOCPKT_FLUSHREAD = 0x1
-- TIOCPKT_FLUSHWRITE = 0x2
-- TIOCPKT_IOCTL = 0x40
-- TIOCPKT_NOSTOP = 0x10
-- TIOCPKT_START = 0x8
-- TIOCPKT_STOP = 0x4
-- TIOCSBRK = 0x5427
-- TIOCSCTTY = 0x540e
-- TIOCSERCONFIG = 0x5453
-- TIOCSERGETLSR = 0x5459
-- TIOCSERGETMULTI = 0x545a
-- TIOCSERGSTRUCT = 0x5458
-- TIOCSERGWILD = 0x5454
-- TIOCSERSETMULTI = 0x545b
-- TIOCSERSWILD = 0x5455
-- TIOCSER_TEMT = 0x1
-- TIOCSETC = 0x80067411
-- TIOCSETD = 0x5423
-- TIOCSETN = 0x8006740a
-- TIOCSETP = 0x80067409
-- TIOCSIG = 0x80045436
-- TIOCSLCKTRMIOS = 0x5457
-- TIOCSLTC = 0x80067475
-- TIOCSPGRP = 0x80047476
-- TIOCSPTLCK = 0x80045431
-- TIOCSRS485 = 0x542f
-- TIOCSSERIAL = 0x541f
-- TIOCSSOFTCAR = 0x541a
-- TIOCSTART = 0x2000746e
-- TIOCSTI = 0x5412
-- TIOCSTOP = 0x2000746f
-- TIOCSWINSZ = 0x80087467
-- TIOCVHANGUP = 0x5437
-- TOSTOP = 0x400000
-- TS_COMM_LEN = 0x20
-- TUNATTACHFILTER = 0x801054d5
-- TUNDETACHFILTER = 0x801054d6
-- TUNGETFEATURES = 0x400454cf
-- TUNGETFILTER = 0x401054db
-- TUNGETIFF = 0x400454d2
-- TUNGETSNDBUF = 0x400454d3
-- TUNGETVNETBE = 0x400454df
-- TUNGETVNETHDRSZ = 0x400454d7
-- TUNGETVNETLE = 0x400454dd
-- TUNSETDEBUG = 0x800454c9
-- TUNSETGROUP = 0x800454ce
-- TUNSETIFF = 0x800454ca
-- TUNSETIFINDEX = 0x800454da
-- TUNSETLINK = 0x800454cd
-- TUNSETNOCSUM = 0x800454c8
-- TUNSETOFFLOAD = 0x800454d0
-- TUNSETOWNER = 0x800454cc
-- TUNSETPERSIST = 0x800454cb
-- TUNSETQUEUE = 0x800454d9
-- TUNSETSNDBUF = 0x800454d4
-- TUNSETTXFILTER = 0x800454d1
-- TUNSETVNETBE = 0x800454de
-- TUNSETVNETHDRSZ = 0x800454d8
-- TUNSETVNETLE = 0x800454dc
-- UMOUNT_NOFOLLOW = 0x8
-- VDISCARD = 0x10
-- VEOF = 0x4
-- VEOL = 0x6
-- VEOL2 = 0x8
-- VERASE = 0x2
-- VINTR = 0x0
-- VKILL = 0x3
-- VLNEXT = 0xf
-- VMADDR_CID_ANY = 0xffffffff
-- VMADDR_CID_HOST = 0x2
-- VMADDR_CID_HYPERVISOR = 0x0
-- VMADDR_CID_RESERVED = 0x1
-- VMADDR_PORT_ANY = 0xffffffff
-- VMIN = 0x5
-- VM_SOCKETS_INVALID_VERSION = 0xffffffff
-- VQUIT = 0x1
-- VREPRINT = 0xb
-- VSTART = 0xd
-- VSTOP = 0xe
-- VSUSP = 0xc
-- VSWTC = 0x9
-- VT0 = 0x0
-- VT1 = 0x10000
-- VTDLY = 0x10000
-- VTIME = 0x7
-- VWERASE = 0xa
-- WALL = 0x40000000
-- WCLONE = 0x80000000
-- WCONTINUED = 0x8
-- WEXITED = 0x4
-- WNOHANG = 0x1
-- WNOTHREAD = 0x20000000
-- WNOWAIT = 0x1000000
-- WORDSIZE = 0x40
-- WSTOPPED = 0x2
-- WUNTRACED = 0x2
-- XATTR_CREATE = 0x1
-- XATTR_REPLACE = 0x2
-- XCASE = 0x4000
-- XTABS = 0xc00
-+ B1000000 = 0x17
-+ B115200 = 0x11
-+ B1152000 = 0x18
-+ B1500000 = 0x19
-+ B2000000 = 0x1a
-+ B230400 = 0x12
-+ B2500000 = 0x1b
-+ B3000000 = 0x1c
-+ B3500000 = 0x1d
-+ B4000000 = 0x1e
-+ B460800 = 0x13
-+ B500000 = 0x14
-+ B57600 = 0x10
-+ B576000 = 0x15
-+ B921600 = 0x16
-+ BLKBSZGET = 0x40081270
-+ BLKBSZSET = 0x80081271
-+ BLKFLSBUF = 0x20001261
-+ BLKFRAGET = 0x20001265
-+ BLKFRASET = 0x20001264
-+ BLKGETSIZE = 0x20001260
-+ BLKGETSIZE64 = 0x40081272
-+ BLKPBSZGET = 0x2000127b
-+ BLKRAGET = 0x20001263
-+ BLKRASET = 0x20001262
-+ BLKROGET = 0x2000125e
-+ BLKROSET = 0x2000125d
-+ BLKRRPART = 0x2000125f
-+ BLKSECTGET = 0x20001267
-+ BLKSECTSET = 0x20001266
-+ BLKSSZGET = 0x20001268
-+ BOTHER = 0x1f
-+ BS1 = 0x8000
-+ BSDLY = 0x8000
-+ CBAUD = 0xff
-+ CBAUDEX = 0x0
-+ CIBAUD = 0xff0000
-+ CLOCAL = 0x8000
-+ CR1 = 0x1000
-+ CR2 = 0x2000
-+ CR3 = 0x3000
-+ CRDLY = 0x3000
-+ CREAD = 0x800
-+ CS6 = 0x100
-+ CS7 = 0x200
-+ CS8 = 0x300
-+ CSIZE = 0x300
-+ CSTOPB = 0x400
-+ ECHOCTL = 0x40
-+ ECHOE = 0x2
-+ ECHOK = 0x4
-+ ECHOKE = 0x1
-+ ECHONL = 0x10
-+ ECHOPRT = 0x20
-+ EFD_CLOEXEC = 0x80000
-+ EFD_NONBLOCK = 0x800
-+ EPOLL_CLOEXEC = 0x80000
-+ EXTPROC = 0x10000000
-+ FF1 = 0x4000
-+ FFDLY = 0x4000
-+ FLUSHO = 0x800000
-+ FS_IOC_ENABLE_VERITY = 0x80806685
-+ FS_IOC_GETFLAGS = 0x40086601
-+ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
-+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
-+ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
-+ F_GETLK = 0x5
-+ F_GETLK64 = 0xc
-+ F_GETOWN = 0x9
-+ F_RDLCK = 0x0
-+ F_SETLK = 0x6
-+ F_SETLK64 = 0xd
-+ F_SETLKW = 0x7
-+ F_SETLKW64 = 0xe
-+ F_SETOWN = 0x8
-+ F_UNLCK = 0x2
-+ F_WRLCK = 0x1
-+ HUPCL = 0x4000
-+ ICANON = 0x100
-+ IEXTEN = 0x400
-+ IN_CLOEXEC = 0x80000
-+ IN_NONBLOCK = 0x800
-+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
-+ ISIG = 0x80
-+ IUCLC = 0x1000
-+ IXOFF = 0x400
-+ IXON = 0x200
-+ MAP_ANON = 0x20
-+ MAP_ANONYMOUS = 0x20
-+ MAP_DENYWRITE = 0x800
-+ MAP_EXECUTABLE = 0x1000
-+ MAP_GROWSDOWN = 0x100
-+ MAP_HUGETLB = 0x40000
-+ MAP_LOCKED = 0x80
-+ MAP_NONBLOCK = 0x10000
-+ MAP_NORESERVE = 0x40
-+ MAP_POPULATE = 0x8000
-+ MAP_STACK = 0x20000
-+ MAP_SYNC = 0x80000
-+ MCL_CURRENT = 0x2000
-+ MCL_FUTURE = 0x4000
-+ MCL_ONFAULT = 0x8000
-+ NFDBITS = 0x40
-+ NL2 = 0x200
-+ NL3 = 0x300
-+ NLDLY = 0x300
-+ NOFLSH = 0x80000000
-+ NS_GET_NSTYPE = 0x2000b703
-+ NS_GET_OWNER_UID = 0x2000b704
-+ NS_GET_PARENT = 0x2000b702
-+ NS_GET_USERNS = 0x2000b701
-+ OLCUC = 0x4
-+ ONLCR = 0x2
-+ O_APPEND = 0x400
-+ O_ASYNC = 0x2000
-+ O_CLOEXEC = 0x80000
-+ O_CREAT = 0x40
-+ O_DIRECT = 0x20000
-+ O_DIRECTORY = 0x4000
-+ O_DSYNC = 0x1000
-+ O_EXCL = 0x80
-+ O_FSYNC = 0x101000
-+ O_LARGEFILE = 0x0
-+ O_NDELAY = 0x800
-+ O_NOATIME = 0x40000
-+ O_NOCTTY = 0x100
-+ O_NOFOLLOW = 0x8000
-+ O_NONBLOCK = 0x800
-+ O_PATH = 0x200000
-+ O_RSYNC = 0x101000
-+ O_SYNC = 0x101000
-+ O_TMPFILE = 0x404000
-+ O_TRUNC = 0x200
-+ PARENB = 0x1000
-+ PARODD = 0x2000
-+ PENDIN = 0x20000000
-+ PERF_EVENT_IOC_DISABLE = 0x20002401
-+ PERF_EVENT_IOC_ENABLE = 0x20002400
-+ PERF_EVENT_IOC_ID = 0x40082407
-+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
-+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
-+ PERF_EVENT_IOC_PERIOD = 0x80082404
-+ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
-+ PERF_EVENT_IOC_REFRESH = 0x20002402
-+ PERF_EVENT_IOC_RESET = 0x20002403
-+ PERF_EVENT_IOC_SET_BPF = 0x80042408
-+ PERF_EVENT_IOC_SET_FILTER = 0x80082406
-+ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
-+ PPPIOCATTACH = 0x8004743d
-+ PPPIOCATTCHAN = 0x80047438
-+ PPPIOCCONNECT = 0x8004743a
-+ PPPIOCDETACH = 0x8004743c
-+ PPPIOCDISCONN = 0x20007439
-+ PPPIOCGASYNCMAP = 0x40047458
-+ PPPIOCGCHAN = 0x40047437
-+ PPPIOCGDEBUG = 0x40047441
-+ PPPIOCGFLAGS = 0x4004745a
-+ PPPIOCGIDLE = 0x4010743f
-+ PPPIOCGIDLE32 = 0x4008743f
-+ PPPIOCGIDLE64 = 0x4010743f
-+ PPPIOCGL2TPSTATS = 0x40487436
-+ PPPIOCGMRU = 0x40047453
-+ PPPIOCGRASYNCMAP = 0x40047455
-+ PPPIOCGUNIT = 0x40047456
-+ PPPIOCGXASYNCMAP = 0x40207450
-+ PPPIOCSACTIVE = 0x80107446
-+ PPPIOCSASYNCMAP = 0x80047457
-+ PPPIOCSCOMPRESS = 0x8010744d
-+ PPPIOCSDEBUG = 0x80047440
-+ PPPIOCSFLAGS = 0x80047459
-+ PPPIOCSMAXCID = 0x80047451
-+ PPPIOCSMRRU = 0x8004743b
-+ PPPIOCSMRU = 0x80047452
-+ PPPIOCSNPMODE = 0x8008744b
-+ PPPIOCSPASS = 0x80107447
-+ PPPIOCSRASYNCMAP = 0x80047454
-+ PPPIOCSXASYNCMAP = 0x8020744f
-+ PPPIOCXFERUNIT = 0x2000744e
-+ PROT_SAO = 0x10
-+ PR_SET_PTRACER_ANY = 0xffffffffffffffff
-+ PTRACE_GETEVRREGS = 0x14
-+ PTRACE_GETFPREGS = 0xe
-+ PTRACE_GETREGS64 = 0x16
-+ PTRACE_GETVRREGS = 0x12
-+ PTRACE_GETVSRREGS = 0x1b
-+ PTRACE_GET_DEBUGREG = 0x19
-+ PTRACE_SETEVRREGS = 0x15
-+ PTRACE_SETFPREGS = 0xf
-+ PTRACE_SETREGS64 = 0x17
-+ PTRACE_SETVRREGS = 0x13
-+ PTRACE_SETVSRREGS = 0x1c
-+ PTRACE_SET_DEBUGREG = 0x1a
-+ PTRACE_SINGLEBLOCK = 0x100
-+ PTRACE_SYSEMU = 0x1d
-+ PTRACE_SYSEMU_SINGLESTEP = 0x1e
-+ PT_CCR = 0x26
-+ PT_CTR = 0x23
-+ PT_DAR = 0x29
-+ PT_DSCR = 0x2c
-+ PT_DSISR = 0x2a
-+ PT_FPR0 = 0x30
-+ PT_FPSCR = 0x50
-+ PT_LNK = 0x24
-+ PT_MSR = 0x21
-+ PT_NIP = 0x20
-+ PT_ORIG_R3 = 0x22
-+ PT_R0 = 0x0
-+ PT_R1 = 0x1
-+ PT_R10 = 0xa
-+ PT_R11 = 0xb
-+ PT_R12 = 0xc
-+ PT_R13 = 0xd
-+ PT_R14 = 0xe
-+ PT_R15 = 0xf
-+ PT_R16 = 0x10
-+ PT_R17 = 0x11
-+ PT_R18 = 0x12
-+ PT_R19 = 0x13
-+ PT_R2 = 0x2
-+ PT_R20 = 0x14
-+ PT_R21 = 0x15
-+ PT_R22 = 0x16
-+ PT_R23 = 0x17
-+ PT_R24 = 0x18
-+ PT_R25 = 0x19
-+ PT_R26 = 0x1a
-+ PT_R27 = 0x1b
-+ PT_R28 = 0x1c
-+ PT_R29 = 0x1d
-+ PT_R3 = 0x3
-+ PT_R30 = 0x1e
-+ PT_R31 = 0x1f
-+ PT_R4 = 0x4
-+ PT_R5 = 0x5
-+ PT_R6 = 0x6
-+ PT_R7 = 0x7
-+ PT_R8 = 0x8
-+ PT_R9 = 0x9
-+ PT_REGS_COUNT = 0x2c
-+ PT_RESULT = 0x2b
-+ PT_SOFTE = 0x27
-+ PT_TRAP = 0x28
-+ PT_VR0 = 0x52
-+ PT_VRSAVE = 0x94
-+ PT_VSCR = 0x93
-+ PT_VSR0 = 0x96
-+ PT_VSR31 = 0xd4
-+ PT_XER = 0x25
-+ RLIMIT_AS = 0x9
-+ RLIMIT_MEMLOCK = 0x8
-+ RLIMIT_NOFILE = 0x7
-+ RLIMIT_NPROC = 0x6
-+ RLIMIT_RSS = 0x5
-+ RNDADDENTROPY = 0x80085203
-+ RNDADDTOENTCNT = 0x80045201
-+ RNDCLEARPOOL = 0x20005206
-+ RNDGETENTCNT = 0x40045200
-+ RNDGETPOOL = 0x40085202
-+ RNDRESEEDCRNG = 0x20005207
-+ RNDZAPENTCNT = 0x20005204
-+ RTC_AIE_OFF = 0x20007002
-+ RTC_AIE_ON = 0x20007001
-+ RTC_ALM_READ = 0x40247008
-+ RTC_ALM_SET = 0x80247007
-+ RTC_EPOCH_READ = 0x4008700d
-+ RTC_EPOCH_SET = 0x8008700e
-+ RTC_IRQP_READ = 0x4008700b
-+ RTC_IRQP_SET = 0x8008700c
-+ RTC_PIE_OFF = 0x20007006
-+ RTC_PIE_ON = 0x20007005
-+ RTC_PLL_GET = 0x40207011
-+ RTC_PLL_SET = 0x80207012
-+ RTC_RD_TIME = 0x40247009
-+ RTC_SET_TIME = 0x8024700a
-+ RTC_UIE_OFF = 0x20007004
-+ RTC_UIE_ON = 0x20007003
-+ RTC_VL_CLR = 0x20007014
-+ RTC_VL_READ = 0x40047013
-+ RTC_WIE_OFF = 0x20007010
-+ RTC_WIE_ON = 0x2000700f
-+ RTC_WKALM_RD = 0x40287010
-+ RTC_WKALM_SET = 0x8028700f
-+ SCM_TIMESTAMPING = 0x25
-+ SCM_TIMESTAMPING_OPT_STATS = 0x36
-+ SCM_TIMESTAMPING_PKTINFO = 0x3a
-+ SCM_TIMESTAMPNS = 0x23
-+ SCM_TXTIME = 0x3d
-+ SCM_WIFI_STATUS = 0x29
-+ SFD_CLOEXEC = 0x80000
-+ SFD_NONBLOCK = 0x800
-+ SIOCATMARK = 0x8905
-+ SIOCGPGRP = 0x8904
-+ SIOCGSTAMPNS_NEW = 0x40108907
-+ SIOCGSTAMP_NEW = 0x40108906
-+ SIOCINQ = 0x4004667f
-+ SIOCOUTQ = 0x40047473
-+ SIOCSPGRP = 0x8902
-+ SOCK_CLOEXEC = 0x80000
-+ SOCK_DGRAM = 0x2
-+ SOCK_NONBLOCK = 0x800
-+ SOCK_STREAM = 0x1
-+ SOL_SOCKET = 0x1
-+ SO_ACCEPTCONN = 0x1e
-+ SO_ATTACH_BPF = 0x32
-+ SO_ATTACH_REUSEPORT_CBPF = 0x33
-+ SO_ATTACH_REUSEPORT_EBPF = 0x34
-+ SO_BINDTODEVICE = 0x19
-+ SO_BINDTOIFINDEX = 0x3e
-+ SO_BPF_EXTENSIONS = 0x30
-+ SO_BROADCAST = 0x6
-+ SO_BSDCOMPAT = 0xe
-+ SO_BUSY_POLL = 0x2e
-+ SO_CNX_ADVICE = 0x35
-+ SO_COOKIE = 0x39
-+ SO_DETACH_REUSEPORT_BPF = 0x44
-+ SO_DOMAIN = 0x27
-+ SO_DONTROUTE = 0x5
-+ SO_ERROR = 0x4
-+ SO_INCOMING_CPU = 0x31
-+ SO_INCOMING_NAPI_ID = 0x38
-+ SO_KEEPALIVE = 0x9
-+ SO_LINGER = 0xd
-+ SO_LOCK_FILTER = 0x2c
-+ SO_MARK = 0x24
-+ SO_MAX_PACING_RATE = 0x2f
-+ SO_MEMINFO = 0x37
-+ SO_NOFCS = 0x2b
-+ SO_OOBINLINE = 0xa
-+ SO_PASSCRED = 0x14
-+ SO_PASSSEC = 0x22
-+ SO_PEEK_OFF = 0x2a
-+ SO_PEERCRED = 0x15
-+ SO_PEERGROUPS = 0x3b
-+ SO_PEERSEC = 0x1f
-+ SO_PROTOCOL = 0x26
-+ SO_RCVBUF = 0x8
-+ SO_RCVBUFFORCE = 0x21
-+ SO_RCVLOWAT = 0x10
-+ SO_RCVTIMEO = 0x12
-+ SO_RCVTIMEO_NEW = 0x42
-+ SO_RCVTIMEO_OLD = 0x12
-+ SO_REUSEADDR = 0x2
-+ SO_REUSEPORT = 0xf
-+ SO_RXQ_OVFL = 0x28
-+ SO_SECURITY_AUTHENTICATION = 0x16
-+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-+ SO_SELECT_ERR_QUEUE = 0x2d
-+ SO_SNDBUF = 0x7
-+ SO_SNDBUFFORCE = 0x20
-+ SO_SNDLOWAT = 0x11
-+ SO_SNDTIMEO = 0x13
-+ SO_SNDTIMEO_NEW = 0x43
-+ SO_SNDTIMEO_OLD = 0x13
-+ SO_TIMESTAMPING = 0x25
-+ SO_TIMESTAMPING_NEW = 0x41
-+ SO_TIMESTAMPING_OLD = 0x25
-+ SO_TIMESTAMPNS = 0x23
-+ SO_TIMESTAMPNS_NEW = 0x40
-+ SO_TIMESTAMPNS_OLD = 0x23
-+ SO_TIMESTAMP_NEW = 0x3f
-+ SO_TXTIME = 0x3d
-+ SO_TYPE = 0x3
-+ SO_WIFI_STATUS = 0x29
-+ SO_ZEROCOPY = 0x3c
-+ TAB1 = 0x400
-+ TAB2 = 0x800
-+ TAB3 = 0xc00
-+ TABDLY = 0xc00
-+ TCFLSH = 0x2000741f
-+ TCGETA = 0x40147417
-+ TCGETS = 0x402c7413
-+ TCSAFLUSH = 0x2
-+ TCSBRK = 0x2000741d
-+ TCSBRKP = 0x5425
-+ TCSETA = 0x80147418
-+ TCSETAF = 0x8014741c
-+ TCSETAW = 0x80147419
-+ TCSETS = 0x802c7414
-+ TCSETSF = 0x802c7416
-+ TCSETSW = 0x802c7415
-+ TCXONC = 0x2000741e
-+ TIOCCBRK = 0x5428
-+ TIOCCONS = 0x541d
-+ TIOCEXCL = 0x540c
-+ TIOCGDEV = 0x40045432
-+ TIOCGETC = 0x40067412
-+ TIOCGETD = 0x5424
-+ TIOCGETP = 0x40067408
-+ TIOCGEXCL = 0x40045440
-+ TIOCGICOUNT = 0x545d
-+ TIOCGISO7816 = 0x40285442
-+ TIOCGLCKTRMIOS = 0x5456
-+ TIOCGLTC = 0x40067474
-+ TIOCGPGRP = 0x40047477
-+ TIOCGPKT = 0x40045438
-+ TIOCGPTLCK = 0x40045439
-+ TIOCGPTN = 0x40045430
-+ TIOCGPTPEER = 0x20005441
-+ TIOCGRS485 = 0x542e
-+ TIOCGSERIAL = 0x541e
-+ TIOCGSID = 0x5429
-+ TIOCGSOFTCAR = 0x5419
-+ TIOCGWINSZ = 0x40087468
-+ TIOCINQ = 0x4004667f
-+ TIOCLINUX = 0x541c
-+ TIOCMBIC = 0x5417
-+ TIOCMBIS = 0x5416
-+ TIOCMGET = 0x5415
-+ TIOCMIWAIT = 0x545c
-+ TIOCMSET = 0x5418
-+ TIOCM_CAR = 0x40
-+ TIOCM_CD = 0x40
-+ TIOCM_CTS = 0x20
-+ TIOCM_DSR = 0x100
-+ TIOCM_LOOP = 0x8000
-+ TIOCM_OUT1 = 0x2000
-+ TIOCM_OUT2 = 0x4000
-+ TIOCM_RI = 0x80
-+ TIOCM_RNG = 0x80
-+ TIOCM_SR = 0x10
-+ TIOCM_ST = 0x8
-+ TIOCNOTTY = 0x5422
-+ TIOCNXCL = 0x540d
-+ TIOCOUTQ = 0x40047473
-+ TIOCPKT = 0x5420
-+ TIOCSBRK = 0x5427
-+ TIOCSCTTY = 0x540e
-+ TIOCSERCONFIG = 0x5453
-+ TIOCSERGETLSR = 0x5459
-+ TIOCSERGETMULTI = 0x545a
-+ TIOCSERGSTRUCT = 0x5458
-+ TIOCSERGWILD = 0x5454
-+ TIOCSERSETMULTI = 0x545b
-+ TIOCSERSWILD = 0x5455
-+ TIOCSER_TEMT = 0x1
-+ TIOCSETC = 0x80067411
-+ TIOCSETD = 0x5423
-+ TIOCSETN = 0x8006740a
-+ TIOCSETP = 0x80067409
-+ TIOCSIG = 0x80045436
-+ TIOCSISO7816 = 0xc0285443
-+ TIOCSLCKTRMIOS = 0x5457
-+ TIOCSLTC = 0x80067475
-+ TIOCSPGRP = 0x80047476
-+ TIOCSPTLCK = 0x80045431
-+ TIOCSRS485 = 0x542f
-+ TIOCSSERIAL = 0x541f
-+ TIOCSSOFTCAR = 0x541a
-+ TIOCSTART = 0x2000746e
-+ TIOCSTI = 0x5412
-+ TIOCSTOP = 0x2000746f
-+ TIOCSWINSZ = 0x80087467
-+ TIOCVHANGUP = 0x5437
-+ TOSTOP = 0x400000
-+ TUNATTACHFILTER = 0x801054d5
-+ TUNDETACHFILTER = 0x801054d6
-+ TUNGETDEVNETNS = 0x200054e3
-+ TUNGETFEATURES = 0x400454cf
-+ TUNGETFILTER = 0x401054db
-+ TUNGETIFF = 0x400454d2
-+ TUNGETSNDBUF = 0x400454d3
-+ TUNGETVNETBE = 0x400454df
-+ TUNGETVNETHDRSZ = 0x400454d7
-+ TUNGETVNETLE = 0x400454dd
-+ TUNSETCARRIER = 0x800454e2
-+ TUNSETDEBUG = 0x800454c9
-+ TUNSETFILTEREBPF = 0x400454e1
-+ TUNSETGROUP = 0x800454ce
-+ TUNSETIFF = 0x800454ca
-+ TUNSETIFINDEX = 0x800454da
-+ TUNSETLINK = 0x800454cd
-+ TUNSETNOCSUM = 0x800454c8
-+ TUNSETOFFLOAD = 0x800454d0
-+ TUNSETOWNER = 0x800454cc
-+ TUNSETPERSIST = 0x800454cb
-+ TUNSETQUEUE = 0x800454d9
-+ TUNSETSNDBUF = 0x800454d4
-+ TUNSETSTEERINGEBPF = 0x400454e0
-+ TUNSETTXFILTER = 0x800454d1
-+ TUNSETVNETBE = 0x800454de
-+ TUNSETVNETHDRSZ = 0x800454d8
-+ TUNSETVNETLE = 0x800454dc
-+ UBI_IOCATT = 0x80186f40
-+ UBI_IOCDET = 0x80046f41
-+ UBI_IOCEBCH = 0x80044f02
-+ UBI_IOCEBER = 0x80044f01
-+ UBI_IOCEBISMAP = 0x40044f05
-+ UBI_IOCEBMAP = 0x80084f03
-+ UBI_IOCEBUNMAP = 0x80044f04
-+ UBI_IOCMKVOL = 0x80986f00
-+ UBI_IOCRMVOL = 0x80046f01
-+ UBI_IOCRNVOL = 0x91106f03
-+ UBI_IOCRPEB = 0x80046f04
-+ UBI_IOCRSVOL = 0x800c6f02
-+ UBI_IOCSETVOLPROP = 0x80104f06
-+ UBI_IOCSPEB = 0x80046f05
-+ UBI_IOCVOLCRBLK = 0x80804f07
-+ UBI_IOCVOLRMBLK = 0x20004f08
-+ UBI_IOCVOLUP = 0x80084f00
-+ VDISCARD = 0x10
-+ VEOF = 0x4
-+ VEOL = 0x6
-+ VEOL2 = 0x8
-+ VMIN = 0x5
-+ VREPRINT = 0xb
-+ VSTART = 0xd
-+ VSTOP = 0xe
-+ VSUSP = 0xc
-+ VSWTC = 0x9
-+ VT1 = 0x10000
-+ VTDLY = 0x10000
-+ VTIME = 0x7
-+ VWERASE = 0xa
-+ WDIOC_GETBOOTSTATUS = 0x40045702
-+ WDIOC_GETPRETIMEOUT = 0x40045709
-+ WDIOC_GETSTATUS = 0x40045701
-+ WDIOC_GETSUPPORT = 0x40285700
-+ WDIOC_GETTEMP = 0x40045703
-+ WDIOC_GETTIMELEFT = 0x4004570a
-+ WDIOC_GETTIMEOUT = 0x40045707
-+ WDIOC_KEEPALIVE = 0x40045705
-+ WDIOC_SETOPTIONS = 0x40045704
-+ WORDSIZE = 0x40
-+ XCASE = 0x4000
-+ XTABS = 0xc00
- )
-
- // Errors
- const (
-- E2BIG = syscall.Errno(0x7)
-- EACCES = syscall.Errno(0xd)
- EADDRINUSE = syscall.Errno(0x62)
- EADDRNOTAVAIL = syscall.Errno(0x63)
- EADV = syscall.Errno(0x44)
- EAFNOSUPPORT = syscall.Errno(0x61)
-- EAGAIN = syscall.Errno(0xb)
- EALREADY = syscall.Errno(0x72)
- EBADE = syscall.Errno(0x34)
-- EBADF = syscall.Errno(0x9)
- EBADFD = syscall.Errno(0x4d)
- EBADMSG = syscall.Errno(0x4a)
- EBADR = syscall.Errno(0x35)
- EBADRQC = syscall.Errno(0x38)
- EBADSLT = syscall.Errno(0x39)
- EBFONT = syscall.Errno(0x3b)
-- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x7d)
-- ECHILD = syscall.Errno(0xa)
- ECHRNG = syscall.Errno(0x2c)
- ECOMM = syscall.Errno(0x46)
- ECONNABORTED = syscall.Errno(0x67)
-@@ -1943,23 +562,15 @@ const (
- EDEADLK = syscall.Errno(0x23)
- EDEADLOCK = syscall.Errno(0x3a)
- EDESTADDRREQ = syscall.Errno(0x59)
-- EDOM = syscall.Errno(0x21)
- EDOTDOT = syscall.Errno(0x49)
- EDQUOT = syscall.Errno(0x7a)
-- EEXIST = syscall.Errno(0x11)
-- EFAULT = syscall.Errno(0xe)
-- EFBIG = syscall.Errno(0x1b)
- EHOSTDOWN = syscall.Errno(0x70)
- EHOSTUNREACH = syscall.Errno(0x71)
- EHWPOISON = syscall.Errno(0x85)
- EIDRM = syscall.Errno(0x2b)
- EILSEQ = syscall.Errno(0x54)
- EINPROGRESS = syscall.Errno(0x73)
-- EINTR = syscall.Errno(0x4)
-- EINVAL = syscall.Errno(0x16)
-- EIO = syscall.Errno(0x5)
- EISCONN = syscall.Errno(0x6a)
-- EISDIR = syscall.Errno(0x15)
- EISNAM = syscall.Errno(0x78)
- EKEYEXPIRED = syscall.Errno(0x7f)
- EKEYREJECTED = syscall.Errno(0x81)
-@@ -1976,8 +587,6 @@ const (
- ELNRNG = syscall.Errno(0x30)
- ELOOP = syscall.Errno(0x28)
- EMEDIUMTYPE = syscall.Errno(0x7c)
-- EMFILE = syscall.Errno(0x18)
-- EMLINK = syscall.Errno(0x1f)
- EMSGSIZE = syscall.Errno(0x5a)
- EMULTIHOP = syscall.Errno(0x48)
- ENAMETOOLONG = syscall.Errno(0x24)
-@@ -1985,103 +594,70 @@ const (
- ENETDOWN = syscall.Errno(0x64)
- ENETRESET = syscall.Errno(0x66)
- ENETUNREACH = syscall.Errno(0x65)
-- ENFILE = syscall.Errno(0x17)
- ENOANO = syscall.Errno(0x37)
- ENOBUFS = syscall.Errno(0x69)
- ENOCSI = syscall.Errno(0x32)
- ENODATA = syscall.Errno(0x3d)
-- ENODEV = syscall.Errno(0x13)
-- ENOENT = syscall.Errno(0x2)
-- ENOEXEC = syscall.Errno(0x8)
- ENOKEY = syscall.Errno(0x7e)
- ENOLCK = syscall.Errno(0x25)
- ENOLINK = syscall.Errno(0x43)
- ENOMEDIUM = syscall.Errno(0x7b)
-- ENOMEM = syscall.Errno(0xc)
- ENOMSG = syscall.Errno(0x2a)
- ENONET = syscall.Errno(0x40)
- ENOPKG = syscall.Errno(0x41)
- ENOPROTOOPT = syscall.Errno(0x5c)
-- ENOSPC = syscall.Errno(0x1c)
- ENOSR = syscall.Errno(0x3f)
- ENOSTR = syscall.Errno(0x3c)
- ENOSYS = syscall.Errno(0x26)
-- ENOTBLK = syscall.Errno(0xf)
- ENOTCONN = syscall.Errno(0x6b)
-- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x27)
- ENOTNAM = syscall.Errno(0x76)
- ENOTRECOVERABLE = syscall.Errno(0x83)
- ENOTSOCK = syscall.Errno(0x58)
- ENOTSUP = syscall.Errno(0x5f)
-- ENOTTY = syscall.Errno(0x19)
- ENOTUNIQ = syscall.Errno(0x4c)
-- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x5f)
- EOVERFLOW = syscall.Errno(0x4b)
- EOWNERDEAD = syscall.Errno(0x82)
-- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x60)
-- EPIPE = syscall.Errno(0x20)
- EPROTO = syscall.Errno(0x47)
- EPROTONOSUPPORT = syscall.Errno(0x5d)
- EPROTOTYPE = syscall.Errno(0x5b)
-- ERANGE = syscall.Errno(0x22)
- EREMCHG = syscall.Errno(0x4e)
- EREMOTE = syscall.Errno(0x42)
- EREMOTEIO = syscall.Errno(0x79)
- ERESTART = syscall.Errno(0x55)
- ERFKILL = syscall.Errno(0x84)
-- EROFS = syscall.Errno(0x1e)
- ESHUTDOWN = syscall.Errno(0x6c)
- ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-- ESPIPE = syscall.Errno(0x1d)
-- ESRCH = syscall.Errno(0x3)
- ESRMNT = syscall.Errno(0x45)
- ESTALE = syscall.Errno(0x74)
- ESTRPIPE = syscall.Errno(0x56)
- ETIME = syscall.Errno(0x3e)
- ETIMEDOUT = syscall.Errno(0x6e)
- ETOOMANYREFS = syscall.Errno(0x6d)
-- ETXTBSY = syscall.Errno(0x1a)
- EUCLEAN = syscall.Errno(0x75)
- EUNATCH = syscall.Errno(0x31)
- EUSERS = syscall.Errno(0x57)
-- EWOULDBLOCK = syscall.Errno(0xb)
-- EXDEV = syscall.Errno(0x12)
- EXFULL = syscall.Errno(0x36)
- )
-
- // Signals
- const (
-- SIGABRT = syscall.Signal(0x6)
-- SIGALRM = syscall.Signal(0xe)
- SIGBUS = syscall.Signal(0x7)
- SIGCHLD = syscall.Signal(0x11)
- SIGCLD = syscall.Signal(0x11)
- SIGCONT = syscall.Signal(0x12)
-- SIGFPE = syscall.Signal(0x8)
-- SIGHUP = syscall.Signal(0x1)
-- SIGILL = syscall.Signal(0x4)
-- SIGINT = syscall.Signal(0x2)
- SIGIO = syscall.Signal(0x1d)
-- SIGIOT = syscall.Signal(0x6)
-- SIGKILL = syscall.Signal(0x9)
-- SIGPIPE = syscall.Signal(0xd)
- SIGPOLL = syscall.Signal(0x1d)
- SIGPROF = syscall.Signal(0x1b)
- SIGPWR = syscall.Signal(0x1e)
-- SIGQUIT = syscall.Signal(0x3)
-- SIGSEGV = syscall.Signal(0xb)
- SIGSTKFLT = syscall.Signal(0x10)
- SIGSTOP = syscall.Signal(0x13)
- SIGSYS = syscall.Signal(0x1f)
-- SIGTERM = syscall.Signal(0xf)
-- SIGTRAP = syscall.Signal(0x5)
- SIGTSTP = syscall.Signal(0x14)
- SIGTTIN = syscall.Signal(0x15)
- SIGTTOU = syscall.Signal(0x16)
-- SIGUNUSED = syscall.Signal(0x1f)
- SIGURG = syscall.Signal(0x17)
- SIGUSR1 = syscall.Signal(0xa)
- SIGUSR2 = syscall.Signal(0xc)
-@@ -2092,172 +668,180 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "no such device or address",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource temporarily unavailable",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device or resource busy",
-- 17: "file exists",
-- 18: "invalid cross-device link",
-- 19: "no such device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "numerical result out of range",
-- 35: "resource deadlock avoided",
-- 36: "file name too long",
-- 37: "no locks available",
-- 38: "function not implemented",
-- 39: "directory not empty",
-- 40: "too many levels of symbolic links",
-- 42: "no message of desired type",
-- 43: "identifier removed",
-- 44: "channel number out of range",
-- 45: "level 2 not synchronized",
-- 46: "level 3 halted",
-- 47: "level 3 reset",
-- 48: "link number out of range",
-- 49: "protocol driver not attached",
-- 50: "no CSI structure available",
-- 51: "level 2 halted",
-- 52: "invalid exchange",
-- 53: "invalid request descriptor",
-- 54: "exchange full",
-- 55: "no anode",
-- 56: "invalid request code",
-- 57: "invalid slot",
-- 58: "file locking deadlock error",
-- 59: "bad font file format",
-- 60: "device not a stream",
-- 61: "no data available",
-- 62: "timer expired",
-- 63: "out of streams resources",
-- 64: "machine is not on the network",
-- 65: "package not installed",
-- 66: "object is remote",
-- 67: "link has been severed",
-- 68: "advertise error",
-- 69: "srmount error",
-- 70: "communication error on send",
-- 71: "protocol error",
-- 72: "multihop attempted",
-- 73: "RFS specific error",
-- 74: "bad message",
-- 75: "value too large for defined data type",
-- 76: "name not unique on network",
-- 77: "file descriptor in bad state",
-- 78: "remote address changed",
-- 79: "can not access a needed shared library",
-- 80: "accessing a corrupted shared library",
-- 81: ".lib section in a.out corrupted",
-- 82: "attempting to link in too many shared libraries",
-- 83: "cannot exec a shared library directly",
-- 84: "invalid or incomplete multibyte or wide character",
-- 85: "interrupted system call should be restarted",
-- 86: "streams pipe error",
-- 87: "too many users",
-- 88: "socket operation on non-socket",
-- 89: "destination address required",
-- 90: "message too long",
-- 91: "protocol wrong type for socket",
-- 92: "protocol not available",
-- 93: "protocol not supported",
-- 94: "socket type not supported",
-- 95: "operation not supported",
-- 96: "protocol family not supported",
-- 97: "address family not supported by protocol",
-- 98: "address already in use",
-- 99: "cannot assign requested address",
-- 100: "network is down",
-- 101: "network is unreachable",
-- 102: "network dropped connection on reset",
-- 103: "software caused connection abort",
-- 104: "connection reset by peer",
-- 105: "no buffer space available",
-- 106: "transport endpoint is already connected",
-- 107: "transport endpoint is not connected",
-- 108: "cannot send after transport endpoint shutdown",
-- 109: "too many references: cannot splice",
-- 110: "connection timed out",
-- 111: "connection refused",
-- 112: "host is down",
-- 113: "no route to host",
-- 114: "operation already in progress",
-- 115: "operation now in progress",
-- 116: "stale file handle",
-- 117: "structure needs cleaning",
-- 118: "not a XENIX named type file",
-- 119: "no XENIX semaphores available",
-- 120: "is a named type file",
-- 121: "remote I/O error",
-- 122: "disk quota exceeded",
-- 123: "no medium found",
-- 124: "wrong medium type",
-- 125: "operation canceled",
-- 126: "required key not available",
-- 127: "key has expired",
-- 128: "key has been revoked",
-- 129: "key was rejected by service",
-- 130: "owner died",
-- 131: "state not recoverable",
-- 132: "operation not possible due to RF-kill",
-- 133: "memory page has hardware error",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device or resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "invalid cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "numerical result out of range"},
-+ {35, "EDEADLK", "resource deadlock avoided"},
-+ {36, "ENAMETOOLONG", "file name too long"},
-+ {37, "ENOLCK", "no locks available"},
-+ {38, "ENOSYS", "function not implemented"},
-+ {39, "ENOTEMPTY", "directory not empty"},
-+ {40, "ELOOP", "too many levels of symbolic links"},
-+ {42, "ENOMSG", "no message of desired type"},
-+ {43, "EIDRM", "identifier removed"},
-+ {44, "ECHRNG", "channel number out of range"},
-+ {45, "EL2NSYNC", "level 2 not synchronized"},
-+ {46, "EL3HLT", "level 3 halted"},
-+ {47, "EL3RST", "level 3 reset"},
-+ {48, "ELNRNG", "link number out of range"},
-+ {49, "EUNATCH", "protocol driver not attached"},
-+ {50, "ENOCSI", "no CSI structure available"},
-+ {51, "EL2HLT", "level 2 halted"},
-+ {52, "EBADE", "invalid exchange"},
-+ {53, "EBADR", "invalid request descriptor"},
-+ {54, "EXFULL", "exchange full"},
-+ {55, "ENOANO", "no anode"},
-+ {56, "EBADRQC", "invalid request code"},
-+ {57, "EBADSLT", "invalid slot"},
-+ {58, "EDEADLOCK", "file locking deadlock error"},
-+ {59, "EBFONT", "bad font file format"},
-+ {60, "ENOSTR", "device not a stream"},
-+ {61, "ENODATA", "no data available"},
-+ {62, "ETIME", "timer expired"},
-+ {63, "ENOSR", "out of streams resources"},
-+ {64, "ENONET", "machine is not on the network"},
-+ {65, "ENOPKG", "package not installed"},
-+ {66, "EREMOTE", "object is remote"},
-+ {67, "ENOLINK", "link has been severed"},
-+ {68, "EADV", "advertise error"},
-+ {69, "ESRMNT", "srmount error"},
-+ {70, "ECOMM", "communication error on send"},
-+ {71, "EPROTO", "protocol error"},
-+ {72, "EMULTIHOP", "multihop attempted"},
-+ {73, "EDOTDOT", "RFS specific error"},
-+ {74, "EBADMSG", "bad message"},
-+ {75, "EOVERFLOW", "value too large for defined data type"},
-+ {76, "ENOTUNIQ", "name not unique on network"},
-+ {77, "EBADFD", "file descriptor in bad state"},
-+ {78, "EREMCHG", "remote address changed"},
-+ {79, "ELIBACC", "can not access a needed shared library"},
-+ {80, "ELIBBAD", "accessing a corrupted shared library"},
-+ {81, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
-+ {83, "ELIBEXEC", "cannot exec a shared library directly"},
-+ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
-+ {85, "ERESTART", "interrupted system call should be restarted"},
-+ {86, "ESTRPIPE", "streams pipe error"},
-+ {87, "EUSERS", "too many users"},
-+ {88, "ENOTSOCK", "socket operation on non-socket"},
-+ {89, "EDESTADDRREQ", "destination address required"},
-+ {90, "EMSGSIZE", "message too long"},
-+ {91, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {92, "ENOPROTOOPT", "protocol not available"},
-+ {93, "EPROTONOSUPPORT", "protocol not supported"},
-+ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {95, "ENOTSUP", "operation not supported"},
-+ {96, "EPFNOSUPPORT", "protocol family not supported"},
-+ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
-+ {98, "EADDRINUSE", "address already in use"},
-+ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {100, "ENETDOWN", "network is down"},
-+ {101, "ENETUNREACH", "network is unreachable"},
-+ {102, "ENETRESET", "network dropped connection on reset"},
-+ {103, "ECONNABORTED", "software caused connection abort"},
-+ {104, "ECONNRESET", "connection reset by peer"},
-+ {105, "ENOBUFS", "no buffer space available"},
-+ {106, "EISCONN", "transport endpoint is already connected"},
-+ {107, "ENOTCONN", "transport endpoint is not connected"},
-+ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
-+ {109, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {110, "ETIMEDOUT", "connection timed out"},
-+ {111, "ECONNREFUSED", "connection refused"},
-+ {112, "EHOSTDOWN", "host is down"},
-+ {113, "EHOSTUNREACH", "no route to host"},
-+ {114, "EALREADY", "operation already in progress"},
-+ {115, "EINPROGRESS", "operation now in progress"},
-+ {116, "ESTALE", "stale file handle"},
-+ {117, "EUCLEAN", "structure needs cleaning"},
-+ {118, "ENOTNAM", "not a XENIX named type file"},
-+ {119, "ENAVAIL", "no XENIX semaphores available"},
-+ {120, "EISNAM", "is a named type file"},
-+ {121, "EREMOTEIO", "remote I/O error"},
-+ {122, "EDQUOT", "disk quota exceeded"},
-+ {123, "ENOMEDIUM", "no medium found"},
-+ {124, "EMEDIUMTYPE", "wrong medium type"},
-+ {125, "ECANCELED", "operation canceled"},
-+ {126, "ENOKEY", "required key not available"},
-+ {127, "EKEYEXPIRED", "key has expired"},
-+ {128, "EKEYREVOKED", "key has been revoked"},
-+ {129, "EKEYREJECTED", "key was rejected by service"},
-+ {130, "EOWNERDEAD", "owner died"},
-+ {131, "ENOTRECOVERABLE", "state not recoverable"},
-+ {132, "ERFKILL", "operation not possible due to RF-kill"},
-+ {133, "EHWPOISON", "memory page has hardware error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/breakpoint trap",
-- 6: "aborted",
-- 7: "bus error",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "user defined signal 1",
-- 11: "segmentation fault",
-- 12: "user defined signal 2",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "stack fault",
-- 17: "child exited",
-- 18: "continued",
-- 19: "stopped (signal)",
-- 20: "stopped",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "urgent I/O condition",
-- 24: "CPU time limit exceeded",
-- 25: "file size limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window changed",
-- 29: "I/O possible",
-- 30: "power failure",
-- 31: "bad system call",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/breakpoint trap"},
-+ {6, "SIGABRT", "aborted"},
-+ {7, "SIGBUS", "bus error"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGUSR1", "user defined signal 1"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGUSR2", "user defined signal 2"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGSTKFLT", "stack fault"},
-+ {17, "SIGCHLD", "child exited"},
-+ {18, "SIGCONT", "continued"},
-+ {19, "SIGSTOP", "stopped (signal)"},
-+ {20, "SIGTSTP", "stopped"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGURG", "urgent I/O condition"},
-+ {24, "SIGXCPU", "CPU time limit exceeded"},
-+ {25, "SIGXFSZ", "file size limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window changed"},
-+ {29, "SIGIO", "I/O possible"},
-+ {30, "SIGPWR", "power failure"},
-+ {31, "SIGSYS", "bad system call"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
-index ad29c3d3..4231b20b 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
-@@ -3,7 +3,7 @@
-
- // +build ppc64le,linux
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
-
- package unix
-@@ -11,1930 +11,549 @@ package unix
- import "syscall"
-
- const (
-- AF_ALG = 0x26
-- AF_APPLETALK = 0x5
-- AF_ASH = 0x12
-- AF_ATMPVC = 0x8
-- AF_ATMSVC = 0x14
-- AF_AX25 = 0x3
-- AF_BLUETOOTH = 0x1f
-- AF_BRIDGE = 0x7
-- AF_CAIF = 0x25
-- AF_CAN = 0x1d
-- AF_DECnet = 0xc
-- AF_ECONET = 0x13
-- AF_FILE = 0x1
-- AF_IB = 0x1b
-- AF_IEEE802154 = 0x24
-- AF_INET = 0x2
-- AF_INET6 = 0xa
-- AF_IPX = 0x4
-- AF_IRDA = 0x17
-- AF_ISDN = 0x22
-- AF_IUCV = 0x20
-- AF_KCM = 0x29
-- AF_KEY = 0xf
-- AF_LLC = 0x1a
-- AF_LOCAL = 0x1
-- AF_MAX = 0x2b
-- AF_MPLS = 0x1c
-- AF_NETBEUI = 0xd
-- AF_NETLINK = 0x10
-- AF_NETROM = 0x6
-- AF_NFC = 0x27
-- AF_PACKET = 0x11
-- AF_PHONET = 0x23
-- AF_PPPOX = 0x18
-- AF_QIPCRTR = 0x2a
-- AF_RDS = 0x15
-- AF_ROSE = 0xb
-- AF_ROUTE = 0x10
-- AF_RXRPC = 0x21
-- AF_SECURITY = 0xe
-- AF_SNA = 0x16
-- AF_TIPC = 0x1e
-- AF_UNIX = 0x1
-- AF_UNSPEC = 0x0
-- AF_VSOCK = 0x28
-- AF_WANPIPE = 0x19
-- AF_X25 = 0x9
-- ALG_OP_DECRYPT = 0x0
-- ALG_OP_ENCRYPT = 0x1
-- ALG_SET_AEAD_ASSOCLEN = 0x4
-- ALG_SET_AEAD_AUTHSIZE = 0x5
-- ALG_SET_IV = 0x2
-- ALG_SET_KEY = 0x1
-- ALG_SET_OP = 0x3
-- ARPHRD_6LOWPAN = 0x339
-- ARPHRD_ADAPT = 0x108
-- ARPHRD_APPLETLK = 0x8
-- ARPHRD_ARCNET = 0x7
-- ARPHRD_ASH = 0x30d
-- ARPHRD_ATM = 0x13
-- ARPHRD_AX25 = 0x3
-- ARPHRD_BIF = 0x307
-- ARPHRD_CAIF = 0x336
-- ARPHRD_CAN = 0x118
-- ARPHRD_CHAOS = 0x5
-- ARPHRD_CISCO = 0x201
-- ARPHRD_CSLIP = 0x101
-- ARPHRD_CSLIP6 = 0x103
-- ARPHRD_DDCMP = 0x205
-- ARPHRD_DLCI = 0xf
-- ARPHRD_ECONET = 0x30e
-- ARPHRD_EETHER = 0x2
-- ARPHRD_ETHER = 0x1
-- ARPHRD_EUI64 = 0x1b
-- ARPHRD_FCAL = 0x311
-- ARPHRD_FCFABRIC = 0x313
-- ARPHRD_FCPL = 0x312
-- ARPHRD_FCPP = 0x310
-- ARPHRD_FDDI = 0x306
-- ARPHRD_FRAD = 0x302
-- ARPHRD_HDLC = 0x201
-- ARPHRD_HIPPI = 0x30c
-- ARPHRD_HWX25 = 0x110
-- ARPHRD_IEEE1394 = 0x18
-- ARPHRD_IEEE802 = 0x6
-- ARPHRD_IEEE80211 = 0x321
-- ARPHRD_IEEE80211_PRISM = 0x322
-- ARPHRD_IEEE80211_RADIOTAP = 0x323
-- ARPHRD_IEEE802154 = 0x324
-- ARPHRD_IEEE802154_MONITOR = 0x325
-- ARPHRD_IEEE802_TR = 0x320
-- ARPHRD_INFINIBAND = 0x20
-- ARPHRD_IP6GRE = 0x337
-- ARPHRD_IPDDP = 0x309
-- ARPHRD_IPGRE = 0x30a
-- ARPHRD_IRDA = 0x30f
-- ARPHRD_LAPB = 0x204
-- ARPHRD_LOCALTLK = 0x305
-- ARPHRD_LOOPBACK = 0x304
-- ARPHRD_METRICOM = 0x17
-- ARPHRD_NETLINK = 0x338
-- ARPHRD_NETROM = 0x0
-- ARPHRD_NONE = 0xfffe
-- ARPHRD_PHONET = 0x334
-- ARPHRD_PHONET_PIPE = 0x335
-- ARPHRD_PIMREG = 0x30b
-- ARPHRD_PPP = 0x200
-- ARPHRD_PRONET = 0x4
-- ARPHRD_RAWHDLC = 0x206
-- ARPHRD_ROSE = 0x10e
-- ARPHRD_RSRVD = 0x104
-- ARPHRD_SIT = 0x308
-- ARPHRD_SKIP = 0x303
-- ARPHRD_SLIP = 0x100
-- ARPHRD_SLIP6 = 0x102
-- ARPHRD_TUNNEL = 0x300
-- ARPHRD_TUNNEL6 = 0x301
-- ARPHRD_VOID = 0xffff
-- ARPHRD_X25 = 0x10f
-- B0 = 0x0
-- B1000000 = 0x17
-- B110 = 0x3
-- B115200 = 0x11
-- B1152000 = 0x18
-- B1200 = 0x9
-- B134 = 0x4
-- B150 = 0x5
-- B1500000 = 0x19
-- B1800 = 0xa
-- B19200 = 0xe
-- B200 = 0x6
-- B2000000 = 0x1a
-- B230400 = 0x12
-- B2400 = 0xb
-- B2500000 = 0x1b
-- B300 = 0x7
-- B3000000 = 0x1c
-- B3500000 = 0x1d
-- B38400 = 0xf
-- B4000000 = 0x1e
-- B460800 = 0x13
-- B4800 = 0xc
-- B50 = 0x1
-- B500000 = 0x14
-- B57600 = 0x10
-- B576000 = 0x15
-- B600 = 0x8
-- B75 = 0x2
-- B921600 = 0x16
-- B9600 = 0xd
-- BLKBSZGET = 0x40081270
-- BLKBSZSET = 0x80081271
-- BLKFLSBUF = 0x20001261
-- BLKFRAGET = 0x20001265
-- BLKFRASET = 0x20001264
-- BLKGETSIZE = 0x20001260
-- BLKGETSIZE64 = 0x40081272
-- BLKPBSZGET = 0x2000127b
-- BLKRAGET = 0x20001263
-- BLKRASET = 0x20001262
-- BLKROGET = 0x2000125e
-- BLKROSET = 0x2000125d
-- BLKRRPART = 0x2000125f
-- BLKSECTGET = 0x20001267
-- BLKSECTSET = 0x20001266
-- BLKSSZGET = 0x20001268
-- BOTHER = 0x1f
-- BPF_A = 0x10
-- BPF_ABS = 0x20
-- BPF_ADD = 0x0
-- BPF_ALU = 0x4
-- BPF_AND = 0x50
-- BPF_B = 0x10
-- BPF_DIV = 0x30
-- BPF_H = 0x8
-- BPF_IMM = 0x0
-- BPF_IND = 0x40
-- BPF_JA = 0x0
-- BPF_JEQ = 0x10
-- BPF_JGE = 0x30
-- BPF_JGT = 0x20
-- BPF_JMP = 0x5
-- BPF_JSET = 0x40
-- BPF_K = 0x0
-- BPF_LD = 0x0
-- BPF_LDX = 0x1
-- BPF_LEN = 0x80
-- BPF_LL_OFF = -0x200000
-- BPF_LSH = 0x60
-- BPF_MAJOR_VERSION = 0x1
-- BPF_MAXINSNS = 0x1000
-- BPF_MEM = 0x60
-- BPF_MEMWORDS = 0x10
-- BPF_MINOR_VERSION = 0x1
-- BPF_MISC = 0x7
-- BPF_MOD = 0x90
-- BPF_MSH = 0xa0
-- BPF_MUL = 0x20
-- BPF_NEG = 0x80
-- BPF_NET_OFF = -0x100000
-- BPF_OR = 0x40
-- BPF_RET = 0x6
-- BPF_RSH = 0x70
-- BPF_ST = 0x2
-- BPF_STX = 0x3
-- BPF_SUB = 0x10
-- BPF_TAX = 0x0
-- BPF_TXA = 0x80
-- BPF_W = 0x0
-- BPF_X = 0x8
-- BPF_XOR = 0xa0
-- BRKINT = 0x2
-- BS0 = 0x0
-- BS1 = 0x8000
-- BSDLY = 0x8000
-- CAN_BCM = 0x2
-- CAN_EFF_FLAG = 0x80000000
-- CAN_EFF_ID_BITS = 0x1d
-- CAN_EFF_MASK = 0x1fffffff
-- CAN_ERR_FLAG = 0x20000000
-- CAN_ERR_MASK = 0x1fffffff
-- CAN_INV_FILTER = 0x20000000
-- CAN_ISOTP = 0x6
-- CAN_MAX_DLC = 0x8
-- CAN_MAX_DLEN = 0x8
-- CAN_MCNET = 0x5
-- CAN_MTU = 0x10
-- CAN_NPROTO = 0x7
-- CAN_RAW = 0x1
-- CAN_RAW_FILTER_MAX = 0x200
-- CAN_RTR_FLAG = 0x40000000
-- CAN_SFF_ID_BITS = 0xb
-- CAN_SFF_MASK = 0x7ff
-- CAN_TP16 = 0x3
-- CAN_TP20 = 0x4
-- CBAUD = 0xff
-- CBAUDEX = 0x0
-- CFLUSH = 0xf
-- CIBAUD = 0xff0000
-- CLOCAL = 0x8000
-- CLOCK_BOOTTIME = 0x7
-- CLOCK_BOOTTIME_ALARM = 0x9
-- CLOCK_DEFAULT = 0x0
-- CLOCK_EXT = 0x1
-- CLOCK_INT = 0x2
-- CLOCK_MONOTONIC = 0x1
-- CLOCK_MONOTONIC_COARSE = 0x6
-- CLOCK_MONOTONIC_RAW = 0x4
-- CLOCK_PROCESS_CPUTIME_ID = 0x2
-- CLOCK_REALTIME = 0x0
-- CLOCK_REALTIME_ALARM = 0x8
-- CLOCK_REALTIME_COARSE = 0x5
-- CLOCK_TAI = 0xb
-- CLOCK_THREAD_CPUTIME_ID = 0x3
-- CLOCK_TXFROMRX = 0x4
-- CLOCK_TXINT = 0x3
-- CLONE_CHILD_CLEARTID = 0x200000
-- CLONE_CHILD_SETTID = 0x1000000
-- CLONE_DETACHED = 0x400000
-- CLONE_FILES = 0x400
-- CLONE_FS = 0x200
-- CLONE_IO = 0x80000000
-- CLONE_NEWCGROUP = 0x2000000
-- CLONE_NEWIPC = 0x8000000
-- CLONE_NEWNET = 0x40000000
-- CLONE_NEWNS = 0x20000
-- CLONE_NEWPID = 0x20000000
-- CLONE_NEWUSER = 0x10000000
-- CLONE_NEWUTS = 0x4000000
-- CLONE_PARENT = 0x8000
-- CLONE_PARENT_SETTID = 0x100000
-- CLONE_PTRACE = 0x2000
-- CLONE_SETTLS = 0x80000
-- CLONE_SIGHAND = 0x800
-- CLONE_SYSVSEM = 0x40000
-- CLONE_THREAD = 0x10000
-- CLONE_UNTRACED = 0x800000
-- CLONE_VFORK = 0x4000
-- CLONE_VM = 0x100
-- CMSPAR = 0x40000000
-- CR0 = 0x0
-- CR1 = 0x1000
-- CR2 = 0x2000
-- CR3 = 0x3000
-- CRDLY = 0x3000
-- CREAD = 0x800
-- CRTSCTS = 0x80000000
-- CS5 = 0x0
-- CS6 = 0x100
-- CS7 = 0x200
-- CS8 = 0x300
-- CSIGNAL = 0xff
-- CSIZE = 0x300
-- CSTART = 0x11
-- CSTATUS = 0x0
-- CSTOP = 0x13
-- CSTOPB = 0x400
-- CSUSP = 0x1a
-- DT_BLK = 0x6
-- DT_CHR = 0x2
-- DT_DIR = 0x4
-- DT_FIFO = 0x1
-- DT_LNK = 0xa
-- DT_REG = 0x8
-- DT_SOCK = 0xc
-- DT_UNKNOWN = 0x0
-- DT_WHT = 0xe
-- ECHO = 0x8
-- ECHOCTL = 0x40
-- ECHOE = 0x2
-- ECHOK = 0x4
-- ECHOKE = 0x1
-- ECHONL = 0x10
-- ECHOPRT = 0x20
-- EFD_CLOEXEC = 0x80000
-- EFD_NONBLOCK = 0x800
-- EFD_SEMAPHORE = 0x1
-- ENCODING_DEFAULT = 0x0
-- ENCODING_FM_MARK = 0x3
-- ENCODING_FM_SPACE = 0x4
-- ENCODING_MANCHESTER = 0x5
-- ENCODING_NRZ = 0x1
-- ENCODING_NRZI = 0x2
-- EPOLLERR = 0x8
-- EPOLLET = 0x80000000
-- EPOLLEXCLUSIVE = 0x10000000
-- EPOLLHUP = 0x10
-- EPOLLIN = 0x1
-- EPOLLMSG = 0x400
-- EPOLLONESHOT = 0x40000000
-- EPOLLOUT = 0x4
-- EPOLLPRI = 0x2
-- EPOLLRDBAND = 0x80
-- EPOLLRDHUP = 0x2000
-- EPOLLRDNORM = 0x40
-- EPOLLWAKEUP = 0x20000000
-- EPOLLWRBAND = 0x200
-- EPOLLWRNORM = 0x100
-- EPOLL_CLOEXEC = 0x80000
-- EPOLL_CTL_ADD = 0x1
-- EPOLL_CTL_DEL = 0x2
-- EPOLL_CTL_MOD = 0x3
-- ETH_P_1588 = 0x88f7
-- ETH_P_8021AD = 0x88a8
-- ETH_P_8021AH = 0x88e7
-- ETH_P_8021Q = 0x8100
-- ETH_P_80221 = 0x8917
-- ETH_P_802_2 = 0x4
-- ETH_P_802_3 = 0x1
-- ETH_P_802_3_MIN = 0x600
-- ETH_P_802_EX1 = 0x88b5
-- ETH_P_AARP = 0x80f3
-- ETH_P_AF_IUCV = 0xfbfb
-- ETH_P_ALL = 0x3
-- ETH_P_AOE = 0x88a2
-- ETH_P_ARCNET = 0x1a
-- ETH_P_ARP = 0x806
-- ETH_P_ATALK = 0x809b
-- ETH_P_ATMFATE = 0x8884
-- ETH_P_ATMMPOA = 0x884c
-- ETH_P_AX25 = 0x2
-- ETH_P_BATMAN = 0x4305
-- ETH_P_BPQ = 0x8ff
-- ETH_P_CAIF = 0xf7
-- ETH_P_CAN = 0xc
-- ETH_P_CANFD = 0xd
-- ETH_P_CONTROL = 0x16
-- ETH_P_CUST = 0x6006
-- ETH_P_DDCMP = 0x6
-- ETH_P_DEC = 0x6000
-- ETH_P_DIAG = 0x6005
-- ETH_P_DNA_DL = 0x6001
-- ETH_P_DNA_RC = 0x6002
-- ETH_P_DNA_RT = 0x6003
-- ETH_P_DSA = 0x1b
-- ETH_P_ECONET = 0x18
-- ETH_P_EDSA = 0xdada
-- ETH_P_FCOE = 0x8906
-- ETH_P_FIP = 0x8914
-- ETH_P_HDLC = 0x19
-- ETH_P_HSR = 0x892f
-- ETH_P_IEEE802154 = 0xf6
-- ETH_P_IEEEPUP = 0xa00
-- ETH_P_IEEEPUPAT = 0xa01
-- ETH_P_IP = 0x800
-- ETH_P_IPV6 = 0x86dd
-- ETH_P_IPX = 0x8137
-- ETH_P_IRDA = 0x17
-- ETH_P_LAT = 0x6004
-- ETH_P_LINK_CTL = 0x886c
-- ETH_P_LOCALTALK = 0x9
-- ETH_P_LOOP = 0x60
-- ETH_P_LOOPBACK = 0x9000
-- ETH_P_MACSEC = 0x88e5
-- ETH_P_MOBITEX = 0x15
-- ETH_P_MPLS_MC = 0x8848
-- ETH_P_MPLS_UC = 0x8847
-- ETH_P_MVRP = 0x88f5
-- ETH_P_NCSI = 0x88f8
-- ETH_P_PAE = 0x888e
-- ETH_P_PAUSE = 0x8808
-- ETH_P_PHONET = 0xf5
-- ETH_P_PPPTALK = 0x10
-- ETH_P_PPP_DISC = 0x8863
-- ETH_P_PPP_MP = 0x8
-- ETH_P_PPP_SES = 0x8864
-- ETH_P_PRP = 0x88fb
-- ETH_P_PUP = 0x200
-- ETH_P_PUPAT = 0x201
-- ETH_P_QINQ1 = 0x9100
-- ETH_P_QINQ2 = 0x9200
-- ETH_P_QINQ3 = 0x9300
-- ETH_P_RARP = 0x8035
-- ETH_P_SCA = 0x6007
-- ETH_P_SLOW = 0x8809
-- ETH_P_SNAP = 0x5
-- ETH_P_TDLS = 0x890d
-- ETH_P_TEB = 0x6558
-- ETH_P_TIPC = 0x88ca
-- ETH_P_TRAILER = 0x1c
-- ETH_P_TR_802_2 = 0x11
-- ETH_P_TSN = 0x22f0
-- ETH_P_WAN_PPP = 0x7
-- ETH_P_WCCP = 0x883e
-- ETH_P_X25 = 0x805
-- ETH_P_XDSA = 0xf8
-- EXTA = 0xe
-- EXTB = 0xf
-- EXTPROC = 0x10000000
-- FALLOC_FL_COLLAPSE_RANGE = 0x8
-- FALLOC_FL_INSERT_RANGE = 0x20
-- FALLOC_FL_KEEP_SIZE = 0x1
-- FALLOC_FL_NO_HIDE_STALE = 0x4
-- FALLOC_FL_PUNCH_HOLE = 0x2
-- FALLOC_FL_UNSHARE_RANGE = 0x40
-- FALLOC_FL_ZERO_RANGE = 0x10
-- FD_CLOEXEC = 0x1
-- FD_SETSIZE = 0x400
-- FF0 = 0x0
-- FF1 = 0x4000
-- FFDLY = 0x4000
-- FLUSHO = 0x800000
-- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
-- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
-- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
-- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
-- FS_ENCRYPTION_MODE_INVALID = 0x0
-- FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
-- FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
-- FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
-- FS_KEY_DESCRIPTOR_SIZE = 0x8
-- FS_KEY_DESC_PREFIX = "fscrypt:"
-- FS_KEY_DESC_PREFIX_SIZE = 0x8
-- FS_MAX_KEY_SIZE = 0x40
-- FS_POLICY_FLAGS_PAD_16 = 0x2
-- FS_POLICY_FLAGS_PAD_32 = 0x3
-- FS_POLICY_FLAGS_PAD_4 = 0x0
-- FS_POLICY_FLAGS_PAD_8 = 0x1
-- FS_POLICY_FLAGS_PAD_MASK = 0x3
-- FS_POLICY_FLAGS_VALID = 0x3
-- F_DUPFD = 0x0
-- F_DUPFD_CLOEXEC = 0x406
-- F_EXLCK = 0x4
-- F_GETFD = 0x1
-- F_GETFL = 0x3
-- F_GETLEASE = 0x401
-- F_GETLK = 0x5
-- F_GETLK64 = 0xc
-- F_GETOWN = 0x9
-- F_GETOWN_EX = 0x10
-- F_GETPIPE_SZ = 0x408
-- F_GETSIG = 0xb
-- F_LOCK = 0x1
-- F_NOTIFY = 0x402
-- F_OFD_GETLK = 0x24
-- F_OFD_SETLK = 0x25
-- F_OFD_SETLKW = 0x26
-- F_OK = 0x0
-- F_RDLCK = 0x0
-- F_SETFD = 0x2
-- F_SETFL = 0x4
-- F_SETLEASE = 0x400
-- F_SETLK = 0x6
-- F_SETLK64 = 0xd
-- F_SETLKW = 0x7
-- F_SETLKW64 = 0xe
-- F_SETOWN = 0x8
-- F_SETOWN_EX = 0xf
-- F_SETPIPE_SZ = 0x407
-- F_SETSIG = 0xa
-- F_SHLCK = 0x8
-- F_TEST = 0x3
-- F_TLOCK = 0x2
-- F_ULOCK = 0x0
-- F_UNLCK = 0x2
-- F_WRLCK = 0x1
-- GENL_ADMIN_PERM = 0x1
-- GENL_CMD_CAP_DO = 0x2
-- GENL_CMD_CAP_DUMP = 0x4
-- GENL_CMD_CAP_HASPOL = 0x8
-- GENL_HDRLEN = 0x4
-- GENL_ID_CTRL = 0x10
-- GENL_ID_PMCRAID = 0x12
-- GENL_ID_VFS_DQUOT = 0x11
-- GENL_MAX_ID = 0x3ff
-- GENL_MIN_ID = 0x10
-- GENL_NAMSIZ = 0x10
-- GENL_START_ALLOC = 0x13
-- GENL_UNS_ADMIN_PERM = 0x10
-- GRND_NONBLOCK = 0x1
-- GRND_RANDOM = 0x2
-- HUPCL = 0x4000
-- IBSHIFT = 0x10
-- ICANON = 0x100
-- ICMPV6_FILTER = 0x1
-- ICRNL = 0x100
-- IEXTEN = 0x400
-- IFA_F_DADFAILED = 0x8
-- IFA_F_DEPRECATED = 0x20
-- IFA_F_HOMEADDRESS = 0x10
-- IFA_F_MANAGETEMPADDR = 0x100
-- IFA_F_MCAUTOJOIN = 0x400
-- IFA_F_NODAD = 0x2
-- IFA_F_NOPREFIXROUTE = 0x200
-- IFA_F_OPTIMISTIC = 0x4
-- IFA_F_PERMANENT = 0x80
-- IFA_F_SECONDARY = 0x1
-- IFA_F_STABLE_PRIVACY = 0x800
-- IFA_F_TEMPORARY = 0x1
-- IFA_F_TENTATIVE = 0x40
-- IFA_MAX = 0x8
-- IFF_ALLMULTI = 0x200
-- IFF_ATTACH_QUEUE = 0x200
-- IFF_AUTOMEDIA = 0x4000
-- IFF_BROADCAST = 0x2
-- IFF_DEBUG = 0x4
-- IFF_DETACH_QUEUE = 0x400
-- IFF_DORMANT = 0x20000
-- IFF_DYNAMIC = 0x8000
-- IFF_ECHO = 0x40000
-- IFF_LOOPBACK = 0x8
-- IFF_LOWER_UP = 0x10000
-- IFF_MASTER = 0x400
-- IFF_MULTICAST = 0x1000
-- IFF_MULTI_QUEUE = 0x100
-- IFF_NOARP = 0x80
-- IFF_NOFILTER = 0x1000
-- IFF_NOTRAILERS = 0x20
-- IFF_NO_PI = 0x1000
-- IFF_ONE_QUEUE = 0x2000
-- IFF_PERSIST = 0x800
-- IFF_POINTOPOINT = 0x10
-- IFF_PORTSEL = 0x2000
-- IFF_PROMISC = 0x100
-- IFF_RUNNING = 0x40
-- IFF_SLAVE = 0x800
-- IFF_TAP = 0x2
-- IFF_TUN = 0x1
-- IFF_TUN_EXCL = 0x8000
-- IFF_UP = 0x1
-- IFF_VNET_HDR = 0x4000
-- IFF_VOLATILE = 0x70c5a
-- IFNAMSIZ = 0x10
-- IGNBRK = 0x1
-- IGNCR = 0x80
-- IGNPAR = 0x4
-- IMAXBEL = 0x2000
-- INLCR = 0x40
-- INPCK = 0x10
-- IN_ACCESS = 0x1
-- IN_ALL_EVENTS = 0xfff
-- IN_ATTRIB = 0x4
-- IN_CLASSA_HOST = 0xffffff
-- IN_CLASSA_MAX = 0x80
-- IN_CLASSA_NET = 0xff000000
-- IN_CLASSA_NSHIFT = 0x18
-- IN_CLASSB_HOST = 0xffff
-- IN_CLASSB_MAX = 0x10000
-- IN_CLASSB_NET = 0xffff0000
-- IN_CLASSB_NSHIFT = 0x10
-- IN_CLASSC_HOST = 0xff
-- IN_CLASSC_NET = 0xffffff00
-- IN_CLASSC_NSHIFT = 0x8
-- IN_CLOEXEC = 0x80000
-- IN_CLOSE = 0x18
-- IN_CLOSE_NOWRITE = 0x10
-- IN_CLOSE_WRITE = 0x8
-- IN_CREATE = 0x100
-- IN_DELETE = 0x200
-- IN_DELETE_SELF = 0x400
-- IN_DONT_FOLLOW = 0x2000000
-- IN_EXCL_UNLINK = 0x4000000
-- IN_IGNORED = 0x8000
-- IN_ISDIR = 0x40000000
-- IN_LOOPBACKNET = 0x7f
-- IN_MASK_ADD = 0x20000000
-- IN_MODIFY = 0x2
-- IN_MOVE = 0xc0
-- IN_MOVED_FROM = 0x40
-- IN_MOVED_TO = 0x80
-- IN_MOVE_SELF = 0x800
-- IN_NONBLOCK = 0x800
-- IN_ONESHOT = 0x80000000
-- IN_ONLYDIR = 0x1000000
-- IN_OPEN = 0x20
-- IN_Q_OVERFLOW = 0x4000
-- IN_UNMOUNT = 0x2000
-- IPPROTO_AH = 0x33
-- IPPROTO_BEETPH = 0x5e
-- IPPROTO_COMP = 0x6c
-- IPPROTO_DCCP = 0x21
-- IPPROTO_DSTOPTS = 0x3c
-- IPPROTO_EGP = 0x8
-- IPPROTO_ENCAP = 0x62
-- IPPROTO_ESP = 0x32
-- IPPROTO_FRAGMENT = 0x2c
-- IPPROTO_GRE = 0x2f
-- IPPROTO_HOPOPTS = 0x0
-- IPPROTO_ICMP = 0x1
-- IPPROTO_ICMPV6 = 0x3a
-- IPPROTO_IDP = 0x16
-- IPPROTO_IGMP = 0x2
-- IPPROTO_IP = 0x0
-- IPPROTO_IPIP = 0x4
-- IPPROTO_IPV6 = 0x29
-- IPPROTO_MH = 0x87
-- IPPROTO_MPLS = 0x89
-- IPPROTO_MTP = 0x5c
-- IPPROTO_NONE = 0x3b
-- IPPROTO_PIM = 0x67
-- IPPROTO_PUP = 0xc
-- IPPROTO_RAW = 0xff
-- IPPROTO_ROUTING = 0x2b
-- IPPROTO_RSVP = 0x2e
-- IPPROTO_SCTP = 0x84
-- IPPROTO_TCP = 0x6
-- IPPROTO_TP = 0x1d
-- IPPROTO_UDP = 0x11
-- IPPROTO_UDPLITE = 0x88
-- IPV6_2292DSTOPTS = 0x4
-- IPV6_2292HOPLIMIT = 0x8
-- IPV6_2292HOPOPTS = 0x3
-- IPV6_2292PKTINFO = 0x2
-- IPV6_2292PKTOPTIONS = 0x6
-- IPV6_2292RTHDR = 0x5
-- IPV6_ADDRFORM = 0x1
-- IPV6_ADD_MEMBERSHIP = 0x14
-- IPV6_AUTHHDR = 0xa
-- IPV6_CHECKSUM = 0x7
-- IPV6_DONTFRAG = 0x3e
-- IPV6_DROP_MEMBERSHIP = 0x15
-- IPV6_DSTOPTS = 0x3b
-- IPV6_HDRINCL = 0x24
-- IPV6_HOPLIMIT = 0x34
-- IPV6_HOPOPTS = 0x36
-- IPV6_IPSEC_POLICY = 0x22
-- IPV6_JOIN_ANYCAST = 0x1b
-- IPV6_JOIN_GROUP = 0x14
-- IPV6_LEAVE_ANYCAST = 0x1c
-- IPV6_LEAVE_GROUP = 0x15
-- IPV6_MTU = 0x18
-- IPV6_MTU_DISCOVER = 0x17
-- IPV6_MULTICAST_HOPS = 0x12
-- IPV6_MULTICAST_IF = 0x11
-- IPV6_MULTICAST_LOOP = 0x13
-- IPV6_NEXTHOP = 0x9
-- IPV6_PATHMTU = 0x3d
-- IPV6_PKTINFO = 0x32
-- IPV6_PMTUDISC_DO = 0x2
-- IPV6_PMTUDISC_DONT = 0x0
-- IPV6_PMTUDISC_INTERFACE = 0x4
-- IPV6_PMTUDISC_OMIT = 0x5
-- IPV6_PMTUDISC_PROBE = 0x3
-- IPV6_PMTUDISC_WANT = 0x1
-- IPV6_RECVDSTOPTS = 0x3a
-- IPV6_RECVERR = 0x19
-- IPV6_RECVHOPLIMIT = 0x33
-- IPV6_RECVHOPOPTS = 0x35
-- IPV6_RECVPATHMTU = 0x3c
-- IPV6_RECVPKTINFO = 0x31
-- IPV6_RECVRTHDR = 0x38
-- IPV6_RECVTCLASS = 0x42
-- IPV6_ROUTER_ALERT = 0x16
-- IPV6_RTHDR = 0x39
-- IPV6_RTHDRDSTOPTS = 0x37
-- IPV6_RTHDR_LOOSE = 0x0
-- IPV6_RTHDR_STRICT = 0x1
-- IPV6_RTHDR_TYPE_0 = 0x0
-- IPV6_RXDSTOPTS = 0x3b
-- IPV6_RXHOPOPTS = 0x36
-- IPV6_TCLASS = 0x43
-- IPV6_UNICAST_HOPS = 0x10
-- IPV6_V6ONLY = 0x1a
-- IPV6_XFRM_POLICY = 0x23
-- IP_ADD_MEMBERSHIP = 0x23
-- IP_ADD_SOURCE_MEMBERSHIP = 0x27
-- IP_BIND_ADDRESS_NO_PORT = 0x18
-- IP_BLOCK_SOURCE = 0x26
-- IP_CHECKSUM = 0x17
-- IP_DEFAULT_MULTICAST_LOOP = 0x1
-- IP_DEFAULT_MULTICAST_TTL = 0x1
-- IP_DF = 0x4000
-- IP_DROP_MEMBERSHIP = 0x24
-- IP_DROP_SOURCE_MEMBERSHIP = 0x28
-- IP_FREEBIND = 0xf
-- IP_HDRINCL = 0x3
-- IP_IPSEC_POLICY = 0x10
-- IP_MAXPACKET = 0xffff
-- IP_MAX_MEMBERSHIPS = 0x14
-- IP_MF = 0x2000
-- IP_MINTTL = 0x15
-- IP_MSFILTER = 0x29
-- IP_MSS = 0x240
-- IP_MTU = 0xe
-- IP_MTU_DISCOVER = 0xa
-- IP_MULTICAST_ALL = 0x31
-- IP_MULTICAST_IF = 0x20
-- IP_MULTICAST_LOOP = 0x22
-- IP_MULTICAST_TTL = 0x21
-- IP_NODEFRAG = 0x16
-- IP_OFFMASK = 0x1fff
-- IP_OPTIONS = 0x4
-- IP_ORIGDSTADDR = 0x14
-- IP_PASSSEC = 0x12
-- IP_PKTINFO = 0x8
-- IP_PKTOPTIONS = 0x9
-- IP_PMTUDISC = 0xa
-- IP_PMTUDISC_DO = 0x2
-- IP_PMTUDISC_DONT = 0x0
-- IP_PMTUDISC_INTERFACE = 0x4
-- IP_PMTUDISC_OMIT = 0x5
-- IP_PMTUDISC_PROBE = 0x3
-- IP_PMTUDISC_WANT = 0x1
-- IP_RECVERR = 0xb
-- IP_RECVOPTS = 0x6
-- IP_RECVORIGDSTADDR = 0x14
-- IP_RECVRETOPTS = 0x7
-- IP_RECVTOS = 0xd
-- IP_RECVTTL = 0xc
-- IP_RETOPTS = 0x7
-- IP_RF = 0x8000
-- IP_ROUTER_ALERT = 0x5
-- IP_TOS = 0x1
-- IP_TRANSPARENT = 0x13
-- IP_TTL = 0x2
-- IP_UNBLOCK_SOURCE = 0x25
-- IP_UNICAST_IF = 0x32
-- IP_XFRM_POLICY = 0x11
-- ISIG = 0x80
-- ISTRIP = 0x20
-- IUCLC = 0x1000
-- IUTF8 = 0x4000
-- IXANY = 0x800
-- IXOFF = 0x400
-- IXON = 0x200
-- KEYCTL_ASSUME_AUTHORITY = 0x10
-- KEYCTL_CHOWN = 0x4
-- KEYCTL_CLEAR = 0x7
-- KEYCTL_DESCRIBE = 0x6
-- KEYCTL_DH_COMPUTE = 0x17
-- KEYCTL_GET_KEYRING_ID = 0x0
-- KEYCTL_GET_PERSISTENT = 0x16
-- KEYCTL_GET_SECURITY = 0x11
-- KEYCTL_INSTANTIATE = 0xc
-- KEYCTL_INSTANTIATE_IOV = 0x14
-- KEYCTL_INVALIDATE = 0x15
-- KEYCTL_JOIN_SESSION_KEYRING = 0x1
-- KEYCTL_LINK = 0x8
-- KEYCTL_NEGATE = 0xd
-- KEYCTL_READ = 0xb
-- KEYCTL_REJECT = 0x13
-- KEYCTL_REVOKE = 0x3
-- KEYCTL_SEARCH = 0xa
-- KEYCTL_SESSION_TO_PARENT = 0x12
-- KEYCTL_SETPERM = 0x5
-- KEYCTL_SET_REQKEY_KEYRING = 0xe
-- KEYCTL_SET_TIMEOUT = 0xf
-- KEYCTL_UNLINK = 0x9
-- KEYCTL_UPDATE = 0x2
-- KEY_REQKEY_DEFL_DEFAULT = 0x0
-- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
-- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
-- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
-- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
-- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
-- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
-- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
-- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
-- KEY_SPEC_GROUP_KEYRING = -0x6
-- KEY_SPEC_PROCESS_KEYRING = -0x2
-- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
-- KEY_SPEC_REQUESTOR_KEYRING = -0x8
-- KEY_SPEC_SESSION_KEYRING = -0x3
-- KEY_SPEC_THREAD_KEYRING = -0x1
-- KEY_SPEC_USER_KEYRING = -0x4
-- KEY_SPEC_USER_SESSION_KEYRING = -0x5
-- LINUX_REBOOT_CMD_CAD_OFF = 0x0
-- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
-- LINUX_REBOOT_CMD_HALT = 0xcdef0123
-- LINUX_REBOOT_CMD_KEXEC = 0x45584543
-- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
-- LINUX_REBOOT_CMD_RESTART = 0x1234567
-- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
-- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
-- LINUX_REBOOT_MAGIC1 = 0xfee1dead
-- LINUX_REBOOT_MAGIC2 = 0x28121969
-- LOCK_EX = 0x2
-- LOCK_NB = 0x4
-- LOCK_SH = 0x1
-- LOCK_UN = 0x8
-- MADV_DODUMP = 0x11
-- MADV_DOFORK = 0xb
-- MADV_DONTDUMP = 0x10
-- MADV_DONTFORK = 0xa
-- MADV_DONTNEED = 0x4
-- MADV_FREE = 0x8
-- MADV_HUGEPAGE = 0xe
-- MADV_HWPOISON = 0x64
-- MADV_MERGEABLE = 0xc
-- MADV_NOHUGEPAGE = 0xf
-- MADV_NORMAL = 0x0
-- MADV_RANDOM = 0x1
-- MADV_REMOVE = 0x9
-- MADV_SEQUENTIAL = 0x2
-- MADV_UNMERGEABLE = 0xd
-- MADV_WILLNEED = 0x3
-- MAP_ANON = 0x20
-- MAP_ANONYMOUS = 0x20
-- MAP_DENYWRITE = 0x800
-- MAP_EXECUTABLE = 0x1000
-- MAP_FILE = 0x0
-- MAP_FIXED = 0x10
-- MAP_GROWSDOWN = 0x100
-- MAP_HUGETLB = 0x40000
-- MAP_HUGE_MASK = 0x3f
-- MAP_HUGE_SHIFT = 0x1a
-- MAP_LOCKED = 0x80
-- MAP_NONBLOCK = 0x10000
-- MAP_NORESERVE = 0x40
-- MAP_POPULATE = 0x8000
-- MAP_PRIVATE = 0x2
-- MAP_SHARED = 0x1
-- MAP_STACK = 0x20000
-- MAP_TYPE = 0xf
-- MCL_CURRENT = 0x2000
-- MCL_FUTURE = 0x4000
-- MCL_ONFAULT = 0x8000
-- MNT_DETACH = 0x2
-- MNT_EXPIRE = 0x4
-- MNT_FORCE = 0x1
-- MSG_BATCH = 0x40000
-- MSG_CMSG_CLOEXEC = 0x40000000
-- MSG_CONFIRM = 0x800
-- MSG_CTRUNC = 0x8
-- MSG_DONTROUTE = 0x4
-- MSG_DONTWAIT = 0x40
-- MSG_EOR = 0x80
-- MSG_ERRQUEUE = 0x2000
-- MSG_FASTOPEN = 0x20000000
-- MSG_FIN = 0x200
-- MSG_MORE = 0x8000
-- MSG_NOSIGNAL = 0x4000
-- MSG_OOB = 0x1
-- MSG_PEEK = 0x2
-- MSG_PROXY = 0x10
-- MSG_RST = 0x1000
-- MSG_SYN = 0x400
-- MSG_TRUNC = 0x20
-- MSG_TRYHARD = 0x4
-- MSG_WAITALL = 0x100
-- MSG_WAITFORONE = 0x10000
-- MS_ACTIVE = 0x40000000
-- MS_ASYNC = 0x1
-- MS_BIND = 0x1000
-- MS_BORN = 0x20000000
-- MS_DIRSYNC = 0x80
-- MS_INVALIDATE = 0x2
-- MS_I_VERSION = 0x800000
-- MS_KERNMOUNT = 0x400000
-- MS_LAZYTIME = 0x2000000
-- MS_MANDLOCK = 0x40
-- MS_MGC_MSK = 0xffff0000
-- MS_MGC_VAL = 0xc0ed0000
-- MS_MOVE = 0x2000
-- MS_NOATIME = 0x400
-- MS_NODEV = 0x4
-- MS_NODIRATIME = 0x800
-- MS_NOEXEC = 0x8
-- MS_NOREMOTELOCK = 0x8000000
-- MS_NOSEC = 0x10000000
-- MS_NOSUID = 0x2
-- MS_NOUSER = -0x80000000
-- MS_POSIXACL = 0x10000
-- MS_PRIVATE = 0x40000
-- MS_RDONLY = 0x1
-- MS_REC = 0x4000
-- MS_RELATIME = 0x200000
-- MS_REMOUNT = 0x20
-- MS_RMT_MASK = 0x2800051
-- MS_SHARED = 0x100000
-- MS_SILENT = 0x8000
-- MS_SLAVE = 0x80000
-- MS_STRICTATIME = 0x1000000
-- MS_SYNC = 0x4
-- MS_SYNCHRONOUS = 0x10
-- MS_UNBINDABLE = 0x20000
-- MS_VERBOSE = 0x8000
-- NAME_MAX = 0xff
-- NETLINK_ADD_MEMBERSHIP = 0x1
-- NETLINK_AUDIT = 0x9
-- NETLINK_BROADCAST_ERROR = 0x4
-- NETLINK_CAP_ACK = 0xa
-- NETLINK_CONNECTOR = 0xb
-- NETLINK_CRYPTO = 0x15
-- NETLINK_DNRTMSG = 0xe
-- NETLINK_DROP_MEMBERSHIP = 0x2
-- NETLINK_ECRYPTFS = 0x13
-- NETLINK_FIB_LOOKUP = 0xa
-- NETLINK_FIREWALL = 0x3
-- NETLINK_GENERIC = 0x10
-- NETLINK_INET_DIAG = 0x4
-- NETLINK_IP6_FW = 0xd
-- NETLINK_ISCSI = 0x8
-- NETLINK_KOBJECT_UEVENT = 0xf
-- NETLINK_LISTEN_ALL_NSID = 0x8
-- NETLINK_LIST_MEMBERSHIPS = 0x9
-- NETLINK_NETFILTER = 0xc
-- NETLINK_NFLOG = 0x5
-- NETLINK_NO_ENOBUFS = 0x5
-- NETLINK_PKTINFO = 0x3
-- NETLINK_RDMA = 0x14
-- NETLINK_ROUTE = 0x0
-- NETLINK_RX_RING = 0x6
-- NETLINK_SCSITRANSPORT = 0x12
-- NETLINK_SELINUX = 0x7
-- NETLINK_SOCK_DIAG = 0x4
-- NETLINK_TX_RING = 0x7
-- NETLINK_UNUSED = 0x1
-- NETLINK_USERSOCK = 0x2
-- NETLINK_XFRM = 0x6
-- NL0 = 0x0
-- NL1 = 0x100
-- NL2 = 0x200
-- NL3 = 0x300
-- NLA_ALIGNTO = 0x4
-- NLA_F_NESTED = 0x8000
-- NLA_F_NET_BYTEORDER = 0x4000
-- NLA_HDRLEN = 0x4
-- NLDLY = 0x300
-- NLMSG_ALIGNTO = 0x4
-- NLMSG_DONE = 0x3
-- NLMSG_ERROR = 0x2
-- NLMSG_HDRLEN = 0x10
-- NLMSG_MIN_TYPE = 0x10
-- NLMSG_NOOP = 0x1
-- NLMSG_OVERRUN = 0x4
-- NLM_F_ACK = 0x4
-- NLM_F_APPEND = 0x800
-- NLM_F_ATOMIC = 0x400
-- NLM_F_CREATE = 0x400
-- NLM_F_DUMP = 0x300
-- NLM_F_DUMP_FILTERED = 0x20
-- NLM_F_DUMP_INTR = 0x10
-- NLM_F_ECHO = 0x8
-- NLM_F_EXCL = 0x200
-- NLM_F_MATCH = 0x200
-- NLM_F_MULTI = 0x2
-- NLM_F_REPLACE = 0x100
-- NLM_F_REQUEST = 0x1
-- NLM_F_ROOT = 0x100
-- NOFLSH = 0x80000000
-- OCRNL = 0x8
-- OFDEL = 0x80
-- OFILL = 0x40
-- OLCUC = 0x4
-- ONLCR = 0x2
-- ONLRET = 0x20
-- ONOCR = 0x10
-- OPOST = 0x1
-- O_ACCMODE = 0x3
-- O_APPEND = 0x400
-- O_ASYNC = 0x2000
-- O_CLOEXEC = 0x80000
-- O_CREAT = 0x40
-- O_DIRECT = 0x20000
-- O_DIRECTORY = 0x4000
-- O_DSYNC = 0x1000
-- O_EXCL = 0x80
-- O_FSYNC = 0x101000
-- O_LARGEFILE = 0x0
-- O_NDELAY = 0x800
-- O_NOATIME = 0x40000
-- O_NOCTTY = 0x100
-- O_NOFOLLOW = 0x8000
-- O_NONBLOCK = 0x800
-- O_PATH = 0x200000
-- O_RDONLY = 0x0
-- O_RDWR = 0x2
-- O_RSYNC = 0x101000
-- O_SYNC = 0x101000
-- O_TMPFILE = 0x404000
-- O_TRUNC = 0x200
-- O_WRONLY = 0x1
-- PACKET_ADD_MEMBERSHIP = 0x1
-- PACKET_AUXDATA = 0x8
-- PACKET_BROADCAST = 0x1
-- PACKET_COPY_THRESH = 0x7
-- PACKET_DROP_MEMBERSHIP = 0x2
-- PACKET_FANOUT = 0x12
-- PACKET_FANOUT_CBPF = 0x6
-- PACKET_FANOUT_CPU = 0x2
-- PACKET_FANOUT_DATA = 0x16
-- PACKET_FANOUT_EBPF = 0x7
-- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
-- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
-- PACKET_FANOUT_HASH = 0x0
-- PACKET_FANOUT_LB = 0x1
-- PACKET_FANOUT_QM = 0x5
-- PACKET_FANOUT_RND = 0x4
-- PACKET_FANOUT_ROLLOVER = 0x3
-- PACKET_FASTROUTE = 0x6
-- PACKET_HDRLEN = 0xb
-- PACKET_HOST = 0x0
-- PACKET_KERNEL = 0x7
-- PACKET_LOOPBACK = 0x5
-- PACKET_LOSS = 0xe
-- PACKET_MR_ALLMULTI = 0x2
-- PACKET_MR_MULTICAST = 0x0
-- PACKET_MR_PROMISC = 0x1
-- PACKET_MR_UNICAST = 0x3
-- PACKET_MULTICAST = 0x2
-- PACKET_ORIGDEV = 0x9
-- PACKET_OTHERHOST = 0x3
-- PACKET_OUTGOING = 0x4
-- PACKET_QDISC_BYPASS = 0x14
-- PACKET_RECV_OUTPUT = 0x3
-- PACKET_RESERVE = 0xc
-- PACKET_ROLLOVER_STATS = 0x15
-- PACKET_RX_RING = 0x5
-- PACKET_STATISTICS = 0x6
-- PACKET_TIMESTAMP = 0x11
-- PACKET_TX_HAS_OFF = 0x13
-- PACKET_TX_RING = 0xd
-- PACKET_TX_TIMESTAMP = 0x10
-- PACKET_USER = 0x6
-- PACKET_VERSION = 0xa
-- PACKET_VNET_HDR = 0xf
-- PARENB = 0x1000
-- PARITY_CRC16_PR0 = 0x2
-- PARITY_CRC16_PR0_CCITT = 0x4
-- PARITY_CRC16_PR1 = 0x3
-- PARITY_CRC16_PR1_CCITT = 0x5
-- PARITY_CRC32_PR0_CCITT = 0x6
-- PARITY_CRC32_PR1_CCITT = 0x7
-- PARITY_DEFAULT = 0x0
-- PARITY_NONE = 0x1
-- PARMRK = 0x8
-- PARODD = 0x2000
-- PENDIN = 0x20000000
-- PERF_EVENT_IOC_DISABLE = 0x20002401
-- PERF_EVENT_IOC_ENABLE = 0x20002400
-- PERF_EVENT_IOC_ID = 0x40082407
-- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
-- PERF_EVENT_IOC_PERIOD = 0x80082404
-- PERF_EVENT_IOC_REFRESH = 0x20002402
-- PERF_EVENT_IOC_RESET = 0x20002403
-- PERF_EVENT_IOC_SET_BPF = 0x80042408
-- PERF_EVENT_IOC_SET_FILTER = 0x80082406
-- PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
-- PRIO_PGRP = 0x1
-- PRIO_PROCESS = 0x0
-- PRIO_USER = 0x2
-- PROT_EXEC = 0x4
-- PROT_GROWSDOWN = 0x1000000
-- PROT_GROWSUP = 0x2000000
-- PROT_NONE = 0x0
-- PROT_READ = 0x1
-- PROT_SAO = 0x10
-- PROT_WRITE = 0x2
-- PR_CAPBSET_DROP = 0x18
-- PR_CAPBSET_READ = 0x17
-- PR_CAP_AMBIENT = 0x2f
-- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
-- PR_CAP_AMBIENT_IS_SET = 0x1
-- PR_CAP_AMBIENT_LOWER = 0x3
-- PR_CAP_AMBIENT_RAISE = 0x2
-- PR_ENDIAN_BIG = 0x0
-- PR_ENDIAN_LITTLE = 0x1
-- PR_ENDIAN_PPC_LITTLE = 0x2
-- PR_FPEMU_NOPRINT = 0x1
-- PR_FPEMU_SIGFPE = 0x2
-- PR_FP_EXC_ASYNC = 0x2
-- PR_FP_EXC_DISABLED = 0x0
-- PR_FP_EXC_DIV = 0x10000
-- PR_FP_EXC_INV = 0x100000
-- PR_FP_EXC_NONRECOV = 0x1
-- PR_FP_EXC_OVF = 0x20000
-- PR_FP_EXC_PRECISE = 0x3
-- PR_FP_EXC_RES = 0x80000
-- PR_FP_EXC_SW_ENABLE = 0x80
-- PR_FP_EXC_UND = 0x40000
-- PR_FP_MODE_FR = 0x1
-- PR_FP_MODE_FRE = 0x2
-- PR_GET_CHILD_SUBREAPER = 0x25
-- PR_GET_DUMPABLE = 0x3
-- PR_GET_ENDIAN = 0x13
-- PR_GET_FPEMU = 0x9
-- PR_GET_FPEXC = 0xb
-- PR_GET_FP_MODE = 0x2e
-- PR_GET_KEEPCAPS = 0x7
-- PR_GET_NAME = 0x10
-- PR_GET_NO_NEW_PRIVS = 0x27
-- PR_GET_PDEATHSIG = 0x2
-- PR_GET_SECCOMP = 0x15
-- PR_GET_SECUREBITS = 0x1b
-- PR_GET_THP_DISABLE = 0x2a
-- PR_GET_TID_ADDRESS = 0x28
-- PR_GET_TIMERSLACK = 0x1e
-- PR_GET_TIMING = 0xd
-- PR_GET_TSC = 0x19
-- PR_GET_UNALIGN = 0x5
-- PR_MCE_KILL = 0x21
-- PR_MCE_KILL_CLEAR = 0x0
-- PR_MCE_KILL_DEFAULT = 0x2
-- PR_MCE_KILL_EARLY = 0x1
-- PR_MCE_KILL_GET = 0x22
-- PR_MCE_KILL_LATE = 0x0
-- PR_MCE_KILL_SET = 0x1
-- PR_MPX_DISABLE_MANAGEMENT = 0x2c
-- PR_MPX_ENABLE_MANAGEMENT = 0x2b
-- PR_SET_CHILD_SUBREAPER = 0x24
-- PR_SET_DUMPABLE = 0x4
-- PR_SET_ENDIAN = 0x14
-- PR_SET_FPEMU = 0xa
-- PR_SET_FPEXC = 0xc
-- PR_SET_FP_MODE = 0x2d
-- PR_SET_KEEPCAPS = 0x8
-- PR_SET_MM = 0x23
-- PR_SET_MM_ARG_END = 0x9
-- PR_SET_MM_ARG_START = 0x8
-- PR_SET_MM_AUXV = 0xc
-- PR_SET_MM_BRK = 0x7
-- PR_SET_MM_END_CODE = 0x2
-- PR_SET_MM_END_DATA = 0x4
-- PR_SET_MM_ENV_END = 0xb
-- PR_SET_MM_ENV_START = 0xa
-- PR_SET_MM_EXE_FILE = 0xd
-- PR_SET_MM_MAP = 0xe
-- PR_SET_MM_MAP_SIZE = 0xf
-- PR_SET_MM_START_BRK = 0x6
-- PR_SET_MM_START_CODE = 0x1
-- PR_SET_MM_START_DATA = 0x3
-- PR_SET_MM_START_STACK = 0x5
-- PR_SET_NAME = 0xf
-- PR_SET_NO_NEW_PRIVS = 0x26
-- PR_SET_PDEATHSIG = 0x1
-- PR_SET_PTRACER = 0x59616d61
-- PR_SET_PTRACER_ANY = -0x1
-- PR_SET_SECCOMP = 0x16
-- PR_SET_SECUREBITS = 0x1c
-- PR_SET_THP_DISABLE = 0x29
-- PR_SET_TIMERSLACK = 0x1d
-- PR_SET_TIMING = 0xe
-- PR_SET_TSC = 0x1a
-- PR_SET_UNALIGN = 0x6
-- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
-- PR_TASK_PERF_EVENTS_ENABLE = 0x20
-- PR_TIMING_STATISTICAL = 0x0
-- PR_TIMING_TIMESTAMP = 0x1
-- PR_TSC_ENABLE = 0x1
-- PR_TSC_SIGSEGV = 0x2
-- PR_UNALIGN_NOPRINT = 0x1
-- PR_UNALIGN_SIGBUS = 0x2
-- PTRACE_ATTACH = 0x10
-- PTRACE_CONT = 0x7
-- PTRACE_DETACH = 0x11
-- PTRACE_EVENT_CLONE = 0x3
-- PTRACE_EVENT_EXEC = 0x4
-- PTRACE_EVENT_EXIT = 0x6
-- PTRACE_EVENT_FORK = 0x1
-- PTRACE_EVENT_SECCOMP = 0x7
-- PTRACE_EVENT_STOP = 0x80
-- PTRACE_EVENT_VFORK = 0x2
-- PTRACE_EVENT_VFORK_DONE = 0x5
-- PTRACE_GETEVENTMSG = 0x4201
-- PTRACE_GETEVRREGS = 0x14
-- PTRACE_GETFPREGS = 0xe
-- PTRACE_GETREGS = 0xc
-- PTRACE_GETREGS64 = 0x16
-- PTRACE_GETREGSET = 0x4204
-- PTRACE_GETSIGINFO = 0x4202
-- PTRACE_GETSIGMASK = 0x420a
-- PTRACE_GETVRREGS = 0x12
-- PTRACE_GETVSRREGS = 0x1b
-- PTRACE_GET_DEBUGREG = 0x19
-- PTRACE_INTERRUPT = 0x4207
-- PTRACE_KILL = 0x8
-- PTRACE_LISTEN = 0x4208
-- PTRACE_O_EXITKILL = 0x100000
-- PTRACE_O_MASK = 0x3000ff
-- PTRACE_O_SUSPEND_SECCOMP = 0x200000
-- PTRACE_O_TRACECLONE = 0x8
-- PTRACE_O_TRACEEXEC = 0x10
-- PTRACE_O_TRACEEXIT = 0x40
-- PTRACE_O_TRACEFORK = 0x2
-- PTRACE_O_TRACESECCOMP = 0x80
-- PTRACE_O_TRACESYSGOOD = 0x1
-- PTRACE_O_TRACEVFORK = 0x4
-- PTRACE_O_TRACEVFORKDONE = 0x20
-- PTRACE_PEEKDATA = 0x2
-- PTRACE_PEEKSIGINFO = 0x4209
-- PTRACE_PEEKSIGINFO_SHARED = 0x1
-- PTRACE_PEEKTEXT = 0x1
-- PTRACE_PEEKUSR = 0x3
-- PTRACE_POKEDATA = 0x5
-- PTRACE_POKETEXT = 0x4
-- PTRACE_POKEUSR = 0x6
-- PTRACE_SECCOMP_GET_FILTER = 0x420c
-- PTRACE_SEIZE = 0x4206
-- PTRACE_SETEVRREGS = 0x15
-- PTRACE_SETFPREGS = 0xf
-- PTRACE_SETOPTIONS = 0x4200
-- PTRACE_SETREGS = 0xd
-- PTRACE_SETREGS64 = 0x17
-- PTRACE_SETREGSET = 0x4205
-- PTRACE_SETSIGINFO = 0x4203
-- PTRACE_SETSIGMASK = 0x420b
-- PTRACE_SETVRREGS = 0x13
-- PTRACE_SETVSRREGS = 0x1c
-- PTRACE_SET_DEBUGREG = 0x1a
-- PTRACE_SINGLEBLOCK = 0x100
-- PTRACE_SINGLESTEP = 0x9
-- PTRACE_SYSCALL = 0x18
-- PTRACE_TRACEME = 0x0
-- PT_CCR = 0x26
-- PT_CTR = 0x23
-- PT_DAR = 0x29
-- PT_DSCR = 0x2c
-- PT_DSISR = 0x2a
-- PT_FPR0 = 0x30
-- PT_FPSCR = 0x50
-- PT_LNK = 0x24
-- PT_MSR = 0x21
-- PT_NIP = 0x20
-- PT_ORIG_R3 = 0x22
-- PT_R0 = 0x0
-- PT_R1 = 0x1
-- PT_R10 = 0xa
-- PT_R11 = 0xb
-- PT_R12 = 0xc
-- PT_R13 = 0xd
-- PT_R14 = 0xe
-- PT_R15 = 0xf
-- PT_R16 = 0x10
-- PT_R17 = 0x11
-- PT_R18 = 0x12
-- PT_R19 = 0x13
-- PT_R2 = 0x2
-- PT_R20 = 0x14
-- PT_R21 = 0x15
-- PT_R22 = 0x16
-- PT_R23 = 0x17
-- PT_R24 = 0x18
-- PT_R25 = 0x19
-- PT_R26 = 0x1a
-- PT_R27 = 0x1b
-- PT_R28 = 0x1c
-- PT_R29 = 0x1d
-- PT_R3 = 0x3
-- PT_R30 = 0x1e
-- PT_R31 = 0x1f
-- PT_R4 = 0x4
-- PT_R5 = 0x5
-- PT_R6 = 0x6
-- PT_R7 = 0x7
-- PT_R8 = 0x8
-- PT_R9 = 0x9
-- PT_REGS_COUNT = 0x2c
-- PT_RESULT = 0x2b
-- PT_SOFTE = 0x27
-- PT_TRAP = 0x28
-- PT_VR0 = 0x52
-- PT_VRSAVE = 0x94
-- PT_VSCR = 0x93
-- PT_VSR0 = 0x96
-- PT_VSR31 = 0xd4
-- PT_XER = 0x25
-- RLIMIT_AS = 0x9
-- RLIMIT_CORE = 0x4
-- RLIMIT_CPU = 0x0
-- RLIMIT_DATA = 0x2
-- RLIMIT_FSIZE = 0x1
-- RLIMIT_LOCKS = 0xa
-- RLIMIT_MEMLOCK = 0x8
-- RLIMIT_MSGQUEUE = 0xc
-- RLIMIT_NICE = 0xd
-- RLIMIT_NOFILE = 0x7
-- RLIMIT_NPROC = 0x6
-- RLIMIT_RSS = 0x5
-- RLIMIT_RTPRIO = 0xe
-- RLIMIT_RTTIME = 0xf
-- RLIMIT_SIGPENDING = 0xb
-- RLIMIT_STACK = 0x3
-- RLIM_INFINITY = -0x1
-- RTAX_ADVMSS = 0x8
-- RTAX_CC_ALGO = 0x10
-- RTAX_CWND = 0x7
-- RTAX_FEATURES = 0xc
-- RTAX_FEATURE_ALLFRAG = 0x8
-- RTAX_FEATURE_ECN = 0x1
-- RTAX_FEATURE_MASK = 0xf
-- RTAX_FEATURE_SACK = 0x2
-- RTAX_FEATURE_TIMESTAMP = 0x4
-- RTAX_HOPLIMIT = 0xa
-- RTAX_INITCWND = 0xb
-- RTAX_INITRWND = 0xe
-- RTAX_LOCK = 0x1
-- RTAX_MAX = 0x10
-- RTAX_MTU = 0x2
-- RTAX_QUICKACK = 0xf
-- RTAX_REORDERING = 0x9
-- RTAX_RTO_MIN = 0xd
-- RTAX_RTT = 0x4
-- RTAX_RTTVAR = 0x5
-- RTAX_SSTHRESH = 0x6
-- RTAX_UNSPEC = 0x0
-- RTAX_WINDOW = 0x3
-- RTA_ALIGNTO = 0x4
-- RTA_MAX = 0x19
-- RTCF_DIRECTSRC = 0x4000000
-- RTCF_DOREDIRECT = 0x1000000
-- RTCF_LOG = 0x2000000
-- RTCF_MASQ = 0x400000
-- RTCF_NAT = 0x800000
-- RTCF_VALVE = 0x200000
-- RTF_ADDRCLASSMASK = 0xf8000000
-- RTF_ADDRCONF = 0x40000
-- RTF_ALLONLINK = 0x20000
-- RTF_BROADCAST = 0x10000000
-- RTF_CACHE = 0x1000000
-- RTF_DEFAULT = 0x10000
-- RTF_DYNAMIC = 0x10
-- RTF_FLOW = 0x2000000
-- RTF_GATEWAY = 0x2
-- RTF_HOST = 0x4
-- RTF_INTERFACE = 0x40000000
-- RTF_IRTT = 0x100
-- RTF_LINKRT = 0x100000
-- RTF_LOCAL = 0x80000000
-- RTF_MODIFIED = 0x20
-- RTF_MSS = 0x40
-- RTF_MTU = 0x40
-- RTF_MULTICAST = 0x20000000
-- RTF_NAT = 0x8000000
-- RTF_NOFORWARD = 0x1000
-- RTF_NONEXTHOP = 0x200000
-- RTF_NOPMTUDISC = 0x4000
-- RTF_POLICY = 0x4000000
-- RTF_REINSTATE = 0x8
-- RTF_REJECT = 0x200
-- RTF_STATIC = 0x400
-- RTF_THROW = 0x2000
-- RTF_UP = 0x1
-- RTF_WINDOW = 0x80
-- RTF_XRESOLVE = 0x800
-- RTM_BASE = 0x10
-- RTM_DELACTION = 0x31
-- RTM_DELADDR = 0x15
-- RTM_DELADDRLABEL = 0x49
-- RTM_DELLINK = 0x11
-- RTM_DELMDB = 0x55
-- RTM_DELNEIGH = 0x1d
-- RTM_DELNSID = 0x59
-- RTM_DELQDISC = 0x25
-- RTM_DELROUTE = 0x19
-- RTM_DELRULE = 0x21
-- RTM_DELTCLASS = 0x29
-- RTM_DELTFILTER = 0x2d
-- RTM_F_CLONED = 0x200
-- RTM_F_EQUALIZE = 0x400
-- RTM_F_LOOKUP_TABLE = 0x1000
-- RTM_F_NOTIFY = 0x100
-- RTM_F_PREFIX = 0x800
-- RTM_GETACTION = 0x32
-- RTM_GETADDR = 0x16
-- RTM_GETADDRLABEL = 0x4a
-- RTM_GETANYCAST = 0x3e
-- RTM_GETDCB = 0x4e
-- RTM_GETLINK = 0x12
-- RTM_GETMDB = 0x56
-- RTM_GETMULTICAST = 0x3a
-- RTM_GETNEIGH = 0x1e
-- RTM_GETNEIGHTBL = 0x42
-- RTM_GETNETCONF = 0x52
-- RTM_GETNSID = 0x5a
-- RTM_GETQDISC = 0x26
-- RTM_GETROUTE = 0x1a
-- RTM_GETRULE = 0x22
-- RTM_GETSTATS = 0x5e
-- RTM_GETTCLASS = 0x2a
-- RTM_GETTFILTER = 0x2e
-- RTM_MAX = 0x5f
-- RTM_NEWACTION = 0x30
-- RTM_NEWADDR = 0x14
-- RTM_NEWADDRLABEL = 0x48
-- RTM_NEWLINK = 0x10
-- RTM_NEWMDB = 0x54
-- RTM_NEWNDUSEROPT = 0x44
-- RTM_NEWNEIGH = 0x1c
-- RTM_NEWNEIGHTBL = 0x40
-- RTM_NEWNETCONF = 0x50
-- RTM_NEWNSID = 0x58
-- RTM_NEWPREFIX = 0x34
-- RTM_NEWQDISC = 0x24
-- RTM_NEWROUTE = 0x18
-- RTM_NEWRULE = 0x20
-- RTM_NEWSTATS = 0x5c
-- RTM_NEWTCLASS = 0x28
-- RTM_NEWTFILTER = 0x2c
-- RTM_NR_FAMILIES = 0x14
-- RTM_NR_MSGTYPES = 0x50
-- RTM_SETDCB = 0x4f
-- RTM_SETLINK = 0x13
-- RTM_SETNEIGHTBL = 0x43
-- RTNH_ALIGNTO = 0x4
-- RTNH_COMPARE_MASK = 0x19
-- RTNH_F_DEAD = 0x1
-- RTNH_F_LINKDOWN = 0x10
-- RTNH_F_OFFLOAD = 0x8
-- RTNH_F_ONLINK = 0x4
-- RTNH_F_PERVASIVE = 0x2
-- RTN_MAX = 0xb
-- RTPROT_BABEL = 0x2a
-- RTPROT_BIRD = 0xc
-- RTPROT_BOOT = 0x3
-- RTPROT_DHCP = 0x10
-- RTPROT_DNROUTED = 0xd
-- RTPROT_GATED = 0x8
-- RTPROT_KERNEL = 0x2
-- RTPROT_MROUTED = 0x11
-- RTPROT_MRT = 0xa
-- RTPROT_NTK = 0xf
-- RTPROT_RA = 0x9
-- RTPROT_REDIRECT = 0x1
-- RTPROT_STATIC = 0x4
-- RTPROT_UNSPEC = 0x0
-- RTPROT_XORP = 0xe
-- RTPROT_ZEBRA = 0xb
-- RT_CLASS_DEFAULT = 0xfd
-- RT_CLASS_LOCAL = 0xff
-- RT_CLASS_MAIN = 0xfe
-- RT_CLASS_MAX = 0xff
-- RT_CLASS_UNSPEC = 0x0
-- RUSAGE_CHILDREN = -0x1
-- RUSAGE_SELF = 0x0
-- RUSAGE_THREAD = 0x1
-- SCM_CREDENTIALS = 0x2
-- SCM_RIGHTS = 0x1
-- SCM_TIMESTAMP = 0x1d
-- SCM_TIMESTAMPING = 0x25
-- SCM_TIMESTAMPING_OPT_STATS = 0x36
-- SCM_TIMESTAMPNS = 0x23
-- SCM_WIFI_STATUS = 0x29
-- SECCOMP_MODE_DISABLED = 0x0
-- SECCOMP_MODE_FILTER = 0x2
-- SECCOMP_MODE_STRICT = 0x1
-- SHUT_RD = 0x0
-- SHUT_RDWR = 0x2
-- SHUT_WR = 0x1
-- SIOCADDDLCI = 0x8980
-- SIOCADDMULTI = 0x8931
-- SIOCADDRT = 0x890b
-- SIOCATMARK = 0x8905
-- SIOCBONDCHANGEACTIVE = 0x8995
-- SIOCBONDENSLAVE = 0x8990
-- SIOCBONDINFOQUERY = 0x8994
-- SIOCBONDRELEASE = 0x8991
-- SIOCBONDSETHWADDR = 0x8992
-- SIOCBONDSLAVEINFOQUERY = 0x8993
-- SIOCBRADDBR = 0x89a0
-- SIOCBRADDIF = 0x89a2
-- SIOCBRDELBR = 0x89a1
-- SIOCBRDELIF = 0x89a3
-- SIOCDARP = 0x8953
-- SIOCDELDLCI = 0x8981
-- SIOCDELMULTI = 0x8932
-- SIOCDELRT = 0x890c
-- SIOCDEVPRIVATE = 0x89f0
-- SIOCDIFADDR = 0x8936
-- SIOCDRARP = 0x8960
-- SIOCETHTOOL = 0x8946
-- SIOCGARP = 0x8954
-- SIOCGHWTSTAMP = 0x89b1
-- SIOCGIFADDR = 0x8915
-- SIOCGIFBR = 0x8940
-- SIOCGIFBRDADDR = 0x8919
-- SIOCGIFCONF = 0x8912
-- SIOCGIFCOUNT = 0x8938
-- SIOCGIFDSTADDR = 0x8917
-- SIOCGIFENCAP = 0x8925
-- SIOCGIFFLAGS = 0x8913
-- SIOCGIFHWADDR = 0x8927
-- SIOCGIFINDEX = 0x8933
-- SIOCGIFMAP = 0x8970
-- SIOCGIFMEM = 0x891f
-- SIOCGIFMETRIC = 0x891d
-- SIOCGIFMTU = 0x8921
-- SIOCGIFNAME = 0x8910
-- SIOCGIFNETMASK = 0x891b
-- SIOCGIFPFLAGS = 0x8935
-- SIOCGIFSLAVE = 0x8929
-- SIOCGIFTXQLEN = 0x8942
-- SIOCGIFVLAN = 0x8982
-- SIOCGMIIPHY = 0x8947
-- SIOCGMIIREG = 0x8948
-- SIOCGPGRP = 0x8904
-- SIOCGRARP = 0x8961
-- SIOCGSKNS = 0x894c
-- SIOCGSTAMP = 0x8906
-- SIOCGSTAMPNS = 0x8907
-- SIOCINQ = 0x4004667f
-- SIOCOUTQ = 0x40047473
-- SIOCOUTQNSD = 0x894b
-- SIOCPROTOPRIVATE = 0x89e0
-- SIOCRTMSG = 0x890d
-- SIOCSARP = 0x8955
-- SIOCSHWTSTAMP = 0x89b0
-- SIOCSIFADDR = 0x8916
-- SIOCSIFBR = 0x8941
-- SIOCSIFBRDADDR = 0x891a
-- SIOCSIFDSTADDR = 0x8918
-- SIOCSIFENCAP = 0x8926
-- SIOCSIFFLAGS = 0x8914
-- SIOCSIFHWADDR = 0x8924
-- SIOCSIFHWBROADCAST = 0x8937
-- SIOCSIFLINK = 0x8911
-- SIOCSIFMAP = 0x8971
-- SIOCSIFMEM = 0x8920
-- SIOCSIFMETRIC = 0x891e
-- SIOCSIFMTU = 0x8922
-- SIOCSIFNAME = 0x8923
-- SIOCSIFNETMASK = 0x891c
-- SIOCSIFPFLAGS = 0x8934
-- SIOCSIFSLAVE = 0x8930
-- SIOCSIFTXQLEN = 0x8943
-- SIOCSIFVLAN = 0x8983
-- SIOCSMIIREG = 0x8949
-- SIOCSPGRP = 0x8902
-- SIOCSRARP = 0x8962
-- SIOCWANDEV = 0x894a
-- SOCK_CLOEXEC = 0x80000
-- SOCK_DCCP = 0x6
-- SOCK_DGRAM = 0x2
-- SOCK_IOC_TYPE = 0x89
-- SOCK_NONBLOCK = 0x800
-- SOCK_PACKET = 0xa
-- SOCK_RAW = 0x3
-- SOCK_RDM = 0x4
-- SOCK_SEQPACKET = 0x5
-- SOCK_STREAM = 0x1
-- SOL_AAL = 0x109
-- SOL_ALG = 0x117
-- SOL_ATM = 0x108
-- SOL_CAIF = 0x116
-- SOL_CAN_BASE = 0x64
-- SOL_DCCP = 0x10d
-- SOL_DECNET = 0x105
-- SOL_ICMPV6 = 0x3a
-- SOL_IP = 0x0
-- SOL_IPV6 = 0x29
-- SOL_IRDA = 0x10a
-- SOL_IUCV = 0x115
-- SOL_KCM = 0x119
-- SOL_LLC = 0x10c
-- SOL_NETBEUI = 0x10b
-- SOL_NETLINK = 0x10e
-- SOL_NFC = 0x118
-- SOL_PACKET = 0x107
-- SOL_PNPIPE = 0x113
-- SOL_PPPOL2TP = 0x111
-- SOL_RAW = 0xff
-- SOL_RDS = 0x114
-- SOL_RXRPC = 0x110
-- SOL_SOCKET = 0x1
-- SOL_TCP = 0x6
-- SOL_TIPC = 0x10f
-- SOL_X25 = 0x106
-- SOMAXCONN = 0x80
-- SO_ACCEPTCONN = 0x1e
-- SO_ATTACH_BPF = 0x32
-- SO_ATTACH_FILTER = 0x1a
-- SO_ATTACH_REUSEPORT_CBPF = 0x33
-- SO_ATTACH_REUSEPORT_EBPF = 0x34
-- SO_BINDTODEVICE = 0x19
-- SO_BPF_EXTENSIONS = 0x30
-- SO_BROADCAST = 0x6
-- SO_BSDCOMPAT = 0xe
-- SO_BUSY_POLL = 0x2e
-- SO_CNX_ADVICE = 0x35
-- SO_DEBUG = 0x1
-- SO_DETACH_BPF = 0x1b
-- SO_DETACH_FILTER = 0x1b
-- SO_DOMAIN = 0x27
-- SO_DONTROUTE = 0x5
-- SO_ERROR = 0x4
-- SO_GET_FILTER = 0x1a
-- SO_INCOMING_CPU = 0x31
-- SO_KEEPALIVE = 0x9
-- SO_LINGER = 0xd
-- SO_LOCK_FILTER = 0x2c
-- SO_MARK = 0x24
-- SO_MAX_PACING_RATE = 0x2f
-- SO_NOFCS = 0x2b
-- SO_NO_CHECK = 0xb
-- SO_OOBINLINE = 0xa
-- SO_PASSCRED = 0x14
-- SO_PASSSEC = 0x22
-- SO_PEEK_OFF = 0x2a
-- SO_PEERCRED = 0x15
-- SO_PEERNAME = 0x1c
-- SO_PEERSEC = 0x1f
-- SO_PRIORITY = 0xc
-- SO_PROTOCOL = 0x26
-- SO_RCVBUF = 0x8
-- SO_RCVBUFFORCE = 0x21
-- SO_RCVLOWAT = 0x10
-- SO_RCVTIMEO = 0x12
-- SO_REUSEADDR = 0x2
-- SO_REUSEPORT = 0xf
-- SO_RXQ_OVFL = 0x28
-- SO_SECURITY_AUTHENTICATION = 0x16
-- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-- SO_SELECT_ERR_QUEUE = 0x2d
-- SO_SNDBUF = 0x7
-- SO_SNDBUFFORCE = 0x20
-- SO_SNDLOWAT = 0x11
-- SO_SNDTIMEO = 0x13
-- SO_TIMESTAMP = 0x1d
-- SO_TIMESTAMPING = 0x25
-- SO_TIMESTAMPNS = 0x23
-- SO_TYPE = 0x3
-- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
-- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
-- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
-- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
-- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
-- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
-- SO_VM_SOCKETS_TRUSTED = 0x5
-- SO_WIFI_STATUS = 0x29
-- SPLICE_F_GIFT = 0x8
-- SPLICE_F_MORE = 0x4
-- SPLICE_F_MOVE = 0x1
-- SPLICE_F_NONBLOCK = 0x2
-- S_BLKSIZE = 0x200
-- S_IEXEC = 0x40
-- S_IFBLK = 0x6000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFIFO = 0x1000
-- S_IFLNK = 0xa000
-- S_IFMT = 0xf000
-- S_IFREG = 0x8000
-- S_IFSOCK = 0xc000
-- S_IREAD = 0x100
-- S_IRGRP = 0x20
-- S_IROTH = 0x4
-- S_IRUSR = 0x100
-- S_IRWXG = 0x38
-- S_IRWXO = 0x7
-- S_IRWXU = 0x1c0
-- S_ISGID = 0x400
-- S_ISUID = 0x800
-- S_ISVTX = 0x200
-- S_IWGRP = 0x10
-- S_IWOTH = 0x2
-- S_IWRITE = 0x80
-- S_IWUSR = 0x80
-- S_IXGRP = 0x8
-- S_IXOTH = 0x1
-- S_IXUSR = 0x40
-- TAB0 = 0x0
-- TAB1 = 0x400
-- TAB2 = 0x800
-- TAB3 = 0xc00
-- TABDLY = 0xc00
-- TASKSTATS_CMD_ATTR_MAX = 0x4
-- TASKSTATS_CMD_MAX = 0x2
-- TASKSTATS_GENL_NAME = "TASKSTATS"
-- TASKSTATS_GENL_VERSION = 0x1
-- TASKSTATS_TYPE_MAX = 0x6
-- TASKSTATS_VERSION = 0x8
-- TCFLSH = 0x2000741f
-- TCGETA = 0x40147417
-- TCGETS = 0x402c7413
-- TCIFLUSH = 0x0
-- TCIOFF = 0x2
-- TCIOFLUSH = 0x2
-- TCION = 0x3
-- TCOFLUSH = 0x1
-- TCOOFF = 0x0
-- TCOON = 0x1
-- TCP_CC_INFO = 0x1a
-- TCP_CONGESTION = 0xd
-- TCP_COOKIE_IN_ALWAYS = 0x1
-- TCP_COOKIE_MAX = 0x10
-- TCP_COOKIE_MIN = 0x8
-- TCP_COOKIE_OUT_NEVER = 0x2
-- TCP_COOKIE_PAIR_SIZE = 0x20
-- TCP_COOKIE_TRANSACTIONS = 0xf
-- TCP_CORK = 0x3
-- TCP_DEFER_ACCEPT = 0x9
-- TCP_FASTOPEN = 0x17
-- TCP_INFO = 0xb
-- TCP_KEEPCNT = 0x6
-- TCP_KEEPIDLE = 0x4
-- TCP_KEEPINTVL = 0x5
-- TCP_LINGER2 = 0x8
-- TCP_MAXSEG = 0x2
-- TCP_MAXWIN = 0xffff
-- TCP_MAX_WINSHIFT = 0xe
-- TCP_MD5SIG = 0xe
-- TCP_MD5SIG_MAXKEYLEN = 0x50
-- TCP_MSS = 0x200
-- TCP_MSS_DEFAULT = 0x218
-- TCP_MSS_DESIRED = 0x4c4
-- TCP_NODELAY = 0x1
-- TCP_NOTSENT_LOWAT = 0x19
-- TCP_QUEUE_SEQ = 0x15
-- TCP_QUICKACK = 0xc
-- TCP_REPAIR = 0x13
-- TCP_REPAIR_OPTIONS = 0x16
-- TCP_REPAIR_QUEUE = 0x14
-- TCP_REPAIR_WINDOW = 0x1d
-- TCP_SAVED_SYN = 0x1c
-- TCP_SAVE_SYN = 0x1b
-- TCP_SYNCNT = 0x7
-- TCP_S_DATA_IN = 0x4
-- TCP_S_DATA_OUT = 0x8
-- TCP_THIN_DUPACK = 0x11
-- TCP_THIN_LINEAR_TIMEOUTS = 0x10
-- TCP_TIMESTAMP = 0x18
-- TCP_USER_TIMEOUT = 0x12
-- TCP_WINDOW_CLAMP = 0xa
-- TCSAFLUSH = 0x2
-- TCSBRK = 0x2000741d
-- TCSBRKP = 0x5425
-- TCSETA = 0x80147418
-- TCSETAF = 0x8014741c
-- TCSETAW = 0x80147419
-- TCSETS = 0x802c7414
-- TCSETSF = 0x802c7416
-- TCSETSW = 0x802c7415
-- TCXONC = 0x2000741e
-- TIOCCBRK = 0x5428
-- TIOCCONS = 0x541d
-- TIOCEXCL = 0x540c
-- TIOCGDEV = 0x40045432
-- TIOCGETC = 0x40067412
-- TIOCGETD = 0x5424
-- TIOCGETP = 0x40067408
-- TIOCGEXCL = 0x40045440
-- TIOCGICOUNT = 0x545d
-- TIOCGLCKTRMIOS = 0x5456
-- TIOCGLTC = 0x40067474
-- TIOCGPGRP = 0x40047477
-- TIOCGPKT = 0x40045438
-- TIOCGPTLCK = 0x40045439
-- TIOCGPTN = 0x40045430
-- TIOCGRS485 = 0x542e
-- TIOCGSERIAL = 0x541e
-- TIOCGSID = 0x5429
-- TIOCGSOFTCAR = 0x5419
-- TIOCGWINSZ = 0x40087468
-- TIOCINQ = 0x4004667f
-- TIOCLINUX = 0x541c
-- TIOCMBIC = 0x5417
-- TIOCMBIS = 0x5416
-- TIOCMGET = 0x5415
-- TIOCMIWAIT = 0x545c
-- TIOCMSET = 0x5418
-- TIOCM_CAR = 0x40
-- TIOCM_CD = 0x40
-- TIOCM_CTS = 0x20
-- TIOCM_DSR = 0x100
-- TIOCM_DTR = 0x2
-- TIOCM_LE = 0x1
-- TIOCM_LOOP = 0x8000
-- TIOCM_OUT1 = 0x2000
-- TIOCM_OUT2 = 0x4000
-- TIOCM_RI = 0x80
-- TIOCM_RNG = 0x80
-- TIOCM_RTS = 0x4
-- TIOCM_SR = 0x10
-- TIOCM_ST = 0x8
-- TIOCNOTTY = 0x5422
-- TIOCNXCL = 0x540d
-- TIOCOUTQ = 0x40047473
-- TIOCPKT = 0x5420
-- TIOCPKT_DATA = 0x0
-- TIOCPKT_DOSTOP = 0x20
-- TIOCPKT_FLUSHREAD = 0x1
-- TIOCPKT_FLUSHWRITE = 0x2
-- TIOCPKT_IOCTL = 0x40
-- TIOCPKT_NOSTOP = 0x10
-- TIOCPKT_START = 0x8
-- TIOCPKT_STOP = 0x4
-- TIOCSBRK = 0x5427
-- TIOCSCTTY = 0x540e
-- TIOCSERCONFIG = 0x5453
-- TIOCSERGETLSR = 0x5459
-- TIOCSERGETMULTI = 0x545a
-- TIOCSERGSTRUCT = 0x5458
-- TIOCSERGWILD = 0x5454
-- TIOCSERSETMULTI = 0x545b
-- TIOCSERSWILD = 0x5455
-- TIOCSER_TEMT = 0x1
-- TIOCSETC = 0x80067411
-- TIOCSETD = 0x5423
-- TIOCSETN = 0x8006740a
-- TIOCSETP = 0x80067409
-- TIOCSIG = 0x80045436
-- TIOCSLCKTRMIOS = 0x5457
-- TIOCSLTC = 0x80067475
-- TIOCSPGRP = 0x80047476
-- TIOCSPTLCK = 0x80045431
-- TIOCSRS485 = 0x542f
-- TIOCSSERIAL = 0x541f
-- TIOCSSOFTCAR = 0x541a
-- TIOCSTART = 0x2000746e
-- TIOCSTI = 0x5412
-- TIOCSTOP = 0x2000746f
-- TIOCSWINSZ = 0x80087467
-- TIOCVHANGUP = 0x5437
-- TOSTOP = 0x400000
-- TS_COMM_LEN = 0x20
-- TUNATTACHFILTER = 0x801054d5
-- TUNDETACHFILTER = 0x801054d6
-- TUNGETFEATURES = 0x400454cf
-- TUNGETFILTER = 0x401054db
-- TUNGETIFF = 0x400454d2
-- TUNGETSNDBUF = 0x400454d3
-- TUNGETVNETBE = 0x400454df
-- TUNGETVNETHDRSZ = 0x400454d7
-- TUNGETVNETLE = 0x400454dd
-- TUNSETDEBUG = 0x800454c9
-- TUNSETGROUP = 0x800454ce
-- TUNSETIFF = 0x800454ca
-- TUNSETIFINDEX = 0x800454da
-- TUNSETLINK = 0x800454cd
-- TUNSETNOCSUM = 0x800454c8
-- TUNSETOFFLOAD = 0x800454d0
-- TUNSETOWNER = 0x800454cc
-- TUNSETPERSIST = 0x800454cb
-- TUNSETQUEUE = 0x800454d9
-- TUNSETSNDBUF = 0x800454d4
-- TUNSETTXFILTER = 0x800454d1
-- TUNSETVNETBE = 0x800454de
-- TUNSETVNETHDRSZ = 0x800454d8
-- TUNSETVNETLE = 0x800454dc
-- UMOUNT_NOFOLLOW = 0x8
-- VDISCARD = 0x10
-- VEOF = 0x4
-- VEOL = 0x6
-- VEOL2 = 0x8
-- VERASE = 0x2
-- VINTR = 0x0
-- VKILL = 0x3
-- VLNEXT = 0xf
-- VMADDR_CID_ANY = 0xffffffff
-- VMADDR_CID_HOST = 0x2
-- VMADDR_CID_HYPERVISOR = 0x0
-- VMADDR_CID_RESERVED = 0x1
-- VMADDR_PORT_ANY = 0xffffffff
-- VMIN = 0x5
-- VM_SOCKETS_INVALID_VERSION = 0xffffffff
-- VQUIT = 0x1
-- VREPRINT = 0xb
-- VSTART = 0xd
-- VSTOP = 0xe
-- VSUSP = 0xc
-- VSWTC = 0x9
-- VT0 = 0x0
-- VT1 = 0x10000
-- VTDLY = 0x10000
-- VTIME = 0x7
-- VWERASE = 0xa
-- WALL = 0x40000000
-- WCLONE = 0x80000000
-- WCONTINUED = 0x8
-- WEXITED = 0x4
-- WNOHANG = 0x1
-- WNOTHREAD = 0x20000000
-- WNOWAIT = 0x1000000
-- WORDSIZE = 0x40
-- WSTOPPED = 0x2
-- WUNTRACED = 0x2
-- XATTR_CREATE = 0x1
-- XATTR_REPLACE = 0x2
-- XCASE = 0x4000
-- XTABS = 0xc00
-+ B1000000 = 0x17
-+ B115200 = 0x11
-+ B1152000 = 0x18
-+ B1500000 = 0x19
-+ B2000000 = 0x1a
-+ B230400 = 0x12
-+ B2500000 = 0x1b
-+ B3000000 = 0x1c
-+ B3500000 = 0x1d
-+ B4000000 = 0x1e
-+ B460800 = 0x13
-+ B500000 = 0x14
-+ B57600 = 0x10
-+ B576000 = 0x15
-+ B921600 = 0x16
-+ BLKBSZGET = 0x40081270
-+ BLKBSZSET = 0x80081271
-+ BLKFLSBUF = 0x20001261
-+ BLKFRAGET = 0x20001265
-+ BLKFRASET = 0x20001264
-+ BLKGETSIZE = 0x20001260
-+ BLKGETSIZE64 = 0x40081272
-+ BLKPBSZGET = 0x2000127b
-+ BLKRAGET = 0x20001263
-+ BLKRASET = 0x20001262
-+ BLKROGET = 0x2000125e
-+ BLKROSET = 0x2000125d
-+ BLKRRPART = 0x2000125f
-+ BLKSECTGET = 0x20001267
-+ BLKSECTSET = 0x20001266
-+ BLKSSZGET = 0x20001268
-+ BOTHER = 0x1f
-+ BS1 = 0x8000
-+ BSDLY = 0x8000
-+ CBAUD = 0xff
-+ CBAUDEX = 0x0
-+ CIBAUD = 0xff0000
-+ CLOCAL = 0x8000
-+ CR1 = 0x1000
-+ CR2 = 0x2000
-+ CR3 = 0x3000
-+ CRDLY = 0x3000
-+ CREAD = 0x800
-+ CS6 = 0x100
-+ CS7 = 0x200
-+ CS8 = 0x300
-+ CSIZE = 0x300
-+ CSTOPB = 0x400
-+ ECHOCTL = 0x40
-+ ECHOE = 0x2
-+ ECHOK = 0x4
-+ ECHOKE = 0x1
-+ ECHONL = 0x10
-+ ECHOPRT = 0x20
-+ EFD_CLOEXEC = 0x80000
-+ EFD_NONBLOCK = 0x800
-+ EPOLL_CLOEXEC = 0x80000
-+ EXTPROC = 0x10000000
-+ FF1 = 0x4000
-+ FFDLY = 0x4000
-+ FLUSHO = 0x800000
-+ FS_IOC_ENABLE_VERITY = 0x80806685
-+ FS_IOC_GETFLAGS = 0x40086601
-+ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
-+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
-+ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
-+ F_GETLK = 0x5
-+ F_GETLK64 = 0xc
-+ F_GETOWN = 0x9
-+ F_RDLCK = 0x0
-+ F_SETLK = 0x6
-+ F_SETLK64 = 0xd
-+ F_SETLKW = 0x7
-+ F_SETLKW64 = 0xe
-+ F_SETOWN = 0x8
-+ F_UNLCK = 0x2
-+ F_WRLCK = 0x1
-+ HUPCL = 0x4000
-+ ICANON = 0x100
-+ IEXTEN = 0x400
-+ IN_CLOEXEC = 0x80000
-+ IN_NONBLOCK = 0x800
-+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
-+ ISIG = 0x80
-+ IUCLC = 0x1000
-+ IXOFF = 0x400
-+ IXON = 0x200
-+ MAP_ANON = 0x20
-+ MAP_ANONYMOUS = 0x20
-+ MAP_DENYWRITE = 0x800
-+ MAP_EXECUTABLE = 0x1000
-+ MAP_GROWSDOWN = 0x100
-+ MAP_HUGETLB = 0x40000
-+ MAP_LOCKED = 0x80
-+ MAP_NONBLOCK = 0x10000
-+ MAP_NORESERVE = 0x40
-+ MAP_POPULATE = 0x8000
-+ MAP_STACK = 0x20000
-+ MAP_SYNC = 0x80000
-+ MCL_CURRENT = 0x2000
-+ MCL_FUTURE = 0x4000
-+ MCL_ONFAULT = 0x8000
-+ NFDBITS = 0x40
-+ NL2 = 0x200
-+ NL3 = 0x300
-+ NLDLY = 0x300
-+ NOFLSH = 0x80000000
-+ NS_GET_NSTYPE = 0x2000b703
-+ NS_GET_OWNER_UID = 0x2000b704
-+ NS_GET_PARENT = 0x2000b702
-+ NS_GET_USERNS = 0x2000b701
-+ OLCUC = 0x4
-+ ONLCR = 0x2
-+ O_APPEND = 0x400
-+ O_ASYNC = 0x2000
-+ O_CLOEXEC = 0x80000
-+ O_CREAT = 0x40
-+ O_DIRECT = 0x20000
-+ O_DIRECTORY = 0x4000
-+ O_DSYNC = 0x1000
-+ O_EXCL = 0x80
-+ O_FSYNC = 0x101000
-+ O_LARGEFILE = 0x0
-+ O_NDELAY = 0x800
-+ O_NOATIME = 0x40000
-+ O_NOCTTY = 0x100
-+ O_NOFOLLOW = 0x8000
-+ O_NONBLOCK = 0x800
-+ O_PATH = 0x200000
-+ O_RSYNC = 0x101000
-+ O_SYNC = 0x101000
-+ O_TMPFILE = 0x404000
-+ O_TRUNC = 0x200
-+ PARENB = 0x1000
-+ PARODD = 0x2000
-+ PENDIN = 0x20000000
-+ PERF_EVENT_IOC_DISABLE = 0x20002401
-+ PERF_EVENT_IOC_ENABLE = 0x20002400
-+ PERF_EVENT_IOC_ID = 0x40082407
-+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
-+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
-+ PERF_EVENT_IOC_PERIOD = 0x80082404
-+ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
-+ PERF_EVENT_IOC_REFRESH = 0x20002402
-+ PERF_EVENT_IOC_RESET = 0x20002403
-+ PERF_EVENT_IOC_SET_BPF = 0x80042408
-+ PERF_EVENT_IOC_SET_FILTER = 0x80082406
-+ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
-+ PPPIOCATTACH = 0x8004743d
-+ PPPIOCATTCHAN = 0x80047438
-+ PPPIOCCONNECT = 0x8004743a
-+ PPPIOCDETACH = 0x8004743c
-+ PPPIOCDISCONN = 0x20007439
-+ PPPIOCGASYNCMAP = 0x40047458
-+ PPPIOCGCHAN = 0x40047437
-+ PPPIOCGDEBUG = 0x40047441
-+ PPPIOCGFLAGS = 0x4004745a
-+ PPPIOCGIDLE = 0x4010743f
-+ PPPIOCGIDLE32 = 0x4008743f
-+ PPPIOCGIDLE64 = 0x4010743f
-+ PPPIOCGL2TPSTATS = 0x40487436
-+ PPPIOCGMRU = 0x40047453
-+ PPPIOCGRASYNCMAP = 0x40047455
-+ PPPIOCGUNIT = 0x40047456
-+ PPPIOCGXASYNCMAP = 0x40207450
-+ PPPIOCSACTIVE = 0x80107446
-+ PPPIOCSASYNCMAP = 0x80047457
-+ PPPIOCSCOMPRESS = 0x8010744d
-+ PPPIOCSDEBUG = 0x80047440
-+ PPPIOCSFLAGS = 0x80047459
-+ PPPIOCSMAXCID = 0x80047451
-+ PPPIOCSMRRU = 0x8004743b
-+ PPPIOCSMRU = 0x80047452
-+ PPPIOCSNPMODE = 0x8008744b
-+ PPPIOCSPASS = 0x80107447
-+ PPPIOCSRASYNCMAP = 0x80047454
-+ PPPIOCSXASYNCMAP = 0x8020744f
-+ PPPIOCXFERUNIT = 0x2000744e
-+ PROT_SAO = 0x10
-+ PR_SET_PTRACER_ANY = 0xffffffffffffffff
-+ PTRACE_GETEVRREGS = 0x14
-+ PTRACE_GETFPREGS = 0xe
-+ PTRACE_GETREGS64 = 0x16
-+ PTRACE_GETVRREGS = 0x12
-+ PTRACE_GETVSRREGS = 0x1b
-+ PTRACE_GET_DEBUGREG = 0x19
-+ PTRACE_SETEVRREGS = 0x15
-+ PTRACE_SETFPREGS = 0xf
-+ PTRACE_SETREGS64 = 0x17
-+ PTRACE_SETVRREGS = 0x13
-+ PTRACE_SETVSRREGS = 0x1c
-+ PTRACE_SET_DEBUGREG = 0x1a
-+ PTRACE_SINGLEBLOCK = 0x100
-+ PTRACE_SYSEMU = 0x1d
-+ PTRACE_SYSEMU_SINGLESTEP = 0x1e
-+ PT_CCR = 0x26
-+ PT_CTR = 0x23
-+ PT_DAR = 0x29
-+ PT_DSCR = 0x2c
-+ PT_DSISR = 0x2a
-+ PT_FPR0 = 0x30
-+ PT_FPSCR = 0x50
-+ PT_LNK = 0x24
-+ PT_MSR = 0x21
-+ PT_NIP = 0x20
-+ PT_ORIG_R3 = 0x22
-+ PT_R0 = 0x0
-+ PT_R1 = 0x1
-+ PT_R10 = 0xa
-+ PT_R11 = 0xb
-+ PT_R12 = 0xc
-+ PT_R13 = 0xd
-+ PT_R14 = 0xe
-+ PT_R15 = 0xf
-+ PT_R16 = 0x10
-+ PT_R17 = 0x11
-+ PT_R18 = 0x12
-+ PT_R19 = 0x13
-+ PT_R2 = 0x2
-+ PT_R20 = 0x14
-+ PT_R21 = 0x15
-+ PT_R22 = 0x16
-+ PT_R23 = 0x17
-+ PT_R24 = 0x18
-+ PT_R25 = 0x19
-+ PT_R26 = 0x1a
-+ PT_R27 = 0x1b
-+ PT_R28 = 0x1c
-+ PT_R29 = 0x1d
-+ PT_R3 = 0x3
-+ PT_R30 = 0x1e
-+ PT_R31 = 0x1f
-+ PT_R4 = 0x4
-+ PT_R5 = 0x5
-+ PT_R6 = 0x6
-+ PT_R7 = 0x7
-+ PT_R8 = 0x8
-+ PT_R9 = 0x9
-+ PT_REGS_COUNT = 0x2c
-+ PT_RESULT = 0x2b
-+ PT_SOFTE = 0x27
-+ PT_TRAP = 0x28
-+ PT_VR0 = 0x52
-+ PT_VRSAVE = 0x94
-+ PT_VSCR = 0x93
-+ PT_VSR0 = 0x96
-+ PT_VSR31 = 0xd4
-+ PT_XER = 0x25
-+ RLIMIT_AS = 0x9
-+ RLIMIT_MEMLOCK = 0x8
-+ RLIMIT_NOFILE = 0x7
-+ RLIMIT_NPROC = 0x6
-+ RLIMIT_RSS = 0x5
-+ RNDADDENTROPY = 0x80085203
-+ RNDADDTOENTCNT = 0x80045201
-+ RNDCLEARPOOL = 0x20005206
-+ RNDGETENTCNT = 0x40045200
-+ RNDGETPOOL = 0x40085202
-+ RNDRESEEDCRNG = 0x20005207
-+ RNDZAPENTCNT = 0x20005204
-+ RTC_AIE_OFF = 0x20007002
-+ RTC_AIE_ON = 0x20007001
-+ RTC_ALM_READ = 0x40247008
-+ RTC_ALM_SET = 0x80247007
-+ RTC_EPOCH_READ = 0x4008700d
-+ RTC_EPOCH_SET = 0x8008700e
-+ RTC_IRQP_READ = 0x4008700b
-+ RTC_IRQP_SET = 0x8008700c
-+ RTC_PIE_OFF = 0x20007006
-+ RTC_PIE_ON = 0x20007005
-+ RTC_PLL_GET = 0x40207011
-+ RTC_PLL_SET = 0x80207012
-+ RTC_RD_TIME = 0x40247009
-+ RTC_SET_TIME = 0x8024700a
-+ RTC_UIE_OFF = 0x20007004
-+ RTC_UIE_ON = 0x20007003
-+ RTC_VL_CLR = 0x20007014
-+ RTC_VL_READ = 0x40047013
-+ RTC_WIE_OFF = 0x20007010
-+ RTC_WIE_ON = 0x2000700f
-+ RTC_WKALM_RD = 0x40287010
-+ RTC_WKALM_SET = 0x8028700f
-+ SCM_TIMESTAMPING = 0x25
-+ SCM_TIMESTAMPING_OPT_STATS = 0x36
-+ SCM_TIMESTAMPING_PKTINFO = 0x3a
-+ SCM_TIMESTAMPNS = 0x23
-+ SCM_TXTIME = 0x3d
-+ SCM_WIFI_STATUS = 0x29
-+ SFD_CLOEXEC = 0x80000
-+ SFD_NONBLOCK = 0x800
-+ SIOCATMARK = 0x8905
-+ SIOCGPGRP = 0x8904
-+ SIOCGSTAMPNS_NEW = 0x40108907
-+ SIOCGSTAMP_NEW = 0x40108906
-+ SIOCINQ = 0x4004667f
-+ SIOCOUTQ = 0x40047473
-+ SIOCSPGRP = 0x8902
-+ SOCK_CLOEXEC = 0x80000
-+ SOCK_DGRAM = 0x2
-+ SOCK_NONBLOCK = 0x800
-+ SOCK_STREAM = 0x1
-+ SOL_SOCKET = 0x1
-+ SO_ACCEPTCONN = 0x1e
-+ SO_ATTACH_BPF = 0x32
-+ SO_ATTACH_REUSEPORT_CBPF = 0x33
-+ SO_ATTACH_REUSEPORT_EBPF = 0x34
-+ SO_BINDTODEVICE = 0x19
-+ SO_BINDTOIFINDEX = 0x3e
-+ SO_BPF_EXTENSIONS = 0x30
-+ SO_BROADCAST = 0x6
-+ SO_BSDCOMPAT = 0xe
-+ SO_BUSY_POLL = 0x2e
-+ SO_CNX_ADVICE = 0x35
-+ SO_COOKIE = 0x39
-+ SO_DETACH_REUSEPORT_BPF = 0x44
-+ SO_DOMAIN = 0x27
-+ SO_DONTROUTE = 0x5
-+ SO_ERROR = 0x4
-+ SO_INCOMING_CPU = 0x31
-+ SO_INCOMING_NAPI_ID = 0x38
-+ SO_KEEPALIVE = 0x9
-+ SO_LINGER = 0xd
-+ SO_LOCK_FILTER = 0x2c
-+ SO_MARK = 0x24
-+ SO_MAX_PACING_RATE = 0x2f
-+ SO_MEMINFO = 0x37
-+ SO_NOFCS = 0x2b
-+ SO_OOBINLINE = 0xa
-+ SO_PASSCRED = 0x14
-+ SO_PASSSEC = 0x22
-+ SO_PEEK_OFF = 0x2a
-+ SO_PEERCRED = 0x15
-+ SO_PEERGROUPS = 0x3b
-+ SO_PEERSEC = 0x1f
-+ SO_PROTOCOL = 0x26
-+ SO_RCVBUF = 0x8
-+ SO_RCVBUFFORCE = 0x21
-+ SO_RCVLOWAT = 0x10
-+ SO_RCVTIMEO = 0x12
-+ SO_RCVTIMEO_NEW = 0x42
-+ SO_RCVTIMEO_OLD = 0x12
-+ SO_REUSEADDR = 0x2
-+ SO_REUSEPORT = 0xf
-+ SO_RXQ_OVFL = 0x28
-+ SO_SECURITY_AUTHENTICATION = 0x16
-+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-+ SO_SELECT_ERR_QUEUE = 0x2d
-+ SO_SNDBUF = 0x7
-+ SO_SNDBUFFORCE = 0x20
-+ SO_SNDLOWAT = 0x11
-+ SO_SNDTIMEO = 0x13
-+ SO_SNDTIMEO_NEW = 0x43
-+ SO_SNDTIMEO_OLD = 0x13
-+ SO_TIMESTAMPING = 0x25
-+ SO_TIMESTAMPING_NEW = 0x41
-+ SO_TIMESTAMPING_OLD = 0x25
-+ SO_TIMESTAMPNS = 0x23
-+ SO_TIMESTAMPNS_NEW = 0x40
-+ SO_TIMESTAMPNS_OLD = 0x23
-+ SO_TIMESTAMP_NEW = 0x3f
-+ SO_TXTIME = 0x3d
-+ SO_TYPE = 0x3
-+ SO_WIFI_STATUS = 0x29
-+ SO_ZEROCOPY = 0x3c
-+ TAB1 = 0x400
-+ TAB2 = 0x800
-+ TAB3 = 0xc00
-+ TABDLY = 0xc00
-+ TCFLSH = 0x2000741f
-+ TCGETA = 0x40147417
-+ TCGETS = 0x402c7413
-+ TCSAFLUSH = 0x2
-+ TCSBRK = 0x2000741d
-+ TCSBRKP = 0x5425
-+ TCSETA = 0x80147418
-+ TCSETAF = 0x8014741c
-+ TCSETAW = 0x80147419
-+ TCSETS = 0x802c7414
-+ TCSETSF = 0x802c7416
-+ TCSETSW = 0x802c7415
-+ TCXONC = 0x2000741e
-+ TIOCCBRK = 0x5428
-+ TIOCCONS = 0x541d
-+ TIOCEXCL = 0x540c
-+ TIOCGDEV = 0x40045432
-+ TIOCGETC = 0x40067412
-+ TIOCGETD = 0x5424
-+ TIOCGETP = 0x40067408
-+ TIOCGEXCL = 0x40045440
-+ TIOCGICOUNT = 0x545d
-+ TIOCGISO7816 = 0x40285442
-+ TIOCGLCKTRMIOS = 0x5456
-+ TIOCGLTC = 0x40067474
-+ TIOCGPGRP = 0x40047477
-+ TIOCGPKT = 0x40045438
-+ TIOCGPTLCK = 0x40045439
-+ TIOCGPTN = 0x40045430
-+ TIOCGPTPEER = 0x20005441
-+ TIOCGRS485 = 0x542e
-+ TIOCGSERIAL = 0x541e
-+ TIOCGSID = 0x5429
-+ TIOCGSOFTCAR = 0x5419
-+ TIOCGWINSZ = 0x40087468
-+ TIOCINQ = 0x4004667f
-+ TIOCLINUX = 0x541c
-+ TIOCMBIC = 0x5417
-+ TIOCMBIS = 0x5416
-+ TIOCMGET = 0x5415
-+ TIOCMIWAIT = 0x545c
-+ TIOCMSET = 0x5418
-+ TIOCM_CAR = 0x40
-+ TIOCM_CD = 0x40
-+ TIOCM_CTS = 0x20
-+ TIOCM_DSR = 0x100
-+ TIOCM_LOOP = 0x8000
-+ TIOCM_OUT1 = 0x2000
-+ TIOCM_OUT2 = 0x4000
-+ TIOCM_RI = 0x80
-+ TIOCM_RNG = 0x80
-+ TIOCM_SR = 0x10
-+ TIOCM_ST = 0x8
-+ TIOCNOTTY = 0x5422
-+ TIOCNXCL = 0x540d
-+ TIOCOUTQ = 0x40047473
-+ TIOCPKT = 0x5420
-+ TIOCSBRK = 0x5427
-+ TIOCSCTTY = 0x540e
-+ TIOCSERCONFIG = 0x5453
-+ TIOCSERGETLSR = 0x5459
-+ TIOCSERGETMULTI = 0x545a
-+ TIOCSERGSTRUCT = 0x5458
-+ TIOCSERGWILD = 0x5454
-+ TIOCSERSETMULTI = 0x545b
-+ TIOCSERSWILD = 0x5455
-+ TIOCSER_TEMT = 0x1
-+ TIOCSETC = 0x80067411
-+ TIOCSETD = 0x5423
-+ TIOCSETN = 0x8006740a
-+ TIOCSETP = 0x80067409
-+ TIOCSIG = 0x80045436
-+ TIOCSISO7816 = 0xc0285443
-+ TIOCSLCKTRMIOS = 0x5457
-+ TIOCSLTC = 0x80067475
-+ TIOCSPGRP = 0x80047476
-+ TIOCSPTLCK = 0x80045431
-+ TIOCSRS485 = 0x542f
-+ TIOCSSERIAL = 0x541f
-+ TIOCSSOFTCAR = 0x541a
-+ TIOCSTART = 0x2000746e
-+ TIOCSTI = 0x5412
-+ TIOCSTOP = 0x2000746f
-+ TIOCSWINSZ = 0x80087467
-+ TIOCVHANGUP = 0x5437
-+ TOSTOP = 0x400000
-+ TUNATTACHFILTER = 0x801054d5
-+ TUNDETACHFILTER = 0x801054d6
-+ TUNGETDEVNETNS = 0x200054e3
-+ TUNGETFEATURES = 0x400454cf
-+ TUNGETFILTER = 0x401054db
-+ TUNGETIFF = 0x400454d2
-+ TUNGETSNDBUF = 0x400454d3
-+ TUNGETVNETBE = 0x400454df
-+ TUNGETVNETHDRSZ = 0x400454d7
-+ TUNGETVNETLE = 0x400454dd
-+ TUNSETCARRIER = 0x800454e2
-+ TUNSETDEBUG = 0x800454c9
-+ TUNSETFILTEREBPF = 0x400454e1
-+ TUNSETGROUP = 0x800454ce
-+ TUNSETIFF = 0x800454ca
-+ TUNSETIFINDEX = 0x800454da
-+ TUNSETLINK = 0x800454cd
-+ TUNSETNOCSUM = 0x800454c8
-+ TUNSETOFFLOAD = 0x800454d0
-+ TUNSETOWNER = 0x800454cc
-+ TUNSETPERSIST = 0x800454cb
-+ TUNSETQUEUE = 0x800454d9
-+ TUNSETSNDBUF = 0x800454d4
-+ TUNSETSTEERINGEBPF = 0x400454e0
-+ TUNSETTXFILTER = 0x800454d1
-+ TUNSETVNETBE = 0x800454de
-+ TUNSETVNETHDRSZ = 0x800454d8
-+ TUNSETVNETLE = 0x800454dc
-+ UBI_IOCATT = 0x80186f40
-+ UBI_IOCDET = 0x80046f41
-+ UBI_IOCEBCH = 0x80044f02
-+ UBI_IOCEBER = 0x80044f01
-+ UBI_IOCEBISMAP = 0x40044f05
-+ UBI_IOCEBMAP = 0x80084f03
-+ UBI_IOCEBUNMAP = 0x80044f04
-+ UBI_IOCMKVOL = 0x80986f00
-+ UBI_IOCRMVOL = 0x80046f01
-+ UBI_IOCRNVOL = 0x91106f03
-+ UBI_IOCRPEB = 0x80046f04
-+ UBI_IOCRSVOL = 0x800c6f02
-+ UBI_IOCSETVOLPROP = 0x80104f06
-+ UBI_IOCSPEB = 0x80046f05
-+ UBI_IOCVOLCRBLK = 0x80804f07
-+ UBI_IOCVOLRMBLK = 0x20004f08
-+ UBI_IOCVOLUP = 0x80084f00
-+ VDISCARD = 0x10
-+ VEOF = 0x4
-+ VEOL = 0x6
-+ VEOL2 = 0x8
-+ VMIN = 0x5
-+ VREPRINT = 0xb
-+ VSTART = 0xd
-+ VSTOP = 0xe
-+ VSUSP = 0xc
-+ VSWTC = 0x9
-+ VT1 = 0x10000
-+ VTDLY = 0x10000
-+ VTIME = 0x7
-+ VWERASE = 0xa
-+ WDIOC_GETBOOTSTATUS = 0x40045702
-+ WDIOC_GETPRETIMEOUT = 0x40045709
-+ WDIOC_GETSTATUS = 0x40045701
-+ WDIOC_GETSUPPORT = 0x40285700
-+ WDIOC_GETTEMP = 0x40045703
-+ WDIOC_GETTIMELEFT = 0x4004570a
-+ WDIOC_GETTIMEOUT = 0x40045707
-+ WDIOC_KEEPALIVE = 0x40045705
-+ WDIOC_SETOPTIONS = 0x40045704
-+ WORDSIZE = 0x40
-+ XCASE = 0x4000
-+ XTABS = 0xc00
- )
-
- // Errors
- const (
-- E2BIG = syscall.Errno(0x7)
-- EACCES = syscall.Errno(0xd)
- EADDRINUSE = syscall.Errno(0x62)
- EADDRNOTAVAIL = syscall.Errno(0x63)
- EADV = syscall.Errno(0x44)
- EAFNOSUPPORT = syscall.Errno(0x61)
-- EAGAIN = syscall.Errno(0xb)
- EALREADY = syscall.Errno(0x72)
- EBADE = syscall.Errno(0x34)
-- EBADF = syscall.Errno(0x9)
- EBADFD = syscall.Errno(0x4d)
- EBADMSG = syscall.Errno(0x4a)
- EBADR = syscall.Errno(0x35)
- EBADRQC = syscall.Errno(0x38)
- EBADSLT = syscall.Errno(0x39)
- EBFONT = syscall.Errno(0x3b)
-- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x7d)
-- ECHILD = syscall.Errno(0xa)
- ECHRNG = syscall.Errno(0x2c)
- ECOMM = syscall.Errno(0x46)
- ECONNABORTED = syscall.Errno(0x67)
-@@ -1943,23 +562,15 @@ const (
- EDEADLK = syscall.Errno(0x23)
- EDEADLOCK = syscall.Errno(0x3a)
- EDESTADDRREQ = syscall.Errno(0x59)
-- EDOM = syscall.Errno(0x21)
- EDOTDOT = syscall.Errno(0x49)
- EDQUOT = syscall.Errno(0x7a)
-- EEXIST = syscall.Errno(0x11)
-- EFAULT = syscall.Errno(0xe)
-- EFBIG = syscall.Errno(0x1b)
- EHOSTDOWN = syscall.Errno(0x70)
- EHOSTUNREACH = syscall.Errno(0x71)
- EHWPOISON = syscall.Errno(0x85)
- EIDRM = syscall.Errno(0x2b)
- EILSEQ = syscall.Errno(0x54)
- EINPROGRESS = syscall.Errno(0x73)
-- EINTR = syscall.Errno(0x4)
-- EINVAL = syscall.Errno(0x16)
-- EIO = syscall.Errno(0x5)
- EISCONN = syscall.Errno(0x6a)
-- EISDIR = syscall.Errno(0x15)
- EISNAM = syscall.Errno(0x78)
- EKEYEXPIRED = syscall.Errno(0x7f)
- EKEYREJECTED = syscall.Errno(0x81)
-@@ -1976,8 +587,6 @@ const (
- ELNRNG = syscall.Errno(0x30)
- ELOOP = syscall.Errno(0x28)
- EMEDIUMTYPE = syscall.Errno(0x7c)
-- EMFILE = syscall.Errno(0x18)
-- EMLINK = syscall.Errno(0x1f)
- EMSGSIZE = syscall.Errno(0x5a)
- EMULTIHOP = syscall.Errno(0x48)
- ENAMETOOLONG = syscall.Errno(0x24)
-@@ -1985,103 +594,70 @@ const (
- ENETDOWN = syscall.Errno(0x64)
- ENETRESET = syscall.Errno(0x66)
- ENETUNREACH = syscall.Errno(0x65)
-- ENFILE = syscall.Errno(0x17)
- ENOANO = syscall.Errno(0x37)
- ENOBUFS = syscall.Errno(0x69)
- ENOCSI = syscall.Errno(0x32)
- ENODATA = syscall.Errno(0x3d)
-- ENODEV = syscall.Errno(0x13)
-- ENOENT = syscall.Errno(0x2)
-- ENOEXEC = syscall.Errno(0x8)
- ENOKEY = syscall.Errno(0x7e)
- ENOLCK = syscall.Errno(0x25)
- ENOLINK = syscall.Errno(0x43)
- ENOMEDIUM = syscall.Errno(0x7b)
-- ENOMEM = syscall.Errno(0xc)
- ENOMSG = syscall.Errno(0x2a)
- ENONET = syscall.Errno(0x40)
- ENOPKG = syscall.Errno(0x41)
- ENOPROTOOPT = syscall.Errno(0x5c)
-- ENOSPC = syscall.Errno(0x1c)
- ENOSR = syscall.Errno(0x3f)
- ENOSTR = syscall.Errno(0x3c)
- ENOSYS = syscall.Errno(0x26)
-- ENOTBLK = syscall.Errno(0xf)
- ENOTCONN = syscall.Errno(0x6b)
-- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x27)
- ENOTNAM = syscall.Errno(0x76)
- ENOTRECOVERABLE = syscall.Errno(0x83)
- ENOTSOCK = syscall.Errno(0x58)
- ENOTSUP = syscall.Errno(0x5f)
-- ENOTTY = syscall.Errno(0x19)
- ENOTUNIQ = syscall.Errno(0x4c)
-- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x5f)
- EOVERFLOW = syscall.Errno(0x4b)
- EOWNERDEAD = syscall.Errno(0x82)
-- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x60)
-- EPIPE = syscall.Errno(0x20)
- EPROTO = syscall.Errno(0x47)
- EPROTONOSUPPORT = syscall.Errno(0x5d)
- EPROTOTYPE = syscall.Errno(0x5b)
-- ERANGE = syscall.Errno(0x22)
- EREMCHG = syscall.Errno(0x4e)
- EREMOTE = syscall.Errno(0x42)
- EREMOTEIO = syscall.Errno(0x79)
- ERESTART = syscall.Errno(0x55)
- ERFKILL = syscall.Errno(0x84)
-- EROFS = syscall.Errno(0x1e)
- ESHUTDOWN = syscall.Errno(0x6c)
- ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-- ESPIPE = syscall.Errno(0x1d)
-- ESRCH = syscall.Errno(0x3)
- ESRMNT = syscall.Errno(0x45)
- ESTALE = syscall.Errno(0x74)
- ESTRPIPE = syscall.Errno(0x56)
- ETIME = syscall.Errno(0x3e)
- ETIMEDOUT = syscall.Errno(0x6e)
- ETOOMANYREFS = syscall.Errno(0x6d)
-- ETXTBSY = syscall.Errno(0x1a)
- EUCLEAN = syscall.Errno(0x75)
- EUNATCH = syscall.Errno(0x31)
- EUSERS = syscall.Errno(0x57)
-- EWOULDBLOCK = syscall.Errno(0xb)
-- EXDEV = syscall.Errno(0x12)
- EXFULL = syscall.Errno(0x36)
- )
-
- // Signals
- const (
-- SIGABRT = syscall.Signal(0x6)
-- SIGALRM = syscall.Signal(0xe)
- SIGBUS = syscall.Signal(0x7)
- SIGCHLD = syscall.Signal(0x11)
- SIGCLD = syscall.Signal(0x11)
- SIGCONT = syscall.Signal(0x12)
-- SIGFPE = syscall.Signal(0x8)
-- SIGHUP = syscall.Signal(0x1)
-- SIGILL = syscall.Signal(0x4)
-- SIGINT = syscall.Signal(0x2)
- SIGIO = syscall.Signal(0x1d)
-- SIGIOT = syscall.Signal(0x6)
-- SIGKILL = syscall.Signal(0x9)
-- SIGPIPE = syscall.Signal(0xd)
- SIGPOLL = syscall.Signal(0x1d)
- SIGPROF = syscall.Signal(0x1b)
- SIGPWR = syscall.Signal(0x1e)
-- SIGQUIT = syscall.Signal(0x3)
-- SIGSEGV = syscall.Signal(0xb)
- SIGSTKFLT = syscall.Signal(0x10)
- SIGSTOP = syscall.Signal(0x13)
- SIGSYS = syscall.Signal(0x1f)
-- SIGTERM = syscall.Signal(0xf)
-- SIGTRAP = syscall.Signal(0x5)
- SIGTSTP = syscall.Signal(0x14)
- SIGTTIN = syscall.Signal(0x15)
- SIGTTOU = syscall.Signal(0x16)
-- SIGUNUSED = syscall.Signal(0x1f)
- SIGURG = syscall.Signal(0x17)
- SIGUSR1 = syscall.Signal(0xa)
- SIGUSR2 = syscall.Signal(0xc)
-@@ -2092,172 +668,180 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "no such device or address",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource temporarily unavailable",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device or resource busy",
-- 17: "file exists",
-- 18: "invalid cross-device link",
-- 19: "no such device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "numerical result out of range",
-- 35: "resource deadlock avoided",
-- 36: "file name too long",
-- 37: "no locks available",
-- 38: "function not implemented",
-- 39: "directory not empty",
-- 40: "too many levels of symbolic links",
-- 42: "no message of desired type",
-- 43: "identifier removed",
-- 44: "channel number out of range",
-- 45: "level 2 not synchronized",
-- 46: "level 3 halted",
-- 47: "level 3 reset",
-- 48: "link number out of range",
-- 49: "protocol driver not attached",
-- 50: "no CSI structure available",
-- 51: "level 2 halted",
-- 52: "invalid exchange",
-- 53: "invalid request descriptor",
-- 54: "exchange full",
-- 55: "no anode",
-- 56: "invalid request code",
-- 57: "invalid slot",
-- 58: "file locking deadlock error",
-- 59: "bad font file format",
-- 60: "device not a stream",
-- 61: "no data available",
-- 62: "timer expired",
-- 63: "out of streams resources",
-- 64: "machine is not on the network",
-- 65: "package not installed",
-- 66: "object is remote",
-- 67: "link has been severed",
-- 68: "advertise error",
-- 69: "srmount error",
-- 70: "communication error on send",
-- 71: "protocol error",
-- 72: "multihop attempted",
-- 73: "RFS specific error",
-- 74: "bad message",
-- 75: "value too large for defined data type",
-- 76: "name not unique on network",
-- 77: "file descriptor in bad state",
-- 78: "remote address changed",
-- 79: "can not access a needed shared library",
-- 80: "accessing a corrupted shared library",
-- 81: ".lib section in a.out corrupted",
-- 82: "attempting to link in too many shared libraries",
-- 83: "cannot exec a shared library directly",
-- 84: "invalid or incomplete multibyte or wide character",
-- 85: "interrupted system call should be restarted",
-- 86: "streams pipe error",
-- 87: "too many users",
-- 88: "socket operation on non-socket",
-- 89: "destination address required",
-- 90: "message too long",
-- 91: "protocol wrong type for socket",
-- 92: "protocol not available",
-- 93: "protocol not supported",
-- 94: "socket type not supported",
-- 95: "operation not supported",
-- 96: "protocol family not supported",
-- 97: "address family not supported by protocol",
-- 98: "address already in use",
-- 99: "cannot assign requested address",
-- 100: "network is down",
-- 101: "network is unreachable",
-- 102: "network dropped connection on reset",
-- 103: "software caused connection abort",
-- 104: "connection reset by peer",
-- 105: "no buffer space available",
-- 106: "transport endpoint is already connected",
-- 107: "transport endpoint is not connected",
-- 108: "cannot send after transport endpoint shutdown",
-- 109: "too many references: cannot splice",
-- 110: "connection timed out",
-- 111: "connection refused",
-- 112: "host is down",
-- 113: "no route to host",
-- 114: "operation already in progress",
-- 115: "operation now in progress",
-- 116: "stale file handle",
-- 117: "structure needs cleaning",
-- 118: "not a XENIX named type file",
-- 119: "no XENIX semaphores available",
-- 120: "is a named type file",
-- 121: "remote I/O error",
-- 122: "disk quota exceeded",
-- 123: "no medium found",
-- 124: "wrong medium type",
-- 125: "operation canceled",
-- 126: "required key not available",
-- 127: "key has expired",
-- 128: "key has been revoked",
-- 129: "key was rejected by service",
-- 130: "owner died",
-- 131: "state not recoverable",
-- 132: "operation not possible due to RF-kill",
-- 133: "memory page has hardware error",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device or resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "invalid cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "numerical result out of range"},
-+ {35, "EDEADLK", "resource deadlock avoided"},
-+ {36, "ENAMETOOLONG", "file name too long"},
-+ {37, "ENOLCK", "no locks available"},
-+ {38, "ENOSYS", "function not implemented"},
-+ {39, "ENOTEMPTY", "directory not empty"},
-+ {40, "ELOOP", "too many levels of symbolic links"},
-+ {42, "ENOMSG", "no message of desired type"},
-+ {43, "EIDRM", "identifier removed"},
-+ {44, "ECHRNG", "channel number out of range"},
-+ {45, "EL2NSYNC", "level 2 not synchronized"},
-+ {46, "EL3HLT", "level 3 halted"},
-+ {47, "EL3RST", "level 3 reset"},
-+ {48, "ELNRNG", "link number out of range"},
-+ {49, "EUNATCH", "protocol driver not attached"},
-+ {50, "ENOCSI", "no CSI structure available"},
-+ {51, "EL2HLT", "level 2 halted"},
-+ {52, "EBADE", "invalid exchange"},
-+ {53, "EBADR", "invalid request descriptor"},
-+ {54, "EXFULL", "exchange full"},
-+ {55, "ENOANO", "no anode"},
-+ {56, "EBADRQC", "invalid request code"},
-+ {57, "EBADSLT", "invalid slot"},
-+ {58, "EDEADLOCK", "file locking deadlock error"},
-+ {59, "EBFONT", "bad font file format"},
-+ {60, "ENOSTR", "device not a stream"},
-+ {61, "ENODATA", "no data available"},
-+ {62, "ETIME", "timer expired"},
-+ {63, "ENOSR", "out of streams resources"},
-+ {64, "ENONET", "machine is not on the network"},
-+ {65, "ENOPKG", "package not installed"},
-+ {66, "EREMOTE", "object is remote"},
-+ {67, "ENOLINK", "link has been severed"},
-+ {68, "EADV", "advertise error"},
-+ {69, "ESRMNT", "srmount error"},
-+ {70, "ECOMM", "communication error on send"},
-+ {71, "EPROTO", "protocol error"},
-+ {72, "EMULTIHOP", "multihop attempted"},
-+ {73, "EDOTDOT", "RFS specific error"},
-+ {74, "EBADMSG", "bad message"},
-+ {75, "EOVERFLOW", "value too large for defined data type"},
-+ {76, "ENOTUNIQ", "name not unique on network"},
-+ {77, "EBADFD", "file descriptor in bad state"},
-+ {78, "EREMCHG", "remote address changed"},
-+ {79, "ELIBACC", "can not access a needed shared library"},
-+ {80, "ELIBBAD", "accessing a corrupted shared library"},
-+ {81, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
-+ {83, "ELIBEXEC", "cannot exec a shared library directly"},
-+ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
-+ {85, "ERESTART", "interrupted system call should be restarted"},
-+ {86, "ESTRPIPE", "streams pipe error"},
-+ {87, "EUSERS", "too many users"},
-+ {88, "ENOTSOCK", "socket operation on non-socket"},
-+ {89, "EDESTADDRREQ", "destination address required"},
-+ {90, "EMSGSIZE", "message too long"},
-+ {91, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {92, "ENOPROTOOPT", "protocol not available"},
-+ {93, "EPROTONOSUPPORT", "protocol not supported"},
-+ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {95, "ENOTSUP", "operation not supported"},
-+ {96, "EPFNOSUPPORT", "protocol family not supported"},
-+ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
-+ {98, "EADDRINUSE", "address already in use"},
-+ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {100, "ENETDOWN", "network is down"},
-+ {101, "ENETUNREACH", "network is unreachable"},
-+ {102, "ENETRESET", "network dropped connection on reset"},
-+ {103, "ECONNABORTED", "software caused connection abort"},
-+ {104, "ECONNRESET", "connection reset by peer"},
-+ {105, "ENOBUFS", "no buffer space available"},
-+ {106, "EISCONN", "transport endpoint is already connected"},
-+ {107, "ENOTCONN", "transport endpoint is not connected"},
-+ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
-+ {109, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {110, "ETIMEDOUT", "connection timed out"},
-+ {111, "ECONNREFUSED", "connection refused"},
-+ {112, "EHOSTDOWN", "host is down"},
-+ {113, "EHOSTUNREACH", "no route to host"},
-+ {114, "EALREADY", "operation already in progress"},
-+ {115, "EINPROGRESS", "operation now in progress"},
-+ {116, "ESTALE", "stale file handle"},
-+ {117, "EUCLEAN", "structure needs cleaning"},
-+ {118, "ENOTNAM", "not a XENIX named type file"},
-+ {119, "ENAVAIL", "no XENIX semaphores available"},
-+ {120, "EISNAM", "is a named type file"},
-+ {121, "EREMOTEIO", "remote I/O error"},
-+ {122, "EDQUOT", "disk quota exceeded"},
-+ {123, "ENOMEDIUM", "no medium found"},
-+ {124, "EMEDIUMTYPE", "wrong medium type"},
-+ {125, "ECANCELED", "operation canceled"},
-+ {126, "ENOKEY", "required key not available"},
-+ {127, "EKEYEXPIRED", "key has expired"},
-+ {128, "EKEYREVOKED", "key has been revoked"},
-+ {129, "EKEYREJECTED", "key was rejected by service"},
-+ {130, "EOWNERDEAD", "owner died"},
-+ {131, "ENOTRECOVERABLE", "state not recoverable"},
-+ {132, "ERFKILL", "operation not possible due to RF-kill"},
-+ {133, "EHWPOISON", "memory page has hardware error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/breakpoint trap",
-- 6: "aborted",
-- 7: "bus error",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "user defined signal 1",
-- 11: "segmentation fault",
-- 12: "user defined signal 2",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "stack fault",
-- 17: "child exited",
-- 18: "continued",
-- 19: "stopped (signal)",
-- 20: "stopped",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "urgent I/O condition",
-- 24: "CPU time limit exceeded",
-- 25: "file size limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window changed",
-- 29: "I/O possible",
-- 30: "power failure",
-- 31: "bad system call",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/breakpoint trap"},
-+ {6, "SIGABRT", "aborted"},
-+ {7, "SIGBUS", "bus error"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGUSR1", "user defined signal 1"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGUSR2", "user defined signal 2"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGSTKFLT", "stack fault"},
-+ {17, "SIGCHLD", "child exited"},
-+ {18, "SIGCONT", "continued"},
-+ {19, "SIGSTOP", "stopped (signal)"},
-+ {20, "SIGTSTP", "stopped"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGURG", "urgent I/O condition"},
-+ {24, "SIGXCPU", "CPU time limit exceeded"},
-+ {25, "SIGXFSZ", "file size limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window changed"},
-+ {29, "SIGIO", "I/O possible"},
-+ {30, "SIGPWR", "power failure"},
-+ {31, "SIGSYS", "bad system call"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
-new file mode 100644
-index 00000000..6a0b2d29
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
-@@ -0,0 +1,771 @@
-+// mkerrors.sh -Wall -Werror -static -I/tmp/include
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build riscv64,linux
-+
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
-+// cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
-+
-+package unix
-+
-+import "syscall"
-+
-+const (
-+ B1000000 = 0x1008
-+ B115200 = 0x1002
-+ B1152000 = 0x1009
-+ B1500000 = 0x100a
-+ B2000000 = 0x100b
-+ B230400 = 0x1003
-+ B2500000 = 0x100c
-+ B3000000 = 0x100d
-+ B3500000 = 0x100e
-+ B4000000 = 0x100f
-+ B460800 = 0x1004
-+ B500000 = 0x1005
-+ B57600 = 0x1001
-+ B576000 = 0x1006
-+ B921600 = 0x1007
-+ BLKBSZGET = 0x80081270
-+ BLKBSZSET = 0x40081271
-+ BLKFLSBUF = 0x1261
-+ BLKFRAGET = 0x1265
-+ BLKFRASET = 0x1264
-+ BLKGETSIZE = 0x1260
-+ BLKGETSIZE64 = 0x80081272
-+ BLKPBSZGET = 0x127b
-+ BLKRAGET = 0x1263
-+ BLKRASET = 0x1262
-+ BLKROGET = 0x125e
-+ BLKROSET = 0x125d
-+ BLKRRPART = 0x125f
-+ BLKSECTGET = 0x1267
-+ BLKSECTSET = 0x1266
-+ BLKSSZGET = 0x1268
-+ BOTHER = 0x1000
-+ BS1 = 0x2000
-+ BSDLY = 0x2000
-+ CBAUD = 0x100f
-+ CBAUDEX = 0x1000
-+ CIBAUD = 0x100f0000
-+ CLOCAL = 0x800
-+ CR1 = 0x200
-+ CR2 = 0x400
-+ CR3 = 0x600
-+ CRDLY = 0x600
-+ CREAD = 0x80
-+ CS6 = 0x10
-+ CS7 = 0x20
-+ CS8 = 0x30
-+ CSIZE = 0x30
-+ CSTOPB = 0x40
-+ ECHOCTL = 0x200
-+ ECHOE = 0x10
-+ ECHOK = 0x20
-+ ECHOKE = 0x800
-+ ECHONL = 0x40
-+ ECHOPRT = 0x400
-+ EFD_CLOEXEC = 0x80000
-+ EFD_NONBLOCK = 0x800
-+ EPOLL_CLOEXEC = 0x80000
-+ EXTPROC = 0x10000
-+ FF1 = 0x8000
-+ FFDLY = 0x8000
-+ FLUSHO = 0x1000
-+ FS_IOC_ENABLE_VERITY = 0x40806685
-+ FS_IOC_GETFLAGS = 0x80086601
-+ FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
-+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
-+ FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
-+ F_GETLK = 0x5
-+ F_GETLK64 = 0x5
-+ F_GETOWN = 0x9
-+ F_RDLCK = 0x0
-+ F_SETLK = 0x6
-+ F_SETLK64 = 0x6
-+ F_SETLKW = 0x7
-+ F_SETLKW64 = 0x7
-+ F_SETOWN = 0x8
-+ F_UNLCK = 0x2
-+ F_WRLCK = 0x1
-+ HUPCL = 0x400
-+ ICANON = 0x2
-+ IEXTEN = 0x8000
-+ IN_CLOEXEC = 0x80000
-+ IN_NONBLOCK = 0x800
-+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x7b9
-+ ISIG = 0x1
-+ IUCLC = 0x200
-+ IXOFF = 0x1000
-+ IXON = 0x400
-+ MAP_ANON = 0x20
-+ MAP_ANONYMOUS = 0x20
-+ MAP_DENYWRITE = 0x800
-+ MAP_EXECUTABLE = 0x1000
-+ MAP_GROWSDOWN = 0x100
-+ MAP_HUGETLB = 0x40000
-+ MAP_LOCKED = 0x2000
-+ MAP_NONBLOCK = 0x10000
-+ MAP_NORESERVE = 0x4000
-+ MAP_POPULATE = 0x8000
-+ MAP_STACK = 0x20000
-+ MAP_SYNC = 0x80000
-+ MCL_CURRENT = 0x1
-+ MCL_FUTURE = 0x2
-+ MCL_ONFAULT = 0x4
-+ NFDBITS = 0x40
-+ NLDLY = 0x100
-+ NOFLSH = 0x80
-+ NS_GET_NSTYPE = 0xb703
-+ NS_GET_OWNER_UID = 0xb704
-+ NS_GET_PARENT = 0xb702
-+ NS_GET_USERNS = 0xb701
-+ OLCUC = 0x2
-+ ONLCR = 0x4
-+ O_APPEND = 0x400
-+ O_ASYNC = 0x2000
-+ O_CLOEXEC = 0x80000
-+ O_CREAT = 0x40
-+ O_DIRECT = 0x4000
-+ O_DIRECTORY = 0x10000
-+ O_DSYNC = 0x1000
-+ O_EXCL = 0x80
-+ O_FSYNC = 0x101000
-+ O_LARGEFILE = 0x0
-+ O_NDELAY = 0x800
-+ O_NOATIME = 0x40000
-+ O_NOCTTY = 0x100
-+ O_NOFOLLOW = 0x20000
-+ O_NONBLOCK = 0x800
-+ O_PATH = 0x200000
-+ O_RSYNC = 0x101000
-+ O_SYNC = 0x101000
-+ O_TMPFILE = 0x410000
-+ O_TRUNC = 0x200
-+ PARENB = 0x100
-+ PARODD = 0x200
-+ PENDIN = 0x4000
-+ PERF_EVENT_IOC_DISABLE = 0x2401
-+ PERF_EVENT_IOC_ENABLE = 0x2400
-+ PERF_EVENT_IOC_ID = 0x80082407
-+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4008240b
-+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
-+ PERF_EVENT_IOC_PERIOD = 0x40082404
-+ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
-+ PERF_EVENT_IOC_REFRESH = 0x2402
-+ PERF_EVENT_IOC_RESET = 0x2403
-+ PERF_EVENT_IOC_SET_BPF = 0x40042408
-+ PERF_EVENT_IOC_SET_FILTER = 0x40082406
-+ PERF_EVENT_IOC_SET_OUTPUT = 0x2405
-+ PPPIOCATTACH = 0x4004743d
-+ PPPIOCATTCHAN = 0x40047438
-+ PPPIOCCONNECT = 0x4004743a
-+ PPPIOCDETACH = 0x4004743c
-+ PPPIOCDISCONN = 0x7439
-+ PPPIOCGASYNCMAP = 0x80047458
-+ PPPIOCGCHAN = 0x80047437
-+ PPPIOCGDEBUG = 0x80047441
-+ PPPIOCGFLAGS = 0x8004745a
-+ PPPIOCGIDLE = 0x8010743f
-+ PPPIOCGIDLE32 = 0x8008743f
-+ PPPIOCGIDLE64 = 0x8010743f
-+ PPPIOCGL2TPSTATS = 0x80487436
-+ PPPIOCGMRU = 0x80047453
-+ PPPIOCGRASYNCMAP = 0x80047455
-+ PPPIOCGUNIT = 0x80047456
-+ PPPIOCGXASYNCMAP = 0x80207450
-+ PPPIOCSACTIVE = 0x40107446
-+ PPPIOCSASYNCMAP = 0x40047457
-+ PPPIOCSCOMPRESS = 0x4010744d
-+ PPPIOCSDEBUG = 0x40047440
-+ PPPIOCSFLAGS = 0x40047459
-+ PPPIOCSMAXCID = 0x40047451
-+ PPPIOCSMRRU = 0x4004743b
-+ PPPIOCSMRU = 0x40047452
-+ PPPIOCSNPMODE = 0x4008744b
-+ PPPIOCSPASS = 0x40107447
-+ PPPIOCSRASYNCMAP = 0x40047454
-+ PPPIOCSXASYNCMAP = 0x4020744f
-+ PPPIOCXFERUNIT = 0x744e
-+ PR_SET_PTRACER_ANY = 0xffffffffffffffff
-+ RLIMIT_AS = 0x9
-+ RLIMIT_MEMLOCK = 0x8
-+ RLIMIT_NOFILE = 0x7
-+ RLIMIT_NPROC = 0x6
-+ RLIMIT_RSS = 0x5
-+ RNDADDENTROPY = 0x40085203
-+ RNDADDTOENTCNT = 0x40045201
-+ RNDCLEARPOOL = 0x5206
-+ RNDGETENTCNT = 0x80045200
-+ RNDGETPOOL = 0x80085202
-+ RNDRESEEDCRNG = 0x5207
-+ RNDZAPENTCNT = 0x5204
-+ RTC_AIE_OFF = 0x7002
-+ RTC_AIE_ON = 0x7001
-+ RTC_ALM_READ = 0x80247008
-+ RTC_ALM_SET = 0x40247007
-+ RTC_EPOCH_READ = 0x8008700d
-+ RTC_EPOCH_SET = 0x4008700e
-+ RTC_IRQP_READ = 0x8008700b
-+ RTC_IRQP_SET = 0x4008700c
-+ RTC_PIE_OFF = 0x7006
-+ RTC_PIE_ON = 0x7005
-+ RTC_PLL_GET = 0x80207011
-+ RTC_PLL_SET = 0x40207012
-+ RTC_RD_TIME = 0x80247009
-+ RTC_SET_TIME = 0x4024700a
-+ RTC_UIE_OFF = 0x7004
-+ RTC_UIE_ON = 0x7003
-+ RTC_VL_CLR = 0x7014
-+ RTC_VL_READ = 0x80047013
-+ RTC_WIE_OFF = 0x7010
-+ RTC_WIE_ON = 0x700f
-+ RTC_WKALM_RD = 0x80287010
-+ RTC_WKALM_SET = 0x4028700f
-+ SCM_TIMESTAMPING = 0x25
-+ SCM_TIMESTAMPING_OPT_STATS = 0x36
-+ SCM_TIMESTAMPING_PKTINFO = 0x3a
-+ SCM_TIMESTAMPNS = 0x23
-+ SCM_TXTIME = 0x3d
-+ SCM_WIFI_STATUS = 0x29
-+ SFD_CLOEXEC = 0x80000
-+ SFD_NONBLOCK = 0x800
-+ SIOCATMARK = 0x8905
-+ SIOCGPGRP = 0x8904
-+ SIOCGSTAMPNS_NEW = 0x80108907
-+ SIOCGSTAMP_NEW = 0x80108906
-+ SIOCINQ = 0x541b
-+ SIOCOUTQ = 0x5411
-+ SIOCSPGRP = 0x8902
-+ SOCK_CLOEXEC = 0x80000
-+ SOCK_DGRAM = 0x2
-+ SOCK_NONBLOCK = 0x800
-+ SOCK_STREAM = 0x1
-+ SOL_SOCKET = 0x1
-+ SO_ACCEPTCONN = 0x1e
-+ SO_ATTACH_BPF = 0x32
-+ SO_ATTACH_REUSEPORT_CBPF = 0x33
-+ SO_ATTACH_REUSEPORT_EBPF = 0x34
-+ SO_BINDTODEVICE = 0x19
-+ SO_BINDTOIFINDEX = 0x3e
-+ SO_BPF_EXTENSIONS = 0x30
-+ SO_BROADCAST = 0x6
-+ SO_BSDCOMPAT = 0xe
-+ SO_BUSY_POLL = 0x2e
-+ SO_CNX_ADVICE = 0x35
-+ SO_COOKIE = 0x39
-+ SO_DETACH_REUSEPORT_BPF = 0x44
-+ SO_DOMAIN = 0x27
-+ SO_DONTROUTE = 0x5
-+ SO_ERROR = 0x4
-+ SO_INCOMING_CPU = 0x31
-+ SO_INCOMING_NAPI_ID = 0x38
-+ SO_KEEPALIVE = 0x9
-+ SO_LINGER = 0xd
-+ SO_LOCK_FILTER = 0x2c
-+ SO_MARK = 0x24
-+ SO_MAX_PACING_RATE = 0x2f
-+ SO_MEMINFO = 0x37
-+ SO_NOFCS = 0x2b
-+ SO_OOBINLINE = 0xa
-+ SO_PASSCRED = 0x10
-+ SO_PASSSEC = 0x22
-+ SO_PEEK_OFF = 0x2a
-+ SO_PEERCRED = 0x11
-+ SO_PEERGROUPS = 0x3b
-+ SO_PEERSEC = 0x1f
-+ SO_PROTOCOL = 0x26
-+ SO_RCVBUF = 0x8
-+ SO_RCVBUFFORCE = 0x21
-+ SO_RCVLOWAT = 0x12
-+ SO_RCVTIMEO = 0x14
-+ SO_RCVTIMEO_NEW = 0x42
-+ SO_RCVTIMEO_OLD = 0x14
-+ SO_REUSEADDR = 0x2
-+ SO_REUSEPORT = 0xf
-+ SO_RXQ_OVFL = 0x28
-+ SO_SECURITY_AUTHENTICATION = 0x16
-+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-+ SO_SELECT_ERR_QUEUE = 0x2d
-+ SO_SNDBUF = 0x7
-+ SO_SNDBUFFORCE = 0x20
-+ SO_SNDLOWAT = 0x13
-+ SO_SNDTIMEO = 0x15
-+ SO_SNDTIMEO_NEW = 0x43
-+ SO_SNDTIMEO_OLD = 0x15
-+ SO_TIMESTAMPING = 0x25
-+ SO_TIMESTAMPING_NEW = 0x41
-+ SO_TIMESTAMPING_OLD = 0x25
-+ SO_TIMESTAMPNS = 0x23
-+ SO_TIMESTAMPNS_NEW = 0x40
-+ SO_TIMESTAMPNS_OLD = 0x23
-+ SO_TIMESTAMP_NEW = 0x3f
-+ SO_TXTIME = 0x3d
-+ SO_TYPE = 0x3
-+ SO_WIFI_STATUS = 0x29
-+ SO_ZEROCOPY = 0x3c
-+ TAB1 = 0x800
-+ TAB2 = 0x1000
-+ TAB3 = 0x1800
-+ TABDLY = 0x1800
-+ TCFLSH = 0x540b
-+ TCGETA = 0x5405
-+ TCGETS = 0x5401
-+ TCGETS2 = 0x802c542a
-+ TCGETX = 0x5432
-+ TCSAFLUSH = 0x2
-+ TCSBRK = 0x5409
-+ TCSBRKP = 0x5425
-+ TCSETA = 0x5406
-+ TCSETAF = 0x5408
-+ TCSETAW = 0x5407
-+ TCSETS = 0x5402
-+ TCSETS2 = 0x402c542b
-+ TCSETSF = 0x5404
-+ TCSETSF2 = 0x402c542d
-+ TCSETSW = 0x5403
-+ TCSETSW2 = 0x402c542c
-+ TCSETX = 0x5433
-+ TCSETXF = 0x5434
-+ TCSETXW = 0x5435
-+ TCXONC = 0x540a
-+ TIOCCBRK = 0x5428
-+ TIOCCONS = 0x541d
-+ TIOCEXCL = 0x540c
-+ TIOCGDEV = 0x80045432
-+ TIOCGETD = 0x5424
-+ TIOCGEXCL = 0x80045440
-+ TIOCGICOUNT = 0x545d
-+ TIOCGISO7816 = 0x80285442
-+ TIOCGLCKTRMIOS = 0x5456
-+ TIOCGPGRP = 0x540f
-+ TIOCGPKT = 0x80045438
-+ TIOCGPTLCK = 0x80045439
-+ TIOCGPTN = 0x80045430
-+ TIOCGPTPEER = 0x5441
-+ TIOCGRS485 = 0x542e
-+ TIOCGSERIAL = 0x541e
-+ TIOCGSID = 0x5429
-+ TIOCGSOFTCAR = 0x5419
-+ TIOCGWINSZ = 0x5413
-+ TIOCINQ = 0x541b
-+ TIOCLINUX = 0x541c
-+ TIOCMBIC = 0x5417
-+ TIOCMBIS = 0x5416
-+ TIOCMGET = 0x5415
-+ TIOCMIWAIT = 0x545c
-+ TIOCMSET = 0x5418
-+ TIOCM_CAR = 0x40
-+ TIOCM_CD = 0x40
-+ TIOCM_CTS = 0x20
-+ TIOCM_DSR = 0x100
-+ TIOCM_RI = 0x80
-+ TIOCM_RNG = 0x80
-+ TIOCM_SR = 0x10
-+ TIOCM_ST = 0x8
-+ TIOCNOTTY = 0x5422
-+ TIOCNXCL = 0x540d
-+ TIOCOUTQ = 0x5411
-+ TIOCPKT = 0x5420
-+ TIOCSBRK = 0x5427
-+ TIOCSCTTY = 0x540e
-+ TIOCSERCONFIG = 0x5453
-+ TIOCSERGETLSR = 0x5459
-+ TIOCSERGETMULTI = 0x545a
-+ TIOCSERGSTRUCT = 0x5458
-+ TIOCSERGWILD = 0x5454
-+ TIOCSERSETMULTI = 0x545b
-+ TIOCSERSWILD = 0x5455
-+ TIOCSER_TEMT = 0x1
-+ TIOCSETD = 0x5423
-+ TIOCSIG = 0x40045436
-+ TIOCSISO7816 = 0xc0285443
-+ TIOCSLCKTRMIOS = 0x5457
-+ TIOCSPGRP = 0x5410
-+ TIOCSPTLCK = 0x40045431
-+ TIOCSRS485 = 0x542f
-+ TIOCSSERIAL = 0x541f
-+ TIOCSSOFTCAR = 0x541a
-+ TIOCSTI = 0x5412
-+ TIOCSWINSZ = 0x5414
-+ TIOCVHANGUP = 0x5437
-+ TOSTOP = 0x100
-+ TUNATTACHFILTER = 0x401054d5
-+ TUNDETACHFILTER = 0x401054d6
-+ TUNGETDEVNETNS = 0x54e3
-+ TUNGETFEATURES = 0x800454cf
-+ TUNGETFILTER = 0x801054db
-+ TUNGETIFF = 0x800454d2
-+ TUNGETSNDBUF = 0x800454d3
-+ TUNGETVNETBE = 0x800454df
-+ TUNGETVNETHDRSZ = 0x800454d7
-+ TUNGETVNETLE = 0x800454dd
-+ TUNSETCARRIER = 0x400454e2
-+ TUNSETDEBUG = 0x400454c9
-+ TUNSETFILTEREBPF = 0x800454e1
-+ TUNSETGROUP = 0x400454ce
-+ TUNSETIFF = 0x400454ca
-+ TUNSETIFINDEX = 0x400454da
-+ TUNSETLINK = 0x400454cd
-+ TUNSETNOCSUM = 0x400454c8
-+ TUNSETOFFLOAD = 0x400454d0
-+ TUNSETOWNER = 0x400454cc
-+ TUNSETPERSIST = 0x400454cb
-+ TUNSETQUEUE = 0x400454d9
-+ TUNSETSNDBUF = 0x400454d4
-+ TUNSETSTEERINGEBPF = 0x800454e0
-+ TUNSETTXFILTER = 0x400454d1
-+ TUNSETVNETBE = 0x400454de
-+ TUNSETVNETHDRSZ = 0x400454d8
-+ TUNSETVNETLE = 0x400454dc
-+ UBI_IOCATT = 0x40186f40
-+ UBI_IOCDET = 0x40046f41
-+ UBI_IOCEBCH = 0x40044f02
-+ UBI_IOCEBER = 0x40044f01
-+ UBI_IOCEBISMAP = 0x80044f05
-+ UBI_IOCEBMAP = 0x40084f03
-+ UBI_IOCEBUNMAP = 0x40044f04
-+ UBI_IOCMKVOL = 0x40986f00
-+ UBI_IOCRMVOL = 0x40046f01
-+ UBI_IOCRNVOL = 0x51106f03
-+ UBI_IOCRPEB = 0x40046f04
-+ UBI_IOCRSVOL = 0x400c6f02
-+ UBI_IOCSETVOLPROP = 0x40104f06
-+ UBI_IOCSPEB = 0x40046f05
-+ UBI_IOCVOLCRBLK = 0x40804f07
-+ UBI_IOCVOLRMBLK = 0x4f08
-+ UBI_IOCVOLUP = 0x40084f00
-+ VDISCARD = 0xd
-+ VEOF = 0x4
-+ VEOL = 0xb
-+ VEOL2 = 0x10
-+ VMIN = 0x6
-+ VREPRINT = 0xc
-+ VSTART = 0x8
-+ VSTOP = 0x9
-+ VSUSP = 0xa
-+ VSWTC = 0x7
-+ VT1 = 0x4000
-+ VTDLY = 0x4000
-+ VTIME = 0x5
-+ VWERASE = 0xe
-+ WDIOC_GETBOOTSTATUS = 0x80045702
-+ WDIOC_GETPRETIMEOUT = 0x80045709
-+ WDIOC_GETSTATUS = 0x80045701
-+ WDIOC_GETSUPPORT = 0x80285700
-+ WDIOC_GETTEMP = 0x80045703
-+ WDIOC_GETTIMELEFT = 0x8004570a
-+ WDIOC_GETTIMEOUT = 0x80045707
-+ WDIOC_KEEPALIVE = 0x80045705
-+ WDIOC_SETOPTIONS = 0x80045704
-+ WORDSIZE = 0x40
-+ XCASE = 0x4
-+ XTABS = 0x1800
-+)
-+
-+// Errors
-+const (
-+ EADDRINUSE = syscall.Errno(0x62)
-+ EADDRNOTAVAIL = syscall.Errno(0x63)
-+ EADV = syscall.Errno(0x44)
-+ EAFNOSUPPORT = syscall.Errno(0x61)
-+ EALREADY = syscall.Errno(0x72)
-+ EBADE = syscall.Errno(0x34)
-+ EBADFD = syscall.Errno(0x4d)
-+ EBADMSG = syscall.Errno(0x4a)
-+ EBADR = syscall.Errno(0x35)
-+ EBADRQC = syscall.Errno(0x38)
-+ EBADSLT = syscall.Errno(0x39)
-+ EBFONT = syscall.Errno(0x3b)
-+ ECANCELED = syscall.Errno(0x7d)
-+ ECHRNG = syscall.Errno(0x2c)
-+ ECOMM = syscall.Errno(0x46)
-+ ECONNABORTED = syscall.Errno(0x67)
-+ ECONNREFUSED = syscall.Errno(0x6f)
-+ ECONNRESET = syscall.Errno(0x68)
-+ EDEADLK = syscall.Errno(0x23)
-+ EDEADLOCK = syscall.Errno(0x23)
-+ EDESTADDRREQ = syscall.Errno(0x59)
-+ EDOTDOT = syscall.Errno(0x49)
-+ EDQUOT = syscall.Errno(0x7a)
-+ EHOSTDOWN = syscall.Errno(0x70)
-+ EHOSTUNREACH = syscall.Errno(0x71)
-+ EHWPOISON = syscall.Errno(0x85)
-+ EIDRM = syscall.Errno(0x2b)
-+ EILSEQ = syscall.Errno(0x54)
-+ EINPROGRESS = syscall.Errno(0x73)
-+ EISCONN = syscall.Errno(0x6a)
-+ EISNAM = syscall.Errno(0x78)
-+ EKEYEXPIRED = syscall.Errno(0x7f)
-+ EKEYREJECTED = syscall.Errno(0x81)
-+ EKEYREVOKED = syscall.Errno(0x80)
-+ EL2HLT = syscall.Errno(0x33)
-+ EL2NSYNC = syscall.Errno(0x2d)
-+ EL3HLT = syscall.Errno(0x2e)
-+ EL3RST = syscall.Errno(0x2f)
-+ ELIBACC = syscall.Errno(0x4f)
-+ ELIBBAD = syscall.Errno(0x50)
-+ ELIBEXEC = syscall.Errno(0x53)
-+ ELIBMAX = syscall.Errno(0x52)
-+ ELIBSCN = syscall.Errno(0x51)
-+ ELNRNG = syscall.Errno(0x30)
-+ ELOOP = syscall.Errno(0x28)
-+ EMEDIUMTYPE = syscall.Errno(0x7c)
-+ EMSGSIZE = syscall.Errno(0x5a)
-+ EMULTIHOP = syscall.Errno(0x48)
-+ ENAMETOOLONG = syscall.Errno(0x24)
-+ ENAVAIL = syscall.Errno(0x77)
-+ ENETDOWN = syscall.Errno(0x64)
-+ ENETRESET = syscall.Errno(0x66)
-+ ENETUNREACH = syscall.Errno(0x65)
-+ ENOANO = syscall.Errno(0x37)
-+ ENOBUFS = syscall.Errno(0x69)
-+ ENOCSI = syscall.Errno(0x32)
-+ ENODATA = syscall.Errno(0x3d)
-+ ENOKEY = syscall.Errno(0x7e)
-+ ENOLCK = syscall.Errno(0x25)
-+ ENOLINK = syscall.Errno(0x43)
-+ ENOMEDIUM = syscall.Errno(0x7b)
-+ ENOMSG = syscall.Errno(0x2a)
-+ ENONET = syscall.Errno(0x40)
-+ ENOPKG = syscall.Errno(0x41)
-+ ENOPROTOOPT = syscall.Errno(0x5c)
-+ ENOSR = syscall.Errno(0x3f)
-+ ENOSTR = syscall.Errno(0x3c)
-+ ENOSYS = syscall.Errno(0x26)
-+ ENOTCONN = syscall.Errno(0x6b)
-+ ENOTEMPTY = syscall.Errno(0x27)
-+ ENOTNAM = syscall.Errno(0x76)
-+ ENOTRECOVERABLE = syscall.Errno(0x83)
-+ ENOTSOCK = syscall.Errno(0x58)
-+ ENOTSUP = syscall.Errno(0x5f)
-+ ENOTUNIQ = syscall.Errno(0x4c)
-+ EOPNOTSUPP = syscall.Errno(0x5f)
-+ EOVERFLOW = syscall.Errno(0x4b)
-+ EOWNERDEAD = syscall.Errno(0x82)
-+ EPFNOSUPPORT = syscall.Errno(0x60)
-+ EPROTO = syscall.Errno(0x47)
-+ EPROTONOSUPPORT = syscall.Errno(0x5d)
-+ EPROTOTYPE = syscall.Errno(0x5b)
-+ EREMCHG = syscall.Errno(0x4e)
-+ EREMOTE = syscall.Errno(0x42)
-+ EREMOTEIO = syscall.Errno(0x79)
-+ ERESTART = syscall.Errno(0x55)
-+ ERFKILL = syscall.Errno(0x84)
-+ ESHUTDOWN = syscall.Errno(0x6c)
-+ ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-+ ESRMNT = syscall.Errno(0x45)
-+ ESTALE = syscall.Errno(0x74)
-+ ESTRPIPE = syscall.Errno(0x56)
-+ ETIME = syscall.Errno(0x3e)
-+ ETIMEDOUT = syscall.Errno(0x6e)
-+ ETOOMANYREFS = syscall.Errno(0x6d)
-+ EUCLEAN = syscall.Errno(0x75)
-+ EUNATCH = syscall.Errno(0x31)
-+ EUSERS = syscall.Errno(0x57)
-+ EXFULL = syscall.Errno(0x36)
-+)
-+
-+// Signals
-+const (
-+ SIGBUS = syscall.Signal(0x7)
-+ SIGCHLD = syscall.Signal(0x11)
-+ SIGCLD = syscall.Signal(0x11)
-+ SIGCONT = syscall.Signal(0x12)
-+ SIGIO = syscall.Signal(0x1d)
-+ SIGPOLL = syscall.Signal(0x1d)
-+ SIGPROF = syscall.Signal(0x1b)
-+ SIGPWR = syscall.Signal(0x1e)
-+ SIGSTKFLT = syscall.Signal(0x10)
-+ SIGSTOP = syscall.Signal(0x13)
-+ SIGSYS = syscall.Signal(0x1f)
-+ SIGTSTP = syscall.Signal(0x14)
-+ SIGTTIN = syscall.Signal(0x15)
-+ SIGTTOU = syscall.Signal(0x16)
-+ SIGURG = syscall.Signal(0x17)
-+ SIGUSR1 = syscall.Signal(0xa)
-+ SIGUSR2 = syscall.Signal(0xc)
-+ SIGVTALRM = syscall.Signal(0x1a)
-+ SIGWINCH = syscall.Signal(0x1c)
-+ SIGXCPU = syscall.Signal(0x18)
-+ SIGXFSZ = syscall.Signal(0x19)
-+)
-+
-+// Error table
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device or resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "invalid cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "numerical result out of range"},
-+ {35, "EDEADLK", "resource deadlock avoided"},
-+ {36, "ENAMETOOLONG", "file name too long"},
-+ {37, "ENOLCK", "no locks available"},
-+ {38, "ENOSYS", "function not implemented"},
-+ {39, "ENOTEMPTY", "directory not empty"},
-+ {40, "ELOOP", "too many levels of symbolic links"},
-+ {42, "ENOMSG", "no message of desired type"},
-+ {43, "EIDRM", "identifier removed"},
-+ {44, "ECHRNG", "channel number out of range"},
-+ {45, "EL2NSYNC", "level 2 not synchronized"},
-+ {46, "EL3HLT", "level 3 halted"},
-+ {47, "EL3RST", "level 3 reset"},
-+ {48, "ELNRNG", "link number out of range"},
-+ {49, "EUNATCH", "protocol driver not attached"},
-+ {50, "ENOCSI", "no CSI structure available"},
-+ {51, "EL2HLT", "level 2 halted"},
-+ {52, "EBADE", "invalid exchange"},
-+ {53, "EBADR", "invalid request descriptor"},
-+ {54, "EXFULL", "exchange full"},
-+ {55, "ENOANO", "no anode"},
-+ {56, "EBADRQC", "invalid request code"},
-+ {57, "EBADSLT", "invalid slot"},
-+ {59, "EBFONT", "bad font file format"},
-+ {60, "ENOSTR", "device not a stream"},
-+ {61, "ENODATA", "no data available"},
-+ {62, "ETIME", "timer expired"},
-+ {63, "ENOSR", "out of streams resources"},
-+ {64, "ENONET", "machine is not on the network"},
-+ {65, "ENOPKG", "package not installed"},
-+ {66, "EREMOTE", "object is remote"},
-+ {67, "ENOLINK", "link has been severed"},
-+ {68, "EADV", "advertise error"},
-+ {69, "ESRMNT", "srmount error"},
-+ {70, "ECOMM", "communication error on send"},
-+ {71, "EPROTO", "protocol error"},
-+ {72, "EMULTIHOP", "multihop attempted"},
-+ {73, "EDOTDOT", "RFS specific error"},
-+ {74, "EBADMSG", "bad message"},
-+ {75, "EOVERFLOW", "value too large for defined data type"},
-+ {76, "ENOTUNIQ", "name not unique on network"},
-+ {77, "EBADFD", "file descriptor in bad state"},
-+ {78, "EREMCHG", "remote address changed"},
-+ {79, "ELIBACC", "can not access a needed shared library"},
-+ {80, "ELIBBAD", "accessing a corrupted shared library"},
-+ {81, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
-+ {83, "ELIBEXEC", "cannot exec a shared library directly"},
-+ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
-+ {85, "ERESTART", "interrupted system call should be restarted"},
-+ {86, "ESTRPIPE", "streams pipe error"},
-+ {87, "EUSERS", "too many users"},
-+ {88, "ENOTSOCK", "socket operation on non-socket"},
-+ {89, "EDESTADDRREQ", "destination address required"},
-+ {90, "EMSGSIZE", "message too long"},
-+ {91, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {92, "ENOPROTOOPT", "protocol not available"},
-+ {93, "EPROTONOSUPPORT", "protocol not supported"},
-+ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {95, "ENOTSUP", "operation not supported"},
-+ {96, "EPFNOSUPPORT", "protocol family not supported"},
-+ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
-+ {98, "EADDRINUSE", "address already in use"},
-+ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {100, "ENETDOWN", "network is down"},
-+ {101, "ENETUNREACH", "network is unreachable"},
-+ {102, "ENETRESET", "network dropped connection on reset"},
-+ {103, "ECONNABORTED", "software caused connection abort"},
-+ {104, "ECONNRESET", "connection reset by peer"},
-+ {105, "ENOBUFS", "no buffer space available"},
-+ {106, "EISCONN", "transport endpoint is already connected"},
-+ {107, "ENOTCONN", "transport endpoint is not connected"},
-+ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
-+ {109, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {110, "ETIMEDOUT", "connection timed out"},
-+ {111, "ECONNREFUSED", "connection refused"},
-+ {112, "EHOSTDOWN", "host is down"},
-+ {113, "EHOSTUNREACH", "no route to host"},
-+ {114, "EALREADY", "operation already in progress"},
-+ {115, "EINPROGRESS", "operation now in progress"},
-+ {116, "ESTALE", "stale file handle"},
-+ {117, "EUCLEAN", "structure needs cleaning"},
-+ {118, "ENOTNAM", "not a XENIX named type file"},
-+ {119, "ENAVAIL", "no XENIX semaphores available"},
-+ {120, "EISNAM", "is a named type file"},
-+ {121, "EREMOTEIO", "remote I/O error"},
-+ {122, "EDQUOT", "disk quota exceeded"},
-+ {123, "ENOMEDIUM", "no medium found"},
-+ {124, "EMEDIUMTYPE", "wrong medium type"},
-+ {125, "ECANCELED", "operation canceled"},
-+ {126, "ENOKEY", "required key not available"},
-+ {127, "EKEYEXPIRED", "key has expired"},
-+ {128, "EKEYREVOKED", "key has been revoked"},
-+ {129, "EKEYREJECTED", "key was rejected by service"},
-+ {130, "EOWNERDEAD", "owner died"},
-+ {131, "ENOTRECOVERABLE", "state not recoverable"},
-+ {132, "ERFKILL", "operation not possible due to RF-kill"},
-+ {133, "EHWPOISON", "memory page has hardware error"},
-+}
-+
-+// Signal table
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/breakpoint trap"},
-+ {6, "SIGABRT", "aborted"},
-+ {7, "SIGBUS", "bus error"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGUSR1", "user defined signal 1"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGUSR2", "user defined signal 2"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGSTKFLT", "stack fault"},
-+ {17, "SIGCHLD", "child exited"},
-+ {18, "SIGCONT", "continued"},
-+ {19, "SIGSTOP", "stopped (signal)"},
-+ {20, "SIGTSTP", "stopped"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGURG", "urgent I/O condition"},
-+ {24, "SIGXCPU", "CPU time limit exceeded"},
-+ {25, "SIGXFSZ", "file size limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window changed"},
-+ {29, "SIGIO", "I/O possible"},
-+ {30, "SIGPWR", "power failure"},
-+ {31, "SIGSYS", "bad system call"},
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go b/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
-index 3b570754..95e950fc 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
-@@ -3,7 +3,7 @@
-
- // +build s390x,linux
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char _const.go
-
- package unix
-@@ -11,1930 +11,547 @@ package unix
- import "syscall"
-
- const (
-- AF_ALG = 0x26
-- AF_APPLETALK = 0x5
-- AF_ASH = 0x12
-- AF_ATMPVC = 0x8
-- AF_ATMSVC = 0x14
-- AF_AX25 = 0x3
-- AF_BLUETOOTH = 0x1f
-- AF_BRIDGE = 0x7
-- AF_CAIF = 0x25
-- AF_CAN = 0x1d
-- AF_DECnet = 0xc
-- AF_ECONET = 0x13
-- AF_FILE = 0x1
-- AF_IB = 0x1b
-- AF_IEEE802154 = 0x24
-- AF_INET = 0x2
-- AF_INET6 = 0xa
-- AF_IPX = 0x4
-- AF_IRDA = 0x17
-- AF_ISDN = 0x22
-- AF_IUCV = 0x20
-- AF_KCM = 0x29
-- AF_KEY = 0xf
-- AF_LLC = 0x1a
-- AF_LOCAL = 0x1
-- AF_MAX = 0x2b
-- AF_MPLS = 0x1c
-- AF_NETBEUI = 0xd
-- AF_NETLINK = 0x10
-- AF_NETROM = 0x6
-- AF_NFC = 0x27
-- AF_PACKET = 0x11
-- AF_PHONET = 0x23
-- AF_PPPOX = 0x18
-- AF_QIPCRTR = 0x2a
-- AF_RDS = 0x15
-- AF_ROSE = 0xb
-- AF_ROUTE = 0x10
-- AF_RXRPC = 0x21
-- AF_SECURITY = 0xe
-- AF_SNA = 0x16
-- AF_TIPC = 0x1e
-- AF_UNIX = 0x1
-- AF_UNSPEC = 0x0
-- AF_VSOCK = 0x28
-- AF_WANPIPE = 0x19
-- AF_X25 = 0x9
-- ALG_OP_DECRYPT = 0x0
-- ALG_OP_ENCRYPT = 0x1
-- ALG_SET_AEAD_ASSOCLEN = 0x4
-- ALG_SET_AEAD_AUTHSIZE = 0x5
-- ALG_SET_IV = 0x2
-- ALG_SET_KEY = 0x1
-- ALG_SET_OP = 0x3
-- ARPHRD_6LOWPAN = 0x339
-- ARPHRD_ADAPT = 0x108
-- ARPHRD_APPLETLK = 0x8
-- ARPHRD_ARCNET = 0x7
-- ARPHRD_ASH = 0x30d
-- ARPHRD_ATM = 0x13
-- ARPHRD_AX25 = 0x3
-- ARPHRD_BIF = 0x307
-- ARPHRD_CAIF = 0x336
-- ARPHRD_CAN = 0x118
-- ARPHRD_CHAOS = 0x5
-- ARPHRD_CISCO = 0x201
-- ARPHRD_CSLIP = 0x101
-- ARPHRD_CSLIP6 = 0x103
-- ARPHRD_DDCMP = 0x205
-- ARPHRD_DLCI = 0xf
-- ARPHRD_ECONET = 0x30e
-- ARPHRD_EETHER = 0x2
-- ARPHRD_ETHER = 0x1
-- ARPHRD_EUI64 = 0x1b
-- ARPHRD_FCAL = 0x311
-- ARPHRD_FCFABRIC = 0x313
-- ARPHRD_FCPL = 0x312
-- ARPHRD_FCPP = 0x310
-- ARPHRD_FDDI = 0x306
-- ARPHRD_FRAD = 0x302
-- ARPHRD_HDLC = 0x201
-- ARPHRD_HIPPI = 0x30c
-- ARPHRD_HWX25 = 0x110
-- ARPHRD_IEEE1394 = 0x18
-- ARPHRD_IEEE802 = 0x6
-- ARPHRD_IEEE80211 = 0x321
-- ARPHRD_IEEE80211_PRISM = 0x322
-- ARPHRD_IEEE80211_RADIOTAP = 0x323
-- ARPHRD_IEEE802154 = 0x324
-- ARPHRD_IEEE802154_MONITOR = 0x325
-- ARPHRD_IEEE802_TR = 0x320
-- ARPHRD_INFINIBAND = 0x20
-- ARPHRD_IP6GRE = 0x337
-- ARPHRD_IPDDP = 0x309
-- ARPHRD_IPGRE = 0x30a
-- ARPHRD_IRDA = 0x30f
-- ARPHRD_LAPB = 0x204
-- ARPHRD_LOCALTLK = 0x305
-- ARPHRD_LOOPBACK = 0x304
-- ARPHRD_METRICOM = 0x17
-- ARPHRD_NETLINK = 0x338
-- ARPHRD_NETROM = 0x0
-- ARPHRD_NONE = 0xfffe
-- ARPHRD_PHONET = 0x334
-- ARPHRD_PHONET_PIPE = 0x335
-- ARPHRD_PIMREG = 0x30b
-- ARPHRD_PPP = 0x200
-- ARPHRD_PRONET = 0x4
-- ARPHRD_RAWHDLC = 0x206
-- ARPHRD_ROSE = 0x10e
-- ARPHRD_RSRVD = 0x104
-- ARPHRD_SIT = 0x308
-- ARPHRD_SKIP = 0x303
-- ARPHRD_SLIP = 0x100
-- ARPHRD_SLIP6 = 0x102
-- ARPHRD_TUNNEL = 0x300
-- ARPHRD_TUNNEL6 = 0x301
-- ARPHRD_VOID = 0xffff
-- ARPHRD_X25 = 0x10f
-- B0 = 0x0
-- B1000000 = 0x1008
-- B110 = 0x3
-- B115200 = 0x1002
-- B1152000 = 0x1009
-- B1200 = 0x9
-- B134 = 0x4
-- B150 = 0x5
-- B1500000 = 0x100a
-- B1800 = 0xa
-- B19200 = 0xe
-- B200 = 0x6
-- B2000000 = 0x100b
-- B230400 = 0x1003
-- B2400 = 0xb
-- B2500000 = 0x100c
-- B300 = 0x7
-- B3000000 = 0x100d
-- B3500000 = 0x100e
-- B38400 = 0xf
-- B4000000 = 0x100f
-- B460800 = 0x1004
-- B4800 = 0xc
-- B50 = 0x1
-- B500000 = 0x1005
-- B57600 = 0x1001
-- B576000 = 0x1006
-- B600 = 0x8
-- B75 = 0x2
-- B921600 = 0x1007
-- B9600 = 0xd
-- BLKBSZGET = 0x80081270
-- BLKBSZSET = 0x40081271
-- BLKFLSBUF = 0x1261
-- BLKFRAGET = 0x1265
-- BLKFRASET = 0x1264
-- BLKGETSIZE = 0x1260
-- BLKGETSIZE64 = 0x80081272
-- BLKPBSZGET = 0x127b
-- BLKRAGET = 0x1263
-- BLKRASET = 0x1262
-- BLKROGET = 0x125e
-- BLKROSET = 0x125d
-- BLKRRPART = 0x125f
-- BLKSECTGET = 0x1267
-- BLKSECTSET = 0x1266
-- BLKSSZGET = 0x1268
-- BOTHER = 0x1000
-- BPF_A = 0x10
-- BPF_ABS = 0x20
-- BPF_ADD = 0x0
-- BPF_ALU = 0x4
-- BPF_AND = 0x50
-- BPF_B = 0x10
-- BPF_DIV = 0x30
-- BPF_H = 0x8
-- BPF_IMM = 0x0
-- BPF_IND = 0x40
-- BPF_JA = 0x0
-- BPF_JEQ = 0x10
-- BPF_JGE = 0x30
-- BPF_JGT = 0x20
-- BPF_JMP = 0x5
-- BPF_JSET = 0x40
-- BPF_K = 0x0
-- BPF_LD = 0x0
-- BPF_LDX = 0x1
-- BPF_LEN = 0x80
-- BPF_LL_OFF = -0x200000
-- BPF_LSH = 0x60
-- BPF_MAJOR_VERSION = 0x1
-- BPF_MAXINSNS = 0x1000
-- BPF_MEM = 0x60
-- BPF_MEMWORDS = 0x10
-- BPF_MINOR_VERSION = 0x1
-- BPF_MISC = 0x7
-- BPF_MOD = 0x90
-- BPF_MSH = 0xa0
-- BPF_MUL = 0x20
-- BPF_NEG = 0x80
-- BPF_NET_OFF = -0x100000
-- BPF_OR = 0x40
-- BPF_RET = 0x6
-- BPF_RSH = 0x70
-- BPF_ST = 0x2
-- BPF_STX = 0x3
-- BPF_SUB = 0x10
-- BPF_TAX = 0x0
-- BPF_TXA = 0x80
-- BPF_W = 0x0
-- BPF_X = 0x8
-- BPF_XOR = 0xa0
-- BRKINT = 0x2
-- BS0 = 0x0
-- BS1 = 0x2000
-- BSDLY = 0x2000
-- CAN_BCM = 0x2
-- CAN_EFF_FLAG = 0x80000000
-- CAN_EFF_ID_BITS = 0x1d
-- CAN_EFF_MASK = 0x1fffffff
-- CAN_ERR_FLAG = 0x20000000
-- CAN_ERR_MASK = 0x1fffffff
-- CAN_INV_FILTER = 0x20000000
-- CAN_ISOTP = 0x6
-- CAN_MAX_DLC = 0x8
-- CAN_MAX_DLEN = 0x8
-- CAN_MCNET = 0x5
-- CAN_MTU = 0x10
-- CAN_NPROTO = 0x7
-- CAN_RAW = 0x1
-- CAN_RAW_FILTER_MAX = 0x200
-- CAN_RTR_FLAG = 0x40000000
-- CAN_SFF_ID_BITS = 0xb
-- CAN_SFF_MASK = 0x7ff
-- CAN_TP16 = 0x3
-- CAN_TP20 = 0x4
-- CBAUD = 0x100f
-- CBAUDEX = 0x1000
-- CFLUSH = 0xf
-- CIBAUD = 0x100f0000
-- CLOCAL = 0x800
-- CLOCK_BOOTTIME = 0x7
-- CLOCK_BOOTTIME_ALARM = 0x9
-- CLOCK_DEFAULT = 0x0
-- CLOCK_EXT = 0x1
-- CLOCK_INT = 0x2
-- CLOCK_MONOTONIC = 0x1
-- CLOCK_MONOTONIC_COARSE = 0x6
-- CLOCK_MONOTONIC_RAW = 0x4
-- CLOCK_PROCESS_CPUTIME_ID = 0x2
-- CLOCK_REALTIME = 0x0
-- CLOCK_REALTIME_ALARM = 0x8
-- CLOCK_REALTIME_COARSE = 0x5
-- CLOCK_TAI = 0xb
-- CLOCK_THREAD_CPUTIME_ID = 0x3
-- CLOCK_TXFROMRX = 0x4
-- CLOCK_TXINT = 0x3
-- CLONE_CHILD_CLEARTID = 0x200000
-- CLONE_CHILD_SETTID = 0x1000000
-- CLONE_DETACHED = 0x400000
-- CLONE_FILES = 0x400
-- CLONE_FS = 0x200
-- CLONE_IO = 0x80000000
-- CLONE_NEWCGROUP = 0x2000000
-- CLONE_NEWIPC = 0x8000000
-- CLONE_NEWNET = 0x40000000
-- CLONE_NEWNS = 0x20000
-- CLONE_NEWPID = 0x20000000
-- CLONE_NEWUSER = 0x10000000
-- CLONE_NEWUTS = 0x4000000
-- CLONE_PARENT = 0x8000
-- CLONE_PARENT_SETTID = 0x100000
-- CLONE_PTRACE = 0x2000
-- CLONE_SETTLS = 0x80000
-- CLONE_SIGHAND = 0x800
-- CLONE_SYSVSEM = 0x40000
-- CLONE_THREAD = 0x10000
-- CLONE_UNTRACED = 0x800000
-- CLONE_VFORK = 0x4000
-- CLONE_VM = 0x100
-- CMSPAR = 0x40000000
-- CR0 = 0x0
-- CR1 = 0x200
-- CR2 = 0x400
-- CR3 = 0x600
-- CRDLY = 0x600
-- CREAD = 0x80
-- CRTSCTS = 0x80000000
-- CS5 = 0x0
-- CS6 = 0x10
-- CS7 = 0x20
-- CS8 = 0x30
-- CSIGNAL = 0xff
-- CSIZE = 0x30
-- CSTART = 0x11
-- CSTATUS = 0x0
-- CSTOP = 0x13
-- CSTOPB = 0x40
-- CSUSP = 0x1a
-- DT_BLK = 0x6
-- DT_CHR = 0x2
-- DT_DIR = 0x4
-- DT_FIFO = 0x1
-- DT_LNK = 0xa
-- DT_REG = 0x8
-- DT_SOCK = 0xc
-- DT_UNKNOWN = 0x0
-- DT_WHT = 0xe
-- ECHO = 0x8
-- ECHOCTL = 0x200
-- ECHOE = 0x10
-- ECHOK = 0x20
-- ECHOKE = 0x800
-- ECHONL = 0x40
-- ECHOPRT = 0x400
-- EFD_CLOEXEC = 0x80000
-- EFD_NONBLOCK = 0x800
-- EFD_SEMAPHORE = 0x1
-- ENCODING_DEFAULT = 0x0
-- ENCODING_FM_MARK = 0x3
-- ENCODING_FM_SPACE = 0x4
-- ENCODING_MANCHESTER = 0x5
-- ENCODING_NRZ = 0x1
-- ENCODING_NRZI = 0x2
-- EPOLLERR = 0x8
-- EPOLLET = 0x80000000
-- EPOLLEXCLUSIVE = 0x10000000
-- EPOLLHUP = 0x10
-- EPOLLIN = 0x1
-- EPOLLMSG = 0x400
-- EPOLLONESHOT = 0x40000000
-- EPOLLOUT = 0x4
-- EPOLLPRI = 0x2
-- EPOLLRDBAND = 0x80
-- EPOLLRDHUP = 0x2000
-- EPOLLRDNORM = 0x40
-- EPOLLWAKEUP = 0x20000000
-- EPOLLWRBAND = 0x200
-- EPOLLWRNORM = 0x100
-- EPOLL_CLOEXEC = 0x80000
-- EPOLL_CTL_ADD = 0x1
-- EPOLL_CTL_DEL = 0x2
-- EPOLL_CTL_MOD = 0x3
-- ETH_P_1588 = 0x88f7
-- ETH_P_8021AD = 0x88a8
-- ETH_P_8021AH = 0x88e7
-- ETH_P_8021Q = 0x8100
-- ETH_P_80221 = 0x8917
-- ETH_P_802_2 = 0x4
-- ETH_P_802_3 = 0x1
-- ETH_P_802_3_MIN = 0x600
-- ETH_P_802_EX1 = 0x88b5
-- ETH_P_AARP = 0x80f3
-- ETH_P_AF_IUCV = 0xfbfb
-- ETH_P_ALL = 0x3
-- ETH_P_AOE = 0x88a2
-- ETH_P_ARCNET = 0x1a
-- ETH_P_ARP = 0x806
-- ETH_P_ATALK = 0x809b
-- ETH_P_ATMFATE = 0x8884
-- ETH_P_ATMMPOA = 0x884c
-- ETH_P_AX25 = 0x2
-- ETH_P_BATMAN = 0x4305
-- ETH_P_BPQ = 0x8ff
-- ETH_P_CAIF = 0xf7
-- ETH_P_CAN = 0xc
-- ETH_P_CANFD = 0xd
-- ETH_P_CONTROL = 0x16
-- ETH_P_CUST = 0x6006
-- ETH_P_DDCMP = 0x6
-- ETH_P_DEC = 0x6000
-- ETH_P_DIAG = 0x6005
-- ETH_P_DNA_DL = 0x6001
-- ETH_P_DNA_RC = 0x6002
-- ETH_P_DNA_RT = 0x6003
-- ETH_P_DSA = 0x1b
-- ETH_P_ECONET = 0x18
-- ETH_P_EDSA = 0xdada
-- ETH_P_FCOE = 0x8906
-- ETH_P_FIP = 0x8914
-- ETH_P_HDLC = 0x19
-- ETH_P_HSR = 0x892f
-- ETH_P_IEEE802154 = 0xf6
-- ETH_P_IEEEPUP = 0xa00
-- ETH_P_IEEEPUPAT = 0xa01
-- ETH_P_IP = 0x800
-- ETH_P_IPV6 = 0x86dd
-- ETH_P_IPX = 0x8137
-- ETH_P_IRDA = 0x17
-- ETH_P_LAT = 0x6004
-- ETH_P_LINK_CTL = 0x886c
-- ETH_P_LOCALTALK = 0x9
-- ETH_P_LOOP = 0x60
-- ETH_P_LOOPBACK = 0x9000
-- ETH_P_MACSEC = 0x88e5
-- ETH_P_MOBITEX = 0x15
-- ETH_P_MPLS_MC = 0x8848
-- ETH_P_MPLS_UC = 0x8847
-- ETH_P_MVRP = 0x88f5
-- ETH_P_NCSI = 0x88f8
-- ETH_P_PAE = 0x888e
-- ETH_P_PAUSE = 0x8808
-- ETH_P_PHONET = 0xf5
-- ETH_P_PPPTALK = 0x10
-- ETH_P_PPP_DISC = 0x8863
-- ETH_P_PPP_MP = 0x8
-- ETH_P_PPP_SES = 0x8864
-- ETH_P_PRP = 0x88fb
-- ETH_P_PUP = 0x200
-- ETH_P_PUPAT = 0x201
-- ETH_P_QINQ1 = 0x9100
-- ETH_P_QINQ2 = 0x9200
-- ETH_P_QINQ3 = 0x9300
-- ETH_P_RARP = 0x8035
-- ETH_P_SCA = 0x6007
-- ETH_P_SLOW = 0x8809
-- ETH_P_SNAP = 0x5
-- ETH_P_TDLS = 0x890d
-- ETH_P_TEB = 0x6558
-- ETH_P_TIPC = 0x88ca
-- ETH_P_TRAILER = 0x1c
-- ETH_P_TR_802_2 = 0x11
-- ETH_P_TSN = 0x22f0
-- ETH_P_WAN_PPP = 0x7
-- ETH_P_WCCP = 0x883e
-- ETH_P_X25 = 0x805
-- ETH_P_XDSA = 0xf8
-- EXTA = 0xe
-- EXTB = 0xf
-- EXTPROC = 0x10000
-- FALLOC_FL_COLLAPSE_RANGE = 0x8
-- FALLOC_FL_INSERT_RANGE = 0x20
-- FALLOC_FL_KEEP_SIZE = 0x1
-- FALLOC_FL_NO_HIDE_STALE = 0x4
-- FALLOC_FL_PUNCH_HOLE = 0x2
-- FALLOC_FL_UNSHARE_RANGE = 0x40
-- FALLOC_FL_ZERO_RANGE = 0x10
-- FD_CLOEXEC = 0x1
-- FD_SETSIZE = 0x400
-- FF0 = 0x0
-- FF1 = 0x8000
-- FFDLY = 0x8000
-- FLUSHO = 0x1000
-- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
-- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
-- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
-- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
-- FS_ENCRYPTION_MODE_INVALID = 0x0
-- FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
-- FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
-- FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
-- FS_KEY_DESCRIPTOR_SIZE = 0x8
-- FS_KEY_DESC_PREFIX = "fscrypt:"
-- FS_KEY_DESC_PREFIX_SIZE = 0x8
-- FS_MAX_KEY_SIZE = 0x40
-- FS_POLICY_FLAGS_PAD_16 = 0x2
-- FS_POLICY_FLAGS_PAD_32 = 0x3
-- FS_POLICY_FLAGS_PAD_4 = 0x0
-- FS_POLICY_FLAGS_PAD_8 = 0x1
-- FS_POLICY_FLAGS_PAD_MASK = 0x3
-- FS_POLICY_FLAGS_VALID = 0x3
-- F_DUPFD = 0x0
-- F_DUPFD_CLOEXEC = 0x406
-- F_EXLCK = 0x4
-- F_GETFD = 0x1
-- F_GETFL = 0x3
-- F_GETLEASE = 0x401
-- F_GETLK = 0x5
-- F_GETLK64 = 0x5
-- F_GETOWN = 0x9
-- F_GETOWN_EX = 0x10
-- F_GETPIPE_SZ = 0x408
-- F_GETSIG = 0xb
-- F_LOCK = 0x1
-- F_NOTIFY = 0x402
-- F_OFD_GETLK = 0x24
-- F_OFD_SETLK = 0x25
-- F_OFD_SETLKW = 0x26
-- F_OK = 0x0
-- F_RDLCK = 0x0
-- F_SETFD = 0x2
-- F_SETFL = 0x4
-- F_SETLEASE = 0x400
-- F_SETLK = 0x6
-- F_SETLK64 = 0x6
-- F_SETLKW = 0x7
-- F_SETLKW64 = 0x7
-- F_SETOWN = 0x8
-- F_SETOWN_EX = 0xf
-- F_SETPIPE_SZ = 0x407
-- F_SETSIG = 0xa
-- F_SHLCK = 0x8
-- F_TEST = 0x3
-- F_TLOCK = 0x2
-- F_ULOCK = 0x0
-- F_UNLCK = 0x2
-- F_WRLCK = 0x1
-- GENL_ADMIN_PERM = 0x1
-- GENL_CMD_CAP_DO = 0x2
-- GENL_CMD_CAP_DUMP = 0x4
-- GENL_CMD_CAP_HASPOL = 0x8
-- GENL_HDRLEN = 0x4
-- GENL_ID_CTRL = 0x10
-- GENL_ID_PMCRAID = 0x12
-- GENL_ID_VFS_DQUOT = 0x11
-- GENL_MAX_ID = 0x3ff
-- GENL_MIN_ID = 0x10
-- GENL_NAMSIZ = 0x10
-- GENL_START_ALLOC = 0x13
-- GENL_UNS_ADMIN_PERM = 0x10
-- GRND_NONBLOCK = 0x1
-- GRND_RANDOM = 0x2
-- HUPCL = 0x400
-- IBSHIFT = 0x10
-- ICANON = 0x2
-- ICMPV6_FILTER = 0x1
-- ICRNL = 0x100
-- IEXTEN = 0x8000
-- IFA_F_DADFAILED = 0x8
-- IFA_F_DEPRECATED = 0x20
-- IFA_F_HOMEADDRESS = 0x10
-- IFA_F_MANAGETEMPADDR = 0x100
-- IFA_F_MCAUTOJOIN = 0x400
-- IFA_F_NODAD = 0x2
-- IFA_F_NOPREFIXROUTE = 0x200
-- IFA_F_OPTIMISTIC = 0x4
-- IFA_F_PERMANENT = 0x80
-- IFA_F_SECONDARY = 0x1
-- IFA_F_STABLE_PRIVACY = 0x800
-- IFA_F_TEMPORARY = 0x1
-- IFA_F_TENTATIVE = 0x40
-- IFA_MAX = 0x8
-- IFF_ALLMULTI = 0x200
-- IFF_ATTACH_QUEUE = 0x200
-- IFF_AUTOMEDIA = 0x4000
-- IFF_BROADCAST = 0x2
-- IFF_DEBUG = 0x4
-- IFF_DETACH_QUEUE = 0x400
-- IFF_DORMANT = 0x20000
-- IFF_DYNAMIC = 0x8000
-- IFF_ECHO = 0x40000
-- IFF_LOOPBACK = 0x8
-- IFF_LOWER_UP = 0x10000
-- IFF_MASTER = 0x400
-- IFF_MULTICAST = 0x1000
-- IFF_MULTI_QUEUE = 0x100
-- IFF_NOARP = 0x80
-- IFF_NOFILTER = 0x1000
-- IFF_NOTRAILERS = 0x20
-- IFF_NO_PI = 0x1000
-- IFF_ONE_QUEUE = 0x2000
-- IFF_PERSIST = 0x800
-- IFF_POINTOPOINT = 0x10
-- IFF_PORTSEL = 0x2000
-- IFF_PROMISC = 0x100
-- IFF_RUNNING = 0x40
-- IFF_SLAVE = 0x800
-- IFF_TAP = 0x2
-- IFF_TUN = 0x1
-- IFF_TUN_EXCL = 0x8000
-- IFF_UP = 0x1
-- IFF_VNET_HDR = 0x4000
-- IFF_VOLATILE = 0x70c5a
-- IFNAMSIZ = 0x10
-- IGNBRK = 0x1
-- IGNCR = 0x80
-- IGNPAR = 0x4
-- IMAXBEL = 0x2000
-- INLCR = 0x40
-- INPCK = 0x10
-- IN_ACCESS = 0x1
-- IN_ALL_EVENTS = 0xfff
-- IN_ATTRIB = 0x4
-- IN_CLASSA_HOST = 0xffffff
-- IN_CLASSA_MAX = 0x80
-- IN_CLASSA_NET = 0xff000000
-- IN_CLASSA_NSHIFT = 0x18
-- IN_CLASSB_HOST = 0xffff
-- IN_CLASSB_MAX = 0x10000
-- IN_CLASSB_NET = 0xffff0000
-- IN_CLASSB_NSHIFT = 0x10
-- IN_CLASSC_HOST = 0xff
-- IN_CLASSC_NET = 0xffffff00
-- IN_CLASSC_NSHIFT = 0x8
-- IN_CLOEXEC = 0x80000
-- IN_CLOSE = 0x18
-- IN_CLOSE_NOWRITE = 0x10
-- IN_CLOSE_WRITE = 0x8
-- IN_CREATE = 0x100
-- IN_DELETE = 0x200
-- IN_DELETE_SELF = 0x400
-- IN_DONT_FOLLOW = 0x2000000
-- IN_EXCL_UNLINK = 0x4000000
-- IN_IGNORED = 0x8000
-- IN_ISDIR = 0x40000000
-- IN_LOOPBACKNET = 0x7f
-- IN_MASK_ADD = 0x20000000
-- IN_MODIFY = 0x2
-- IN_MOVE = 0xc0
-- IN_MOVED_FROM = 0x40
-- IN_MOVED_TO = 0x80
-- IN_MOVE_SELF = 0x800
-- IN_NONBLOCK = 0x800
-- IN_ONESHOT = 0x80000000
-- IN_ONLYDIR = 0x1000000
-- IN_OPEN = 0x20
-- IN_Q_OVERFLOW = 0x4000
-- IN_UNMOUNT = 0x2000
-- IPPROTO_AH = 0x33
-- IPPROTO_BEETPH = 0x5e
-- IPPROTO_COMP = 0x6c
-- IPPROTO_DCCP = 0x21
-- IPPROTO_DSTOPTS = 0x3c
-- IPPROTO_EGP = 0x8
-- IPPROTO_ENCAP = 0x62
-- IPPROTO_ESP = 0x32
-- IPPROTO_FRAGMENT = 0x2c
-- IPPROTO_GRE = 0x2f
-- IPPROTO_HOPOPTS = 0x0
-- IPPROTO_ICMP = 0x1
-- IPPROTO_ICMPV6 = 0x3a
-- IPPROTO_IDP = 0x16
-- IPPROTO_IGMP = 0x2
-- IPPROTO_IP = 0x0
-- IPPROTO_IPIP = 0x4
-- IPPROTO_IPV6 = 0x29
-- IPPROTO_MH = 0x87
-- IPPROTO_MPLS = 0x89
-- IPPROTO_MTP = 0x5c
-- IPPROTO_NONE = 0x3b
-- IPPROTO_PIM = 0x67
-- IPPROTO_PUP = 0xc
-- IPPROTO_RAW = 0xff
-- IPPROTO_ROUTING = 0x2b
-- IPPROTO_RSVP = 0x2e
-- IPPROTO_SCTP = 0x84
-- IPPROTO_TCP = 0x6
-- IPPROTO_TP = 0x1d
-- IPPROTO_UDP = 0x11
-- IPPROTO_UDPLITE = 0x88
-- IPV6_2292DSTOPTS = 0x4
-- IPV6_2292HOPLIMIT = 0x8
-- IPV6_2292HOPOPTS = 0x3
-- IPV6_2292PKTINFO = 0x2
-- IPV6_2292PKTOPTIONS = 0x6
-- IPV6_2292RTHDR = 0x5
-- IPV6_ADDRFORM = 0x1
-- IPV6_ADD_MEMBERSHIP = 0x14
-- IPV6_AUTHHDR = 0xa
-- IPV6_CHECKSUM = 0x7
-- IPV6_DONTFRAG = 0x3e
-- IPV6_DROP_MEMBERSHIP = 0x15
-- IPV6_DSTOPTS = 0x3b
-- IPV6_HDRINCL = 0x24
-- IPV6_HOPLIMIT = 0x34
-- IPV6_HOPOPTS = 0x36
-- IPV6_IPSEC_POLICY = 0x22
-- IPV6_JOIN_ANYCAST = 0x1b
-- IPV6_JOIN_GROUP = 0x14
-- IPV6_LEAVE_ANYCAST = 0x1c
-- IPV6_LEAVE_GROUP = 0x15
-- IPV6_MTU = 0x18
-- IPV6_MTU_DISCOVER = 0x17
-- IPV6_MULTICAST_HOPS = 0x12
-- IPV6_MULTICAST_IF = 0x11
-- IPV6_MULTICAST_LOOP = 0x13
-- IPV6_NEXTHOP = 0x9
-- IPV6_PATHMTU = 0x3d
-- IPV6_PKTINFO = 0x32
-- IPV6_PMTUDISC_DO = 0x2
-- IPV6_PMTUDISC_DONT = 0x0
-- IPV6_PMTUDISC_INTERFACE = 0x4
-- IPV6_PMTUDISC_OMIT = 0x5
-- IPV6_PMTUDISC_PROBE = 0x3
-- IPV6_PMTUDISC_WANT = 0x1
-- IPV6_RECVDSTOPTS = 0x3a
-- IPV6_RECVERR = 0x19
-- IPV6_RECVHOPLIMIT = 0x33
-- IPV6_RECVHOPOPTS = 0x35
-- IPV6_RECVPATHMTU = 0x3c
-- IPV6_RECVPKTINFO = 0x31
-- IPV6_RECVRTHDR = 0x38
-- IPV6_RECVTCLASS = 0x42
-- IPV6_ROUTER_ALERT = 0x16
-- IPV6_RTHDR = 0x39
-- IPV6_RTHDRDSTOPTS = 0x37
-- IPV6_RTHDR_LOOSE = 0x0
-- IPV6_RTHDR_STRICT = 0x1
-- IPV6_RTHDR_TYPE_0 = 0x0
-- IPV6_RXDSTOPTS = 0x3b
-- IPV6_RXHOPOPTS = 0x36
-- IPV6_TCLASS = 0x43
-- IPV6_UNICAST_HOPS = 0x10
-- IPV6_V6ONLY = 0x1a
-- IPV6_XFRM_POLICY = 0x23
-- IP_ADD_MEMBERSHIP = 0x23
-- IP_ADD_SOURCE_MEMBERSHIP = 0x27
-- IP_BIND_ADDRESS_NO_PORT = 0x18
-- IP_BLOCK_SOURCE = 0x26
-- IP_CHECKSUM = 0x17
-- IP_DEFAULT_MULTICAST_LOOP = 0x1
-- IP_DEFAULT_MULTICAST_TTL = 0x1
-- IP_DF = 0x4000
-- IP_DROP_MEMBERSHIP = 0x24
-- IP_DROP_SOURCE_MEMBERSHIP = 0x28
-- IP_FREEBIND = 0xf
-- IP_HDRINCL = 0x3
-- IP_IPSEC_POLICY = 0x10
-- IP_MAXPACKET = 0xffff
-- IP_MAX_MEMBERSHIPS = 0x14
-- IP_MF = 0x2000
-- IP_MINTTL = 0x15
-- IP_MSFILTER = 0x29
-- IP_MSS = 0x240
-- IP_MTU = 0xe
-- IP_MTU_DISCOVER = 0xa
-- IP_MULTICAST_ALL = 0x31
-- IP_MULTICAST_IF = 0x20
-- IP_MULTICAST_LOOP = 0x22
-- IP_MULTICAST_TTL = 0x21
-- IP_NODEFRAG = 0x16
-- IP_OFFMASK = 0x1fff
-- IP_OPTIONS = 0x4
-- IP_ORIGDSTADDR = 0x14
-- IP_PASSSEC = 0x12
-- IP_PKTINFO = 0x8
-- IP_PKTOPTIONS = 0x9
-- IP_PMTUDISC = 0xa
-- IP_PMTUDISC_DO = 0x2
-- IP_PMTUDISC_DONT = 0x0
-- IP_PMTUDISC_INTERFACE = 0x4
-- IP_PMTUDISC_OMIT = 0x5
-- IP_PMTUDISC_PROBE = 0x3
-- IP_PMTUDISC_WANT = 0x1
-- IP_RECVERR = 0xb
-- IP_RECVOPTS = 0x6
-- IP_RECVORIGDSTADDR = 0x14
-- IP_RECVRETOPTS = 0x7
-- IP_RECVTOS = 0xd
-- IP_RECVTTL = 0xc
-- IP_RETOPTS = 0x7
-- IP_RF = 0x8000
-- IP_ROUTER_ALERT = 0x5
-- IP_TOS = 0x1
-- IP_TRANSPARENT = 0x13
-- IP_TTL = 0x2
-- IP_UNBLOCK_SOURCE = 0x25
-- IP_UNICAST_IF = 0x32
-- IP_XFRM_POLICY = 0x11
-- ISIG = 0x1
-- ISTRIP = 0x20
-- IUCLC = 0x200
-- IUTF8 = 0x4000
-- IXANY = 0x800
-- IXOFF = 0x1000
-- IXON = 0x400
-- KEYCTL_ASSUME_AUTHORITY = 0x10
-- KEYCTL_CHOWN = 0x4
-- KEYCTL_CLEAR = 0x7
-- KEYCTL_DESCRIBE = 0x6
-- KEYCTL_DH_COMPUTE = 0x17
-- KEYCTL_GET_KEYRING_ID = 0x0
-- KEYCTL_GET_PERSISTENT = 0x16
-- KEYCTL_GET_SECURITY = 0x11
-- KEYCTL_INSTANTIATE = 0xc
-- KEYCTL_INSTANTIATE_IOV = 0x14
-- KEYCTL_INVALIDATE = 0x15
-- KEYCTL_JOIN_SESSION_KEYRING = 0x1
-- KEYCTL_LINK = 0x8
-- KEYCTL_NEGATE = 0xd
-- KEYCTL_READ = 0xb
-- KEYCTL_REJECT = 0x13
-- KEYCTL_REVOKE = 0x3
-- KEYCTL_SEARCH = 0xa
-- KEYCTL_SESSION_TO_PARENT = 0x12
-- KEYCTL_SETPERM = 0x5
-- KEYCTL_SET_REQKEY_KEYRING = 0xe
-- KEYCTL_SET_TIMEOUT = 0xf
-- KEYCTL_UNLINK = 0x9
-- KEYCTL_UPDATE = 0x2
-- KEY_REQKEY_DEFL_DEFAULT = 0x0
-- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
-- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
-- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
-- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
-- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
-- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
-- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
-- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
-- KEY_SPEC_GROUP_KEYRING = -0x6
-- KEY_SPEC_PROCESS_KEYRING = -0x2
-- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
-- KEY_SPEC_REQUESTOR_KEYRING = -0x8
-- KEY_SPEC_SESSION_KEYRING = -0x3
-- KEY_SPEC_THREAD_KEYRING = -0x1
-- KEY_SPEC_USER_KEYRING = -0x4
-- KEY_SPEC_USER_SESSION_KEYRING = -0x5
-- LINUX_REBOOT_CMD_CAD_OFF = 0x0
-- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
-- LINUX_REBOOT_CMD_HALT = 0xcdef0123
-- LINUX_REBOOT_CMD_KEXEC = 0x45584543
-- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
-- LINUX_REBOOT_CMD_RESTART = 0x1234567
-- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
-- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
-- LINUX_REBOOT_MAGIC1 = 0xfee1dead
-- LINUX_REBOOT_MAGIC2 = 0x28121969
-- LOCK_EX = 0x2
-- LOCK_NB = 0x4
-- LOCK_SH = 0x1
-- LOCK_UN = 0x8
-- MADV_DODUMP = 0x11
-- MADV_DOFORK = 0xb
-- MADV_DONTDUMP = 0x10
-- MADV_DONTFORK = 0xa
-- MADV_DONTNEED = 0x4
-- MADV_FREE = 0x8
-- MADV_HUGEPAGE = 0xe
-- MADV_HWPOISON = 0x64
-- MADV_MERGEABLE = 0xc
-- MADV_NOHUGEPAGE = 0xf
-- MADV_NORMAL = 0x0
-- MADV_RANDOM = 0x1
-- MADV_REMOVE = 0x9
-- MADV_SEQUENTIAL = 0x2
-- MADV_UNMERGEABLE = 0xd
-- MADV_WILLNEED = 0x3
-- MAP_ANON = 0x20
-- MAP_ANONYMOUS = 0x20
-- MAP_DENYWRITE = 0x800
-- MAP_EXECUTABLE = 0x1000
-- MAP_FILE = 0x0
-- MAP_FIXED = 0x10
-- MAP_GROWSDOWN = 0x100
-- MAP_HUGETLB = 0x40000
-- MAP_HUGE_MASK = 0x3f
-- MAP_HUGE_SHIFT = 0x1a
-- MAP_LOCKED = 0x2000
-- MAP_NONBLOCK = 0x10000
-- MAP_NORESERVE = 0x4000
-- MAP_POPULATE = 0x8000
-- MAP_PRIVATE = 0x2
-- MAP_SHARED = 0x1
-- MAP_STACK = 0x20000
-- MAP_TYPE = 0xf
-- MCL_CURRENT = 0x1
-- MCL_FUTURE = 0x2
-- MCL_ONFAULT = 0x4
-- MNT_DETACH = 0x2
-- MNT_EXPIRE = 0x4
-- MNT_FORCE = 0x1
-- MSG_BATCH = 0x40000
-- MSG_CMSG_CLOEXEC = 0x40000000
-- MSG_CONFIRM = 0x800
-- MSG_CTRUNC = 0x8
-- MSG_DONTROUTE = 0x4
-- MSG_DONTWAIT = 0x40
-- MSG_EOR = 0x80
-- MSG_ERRQUEUE = 0x2000
-- MSG_FASTOPEN = 0x20000000
-- MSG_FIN = 0x200
-- MSG_MORE = 0x8000
-- MSG_NOSIGNAL = 0x4000
-- MSG_OOB = 0x1
-- MSG_PEEK = 0x2
-- MSG_PROXY = 0x10
-- MSG_RST = 0x1000
-- MSG_SYN = 0x400
-- MSG_TRUNC = 0x20
-- MSG_TRYHARD = 0x4
-- MSG_WAITALL = 0x100
-- MSG_WAITFORONE = 0x10000
-- MS_ACTIVE = 0x40000000
-- MS_ASYNC = 0x1
-- MS_BIND = 0x1000
-- MS_BORN = 0x20000000
-- MS_DIRSYNC = 0x80
-- MS_INVALIDATE = 0x2
-- MS_I_VERSION = 0x800000
-- MS_KERNMOUNT = 0x400000
-- MS_LAZYTIME = 0x2000000
-- MS_MANDLOCK = 0x40
-- MS_MGC_MSK = 0xffff0000
-- MS_MGC_VAL = 0xc0ed0000
-- MS_MOVE = 0x2000
-- MS_NOATIME = 0x400
-- MS_NODEV = 0x4
-- MS_NODIRATIME = 0x800
-- MS_NOEXEC = 0x8
-- MS_NOREMOTELOCK = 0x8000000
-- MS_NOSEC = 0x10000000
-- MS_NOSUID = 0x2
-- MS_NOUSER = -0x80000000
-- MS_POSIXACL = 0x10000
-- MS_PRIVATE = 0x40000
-- MS_RDONLY = 0x1
-- MS_REC = 0x4000
-- MS_RELATIME = 0x200000
-- MS_REMOUNT = 0x20
-- MS_RMT_MASK = 0x2800051
-- MS_SHARED = 0x100000
-- MS_SILENT = 0x8000
-- MS_SLAVE = 0x80000
-- MS_STRICTATIME = 0x1000000
-- MS_SYNC = 0x4
-- MS_SYNCHRONOUS = 0x10
-- MS_UNBINDABLE = 0x20000
-- MS_VERBOSE = 0x8000
-- NAME_MAX = 0xff
-- NETLINK_ADD_MEMBERSHIP = 0x1
-- NETLINK_AUDIT = 0x9
-- NETLINK_BROADCAST_ERROR = 0x4
-- NETLINK_CAP_ACK = 0xa
-- NETLINK_CONNECTOR = 0xb
-- NETLINK_CRYPTO = 0x15
-- NETLINK_DNRTMSG = 0xe
-- NETLINK_DROP_MEMBERSHIP = 0x2
-- NETLINK_ECRYPTFS = 0x13
-- NETLINK_FIB_LOOKUP = 0xa
-- NETLINK_FIREWALL = 0x3
-- NETLINK_GENERIC = 0x10
-- NETLINK_INET_DIAG = 0x4
-- NETLINK_IP6_FW = 0xd
-- NETLINK_ISCSI = 0x8
-- NETLINK_KOBJECT_UEVENT = 0xf
-- NETLINK_LISTEN_ALL_NSID = 0x8
-- NETLINK_LIST_MEMBERSHIPS = 0x9
-- NETLINK_NETFILTER = 0xc
-- NETLINK_NFLOG = 0x5
-- NETLINK_NO_ENOBUFS = 0x5
-- NETLINK_PKTINFO = 0x3
-- NETLINK_RDMA = 0x14
-- NETLINK_ROUTE = 0x0
-- NETLINK_RX_RING = 0x6
-- NETLINK_SCSITRANSPORT = 0x12
-- NETLINK_SELINUX = 0x7
-- NETLINK_SOCK_DIAG = 0x4
-- NETLINK_TX_RING = 0x7
-- NETLINK_UNUSED = 0x1
-- NETLINK_USERSOCK = 0x2
-- NETLINK_XFRM = 0x6
-- NL0 = 0x0
-- NL1 = 0x100
-- NLA_ALIGNTO = 0x4
-- NLA_F_NESTED = 0x8000
-- NLA_F_NET_BYTEORDER = 0x4000
-- NLA_HDRLEN = 0x4
-- NLDLY = 0x100
-- NLMSG_ALIGNTO = 0x4
-- NLMSG_DONE = 0x3
-- NLMSG_ERROR = 0x2
-- NLMSG_HDRLEN = 0x10
-- NLMSG_MIN_TYPE = 0x10
-- NLMSG_NOOP = 0x1
-- NLMSG_OVERRUN = 0x4
-- NLM_F_ACK = 0x4
-- NLM_F_APPEND = 0x800
-- NLM_F_ATOMIC = 0x400
-- NLM_F_CREATE = 0x400
-- NLM_F_DUMP = 0x300
-- NLM_F_DUMP_FILTERED = 0x20
-- NLM_F_DUMP_INTR = 0x10
-- NLM_F_ECHO = 0x8
-- NLM_F_EXCL = 0x200
-- NLM_F_MATCH = 0x200
-- NLM_F_MULTI = 0x2
-- NLM_F_REPLACE = 0x100
-- NLM_F_REQUEST = 0x1
-- NLM_F_ROOT = 0x100
-- NOFLSH = 0x80
-- OCRNL = 0x8
-- OFDEL = 0x80
-- OFILL = 0x40
-- OLCUC = 0x2
-- ONLCR = 0x4
-- ONLRET = 0x20
-- ONOCR = 0x10
-- OPOST = 0x1
-- O_ACCMODE = 0x3
-- O_APPEND = 0x400
-- O_ASYNC = 0x2000
-- O_CLOEXEC = 0x80000
-- O_CREAT = 0x40
-- O_DIRECT = 0x4000
-- O_DIRECTORY = 0x10000
-- O_DSYNC = 0x1000
-- O_EXCL = 0x80
-- O_FSYNC = 0x101000
-- O_LARGEFILE = 0x0
-- O_NDELAY = 0x800
-- O_NOATIME = 0x40000
-- O_NOCTTY = 0x100
-- O_NOFOLLOW = 0x20000
-- O_NONBLOCK = 0x800
-- O_PATH = 0x200000
-- O_RDONLY = 0x0
-- O_RDWR = 0x2
-- O_RSYNC = 0x101000
-- O_SYNC = 0x101000
-- O_TMPFILE = 0x410000
-- O_TRUNC = 0x200
-- O_WRONLY = 0x1
-- PACKET_ADD_MEMBERSHIP = 0x1
-- PACKET_AUXDATA = 0x8
-- PACKET_BROADCAST = 0x1
-- PACKET_COPY_THRESH = 0x7
-- PACKET_DROP_MEMBERSHIP = 0x2
-- PACKET_FANOUT = 0x12
-- PACKET_FANOUT_CBPF = 0x6
-- PACKET_FANOUT_CPU = 0x2
-- PACKET_FANOUT_DATA = 0x16
-- PACKET_FANOUT_EBPF = 0x7
-- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
-- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
-- PACKET_FANOUT_HASH = 0x0
-- PACKET_FANOUT_LB = 0x1
-- PACKET_FANOUT_QM = 0x5
-- PACKET_FANOUT_RND = 0x4
-- PACKET_FANOUT_ROLLOVER = 0x3
-- PACKET_FASTROUTE = 0x6
-- PACKET_HDRLEN = 0xb
-- PACKET_HOST = 0x0
-- PACKET_KERNEL = 0x7
-- PACKET_LOOPBACK = 0x5
-- PACKET_LOSS = 0xe
-- PACKET_MR_ALLMULTI = 0x2
-- PACKET_MR_MULTICAST = 0x0
-- PACKET_MR_PROMISC = 0x1
-- PACKET_MR_UNICAST = 0x3
-- PACKET_MULTICAST = 0x2
-- PACKET_ORIGDEV = 0x9
-- PACKET_OTHERHOST = 0x3
-- PACKET_OUTGOING = 0x4
-- PACKET_QDISC_BYPASS = 0x14
-- PACKET_RECV_OUTPUT = 0x3
-- PACKET_RESERVE = 0xc
-- PACKET_ROLLOVER_STATS = 0x15
-- PACKET_RX_RING = 0x5
-- PACKET_STATISTICS = 0x6
-- PACKET_TIMESTAMP = 0x11
-- PACKET_TX_HAS_OFF = 0x13
-- PACKET_TX_RING = 0xd
-- PACKET_TX_TIMESTAMP = 0x10
-- PACKET_USER = 0x6
-- PACKET_VERSION = 0xa
-- PACKET_VNET_HDR = 0xf
-- PARENB = 0x100
-- PARITY_CRC16_PR0 = 0x2
-- PARITY_CRC16_PR0_CCITT = 0x4
-- PARITY_CRC16_PR1 = 0x3
-- PARITY_CRC16_PR1_CCITT = 0x5
-- PARITY_CRC32_PR0_CCITT = 0x6
-- PARITY_CRC32_PR1_CCITT = 0x7
-- PARITY_DEFAULT = 0x0
-- PARITY_NONE = 0x1
-- PARMRK = 0x8
-- PARODD = 0x200
-- PENDIN = 0x4000
-- PERF_EVENT_IOC_DISABLE = 0x2401
-- PERF_EVENT_IOC_ENABLE = 0x2400
-- PERF_EVENT_IOC_ID = 0x80082407
-- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
-- PERF_EVENT_IOC_PERIOD = 0x40082404
-- PERF_EVENT_IOC_REFRESH = 0x2402
-- PERF_EVENT_IOC_RESET = 0x2403
-- PERF_EVENT_IOC_SET_BPF = 0x40042408
-- PERF_EVENT_IOC_SET_FILTER = 0x40082406
-- PERF_EVENT_IOC_SET_OUTPUT = 0x2405
-- PRIO_PGRP = 0x1
-- PRIO_PROCESS = 0x0
-- PRIO_USER = 0x2
-- PROT_EXEC = 0x4
-- PROT_GROWSDOWN = 0x1000000
-- PROT_GROWSUP = 0x2000000
-- PROT_NONE = 0x0
-- PROT_READ = 0x1
-- PROT_WRITE = 0x2
-- PR_CAPBSET_DROP = 0x18
-- PR_CAPBSET_READ = 0x17
-- PR_CAP_AMBIENT = 0x2f
-- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
-- PR_CAP_AMBIENT_IS_SET = 0x1
-- PR_CAP_AMBIENT_LOWER = 0x3
-- PR_CAP_AMBIENT_RAISE = 0x2
-- PR_ENDIAN_BIG = 0x0
-- PR_ENDIAN_LITTLE = 0x1
-- PR_ENDIAN_PPC_LITTLE = 0x2
-- PR_FPEMU_NOPRINT = 0x1
-- PR_FPEMU_SIGFPE = 0x2
-- PR_FP_EXC_ASYNC = 0x2
-- PR_FP_EXC_DISABLED = 0x0
-- PR_FP_EXC_DIV = 0x10000
-- PR_FP_EXC_INV = 0x100000
-- PR_FP_EXC_NONRECOV = 0x1
-- PR_FP_EXC_OVF = 0x20000
-- PR_FP_EXC_PRECISE = 0x3
-- PR_FP_EXC_RES = 0x80000
-- PR_FP_EXC_SW_ENABLE = 0x80
-- PR_FP_EXC_UND = 0x40000
-- PR_FP_MODE_FR = 0x1
-- PR_FP_MODE_FRE = 0x2
-- PR_GET_CHILD_SUBREAPER = 0x25
-- PR_GET_DUMPABLE = 0x3
-- PR_GET_ENDIAN = 0x13
-- PR_GET_FPEMU = 0x9
-- PR_GET_FPEXC = 0xb
-- PR_GET_FP_MODE = 0x2e
-- PR_GET_KEEPCAPS = 0x7
-- PR_GET_NAME = 0x10
-- PR_GET_NO_NEW_PRIVS = 0x27
-- PR_GET_PDEATHSIG = 0x2
-- PR_GET_SECCOMP = 0x15
-- PR_GET_SECUREBITS = 0x1b
-- PR_GET_THP_DISABLE = 0x2a
-- PR_GET_TID_ADDRESS = 0x28
-- PR_GET_TIMERSLACK = 0x1e
-- PR_GET_TIMING = 0xd
-- PR_GET_TSC = 0x19
-- PR_GET_UNALIGN = 0x5
-- PR_MCE_KILL = 0x21
-- PR_MCE_KILL_CLEAR = 0x0
-- PR_MCE_KILL_DEFAULT = 0x2
-- PR_MCE_KILL_EARLY = 0x1
-- PR_MCE_KILL_GET = 0x22
-- PR_MCE_KILL_LATE = 0x0
-- PR_MCE_KILL_SET = 0x1
-- PR_MPX_DISABLE_MANAGEMENT = 0x2c
-- PR_MPX_ENABLE_MANAGEMENT = 0x2b
-- PR_SET_CHILD_SUBREAPER = 0x24
-- PR_SET_DUMPABLE = 0x4
-- PR_SET_ENDIAN = 0x14
-- PR_SET_FPEMU = 0xa
-- PR_SET_FPEXC = 0xc
-- PR_SET_FP_MODE = 0x2d
-- PR_SET_KEEPCAPS = 0x8
-- PR_SET_MM = 0x23
-- PR_SET_MM_ARG_END = 0x9
-- PR_SET_MM_ARG_START = 0x8
-- PR_SET_MM_AUXV = 0xc
-- PR_SET_MM_BRK = 0x7
-- PR_SET_MM_END_CODE = 0x2
-- PR_SET_MM_END_DATA = 0x4
-- PR_SET_MM_ENV_END = 0xb
-- PR_SET_MM_ENV_START = 0xa
-- PR_SET_MM_EXE_FILE = 0xd
-- PR_SET_MM_MAP = 0xe
-- PR_SET_MM_MAP_SIZE = 0xf
-- PR_SET_MM_START_BRK = 0x6
-- PR_SET_MM_START_CODE = 0x1
-- PR_SET_MM_START_DATA = 0x3
-- PR_SET_MM_START_STACK = 0x5
-- PR_SET_NAME = 0xf
-- PR_SET_NO_NEW_PRIVS = 0x26
-- PR_SET_PDEATHSIG = 0x1
-- PR_SET_PTRACER = 0x59616d61
-- PR_SET_PTRACER_ANY = -0x1
-- PR_SET_SECCOMP = 0x16
-- PR_SET_SECUREBITS = 0x1c
-- PR_SET_THP_DISABLE = 0x29
-- PR_SET_TIMERSLACK = 0x1d
-- PR_SET_TIMING = 0xe
-- PR_SET_TSC = 0x1a
-- PR_SET_UNALIGN = 0x6
-- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
-- PR_TASK_PERF_EVENTS_ENABLE = 0x20
-- PR_TIMING_STATISTICAL = 0x0
-- PR_TIMING_TIMESTAMP = 0x1
-- PR_TSC_ENABLE = 0x1
-- PR_TSC_SIGSEGV = 0x2
-- PR_UNALIGN_NOPRINT = 0x1
-- PR_UNALIGN_SIGBUS = 0x2
-- PTRACE_ATTACH = 0x10
-- PTRACE_CONT = 0x7
-- PTRACE_DETACH = 0x11
-- PTRACE_DISABLE_TE = 0x5010
-- PTRACE_ENABLE_TE = 0x5009
-- PTRACE_EVENT_CLONE = 0x3
-- PTRACE_EVENT_EXEC = 0x4
-- PTRACE_EVENT_EXIT = 0x6
-- PTRACE_EVENT_FORK = 0x1
-- PTRACE_EVENT_SECCOMP = 0x7
-- PTRACE_EVENT_STOP = 0x80
-- PTRACE_EVENT_VFORK = 0x2
-- PTRACE_EVENT_VFORK_DONE = 0x5
-- PTRACE_GETEVENTMSG = 0x4201
-- PTRACE_GETREGS = 0xc
-- PTRACE_GETREGSET = 0x4204
-- PTRACE_GETSIGINFO = 0x4202
-- PTRACE_GETSIGMASK = 0x420a
-- PTRACE_GET_LAST_BREAK = 0x5006
-- PTRACE_INTERRUPT = 0x4207
-- PTRACE_KILL = 0x8
-- PTRACE_LISTEN = 0x4208
-- PTRACE_OLDSETOPTIONS = 0x15
-- PTRACE_O_EXITKILL = 0x100000
-- PTRACE_O_MASK = 0x3000ff
-- PTRACE_O_SUSPEND_SECCOMP = 0x200000
-- PTRACE_O_TRACECLONE = 0x8
-- PTRACE_O_TRACEEXEC = 0x10
-- PTRACE_O_TRACEEXIT = 0x40
-- PTRACE_O_TRACEFORK = 0x2
-- PTRACE_O_TRACESECCOMP = 0x80
-- PTRACE_O_TRACESYSGOOD = 0x1
-- PTRACE_O_TRACEVFORK = 0x4
-- PTRACE_O_TRACEVFORKDONE = 0x20
-- PTRACE_PEEKDATA = 0x2
-- PTRACE_PEEKDATA_AREA = 0x5003
-- PTRACE_PEEKSIGINFO = 0x4209
-- PTRACE_PEEKSIGINFO_SHARED = 0x1
-- PTRACE_PEEKTEXT = 0x1
-- PTRACE_PEEKTEXT_AREA = 0x5002
-- PTRACE_PEEKUSR = 0x3
-- PTRACE_PEEKUSR_AREA = 0x5000
-- PTRACE_PEEK_SYSTEM_CALL = 0x5007
-- PTRACE_POKEDATA = 0x5
-- PTRACE_POKEDATA_AREA = 0x5005
-- PTRACE_POKETEXT = 0x4
-- PTRACE_POKETEXT_AREA = 0x5004
-- PTRACE_POKEUSR = 0x6
-- PTRACE_POKEUSR_AREA = 0x5001
-- PTRACE_POKE_SYSTEM_CALL = 0x5008
-- PTRACE_PROT = 0x15
-- PTRACE_SECCOMP_GET_FILTER = 0x420c
-- PTRACE_SEIZE = 0x4206
-- PTRACE_SETOPTIONS = 0x4200
-- PTRACE_SETREGS = 0xd
-- PTRACE_SETREGSET = 0x4205
-- PTRACE_SETSIGINFO = 0x4203
-- PTRACE_SETSIGMASK = 0x420b
-- PTRACE_SINGLEBLOCK = 0xc
-- PTRACE_SINGLESTEP = 0x9
-- PTRACE_SYSCALL = 0x18
-- PTRACE_TE_ABORT_RAND = 0x5011
-- PTRACE_TRACEME = 0x0
-- PT_ACR0 = 0x90
-- PT_ACR1 = 0x94
-- PT_ACR10 = 0xb8
-- PT_ACR11 = 0xbc
-- PT_ACR12 = 0xc0
-- PT_ACR13 = 0xc4
-- PT_ACR14 = 0xc8
-- PT_ACR15 = 0xcc
-- PT_ACR2 = 0x98
-- PT_ACR3 = 0x9c
-- PT_ACR4 = 0xa0
-- PT_ACR5 = 0xa4
-- PT_ACR6 = 0xa8
-- PT_ACR7 = 0xac
-- PT_ACR8 = 0xb0
-- PT_ACR9 = 0xb4
-- PT_CR_10 = 0x168
-- PT_CR_11 = 0x170
-- PT_CR_9 = 0x160
-- PT_ENDREGS = 0x1af
-- PT_FPC = 0xd8
-- PT_FPR0 = 0xe0
-- PT_FPR1 = 0xe8
-- PT_FPR10 = 0x130
-- PT_FPR11 = 0x138
-- PT_FPR12 = 0x140
-- PT_FPR13 = 0x148
-- PT_FPR14 = 0x150
-- PT_FPR15 = 0x158
-- PT_FPR2 = 0xf0
-- PT_FPR3 = 0xf8
-- PT_FPR4 = 0x100
-- PT_FPR5 = 0x108
-- PT_FPR6 = 0x110
-- PT_FPR7 = 0x118
-- PT_FPR8 = 0x120
-- PT_FPR9 = 0x128
-- PT_GPR0 = 0x10
-- PT_GPR1 = 0x18
-- PT_GPR10 = 0x60
-- PT_GPR11 = 0x68
-- PT_GPR12 = 0x70
-- PT_GPR13 = 0x78
-- PT_GPR14 = 0x80
-- PT_GPR15 = 0x88
-- PT_GPR2 = 0x20
-- PT_GPR3 = 0x28
-- PT_GPR4 = 0x30
-- PT_GPR5 = 0x38
-- PT_GPR6 = 0x40
-- PT_GPR7 = 0x48
-- PT_GPR8 = 0x50
-- PT_GPR9 = 0x58
-- PT_IEEE_IP = 0x1a8
-- PT_LASTOFF = 0x1a8
-- PT_ORIGGPR2 = 0xd0
-- PT_PSWADDR = 0x8
-- PT_PSWMASK = 0x0
-- RLIMIT_AS = 0x9
-- RLIMIT_CORE = 0x4
-- RLIMIT_CPU = 0x0
-- RLIMIT_DATA = 0x2
-- RLIMIT_FSIZE = 0x1
-- RLIMIT_LOCKS = 0xa
-- RLIMIT_MEMLOCK = 0x8
-- RLIMIT_MSGQUEUE = 0xc
-- RLIMIT_NICE = 0xd
-- RLIMIT_NOFILE = 0x7
-- RLIMIT_NPROC = 0x6
-- RLIMIT_RSS = 0x5
-- RLIMIT_RTPRIO = 0xe
-- RLIMIT_RTTIME = 0xf
-- RLIMIT_SIGPENDING = 0xb
-- RLIMIT_STACK = 0x3
-- RLIM_INFINITY = -0x1
-- RTAX_ADVMSS = 0x8
-- RTAX_CC_ALGO = 0x10
-- RTAX_CWND = 0x7
-- RTAX_FEATURES = 0xc
-- RTAX_FEATURE_ALLFRAG = 0x8
-- RTAX_FEATURE_ECN = 0x1
-- RTAX_FEATURE_MASK = 0xf
-- RTAX_FEATURE_SACK = 0x2
-- RTAX_FEATURE_TIMESTAMP = 0x4
-- RTAX_HOPLIMIT = 0xa
-- RTAX_INITCWND = 0xb
-- RTAX_INITRWND = 0xe
-- RTAX_LOCK = 0x1
-- RTAX_MAX = 0x10
-- RTAX_MTU = 0x2
-- RTAX_QUICKACK = 0xf
-- RTAX_REORDERING = 0x9
-- RTAX_RTO_MIN = 0xd
-- RTAX_RTT = 0x4
-- RTAX_RTTVAR = 0x5
-- RTAX_SSTHRESH = 0x6
-- RTAX_UNSPEC = 0x0
-- RTAX_WINDOW = 0x3
-- RTA_ALIGNTO = 0x4
-- RTA_MAX = 0x19
-- RTCF_DIRECTSRC = 0x4000000
-- RTCF_DOREDIRECT = 0x1000000
-- RTCF_LOG = 0x2000000
-- RTCF_MASQ = 0x400000
-- RTCF_NAT = 0x800000
-- RTCF_VALVE = 0x200000
-- RTF_ADDRCLASSMASK = 0xf8000000
-- RTF_ADDRCONF = 0x40000
-- RTF_ALLONLINK = 0x20000
-- RTF_BROADCAST = 0x10000000
-- RTF_CACHE = 0x1000000
-- RTF_DEFAULT = 0x10000
-- RTF_DYNAMIC = 0x10
-- RTF_FLOW = 0x2000000
-- RTF_GATEWAY = 0x2
-- RTF_HOST = 0x4
-- RTF_INTERFACE = 0x40000000
-- RTF_IRTT = 0x100
-- RTF_LINKRT = 0x100000
-- RTF_LOCAL = 0x80000000
-- RTF_MODIFIED = 0x20
-- RTF_MSS = 0x40
-- RTF_MTU = 0x40
-- RTF_MULTICAST = 0x20000000
-- RTF_NAT = 0x8000000
-- RTF_NOFORWARD = 0x1000
-- RTF_NONEXTHOP = 0x200000
-- RTF_NOPMTUDISC = 0x4000
-- RTF_POLICY = 0x4000000
-- RTF_REINSTATE = 0x8
-- RTF_REJECT = 0x200
-- RTF_STATIC = 0x400
-- RTF_THROW = 0x2000
-- RTF_UP = 0x1
-- RTF_WINDOW = 0x80
-- RTF_XRESOLVE = 0x800
-- RTM_BASE = 0x10
-- RTM_DELACTION = 0x31
-- RTM_DELADDR = 0x15
-- RTM_DELADDRLABEL = 0x49
-- RTM_DELLINK = 0x11
-- RTM_DELMDB = 0x55
-- RTM_DELNEIGH = 0x1d
-- RTM_DELNSID = 0x59
-- RTM_DELQDISC = 0x25
-- RTM_DELROUTE = 0x19
-- RTM_DELRULE = 0x21
-- RTM_DELTCLASS = 0x29
-- RTM_DELTFILTER = 0x2d
-- RTM_F_CLONED = 0x200
-- RTM_F_EQUALIZE = 0x400
-- RTM_F_LOOKUP_TABLE = 0x1000
-- RTM_F_NOTIFY = 0x100
-- RTM_F_PREFIX = 0x800
-- RTM_GETACTION = 0x32
-- RTM_GETADDR = 0x16
-- RTM_GETADDRLABEL = 0x4a
-- RTM_GETANYCAST = 0x3e
-- RTM_GETDCB = 0x4e
-- RTM_GETLINK = 0x12
-- RTM_GETMDB = 0x56
-- RTM_GETMULTICAST = 0x3a
-- RTM_GETNEIGH = 0x1e
-- RTM_GETNEIGHTBL = 0x42
-- RTM_GETNETCONF = 0x52
-- RTM_GETNSID = 0x5a
-- RTM_GETQDISC = 0x26
-- RTM_GETROUTE = 0x1a
-- RTM_GETRULE = 0x22
-- RTM_GETSTATS = 0x5e
-- RTM_GETTCLASS = 0x2a
-- RTM_GETTFILTER = 0x2e
-- RTM_MAX = 0x5f
-- RTM_NEWACTION = 0x30
-- RTM_NEWADDR = 0x14
-- RTM_NEWADDRLABEL = 0x48
-- RTM_NEWLINK = 0x10
-- RTM_NEWMDB = 0x54
-- RTM_NEWNDUSEROPT = 0x44
-- RTM_NEWNEIGH = 0x1c
-- RTM_NEWNEIGHTBL = 0x40
-- RTM_NEWNETCONF = 0x50
-- RTM_NEWNSID = 0x58
-- RTM_NEWPREFIX = 0x34
-- RTM_NEWQDISC = 0x24
-- RTM_NEWROUTE = 0x18
-- RTM_NEWRULE = 0x20
-- RTM_NEWSTATS = 0x5c
-- RTM_NEWTCLASS = 0x28
-- RTM_NEWTFILTER = 0x2c
-- RTM_NR_FAMILIES = 0x14
-- RTM_NR_MSGTYPES = 0x50
-- RTM_SETDCB = 0x4f
-- RTM_SETLINK = 0x13
-- RTM_SETNEIGHTBL = 0x43
-- RTNH_ALIGNTO = 0x4
-- RTNH_COMPARE_MASK = 0x19
-- RTNH_F_DEAD = 0x1
-- RTNH_F_LINKDOWN = 0x10
-- RTNH_F_OFFLOAD = 0x8
-- RTNH_F_ONLINK = 0x4
-- RTNH_F_PERVASIVE = 0x2
-- RTN_MAX = 0xb
-- RTPROT_BABEL = 0x2a
-- RTPROT_BIRD = 0xc
-- RTPROT_BOOT = 0x3
-- RTPROT_DHCP = 0x10
-- RTPROT_DNROUTED = 0xd
-- RTPROT_GATED = 0x8
-- RTPROT_KERNEL = 0x2
-- RTPROT_MROUTED = 0x11
-- RTPROT_MRT = 0xa
-- RTPROT_NTK = 0xf
-- RTPROT_RA = 0x9
-- RTPROT_REDIRECT = 0x1
-- RTPROT_STATIC = 0x4
-- RTPROT_UNSPEC = 0x0
-- RTPROT_XORP = 0xe
-- RTPROT_ZEBRA = 0xb
-- RT_CLASS_DEFAULT = 0xfd
-- RT_CLASS_LOCAL = 0xff
-- RT_CLASS_MAIN = 0xfe
-- RT_CLASS_MAX = 0xff
-- RT_CLASS_UNSPEC = 0x0
-- RUSAGE_CHILDREN = -0x1
-- RUSAGE_SELF = 0x0
-- RUSAGE_THREAD = 0x1
-- SCM_CREDENTIALS = 0x2
-- SCM_RIGHTS = 0x1
-- SCM_TIMESTAMP = 0x1d
-- SCM_TIMESTAMPING = 0x25
-- SCM_TIMESTAMPING_OPT_STATS = 0x36
-- SCM_TIMESTAMPNS = 0x23
-- SCM_WIFI_STATUS = 0x29
-- SECCOMP_MODE_DISABLED = 0x0
-- SECCOMP_MODE_FILTER = 0x2
-- SECCOMP_MODE_STRICT = 0x1
-- SHUT_RD = 0x0
-- SHUT_RDWR = 0x2
-- SHUT_WR = 0x1
-- SIOCADDDLCI = 0x8980
-- SIOCADDMULTI = 0x8931
-- SIOCADDRT = 0x890b
-- SIOCATMARK = 0x8905
-- SIOCBONDCHANGEACTIVE = 0x8995
-- SIOCBONDENSLAVE = 0x8990
-- SIOCBONDINFOQUERY = 0x8994
-- SIOCBONDRELEASE = 0x8991
-- SIOCBONDSETHWADDR = 0x8992
-- SIOCBONDSLAVEINFOQUERY = 0x8993
-- SIOCBRADDBR = 0x89a0
-- SIOCBRADDIF = 0x89a2
-- SIOCBRDELBR = 0x89a1
-- SIOCBRDELIF = 0x89a3
-- SIOCDARP = 0x8953
-- SIOCDELDLCI = 0x8981
-- SIOCDELMULTI = 0x8932
-- SIOCDELRT = 0x890c
-- SIOCDEVPRIVATE = 0x89f0
-- SIOCDIFADDR = 0x8936
-- SIOCDRARP = 0x8960
-- SIOCETHTOOL = 0x8946
-- SIOCGARP = 0x8954
-- SIOCGHWTSTAMP = 0x89b1
-- SIOCGIFADDR = 0x8915
-- SIOCGIFBR = 0x8940
-- SIOCGIFBRDADDR = 0x8919
-- SIOCGIFCONF = 0x8912
-- SIOCGIFCOUNT = 0x8938
-- SIOCGIFDSTADDR = 0x8917
-- SIOCGIFENCAP = 0x8925
-- SIOCGIFFLAGS = 0x8913
-- SIOCGIFHWADDR = 0x8927
-- SIOCGIFINDEX = 0x8933
-- SIOCGIFMAP = 0x8970
-- SIOCGIFMEM = 0x891f
-- SIOCGIFMETRIC = 0x891d
-- SIOCGIFMTU = 0x8921
-- SIOCGIFNAME = 0x8910
-- SIOCGIFNETMASK = 0x891b
-- SIOCGIFPFLAGS = 0x8935
-- SIOCGIFSLAVE = 0x8929
-- SIOCGIFTXQLEN = 0x8942
-- SIOCGIFVLAN = 0x8982
-- SIOCGMIIPHY = 0x8947
-- SIOCGMIIREG = 0x8948
-- SIOCGPGRP = 0x8904
-- SIOCGRARP = 0x8961
-- SIOCGSKNS = 0x894c
-- SIOCGSTAMP = 0x8906
-- SIOCGSTAMPNS = 0x8907
-- SIOCINQ = 0x541b
-- SIOCOUTQ = 0x5411
-- SIOCOUTQNSD = 0x894b
-- SIOCPROTOPRIVATE = 0x89e0
-- SIOCRTMSG = 0x890d
-- SIOCSARP = 0x8955
-- SIOCSHWTSTAMP = 0x89b0
-- SIOCSIFADDR = 0x8916
-- SIOCSIFBR = 0x8941
-- SIOCSIFBRDADDR = 0x891a
-- SIOCSIFDSTADDR = 0x8918
-- SIOCSIFENCAP = 0x8926
-- SIOCSIFFLAGS = 0x8914
-- SIOCSIFHWADDR = 0x8924
-- SIOCSIFHWBROADCAST = 0x8937
-- SIOCSIFLINK = 0x8911
-- SIOCSIFMAP = 0x8971
-- SIOCSIFMEM = 0x8920
-- SIOCSIFMETRIC = 0x891e
-- SIOCSIFMTU = 0x8922
-- SIOCSIFNAME = 0x8923
-- SIOCSIFNETMASK = 0x891c
-- SIOCSIFPFLAGS = 0x8934
-- SIOCSIFSLAVE = 0x8930
-- SIOCSIFTXQLEN = 0x8943
-- SIOCSIFVLAN = 0x8983
-- SIOCSMIIREG = 0x8949
-- SIOCSPGRP = 0x8902
-- SIOCSRARP = 0x8962
-- SIOCWANDEV = 0x894a
-- SOCK_CLOEXEC = 0x80000
-- SOCK_DCCP = 0x6
-- SOCK_DGRAM = 0x2
-- SOCK_IOC_TYPE = 0x89
-- SOCK_NONBLOCK = 0x800
-- SOCK_PACKET = 0xa
-- SOCK_RAW = 0x3
-- SOCK_RDM = 0x4
-- SOCK_SEQPACKET = 0x5
-- SOCK_STREAM = 0x1
-- SOL_AAL = 0x109
-- SOL_ALG = 0x117
-- SOL_ATM = 0x108
-- SOL_CAIF = 0x116
-- SOL_CAN_BASE = 0x64
-- SOL_DCCP = 0x10d
-- SOL_DECNET = 0x105
-- SOL_ICMPV6 = 0x3a
-- SOL_IP = 0x0
-- SOL_IPV6 = 0x29
-- SOL_IRDA = 0x10a
-- SOL_IUCV = 0x115
-- SOL_KCM = 0x119
-- SOL_LLC = 0x10c
-- SOL_NETBEUI = 0x10b
-- SOL_NETLINK = 0x10e
-- SOL_NFC = 0x118
-- SOL_PACKET = 0x107
-- SOL_PNPIPE = 0x113
-- SOL_PPPOL2TP = 0x111
-- SOL_RAW = 0xff
-- SOL_RDS = 0x114
-- SOL_RXRPC = 0x110
-- SOL_SOCKET = 0x1
-- SOL_TCP = 0x6
-- SOL_TIPC = 0x10f
-- SOL_X25 = 0x106
-- SOMAXCONN = 0x80
-- SO_ACCEPTCONN = 0x1e
-- SO_ATTACH_BPF = 0x32
-- SO_ATTACH_FILTER = 0x1a
-- SO_ATTACH_REUSEPORT_CBPF = 0x33
-- SO_ATTACH_REUSEPORT_EBPF = 0x34
-- SO_BINDTODEVICE = 0x19
-- SO_BPF_EXTENSIONS = 0x30
-- SO_BROADCAST = 0x6
-- SO_BSDCOMPAT = 0xe
-- SO_BUSY_POLL = 0x2e
-- SO_CNX_ADVICE = 0x35
-- SO_DEBUG = 0x1
-- SO_DETACH_BPF = 0x1b
-- SO_DETACH_FILTER = 0x1b
-- SO_DOMAIN = 0x27
-- SO_DONTROUTE = 0x5
-- SO_ERROR = 0x4
-- SO_GET_FILTER = 0x1a
-- SO_INCOMING_CPU = 0x31
-- SO_KEEPALIVE = 0x9
-- SO_LINGER = 0xd
-- SO_LOCK_FILTER = 0x2c
-- SO_MARK = 0x24
-- SO_MAX_PACING_RATE = 0x2f
-- SO_NOFCS = 0x2b
-- SO_NO_CHECK = 0xb
-- SO_OOBINLINE = 0xa
-- SO_PASSCRED = 0x10
-- SO_PASSSEC = 0x22
-- SO_PEEK_OFF = 0x2a
-- SO_PEERCRED = 0x11
-- SO_PEERNAME = 0x1c
-- SO_PEERSEC = 0x1f
-- SO_PRIORITY = 0xc
-- SO_PROTOCOL = 0x26
-- SO_RCVBUF = 0x8
-- SO_RCVBUFFORCE = 0x21
-- SO_RCVLOWAT = 0x12
-- SO_RCVTIMEO = 0x14
-- SO_REUSEADDR = 0x2
-- SO_REUSEPORT = 0xf
-- SO_RXQ_OVFL = 0x28
-- SO_SECURITY_AUTHENTICATION = 0x16
-- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-- SO_SELECT_ERR_QUEUE = 0x2d
-- SO_SNDBUF = 0x7
-- SO_SNDBUFFORCE = 0x20
-- SO_SNDLOWAT = 0x13
-- SO_SNDTIMEO = 0x15
-- SO_TIMESTAMP = 0x1d
-- SO_TIMESTAMPING = 0x25
-- SO_TIMESTAMPNS = 0x23
-- SO_TYPE = 0x3
-- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
-- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
-- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
-- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
-- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
-- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
-- SO_VM_SOCKETS_TRUSTED = 0x5
-- SO_WIFI_STATUS = 0x29
-- SPLICE_F_GIFT = 0x8
-- SPLICE_F_MORE = 0x4
-- SPLICE_F_MOVE = 0x1
-- SPLICE_F_NONBLOCK = 0x2
-- S_BLKSIZE = 0x200
-- S_IEXEC = 0x40
-- S_IFBLK = 0x6000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFIFO = 0x1000
-- S_IFLNK = 0xa000
-- S_IFMT = 0xf000
-- S_IFREG = 0x8000
-- S_IFSOCK = 0xc000
-- S_IREAD = 0x100
-- S_IRGRP = 0x20
-- S_IROTH = 0x4
-- S_IRUSR = 0x100
-- S_IRWXG = 0x38
-- S_IRWXO = 0x7
-- S_IRWXU = 0x1c0
-- S_ISGID = 0x400
-- S_ISUID = 0x800
-- S_ISVTX = 0x200
-- S_IWGRP = 0x10
-- S_IWOTH = 0x2
-- S_IWRITE = 0x80
-- S_IWUSR = 0x80
-- S_IXGRP = 0x8
-- S_IXOTH = 0x1
-- S_IXUSR = 0x40
-- TAB0 = 0x0
-- TAB1 = 0x800
-- TAB2 = 0x1000
-- TAB3 = 0x1800
-- TABDLY = 0x1800
-- TASKSTATS_CMD_ATTR_MAX = 0x4
-- TASKSTATS_CMD_MAX = 0x2
-- TASKSTATS_GENL_NAME = "TASKSTATS"
-- TASKSTATS_GENL_VERSION = 0x1
-- TASKSTATS_TYPE_MAX = 0x6
-- TASKSTATS_VERSION = 0x8
-- TCFLSH = 0x540b
-- TCGETA = 0x5405
-- TCGETS = 0x5401
-- TCGETS2 = 0x802c542a
-- TCGETX = 0x5432
-- TCIFLUSH = 0x0
-- TCIOFF = 0x2
-- TCIOFLUSH = 0x2
-- TCION = 0x3
-- TCOFLUSH = 0x1
-- TCOOFF = 0x0
-- TCOON = 0x1
-- TCP_CC_INFO = 0x1a
-- TCP_CONGESTION = 0xd
-- TCP_COOKIE_IN_ALWAYS = 0x1
-- TCP_COOKIE_MAX = 0x10
-- TCP_COOKIE_MIN = 0x8
-- TCP_COOKIE_OUT_NEVER = 0x2
-- TCP_COOKIE_PAIR_SIZE = 0x20
-- TCP_COOKIE_TRANSACTIONS = 0xf
-- TCP_CORK = 0x3
-- TCP_DEFER_ACCEPT = 0x9
-- TCP_FASTOPEN = 0x17
-- TCP_INFO = 0xb
-- TCP_KEEPCNT = 0x6
-- TCP_KEEPIDLE = 0x4
-- TCP_KEEPINTVL = 0x5
-- TCP_LINGER2 = 0x8
-- TCP_MAXSEG = 0x2
-- TCP_MAXWIN = 0xffff
-- TCP_MAX_WINSHIFT = 0xe
-- TCP_MD5SIG = 0xe
-- TCP_MD5SIG_MAXKEYLEN = 0x50
-- TCP_MSS = 0x200
-- TCP_MSS_DEFAULT = 0x218
-- TCP_MSS_DESIRED = 0x4c4
-- TCP_NODELAY = 0x1
-- TCP_NOTSENT_LOWAT = 0x19
-- TCP_QUEUE_SEQ = 0x15
-- TCP_QUICKACK = 0xc
-- TCP_REPAIR = 0x13
-- TCP_REPAIR_OPTIONS = 0x16
-- TCP_REPAIR_QUEUE = 0x14
-- TCP_REPAIR_WINDOW = 0x1d
-- TCP_SAVED_SYN = 0x1c
-- TCP_SAVE_SYN = 0x1b
-- TCP_SYNCNT = 0x7
-- TCP_S_DATA_IN = 0x4
-- TCP_S_DATA_OUT = 0x8
-- TCP_THIN_DUPACK = 0x11
-- TCP_THIN_LINEAR_TIMEOUTS = 0x10
-- TCP_TIMESTAMP = 0x18
-- TCP_USER_TIMEOUT = 0x12
-- TCP_WINDOW_CLAMP = 0xa
-- TCSAFLUSH = 0x2
-- TCSBRK = 0x5409
-- TCSBRKP = 0x5425
-- TCSETA = 0x5406
-- TCSETAF = 0x5408
-- TCSETAW = 0x5407
-- TCSETS = 0x5402
-- TCSETS2 = 0x402c542b
-- TCSETSF = 0x5404
-- TCSETSF2 = 0x402c542d
-- TCSETSW = 0x5403
-- TCSETSW2 = 0x402c542c
-- TCSETX = 0x5433
-- TCSETXF = 0x5434
-- TCSETXW = 0x5435
-- TCXONC = 0x540a
-- TIOCCBRK = 0x5428
-- TIOCCONS = 0x541d
-- TIOCEXCL = 0x540c
-- TIOCGDEV = 0x80045432
-- TIOCGETD = 0x5424
-- TIOCGEXCL = 0x80045440
-- TIOCGICOUNT = 0x545d
-- TIOCGLCKTRMIOS = 0x5456
-- TIOCGPGRP = 0x540f
-- TIOCGPKT = 0x80045438
-- TIOCGPTLCK = 0x80045439
-- TIOCGPTN = 0x80045430
-- TIOCGRS485 = 0x542e
-- TIOCGSERIAL = 0x541e
-- TIOCGSID = 0x5429
-- TIOCGSOFTCAR = 0x5419
-- TIOCGWINSZ = 0x5413
-- TIOCINQ = 0x541b
-- TIOCLINUX = 0x541c
-- TIOCMBIC = 0x5417
-- TIOCMBIS = 0x5416
-- TIOCMGET = 0x5415
-- TIOCMIWAIT = 0x545c
-- TIOCMSET = 0x5418
-- TIOCM_CAR = 0x40
-- TIOCM_CD = 0x40
-- TIOCM_CTS = 0x20
-- TIOCM_DSR = 0x100
-- TIOCM_DTR = 0x2
-- TIOCM_LE = 0x1
-- TIOCM_RI = 0x80
-- TIOCM_RNG = 0x80
-- TIOCM_RTS = 0x4
-- TIOCM_SR = 0x10
-- TIOCM_ST = 0x8
-- TIOCNOTTY = 0x5422
-- TIOCNXCL = 0x540d
-- TIOCOUTQ = 0x5411
-- TIOCPKT = 0x5420
-- TIOCPKT_DATA = 0x0
-- TIOCPKT_DOSTOP = 0x20
-- TIOCPKT_FLUSHREAD = 0x1
-- TIOCPKT_FLUSHWRITE = 0x2
-- TIOCPKT_IOCTL = 0x40
-- TIOCPKT_NOSTOP = 0x10
-- TIOCPKT_START = 0x8
-- TIOCPKT_STOP = 0x4
-- TIOCSBRK = 0x5427
-- TIOCSCTTY = 0x540e
-- TIOCSERCONFIG = 0x5453
-- TIOCSERGETLSR = 0x5459
-- TIOCSERGETMULTI = 0x545a
-- TIOCSERGSTRUCT = 0x5458
-- TIOCSERGWILD = 0x5454
-- TIOCSERSETMULTI = 0x545b
-- TIOCSERSWILD = 0x5455
-- TIOCSER_TEMT = 0x1
-- TIOCSETD = 0x5423
-- TIOCSIG = 0x40045436
-- TIOCSLCKTRMIOS = 0x5457
-- TIOCSPGRP = 0x5410
-- TIOCSPTLCK = 0x40045431
-- TIOCSRS485 = 0x542f
-- TIOCSSERIAL = 0x541f
-- TIOCSSOFTCAR = 0x541a
-- TIOCSTI = 0x5412
-- TIOCSWINSZ = 0x5414
-- TIOCVHANGUP = 0x5437
-- TOSTOP = 0x100
-- TS_COMM_LEN = 0x20
-- TUNATTACHFILTER = 0x401054d5
-- TUNDETACHFILTER = 0x401054d6
-- TUNGETFEATURES = 0x800454cf
-- TUNGETFILTER = 0x801054db
-- TUNGETIFF = 0x800454d2
-- TUNGETSNDBUF = 0x800454d3
-- TUNGETVNETBE = 0x800454df
-- TUNGETVNETHDRSZ = 0x800454d7
-- TUNGETVNETLE = 0x800454dd
-- TUNSETDEBUG = 0x400454c9
-- TUNSETGROUP = 0x400454ce
-- TUNSETIFF = 0x400454ca
-- TUNSETIFINDEX = 0x400454da
-- TUNSETLINK = 0x400454cd
-- TUNSETNOCSUM = 0x400454c8
-- TUNSETOFFLOAD = 0x400454d0
-- TUNSETOWNER = 0x400454cc
-- TUNSETPERSIST = 0x400454cb
-- TUNSETQUEUE = 0x400454d9
-- TUNSETSNDBUF = 0x400454d4
-- TUNSETTXFILTER = 0x400454d1
-- TUNSETVNETBE = 0x400454de
-- TUNSETVNETHDRSZ = 0x400454d8
-- TUNSETVNETLE = 0x400454dc
-- UMOUNT_NOFOLLOW = 0x8
-- VDISCARD = 0xd
-- VEOF = 0x4
-- VEOL = 0xb
-- VEOL2 = 0x10
-- VERASE = 0x2
-- VINTR = 0x0
-- VKILL = 0x3
-- VLNEXT = 0xf
-- VMADDR_CID_ANY = 0xffffffff
-- VMADDR_CID_HOST = 0x2
-- VMADDR_CID_HYPERVISOR = 0x0
-- VMADDR_CID_RESERVED = 0x1
-- VMADDR_PORT_ANY = 0xffffffff
-- VMIN = 0x6
-- VM_SOCKETS_INVALID_VERSION = 0xffffffff
-- VQUIT = 0x1
-- VREPRINT = 0xc
-- VSTART = 0x8
-- VSTOP = 0x9
-- VSUSP = 0xa
-- VSWTC = 0x7
-- VT0 = 0x0
-- VT1 = 0x4000
-- VTDLY = 0x4000
-- VTIME = 0x5
-- VWERASE = 0xe
-- WALL = 0x40000000
-- WCLONE = 0x80000000
-- WCONTINUED = 0x8
-- WEXITED = 0x4
-- WNOHANG = 0x1
-- WNOTHREAD = 0x20000000
-- WNOWAIT = 0x1000000
-- WORDSIZE = 0x40
-- WSTOPPED = 0x2
-- WUNTRACED = 0x2
-- XATTR_CREATE = 0x1
-- XATTR_REPLACE = 0x2
-- XCASE = 0x4
-- XTABS = 0x1800
-+ B1000000 = 0x1008
-+ B115200 = 0x1002
-+ B1152000 = 0x1009
-+ B1500000 = 0x100a
-+ B2000000 = 0x100b
-+ B230400 = 0x1003
-+ B2500000 = 0x100c
-+ B3000000 = 0x100d
-+ B3500000 = 0x100e
-+ B4000000 = 0x100f
-+ B460800 = 0x1004
-+ B500000 = 0x1005
-+ B57600 = 0x1001
-+ B576000 = 0x1006
-+ B921600 = 0x1007
-+ BLKBSZGET = 0x80081270
-+ BLKBSZSET = 0x40081271
-+ BLKFLSBUF = 0x1261
-+ BLKFRAGET = 0x1265
-+ BLKFRASET = 0x1264
-+ BLKGETSIZE = 0x1260
-+ BLKGETSIZE64 = 0x80081272
-+ BLKPBSZGET = 0x127b
-+ BLKRAGET = 0x1263
-+ BLKRASET = 0x1262
-+ BLKROGET = 0x125e
-+ BLKROSET = 0x125d
-+ BLKRRPART = 0x125f
-+ BLKSECTGET = 0x1267
-+ BLKSECTSET = 0x1266
-+ BLKSSZGET = 0x1268
-+ BOTHER = 0x1000
-+ BS1 = 0x2000
-+ BSDLY = 0x2000
-+ CBAUD = 0x100f
-+ CBAUDEX = 0x1000
-+ CIBAUD = 0x100f0000
-+ CLOCAL = 0x800
-+ CR1 = 0x200
-+ CR2 = 0x400
-+ CR3 = 0x600
-+ CRDLY = 0x600
-+ CREAD = 0x80
-+ CS6 = 0x10
-+ CS7 = 0x20
-+ CS8 = 0x30
-+ CSIZE = 0x30
-+ CSTOPB = 0x40
-+ ECHOCTL = 0x200
-+ ECHOE = 0x10
-+ ECHOK = 0x20
-+ ECHOKE = 0x800
-+ ECHONL = 0x40
-+ ECHOPRT = 0x400
-+ EFD_CLOEXEC = 0x80000
-+ EFD_NONBLOCK = 0x800
-+ EPOLL_CLOEXEC = 0x80000
-+ EXTPROC = 0x10000
-+ FF1 = 0x8000
-+ FFDLY = 0x8000
-+ FLUSHO = 0x1000
-+ FS_IOC_ENABLE_VERITY = 0x40806685
-+ FS_IOC_GETFLAGS = 0x80086601
-+ FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
-+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
-+ FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
-+ F_GETLK = 0x5
-+ F_GETLK64 = 0x5
-+ F_GETOWN = 0x9
-+ F_RDLCK = 0x0
-+ F_SETLK = 0x6
-+ F_SETLK64 = 0x6
-+ F_SETLKW = 0x7
-+ F_SETLKW64 = 0x7
-+ F_SETOWN = 0x8
-+ F_UNLCK = 0x2
-+ F_WRLCK = 0x1
-+ HUPCL = 0x400
-+ ICANON = 0x2
-+ IEXTEN = 0x8000
-+ IN_CLOEXEC = 0x80000
-+ IN_NONBLOCK = 0x800
-+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x7b9
-+ ISIG = 0x1
-+ IUCLC = 0x200
-+ IXOFF = 0x1000
-+ IXON = 0x400
-+ MAP_ANON = 0x20
-+ MAP_ANONYMOUS = 0x20
-+ MAP_DENYWRITE = 0x800
-+ MAP_EXECUTABLE = 0x1000
-+ MAP_GROWSDOWN = 0x100
-+ MAP_HUGETLB = 0x40000
-+ MAP_LOCKED = 0x2000
-+ MAP_NONBLOCK = 0x10000
-+ MAP_NORESERVE = 0x4000
-+ MAP_POPULATE = 0x8000
-+ MAP_STACK = 0x20000
-+ MAP_SYNC = 0x80000
-+ MCL_CURRENT = 0x1
-+ MCL_FUTURE = 0x2
-+ MCL_ONFAULT = 0x4
-+ NFDBITS = 0x40
-+ NLDLY = 0x100
-+ NOFLSH = 0x80
-+ NS_GET_NSTYPE = 0xb703
-+ NS_GET_OWNER_UID = 0xb704
-+ NS_GET_PARENT = 0xb702
-+ NS_GET_USERNS = 0xb701
-+ OLCUC = 0x2
-+ ONLCR = 0x4
-+ O_APPEND = 0x400
-+ O_ASYNC = 0x2000
-+ O_CLOEXEC = 0x80000
-+ O_CREAT = 0x40
-+ O_DIRECT = 0x4000
-+ O_DIRECTORY = 0x10000
-+ O_DSYNC = 0x1000
-+ O_EXCL = 0x80
-+ O_FSYNC = 0x101000
-+ O_LARGEFILE = 0x0
-+ O_NDELAY = 0x800
-+ O_NOATIME = 0x40000
-+ O_NOCTTY = 0x100
-+ O_NOFOLLOW = 0x20000
-+ O_NONBLOCK = 0x800
-+ O_PATH = 0x200000
-+ O_RSYNC = 0x101000
-+ O_SYNC = 0x101000
-+ O_TMPFILE = 0x410000
-+ O_TRUNC = 0x200
-+ PARENB = 0x100
-+ PARODD = 0x200
-+ PENDIN = 0x4000
-+ PERF_EVENT_IOC_DISABLE = 0x2401
-+ PERF_EVENT_IOC_ENABLE = 0x2400
-+ PERF_EVENT_IOC_ID = 0x80082407
-+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4008240b
-+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
-+ PERF_EVENT_IOC_PERIOD = 0x40082404
-+ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
-+ PERF_EVENT_IOC_REFRESH = 0x2402
-+ PERF_EVENT_IOC_RESET = 0x2403
-+ PERF_EVENT_IOC_SET_BPF = 0x40042408
-+ PERF_EVENT_IOC_SET_FILTER = 0x40082406
-+ PERF_EVENT_IOC_SET_OUTPUT = 0x2405
-+ PPPIOCATTACH = 0x4004743d
-+ PPPIOCATTCHAN = 0x40047438
-+ PPPIOCCONNECT = 0x4004743a
-+ PPPIOCDETACH = 0x4004743c
-+ PPPIOCDISCONN = 0x7439
-+ PPPIOCGASYNCMAP = 0x80047458
-+ PPPIOCGCHAN = 0x80047437
-+ PPPIOCGDEBUG = 0x80047441
-+ PPPIOCGFLAGS = 0x8004745a
-+ PPPIOCGIDLE = 0x8010743f
-+ PPPIOCGIDLE32 = 0x8008743f
-+ PPPIOCGIDLE64 = 0x8010743f
-+ PPPIOCGL2TPSTATS = 0x80487436
-+ PPPIOCGMRU = 0x80047453
-+ PPPIOCGRASYNCMAP = 0x80047455
-+ PPPIOCGUNIT = 0x80047456
-+ PPPIOCGXASYNCMAP = 0x80207450
-+ PPPIOCSACTIVE = 0x40107446
-+ PPPIOCSASYNCMAP = 0x40047457
-+ PPPIOCSCOMPRESS = 0x4010744d
-+ PPPIOCSDEBUG = 0x40047440
-+ PPPIOCSFLAGS = 0x40047459
-+ PPPIOCSMAXCID = 0x40047451
-+ PPPIOCSMRRU = 0x4004743b
-+ PPPIOCSMRU = 0x40047452
-+ PPPIOCSNPMODE = 0x4008744b
-+ PPPIOCSPASS = 0x40107447
-+ PPPIOCSRASYNCMAP = 0x40047454
-+ PPPIOCSXASYNCMAP = 0x4020744f
-+ PPPIOCXFERUNIT = 0x744e
-+ PR_SET_PTRACER_ANY = 0xffffffffffffffff
-+ PTRACE_DISABLE_TE = 0x5010
-+ PTRACE_ENABLE_TE = 0x5009
-+ PTRACE_GET_LAST_BREAK = 0x5006
-+ PTRACE_OLDSETOPTIONS = 0x15
-+ PTRACE_PEEKDATA_AREA = 0x5003
-+ PTRACE_PEEKTEXT_AREA = 0x5002
-+ PTRACE_PEEKUSR_AREA = 0x5000
-+ PTRACE_PEEK_SYSTEM_CALL = 0x5007
-+ PTRACE_POKEDATA_AREA = 0x5005
-+ PTRACE_POKETEXT_AREA = 0x5004
-+ PTRACE_POKEUSR_AREA = 0x5001
-+ PTRACE_POKE_SYSTEM_CALL = 0x5008
-+ PTRACE_PROT = 0x15
-+ PTRACE_SINGLEBLOCK = 0xc
-+ PTRACE_TE_ABORT_RAND = 0x5011
-+ PT_ACR0 = 0x90
-+ PT_ACR1 = 0x94
-+ PT_ACR10 = 0xb8
-+ PT_ACR11 = 0xbc
-+ PT_ACR12 = 0xc0
-+ PT_ACR13 = 0xc4
-+ PT_ACR14 = 0xc8
-+ PT_ACR15 = 0xcc
-+ PT_ACR2 = 0x98
-+ PT_ACR3 = 0x9c
-+ PT_ACR4 = 0xa0
-+ PT_ACR5 = 0xa4
-+ PT_ACR6 = 0xa8
-+ PT_ACR7 = 0xac
-+ PT_ACR8 = 0xb0
-+ PT_ACR9 = 0xb4
-+ PT_CR_10 = 0x168
-+ PT_CR_11 = 0x170
-+ PT_CR_9 = 0x160
-+ PT_ENDREGS = 0x1af
-+ PT_FPC = 0xd8
-+ PT_FPR0 = 0xe0
-+ PT_FPR1 = 0xe8
-+ PT_FPR10 = 0x130
-+ PT_FPR11 = 0x138
-+ PT_FPR12 = 0x140
-+ PT_FPR13 = 0x148
-+ PT_FPR14 = 0x150
-+ PT_FPR15 = 0x158
-+ PT_FPR2 = 0xf0
-+ PT_FPR3 = 0xf8
-+ PT_FPR4 = 0x100
-+ PT_FPR5 = 0x108
-+ PT_FPR6 = 0x110
-+ PT_FPR7 = 0x118
-+ PT_FPR8 = 0x120
-+ PT_FPR9 = 0x128
-+ PT_GPR0 = 0x10
-+ PT_GPR1 = 0x18
-+ PT_GPR10 = 0x60
-+ PT_GPR11 = 0x68
-+ PT_GPR12 = 0x70
-+ PT_GPR13 = 0x78
-+ PT_GPR14 = 0x80
-+ PT_GPR15 = 0x88
-+ PT_GPR2 = 0x20
-+ PT_GPR3 = 0x28
-+ PT_GPR4 = 0x30
-+ PT_GPR5 = 0x38
-+ PT_GPR6 = 0x40
-+ PT_GPR7 = 0x48
-+ PT_GPR8 = 0x50
-+ PT_GPR9 = 0x58
-+ PT_IEEE_IP = 0x1a8
-+ PT_LASTOFF = 0x1a8
-+ PT_ORIGGPR2 = 0xd0
-+ PT_PSWADDR = 0x8
-+ PT_PSWMASK = 0x0
-+ RLIMIT_AS = 0x9
-+ RLIMIT_MEMLOCK = 0x8
-+ RLIMIT_NOFILE = 0x7
-+ RLIMIT_NPROC = 0x6
-+ RLIMIT_RSS = 0x5
-+ RNDADDENTROPY = 0x40085203
-+ RNDADDTOENTCNT = 0x40045201
-+ RNDCLEARPOOL = 0x5206
-+ RNDGETENTCNT = 0x80045200
-+ RNDGETPOOL = 0x80085202
-+ RNDRESEEDCRNG = 0x5207
-+ RNDZAPENTCNT = 0x5204
-+ RTC_AIE_OFF = 0x7002
-+ RTC_AIE_ON = 0x7001
-+ RTC_ALM_READ = 0x80247008
-+ RTC_ALM_SET = 0x40247007
-+ RTC_EPOCH_READ = 0x8008700d
-+ RTC_EPOCH_SET = 0x4008700e
-+ RTC_IRQP_READ = 0x8008700b
-+ RTC_IRQP_SET = 0x4008700c
-+ RTC_PIE_OFF = 0x7006
-+ RTC_PIE_ON = 0x7005
-+ RTC_PLL_GET = 0x80207011
-+ RTC_PLL_SET = 0x40207012
-+ RTC_RD_TIME = 0x80247009
-+ RTC_SET_TIME = 0x4024700a
-+ RTC_UIE_OFF = 0x7004
-+ RTC_UIE_ON = 0x7003
-+ RTC_VL_CLR = 0x7014
-+ RTC_VL_READ = 0x80047013
-+ RTC_WIE_OFF = 0x7010
-+ RTC_WIE_ON = 0x700f
-+ RTC_WKALM_RD = 0x80287010
-+ RTC_WKALM_SET = 0x4028700f
-+ SCM_TIMESTAMPING = 0x25
-+ SCM_TIMESTAMPING_OPT_STATS = 0x36
-+ SCM_TIMESTAMPING_PKTINFO = 0x3a
-+ SCM_TIMESTAMPNS = 0x23
-+ SCM_TXTIME = 0x3d
-+ SCM_WIFI_STATUS = 0x29
-+ SFD_CLOEXEC = 0x80000
-+ SFD_NONBLOCK = 0x800
-+ SIOCATMARK = 0x8905
-+ SIOCGPGRP = 0x8904
-+ SIOCGSTAMPNS_NEW = 0x80108907
-+ SIOCGSTAMP_NEW = 0x80108906
-+ SIOCINQ = 0x541b
-+ SIOCOUTQ = 0x5411
-+ SIOCSPGRP = 0x8902
-+ SOCK_CLOEXEC = 0x80000
-+ SOCK_DGRAM = 0x2
-+ SOCK_NONBLOCK = 0x800
-+ SOCK_STREAM = 0x1
-+ SOL_SOCKET = 0x1
-+ SO_ACCEPTCONN = 0x1e
-+ SO_ATTACH_BPF = 0x32
-+ SO_ATTACH_REUSEPORT_CBPF = 0x33
-+ SO_ATTACH_REUSEPORT_EBPF = 0x34
-+ SO_BINDTODEVICE = 0x19
-+ SO_BINDTOIFINDEX = 0x3e
-+ SO_BPF_EXTENSIONS = 0x30
-+ SO_BROADCAST = 0x6
-+ SO_BSDCOMPAT = 0xe
-+ SO_BUSY_POLL = 0x2e
-+ SO_CNX_ADVICE = 0x35
-+ SO_COOKIE = 0x39
-+ SO_DETACH_REUSEPORT_BPF = 0x44
-+ SO_DOMAIN = 0x27
-+ SO_DONTROUTE = 0x5
-+ SO_ERROR = 0x4
-+ SO_INCOMING_CPU = 0x31
-+ SO_INCOMING_NAPI_ID = 0x38
-+ SO_KEEPALIVE = 0x9
-+ SO_LINGER = 0xd
-+ SO_LOCK_FILTER = 0x2c
-+ SO_MARK = 0x24
-+ SO_MAX_PACING_RATE = 0x2f
-+ SO_MEMINFO = 0x37
-+ SO_NOFCS = 0x2b
-+ SO_OOBINLINE = 0xa
-+ SO_PASSCRED = 0x10
-+ SO_PASSSEC = 0x22
-+ SO_PEEK_OFF = 0x2a
-+ SO_PEERCRED = 0x11
-+ SO_PEERGROUPS = 0x3b
-+ SO_PEERSEC = 0x1f
-+ SO_PROTOCOL = 0x26
-+ SO_RCVBUF = 0x8
-+ SO_RCVBUFFORCE = 0x21
-+ SO_RCVLOWAT = 0x12
-+ SO_RCVTIMEO = 0x14
-+ SO_RCVTIMEO_NEW = 0x42
-+ SO_RCVTIMEO_OLD = 0x14
-+ SO_REUSEADDR = 0x2
-+ SO_REUSEPORT = 0xf
-+ SO_RXQ_OVFL = 0x28
-+ SO_SECURITY_AUTHENTICATION = 0x16
-+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
-+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
-+ SO_SELECT_ERR_QUEUE = 0x2d
-+ SO_SNDBUF = 0x7
-+ SO_SNDBUFFORCE = 0x20
-+ SO_SNDLOWAT = 0x13
-+ SO_SNDTIMEO = 0x15
-+ SO_SNDTIMEO_NEW = 0x43
-+ SO_SNDTIMEO_OLD = 0x15
-+ SO_TIMESTAMPING = 0x25
-+ SO_TIMESTAMPING_NEW = 0x41
-+ SO_TIMESTAMPING_OLD = 0x25
-+ SO_TIMESTAMPNS = 0x23
-+ SO_TIMESTAMPNS_NEW = 0x40
-+ SO_TIMESTAMPNS_OLD = 0x23
-+ SO_TIMESTAMP_NEW = 0x3f
-+ SO_TXTIME = 0x3d
-+ SO_TYPE = 0x3
-+ SO_WIFI_STATUS = 0x29
-+ SO_ZEROCOPY = 0x3c
-+ TAB1 = 0x800
-+ TAB2 = 0x1000
-+ TAB3 = 0x1800
-+ TABDLY = 0x1800
-+ TCFLSH = 0x540b
-+ TCGETA = 0x5405
-+ TCGETS = 0x5401
-+ TCGETS2 = 0x802c542a
-+ TCGETX = 0x5432
-+ TCSAFLUSH = 0x2
-+ TCSBRK = 0x5409
-+ TCSBRKP = 0x5425
-+ TCSETA = 0x5406
-+ TCSETAF = 0x5408
-+ TCSETAW = 0x5407
-+ TCSETS = 0x5402
-+ TCSETS2 = 0x402c542b
-+ TCSETSF = 0x5404
-+ TCSETSF2 = 0x402c542d
-+ TCSETSW = 0x5403
-+ TCSETSW2 = 0x402c542c
-+ TCSETX = 0x5433
-+ TCSETXF = 0x5434
-+ TCSETXW = 0x5435
-+ TCXONC = 0x540a
-+ TIOCCBRK = 0x5428
-+ TIOCCONS = 0x541d
-+ TIOCEXCL = 0x540c
-+ TIOCGDEV = 0x80045432
-+ TIOCGETD = 0x5424
-+ TIOCGEXCL = 0x80045440
-+ TIOCGICOUNT = 0x545d
-+ TIOCGISO7816 = 0x80285442
-+ TIOCGLCKTRMIOS = 0x5456
-+ TIOCGPGRP = 0x540f
-+ TIOCGPKT = 0x80045438
-+ TIOCGPTLCK = 0x80045439
-+ TIOCGPTN = 0x80045430
-+ TIOCGPTPEER = 0x5441
-+ TIOCGRS485 = 0x542e
-+ TIOCGSERIAL = 0x541e
-+ TIOCGSID = 0x5429
-+ TIOCGSOFTCAR = 0x5419
-+ TIOCGWINSZ = 0x5413
-+ TIOCINQ = 0x541b
-+ TIOCLINUX = 0x541c
-+ TIOCMBIC = 0x5417
-+ TIOCMBIS = 0x5416
-+ TIOCMGET = 0x5415
-+ TIOCMIWAIT = 0x545c
-+ TIOCMSET = 0x5418
-+ TIOCM_CAR = 0x40
-+ TIOCM_CD = 0x40
-+ TIOCM_CTS = 0x20
-+ TIOCM_DSR = 0x100
-+ TIOCM_RI = 0x80
-+ TIOCM_RNG = 0x80
-+ TIOCM_SR = 0x10
-+ TIOCM_ST = 0x8
-+ TIOCNOTTY = 0x5422
-+ TIOCNXCL = 0x540d
-+ TIOCOUTQ = 0x5411
-+ TIOCPKT = 0x5420
-+ TIOCSBRK = 0x5427
-+ TIOCSCTTY = 0x540e
-+ TIOCSERCONFIG = 0x5453
-+ TIOCSERGETLSR = 0x5459
-+ TIOCSERGETMULTI = 0x545a
-+ TIOCSERGSTRUCT = 0x5458
-+ TIOCSERGWILD = 0x5454
-+ TIOCSERSETMULTI = 0x545b
-+ TIOCSERSWILD = 0x5455
-+ TIOCSER_TEMT = 0x1
-+ TIOCSETD = 0x5423
-+ TIOCSIG = 0x40045436
-+ TIOCSISO7816 = 0xc0285443
-+ TIOCSLCKTRMIOS = 0x5457
-+ TIOCSPGRP = 0x5410
-+ TIOCSPTLCK = 0x40045431
-+ TIOCSRS485 = 0x542f
-+ TIOCSSERIAL = 0x541f
-+ TIOCSSOFTCAR = 0x541a
-+ TIOCSTI = 0x5412
-+ TIOCSWINSZ = 0x5414
-+ TIOCVHANGUP = 0x5437
-+ TOSTOP = 0x100
-+ TUNATTACHFILTER = 0x401054d5
-+ TUNDETACHFILTER = 0x401054d6
-+ TUNGETDEVNETNS = 0x54e3
-+ TUNGETFEATURES = 0x800454cf
-+ TUNGETFILTER = 0x801054db
-+ TUNGETIFF = 0x800454d2
-+ TUNGETSNDBUF = 0x800454d3
-+ TUNGETVNETBE = 0x800454df
-+ TUNGETVNETHDRSZ = 0x800454d7
-+ TUNGETVNETLE = 0x800454dd
-+ TUNSETCARRIER = 0x400454e2
-+ TUNSETDEBUG = 0x400454c9
-+ TUNSETFILTEREBPF = 0x800454e1
-+ TUNSETGROUP = 0x400454ce
-+ TUNSETIFF = 0x400454ca
-+ TUNSETIFINDEX = 0x400454da
-+ TUNSETLINK = 0x400454cd
-+ TUNSETNOCSUM = 0x400454c8
-+ TUNSETOFFLOAD = 0x400454d0
-+ TUNSETOWNER = 0x400454cc
-+ TUNSETPERSIST = 0x400454cb
-+ TUNSETQUEUE = 0x400454d9
-+ TUNSETSNDBUF = 0x400454d4
-+ TUNSETSTEERINGEBPF = 0x800454e0
-+ TUNSETTXFILTER = 0x400454d1
-+ TUNSETVNETBE = 0x400454de
-+ TUNSETVNETHDRSZ = 0x400454d8
-+ TUNSETVNETLE = 0x400454dc
-+ UBI_IOCATT = 0x40186f40
-+ UBI_IOCDET = 0x40046f41
-+ UBI_IOCEBCH = 0x40044f02
-+ UBI_IOCEBER = 0x40044f01
-+ UBI_IOCEBISMAP = 0x80044f05
-+ UBI_IOCEBMAP = 0x40084f03
-+ UBI_IOCEBUNMAP = 0x40044f04
-+ UBI_IOCMKVOL = 0x40986f00
-+ UBI_IOCRMVOL = 0x40046f01
-+ UBI_IOCRNVOL = 0x51106f03
-+ UBI_IOCRPEB = 0x40046f04
-+ UBI_IOCRSVOL = 0x400c6f02
-+ UBI_IOCSETVOLPROP = 0x40104f06
-+ UBI_IOCSPEB = 0x40046f05
-+ UBI_IOCVOLCRBLK = 0x40804f07
-+ UBI_IOCVOLRMBLK = 0x4f08
-+ UBI_IOCVOLUP = 0x40084f00
-+ VDISCARD = 0xd
-+ VEOF = 0x4
-+ VEOL = 0xb
-+ VEOL2 = 0x10
-+ VMIN = 0x6
-+ VREPRINT = 0xc
-+ VSTART = 0x8
-+ VSTOP = 0x9
-+ VSUSP = 0xa
-+ VSWTC = 0x7
-+ VT1 = 0x4000
-+ VTDLY = 0x4000
-+ VTIME = 0x5
-+ VWERASE = 0xe
-+ WDIOC_GETBOOTSTATUS = 0x80045702
-+ WDIOC_GETPRETIMEOUT = 0x80045709
-+ WDIOC_GETSTATUS = 0x80045701
-+ WDIOC_GETSUPPORT = 0x80285700
-+ WDIOC_GETTEMP = 0x80045703
-+ WDIOC_GETTIMELEFT = 0x8004570a
-+ WDIOC_GETTIMEOUT = 0x80045707
-+ WDIOC_KEEPALIVE = 0x80045705
-+ WDIOC_SETOPTIONS = 0x80045704
-+ WORDSIZE = 0x40
-+ XCASE = 0x4
-+ XTABS = 0x1800
- )
-
- // Errors
- const (
-- E2BIG = syscall.Errno(0x7)
-- EACCES = syscall.Errno(0xd)
- EADDRINUSE = syscall.Errno(0x62)
- EADDRNOTAVAIL = syscall.Errno(0x63)
- EADV = syscall.Errno(0x44)
- EAFNOSUPPORT = syscall.Errno(0x61)
-- EAGAIN = syscall.Errno(0xb)
- EALREADY = syscall.Errno(0x72)
- EBADE = syscall.Errno(0x34)
-- EBADF = syscall.Errno(0x9)
- EBADFD = syscall.Errno(0x4d)
- EBADMSG = syscall.Errno(0x4a)
- EBADR = syscall.Errno(0x35)
- EBADRQC = syscall.Errno(0x38)
- EBADSLT = syscall.Errno(0x39)
- EBFONT = syscall.Errno(0x3b)
-- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x7d)
-- ECHILD = syscall.Errno(0xa)
- ECHRNG = syscall.Errno(0x2c)
- ECOMM = syscall.Errno(0x46)
- ECONNABORTED = syscall.Errno(0x67)
-@@ -1943,23 +560,15 @@ const (
- EDEADLK = syscall.Errno(0x23)
- EDEADLOCK = syscall.Errno(0x23)
- EDESTADDRREQ = syscall.Errno(0x59)
-- EDOM = syscall.Errno(0x21)
- EDOTDOT = syscall.Errno(0x49)
- EDQUOT = syscall.Errno(0x7a)
-- EEXIST = syscall.Errno(0x11)
-- EFAULT = syscall.Errno(0xe)
-- EFBIG = syscall.Errno(0x1b)
- EHOSTDOWN = syscall.Errno(0x70)
- EHOSTUNREACH = syscall.Errno(0x71)
- EHWPOISON = syscall.Errno(0x85)
- EIDRM = syscall.Errno(0x2b)
- EILSEQ = syscall.Errno(0x54)
- EINPROGRESS = syscall.Errno(0x73)
-- EINTR = syscall.Errno(0x4)
-- EINVAL = syscall.Errno(0x16)
-- EIO = syscall.Errno(0x5)
- EISCONN = syscall.Errno(0x6a)
-- EISDIR = syscall.Errno(0x15)
- EISNAM = syscall.Errno(0x78)
- EKEYEXPIRED = syscall.Errno(0x7f)
- EKEYREJECTED = syscall.Errno(0x81)
-@@ -1976,8 +585,6 @@ const (
- ELNRNG = syscall.Errno(0x30)
- ELOOP = syscall.Errno(0x28)
- EMEDIUMTYPE = syscall.Errno(0x7c)
-- EMFILE = syscall.Errno(0x18)
-- EMLINK = syscall.Errno(0x1f)
- EMSGSIZE = syscall.Errno(0x5a)
- EMULTIHOP = syscall.Errno(0x48)
- ENAMETOOLONG = syscall.Errno(0x24)
-@@ -1985,103 +592,70 @@ const (
- ENETDOWN = syscall.Errno(0x64)
- ENETRESET = syscall.Errno(0x66)
- ENETUNREACH = syscall.Errno(0x65)
-- ENFILE = syscall.Errno(0x17)
- ENOANO = syscall.Errno(0x37)
- ENOBUFS = syscall.Errno(0x69)
- ENOCSI = syscall.Errno(0x32)
- ENODATA = syscall.Errno(0x3d)
-- ENODEV = syscall.Errno(0x13)
-- ENOENT = syscall.Errno(0x2)
-- ENOEXEC = syscall.Errno(0x8)
- ENOKEY = syscall.Errno(0x7e)
- ENOLCK = syscall.Errno(0x25)
- ENOLINK = syscall.Errno(0x43)
- ENOMEDIUM = syscall.Errno(0x7b)
-- ENOMEM = syscall.Errno(0xc)
- ENOMSG = syscall.Errno(0x2a)
- ENONET = syscall.Errno(0x40)
- ENOPKG = syscall.Errno(0x41)
- ENOPROTOOPT = syscall.Errno(0x5c)
-- ENOSPC = syscall.Errno(0x1c)
- ENOSR = syscall.Errno(0x3f)
- ENOSTR = syscall.Errno(0x3c)
- ENOSYS = syscall.Errno(0x26)
-- ENOTBLK = syscall.Errno(0xf)
- ENOTCONN = syscall.Errno(0x6b)
-- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x27)
- ENOTNAM = syscall.Errno(0x76)
- ENOTRECOVERABLE = syscall.Errno(0x83)
- ENOTSOCK = syscall.Errno(0x58)
- ENOTSUP = syscall.Errno(0x5f)
-- ENOTTY = syscall.Errno(0x19)
- ENOTUNIQ = syscall.Errno(0x4c)
-- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x5f)
- EOVERFLOW = syscall.Errno(0x4b)
- EOWNERDEAD = syscall.Errno(0x82)
-- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x60)
-- EPIPE = syscall.Errno(0x20)
- EPROTO = syscall.Errno(0x47)
- EPROTONOSUPPORT = syscall.Errno(0x5d)
- EPROTOTYPE = syscall.Errno(0x5b)
-- ERANGE = syscall.Errno(0x22)
- EREMCHG = syscall.Errno(0x4e)
- EREMOTE = syscall.Errno(0x42)
- EREMOTEIO = syscall.Errno(0x79)
- ERESTART = syscall.Errno(0x55)
- ERFKILL = syscall.Errno(0x84)
-- EROFS = syscall.Errno(0x1e)
- ESHUTDOWN = syscall.Errno(0x6c)
- ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-- ESPIPE = syscall.Errno(0x1d)
-- ESRCH = syscall.Errno(0x3)
- ESRMNT = syscall.Errno(0x45)
- ESTALE = syscall.Errno(0x74)
- ESTRPIPE = syscall.Errno(0x56)
- ETIME = syscall.Errno(0x3e)
- ETIMEDOUT = syscall.Errno(0x6e)
- ETOOMANYREFS = syscall.Errno(0x6d)
-- ETXTBSY = syscall.Errno(0x1a)
- EUCLEAN = syscall.Errno(0x75)
- EUNATCH = syscall.Errno(0x31)
- EUSERS = syscall.Errno(0x57)
-- EWOULDBLOCK = syscall.Errno(0xb)
-- EXDEV = syscall.Errno(0x12)
- EXFULL = syscall.Errno(0x36)
- )
-
- // Signals
- const (
-- SIGABRT = syscall.Signal(0x6)
-- SIGALRM = syscall.Signal(0xe)
- SIGBUS = syscall.Signal(0x7)
- SIGCHLD = syscall.Signal(0x11)
- SIGCLD = syscall.Signal(0x11)
- SIGCONT = syscall.Signal(0x12)
-- SIGFPE = syscall.Signal(0x8)
-- SIGHUP = syscall.Signal(0x1)
-- SIGILL = syscall.Signal(0x4)
-- SIGINT = syscall.Signal(0x2)
- SIGIO = syscall.Signal(0x1d)
-- SIGIOT = syscall.Signal(0x6)
-- SIGKILL = syscall.Signal(0x9)
-- SIGPIPE = syscall.Signal(0xd)
- SIGPOLL = syscall.Signal(0x1d)
- SIGPROF = syscall.Signal(0x1b)
- SIGPWR = syscall.Signal(0x1e)
-- SIGQUIT = syscall.Signal(0x3)
-- SIGSEGV = syscall.Signal(0xb)
- SIGSTKFLT = syscall.Signal(0x10)
- SIGSTOP = syscall.Signal(0x13)
- SIGSYS = syscall.Signal(0x1f)
-- SIGTERM = syscall.Signal(0xf)
-- SIGTRAP = syscall.Signal(0x5)
- SIGTSTP = syscall.Signal(0x14)
- SIGTTIN = syscall.Signal(0x15)
- SIGTTOU = syscall.Signal(0x16)
-- SIGUNUSED = syscall.Signal(0x1f)
- SIGURG = syscall.Signal(0x17)
- SIGUSR1 = syscall.Signal(0xa)
- SIGUSR2 = syscall.Signal(0xc)
-@@ -2092,171 +666,179 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "no such device or address",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource temporarily unavailable",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device or resource busy",
-- 17: "file exists",
-- 18: "invalid cross-device link",
-- 19: "no such device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "numerical result out of range",
-- 35: "resource deadlock avoided",
-- 36: "file name too long",
-- 37: "no locks available",
-- 38: "function not implemented",
-- 39: "directory not empty",
-- 40: "too many levels of symbolic links",
-- 42: "no message of desired type",
-- 43: "identifier removed",
-- 44: "channel number out of range",
-- 45: "level 2 not synchronized",
-- 46: "level 3 halted",
-- 47: "level 3 reset",
-- 48: "link number out of range",
-- 49: "protocol driver not attached",
-- 50: "no CSI structure available",
-- 51: "level 2 halted",
-- 52: "invalid exchange",
-- 53: "invalid request descriptor",
-- 54: "exchange full",
-- 55: "no anode",
-- 56: "invalid request code",
-- 57: "invalid slot",
-- 59: "bad font file format",
-- 60: "device not a stream",
-- 61: "no data available",
-- 62: "timer expired",
-- 63: "out of streams resources",
-- 64: "machine is not on the network",
-- 65: "package not installed",
-- 66: "object is remote",
-- 67: "link has been severed",
-- 68: "advertise error",
-- 69: "srmount error",
-- 70: "communication error on send",
-- 71: "protocol error",
-- 72: "multihop attempted",
-- 73: "RFS specific error",
-- 74: "bad message",
-- 75: "value too large for defined data type",
-- 76: "name not unique on network",
-- 77: "file descriptor in bad state",
-- 78: "remote address changed",
-- 79: "can not access a needed shared library",
-- 80: "accessing a corrupted shared library",
-- 81: ".lib section in a.out corrupted",
-- 82: "attempting to link in too many shared libraries",
-- 83: "cannot exec a shared library directly",
-- 84: "invalid or incomplete multibyte or wide character",
-- 85: "interrupted system call should be restarted",
-- 86: "streams pipe error",
-- 87: "too many users",
-- 88: "socket operation on non-socket",
-- 89: "destination address required",
-- 90: "message too long",
-- 91: "protocol wrong type for socket",
-- 92: "protocol not available",
-- 93: "protocol not supported",
-- 94: "socket type not supported",
-- 95: "operation not supported",
-- 96: "protocol family not supported",
-- 97: "address family not supported by protocol",
-- 98: "address already in use",
-- 99: "cannot assign requested address",
-- 100: "network is down",
-- 101: "network is unreachable",
-- 102: "network dropped connection on reset",
-- 103: "software caused connection abort",
-- 104: "connection reset by peer",
-- 105: "no buffer space available",
-- 106: "transport endpoint is already connected",
-- 107: "transport endpoint is not connected",
-- 108: "cannot send after transport endpoint shutdown",
-- 109: "too many references: cannot splice",
-- 110: "connection timed out",
-- 111: "connection refused",
-- 112: "host is down",
-- 113: "no route to host",
-- 114: "operation already in progress",
-- 115: "operation now in progress",
-- 116: "stale file handle",
-- 117: "structure needs cleaning",
-- 118: "not a XENIX named type file",
-- 119: "no XENIX semaphores available",
-- 120: "is a named type file",
-- 121: "remote I/O error",
-- 122: "disk quota exceeded",
-- 123: "no medium found",
-- 124: "wrong medium type",
-- 125: "operation canceled",
-- 126: "required key not available",
-- 127: "key has expired",
-- 128: "key has been revoked",
-- 129: "key was rejected by service",
-- 130: "owner died",
-- 131: "state not recoverable",
-- 132: "operation not possible due to RF-kill",
-- 133: "memory page has hardware error",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device or resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "invalid cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "numerical result out of range"},
-+ {35, "EDEADLK", "resource deadlock avoided"},
-+ {36, "ENAMETOOLONG", "file name too long"},
-+ {37, "ENOLCK", "no locks available"},
-+ {38, "ENOSYS", "function not implemented"},
-+ {39, "ENOTEMPTY", "directory not empty"},
-+ {40, "ELOOP", "too many levels of symbolic links"},
-+ {42, "ENOMSG", "no message of desired type"},
-+ {43, "EIDRM", "identifier removed"},
-+ {44, "ECHRNG", "channel number out of range"},
-+ {45, "EL2NSYNC", "level 2 not synchronized"},
-+ {46, "EL3HLT", "level 3 halted"},
-+ {47, "EL3RST", "level 3 reset"},
-+ {48, "ELNRNG", "link number out of range"},
-+ {49, "EUNATCH", "protocol driver not attached"},
-+ {50, "ENOCSI", "no CSI structure available"},
-+ {51, "EL2HLT", "level 2 halted"},
-+ {52, "EBADE", "invalid exchange"},
-+ {53, "EBADR", "invalid request descriptor"},
-+ {54, "EXFULL", "exchange full"},
-+ {55, "ENOANO", "no anode"},
-+ {56, "EBADRQC", "invalid request code"},
-+ {57, "EBADSLT", "invalid slot"},
-+ {59, "EBFONT", "bad font file format"},
-+ {60, "ENOSTR", "device not a stream"},
-+ {61, "ENODATA", "no data available"},
-+ {62, "ETIME", "timer expired"},
-+ {63, "ENOSR", "out of streams resources"},
-+ {64, "ENONET", "machine is not on the network"},
-+ {65, "ENOPKG", "package not installed"},
-+ {66, "EREMOTE", "object is remote"},
-+ {67, "ENOLINK", "link has been severed"},
-+ {68, "EADV", "advertise error"},
-+ {69, "ESRMNT", "srmount error"},
-+ {70, "ECOMM", "communication error on send"},
-+ {71, "EPROTO", "protocol error"},
-+ {72, "EMULTIHOP", "multihop attempted"},
-+ {73, "EDOTDOT", "RFS specific error"},
-+ {74, "EBADMSG", "bad message"},
-+ {75, "EOVERFLOW", "value too large for defined data type"},
-+ {76, "ENOTUNIQ", "name not unique on network"},
-+ {77, "EBADFD", "file descriptor in bad state"},
-+ {78, "EREMCHG", "remote address changed"},
-+ {79, "ELIBACC", "can not access a needed shared library"},
-+ {80, "ELIBBAD", "accessing a corrupted shared library"},
-+ {81, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
-+ {83, "ELIBEXEC", "cannot exec a shared library directly"},
-+ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
-+ {85, "ERESTART", "interrupted system call should be restarted"},
-+ {86, "ESTRPIPE", "streams pipe error"},
-+ {87, "EUSERS", "too many users"},
-+ {88, "ENOTSOCK", "socket operation on non-socket"},
-+ {89, "EDESTADDRREQ", "destination address required"},
-+ {90, "EMSGSIZE", "message too long"},
-+ {91, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {92, "ENOPROTOOPT", "protocol not available"},
-+ {93, "EPROTONOSUPPORT", "protocol not supported"},
-+ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {95, "ENOTSUP", "operation not supported"},
-+ {96, "EPFNOSUPPORT", "protocol family not supported"},
-+ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
-+ {98, "EADDRINUSE", "address already in use"},
-+ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {100, "ENETDOWN", "network is down"},
-+ {101, "ENETUNREACH", "network is unreachable"},
-+ {102, "ENETRESET", "network dropped connection on reset"},
-+ {103, "ECONNABORTED", "software caused connection abort"},
-+ {104, "ECONNRESET", "connection reset by peer"},
-+ {105, "ENOBUFS", "no buffer space available"},
-+ {106, "EISCONN", "transport endpoint is already connected"},
-+ {107, "ENOTCONN", "transport endpoint is not connected"},
-+ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
-+ {109, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {110, "ETIMEDOUT", "connection timed out"},
-+ {111, "ECONNREFUSED", "connection refused"},
-+ {112, "EHOSTDOWN", "host is down"},
-+ {113, "EHOSTUNREACH", "no route to host"},
-+ {114, "EALREADY", "operation already in progress"},
-+ {115, "EINPROGRESS", "operation now in progress"},
-+ {116, "ESTALE", "stale file handle"},
-+ {117, "EUCLEAN", "structure needs cleaning"},
-+ {118, "ENOTNAM", "not a XENIX named type file"},
-+ {119, "ENAVAIL", "no XENIX semaphores available"},
-+ {120, "EISNAM", "is a named type file"},
-+ {121, "EREMOTEIO", "remote I/O error"},
-+ {122, "EDQUOT", "disk quota exceeded"},
-+ {123, "ENOMEDIUM", "no medium found"},
-+ {124, "EMEDIUMTYPE", "wrong medium type"},
-+ {125, "ECANCELED", "operation canceled"},
-+ {126, "ENOKEY", "required key not available"},
-+ {127, "EKEYEXPIRED", "key has expired"},
-+ {128, "EKEYREVOKED", "key has been revoked"},
-+ {129, "EKEYREJECTED", "key was rejected by service"},
-+ {130, "EOWNERDEAD", "owner died"},
-+ {131, "ENOTRECOVERABLE", "state not recoverable"},
-+ {132, "ERFKILL", "operation not possible due to RF-kill"},
-+ {133, "EHWPOISON", "memory page has hardware error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/breakpoint trap",
-- 6: "aborted",
-- 7: "bus error",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "user defined signal 1",
-- 11: "segmentation fault",
-- 12: "user defined signal 2",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "stack fault",
-- 17: "child exited",
-- 18: "continued",
-- 19: "stopped (signal)",
-- 20: "stopped",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "urgent I/O condition",
-- 24: "CPU time limit exceeded",
-- 25: "file size limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window changed",
-- 29: "I/O possible",
-- 30: "power failure",
-- 31: "bad system call",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/breakpoint trap"},
-+ {6, "SIGABRT", "aborted"},
-+ {7, "SIGBUS", "bus error"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGUSR1", "user defined signal 1"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGUSR2", "user defined signal 2"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGSTKFLT", "stack fault"},
-+ {17, "SIGCHLD", "child exited"},
-+ {18, "SIGCONT", "continued"},
-+ {19, "SIGSTOP", "stopped (signal)"},
-+ {20, "SIGTSTP", "stopped"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGURG", "urgent I/O condition"},
-+ {24, "SIGXCPU", "CPU time limit exceeded"},
-+ {25, "SIGXFSZ", "file size limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window changed"},
-+ {29, "SIGIO", "I/O possible"},
-+ {30, "SIGPWR", "power failure"},
-+ {31, "SIGSYS", "bad system call"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
-index 95de199f..079762fa 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
-@@ -1,915 +1,132 @@
--// mkerrors.sh -m64
--// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
-+// mkerrors.sh -Wall -Werror -static -I/tmp/include
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build sparc64,linux
-
--// Created by cgo -godefs - DO NOT EDIT
--// cgo -godefs -- -m64 _const.go
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
-+// cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
-
- package unix
-
- import "syscall"
-
- const (
-- AF_ALG = 0x26
-- AF_APPLETALK = 0x5
-- AF_ASH = 0x12
-- AF_ATMPVC = 0x8
-- AF_ATMSVC = 0x14
-- AF_AX25 = 0x3
-- AF_BLUETOOTH = 0x1f
-- AF_BRIDGE = 0x7
-- AF_CAIF = 0x25
-- AF_CAN = 0x1d
-- AF_DECnet = 0xc
-- AF_ECONET = 0x13
-- AF_FILE = 0x1
-- AF_IB = 0x1b
-- AF_IEEE802154 = 0x24
-- AF_INET = 0x2
-- AF_INET6 = 0xa
-- AF_IPX = 0x4
-- AF_IRDA = 0x17
-- AF_ISDN = 0x22
-- AF_IUCV = 0x20
-- AF_KCM = 0x29
-- AF_KEY = 0xf
-- AF_LLC = 0x1a
-- AF_LOCAL = 0x1
-- AF_MAX = 0x2a
-- AF_MPLS = 0x1c
-- AF_NETBEUI = 0xd
-- AF_NETLINK = 0x10
-- AF_NETROM = 0x6
-- AF_NFC = 0x27
-- AF_PACKET = 0x11
-- AF_PHONET = 0x23
-- AF_PPPOX = 0x18
-- AF_RDS = 0x15
-- AF_ROSE = 0xb
-- AF_ROUTE = 0x10
-- AF_RXRPC = 0x21
-- AF_SECURITY = 0xe
-- AF_SNA = 0x16
-- AF_TIPC = 0x1e
-- AF_UNIX = 0x1
-- AF_UNSPEC = 0x0
-- AF_VSOCK = 0x28
-- AF_WANPIPE = 0x19
-- AF_X25 = 0x9
-- ALG_OP_DECRYPT = 0x0
-- ALG_OP_ENCRYPT = 0x1
-- ALG_SET_AEAD_ASSOCLEN = 0x4
-- ALG_SET_AEAD_AUTHSIZE = 0x5
-- ALG_SET_IV = 0x2
-- ALG_SET_KEY = 0x1
-- ALG_SET_OP = 0x3
-- ARPHRD_6LOWPAN = 0x339
-- ARPHRD_ADAPT = 0x108
-- ARPHRD_APPLETLK = 0x8
-- ARPHRD_ARCNET = 0x7
-- ARPHRD_ASH = 0x30d
-- ARPHRD_ATM = 0x13
-- ARPHRD_AX25 = 0x3
-- ARPHRD_BIF = 0x307
-- ARPHRD_CAIF = 0x336
-- ARPHRD_CAN = 0x118
-- ARPHRD_CHAOS = 0x5
-- ARPHRD_CISCO = 0x201
-- ARPHRD_CSLIP = 0x101
-- ARPHRD_CSLIP6 = 0x103
-- ARPHRD_DDCMP = 0x205
-- ARPHRD_DLCI = 0xf
-- ARPHRD_ECONET = 0x30e
-- ARPHRD_EETHER = 0x2
-- ARPHRD_ETHER = 0x1
-- ARPHRD_EUI64 = 0x1b
-- ARPHRD_FCAL = 0x311
-- ARPHRD_FCFABRIC = 0x313
-- ARPHRD_FCPL = 0x312
-- ARPHRD_FCPP = 0x310
-- ARPHRD_FDDI = 0x306
-- ARPHRD_FRAD = 0x302
-- ARPHRD_HDLC = 0x201
-- ARPHRD_HIPPI = 0x30c
-- ARPHRD_HWX25 = 0x110
-- ARPHRD_IEEE1394 = 0x18
-- ARPHRD_IEEE802 = 0x6
-- ARPHRD_IEEE80211 = 0x321
-- ARPHRD_IEEE80211_PRISM = 0x322
-- ARPHRD_IEEE80211_RADIOTAP = 0x323
-- ARPHRD_IEEE802154 = 0x324
-- ARPHRD_IEEE802154_MONITOR = 0x325
-- ARPHRD_IEEE802_TR = 0x320
-- ARPHRD_INFINIBAND = 0x20
-- ARPHRD_IP6GRE = 0x337
-- ARPHRD_IPDDP = 0x309
-- ARPHRD_IPGRE = 0x30a
-- ARPHRD_IRDA = 0x30f
-- ARPHRD_LAPB = 0x204
-- ARPHRD_LOCALTLK = 0x305
-- ARPHRD_LOOPBACK = 0x304
-- ARPHRD_METRICOM = 0x17
-- ARPHRD_NETLINK = 0x338
-- ARPHRD_NETROM = 0x0
-- ARPHRD_NONE = 0xfffe
-- ARPHRD_PHONET = 0x334
-- ARPHRD_PHONET_PIPE = 0x335
-- ARPHRD_PIMREG = 0x30b
-- ARPHRD_PPP = 0x200
-- ARPHRD_PRONET = 0x4
-- ARPHRD_RAWHDLC = 0x206
-- ARPHRD_ROSE = 0x10e
-- ARPHRD_RSRVD = 0x104
-- ARPHRD_SIT = 0x308
-- ARPHRD_SKIP = 0x303
-- ARPHRD_SLIP = 0x100
-- ARPHRD_SLIP6 = 0x102
-- ARPHRD_TUNNEL = 0x300
-- ARPHRD_TUNNEL6 = 0x301
-- ARPHRD_VOID = 0xffff
-- ARPHRD_X25 = 0x10f
- ASI_LEON_DFLUSH = 0x11
- ASI_LEON_IFLUSH = 0x10
- ASI_LEON_MMUFLUSH = 0x18
-- B0 = 0x0
-- B1000000 = 0x100c
-- B110 = 0x3
-+ B1000000 = 0x1008
- B115200 = 0x1002
-- B1152000 = 0x100d
-- B1200 = 0x9
-- B134 = 0x4
-- B150 = 0x5
-- B1500000 = 0x100e
-- B153600 = 0x1006
-- B1800 = 0xa
-- B19200 = 0xe
-- B200 = 0x6
-- B2000000 = 0x100f
-+ B1152000 = 0x1009
-+ B1500000 = 0x100a
-+ B2000000 = 0x100b
- B230400 = 0x1003
-- B2400 = 0xb
-- B300 = 0x7
-- B307200 = 0x1007
-- B38400 = 0xf
-+ B2500000 = 0x100c
-+ B3000000 = 0x100d
-+ B3500000 = 0x100e
-+ B4000000 = 0x100f
- B460800 = 0x1004
-- B4800 = 0xc
-- B50 = 0x1
-- B500000 = 0x100a
-+ B500000 = 0x1005
- B57600 = 0x1001
-- B576000 = 0x100b
-- B600 = 0x8
-- B614400 = 0x1008
-- B75 = 0x2
-- B76800 = 0x1005
-- B921600 = 0x1009
-- B9600 = 0xd
-- BLKBSZGET = 0x80081270
-- BLKBSZSET = 0x40081271
-- BLKFLSBUF = 0x1261
-- BLKFRAGET = 0x1265
-- BLKFRASET = 0x1264
-- BLKGETSIZE = 0x1260
-- BLKGETSIZE64 = 0x80081272
-- BLKRAGET = 0x1263
-- BLKRASET = 0x1262
-- BLKROGET = 0x125e
-- BLKROSET = 0x125d
-- BLKRRPART = 0x125f
-- BLKSECTGET = 0x1267
-- BLKSECTSET = 0x1266
-- BLKSSZGET = 0x1268
-+ B576000 = 0x1006
-+ B921600 = 0x1007
-+ BLKBSZGET = 0x40081270
-+ BLKBSZSET = 0x80081271
-+ BLKFLSBUF = 0x20001261
-+ BLKFRAGET = 0x20001265
-+ BLKFRASET = 0x20001264
-+ BLKGETSIZE = 0x20001260
-+ BLKGETSIZE64 = 0x40081272
-+ BLKPBSZGET = 0x2000127b
-+ BLKRAGET = 0x20001263
-+ BLKRASET = 0x20001262
-+ BLKROGET = 0x2000125e
-+ BLKROSET = 0x2000125d
-+ BLKRRPART = 0x2000125f
-+ BLKSECTGET = 0x20001267
-+ BLKSECTSET = 0x20001266
-+ BLKSSZGET = 0x20001268
- BOTHER = 0x1000
-- BPF_A = 0x10
-- BPF_ABS = 0x20
-- BPF_ADD = 0x0
-- BPF_ALU = 0x4
-- BPF_AND = 0x50
-- BPF_B = 0x10
-- BPF_DIV = 0x30
-- BPF_H = 0x8
-- BPF_IMM = 0x0
-- BPF_IND = 0x40
-- BPF_JA = 0x0
-- BPF_JEQ = 0x10
-- BPF_JGE = 0x30
-- BPF_JGT = 0x20
-- BPF_JMP = 0x5
-- BPF_JSET = 0x40
-- BPF_K = 0x0
-- BPF_LD = 0x0
-- BPF_LDX = 0x1
-- BPF_LEN = 0x80
-- BPF_LL_OFF = -0x200000
-- BPF_LSH = 0x60
-- BPF_MAJOR_VERSION = 0x1
-- BPF_MAXINSNS = 0x1000
-- BPF_MEM = 0x60
-- BPF_MEMWORDS = 0x10
-- BPF_MINOR_VERSION = 0x1
-- BPF_MISC = 0x7
-- BPF_MOD = 0x90
-- BPF_MSH = 0xa0
-- BPF_MUL = 0x20
-- BPF_NEG = 0x80
-- BPF_NET_OFF = -0x100000
-- BPF_OR = 0x40
-- BPF_RET = 0x6
-- BPF_RSH = 0x70
-- BPF_ST = 0x2
-- BPF_STX = 0x3
-- BPF_SUB = 0x10
-- BPF_TAX = 0x0
-- BPF_TXA = 0x80
-- BPF_W = 0x0
-- BPF_X = 0x8
-- BPF_XOR = 0xa0
-- BRKINT = 0x2
-- BS0 = 0x0
- BS1 = 0x2000
- BSDLY = 0x2000
-- CAN_BCM = 0x2
-- CAN_EFF_FLAG = 0x80000000
-- CAN_EFF_ID_BITS = 0x1d
-- CAN_EFF_MASK = 0x1fffffff
-- CAN_ERR_FLAG = 0x20000000
-- CAN_ERR_MASK = 0x1fffffff
-- CAN_INV_FILTER = 0x20000000
-- CAN_ISOTP = 0x6
-- CAN_MAX_DLC = 0x8
-- CAN_MAX_DLEN = 0x8
-- CAN_MCNET = 0x5
-- CAN_MTU = 0x10
-- CAN_NPROTO = 0x7
-- CAN_RAW = 0x1
-- CAN_RTR_FLAG = 0x40000000
-- CAN_SFF_ID_BITS = 0xb
-- CAN_SFF_MASK = 0x7ff
-- CAN_TP16 = 0x3
-- CAN_TP20 = 0x4
- CBAUD = 0x100f
- CBAUDEX = 0x1000
-- CFLUSH = 0xf
- CIBAUD = 0x100f0000
- CLOCAL = 0x800
-- CLOCK_BOOTTIME = 0x7
-- CLOCK_BOOTTIME_ALARM = 0x9
-- CLOCK_DEFAULT = 0x0
-- CLOCK_EXT = 0x1
-- CLOCK_INT = 0x2
-- CLOCK_MONOTONIC = 0x1
-- CLOCK_MONOTONIC_COARSE = 0x6
-- CLOCK_MONOTONIC_RAW = 0x4
-- CLOCK_PROCESS_CPUTIME_ID = 0x2
-- CLOCK_REALTIME = 0x0
-- CLOCK_REALTIME_ALARM = 0x8
-- CLOCK_REALTIME_COARSE = 0x5
-- CLOCK_TAI = 0xb
-- CLOCK_THREAD_CPUTIME_ID = 0x3
-- CLOCK_TXFROMRX = 0x4
-- CLOCK_TXINT = 0x3
-- CLONE_CHILD_CLEARTID = 0x200000
-- CLONE_CHILD_SETTID = 0x1000000
-- CLONE_DETACHED = 0x400000
-- CLONE_FILES = 0x400
-- CLONE_FS = 0x200
-- CLONE_IO = 0x80000000
-- CLONE_NEWCGROUP = 0x2000000
-- CLONE_NEWIPC = 0x8000000
-- CLONE_NEWNET = 0x40000000
-- CLONE_NEWNS = 0x20000
-- CLONE_NEWPID = 0x20000000
-- CLONE_NEWUSER = 0x10000000
-- CLONE_NEWUTS = 0x4000000
-- CLONE_PARENT = 0x8000
-- CLONE_PARENT_SETTID = 0x100000
-- CLONE_PTRACE = 0x2000
-- CLONE_SETTLS = 0x80000
-- CLONE_SIGHAND = 0x800
-- CLONE_SYSVSEM = 0x40000
-- CLONE_THREAD = 0x10000
-- CLONE_UNTRACED = 0x800000
-- CLONE_VFORK = 0x4000
-- CLONE_VM = 0x100
-- CMSPAR = 0x40000000
-- CR0 = 0x0
- CR1 = 0x200
- CR2 = 0x400
- CR3 = 0x600
- CRDLY = 0x600
- CREAD = 0x80
-- CRTSCTS = 0x80000000
-- CS5 = 0x0
- CS6 = 0x10
- CS7 = 0x20
- CS8 = 0x30
-- CSIGNAL = 0xff
- CSIZE = 0x30
-- CSTART = 0x11
-- CSTATUS = 0x0
-- CSTOP = 0x13
- CSTOPB = 0x40
-- CSUSP = 0x1a
-- DT_BLK = 0x6
-- DT_CHR = 0x2
-- DT_DIR = 0x4
-- DT_FIFO = 0x1
-- DT_LNK = 0xa
-- DT_REG = 0x8
-- DT_SOCK = 0xc
-- DT_UNKNOWN = 0x0
-- DT_WHT = 0xe
-- ECHO = 0x8
- ECHOCTL = 0x200
- ECHOE = 0x10
- ECHOK = 0x20
- ECHOKE = 0x800
- ECHONL = 0x40
- ECHOPRT = 0x400
-+ EFD_CLOEXEC = 0x400000
-+ EFD_NONBLOCK = 0x4000
- EMT_TAGOVF = 0x1
-- ENCODING_DEFAULT = 0x0
-- ENCODING_FM_MARK = 0x3
-- ENCODING_FM_SPACE = 0x4
-- ENCODING_MANCHESTER = 0x5
-- ENCODING_NRZ = 0x1
-- ENCODING_NRZI = 0x2
-- EPOLLERR = 0x8
-- EPOLLET = 0x80000000
-- EPOLLEXCLUSIVE = 0x10000000
-- EPOLLHUP = 0x10
-- EPOLLIN = 0x1
-- EPOLLMSG = 0x400
-- EPOLLONESHOT = 0x40000000
-- EPOLLOUT = 0x4
-- EPOLLPRI = 0x2
-- EPOLLRDBAND = 0x80
-- EPOLLRDHUP = 0x2000
-- EPOLLRDNORM = 0x40
-- EPOLLWAKEUP = 0x20000000
-- EPOLLWRBAND = 0x200
-- EPOLLWRNORM = 0x100
- EPOLL_CLOEXEC = 0x400000
-- EPOLL_CTL_ADD = 0x1
-- EPOLL_CTL_DEL = 0x2
-- EPOLL_CTL_MOD = 0x3
-- ETH_P_1588 = 0x88f7
-- ETH_P_8021AD = 0x88a8
-- ETH_P_8021AH = 0x88e7
-- ETH_P_8021Q = 0x8100
-- ETH_P_80221 = 0x8917
-- ETH_P_802_2 = 0x4
-- ETH_P_802_3 = 0x1
-- ETH_P_802_3_MIN = 0x600
-- ETH_P_802_EX1 = 0x88b5
-- ETH_P_AARP = 0x80f3
-- ETH_P_AF_IUCV = 0xfbfb
-- ETH_P_ALL = 0x3
-- ETH_P_AOE = 0x88a2
-- ETH_P_ARCNET = 0x1a
-- ETH_P_ARP = 0x806
-- ETH_P_ATALK = 0x809b
-- ETH_P_ATMFATE = 0x8884
-- ETH_P_ATMMPOA = 0x884c
-- ETH_P_AX25 = 0x2
-- ETH_P_BATMAN = 0x4305
-- ETH_P_BPQ = 0x8ff
-- ETH_P_CAIF = 0xf7
-- ETH_P_CAN = 0xc
-- ETH_P_CANFD = 0xd
-- ETH_P_CONTROL = 0x16
-- ETH_P_CUST = 0x6006
-- ETH_P_DDCMP = 0x6
-- ETH_P_DEC = 0x6000
-- ETH_P_DIAG = 0x6005
-- ETH_P_DNA_DL = 0x6001
-- ETH_P_DNA_RC = 0x6002
-- ETH_P_DNA_RT = 0x6003
-- ETH_P_DSA = 0x1b
-- ETH_P_ECONET = 0x18
-- ETH_P_EDSA = 0xdada
-- ETH_P_FCOE = 0x8906
-- ETH_P_FIP = 0x8914
-- ETH_P_HDLC = 0x19
-- ETH_P_HSR = 0x892f
-- ETH_P_IEEE802154 = 0xf6
-- ETH_P_IEEEPUP = 0xa00
-- ETH_P_IEEEPUPAT = 0xa01
-- ETH_P_IP = 0x800
-- ETH_P_IPV6 = 0x86dd
-- ETH_P_IPX = 0x8137
-- ETH_P_IRDA = 0x17
-- ETH_P_LAT = 0x6004
-- ETH_P_LINK_CTL = 0x886c
-- ETH_P_LOCALTALK = 0x9
-- ETH_P_LOOP = 0x60
-- ETH_P_LOOPBACK = 0x9000
-- ETH_P_MACSEC = 0x88e5
-- ETH_P_MOBITEX = 0x15
-- ETH_P_MPLS_MC = 0x8848
-- ETH_P_MPLS_UC = 0x8847
-- ETH_P_MVRP = 0x88f5
-- ETH_P_PAE = 0x888e
-- ETH_P_PAUSE = 0x8808
-- ETH_P_PHONET = 0xf5
-- ETH_P_PPPTALK = 0x10
-- ETH_P_PPP_DISC = 0x8863
-- ETH_P_PPP_MP = 0x8
-- ETH_P_PPP_SES = 0x8864
-- ETH_P_PRP = 0x88fb
-- ETH_P_PUP = 0x200
-- ETH_P_PUPAT = 0x201
-- ETH_P_QINQ1 = 0x9100
-- ETH_P_QINQ2 = 0x9200
-- ETH_P_QINQ3 = 0x9300
-- ETH_P_RARP = 0x8035
-- ETH_P_SCA = 0x6007
-- ETH_P_SLOW = 0x8809
-- ETH_P_SNAP = 0x5
-- ETH_P_TDLS = 0x890d
-- ETH_P_TEB = 0x6558
-- ETH_P_TIPC = 0x88ca
-- ETH_P_TRAILER = 0x1c
-- ETH_P_TR_802_2 = 0x11
-- ETH_P_TSN = 0x22f0
-- ETH_P_WAN_PPP = 0x7
-- ETH_P_WCCP = 0x883e
-- ETH_P_X25 = 0x805
-- ETH_P_XDSA = 0xf8
-- EXTA = 0xe
-- EXTB = 0xf
- EXTPROC = 0x10000
-- FALLOC_FL_COLLAPSE_RANGE = 0x8
-- FALLOC_FL_INSERT_RANGE = 0x20
-- FALLOC_FL_KEEP_SIZE = 0x1
-- FALLOC_FL_NO_HIDE_STALE = 0x4
-- FALLOC_FL_PUNCH_HOLE = 0x2
-- FALLOC_FL_ZERO_RANGE = 0x10
-- FD_CLOEXEC = 0x1
-- FD_SETSIZE = 0x400
-- FF0 = 0x0
- FF1 = 0x8000
- FFDLY = 0x8000
-- FLUSHO = 0x2000
-- F_DUPFD = 0x0
-- F_DUPFD_CLOEXEC = 0x406
-- F_EXLCK = 0x4
-- F_GETFD = 0x1
-- F_GETFL = 0x3
-- F_GETLEASE = 0x401
-+ FLUSHO = 0x1000
-+ FS_IOC_ENABLE_VERITY = 0x80806685
-+ FS_IOC_GETFLAGS = 0x40086601
-+ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
-+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
-+ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
- F_GETLK = 0x7
- F_GETLK64 = 0x7
- F_GETOWN = 0x5
-- F_GETOWN_EX = 0x10
-- F_GETPIPE_SZ = 0x408
-- F_GETSIG = 0xb
-- F_LOCK = 0x1
-- F_NOTIFY = 0x402
-- F_OFD_GETLK = 0x24
-- F_OFD_SETLK = 0x25
-- F_OFD_SETLKW = 0x26
-- F_OK = 0x0
- F_RDLCK = 0x1
-- F_SETFD = 0x2
-- F_SETFL = 0x4
-- F_SETLEASE = 0x400
- F_SETLK = 0x8
- F_SETLK64 = 0x8
- F_SETLKW = 0x9
- F_SETLKW64 = 0x9
- F_SETOWN = 0x6
-- F_SETOWN_EX = 0xf
-- F_SETPIPE_SZ = 0x407
-- F_SETSIG = 0xa
-- F_SHLCK = 0x8
-- F_TEST = 0x3
-- F_TLOCK = 0x2
-- F_ULOCK = 0x0
- F_UNLCK = 0x3
- F_WRLCK = 0x2
-- GRND_NONBLOCK = 0x1
-- GRND_RANDOM = 0x2
- HUPCL = 0x400
-- IBSHIFT = 0x10
- ICANON = 0x2
-- ICMPV6_FILTER = 0x1
-- ICRNL = 0x100
- IEXTEN = 0x8000
-- IFA_F_DADFAILED = 0x8
-- IFA_F_DEPRECATED = 0x20
-- IFA_F_HOMEADDRESS = 0x10
-- IFA_F_MANAGETEMPADDR = 0x100
-- IFA_F_MCAUTOJOIN = 0x400
-- IFA_F_NODAD = 0x2
-- IFA_F_NOPREFIXROUTE = 0x200
-- IFA_F_OPTIMISTIC = 0x4
-- IFA_F_PERMANENT = 0x80
-- IFA_F_SECONDARY = 0x1
-- IFA_F_STABLE_PRIVACY = 0x800
-- IFA_F_TEMPORARY = 0x1
-- IFA_F_TENTATIVE = 0x40
-- IFA_MAX = 0x8
-- IFF_ALLMULTI = 0x200
-- IFF_ATTACH_QUEUE = 0x200
-- IFF_AUTOMEDIA = 0x4000
-- IFF_BROADCAST = 0x2
-- IFF_DEBUG = 0x4
-- IFF_DETACH_QUEUE = 0x400
-- IFF_DORMANT = 0x20000
-- IFF_DYNAMIC = 0x8000
-- IFF_ECHO = 0x40000
-- IFF_LOOPBACK = 0x8
-- IFF_LOWER_UP = 0x10000
-- IFF_MASTER = 0x400
-- IFF_MULTICAST = 0x1000
-- IFF_MULTI_QUEUE = 0x100
-- IFF_NOARP = 0x80
-- IFF_NOFILTER = 0x1000
-- IFF_NOTRAILERS = 0x20
-- IFF_NO_PI = 0x1000
-- IFF_ONE_QUEUE = 0x2000
-- IFF_PERSIST = 0x800
-- IFF_POINTOPOINT = 0x10
-- IFF_PORTSEL = 0x2000
-- IFF_PROMISC = 0x100
-- IFF_RUNNING = 0x40
-- IFF_SLAVE = 0x800
-- IFF_TAP = 0x2
-- IFF_TUN = 0x1
-- IFF_TUN_EXCL = 0x8000
-- IFF_UP = 0x1
-- IFF_VNET_HDR = 0x4000
-- IFF_VOLATILE = 0x70c5a
-- IFNAMSIZ = 0x10
-- IGNBRK = 0x1
-- IGNCR = 0x80
-- IGNPAR = 0x4
-- IMAXBEL = 0x2000
-- INLCR = 0x40
-- INPCK = 0x10
-- IN_ACCESS = 0x1
-- IN_ALL_EVENTS = 0xfff
-- IN_ATTRIB = 0x4
-- IN_CLASSA_HOST = 0xffffff
-- IN_CLASSA_MAX = 0x80
-- IN_CLASSA_NET = 0xff000000
-- IN_CLASSA_NSHIFT = 0x18
-- IN_CLASSB_HOST = 0xffff
-- IN_CLASSB_MAX = 0x10000
-- IN_CLASSB_NET = 0xffff0000
-- IN_CLASSB_NSHIFT = 0x10
-- IN_CLASSC_HOST = 0xff
-- IN_CLASSC_NET = 0xffffff00
-- IN_CLASSC_NSHIFT = 0x8
- IN_CLOEXEC = 0x400000
-- IN_CLOSE = 0x18
-- IN_CLOSE_NOWRITE = 0x10
-- IN_CLOSE_WRITE = 0x8
-- IN_CREATE = 0x100
-- IN_DELETE = 0x200
-- IN_DELETE_SELF = 0x400
-- IN_DONT_FOLLOW = 0x2000000
-- IN_EXCL_UNLINK = 0x4000000
-- IN_IGNORED = 0x8000
-- IN_ISDIR = 0x40000000
-- IN_LOOPBACKNET = 0x7f
-- IN_MASK_ADD = 0x20000000
-- IN_MODIFY = 0x2
-- IN_MOVE = 0xc0
-- IN_MOVED_FROM = 0x40
-- IN_MOVED_TO = 0x80
-- IN_MOVE_SELF = 0x800
- IN_NONBLOCK = 0x4000
-- IN_ONESHOT = 0x80000000
-- IN_ONLYDIR = 0x1000000
-- IN_OPEN = 0x20
-- IN_Q_OVERFLOW = 0x4000
-- IN_UNMOUNT = 0x2000
-- IPPROTO_AH = 0x33
-- IPPROTO_BEETPH = 0x5e
-- IPPROTO_COMP = 0x6c
-- IPPROTO_DCCP = 0x21
-- IPPROTO_DSTOPTS = 0x3c
-- IPPROTO_EGP = 0x8
-- IPPROTO_ENCAP = 0x62
-- IPPROTO_ESP = 0x32
-- IPPROTO_FRAGMENT = 0x2c
-- IPPROTO_GRE = 0x2f
-- IPPROTO_HOPOPTS = 0x0
-- IPPROTO_ICMP = 0x1
-- IPPROTO_ICMPV6 = 0x3a
-- IPPROTO_IDP = 0x16
-- IPPROTO_IGMP = 0x2
-- IPPROTO_IP = 0x0
-- IPPROTO_IPIP = 0x4
-- IPPROTO_IPV6 = 0x29
-- IPPROTO_MH = 0x87
-- IPPROTO_MPLS = 0x89
-- IPPROTO_MTP = 0x5c
-- IPPROTO_NONE = 0x3b
-- IPPROTO_PIM = 0x67
-- IPPROTO_PUP = 0xc
-- IPPROTO_RAW = 0xff
-- IPPROTO_ROUTING = 0x2b
-- IPPROTO_RSVP = 0x2e
-- IPPROTO_SCTP = 0x84
-- IPPROTO_TCP = 0x6
-- IPPROTO_TP = 0x1d
-- IPPROTO_UDP = 0x11
-- IPPROTO_UDPLITE = 0x88
-- IPV6_2292DSTOPTS = 0x4
-- IPV6_2292HOPLIMIT = 0x8
-- IPV6_2292HOPOPTS = 0x3
-- IPV6_2292PKTINFO = 0x2
-- IPV6_2292PKTOPTIONS = 0x6
-- IPV6_2292RTHDR = 0x5
-- IPV6_ADDRFORM = 0x1
-- IPV6_ADD_MEMBERSHIP = 0x14
-- IPV6_AUTHHDR = 0xa
-- IPV6_CHECKSUM = 0x7
-- IPV6_DONTFRAG = 0x3e
-- IPV6_DROP_MEMBERSHIP = 0x15
-- IPV6_DSTOPTS = 0x3b
-- IPV6_HDRINCL = 0x24
-- IPV6_HOPLIMIT = 0x34
-- IPV6_HOPOPTS = 0x36
-- IPV6_IPSEC_POLICY = 0x22
-- IPV6_JOIN_ANYCAST = 0x1b
-- IPV6_JOIN_GROUP = 0x14
-- IPV6_LEAVE_ANYCAST = 0x1c
-- IPV6_LEAVE_GROUP = 0x15
-- IPV6_MTU = 0x18
-- IPV6_MTU_DISCOVER = 0x17
-- IPV6_MULTICAST_HOPS = 0x12
-- IPV6_MULTICAST_IF = 0x11
-- IPV6_MULTICAST_LOOP = 0x13
-- IPV6_NEXTHOP = 0x9
-- IPV6_PATHMTU = 0x3d
-- IPV6_PKTINFO = 0x32
-- IPV6_PMTUDISC_DO = 0x2
-- IPV6_PMTUDISC_DONT = 0x0
-- IPV6_PMTUDISC_INTERFACE = 0x4
-- IPV6_PMTUDISC_OMIT = 0x5
-- IPV6_PMTUDISC_PROBE = 0x3
-- IPV6_PMTUDISC_WANT = 0x1
-- IPV6_RECVDSTOPTS = 0x3a
-- IPV6_RECVERR = 0x19
-- IPV6_RECVHOPLIMIT = 0x33
-- IPV6_RECVHOPOPTS = 0x35
-- IPV6_RECVPATHMTU = 0x3c
-- IPV6_RECVPKTINFO = 0x31
-- IPV6_RECVRTHDR = 0x38
-- IPV6_RECVTCLASS = 0x42
-- IPV6_ROUTER_ALERT = 0x16
-- IPV6_RTHDR = 0x39
-- IPV6_RTHDRDSTOPTS = 0x37
-- IPV6_RTHDR_LOOSE = 0x0
-- IPV6_RTHDR_STRICT = 0x1
-- IPV6_RTHDR_TYPE_0 = 0x0
-- IPV6_RXDSTOPTS = 0x3b
-- IPV6_RXHOPOPTS = 0x36
-- IPV6_TCLASS = 0x43
-- IPV6_UNICAST_HOPS = 0x10
-- IPV6_V6ONLY = 0x1a
-- IPV6_XFRM_POLICY = 0x23
-- IP_ADD_MEMBERSHIP = 0x23
-- IP_ADD_SOURCE_MEMBERSHIP = 0x27
-- IP_BIND_ADDRESS_NO_PORT = 0x18
-- IP_BLOCK_SOURCE = 0x26
-- IP_CHECKSUM = 0x17
-- IP_DEFAULT_MULTICAST_LOOP = 0x1
-- IP_DEFAULT_MULTICAST_TTL = 0x1
-- IP_DF = 0x4000
-- IP_DROP_MEMBERSHIP = 0x24
-- IP_DROP_SOURCE_MEMBERSHIP = 0x28
-- IP_FREEBIND = 0xf
-- IP_HDRINCL = 0x3
-- IP_IPSEC_POLICY = 0x10
-- IP_MAXPACKET = 0xffff
-- IP_MAX_MEMBERSHIPS = 0x14
-- IP_MF = 0x2000
-- IP_MINTTL = 0x15
-- IP_MSFILTER = 0x29
-- IP_MSS = 0x240
-- IP_MTU = 0xe
-- IP_MTU_DISCOVER = 0xa
-- IP_MULTICAST_ALL = 0x31
-- IP_MULTICAST_IF = 0x20
-- IP_MULTICAST_LOOP = 0x22
-- IP_MULTICAST_TTL = 0x21
-- IP_NODEFRAG = 0x16
-- IP_OFFMASK = 0x1fff
-- IP_OPTIONS = 0x4
-- IP_ORIGDSTADDR = 0x14
-- IP_PASSSEC = 0x12
-- IP_PKTINFO = 0x8
-- IP_PKTOPTIONS = 0x9
-- IP_PMTUDISC = 0xa
-- IP_PMTUDISC_DO = 0x2
-- IP_PMTUDISC_DONT = 0x0
-- IP_PMTUDISC_INTERFACE = 0x4
-- IP_PMTUDISC_OMIT = 0x5
-- IP_PMTUDISC_PROBE = 0x3
-- IP_PMTUDISC_WANT = 0x1
-- IP_RECVERR = 0xb
-- IP_RECVOPTS = 0x6
-- IP_RECVORIGDSTADDR = 0x14
-- IP_RECVRETOPTS = 0x7
-- IP_RECVTOS = 0xd
-- IP_RECVTTL = 0xc
-- IP_RETOPTS = 0x7
-- IP_RF = 0x8000
-- IP_ROUTER_ALERT = 0x5
-- IP_TOS = 0x1
-- IP_TRANSPARENT = 0x13
-- IP_TTL = 0x2
-- IP_UNBLOCK_SOURCE = 0x25
-- IP_UNICAST_IF = 0x32
-- IP_XFRM_POLICY = 0x11
-+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
- ISIG = 0x1
-- ISTRIP = 0x20
- IUCLC = 0x200
-- IUTF8 = 0x4000
-- IXANY = 0x800
- IXOFF = 0x1000
- IXON = 0x400
-- LINUX_REBOOT_CMD_CAD_OFF = 0x0
-- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
-- LINUX_REBOOT_CMD_HALT = 0xcdef0123
-- LINUX_REBOOT_CMD_KEXEC = 0x45584543
-- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
-- LINUX_REBOOT_CMD_RESTART = 0x1234567
-- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
-- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
-- LINUX_REBOOT_MAGIC1 = 0xfee1dead
-- LINUX_REBOOT_MAGIC2 = 0x28121969
-- LOCK_EX = 0x2
-- LOCK_NB = 0x4
-- LOCK_SH = 0x1
-- LOCK_UN = 0x8
-- MADV_DODUMP = 0x11
-- MADV_DOFORK = 0xb
-- MADV_DONTDUMP = 0x10
-- MADV_DONTFORK = 0xa
-- MADV_DONTNEED = 0x4
-- MADV_FREE = 0x8
-- MADV_HUGEPAGE = 0xe
-- MADV_HWPOISON = 0x64
-- MADV_MERGEABLE = 0xc
-- MADV_NOHUGEPAGE = 0xf
-- MADV_NORMAL = 0x0
-- MADV_RANDOM = 0x1
-- MADV_REMOVE = 0x9
-- MADV_SEQUENTIAL = 0x2
-- MADV_UNMERGEABLE = 0xd
-- MADV_WILLNEED = 0x3
- MAP_ANON = 0x20
- MAP_ANONYMOUS = 0x20
- MAP_DENYWRITE = 0x800
- MAP_EXECUTABLE = 0x1000
-- MAP_FILE = 0x0
-- MAP_FIXED = 0x10
- MAP_GROWSDOWN = 0x200
- MAP_HUGETLB = 0x40000
-- MAP_HUGE_MASK = 0x3f
-- MAP_HUGE_SHIFT = 0x1a
- MAP_LOCKED = 0x100
- MAP_NONBLOCK = 0x10000
- MAP_NORESERVE = 0x40
- MAP_POPULATE = 0x8000
-- MAP_PRIVATE = 0x2
- MAP_RENAME = 0x20
-- MAP_SHARED = 0x1
- MAP_STACK = 0x20000
-- MAP_TYPE = 0xf
-+ MAP_SYNC = 0x80000
- MCL_CURRENT = 0x2000
- MCL_FUTURE = 0x4000
- MCL_ONFAULT = 0x8000
-- MNT_DETACH = 0x2
-- MNT_EXPIRE = 0x4
-- MNT_FORCE = 0x1
-- MSG_BATCH = 0x40000
-- MSG_CMSG_CLOEXEC = 0x40000000
-- MSG_CONFIRM = 0x800
-- MSG_CTRUNC = 0x8
-- MSG_DONTROUTE = 0x4
-- MSG_DONTWAIT = 0x40
-- MSG_EOR = 0x80
-- MSG_ERRQUEUE = 0x2000
-- MSG_FASTOPEN = 0x20000000
-- MSG_FIN = 0x200
-- MSG_MORE = 0x8000
-- MSG_NOSIGNAL = 0x4000
-- MSG_OOB = 0x1
-- MSG_PEEK = 0x2
-- MSG_PROXY = 0x10
-- MSG_RST = 0x1000
-- MSG_SYN = 0x400
-- MSG_TRUNC = 0x20
-- MSG_TRYHARD = 0x4
-- MSG_WAITALL = 0x100
-- MSG_WAITFORONE = 0x10000
-- MS_ACTIVE = 0x40000000
-- MS_ASYNC = 0x1
-- MS_BIND = 0x1000
-- MS_DIRSYNC = 0x80
-- MS_INVALIDATE = 0x2
-- MS_I_VERSION = 0x800000
-- MS_KERNMOUNT = 0x400000
-- MS_LAZYTIME = 0x2000000
-- MS_MANDLOCK = 0x40
-- MS_MGC_MSK = 0xffff0000
-- MS_MGC_VAL = 0xc0ed0000
-- MS_MOVE = 0x2000
-- MS_NOATIME = 0x400
-- MS_NODEV = 0x4
-- MS_NODIRATIME = 0x800
-- MS_NOEXEC = 0x8
-- MS_NOSUID = 0x2
-- MS_NOUSER = -0x80000000
-- MS_POSIXACL = 0x10000
-- MS_PRIVATE = 0x40000
-- MS_RDONLY = 0x1
-- MS_REC = 0x4000
-- MS_RELATIME = 0x200000
-- MS_REMOUNT = 0x20
-- MS_RMT_MASK = 0x2800051
-- MS_SHARED = 0x100000
-- MS_SILENT = 0x8000
-- MS_SLAVE = 0x80000
-- MS_STRICTATIME = 0x1000000
-- MS_SYNC = 0x4
-- MS_SYNCHRONOUS = 0x10
-- MS_UNBINDABLE = 0x20000
-- NAME_MAX = 0xff
-- NETLINK_ADD_MEMBERSHIP = 0x1
-- NETLINK_AUDIT = 0x9
-- NETLINK_BROADCAST_ERROR = 0x4
-- NETLINK_CAP_ACK = 0xa
-- NETLINK_CONNECTOR = 0xb
-- NETLINK_CRYPTO = 0x15
-- NETLINK_DNRTMSG = 0xe
-- NETLINK_DROP_MEMBERSHIP = 0x2
-- NETLINK_ECRYPTFS = 0x13
-- NETLINK_FIB_LOOKUP = 0xa
-- NETLINK_FIREWALL = 0x3
-- NETLINK_GENERIC = 0x10
-- NETLINK_INET_DIAG = 0x4
-- NETLINK_IP6_FW = 0xd
-- NETLINK_ISCSI = 0x8
-- NETLINK_KOBJECT_UEVENT = 0xf
-- NETLINK_LISTEN_ALL_NSID = 0x8
-- NETLINK_LIST_MEMBERSHIPS = 0x9
-- NETLINK_NETFILTER = 0xc
-- NETLINK_NFLOG = 0x5
-- NETLINK_NO_ENOBUFS = 0x5
-- NETLINK_PKTINFO = 0x3
-- NETLINK_RDMA = 0x14
-- NETLINK_ROUTE = 0x0
-- NETLINK_RX_RING = 0x6
-- NETLINK_SCSITRANSPORT = 0x12
-- NETLINK_SELINUX = 0x7
-- NETLINK_SOCK_DIAG = 0x4
-- NETLINK_TX_RING = 0x7
-- NETLINK_UNUSED = 0x1
-- NETLINK_USERSOCK = 0x2
-- NETLINK_XFRM = 0x6
-- NL0 = 0x0
-- NL1 = 0x100
-- NLA_ALIGNTO = 0x4
-- NLA_F_NESTED = 0x8000
-- NLA_F_NET_BYTEORDER = 0x4000
-- NLA_HDRLEN = 0x4
-+ NFDBITS = 0x40
- NLDLY = 0x100
-- NLMSG_ALIGNTO = 0x4
-- NLMSG_DONE = 0x3
-- NLMSG_ERROR = 0x2
-- NLMSG_HDRLEN = 0x10
-- NLMSG_MIN_TYPE = 0x10
-- NLMSG_NOOP = 0x1
-- NLMSG_OVERRUN = 0x4
-- NLM_F_ACK = 0x4
-- NLM_F_APPEND = 0x800
-- NLM_F_ATOMIC = 0x400
-- NLM_F_CREATE = 0x400
-- NLM_F_DUMP = 0x300
-- NLM_F_DUMP_FILTERED = 0x20
-- NLM_F_DUMP_INTR = 0x10
-- NLM_F_ECHO = 0x8
-- NLM_F_EXCL = 0x200
-- NLM_F_MATCH = 0x200
-- NLM_F_MULTI = 0x2
-- NLM_F_REPLACE = 0x100
-- NLM_F_REQUEST = 0x1
-- NLM_F_ROOT = 0x100
- NOFLSH = 0x80
-- OCRNL = 0x8
-- OFDEL = 0x80
-- OFILL = 0x40
-+ NS_GET_NSTYPE = 0x2000b703
-+ NS_GET_OWNER_UID = 0x2000b704
-+ NS_GET_PARENT = 0x2000b702
-+ NS_GET_USERNS = 0x2000b701
- OLCUC = 0x2
- ONLCR = 0x4
-- ONLRET = 0x20
-- ONOCR = 0x10
-- OPOST = 0x1
-- O_ACCMODE = 0x3
- O_APPEND = 0x8
- O_ASYNC = 0x40
- O_CLOEXEC = 0x400000
-@@ -926,231 +143,67 @@ const (
- O_NOFOLLOW = 0x20000
- O_NONBLOCK = 0x4000
- O_PATH = 0x1000000
-- O_RDONLY = 0x0
-- O_RDWR = 0x2
- O_RSYNC = 0x802000
- O_SYNC = 0x802000
- O_TMPFILE = 0x2010000
- O_TRUNC = 0x400
-- O_WRONLY = 0x1
-- PACKET_ADD_MEMBERSHIP = 0x1
-- PACKET_AUXDATA = 0x8
-- PACKET_BROADCAST = 0x1
-- PACKET_COPY_THRESH = 0x7
-- PACKET_DROP_MEMBERSHIP = 0x2
-- PACKET_FANOUT = 0x12
-- PACKET_FANOUT_CBPF = 0x6
-- PACKET_FANOUT_CPU = 0x2
-- PACKET_FANOUT_DATA = 0x16
-- PACKET_FANOUT_EBPF = 0x7
-- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
-- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
-- PACKET_FANOUT_HASH = 0x0
-- PACKET_FANOUT_LB = 0x1
-- PACKET_FANOUT_QM = 0x5
-- PACKET_FANOUT_RND = 0x4
-- PACKET_FANOUT_ROLLOVER = 0x3
-- PACKET_FASTROUTE = 0x6
-- PACKET_HDRLEN = 0xb
-- PACKET_HOST = 0x0
-- PACKET_KERNEL = 0x7
-- PACKET_LOOPBACK = 0x5
-- PACKET_LOSS = 0xe
-- PACKET_MR_ALLMULTI = 0x2
-- PACKET_MR_MULTICAST = 0x0
-- PACKET_MR_PROMISC = 0x1
-- PACKET_MR_UNICAST = 0x3
-- PACKET_MULTICAST = 0x2
-- PACKET_ORIGDEV = 0x9
-- PACKET_OTHERHOST = 0x3
-- PACKET_OUTGOING = 0x4
-- PACKET_QDISC_BYPASS = 0x14
-- PACKET_RECV_OUTPUT = 0x3
-- PACKET_RESERVE = 0xc
-- PACKET_ROLLOVER_STATS = 0x15
-- PACKET_RX_RING = 0x5
-- PACKET_STATISTICS = 0x6
-- PACKET_TIMESTAMP = 0x11
-- PACKET_TX_HAS_OFF = 0x13
-- PACKET_TX_RING = 0xd
-- PACKET_TX_TIMESTAMP = 0x10
-- PACKET_USER = 0x6
-- PACKET_VERSION = 0xa
-- PACKET_VNET_HDR = 0xf
- PARENB = 0x100
-- PARITY_CRC16_PR0 = 0x2
-- PARITY_CRC16_PR0_CCITT = 0x4
-- PARITY_CRC16_PR1 = 0x3
-- PARITY_CRC16_PR1_CCITT = 0x5
-- PARITY_CRC32_PR0_CCITT = 0x6
-- PARITY_CRC32_PR1_CCITT = 0x7
-- PARITY_DEFAULT = 0x0
-- PARITY_NONE = 0x1
-- PARMRK = 0x8
- PARODD = 0x200
- PENDIN = 0x4000
-- PRIO_PGRP = 0x1
-- PRIO_PROCESS = 0x0
-- PRIO_USER = 0x2
-- PROT_EXEC = 0x4
-- PROT_GROWSDOWN = 0x1000000
-- PROT_GROWSUP = 0x2000000
-- PROT_NONE = 0x0
-- PROT_READ = 0x1
-- PROT_WRITE = 0x2
-- PR_CAPBSET_DROP = 0x18
-- PR_CAPBSET_READ = 0x17
-- PR_CAP_AMBIENT = 0x2f
-- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
-- PR_CAP_AMBIENT_IS_SET = 0x1
-- PR_CAP_AMBIENT_LOWER = 0x3
-- PR_CAP_AMBIENT_RAISE = 0x2
-- PR_ENDIAN_BIG = 0x0
-- PR_ENDIAN_LITTLE = 0x1
-- PR_ENDIAN_PPC_LITTLE = 0x2
-- PR_FPEMU_NOPRINT = 0x1
-- PR_FPEMU_SIGFPE = 0x2
-- PR_FP_EXC_ASYNC = 0x2
-- PR_FP_EXC_DISABLED = 0x0
-- PR_FP_EXC_DIV = 0x10000
-- PR_FP_EXC_INV = 0x100000
-- PR_FP_EXC_NONRECOV = 0x1
-- PR_FP_EXC_OVF = 0x20000
-- PR_FP_EXC_PRECISE = 0x3
-- PR_FP_EXC_RES = 0x80000
-- PR_FP_EXC_SW_ENABLE = 0x80
-- PR_FP_EXC_UND = 0x40000
-- PR_FP_MODE_FR = 0x1
-- PR_FP_MODE_FRE = 0x2
-- PR_GET_CHILD_SUBREAPER = 0x25
-- PR_GET_DUMPABLE = 0x3
-- PR_GET_ENDIAN = 0x13
-- PR_GET_FPEMU = 0x9
-- PR_GET_FPEXC = 0xb
-- PR_GET_FP_MODE = 0x2e
-- PR_GET_KEEPCAPS = 0x7
-- PR_GET_NAME = 0x10
-- PR_GET_NO_NEW_PRIVS = 0x27
-- PR_GET_PDEATHSIG = 0x2
-- PR_GET_SECCOMP = 0x15
-- PR_GET_SECUREBITS = 0x1b
-- PR_GET_THP_DISABLE = 0x2a
-- PR_GET_TID_ADDRESS = 0x28
-- PR_GET_TIMERSLACK = 0x1e
-- PR_GET_TIMING = 0xd
-- PR_GET_TSC = 0x19
-- PR_GET_UNALIGN = 0x5
-- PR_MCE_KILL = 0x21
-- PR_MCE_KILL_CLEAR = 0x0
-- PR_MCE_KILL_DEFAULT = 0x2
-- PR_MCE_KILL_EARLY = 0x1
-- PR_MCE_KILL_GET = 0x22
-- PR_MCE_KILL_LATE = 0x0
-- PR_MCE_KILL_SET = 0x1
-- PR_MPX_DISABLE_MANAGEMENT = 0x2c
-- PR_MPX_ENABLE_MANAGEMENT = 0x2b
-- PR_SET_CHILD_SUBREAPER = 0x24
-- PR_SET_DUMPABLE = 0x4
-- PR_SET_ENDIAN = 0x14
-- PR_SET_FPEMU = 0xa
-- PR_SET_FPEXC = 0xc
-- PR_SET_FP_MODE = 0x2d
-- PR_SET_KEEPCAPS = 0x8
-- PR_SET_MM = 0x23
-- PR_SET_MM_ARG_END = 0x9
-- PR_SET_MM_ARG_START = 0x8
-- PR_SET_MM_AUXV = 0xc
-- PR_SET_MM_BRK = 0x7
-- PR_SET_MM_END_CODE = 0x2
-- PR_SET_MM_END_DATA = 0x4
-- PR_SET_MM_ENV_END = 0xb
-- PR_SET_MM_ENV_START = 0xa
-- PR_SET_MM_EXE_FILE = 0xd
-- PR_SET_MM_MAP = 0xe
-- PR_SET_MM_MAP_SIZE = 0xf
-- PR_SET_MM_START_BRK = 0x6
-- PR_SET_MM_START_CODE = 0x1
-- PR_SET_MM_START_DATA = 0x3
-- PR_SET_MM_START_STACK = 0x5
-- PR_SET_NAME = 0xf
-- PR_SET_NO_NEW_PRIVS = 0x26
-- PR_SET_PDEATHSIG = 0x1
-- PR_SET_PTRACER = 0x59616d61
-- PR_SET_PTRACER_ANY = -0x1
-- PR_SET_SECCOMP = 0x16
-- PR_SET_SECUREBITS = 0x1c
-- PR_SET_THP_DISABLE = 0x29
-- PR_SET_TIMERSLACK = 0x1d
-- PR_SET_TIMING = 0xe
-- PR_SET_TSC = 0x1a
-- PR_SET_UNALIGN = 0x6
-- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
-- PR_TASK_PERF_EVENTS_ENABLE = 0x20
-- PR_TIMING_STATISTICAL = 0x0
-- PR_TIMING_TIMESTAMP = 0x1
-- PR_TSC_ENABLE = 0x1
-- PR_TSC_SIGSEGV = 0x2
-- PR_UNALIGN_NOPRINT = 0x1
-- PR_UNALIGN_SIGBUS = 0x2
-- PTRACE_ATTACH = 0x10
-- PTRACE_CONT = 0x7
-- PTRACE_DETACH = 0x11
-- PTRACE_EVENT_CLONE = 0x3
-- PTRACE_EVENT_EXEC = 0x4
-- PTRACE_EVENT_EXIT = 0x6
-- PTRACE_EVENT_FORK = 0x1
-- PTRACE_EVENT_SECCOMP = 0x7
-- PTRACE_EVENT_STOP = 0x80
-- PTRACE_EVENT_VFORK = 0x2
-- PTRACE_EVENT_VFORK_DONE = 0x5
-- PTRACE_GETEVENTMSG = 0x4201
-+ PERF_EVENT_IOC_DISABLE = 0x20002401
-+ PERF_EVENT_IOC_ENABLE = 0x20002400
-+ PERF_EVENT_IOC_ID = 0x40082407
-+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
-+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
-+ PERF_EVENT_IOC_PERIOD = 0x80082404
-+ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
-+ PERF_EVENT_IOC_REFRESH = 0x20002402
-+ PERF_EVENT_IOC_RESET = 0x20002403
-+ PERF_EVENT_IOC_SET_BPF = 0x80042408
-+ PERF_EVENT_IOC_SET_FILTER = 0x80082406
-+ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
-+ PPPIOCATTACH = 0x8004743d
-+ PPPIOCATTCHAN = 0x80047438
-+ PPPIOCCONNECT = 0x8004743a
-+ PPPIOCDETACH = 0x8004743c
-+ PPPIOCDISCONN = 0x20007439
-+ PPPIOCGASYNCMAP = 0x40047458
-+ PPPIOCGCHAN = 0x40047437
-+ PPPIOCGDEBUG = 0x40047441
-+ PPPIOCGFLAGS = 0x4004745a
-+ PPPIOCGIDLE = 0x4010743f
-+ PPPIOCGIDLE32 = 0x4008743f
-+ PPPIOCGIDLE64 = 0x4010743f
-+ PPPIOCGL2TPSTATS = 0x40487436
-+ PPPIOCGMRU = 0x40047453
-+ PPPIOCGRASYNCMAP = 0x40047455
-+ PPPIOCGUNIT = 0x40047456
-+ PPPIOCGXASYNCMAP = 0x40207450
-+ PPPIOCSACTIVE = 0x80107446
-+ PPPIOCSASYNCMAP = 0x80047457
-+ PPPIOCSCOMPRESS = 0x8010744d
-+ PPPIOCSDEBUG = 0x80047440
-+ PPPIOCSFLAGS = 0x80047459
-+ PPPIOCSMAXCID = 0x80047451
-+ PPPIOCSMRRU = 0x8004743b
-+ PPPIOCSMRU = 0x80047452
-+ PPPIOCSNPMODE = 0x8008744b
-+ PPPIOCSPASS = 0x80107447
-+ PPPIOCSRASYNCMAP = 0x80047454
-+ PPPIOCSXASYNCMAP = 0x8020744f
-+ PPPIOCXFERUNIT = 0x2000744e
-+ PR_SET_PTRACER_ANY = 0xffffffffffffffff
- PTRACE_GETFPAREGS = 0x14
- PTRACE_GETFPREGS = 0xe
- PTRACE_GETFPREGS64 = 0x19
-- PTRACE_GETREGS = 0xc
- PTRACE_GETREGS64 = 0x16
-- PTRACE_GETREGSET = 0x4204
-- PTRACE_GETSIGINFO = 0x4202
-- PTRACE_GETSIGMASK = 0x420a
-- PTRACE_INTERRUPT = 0x4207
-- PTRACE_KILL = 0x8
-- PTRACE_LISTEN = 0x4208
-- PTRACE_O_EXITKILL = 0x100000
-- PTRACE_O_MASK = 0x3000ff
-- PTRACE_O_SUSPEND_SECCOMP = 0x200000
-- PTRACE_O_TRACECLONE = 0x8
-- PTRACE_O_TRACEEXEC = 0x10
-- PTRACE_O_TRACEEXIT = 0x40
-- PTRACE_O_TRACEFORK = 0x2
-- PTRACE_O_TRACESECCOMP = 0x80
-- PTRACE_O_TRACESYSGOOD = 0x1
-- PTRACE_O_TRACEVFORK = 0x4
-- PTRACE_O_TRACEVFORKDONE = 0x20
-- PTRACE_PEEKDATA = 0x2
-- PTRACE_PEEKSIGINFO = 0x4209
-- PTRACE_PEEKSIGINFO_SHARED = 0x1
-- PTRACE_PEEKTEXT = 0x1
-- PTRACE_PEEKUSR = 0x3
-- PTRACE_POKEDATA = 0x5
-- PTRACE_POKETEXT = 0x4
-- PTRACE_POKEUSR = 0x6
- PTRACE_READDATA = 0x10
- PTRACE_READTEXT = 0x12
-- PTRACE_SECCOMP_GET_FILTER = 0x420c
-- PTRACE_SEIZE = 0x4206
- PTRACE_SETFPAREGS = 0x15
- PTRACE_SETFPREGS = 0xf
- PTRACE_SETFPREGS64 = 0x1a
-- PTRACE_SETOPTIONS = 0x4200
-- PTRACE_SETREGS = 0xd
- PTRACE_SETREGS64 = 0x17
-- PTRACE_SETREGSET = 0x4205
-- PTRACE_SETSIGINFO = 0x4203
-- PTRACE_SETSIGMASK = 0x420b
-- PTRACE_SINGLESTEP = 0x9
- PTRACE_SPARC_DETACH = 0xb
-- PTRACE_SYSCALL = 0x18
-- PTRACE_TRACEME = 0x0
- PTRACE_WRITEDATA = 0x11
- PTRACE_WRITETEXT = 0x13
- PT_FP = 0x48
-@@ -1202,329 +255,98 @@ const (
- PT_WIM = 0x10
- PT_Y = 0xc
- RLIMIT_AS = 0x9
-- RLIMIT_CORE = 0x4
-- RLIMIT_CPU = 0x0
-- RLIMIT_DATA = 0x2
-- RLIMIT_FSIZE = 0x1
-+ RLIMIT_MEMLOCK = 0x8
- RLIMIT_NOFILE = 0x6
-- RLIMIT_STACK = 0x3
-- RLIM_INFINITY = -0x1
-- RTAX_ADVMSS = 0x8
-- RTAX_CC_ALGO = 0x10
-- RTAX_CWND = 0x7
-- RTAX_FEATURES = 0xc
-- RTAX_FEATURE_ALLFRAG = 0x8
-- RTAX_FEATURE_ECN = 0x1
-- RTAX_FEATURE_MASK = 0xf
-- RTAX_FEATURE_SACK = 0x2
-- RTAX_FEATURE_TIMESTAMP = 0x4
-- RTAX_HOPLIMIT = 0xa
-- RTAX_INITCWND = 0xb
-- RTAX_INITRWND = 0xe
-- RTAX_LOCK = 0x1
-- RTAX_MAX = 0x10
-- RTAX_MTU = 0x2
-- RTAX_QUICKACK = 0xf
-- RTAX_REORDERING = 0x9
-- RTAX_RTO_MIN = 0xd
-- RTAX_RTT = 0x4
-- RTAX_RTTVAR = 0x5
-- RTAX_SSTHRESH = 0x6
-- RTAX_UNSPEC = 0x0
-- RTAX_WINDOW = 0x3
-- RTA_ALIGNTO = 0x4
-- RTA_MAX = 0x18
-- RTCF_DIRECTSRC = 0x4000000
-- RTCF_DOREDIRECT = 0x1000000
-- RTCF_LOG = 0x2000000
-- RTCF_MASQ = 0x400000
-- RTCF_NAT = 0x800000
-- RTCF_VALVE = 0x200000
-- RTF_ADDRCLASSMASK = 0xf8000000
-- RTF_ADDRCONF = 0x40000
-- RTF_ALLONLINK = 0x20000
-- RTF_BROADCAST = 0x10000000
-- RTF_CACHE = 0x1000000
-- RTF_DEFAULT = 0x10000
-- RTF_DYNAMIC = 0x10
-- RTF_FLOW = 0x2000000
-- RTF_GATEWAY = 0x2
-- RTF_HOST = 0x4
-- RTF_INTERFACE = 0x40000000
-- RTF_IRTT = 0x100
-- RTF_LINKRT = 0x100000
-- RTF_LOCAL = 0x80000000
-- RTF_MODIFIED = 0x20
-- RTF_MSS = 0x40
-- RTF_MTU = 0x40
-- RTF_MULTICAST = 0x20000000
-- RTF_NAT = 0x8000000
-- RTF_NOFORWARD = 0x1000
-- RTF_NONEXTHOP = 0x200000
-- RTF_NOPMTUDISC = 0x4000
-- RTF_POLICY = 0x4000000
-- RTF_REINSTATE = 0x8
-- RTF_REJECT = 0x200
-- RTF_STATIC = 0x400
-- RTF_THROW = 0x2000
-- RTF_UP = 0x1
-- RTF_WINDOW = 0x80
-- RTF_XRESOLVE = 0x800
-- RTM_BASE = 0x10
-- RTM_DELACTION = 0x31
-- RTM_DELADDR = 0x15
-- RTM_DELADDRLABEL = 0x49
-- RTM_DELLINK = 0x11
-- RTM_DELMDB = 0x55
-- RTM_DELNEIGH = 0x1d
-- RTM_DELNSID = 0x59
-- RTM_DELQDISC = 0x25
-- RTM_DELROUTE = 0x19
-- RTM_DELRULE = 0x21
-- RTM_DELTCLASS = 0x29
-- RTM_DELTFILTER = 0x2d
-- RTM_F_CLONED = 0x200
-- RTM_F_EQUALIZE = 0x400
-- RTM_F_LOOKUP_TABLE = 0x1000
-- RTM_F_NOTIFY = 0x100
-- RTM_F_PREFIX = 0x800
-- RTM_GETACTION = 0x32
-- RTM_GETADDR = 0x16
-- RTM_GETADDRLABEL = 0x4a
-- RTM_GETANYCAST = 0x3e
-- RTM_GETDCB = 0x4e
-- RTM_GETLINK = 0x12
-- RTM_GETMDB = 0x56
-- RTM_GETMULTICAST = 0x3a
-- RTM_GETNEIGH = 0x1e
-- RTM_GETNEIGHTBL = 0x42
-- RTM_GETNETCONF = 0x52
-- RTM_GETNSID = 0x5a
-- RTM_GETQDISC = 0x26
-- RTM_GETROUTE = 0x1a
-- RTM_GETRULE = 0x22
-- RTM_GETSTATS = 0x5e
-- RTM_GETTCLASS = 0x2a
-- RTM_GETTFILTER = 0x2e
-- RTM_MAX = 0x5f
-- RTM_NEWACTION = 0x30
-- RTM_NEWADDR = 0x14
-- RTM_NEWADDRLABEL = 0x48
-- RTM_NEWLINK = 0x10
-- RTM_NEWMDB = 0x54
-- RTM_NEWNDUSEROPT = 0x44
-- RTM_NEWNEIGH = 0x1c
-- RTM_NEWNEIGHTBL = 0x40
-- RTM_NEWNETCONF = 0x50
-- RTM_NEWNSID = 0x58
-- RTM_NEWPREFIX = 0x34
-- RTM_NEWQDISC = 0x24
-- RTM_NEWROUTE = 0x18
-- RTM_NEWRULE = 0x20
-- RTM_NEWSTATS = 0x5c
-- RTM_NEWTCLASS = 0x28
-- RTM_NEWTFILTER = 0x2c
-- RTM_NR_FAMILIES = 0x14
-- RTM_NR_MSGTYPES = 0x50
-- RTM_SETDCB = 0x4f
-- RTM_SETLINK = 0x13
-- RTM_SETNEIGHTBL = 0x43
-- RTNH_ALIGNTO = 0x4
-- RTNH_COMPARE_MASK = 0x11
-- RTNH_F_DEAD = 0x1
-- RTNH_F_LINKDOWN = 0x10
-- RTNH_F_OFFLOAD = 0x8
-- RTNH_F_ONLINK = 0x4
-- RTNH_F_PERVASIVE = 0x2
-- RTN_MAX = 0xb
-- RTPROT_BABEL = 0x2a
-- RTPROT_BIRD = 0xc
-- RTPROT_BOOT = 0x3
-- RTPROT_DHCP = 0x10
-- RTPROT_DNROUTED = 0xd
-- RTPROT_GATED = 0x8
-- RTPROT_KERNEL = 0x2
-- RTPROT_MROUTED = 0x11
-- RTPROT_MRT = 0xa
-- RTPROT_NTK = 0xf
-- RTPROT_RA = 0x9
-- RTPROT_REDIRECT = 0x1
-- RTPROT_STATIC = 0x4
-- RTPROT_UNSPEC = 0x0
-- RTPROT_XORP = 0xe
-- RTPROT_ZEBRA = 0xb
-- RT_CLASS_DEFAULT = 0xfd
-- RT_CLASS_LOCAL = 0xff
-- RT_CLASS_MAIN = 0xfe
-- RT_CLASS_MAX = 0xff
-- RT_CLASS_UNSPEC = 0x0
-- RUSAGE_CHILDREN = -0x1
-- RUSAGE_SELF = 0x0
-- RUSAGE_THREAD = 0x1
-- SCM_CREDENTIALS = 0x2
-- SCM_RIGHTS = 0x1
-- SCM_TIMESTAMP = 0x1d
-+ RLIMIT_NPROC = 0x7
-+ RLIMIT_RSS = 0x5
-+ RNDADDENTROPY = 0x80085203
-+ RNDADDTOENTCNT = 0x80045201
-+ RNDCLEARPOOL = 0x20005206
-+ RNDGETENTCNT = 0x40045200
-+ RNDGETPOOL = 0x40085202
-+ RNDRESEEDCRNG = 0x20005207
-+ RNDZAPENTCNT = 0x20005204
-+ RTC_AIE_OFF = 0x20007002
-+ RTC_AIE_ON = 0x20007001
-+ RTC_ALM_READ = 0x40247008
-+ RTC_ALM_SET = 0x80247007
-+ RTC_EPOCH_READ = 0x4008700d
-+ RTC_EPOCH_SET = 0x8008700e
-+ RTC_IRQP_READ = 0x4008700b
-+ RTC_IRQP_SET = 0x8008700c
-+ RTC_PIE_OFF = 0x20007006
-+ RTC_PIE_ON = 0x20007005
-+ RTC_PLL_GET = 0x40207011
-+ RTC_PLL_SET = 0x80207012
-+ RTC_RD_TIME = 0x40247009
-+ RTC_SET_TIME = 0x8024700a
-+ RTC_UIE_OFF = 0x20007004
-+ RTC_UIE_ON = 0x20007003
-+ RTC_VL_CLR = 0x20007014
-+ RTC_VL_READ = 0x40047013
-+ RTC_WIE_OFF = 0x20007010
-+ RTC_WIE_ON = 0x2000700f
-+ RTC_WKALM_RD = 0x40287010
-+ RTC_WKALM_SET = 0x8028700f
- SCM_TIMESTAMPING = 0x23
-+ SCM_TIMESTAMPING_OPT_STATS = 0x38
-+ SCM_TIMESTAMPING_PKTINFO = 0x3c
- SCM_TIMESTAMPNS = 0x21
-+ SCM_TXTIME = 0x3f
- SCM_WIFI_STATUS = 0x25
-- SHUT_RD = 0x0
-- SHUT_RDWR = 0x2
-- SHUT_WR = 0x1
-- SIOCADDDLCI = 0x8980
-- SIOCADDMULTI = 0x8931
-- SIOCADDRT = 0x890b
-+ SFD_CLOEXEC = 0x400000
-+ SFD_NONBLOCK = 0x4000
- SIOCATMARK = 0x8905
-- SIOCBONDCHANGEACTIVE = 0x8995
-- SIOCBONDENSLAVE = 0x8990
-- SIOCBONDINFOQUERY = 0x8994
-- SIOCBONDRELEASE = 0x8991
-- SIOCBONDSETHWADDR = 0x8992
-- SIOCBONDSLAVEINFOQUERY = 0x8993
-- SIOCBRADDBR = 0x89a0
-- SIOCBRADDIF = 0x89a2
-- SIOCBRDELBR = 0x89a1
-- SIOCBRDELIF = 0x89a3
-- SIOCDARP = 0x8953
-- SIOCDELDLCI = 0x8981
-- SIOCDELMULTI = 0x8932
-- SIOCDELRT = 0x890c
-- SIOCDEVPRIVATE = 0x89f0
-- SIOCDIFADDR = 0x8936
-- SIOCDRARP = 0x8960
-- SIOCETHTOOL = 0x8946
-- SIOCGARP = 0x8954
-- SIOCGHWTSTAMP = 0x89b1
-- SIOCGIFADDR = 0x8915
-- SIOCGIFBR = 0x8940
-- SIOCGIFBRDADDR = 0x8919
-- SIOCGIFCONF = 0x8912
-- SIOCGIFCOUNT = 0x8938
-- SIOCGIFDSTADDR = 0x8917
-- SIOCGIFENCAP = 0x8925
-- SIOCGIFFLAGS = 0x8913
-- SIOCGIFHWADDR = 0x8927
-- SIOCGIFINDEX = 0x8933
-- SIOCGIFMAP = 0x8970
-- SIOCGIFMEM = 0x891f
-- SIOCGIFMETRIC = 0x891d
-- SIOCGIFMTU = 0x8921
-- SIOCGIFNAME = 0x8910
-- SIOCGIFNETMASK = 0x891b
-- SIOCGIFPFLAGS = 0x8935
-- SIOCGIFSLAVE = 0x8929
-- SIOCGIFTXQLEN = 0x8942
-- SIOCGIFVLAN = 0x8982
-- SIOCGMIIPHY = 0x8947
-- SIOCGMIIREG = 0x8948
- SIOCGPGRP = 0x8904
-- SIOCGRARP = 0x8961
-- SIOCGSTAMP = 0x8906
-- SIOCGSTAMPNS = 0x8907
-+ SIOCGSTAMPNS_NEW = 0x40108907
-+ SIOCGSTAMP_NEW = 0x40108906
- SIOCINQ = 0x4004667f
- SIOCOUTQ = 0x40047473
-- SIOCOUTQNSD = 0x894b
-- SIOCPROTOPRIVATE = 0x89e0
-- SIOCRTMSG = 0x890d
-- SIOCSARP = 0x8955
-- SIOCSHWTSTAMP = 0x89b0
-- SIOCSIFADDR = 0x8916
-- SIOCSIFBR = 0x8941
-- SIOCSIFBRDADDR = 0x891a
-- SIOCSIFDSTADDR = 0x8918
-- SIOCSIFENCAP = 0x8926
-- SIOCSIFFLAGS = 0x8914
-- SIOCSIFHWADDR = 0x8924
-- SIOCSIFHWBROADCAST = 0x8937
-- SIOCSIFLINK = 0x8911
-- SIOCSIFMAP = 0x8971
-- SIOCSIFMEM = 0x8920
-- SIOCSIFMETRIC = 0x891e
-- SIOCSIFMTU = 0x8922
-- SIOCSIFNAME = 0x8923
-- SIOCSIFNETMASK = 0x891c
-- SIOCSIFPFLAGS = 0x8934
-- SIOCSIFSLAVE = 0x8930
-- SIOCSIFTXQLEN = 0x8943
-- SIOCSIFVLAN = 0x8983
-- SIOCSMIIREG = 0x8949
- SIOCSPGRP = 0x8902
-- SIOCSRARP = 0x8962
-- SIOCWANDEV = 0x894a
- SOCK_CLOEXEC = 0x400000
-- SOCK_DCCP = 0x6
- SOCK_DGRAM = 0x2
- SOCK_NONBLOCK = 0x4000
-- SOCK_PACKET = 0xa
-- SOCK_RAW = 0x3
-- SOCK_RDM = 0x4
-- SOCK_SEQPACKET = 0x5
- SOCK_STREAM = 0x1
-- SOL_AAL = 0x109
-- SOL_ALG = 0x117
-- SOL_ATM = 0x108
-- SOL_CAIF = 0x116
-- SOL_DCCP = 0x10d
-- SOL_DECNET = 0x105
-- SOL_ICMPV6 = 0x3a
-- SOL_IP = 0x0
-- SOL_IPV6 = 0x29
-- SOL_IRDA = 0x10a
-- SOL_IUCV = 0x115
-- SOL_KCM = 0x119
-- SOL_LLC = 0x10c
-- SOL_NETBEUI = 0x10b
-- SOL_NETLINK = 0x10e
-- SOL_NFC = 0x118
-- SOL_PACKET = 0x107
-- SOL_PNPIPE = 0x113
-- SOL_PPPOL2TP = 0x111
-- SOL_RAW = 0xff
-- SOL_RDS = 0x114
-- SOL_RXRPC = 0x110
- SOL_SOCKET = 0xffff
-- SOL_TCP = 0x6
-- SOL_TIPC = 0x10f
-- SOL_X25 = 0x106
-- SOMAXCONN = 0x80
- SO_ACCEPTCONN = 0x8000
- SO_ATTACH_BPF = 0x34
-- SO_ATTACH_FILTER = 0x1a
- SO_ATTACH_REUSEPORT_CBPF = 0x35
- SO_ATTACH_REUSEPORT_EBPF = 0x36
- SO_BINDTODEVICE = 0xd
-+ SO_BINDTOIFINDEX = 0x41
- SO_BPF_EXTENSIONS = 0x32
- SO_BROADCAST = 0x20
- SO_BSDCOMPAT = 0x400
- SO_BUSY_POLL = 0x30
- SO_CNX_ADVICE = 0x37
-- SO_DEBUG = 0x1
-- SO_DETACH_BPF = 0x1b
-- SO_DETACH_FILTER = 0x1b
-+ SO_COOKIE = 0x3b
-+ SO_DETACH_REUSEPORT_BPF = 0x47
- SO_DOMAIN = 0x1029
- SO_DONTROUTE = 0x10
- SO_ERROR = 0x1007
-- SO_GET_FILTER = 0x1a
- SO_INCOMING_CPU = 0x33
-+ SO_INCOMING_NAPI_ID = 0x3a
- SO_KEEPALIVE = 0x8
- SO_LINGER = 0x80
- SO_LOCK_FILTER = 0x28
- SO_MARK = 0x22
- SO_MAX_PACING_RATE = 0x31
-+ SO_MEMINFO = 0x39
- SO_NOFCS = 0x27
-- SO_NO_CHECK = 0xb
- SO_OOBINLINE = 0x100
- SO_PASSCRED = 0x2
- SO_PASSSEC = 0x1f
- SO_PEEK_OFF = 0x26
- SO_PEERCRED = 0x40
-- SO_PEERNAME = 0x1c
-+ SO_PEERGROUPS = 0x3d
- SO_PEERSEC = 0x1e
-- SO_PRIORITY = 0xc
- SO_PROTOCOL = 0x1028
- SO_RCVBUF = 0x1002
- SO_RCVBUFFORCE = 0x100b
- SO_RCVLOWAT = 0x800
- SO_RCVTIMEO = 0x2000
-+ SO_RCVTIMEO_NEW = 0x44
-+ SO_RCVTIMEO_OLD = 0x2000
- SO_REUSEADDR = 0x4
- SO_REUSEPORT = 0x200
- SO_RXQ_OVFL = 0x24
-@@ -1536,50 +358,19 @@ const (
- SO_SNDBUFFORCE = 0x100a
- SO_SNDLOWAT = 0x1000
- SO_SNDTIMEO = 0x4000
-- SO_TIMESTAMP = 0x1d
-+ SO_SNDTIMEO_NEW = 0x45
-+ SO_SNDTIMEO_OLD = 0x4000
- SO_TIMESTAMPING = 0x23
-+ SO_TIMESTAMPING_NEW = 0x43
-+ SO_TIMESTAMPING_OLD = 0x23
- SO_TIMESTAMPNS = 0x21
-+ SO_TIMESTAMPNS_NEW = 0x42
-+ SO_TIMESTAMPNS_OLD = 0x21
-+ SO_TIMESTAMP_NEW = 0x46
-+ SO_TXTIME = 0x3f
- SO_TYPE = 0x1008
-- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
-- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
-- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
-- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
-- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
-- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
-- SO_VM_SOCKETS_TRUSTED = 0x5
- SO_WIFI_STATUS = 0x25
-- SPLICE_F_GIFT = 0x8
-- SPLICE_F_MORE = 0x4
-- SPLICE_F_MOVE = 0x1
-- SPLICE_F_NONBLOCK = 0x2
-- S_BLKSIZE = 0x200
-- S_IEXEC = 0x40
-- S_IFBLK = 0x6000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFIFO = 0x1000
-- S_IFLNK = 0xa000
-- S_IFMT = 0xf000
-- S_IFREG = 0x8000
-- S_IFSOCK = 0xc000
-- S_IREAD = 0x100
-- S_IRGRP = 0x20
-- S_IROTH = 0x4
-- S_IRUSR = 0x100
-- S_IRWXG = 0x38
-- S_IRWXO = 0x7
-- S_IRWXU = 0x1c0
-- S_ISGID = 0x400
-- S_ISUID = 0x800
-- S_ISVTX = 0x200
-- S_IWGRP = 0x10
-- S_IWOTH = 0x2
-- S_IWRITE = 0x80
-- S_IWUSR = 0x80
-- S_IXGRP = 0x8
-- S_IXOTH = 0x1
-- S_IXUSR = 0x40
-- TAB0 = 0x0
-+ SO_ZEROCOPY = 0x3e
- TAB1 = 0x800
- TAB2 = 0x1000
- TAB3 = 0x1800
-@@ -1588,54 +379,6 @@ const (
- TCGETA = 0x40125401
- TCGETS = 0x40245408
- TCGETS2 = 0x402c540c
-- TCIFLUSH = 0x0
-- TCIOFF = 0x2
-- TCIOFLUSH = 0x2
-- TCION = 0x3
-- TCOFLUSH = 0x1
-- TCOOFF = 0x0
-- TCOON = 0x1
-- TCP_CC_INFO = 0x1a
-- TCP_CONGESTION = 0xd
-- TCP_COOKIE_IN_ALWAYS = 0x1
-- TCP_COOKIE_MAX = 0x10
-- TCP_COOKIE_MIN = 0x8
-- TCP_COOKIE_OUT_NEVER = 0x2
-- TCP_COOKIE_PAIR_SIZE = 0x20
-- TCP_COOKIE_TRANSACTIONS = 0xf
-- TCP_CORK = 0x3
-- TCP_DEFER_ACCEPT = 0x9
-- TCP_FASTOPEN = 0x17
-- TCP_INFO = 0xb
-- TCP_KEEPCNT = 0x6
-- TCP_KEEPIDLE = 0x4
-- TCP_KEEPINTVL = 0x5
-- TCP_LINGER2 = 0x8
-- TCP_MAXSEG = 0x2
-- TCP_MAXWIN = 0xffff
-- TCP_MAX_WINSHIFT = 0xe
-- TCP_MD5SIG = 0xe
-- TCP_MD5SIG_MAXKEYLEN = 0x50
-- TCP_MSS = 0x200
-- TCP_MSS_DEFAULT = 0x218
-- TCP_MSS_DESIRED = 0x4c4
-- TCP_NODELAY = 0x1
-- TCP_NOTSENT_LOWAT = 0x19
-- TCP_QUEUE_SEQ = 0x15
-- TCP_QUICKACK = 0xc
-- TCP_REPAIR = 0x13
-- TCP_REPAIR_OPTIONS = 0x16
-- TCP_REPAIR_QUEUE = 0x14
-- TCP_SAVED_SYN = 0x1c
-- TCP_SAVE_SYN = 0x1b
-- TCP_SYNCNT = 0x7
-- TCP_S_DATA_IN = 0x4
-- TCP_S_DATA_OUT = 0x8
-- TCP_THIN_DUPACK = 0x11
-- TCP_THIN_LINEAR_TIMEOUTS = 0x10
-- TCP_TIMESTAMP = 0x18
-- TCP_USER_TIMEOUT = 0x12
-- TCP_WINDOW_CLAMP = 0xa
- TCSAFLUSH = 0x2
- TCSBRK = 0x20005405
- TCSBRKP = 0x5425
-@@ -1656,11 +399,13 @@ const (
- TIOCGETD = 0x40047400
- TIOCGEXCL = 0x40045440
- TIOCGICOUNT = 0x545d
-+ TIOCGISO7816 = 0x40285443
- TIOCGLCKTRMIOS = 0x5456
- TIOCGPGRP = 0x40047483
- TIOCGPKT = 0x40045438
- TIOCGPTLCK = 0x40045439
- TIOCGPTN = 0x40047486
-+ TIOCGPTPEER = 0x20007489
- TIOCGRS485 = 0x40205441
- TIOCGSERIAL = 0x541e
- TIOCGSID = 0x40047485
-@@ -1677,28 +422,14 @@ const (
- TIOCM_CD = 0x40
- TIOCM_CTS = 0x20
- TIOCM_DSR = 0x100
-- TIOCM_DTR = 0x2
-- TIOCM_LE = 0x1
-- TIOCM_LOOP = 0x8000
-- TIOCM_OUT1 = 0x2000
-- TIOCM_OUT2 = 0x4000
- TIOCM_RI = 0x80
- TIOCM_RNG = 0x80
-- TIOCM_RTS = 0x4
- TIOCM_SR = 0x10
- TIOCM_ST = 0x8
- TIOCNOTTY = 0x20007471
- TIOCNXCL = 0x2000740e
- TIOCOUTQ = 0x40047473
- TIOCPKT = 0x80047470
-- TIOCPKT_DATA = 0x0
-- TIOCPKT_DOSTOP = 0x20
-- TIOCPKT_FLUSHREAD = 0x1
-- TIOCPKT_FLUSHWRITE = 0x2
-- TIOCPKT_IOCTL = 0x40
-- TIOCPKT_NOSTOP = 0x10
-- TIOCPKT_START = 0x8
-- TIOCPKT_STOP = 0x4
- TIOCSBRK = 0x2000747b
- TIOCSCTTY = 0x20007484
- TIOCSERCONFIG = 0x5453
-@@ -1708,9 +439,9 @@ const (
- TIOCSERGWILD = 0x5454
- TIOCSERSETMULTI = 0x545b
- TIOCSERSWILD = 0x5455
-- TIOCSER_TEMT = 0x1
- TIOCSETD = 0x80047401
- TIOCSIG = 0x80047488
-+ TIOCSISO7816 = 0xc0285444
- TIOCSLCKTRMIOS = 0x5457
- TIOCSPGRP = 0x80047482
- TIOCSPTLCK = 0x80047487
-@@ -1725,6 +456,7 @@ const (
- TOSTOP = 0x100
- TUNATTACHFILTER = 0x801054d5
- TUNDETACHFILTER = 0x801054d6
-+ TUNGETDEVNETNS = 0x200054e3
- TUNGETFEATURES = 0x400454cf
- TUNGETFILTER = 0x401054db
- TUNGETIFF = 0x400454d2
-@@ -1732,7 +464,9 @@ const (
- TUNGETVNETBE = 0x400454df
- TUNGETVNETHDRSZ = 0x400454d7
- TUNGETVNETLE = 0x400454dd
-+ TUNSETCARRIER = 0x800454e2
- TUNSETDEBUG = 0x800454c9
-+ TUNSETFILTEREBPF = 0x400454e1
- TUNSETGROUP = 0x800454ce
- TUNSETIFF = 0x800454ca
- TUNSETIFINDEX = 0x800454da
-@@ -1743,47 +477,52 @@ const (
- TUNSETPERSIST = 0x800454cb
- TUNSETQUEUE = 0x800454d9
- TUNSETSNDBUF = 0x800454d4
-+ TUNSETSTEERINGEBPF = 0x400454e0
- TUNSETTXFILTER = 0x800454d1
- TUNSETVNETBE = 0x800454de
- TUNSETVNETHDRSZ = 0x800454d8
- TUNSETVNETLE = 0x800454dc
-+ UBI_IOCATT = 0x80186f40
-+ UBI_IOCDET = 0x80046f41
-+ UBI_IOCEBCH = 0x80044f02
-+ UBI_IOCEBER = 0x80044f01
-+ UBI_IOCEBISMAP = 0x40044f05
-+ UBI_IOCEBMAP = 0x80084f03
-+ UBI_IOCEBUNMAP = 0x80044f04
-+ UBI_IOCMKVOL = 0x80986f00
-+ UBI_IOCRMVOL = 0x80046f01
-+ UBI_IOCRNVOL = 0x91106f03
-+ UBI_IOCRPEB = 0x80046f04
-+ UBI_IOCRSVOL = 0x800c6f02
-+ UBI_IOCSETVOLPROP = 0x80104f06
-+ UBI_IOCSPEB = 0x80046f05
-+ UBI_IOCVOLCRBLK = 0x80804f07
-+ UBI_IOCVOLRMBLK = 0x20004f08
-+ UBI_IOCVOLUP = 0x80084f00
- VDISCARD = 0xd
-- VDSUSP = 0xb
- VEOF = 0x4
-- VEOL = 0x5
-- VEOL2 = 0x6
-- VERASE = 0x2
-- VINTR = 0x0
-- VKILL = 0x3
-- VLNEXT = 0xf
-- VMADDR_CID_ANY = 0xffffffff
-- VMADDR_CID_HOST = 0x2
-- VMADDR_CID_HYPERVISOR = 0x0
-- VMADDR_CID_RESERVED = 0x1
-- VMADDR_PORT_ANY = 0xffffffff
-- VMIN = 0x4
-- VQUIT = 0x1
-+ VEOL = 0xb
-+ VEOL2 = 0x10
-+ VMIN = 0x6
- VREPRINT = 0xc
- VSTART = 0x8
- VSTOP = 0x9
- VSUSP = 0xa
- VSWTC = 0x7
-- VT0 = 0x0
- VT1 = 0x4000
- VTDLY = 0x4000
- VTIME = 0x5
- VWERASE = 0xe
-- WALL = 0x40000000
-- WCLONE = 0x80000000
-- WCONTINUED = 0x8
-- WEXITED = 0x4
-- WNOHANG = 0x1
-- WNOTHREAD = 0x20000000
-- WNOWAIT = 0x1000000
-+ WDIOC_GETBOOTSTATUS = 0x40045702
-+ WDIOC_GETPRETIMEOUT = 0x40045709
-+ WDIOC_GETSTATUS = 0x40045701
-+ WDIOC_GETSUPPORT = 0x40285700
-+ WDIOC_GETTEMP = 0x40045703
-+ WDIOC_GETTIMELEFT = 0x4004570a
-+ WDIOC_GETTIMEOUT = 0x40045707
-+ WDIOC_KEEPALIVE = 0x40045705
-+ WDIOC_SETOPTIONS = 0x40045704
- WORDSIZE = 0x40
-- WRAP = 0x20000
-- WSTOPPED = 0x2
-- WUNTRACED = 0x2
- XCASE = 0x4
- XTABS = 0x1800
- __TIOCFLUSH = 0x80047410
-@@ -1791,25 +530,19 @@ const (
-
- // Errors
- const (
-- E2BIG = syscall.Errno(0x7)
-- EACCES = syscall.Errno(0xd)
- EADDRINUSE = syscall.Errno(0x30)
- EADDRNOTAVAIL = syscall.Errno(0x31)
- EADV = syscall.Errno(0x53)
- EAFNOSUPPORT = syscall.Errno(0x2f)
-- EAGAIN = syscall.Errno(0xb)
- EALREADY = syscall.Errno(0x25)
- EBADE = syscall.Errno(0x66)
-- EBADF = syscall.Errno(0x9)
- EBADFD = syscall.Errno(0x5d)
- EBADMSG = syscall.Errno(0x4c)
- EBADR = syscall.Errno(0x67)
- EBADRQC = syscall.Errno(0x6a)
- EBADSLT = syscall.Errno(0x6b)
- EBFONT = syscall.Errno(0x6d)
-- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x7f)
-- ECHILD = syscall.Errno(0xa)
- ECHRNG = syscall.Errno(0x5e)
- ECOMM = syscall.Errno(0x55)
- ECONNABORTED = syscall.Errno(0x35)
-@@ -1818,23 +551,15 @@ const (
- EDEADLK = syscall.Errno(0x4e)
- EDEADLOCK = syscall.Errno(0x6c)
- EDESTADDRREQ = syscall.Errno(0x27)
-- EDOM = syscall.Errno(0x21)
- EDOTDOT = syscall.Errno(0x58)
- EDQUOT = syscall.Errno(0x45)
-- EEXIST = syscall.Errno(0x11)
-- EFAULT = syscall.Errno(0xe)
-- EFBIG = syscall.Errno(0x1b)
- EHOSTDOWN = syscall.Errno(0x40)
- EHOSTUNREACH = syscall.Errno(0x41)
- EHWPOISON = syscall.Errno(0x87)
- EIDRM = syscall.Errno(0x4d)
- EILSEQ = syscall.Errno(0x7a)
- EINPROGRESS = syscall.Errno(0x24)
-- EINTR = syscall.Errno(0x4)
-- EINVAL = syscall.Errno(0x16)
-- EIO = syscall.Errno(0x5)
- EISCONN = syscall.Errno(0x38)
-- EISDIR = syscall.Errno(0x15)
- EISNAM = syscall.Errno(0x78)
- EKEYEXPIRED = syscall.Errno(0x81)
- EKEYREJECTED = syscall.Errno(0x83)
-@@ -1851,8 +576,6 @@ const (
- ELNRNG = syscall.Errno(0x62)
- ELOOP = syscall.Errno(0x3e)
- EMEDIUMTYPE = syscall.Errno(0x7e)
-- EMFILE = syscall.Errno(0x18)
-- EMLINK = syscall.Errno(0x1f)
- EMSGSIZE = syscall.Errno(0x28)
- EMULTIHOP = syscall.Errno(0x57)
- ENAMETOOLONG = syscall.Errno(0x3f)
-@@ -1860,102 +583,70 @@ const (
- ENETDOWN = syscall.Errno(0x32)
- ENETRESET = syscall.Errno(0x34)
- ENETUNREACH = syscall.Errno(0x33)
-- ENFILE = syscall.Errno(0x17)
- ENOANO = syscall.Errno(0x69)
- ENOBUFS = syscall.Errno(0x37)
- ENOCSI = syscall.Errno(0x64)
- ENODATA = syscall.Errno(0x6f)
-- ENODEV = syscall.Errno(0x13)
-- ENOENT = syscall.Errno(0x2)
-- ENOEXEC = syscall.Errno(0x8)
- ENOKEY = syscall.Errno(0x80)
- ENOLCK = syscall.Errno(0x4f)
- ENOLINK = syscall.Errno(0x52)
- ENOMEDIUM = syscall.Errno(0x7d)
-- ENOMEM = syscall.Errno(0xc)
- ENOMSG = syscall.Errno(0x4b)
- ENONET = syscall.Errno(0x50)
- ENOPKG = syscall.Errno(0x71)
- ENOPROTOOPT = syscall.Errno(0x2a)
-- ENOSPC = syscall.Errno(0x1c)
- ENOSR = syscall.Errno(0x4a)
- ENOSTR = syscall.Errno(0x48)
- ENOSYS = syscall.Errno(0x5a)
-- ENOTBLK = syscall.Errno(0xf)
- ENOTCONN = syscall.Errno(0x39)
-- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x42)
- ENOTNAM = syscall.Errno(0x76)
- ENOTRECOVERABLE = syscall.Errno(0x85)
- ENOTSOCK = syscall.Errno(0x26)
- ENOTSUP = syscall.Errno(0x2d)
-- ENOTTY = syscall.Errno(0x19)
- ENOTUNIQ = syscall.Errno(0x73)
-- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x2d)
- EOVERFLOW = syscall.Errno(0x5c)
- EOWNERDEAD = syscall.Errno(0x84)
-- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x2e)
-- EPIPE = syscall.Errno(0x20)
- EPROCLIM = syscall.Errno(0x43)
- EPROTO = syscall.Errno(0x56)
- EPROTONOSUPPORT = syscall.Errno(0x2b)
- EPROTOTYPE = syscall.Errno(0x29)
-- ERANGE = syscall.Errno(0x22)
- EREMCHG = syscall.Errno(0x59)
- EREMOTE = syscall.Errno(0x47)
- EREMOTEIO = syscall.Errno(0x79)
- ERESTART = syscall.Errno(0x74)
- ERFKILL = syscall.Errno(0x86)
-- EROFS = syscall.Errno(0x1e)
- ERREMOTE = syscall.Errno(0x51)
- ESHUTDOWN = syscall.Errno(0x3a)
- ESOCKTNOSUPPORT = syscall.Errno(0x2c)
-- ESPIPE = syscall.Errno(0x1d)
-- ESRCH = syscall.Errno(0x3)
- ESRMNT = syscall.Errno(0x54)
- ESTALE = syscall.Errno(0x46)
- ESTRPIPE = syscall.Errno(0x5b)
- ETIME = syscall.Errno(0x49)
- ETIMEDOUT = syscall.Errno(0x3c)
- ETOOMANYREFS = syscall.Errno(0x3b)
-- ETXTBSY = syscall.Errno(0x1a)
- EUCLEAN = syscall.Errno(0x75)
- EUNATCH = syscall.Errno(0x63)
- EUSERS = syscall.Errno(0x44)
-- EWOULDBLOCK = syscall.Errno(0xb)
-- EXDEV = syscall.Errno(0x12)
- EXFULL = syscall.Errno(0x68)
- )
-
- // Signals
- const (
-- SIGABRT = syscall.Signal(0x6)
-- SIGALRM = syscall.Signal(0xe)
- SIGBUS = syscall.Signal(0xa)
- SIGCHLD = syscall.Signal(0x14)
- SIGCLD = syscall.Signal(0x14)
- SIGCONT = syscall.Signal(0x13)
- SIGEMT = syscall.Signal(0x7)
-- SIGFPE = syscall.Signal(0x8)
-- SIGHUP = syscall.Signal(0x1)
-- SIGILL = syscall.Signal(0x4)
-- SIGINT = syscall.Signal(0x2)
- SIGIO = syscall.Signal(0x17)
-- SIGIOT = syscall.Signal(0x6)
-- SIGKILL = syscall.Signal(0x9)
- SIGLOST = syscall.Signal(0x1d)
-- SIGPIPE = syscall.Signal(0xd)
- SIGPOLL = syscall.Signal(0x17)
- SIGPROF = syscall.Signal(0x1b)
- SIGPWR = syscall.Signal(0x1d)
-- SIGQUIT = syscall.Signal(0x3)
-- SIGSEGV = syscall.Signal(0xb)
- SIGSTOP = syscall.Signal(0x11)
- SIGSYS = syscall.Signal(0xc)
-- SIGTERM = syscall.Signal(0xf)
-- SIGTRAP = syscall.Signal(0x5)
- SIGTSTP = syscall.Signal(0x12)
- SIGTTIN = syscall.Signal(0x15)
- SIGTTOU = syscall.Signal(0x16)
-@@ -1969,174 +660,182 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "no such device or address",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource temporarily unavailable",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device or resource busy",
-- 17: "file exists",
-- 18: "invalid cross-device link",
-- 19: "no such device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "numerical result out of range",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol",
-- 48: "address already in use",
-- 49: "cannot assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "transport endpoint is already connected",
-- 57: "transport endpoint is not connected",
-- 58: "cannot send after transport endpoint shutdown",
-- 59: "too many references: cannot splice",
-- 60: "connection timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disk quota exceeded",
-- 70: "stale file handle",
-- 71: "object is remote",
-- 72: "device not a stream",
-- 73: "timer expired",
-- 74: "out of streams resources",
-- 75: "no message of desired type",
-- 76: "bad message",
-- 77: "identifier removed",
-- 78: "resource deadlock avoided",
-- 79: "no locks available",
-- 80: "machine is not on the network",
-- 81: "unknown error 81",
-- 82: "link has been severed",
-- 83: "advertise error",
-- 84: "srmount error",
-- 85: "communication error on send",
-- 86: "protocol error",
-- 87: "multihop attempted",
-- 88: "RFS specific error",
-- 89: "remote address changed",
-- 90: "function not implemented",
-- 91: "streams pipe error",
-- 92: "value too large for defined data type",
-- 93: "file descriptor in bad state",
-- 94: "channel number out of range",
-- 95: "level 2 not synchronized",
-- 96: "level 3 halted",
-- 97: "level 3 reset",
-- 98: "link number out of range",
-- 99: "protocol driver not attached",
-- 100: "no CSI structure available",
-- 101: "level 2 halted",
-- 102: "invalid exchange",
-- 103: "invalid request descriptor",
-- 104: "exchange full",
-- 105: "no anode",
-- 106: "invalid request code",
-- 107: "invalid slot",
-- 108: "file locking deadlock error",
-- 109: "bad font file format",
-- 110: "cannot exec a shared library directly",
-- 111: "no data available",
-- 112: "accessing a corrupted shared library",
-- 113: "package not installed",
-- 114: "can not access a needed shared library",
-- 115: "name not unique on network",
-- 116: "interrupted system call should be restarted",
-- 117: "structure needs cleaning",
-- 118: "not a XENIX named type file",
-- 119: "no XENIX semaphores available",
-- 120: "is a named type file",
-- 121: "remote I/O error",
-- 122: "invalid or incomplete multibyte or wide character",
-- 123: "attempting to link in too many shared libraries",
-- 124: ".lib section in a.out corrupted",
-- 125: "no medium found",
-- 126: "wrong medium type",
-- 127: "operation canceled",
-- 128: "required key not available",
-- 129: "key has expired",
-- 130: "key has been revoked",
-- 131: "key was rejected by service",
-- 132: "owner died",
-- 133: "state not recoverable",
-- 134: "operation not possible due to RF-kill",
-- 135: "memory page has hardware error",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device or resource busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "invalid cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "numerical result out of range"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "ENOTSUP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "transport endpoint is already connected"},
-+ {57, "ENOTCONN", "transport endpoint is not connected"},
-+ {58, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {60, "ETIMEDOUT", "connection timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disk quota exceeded"},
-+ {70, "ESTALE", "stale file handle"},
-+ {71, "EREMOTE", "object is remote"},
-+ {72, "ENOSTR", "device not a stream"},
-+ {73, "ETIME", "timer expired"},
-+ {74, "ENOSR", "out of streams resources"},
-+ {75, "ENOMSG", "no message of desired type"},
-+ {76, "EBADMSG", "bad message"},
-+ {77, "EIDRM", "identifier removed"},
-+ {78, "EDEADLK", "resource deadlock avoided"},
-+ {79, "ENOLCK", "no locks available"},
-+ {80, "ENONET", "machine is not on the network"},
-+ {81, "ERREMOTE", "unknown error 81"},
-+ {82, "ENOLINK", "link has been severed"},
-+ {83, "EADV", "advertise error"},
-+ {84, "ESRMNT", "srmount error"},
-+ {85, "ECOMM", "communication error on send"},
-+ {86, "EPROTO", "protocol error"},
-+ {87, "EMULTIHOP", "multihop attempted"},
-+ {88, "EDOTDOT", "RFS specific error"},
-+ {89, "EREMCHG", "remote address changed"},
-+ {90, "ENOSYS", "function not implemented"},
-+ {91, "ESTRPIPE", "streams pipe error"},
-+ {92, "EOVERFLOW", "value too large for defined data type"},
-+ {93, "EBADFD", "file descriptor in bad state"},
-+ {94, "ECHRNG", "channel number out of range"},
-+ {95, "EL2NSYNC", "level 2 not synchronized"},
-+ {96, "EL3HLT", "level 3 halted"},
-+ {97, "EL3RST", "level 3 reset"},
-+ {98, "ELNRNG", "link number out of range"},
-+ {99, "EUNATCH", "protocol driver not attached"},
-+ {100, "ENOCSI", "no CSI structure available"},
-+ {101, "EL2HLT", "level 2 halted"},
-+ {102, "EBADE", "invalid exchange"},
-+ {103, "EBADR", "invalid request descriptor"},
-+ {104, "EXFULL", "exchange full"},
-+ {105, "ENOANO", "no anode"},
-+ {106, "EBADRQC", "invalid request code"},
-+ {107, "EBADSLT", "invalid slot"},
-+ {108, "EDEADLOCK", "file locking deadlock error"},
-+ {109, "EBFONT", "bad font file format"},
-+ {110, "ELIBEXEC", "cannot exec a shared library directly"},
-+ {111, "ENODATA", "no data available"},
-+ {112, "ELIBBAD", "accessing a corrupted shared library"},
-+ {113, "ENOPKG", "package not installed"},
-+ {114, "ELIBACC", "can not access a needed shared library"},
-+ {115, "ENOTUNIQ", "name not unique on network"},
-+ {116, "ERESTART", "interrupted system call should be restarted"},
-+ {117, "EUCLEAN", "structure needs cleaning"},
-+ {118, "ENOTNAM", "not a XENIX named type file"},
-+ {119, "ENAVAIL", "no XENIX semaphores available"},
-+ {120, "EISNAM", "is a named type file"},
-+ {121, "EREMOTEIO", "remote I/O error"},
-+ {122, "EILSEQ", "invalid or incomplete multibyte or wide character"},
-+ {123, "ELIBMAX", "attempting to link in too many shared libraries"},
-+ {124, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {125, "ENOMEDIUM", "no medium found"},
-+ {126, "EMEDIUMTYPE", "wrong medium type"},
-+ {127, "ECANCELED", "operation canceled"},
-+ {128, "ENOKEY", "required key not available"},
-+ {129, "EKEYEXPIRED", "key has expired"},
-+ {130, "EKEYREVOKED", "key has been revoked"},
-+ {131, "EKEYREJECTED", "key was rejected by service"},
-+ {132, "EOWNERDEAD", "owner died"},
-+ {133, "ENOTRECOVERABLE", "state not recoverable"},
-+ {134, "ERFKILL", "operation not possible due to RF-kill"},
-+ {135, "EHWPOISON", "memory page has hardware error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/breakpoint trap",
-- 6: "aborted",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "stopped (signal)",
-- 18: "stopped",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "CPU time limit exceeded",
-- 25: "file size limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window changed",
-- 29: "resource lost",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/breakpoint trap"},
-+ {6, "SIGABRT", "aborted"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "stopped (signal)"},
-+ {18, "SIGTSTP", "stopped"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "CPU time limit exceeded"},
-+ {25, "SIGXFSZ", "file size limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window changed"},
-+ {29, "SIGLOST", "power failure"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go
-index b4338d5f..96b9b8ab 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go
-@@ -1,9 +1,9 @@
- // mkerrors.sh -m32
--// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build 386,netbsd
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m32 _const.go
-
- package unix
-@@ -159,6 +159,7 @@ const (
- CLONE_VFORK = 0x4000
- CLONE_VM = 0x100
- CREAD = 0x800
-+ CRTSCTS = 0x10000
- CS5 = 0x0
- CS6 = 0x100
- CS7 = 0x200
-@@ -169,6 +170,8 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0xc
- CTL_NET = 0x4
- CTL_QUERY = -0x2
-@@ -547,6 +550,10 @@ const (
- EV_ONESHOT = 0x10
- EV_SYSFLAGS = 0xf000
- EXTA = 0x4b00
-+ EXTATTR_CMD_START = 0x1
-+ EXTATTR_CMD_STOP = 0x2
-+ EXTATTR_NAMESPACE_SYSTEM = 0x2
-+ EXTATTR_NAMESPACE_USER = 0x1
- EXTB = 0x9600
- EXTPROC = 0x800
- FD_CLOEXEC = 0x1
-@@ -581,6 +588,7 @@ const (
- F_UNLCK = 0x2
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
-@@ -970,6 +978,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LOCK_EX = 0x2
- LOCK_NB = 0x4
- LOCK_SH = 0x1
-@@ -1008,6 +1020,43 @@ const (
- MAP_WIRED = 0x800
- MCL_CURRENT = 0x1
- MCL_FUTURE = 0x2
-+ MNT_ASYNC = 0x40
-+ MNT_BASIC_FLAGS = 0xe782807f
-+ MNT_DEFEXPORTED = 0x200
-+ MNT_DISCARD = 0x800000
-+ MNT_EXKERB = 0x800
-+ MNT_EXNORESPORT = 0x8000000
-+ MNT_EXPORTANON = 0x400
-+ MNT_EXPORTED = 0x100
-+ MNT_EXPUBLIC = 0x10000000
-+ MNT_EXRDONLY = 0x80
-+ MNT_EXTATTR = 0x1000000
-+ MNT_FORCE = 0x80000
-+ MNT_GETARGS = 0x400000
-+ MNT_IGNORE = 0x100000
-+ MNT_LAZY = 0x3
-+ MNT_LOCAL = 0x1000
-+ MNT_LOG = 0x2000000
-+ MNT_NOATIME = 0x4000000
-+ MNT_NOCOREDUMP = 0x8000
-+ MNT_NODEV = 0x10
-+ MNT_NODEVMTIME = 0x40000000
-+ MNT_NOEXEC = 0x4
-+ MNT_NOSUID = 0x8
-+ MNT_NOWAIT = 0x2
-+ MNT_OP_FLAGS = 0x4d0000
-+ MNT_QUOTA = 0x2000
-+ MNT_RDONLY = 0x1
-+ MNT_RELATIME = 0x20000
-+ MNT_RELOAD = 0x40000
-+ MNT_ROOTFS = 0x4000
-+ MNT_SOFTDEP = 0x80000000
-+ MNT_SYMPERM = 0x20000000
-+ MNT_SYNCHRONOUS = 0x2
-+ MNT_UNION = 0x20
-+ MNT_UPDATE = 0x10000
-+ MNT_VISFLAGMASK = 0xff90ffff
-+ MNT_WAIT = 0x1
- MSG_BCAST = 0x100
- MSG_CMSG_CLOEXEC = 0x800
- MSG_CONTROLMBUF = 0x2000000
-@@ -1036,6 +1085,7 @@ const (
- NET_RT_MAXID = 0x6
- NET_RT_OIFLIST = 0x4
- NET_RT_OOIFLIST = 0x3
-+ NFDBITS = 0x20
- NOFLSH = 0x80000000
- NOTE_ATTRIB = 0x8
- NOTE_CHILD = 0x4
-@@ -1101,7 +1151,10 @@ const (
- RLIMIT_CPU = 0x0
- RLIMIT_DATA = 0x2
- RLIMIT_FSIZE = 0x1
-+ RLIMIT_MEMLOCK = 0x6
- RLIMIT_NOFILE = 0x8
-+ RLIMIT_NPROC = 0x7
-+ RLIMIT_RSS = 0x5
- RLIMIT_STACK = 0x3
- RLIM_INFINITY = 0x7fffffffffffffff
- RTAX_AUTHOR = 0x6
-@@ -1576,137 +1629,145 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large or too small",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol option not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "connection timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "identifier removed",
-- 83: "no message of desired type",
-- 84: "value too large to be stored in data type",
-- 85: "illegal byte sequence",
-- 86: "not supported",
-- 87: "operation Canceled",
-- 88: "bad or Corrupt message",
-- 89: "no message available",
-- 90: "no STREAM resources",
-- 91: "not a STREAM",
-- 92: "STREAM ioctl timeout",
-- 93: "attribute not found",
-- 94: "multihop attempted",
-- 95: "link has been severed",
-- 96: "protocol error",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large or too small"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol option not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "EOPNOTSUPP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "connection timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disc quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EIDRM", "identifier removed"},
-+ {83, "ENOMSG", "no message of desired type"},
-+ {84, "EOVERFLOW", "value too large to be stored in data type"},
-+ {85, "EILSEQ", "illegal byte sequence"},
-+ {86, "ENOTSUP", "not supported"},
-+ {87, "ECANCELED", "operation Canceled"},
-+ {88, "EBADMSG", "bad or Corrupt message"},
-+ {89, "ENODATA", "no message available"},
-+ {90, "ENOSR", "no STREAM resources"},
-+ {91, "ENOSTR", "not a STREAM"},
-+ {92, "ETIME", "STREAM ioctl timeout"},
-+ {93, "ENOATTR", "attribute not found"},
-+ {94, "EMULTIHOP", "multihop attempted"},
-+ {95, "ENOLINK", "link has been severed"},
-+ {96, "ELAST", "protocol error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "stopped (signal)",
-- 18: "stopped",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-- 32: "power fail/restart",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGIOT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "stopped (signal)"},
-+ {18, "SIGTSTP", "stopped"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGPWR", "power fail/restart"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
-index 4994437b..ed522a84 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
-@@ -1,9 +1,9 @@
- // mkerrors.sh -m64
--// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build amd64,netbsd
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m64 _const.go
-
- package unix
-@@ -159,6 +159,7 @@ const (
- CLONE_VFORK = 0x4000
- CLONE_VM = 0x100
- CREAD = 0x800
-+ CRTSCTS = 0x10000
- CS5 = 0x0
- CS6 = 0x100
- CS7 = 0x200
-@@ -169,6 +170,8 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0xc
- CTL_NET = 0x4
- CTL_QUERY = -0x2
-@@ -537,6 +540,10 @@ const (
- EV_ONESHOT = 0x10
- EV_SYSFLAGS = 0xf000
- EXTA = 0x4b00
-+ EXTATTR_CMD_START = 0x1
-+ EXTATTR_CMD_STOP = 0x2
-+ EXTATTR_NAMESPACE_SYSTEM = 0x2
-+ EXTATTR_NAMESPACE_USER = 0x1
- EXTB = 0x9600
- EXTPROC = 0x800
- FD_CLOEXEC = 0x1
-@@ -571,6 +578,7 @@ const (
- F_UNLCK = 0x2
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
-@@ -960,6 +968,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LOCK_EX = 0x2
- LOCK_NB = 0x4
- LOCK_SH = 0x1
-@@ -998,6 +1010,43 @@ const (
- MAP_WIRED = 0x800
- MCL_CURRENT = 0x1
- MCL_FUTURE = 0x2
-+ MNT_ASYNC = 0x40
-+ MNT_BASIC_FLAGS = 0xe782807f
-+ MNT_DEFEXPORTED = 0x200
-+ MNT_DISCARD = 0x800000
-+ MNT_EXKERB = 0x800
-+ MNT_EXNORESPORT = 0x8000000
-+ MNT_EXPORTANON = 0x400
-+ MNT_EXPORTED = 0x100
-+ MNT_EXPUBLIC = 0x10000000
-+ MNT_EXRDONLY = 0x80
-+ MNT_EXTATTR = 0x1000000
-+ MNT_FORCE = 0x80000
-+ MNT_GETARGS = 0x400000
-+ MNT_IGNORE = 0x100000
-+ MNT_LAZY = 0x3
-+ MNT_LOCAL = 0x1000
-+ MNT_LOG = 0x2000000
-+ MNT_NOATIME = 0x4000000
-+ MNT_NOCOREDUMP = 0x8000
-+ MNT_NODEV = 0x10
-+ MNT_NODEVMTIME = 0x40000000
-+ MNT_NOEXEC = 0x4
-+ MNT_NOSUID = 0x8
-+ MNT_NOWAIT = 0x2
-+ MNT_OP_FLAGS = 0x4d0000
-+ MNT_QUOTA = 0x2000
-+ MNT_RDONLY = 0x1
-+ MNT_RELATIME = 0x20000
-+ MNT_RELOAD = 0x40000
-+ MNT_ROOTFS = 0x4000
-+ MNT_SOFTDEP = 0x80000000
-+ MNT_SYMPERM = 0x20000000
-+ MNT_SYNCHRONOUS = 0x2
-+ MNT_UNION = 0x20
-+ MNT_UPDATE = 0x10000
-+ MNT_VISFLAGMASK = 0xff90ffff
-+ MNT_WAIT = 0x1
- MSG_BCAST = 0x100
- MSG_CMSG_CLOEXEC = 0x800
- MSG_CONTROLMBUF = 0x2000000
-@@ -1026,6 +1075,7 @@ const (
- NET_RT_MAXID = 0x6
- NET_RT_OIFLIST = 0x4
- NET_RT_OOIFLIST = 0x3
-+ NFDBITS = 0x20
- NOFLSH = 0x80000000
- NOTE_ATTRIB = 0x8
- NOTE_CHILD = 0x4
-@@ -1091,7 +1141,10 @@ const (
- RLIMIT_CPU = 0x0
- RLIMIT_DATA = 0x2
- RLIMIT_FSIZE = 0x1
-+ RLIMIT_MEMLOCK = 0x6
- RLIMIT_NOFILE = 0x8
-+ RLIMIT_NPROC = 0x7
-+ RLIMIT_RSS = 0x5
- RLIMIT_STACK = 0x3
- RLIM_INFINITY = 0x7fffffffffffffff
- RTAX_AUTHOR = 0x6
-@@ -1566,137 +1619,145 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large or too small",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol option not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "connection timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "identifier removed",
-- 83: "no message of desired type",
-- 84: "value too large to be stored in data type",
-- 85: "illegal byte sequence",
-- 86: "not supported",
-- 87: "operation Canceled",
-- 88: "bad or Corrupt message",
-- 89: "no message available",
-- 90: "no STREAM resources",
-- 91: "not a STREAM",
-- 92: "STREAM ioctl timeout",
-- 93: "attribute not found",
-- 94: "multihop attempted",
-- 95: "link has been severed",
-- 96: "protocol error",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large or too small"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol option not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "EOPNOTSUPP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "connection timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disc quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EIDRM", "identifier removed"},
-+ {83, "ENOMSG", "no message of desired type"},
-+ {84, "EOVERFLOW", "value too large to be stored in data type"},
-+ {85, "EILSEQ", "illegal byte sequence"},
-+ {86, "ENOTSUP", "not supported"},
-+ {87, "ECANCELED", "operation Canceled"},
-+ {88, "EBADMSG", "bad or Corrupt message"},
-+ {89, "ENODATA", "no message available"},
-+ {90, "ENOSR", "no STREAM resources"},
-+ {91, "ENOSTR", "not a STREAM"},
-+ {92, "ETIME", "STREAM ioctl timeout"},
-+ {93, "ENOATTR", "attribute not found"},
-+ {94, "EMULTIHOP", "multihop attempted"},
-+ {95, "ENOLINK", "link has been severed"},
-+ {96, "ELAST", "protocol error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "stopped (signal)",
-- 18: "stopped",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-- 32: "power fail/restart",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGIOT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "stopped (signal)"},
-+ {18, "SIGTSTP", "stopped"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGPWR", "power fail/restart"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go
-index 206c75f0..c8d36fe9 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go
-@@ -1,9 +1,9 @@
- // mkerrors.sh -marm
--// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build arm,netbsd
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -marm _const.go
-
- package unix
-@@ -151,6 +151,7 @@ const (
- CFLUSH = 0xf
- CLOCAL = 0x8000
- CREAD = 0x800
-+ CRTSCTS = 0x10000
- CS5 = 0x0
- CS6 = 0x100
- CS7 = 0x200
-@@ -161,6 +162,8 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0xc
- CTL_NET = 0x4
- CTL_QUERY = -0x2
-@@ -529,6 +532,10 @@ const (
- EV_ONESHOT = 0x10
- EV_SYSFLAGS = 0xf000
- EXTA = 0x4b00
-+ EXTATTR_CMD_START = 0x1
-+ EXTATTR_CMD_STOP = 0x2
-+ EXTATTR_NAMESPACE_SYSTEM = 0x2
-+ EXTATTR_NAMESPACE_USER = 0x1
- EXTB = 0x9600
- EXTPROC = 0x800
- FD_CLOEXEC = 0x1
-@@ -563,6 +570,7 @@ const (
- F_UNLCK = 0x2
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
-@@ -952,6 +960,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LOCK_EX = 0x2
- LOCK_NB = 0x4
- LOCK_SH = 0x1
-@@ -988,6 +1000,43 @@ const (
- MAP_STACK = 0x2000
- MAP_TRYFIXED = 0x400
- MAP_WIRED = 0x800
-+ MNT_ASYNC = 0x40
-+ MNT_BASIC_FLAGS = 0xe782807f
-+ MNT_DEFEXPORTED = 0x200
-+ MNT_DISCARD = 0x800000
-+ MNT_EXKERB = 0x800
-+ MNT_EXNORESPORT = 0x8000000
-+ MNT_EXPORTANON = 0x400
-+ MNT_EXPORTED = 0x100
-+ MNT_EXPUBLIC = 0x10000000
-+ MNT_EXRDONLY = 0x80
-+ MNT_EXTATTR = 0x1000000
-+ MNT_FORCE = 0x80000
-+ MNT_GETARGS = 0x400000
-+ MNT_IGNORE = 0x100000
-+ MNT_LAZY = 0x3
-+ MNT_LOCAL = 0x1000
-+ MNT_LOG = 0x2000000
-+ MNT_NOATIME = 0x4000000
-+ MNT_NOCOREDUMP = 0x8000
-+ MNT_NODEV = 0x10
-+ MNT_NODEVMTIME = 0x40000000
-+ MNT_NOEXEC = 0x4
-+ MNT_NOSUID = 0x8
-+ MNT_NOWAIT = 0x2
-+ MNT_OP_FLAGS = 0x4d0000
-+ MNT_QUOTA = 0x2000
-+ MNT_RDONLY = 0x1
-+ MNT_RELATIME = 0x20000
-+ MNT_RELOAD = 0x40000
-+ MNT_ROOTFS = 0x4000
-+ MNT_SOFTDEP = 0x80000000
-+ MNT_SYMPERM = 0x20000000
-+ MNT_SYNCHRONOUS = 0x2
-+ MNT_UNION = 0x20
-+ MNT_UPDATE = 0x10000
-+ MNT_VISFLAGMASK = 0xff90ffff
-+ MNT_WAIT = 0x1
- MSG_BCAST = 0x100
- MSG_CMSG_CLOEXEC = 0x800
- MSG_CONTROLMBUF = 0x2000000
-@@ -1016,6 +1065,7 @@ const (
- NET_RT_MAXID = 0x6
- NET_RT_OIFLIST = 0x4
- NET_RT_OOIFLIST = 0x3
-+ NFDBITS = 0x20
- NOFLSH = 0x80000000
- NOTE_ATTRIB = 0x8
- NOTE_CHILD = 0x4
-@@ -1081,7 +1131,10 @@ const (
- RLIMIT_CPU = 0x0
- RLIMIT_DATA = 0x2
- RLIMIT_FSIZE = 0x1
-+ RLIMIT_MEMLOCK = 0x6
- RLIMIT_NOFILE = 0x8
-+ RLIMIT_NPROC = 0x7
-+ RLIMIT_RSS = 0x5
- RLIMIT_STACK = 0x3
- RLIM_INFINITY = 0x7fffffffffffffff
- RTAX_AUTHOR = 0x6
-@@ -1555,137 +1608,145 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large or too small",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol option not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "connection timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "identifier removed",
-- 83: "no message of desired type",
-- 84: "value too large to be stored in data type",
-- 85: "illegal byte sequence",
-- 86: "not supported",
-- 87: "operation Canceled",
-- 88: "bad or Corrupt message",
-- 89: "no message available",
-- 90: "no STREAM resources",
-- 91: "not a STREAM",
-- 92: "STREAM ioctl timeout",
-- 93: "attribute not found",
-- 94: "multihop attempted",
-- 95: "link has been severed",
-- 96: "protocol error",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large or too small"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol option not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "EOPNOTSUPP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "connection timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disc quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EIDRM", "identifier removed"},
-+ {83, "ENOMSG", "no message of desired type"},
-+ {84, "EOVERFLOW", "value too large to be stored in data type"},
-+ {85, "EILSEQ", "illegal byte sequence"},
-+ {86, "ENOTSUP", "not supported"},
-+ {87, "ECANCELED", "operation Canceled"},
-+ {88, "EBADMSG", "bad or Corrupt message"},
-+ {89, "ENODATA", "no message available"},
-+ {90, "ENOSR", "no STREAM resources"},
-+ {91, "ENOSTR", "not a STREAM"},
-+ {92, "ETIME", "STREAM ioctl timeout"},
-+ {93, "ENOATTR", "attribute not found"},
-+ {94, "EMULTIHOP", "multihop attempted"},
-+ {95, "ENOLINK", "link has been severed"},
-+ {96, "ELAST", "protocol error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "stopped (signal)",
-- 18: "stopped",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-- 32: "power fail/restart",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGIOT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "stopped (signal)"},
-+ {18, "SIGTSTP", "stopped"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGPWR", "power fail/restart"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go
-similarity index 89%
-copy from vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
-copy to vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go
-index 4994437b..f1c146a7 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go
-@@ -1,9 +1,9 @@
- // mkerrors.sh -m64
--// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build amd64,netbsd
-+// +build arm64,netbsd
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m64 _const.go
-
- package unix
-@@ -159,6 +159,7 @@ const (
- CLONE_VFORK = 0x4000
- CLONE_VM = 0x100
- CREAD = 0x800
-+ CRTSCTS = 0x10000
- CS5 = 0x0
- CS6 = 0x100
- CS7 = 0x200
-@@ -169,6 +170,8 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0xc
- CTL_NET = 0x4
- CTL_QUERY = -0x2
-@@ -537,6 +540,10 @@ const (
- EV_ONESHOT = 0x10
- EV_SYSFLAGS = 0xf000
- EXTA = 0x4b00
-+ EXTATTR_CMD_START = 0x1
-+ EXTATTR_CMD_STOP = 0x2
-+ EXTATTR_NAMESPACE_SYSTEM = 0x2
-+ EXTATTR_NAMESPACE_USER = 0x1
- EXTB = 0x9600
- EXTPROC = 0x800
- FD_CLOEXEC = 0x1
-@@ -571,6 +578,7 @@ const (
- F_UNLCK = 0x2
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
-@@ -960,6 +968,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LOCK_EX = 0x2
- LOCK_NB = 0x4
- LOCK_SH = 0x1
-@@ -998,6 +1010,43 @@ const (
- MAP_WIRED = 0x800
- MCL_CURRENT = 0x1
- MCL_FUTURE = 0x2
-+ MNT_ASYNC = 0x40
-+ MNT_BASIC_FLAGS = 0xe782807f
-+ MNT_DEFEXPORTED = 0x200
-+ MNT_DISCARD = 0x800000
-+ MNT_EXKERB = 0x800
-+ MNT_EXNORESPORT = 0x8000000
-+ MNT_EXPORTANON = 0x400
-+ MNT_EXPORTED = 0x100
-+ MNT_EXPUBLIC = 0x10000000
-+ MNT_EXRDONLY = 0x80
-+ MNT_EXTATTR = 0x1000000
-+ MNT_FORCE = 0x80000
-+ MNT_GETARGS = 0x400000
-+ MNT_IGNORE = 0x100000
-+ MNT_LAZY = 0x3
-+ MNT_LOCAL = 0x1000
-+ MNT_LOG = 0x2000000
-+ MNT_NOATIME = 0x4000000
-+ MNT_NOCOREDUMP = 0x8000
-+ MNT_NODEV = 0x10
-+ MNT_NODEVMTIME = 0x40000000
-+ MNT_NOEXEC = 0x4
-+ MNT_NOSUID = 0x8
-+ MNT_NOWAIT = 0x2
-+ MNT_OP_FLAGS = 0x4d0000
-+ MNT_QUOTA = 0x2000
-+ MNT_RDONLY = 0x1
-+ MNT_RELATIME = 0x20000
-+ MNT_RELOAD = 0x40000
-+ MNT_ROOTFS = 0x4000
-+ MNT_SOFTDEP = 0x80000000
-+ MNT_SYMPERM = 0x20000000
-+ MNT_SYNCHRONOUS = 0x2
-+ MNT_UNION = 0x20
-+ MNT_UPDATE = 0x10000
-+ MNT_VISFLAGMASK = 0xff90ffff
-+ MNT_WAIT = 0x1
- MSG_BCAST = 0x100
- MSG_CMSG_CLOEXEC = 0x800
- MSG_CONTROLMBUF = 0x2000000
-@@ -1026,6 +1075,7 @@ const (
- NET_RT_MAXID = 0x6
- NET_RT_OIFLIST = 0x4
- NET_RT_OOIFLIST = 0x3
-+ NFDBITS = 0x20
- NOFLSH = 0x80000000
- NOTE_ATTRIB = 0x8
- NOTE_CHILD = 0x4
-@@ -1091,7 +1141,10 @@ const (
- RLIMIT_CPU = 0x0
- RLIMIT_DATA = 0x2
- RLIMIT_FSIZE = 0x1
-+ RLIMIT_MEMLOCK = 0x6
- RLIMIT_NOFILE = 0x8
-+ RLIMIT_NPROC = 0x7
-+ RLIMIT_RSS = 0x5
- RLIMIT_STACK = 0x3
- RLIM_INFINITY = 0x7fffffffffffffff
- RTAX_AUTHOR = 0x6
-@@ -1566,137 +1619,145 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large or too small",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol option not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "connection timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "identifier removed",
-- 83: "no message of desired type",
-- 84: "value too large to be stored in data type",
-- 85: "illegal byte sequence",
-- 86: "not supported",
-- 87: "operation Canceled",
-- 88: "bad or Corrupt message",
-- 89: "no message available",
-- 90: "no STREAM resources",
-- 91: "not a STREAM",
-- 92: "STREAM ioctl timeout",
-- 93: "attribute not found",
-- 94: "multihop attempted",
-- 95: "link has been severed",
-- 96: "protocol error",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large or too small"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol option not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "EOPNOTSUPP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "connection timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disc quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EIDRM", "identifier removed"},
-+ {83, "ENOMSG", "no message of desired type"},
-+ {84, "EOVERFLOW", "value too large to be stored in data type"},
-+ {85, "EILSEQ", "illegal byte sequence"},
-+ {86, "ENOTSUP", "not supported"},
-+ {87, "ECANCELED", "operation Canceled"},
-+ {88, "EBADMSG", "bad or Corrupt message"},
-+ {89, "ENODATA", "no message available"},
-+ {90, "ENOSR", "no STREAM resources"},
-+ {91, "ENOSTR", "not a STREAM"},
-+ {92, "ETIME", "STREAM ioctl timeout"},
-+ {93, "ENOATTR", "attribute not found"},
-+ {94, "EMULTIHOP", "multihop attempted"},
-+ {95, "ENOLINK", "link has been severed"},
-+ {96, "ELAST", "protocol error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "stopped (signal)",
-- 18: "stopped",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-- 32: "power fail/restart",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGIOT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "stopped (signal)"},
-+ {18, "SIGTSTP", "stopped"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGPWR", "power fail/restart"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go
-index 3322e998..5402bd55 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go
-@@ -1,9 +1,9 @@
- // mkerrors.sh -m32
--// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build 386,openbsd
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m32 _const.go
-
- package unix
-@@ -147,6 +147,7 @@ const (
- CFLUSH = 0xf
- CLOCAL = 0x8000
- CREAD = 0x800
-+ CRTSCTS = 0x10000
- CS5 = 0x0
- CS6 = 0x100
- CS7 = 0x200
-@@ -157,6 +158,8 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0xc
- CTL_NET = 0x4
- DIOCOSFPFLUSH = 0x2000444e
-@@ -442,6 +445,7 @@ const (
- F_UNLCK = 0x2
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
-@@ -860,6 +864,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LCNT_OVERLOAD_FLUSH = 0x6
- LOCK_EX = 0x2
- LOCK_NB = 0x4
-@@ -873,14 +881,15 @@ const (
- MADV_SPACEAVAIL = 0x5
- MADV_WILLNEED = 0x3
- MAP_ANON = 0x1000
-- MAP_COPY = 0x4
-+ MAP_ANONYMOUS = 0x1000
-+ MAP_CONCEAL = 0x8000
-+ MAP_COPY = 0x2
- MAP_FILE = 0x0
- MAP_FIXED = 0x10
-- MAP_FLAGMASK = 0x1ff7
-- MAP_HASSEMAPHORE = 0x200
-- MAP_INHERIT = 0x80
-+ MAP_FLAGMASK = 0xfff7
-+ MAP_HASSEMAPHORE = 0x0
-+ MAP_INHERIT = 0x0
- MAP_INHERIT_COPY = 0x1
-- MAP_INHERIT_DONATE_COPY = 0x3
- MAP_INHERIT_NONE = 0x2
- MAP_INHERIT_SHARE = 0x0
- MAP_NOEXTEND = 0x100
-@@ -888,9 +897,36 @@ const (
- MAP_PRIVATE = 0x2
- MAP_RENAME = 0x20
- MAP_SHARED = 0x1
-- MAP_TRYFIXED = 0x400
-+ MAP_STACK = 0x4000
-+ MAP_TRYFIXED = 0x0
- MCL_CURRENT = 0x1
- MCL_FUTURE = 0x2
-+ MNT_ASYNC = 0x40
-+ MNT_DEFEXPORTED = 0x200
-+ MNT_DELEXPORT = 0x20000
-+ MNT_DOOMED = 0x8000000
-+ MNT_EXPORTANON = 0x400
-+ MNT_EXPORTED = 0x100
-+ MNT_EXRDONLY = 0x80
-+ MNT_FORCE = 0x80000
-+ MNT_LAZY = 0x3
-+ MNT_LOCAL = 0x1000
-+ MNT_NOATIME = 0x8000
-+ MNT_NODEV = 0x10
-+ MNT_NOEXEC = 0x4
-+ MNT_NOSUID = 0x8
-+ MNT_NOWAIT = 0x2
-+ MNT_QUOTA = 0x2000
-+ MNT_RDONLY = 0x1
-+ MNT_RELOAD = 0x40000
-+ MNT_ROOTFS = 0x4000
-+ MNT_SOFTDEP = 0x4000000
-+ MNT_SYNCHRONOUS = 0x2
-+ MNT_UPDATE = 0x10000
-+ MNT_VISFLAGMASK = 0x400ffff
-+ MNT_WAIT = 0x1
-+ MNT_WANTRDWR = 0x2000000
-+ MNT_WXALLOWED = 0x800
- MSG_BCAST = 0x100
- MSG_CTRUNC = 0x20
- MSG_DONTROUTE = 0x4
-@@ -912,6 +948,7 @@ const (
- NET_RT_MAXID = 0x6
- NET_RT_STATS = 0x4
- NET_RT_TABLE = 0x5
-+ NFDBITS = 0x20
- NOFLSH = 0x80000000
- NOTE_ATTRIB = 0x8
- NOTE_CHILD = 0x4
-@@ -1210,6 +1247,34 @@ const (
- SO_TIMESTAMP = 0x800
- SO_TYPE = 0x1008
- SO_USELOOPBACK = 0x40
-+ S_BLKSIZE = 0x200
-+ S_IEXEC = 0x40
-+ S_IFBLK = 0x6000
-+ S_IFCHR = 0x2000
-+ S_IFDIR = 0x4000
-+ S_IFIFO = 0x1000
-+ S_IFLNK = 0xa000
-+ S_IFMT = 0xf000
-+ S_IFREG = 0x8000
-+ S_IFSOCK = 0xc000
-+ S_IREAD = 0x100
-+ S_IRGRP = 0x20
-+ S_IROTH = 0x4
-+ S_IRUSR = 0x100
-+ S_IRWXG = 0x38
-+ S_IRWXO = 0x7
-+ S_IRWXU = 0x1c0
-+ S_ISGID = 0x400
-+ S_ISTXT = 0x200
-+ S_ISUID = 0x800
-+ S_ISVTX = 0x200
-+ S_IWGRP = 0x10
-+ S_IWOTH = 0x2
-+ S_IWRITE = 0x80
-+ S_IWUSR = 0x80
-+ S_IXGRP = 0x8
-+ S_IXOTH = 0x1
-+ S_IXUSR = 0x40
- TCIFLUSH = 0x1
- TCIOFLUSH = 0x3
- TCOFLUSH = 0x2
-@@ -1453,132 +1518,140 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "connection timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "IPsec processing failure",
-- 83: "attribute not found",
-- 84: "illegal byte sequence",
-- 85: "no medium found",
-- 86: "wrong medium type",
-- 87: "value too large to be stored in data type",
-- 88: "operation canceled",
-- 89: "identifier removed",
-- 90: "no message of desired type",
-- 91: "not supported",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "EWOULDBLOCK", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "EOPNOTSUPP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "operation timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disk quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC program not available"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EIPSEC", "IPsec processing failure"},
-+ {83, "ENOATTR", "attribute not found"},
-+ {84, "EILSEQ", "illegal byte sequence"},
-+ {85, "ENOMEDIUM", "no medium found"},
-+ {86, "EMEDIUMTYPE", "wrong medium type"},
-+ {87, "EOVERFLOW", "value too large to be stored in data type"},
-+ {88, "ECANCELED", "operation canceled"},
-+ {89, "EIDRM", "identifier removed"},
-+ {90, "ENOMSG", "no message of desired type"},
-+ {91, "ELAST", "not supported"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "stopped (signal)",
-- 18: "stopped",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-- 32: "thread AST",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGABRT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "suspended (signal)"},
-+ {18, "SIGTSTP", "suspended"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGTHR", "thread AST"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
-index 1758ecca..ffaf2d2f 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
-@@ -1,9 +1,9 @@
- // mkerrors.sh -m64
--// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build amd64,openbsd
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m64 _const.go
-
- package unix
-@@ -45,6 +45,7 @@ const (
- AF_SNA = 0xb
- AF_UNIX = 0x1
- AF_UNSPEC = 0x0
-+ ALTWERASE = 0x200
- ARPHRD_ETHER = 0x1
- ARPHRD_FRELAY = 0xf
- ARPHRD_IEEE1394 = 0x18
-@@ -146,7 +147,14 @@ const (
- BRKINT = 0x2
- CFLUSH = 0xf
- CLOCAL = 0x8000
-+ CLOCK_BOOTTIME = 0x6
-+ CLOCK_MONOTONIC = 0x3
-+ CLOCK_PROCESS_CPUTIME_ID = 0x2
-+ CLOCK_REALTIME = 0x0
-+ CLOCK_THREAD_CPUTIME_ID = 0x4
-+ CLOCK_UPTIME = 0x5
- CREAD = 0x800
-+ CRTSCTS = 0x10000
- CS5 = 0x0
- CS6 = 0x100
- CS7 = 0x200
-@@ -157,6 +165,8 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0xc
- CTL_NET = 0x4
- DIOCOSFPFLUSH = 0x2000444e
-@@ -175,6 +185,7 @@ const (
- DLT_LOOP = 0xc
- DLT_MPLS = 0xdb
- DLT_NULL = 0x0
-+ DLT_OPENFLOW = 0x10b
- DLT_PFLOG = 0x75
- DLT_PFSYNC = 0x12
- DLT_PPP = 0x9
-@@ -185,6 +196,23 @@ const (
- DLT_RAW = 0xe
- DLT_SLIP = 0x8
- DLT_SLIP_BSDOS = 0xf
-+ DLT_USBPCAP = 0xf9
-+ DLT_USER0 = 0x93
-+ DLT_USER1 = 0x94
-+ DLT_USER10 = 0x9d
-+ DLT_USER11 = 0x9e
-+ DLT_USER12 = 0x9f
-+ DLT_USER13 = 0xa0
-+ DLT_USER14 = 0xa1
-+ DLT_USER15 = 0xa2
-+ DLT_USER2 = 0x95
-+ DLT_USER3 = 0x96
-+ DLT_USER4 = 0x97
-+ DLT_USER5 = 0x98
-+ DLT_USER6 = 0x99
-+ DLT_USER7 = 0x9a
-+ DLT_USER8 = 0x9b
-+ DLT_USER9 = 0x9c
- DT_BLK = 0x6
- DT_CHR = 0x2
- DT_DIR = 0x4
-@@ -398,27 +426,38 @@ const (
- ETHER_CRC_POLY_LE = 0xedb88320
- ETHER_HDR_LEN = 0xe
- ETHER_MAX_DIX_LEN = 0x600
-+ ETHER_MAX_HARDMTU_LEN = 0xff9b
- ETHER_MAX_LEN = 0x5ee
- ETHER_MIN_LEN = 0x40
- ETHER_TYPE_LEN = 0x2
- ETHER_VLAN_ENCAP_LEN = 0x4
- EVFILT_AIO = -0x3
-+ EVFILT_DEVICE = -0x8
- EVFILT_PROC = -0x5
- EVFILT_READ = -0x1
- EVFILT_SIGNAL = -0x6
-- EVFILT_SYSCOUNT = 0x7
-+ EVFILT_SYSCOUNT = 0x8
- EVFILT_TIMER = -0x7
- EVFILT_VNODE = -0x4
- EVFILT_WRITE = -0x2
-+ EVL_ENCAPLEN = 0x4
-+ EVL_PRIO_BITS = 0xd
-+ EVL_PRIO_MAX = 0x7
-+ EVL_VLID_MASK = 0xfff
-+ EVL_VLID_MAX = 0xffe
-+ EVL_VLID_MIN = 0x1
-+ EVL_VLID_NULL = 0x0
- EV_ADD = 0x1
- EV_CLEAR = 0x20
- EV_DELETE = 0x2
- EV_DISABLE = 0x8
-+ EV_DISPATCH = 0x80
- EV_ENABLE = 0x4
- EV_EOF = 0x8000
- EV_ERROR = 0x4000
- EV_FLAG1 = 0x2000
- EV_ONESHOT = 0x10
-+ EV_RECEIPT = 0x40
- EV_SYSFLAGS = 0xf000
- EXTA = 0x4b00
- EXTB = 0x9600
-@@ -432,6 +471,7 @@ const (
- F_GETFL = 0x3
- F_GETLK = 0x7
- F_GETOWN = 0x5
-+ F_ISATTY = 0xb
- F_OK = 0x0
- F_RDLCK = 0x1
- F_SETFD = 0x2
-@@ -442,13 +482,13 @@ const (
- F_UNLCK = 0x2
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
- IEXTEN = 0x400
- IFAN_ARRIVAL = 0x0
- IFAN_DEPARTURE = 0x1
-- IFA_ROUTE = 0x1
- IFF_ALLMULTI = 0x200
- IFF_BROADCAST = 0x2
- IFF_CANTCHANGE = 0x8e52
-@@ -459,12 +499,12 @@ const (
- IFF_LOOPBACK = 0x8
- IFF_MULTICAST = 0x8000
- IFF_NOARP = 0x80
-- IFF_NOTRAILERS = 0x20
- IFF_OACTIVE = 0x400
- IFF_POINTOPOINT = 0x10
- IFF_PROMISC = 0x100
- IFF_RUNNING = 0x40
- IFF_SIMPLEX = 0x800
-+ IFF_STATICARP = 0x20
- IFF_UP = 0x1
- IFNAMSIZ = 0x10
- IFT_1822 = 0x2
-@@ -593,6 +633,7 @@ const (
- IFT_LINEGROUP = 0xd2
- IFT_LOCALTALK = 0x2a
- IFT_LOOP = 0x18
-+ IFT_MBIM = 0xfa
- IFT_MEDIAMAILOVERIP = 0x8b
- IFT_MFSIGLINK = 0xa7
- IFT_MIOX25 = 0x26
-@@ -717,8 +758,6 @@ const (
- IPPROTO_AH = 0x33
- IPPROTO_CARP = 0x70
- IPPROTO_DIVERT = 0x102
-- IPPROTO_DIVERT_INIT = 0x2
-- IPPROTO_DIVERT_RESP = 0x1
- IPPROTO_DONE = 0x101
- IPPROTO_DSTOPTS = 0x3c
- IPPROTO_EGP = 0x8
-@@ -775,6 +814,7 @@ const (
- IPV6_LEAVE_GROUP = 0xd
- IPV6_MAXHLIM = 0xff
- IPV6_MAXPACKET = 0xffff
-+ IPV6_MINHOPCOUNT = 0x41
- IPV6_MMTU = 0x500
- IPV6_MULTICAST_HOPS = 0xa
- IPV6_MULTICAST_IF = 0x9
-@@ -814,12 +854,12 @@ const (
- IP_DEFAULT_MULTICAST_LOOP = 0x1
- IP_DEFAULT_MULTICAST_TTL = 0x1
- IP_DF = 0x4000
-- IP_DIVERTFL = 0x1022
- IP_DROP_MEMBERSHIP = 0xd
- IP_ESP_NETWORK_LEVEL = 0x16
- IP_ESP_TRANS_LEVEL = 0x15
- IP_HDRINCL = 0x2
- IP_IPCOMP_LEVEL = 0x1d
-+ IP_IPDEFTTL = 0x25
- IP_IPSECFLOWINFO = 0x24
- IP_IPSEC_LOCAL_AUTH = 0x1b
- IP_IPSEC_LOCAL_CRED = 0x19
-@@ -853,13 +893,19 @@ const (
- IP_RETOPTS = 0x8
- IP_RF = 0x8000
- IP_RTABLE = 0x1021
-+ IP_SENDSRCADDR = 0x7
- IP_TOS = 0x3
- IP_TTL = 0x4
- ISIG = 0x80
- ISTRIP = 0x20
-+ IUCLC = 0x1000
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LCNT_OVERLOAD_FLUSH = 0x6
- LOCK_EX = 0x2
- LOCK_NB = 0x4
-@@ -873,25 +919,57 @@ const (
- MADV_SPACEAVAIL = 0x5
- MADV_WILLNEED = 0x3
- MAP_ANON = 0x1000
-- MAP_COPY = 0x4
-+ MAP_ANONYMOUS = 0x1000
-+ MAP_CONCEAL = 0x8000
-+ MAP_COPY = 0x2
- MAP_FILE = 0x0
- MAP_FIXED = 0x10
-- MAP_FLAGMASK = 0x1ff7
-- MAP_HASSEMAPHORE = 0x200
-- MAP_INHERIT = 0x80
-+ MAP_FLAGMASK = 0xfff7
-+ MAP_HASSEMAPHORE = 0x0
-+ MAP_INHERIT = 0x0
- MAP_INHERIT_COPY = 0x1
-- MAP_INHERIT_DONATE_COPY = 0x3
- MAP_INHERIT_NONE = 0x2
- MAP_INHERIT_SHARE = 0x0
-- MAP_NOEXTEND = 0x100
-- MAP_NORESERVE = 0x40
-+ MAP_INHERIT_ZERO = 0x3
-+ MAP_NOEXTEND = 0x0
-+ MAP_NORESERVE = 0x0
- MAP_PRIVATE = 0x2
-- MAP_RENAME = 0x20
-+ MAP_RENAME = 0x0
- MAP_SHARED = 0x1
-- MAP_TRYFIXED = 0x400
-+ MAP_STACK = 0x4000
-+ MAP_TRYFIXED = 0x0
- MCL_CURRENT = 0x1
- MCL_FUTURE = 0x2
-+ MNT_ASYNC = 0x40
-+ MNT_DEFEXPORTED = 0x200
-+ MNT_DELEXPORT = 0x20000
-+ MNT_DOOMED = 0x8000000
-+ MNT_EXPORTANON = 0x400
-+ MNT_EXPORTED = 0x100
-+ MNT_EXRDONLY = 0x80
-+ MNT_FORCE = 0x80000
-+ MNT_LAZY = 0x3
-+ MNT_LOCAL = 0x1000
-+ MNT_NOATIME = 0x8000
-+ MNT_NODEV = 0x10
-+ MNT_NOEXEC = 0x4
-+ MNT_NOPERM = 0x20
-+ MNT_NOSUID = 0x8
-+ MNT_NOWAIT = 0x2
-+ MNT_QUOTA = 0x2000
-+ MNT_RDONLY = 0x1
-+ MNT_RELOAD = 0x40000
-+ MNT_ROOTFS = 0x4000
-+ MNT_SOFTDEP = 0x4000000
-+ MNT_STALLED = 0x100000
-+ MNT_SYNCHRONOUS = 0x2
-+ MNT_UPDATE = 0x10000
-+ MNT_VISFLAGMASK = 0x400ffff
-+ MNT_WAIT = 0x1
-+ MNT_WANTRDWR = 0x2000000
-+ MNT_WXALLOWED = 0x800
- MSG_BCAST = 0x100
-+ MSG_CMSG_CLOEXEC = 0x800
- MSG_CTRUNC = 0x20
- MSG_DONTROUTE = 0x4
- MSG_DONTWAIT = 0x80
-@@ -909,11 +987,15 @@ const (
- NET_RT_DUMP = 0x1
- NET_RT_FLAGS = 0x2
- NET_RT_IFLIST = 0x3
-- NET_RT_MAXID = 0x6
-+ NET_RT_IFNAMES = 0x6
-+ NET_RT_MAXID = 0x7
- NET_RT_STATS = 0x4
- NET_RT_TABLE = 0x5
-+ NFDBITS = 0x20
- NOFLSH = 0x80000000
-+ NOKERNINFO = 0x2000000
- NOTE_ATTRIB = 0x8
-+ NOTE_CHANGE = 0x1
- NOTE_CHILD = 0x4
- NOTE_DELETE = 0x1
- NOTE_EOF = 0x2
-@@ -932,11 +1014,13 @@ const (
- NOTE_TRUNCATE = 0x80
- NOTE_WRITE = 0x2
- OCRNL = 0x10
-+ OLCUC = 0x20
- ONLCR = 0x2
- ONLRET = 0x80
- ONOCR = 0x40
- ONOEOT = 0x8
- OPOST = 0x1
-+ OXTABS = 0x4
- O_ACCMODE = 0x3
- O_APPEND = 0x8
- O_ASYNC = 0x40
-@@ -974,23 +1058,32 @@ const (
- RLIMIT_CPU = 0x0
- RLIMIT_DATA = 0x2
- RLIMIT_FSIZE = 0x1
-+ RLIMIT_MEMLOCK = 0x6
- RLIMIT_NOFILE = 0x8
-+ RLIMIT_NPROC = 0x7
-+ RLIMIT_RSS = 0x5
- RLIMIT_STACK = 0x3
- RLIM_INFINITY = 0x7fffffffffffffff
- RTAX_AUTHOR = 0x6
-+ RTAX_BFD = 0xb
- RTAX_BRD = 0x7
-+ RTAX_DNS = 0xc
- RTAX_DST = 0x0
- RTAX_GATEWAY = 0x1
- RTAX_GENMASK = 0x3
- RTAX_IFA = 0x5
- RTAX_IFP = 0x4
- RTAX_LABEL = 0xa
-- RTAX_MAX = 0xb
-+ RTAX_MAX = 0xf
- RTAX_NETMASK = 0x2
-+ RTAX_SEARCH = 0xe
- RTAX_SRC = 0x8
- RTAX_SRCMASK = 0x9
-+ RTAX_STATIC = 0xd
- RTA_AUTHOR = 0x40
-+ RTA_BFD = 0x800
- RTA_BRD = 0x80
-+ RTA_DNS = 0x1000
- RTA_DST = 0x1
- RTA_GATEWAY = 0x2
- RTA_GENMASK = 0x8
-@@ -998,34 +1091,39 @@ const (
- RTA_IFP = 0x10
- RTA_LABEL = 0x400
- RTA_NETMASK = 0x4
-+ RTA_SEARCH = 0x4000
- RTA_SRC = 0x100
- RTA_SRCMASK = 0x200
-+ RTA_STATIC = 0x2000
- RTF_ANNOUNCE = 0x4000
-+ RTF_BFD = 0x1000000
- RTF_BLACKHOLE = 0x1000
-+ RTF_BROADCAST = 0x400000
-+ RTF_CACHED = 0x20000
- RTF_CLONED = 0x10000
- RTF_CLONING = 0x100
-+ RTF_CONNECTED = 0x800000
- RTF_DONE = 0x40
- RTF_DYNAMIC = 0x10
-- RTF_FMASK = 0x10f808
-+ RTF_FMASK = 0x110fc08
- RTF_GATEWAY = 0x2
- RTF_HOST = 0x4
- RTF_LLINFO = 0x400
-- RTF_MASK = 0x80
-+ RTF_LOCAL = 0x200000
- RTF_MODIFIED = 0x20
- RTF_MPATH = 0x40000
- RTF_MPLS = 0x100000
-+ RTF_MULTICAST = 0x200
- RTF_PERMANENT_ARP = 0x2000
- RTF_PROTO1 = 0x8000
- RTF_PROTO2 = 0x4000
- RTF_PROTO3 = 0x2000
- RTF_REJECT = 0x8
-- RTF_SOURCE = 0x20000
- RTF_STATIC = 0x800
-- RTF_TUNNEL = 0x100000
- RTF_UP = 0x1
- RTF_USETRAILERS = 0x8000
-- RTF_XRESOLVE = 0x200
- RTM_ADD = 0x1
-+ RTM_BFD = 0x12
- RTM_CHANGE = 0x3
- RTM_DELADDR = 0xd
- RTM_DELETE = 0x2
-@@ -1033,11 +1131,13 @@ const (
- RTM_GET = 0x4
- RTM_IFANNOUNCE = 0xf
- RTM_IFINFO = 0xe
-+ RTM_INVALIDATE = 0x11
- RTM_LOCK = 0x8
- RTM_LOSING = 0x5
- RTM_MAXSIZE = 0x800
- RTM_MISS = 0x7
- RTM_NEWADDR = 0xc
-+ RTM_PROPOSAL = 0x13
- RTM_REDIRECT = 0x6
- RTM_RESOLVE = 0xb
- RTM_RTTUNIT = 0xf4240
-@@ -1050,6 +1150,8 @@ const (
- RTV_RTTVAR = 0x80
- RTV_SPIPE = 0x10
- RTV_SSTHRESH = 0x20
-+ RT_TABLEID_BITS = 0x8
-+ RT_TABLEID_MASK = 0xff
- RT_TABLEID_MAX = 0xff
- RUSAGE_CHILDREN = -0x1
- RUSAGE_SELF = 0x0
-@@ -1062,55 +1164,55 @@ const (
- SIOCADDMULTI = 0x80206931
- SIOCAIFADDR = 0x8040691a
- SIOCAIFGROUP = 0x80286987
-- SIOCALIFADDR = 0x8218691c
- SIOCATMARK = 0x40047307
-- SIOCBRDGADD = 0x8058693c
-- SIOCBRDGADDS = 0x80586941
-- SIOCBRDGARL = 0x806e694d
-+ SIOCBRDGADD = 0x8060693c
-+ SIOCBRDGADDL = 0x80606949
-+ SIOCBRDGADDS = 0x80606941
-+ SIOCBRDGARL = 0x808c694d
- SIOCBRDGDADDR = 0x81286947
-- SIOCBRDGDEL = 0x8058693d
-- SIOCBRDGDELS = 0x80586942
-- SIOCBRDGFLUSH = 0x80586948
-- SIOCBRDGFRL = 0x806e694e
-- SIOCBRDGGCACHE = 0xc0146941
-- SIOCBRDGGFD = 0xc0146952
-- SIOCBRDGGHT = 0xc0146951
-- SIOCBRDGGIFFLGS = 0xc058693e
-- SIOCBRDGGMA = 0xc0146953
-+ SIOCBRDGDEL = 0x8060693d
-+ SIOCBRDGDELS = 0x80606942
-+ SIOCBRDGFLUSH = 0x80606948
-+ SIOCBRDGFRL = 0x808c694e
-+ SIOCBRDGGCACHE = 0xc0186941
-+ SIOCBRDGGFD = 0xc0186952
-+ SIOCBRDGGHT = 0xc0186951
-+ SIOCBRDGGIFFLGS = 0xc060693e
-+ SIOCBRDGGMA = 0xc0186953
- SIOCBRDGGPARAM = 0xc0406958
-- SIOCBRDGGPRI = 0xc0146950
-+ SIOCBRDGGPRI = 0xc0186950
- SIOCBRDGGRL = 0xc030694f
-- SIOCBRDGGSIFS = 0xc058693c
-- SIOCBRDGGTO = 0xc0146946
-- SIOCBRDGIFS = 0xc0586942
-+ SIOCBRDGGTO = 0xc0186946
-+ SIOCBRDGIFS = 0xc0606942
- SIOCBRDGRTS = 0xc0206943
- SIOCBRDGSADDR = 0xc1286944
-- SIOCBRDGSCACHE = 0x80146940
-- SIOCBRDGSFD = 0x80146952
-- SIOCBRDGSHT = 0x80146951
-- SIOCBRDGSIFCOST = 0x80586955
-- SIOCBRDGSIFFLGS = 0x8058693f
-- SIOCBRDGSIFPRIO = 0x80586954
-- SIOCBRDGSMA = 0x80146953
-- SIOCBRDGSPRI = 0x80146950
-- SIOCBRDGSPROTO = 0x8014695a
-- SIOCBRDGSTO = 0x80146945
-- SIOCBRDGSTXHC = 0x80146959
-+ SIOCBRDGSCACHE = 0x80186940
-+ SIOCBRDGSFD = 0x80186952
-+ SIOCBRDGSHT = 0x80186951
-+ SIOCBRDGSIFCOST = 0x80606955
-+ SIOCBRDGSIFFLGS = 0x8060693f
-+ SIOCBRDGSIFPRIO = 0x80606954
-+ SIOCBRDGSIFPROT = 0x8060694a
-+ SIOCBRDGSMA = 0x80186953
-+ SIOCBRDGSPRI = 0x80186950
-+ SIOCBRDGSPROTO = 0x8018695a
-+ SIOCBRDGSTO = 0x80186945
-+ SIOCBRDGSTXHC = 0x80186959
- SIOCDELMULTI = 0x80206932
- SIOCDIFADDR = 0x80206919
- SIOCDIFGROUP = 0x80286989
-+ SIOCDIFPARENT = 0x802069b4
- SIOCDIFPHYADDR = 0x80206949
-- SIOCDLIFADDR = 0x8218691e
-+ SIOCDVNETID = 0x802069af
- SIOCGETKALIVE = 0xc01869a4
- SIOCGETLABEL = 0x8020699a
-+ SIOCGETMPWCFG = 0xc02069ae
- SIOCGETPFLOW = 0xc02069fe
- SIOCGETPFSYNC = 0xc02069f8
- SIOCGETSGCNT = 0xc0207534
- SIOCGETVIFCNT = 0xc0287533
- SIOCGETVLAN = 0xc0206990
-- SIOCGHIWAT = 0x40047301
- SIOCGIFADDR = 0xc0206921
-- SIOCGIFASYNCMAP = 0xc020697c
- SIOCGIFBRDADDR = 0xc0206923
- SIOCGIFCONF = 0xc0106924
- SIOCGIFDATA = 0xc020691b
-@@ -1122,37 +1224,41 @@ const (
- SIOCGIFGMEMB = 0xc028698a
- SIOCGIFGROUP = 0xc0286988
- SIOCGIFHARDMTU = 0xc02069a5
-- SIOCGIFMEDIA = 0xc0306936
-+ SIOCGIFLLPRIO = 0xc02069b6
-+ SIOCGIFMEDIA = 0xc0406938
- SIOCGIFMETRIC = 0xc0206917
- SIOCGIFMTU = 0xc020697e
- SIOCGIFNETMASK = 0xc0206925
-- SIOCGIFPDSTADDR = 0xc0206948
-+ SIOCGIFPAIR = 0xc02069b1
-+ SIOCGIFPARENT = 0xc02069b3
- SIOCGIFPRIORITY = 0xc020699c
-- SIOCGIFPSRCADDR = 0xc0206947
- SIOCGIFRDOMAIN = 0xc02069a0
- SIOCGIFRTLABEL = 0xc0206983
-- SIOCGIFTIMESLOT = 0xc0206986
-+ SIOCGIFRXR = 0x802069aa
- SIOCGIFXFLAGS = 0xc020699e
-- SIOCGLIFADDR = 0xc218691d
- SIOCGLIFPHYADDR = 0xc218694b
-+ SIOCGLIFPHYDF = 0xc02069c2
- SIOCGLIFPHYRTABLE = 0xc02069a2
- SIOCGLIFPHYTTL = 0xc02069a9
-- SIOCGLOWAT = 0x40047303
- SIOCGPGRP = 0x40047309
- SIOCGSPPPPARAMS = 0xc0206994
-+ SIOCGUMBINFO = 0xc02069be
-+ SIOCGUMBPARAM = 0xc02069c0
- SIOCGVH = 0xc02069f6
-+ SIOCGVNETFLOWID = 0xc02069c4
- SIOCGVNETID = 0xc02069a7
-+ SIOCIFAFATTACH = 0x801169ab
-+ SIOCIFAFDETACH = 0x801169ac
- SIOCIFCREATE = 0x8020697a
- SIOCIFDESTROY = 0x80206979
- SIOCIFGCLONERS = 0xc0106978
- SIOCSETKALIVE = 0x801869a3
- SIOCSETLABEL = 0x80206999
-+ SIOCSETMPWCFG = 0x802069ad
- SIOCSETPFLOW = 0x802069fd
- SIOCSETPFSYNC = 0x802069f7
- SIOCSETVLAN = 0x8020698f
-- SIOCSHIWAT = 0x80047300
- SIOCSIFADDR = 0x8020690c
-- SIOCSIFASYNCMAP = 0x8020697d
- SIOCSIFBRDADDR = 0x80206913
- SIOCSIFDESCR = 0x80206980
- SIOCSIFDSTADDR = 0x8020690e
-@@ -1160,25 +1266,36 @@ const (
- SIOCSIFGATTR = 0x8028698c
- SIOCSIFGENERIC = 0x80206939
- SIOCSIFLLADDR = 0x8020691f
-- SIOCSIFMEDIA = 0xc0206935
-+ SIOCSIFLLPRIO = 0x802069b5
-+ SIOCSIFMEDIA = 0xc0206937
- SIOCSIFMETRIC = 0x80206918
- SIOCSIFMTU = 0x8020697f
- SIOCSIFNETMASK = 0x80206916
-- SIOCSIFPHYADDR = 0x80406946
-+ SIOCSIFPAIR = 0x802069b0
-+ SIOCSIFPARENT = 0x802069b2
- SIOCSIFPRIORITY = 0x8020699b
- SIOCSIFRDOMAIN = 0x8020699f
- SIOCSIFRTLABEL = 0x80206982
-- SIOCSIFTIMESLOT = 0x80206985
- SIOCSIFXFLAGS = 0x8020699d
- SIOCSLIFPHYADDR = 0x8218694a
-+ SIOCSLIFPHYDF = 0x802069c1
- SIOCSLIFPHYRTABLE = 0x802069a1
- SIOCSLIFPHYTTL = 0x802069a8
-- SIOCSLOWAT = 0x80047302
- SIOCSPGRP = 0x80047308
- SIOCSSPPPPARAMS = 0x80206993
-+ SIOCSUMBPARAM = 0x802069bf
- SIOCSVH = 0xc02069f5
-+ SIOCSVNETFLOWID = 0x802069c3
- SIOCSVNETID = 0x802069a6
-+ SIOCSWGDPID = 0xc018695b
-+ SIOCSWGMAXFLOW = 0xc0186960
-+ SIOCSWGMAXGROUP = 0xc018695d
-+ SIOCSWSDPID = 0x8018695c
-+ SIOCSWSPORTNO = 0xc060695f
-+ SOCK_CLOEXEC = 0x8000
- SOCK_DGRAM = 0x2
-+ SOCK_DNS = 0x1000
-+ SOCK_NONBLOCK = 0x4000
- SOCK_RAW = 0x3
- SOCK_RDM = 0x4
- SOCK_SEQPACKET = 0x5
-@@ -1209,9 +1326,42 @@ const (
- SO_TIMESTAMP = 0x800
- SO_TYPE = 0x1008
- SO_USELOOPBACK = 0x40
-+ SO_ZEROIZE = 0x2000
-+ S_BLKSIZE = 0x200
-+ S_IEXEC = 0x40
-+ S_IFBLK = 0x6000
-+ S_IFCHR = 0x2000
-+ S_IFDIR = 0x4000
-+ S_IFIFO = 0x1000
-+ S_IFLNK = 0xa000
-+ S_IFMT = 0xf000
-+ S_IFREG = 0x8000
-+ S_IFSOCK = 0xc000
-+ S_IREAD = 0x100
-+ S_IRGRP = 0x20
-+ S_IROTH = 0x4
-+ S_IRUSR = 0x100
-+ S_IRWXG = 0x38
-+ S_IRWXO = 0x7
-+ S_IRWXU = 0x1c0
-+ S_ISGID = 0x400
-+ S_ISTXT = 0x200
-+ S_ISUID = 0x800
-+ S_ISVTX = 0x200
-+ S_IWGRP = 0x10
-+ S_IWOTH = 0x2
-+ S_IWRITE = 0x80
-+ S_IWUSR = 0x80
-+ S_IXGRP = 0x8
-+ S_IXOTH = 0x1
-+ S_IXUSR = 0x40
- TCIFLUSH = 0x1
-+ TCIOFF = 0x3
- TCIOFLUSH = 0x3
-+ TCION = 0x4
- TCOFLUSH = 0x2
-+ TCOOFF = 0x1
-+ TCOON = 0x2
- TCP_MAXBURST = 0x4
- TCP_MAXSEG = 0x2
- TCP_MAXWIN = 0xffff
-@@ -1221,11 +1371,12 @@ const (
- TCP_MSS = 0x200
- TCP_NODELAY = 0x1
- TCP_NOPUSH = 0x10
-- TCP_NSTATES = 0xb
- TCP_SACK_ENABLE = 0x8
- TCSAFLUSH = 0x2
- TIOCCBRK = 0x2000747a
- TIOCCDTR = 0x20007478
-+ TIOCCHKVERAUTH = 0x2000741e
-+ TIOCCLRVERAUTH = 0x2000741d
- TIOCCONS = 0x80047462
- TIOCDRAIN = 0x2000745e
- TIOCEXCL = 0x2000740d
-@@ -1280,17 +1431,22 @@ const (
- TIOCSETAF = 0x802c7416
- TIOCSETAW = 0x802c7415
- TIOCSETD = 0x8004741b
-+ TIOCSETVERAUTH = 0x8004741c
- TIOCSFLAGS = 0x8004745c
- TIOCSIG = 0x8004745f
- TIOCSPGRP = 0x80047476
- TIOCSTART = 0x2000746e
-- TIOCSTAT = 0x80047465
-+ TIOCSTAT = 0x20007465
- TIOCSTI = 0x80017472
- TIOCSTOP = 0x2000746f
- TIOCSTSTAMP = 0x8008745a
- TIOCSWINSZ = 0x80087467
- TIOCUCNTL = 0x80047466
-+ TIOCUCNTL_CBRK = 0x7a
-+ TIOCUCNTL_SBRK = 0x7b
- TOSTOP = 0x400000
-+ UTIME_NOW = -0x2
-+ UTIME_OMIT = -0x1
- VDISCARD = 0xf
- VDSUSP = 0xb
- VEOF = 0x0
-@@ -1301,6 +1457,18 @@ const (
- VKILL = 0x5
- VLNEXT = 0xe
- VMIN = 0x10
-+ VM_ANONMIN = 0x7
-+ VM_LOADAVG = 0x2
-+ VM_MAXID = 0xc
-+ VM_MAXSLP = 0xa
-+ VM_METER = 0x1
-+ VM_NKMEMPAGES = 0x6
-+ VM_PSSTRINGS = 0x3
-+ VM_SWAPENCRYPT = 0x5
-+ VM_USPACE = 0xb
-+ VM_UVMEXP = 0x4
-+ VM_VNODEMIN = 0x9
-+ VM_VTEXTMIN = 0x8
- VQUIT = 0x9
- VREPRINT = 0x6
- VSTART = 0xc
-@@ -1313,8 +1481,8 @@ const (
- WCONTINUED = 0x8
- WCOREFLAG = 0x80
- WNOHANG = 0x1
-- WSTOPPED = 0x7f
- WUNTRACED = 0x2
-+ XCASE = 0x1000000
- )
-
- // Errors
-@@ -1328,6 +1496,7 @@ const (
- EALREADY = syscall.Errno(0x25)
- EAUTH = syscall.Errno(0x50)
- EBADF = syscall.Errno(0x9)
-+ EBADMSG = syscall.Errno(0x5c)
- EBADRPC = syscall.Errno(0x48)
- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x58)
-@@ -1354,7 +1523,7 @@ const (
- EIPSEC = syscall.Errno(0x52)
- EISCONN = syscall.Errno(0x38)
- EISDIR = syscall.Errno(0x15)
-- ELAST = syscall.Errno(0x5b)
-+ ELAST = syscall.Errno(0x5f)
- ELOOP = syscall.Errno(0x3e)
- EMEDIUMTYPE = syscall.Errno(0x56)
- EMFILE = syscall.Errno(0x18)
-@@ -1382,12 +1551,14 @@ const (
- ENOTCONN = syscall.Errno(0x39)
- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x42)
-+ ENOTRECOVERABLE = syscall.Errno(0x5d)
- ENOTSOCK = syscall.Errno(0x26)
- ENOTSUP = syscall.Errno(0x5b)
- ENOTTY = syscall.Errno(0x19)
- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x2d)
- EOVERFLOW = syscall.Errno(0x57)
-+ EOWNERDEAD = syscall.Errno(0x5e)
- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x2e)
- EPIPE = syscall.Errno(0x20)
-@@ -1395,6 +1566,7 @@ const (
- EPROCUNAVAIL = syscall.Errno(0x4c)
- EPROGMISMATCH = syscall.Errno(0x4b)
- EPROGUNAVAIL = syscall.Errno(0x4a)
-+ EPROTO = syscall.Errno(0x5f)
- EPROTONOSUPPORT = syscall.Errno(0x2b)
- EPROTOTYPE = syscall.Errno(0x29)
- ERANGE = syscall.Errno(0x22)
-@@ -1452,132 +1624,144 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "connection timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "IPsec processing failure",
-- 83: "attribute not found",
-- 84: "illegal byte sequence",
-- 85: "no medium found",
-- 86: "wrong medium type",
-- 87: "value too large to be stored in data type",
-- 88: "operation canceled",
-- 89: "identifier removed",
-- 90: "no message of desired type",
-- 91: "not supported",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "EOPNOTSUPP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "operation timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disk quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC program not available"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EIPSEC", "IPsec processing failure"},
-+ {83, "ENOATTR", "attribute not found"},
-+ {84, "EILSEQ", "illegal byte sequence"},
-+ {85, "ENOMEDIUM", "no medium found"},
-+ {86, "EMEDIUMTYPE", "wrong medium type"},
-+ {87, "EOVERFLOW", "value too large to be stored in data type"},
-+ {88, "ECANCELED", "operation canceled"},
-+ {89, "EIDRM", "identifier removed"},
-+ {90, "ENOMSG", "no message of desired type"},
-+ {91, "ENOTSUP", "not supported"},
-+ {92, "EBADMSG", "bad message"},
-+ {93, "ENOTRECOVERABLE", "state not recoverable"},
-+ {94, "EOWNERDEAD", "previous owner died"},
-+ {95, "ELAST", "protocol error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "stopped (signal)",
-- 18: "stopped",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-- 32: "thread AST",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGABRT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "suspended (signal)"},
-+ {18, "SIGTSTP", "suspended"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGTHR", "thread AST"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go
-index 3ed0b260..7aa796a6 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go
-@@ -1,11 +1,11 @@
- // mkerrors.sh
--// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
--
--// Created by cgo -godefs - DO NOT EDIT
--// cgo -godefs -- _const.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build arm,openbsd
-
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
-+// cgo -godefs -- _const.go
-+
- package unix
-
- import "syscall"
-@@ -147,6 +147,7 @@ const (
- CFLUSH = 0xf
- CLOCAL = 0x8000
- CREAD = 0x800
-+ CRTSCTS = 0x10000
- CS5 = 0x0
- CS6 = 0x100
- CS7 = 0x200
-@@ -157,6 +158,8 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0xc
- CTL_NET = 0x4
- DIOCOSFPFLUSH = 0x2000444e
-@@ -441,6 +444,7 @@ const (
- F_UNLCK = 0x2
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
-@@ -859,6 +863,10 @@ const (
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LCNT_OVERLOAD_FLUSH = 0x6
- LOCK_EX = 0x2
- LOCK_NB = 0x4
-@@ -873,10 +881,11 @@ const (
- MADV_WILLNEED = 0x3
- MAP_ANON = 0x1000
- MAP_ANONYMOUS = 0x1000
-+ MAP_CONCEAL = 0x8000
- MAP_COPY = 0x2
- MAP_FILE = 0x0
- MAP_FIXED = 0x10
-- MAP_FLAGMASK = 0x3ff7
-+ MAP_FLAGMASK = 0xfff7
- MAP_HASSEMAPHORE = 0x0
- MAP_INHERIT = 0x0
- MAP_INHERIT_COPY = 0x1
-@@ -888,9 +897,36 @@ const (
- MAP_PRIVATE = 0x2
- MAP_RENAME = 0x0
- MAP_SHARED = 0x1
-+ MAP_STACK = 0x4000
- MAP_TRYFIXED = 0x0
- MCL_CURRENT = 0x1
- MCL_FUTURE = 0x2
-+ MNT_ASYNC = 0x40
-+ MNT_DEFEXPORTED = 0x200
-+ MNT_DELEXPORT = 0x20000
-+ MNT_DOOMED = 0x8000000
-+ MNT_EXPORTANON = 0x400
-+ MNT_EXPORTED = 0x100
-+ MNT_EXRDONLY = 0x80
-+ MNT_FORCE = 0x80000
-+ MNT_LAZY = 0x3
-+ MNT_LOCAL = 0x1000
-+ MNT_NOATIME = 0x8000
-+ MNT_NODEV = 0x10
-+ MNT_NOEXEC = 0x4
-+ MNT_NOSUID = 0x8
-+ MNT_NOWAIT = 0x2
-+ MNT_QUOTA = 0x2000
-+ MNT_RDONLY = 0x1
-+ MNT_RELOAD = 0x40000
-+ MNT_ROOTFS = 0x4000
-+ MNT_SOFTDEP = 0x4000000
-+ MNT_SYNCHRONOUS = 0x2
-+ MNT_UPDATE = 0x10000
-+ MNT_VISFLAGMASK = 0x400ffff
-+ MNT_WAIT = 0x1
-+ MNT_WANTRDWR = 0x2000000
-+ MNT_WXALLOWED = 0x800
- MSG_BCAST = 0x100
- MSG_CMSG_CLOEXEC = 0x800
- MSG_CTRUNC = 0x20
-@@ -913,6 +949,7 @@ const (
- NET_RT_MAXID = 0x6
- NET_RT_STATS = 0x4
- NET_RT_TABLE = 0x5
-+ NFDBITS = 0x20
- NOFLSH = 0x80000000
- NOTE_ATTRIB = 0x8
- NOTE_CHILD = 0x4
-@@ -1213,6 +1250,34 @@ const (
- SO_TIMESTAMP = 0x800
- SO_TYPE = 0x1008
- SO_USELOOPBACK = 0x40
-+ S_BLKSIZE = 0x200
-+ S_IEXEC = 0x40
-+ S_IFBLK = 0x6000
-+ S_IFCHR = 0x2000
-+ S_IFDIR = 0x4000
-+ S_IFIFO = 0x1000
-+ S_IFLNK = 0xa000
-+ S_IFMT = 0xf000
-+ S_IFREG = 0x8000
-+ S_IFSOCK = 0xc000
-+ S_IREAD = 0x100
-+ S_IRGRP = 0x20
-+ S_IROTH = 0x4
-+ S_IRUSR = 0x100
-+ S_IRWXG = 0x38
-+ S_IRWXO = 0x7
-+ S_IRWXU = 0x1c0
-+ S_ISGID = 0x400
-+ S_ISTXT = 0x200
-+ S_ISUID = 0x800
-+ S_ISVTX = 0x200
-+ S_IWGRP = 0x10
-+ S_IWOTH = 0x2
-+ S_IWRITE = 0x80
-+ S_IWUSR = 0x80
-+ S_IXGRP = 0x8
-+ S_IXOTH = 0x1
-+ S_IXUSR = 0x40
- TCIFLUSH = 0x1
- TCIOFLUSH = 0x3
- TCOFLUSH = 0x2
-@@ -1455,132 +1520,140 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "connection timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "IPsec processing failure",
-- 83: "attribute not found",
-- 84: "illegal byte sequence",
-- 85: "no medium found",
-- 86: "wrong medium type",
-- 87: "value too large to be stored in data type",
-- 88: "operation canceled",
-- 89: "identifier removed",
-- 90: "no message of desired type",
-- 91: "not supported",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "EWOULDBLOCK", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "EOPNOTSUPP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "operation timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disk quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC program not available"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EIPSEC", "IPsec processing failure"},
-+ {83, "ENOATTR", "attribute not found"},
-+ {84, "EILSEQ", "illegal byte sequence"},
-+ {85, "ENOMEDIUM", "no medium found"},
-+ {86, "EMEDIUMTYPE", "wrong medium type"},
-+ {87, "EOVERFLOW", "value too large to be stored in data type"},
-+ {88, "ECANCELED", "operation canceled"},
-+ {89, "EIDRM", "identifier removed"},
-+ {90, "ENOMSG", "no message of desired type"},
-+ {91, "ELAST", "not supported"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "stopped (signal)",
-- 18: "stopped",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-- 32: "thread AST",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGABRT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "suspended (signal)"},
-+ {18, "SIGTSTP", "suspended"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGTHR", "thread AST"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go
-similarity index 76%
-copy from vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
-copy to vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go
-index 1758ecca..1792d3f1 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go
-@@ -1,9 +1,9 @@
- // mkerrors.sh -m64
--// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build amd64,openbsd
-+// +build arm64,openbsd
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m64 _const.go
-
- package unix
-@@ -45,6 +45,7 @@ const (
- AF_SNA = 0xb
- AF_UNIX = 0x1
- AF_UNSPEC = 0x0
-+ ALTWERASE = 0x200
- ARPHRD_ETHER = 0x1
- ARPHRD_FRELAY = 0xf
- ARPHRD_IEEE1394 = 0x18
-@@ -107,6 +108,9 @@ const (
- BPF_DIRECTION_IN = 0x1
- BPF_DIRECTION_OUT = 0x2
- BPF_DIV = 0x30
-+ BPF_FILDROP_CAPTURE = 0x1
-+ BPF_FILDROP_DROP = 0x2
-+ BPF_FILDROP_PASS = 0x0
- BPF_H = 0x8
- BPF_IMM = 0x0
- BPF_IND = 0x40
-@@ -146,7 +150,14 @@ const (
- BRKINT = 0x2
- CFLUSH = 0xf
- CLOCAL = 0x8000
-+ CLOCK_BOOTTIME = 0x6
-+ CLOCK_MONOTONIC = 0x3
-+ CLOCK_PROCESS_CPUTIME_ID = 0x2
-+ CLOCK_REALTIME = 0x0
-+ CLOCK_THREAD_CPUTIME_ID = 0x4
-+ CLOCK_UPTIME = 0x5
- CREAD = 0x800
-+ CRTSCTS = 0x10000
- CS5 = 0x0
- CS6 = 0x100
- CS7 = 0x200
-@@ -157,6 +168,8 @@ const (
- CSTOP = 0x13
- CSTOPB = 0x400
- CSUSP = 0x1a
-+ CTL_HW = 0x6
-+ CTL_KERN = 0x1
- CTL_MAXNAME = 0xc
- CTL_NET = 0x4
- DIOCOSFPFLUSH = 0x2000444e
-@@ -175,6 +188,7 @@ const (
- DLT_LOOP = 0xc
- DLT_MPLS = 0xdb
- DLT_NULL = 0x0
-+ DLT_OPENFLOW = 0x10b
- DLT_PFLOG = 0x75
- DLT_PFSYNC = 0x12
- DLT_PPP = 0x9
-@@ -185,6 +199,23 @@ const (
- DLT_RAW = 0xe
- DLT_SLIP = 0x8
- DLT_SLIP_BSDOS = 0xf
-+ DLT_USBPCAP = 0xf9
-+ DLT_USER0 = 0x93
-+ DLT_USER1 = 0x94
-+ DLT_USER10 = 0x9d
-+ DLT_USER11 = 0x9e
-+ DLT_USER12 = 0x9f
-+ DLT_USER13 = 0xa0
-+ DLT_USER14 = 0xa1
-+ DLT_USER15 = 0xa2
-+ DLT_USER2 = 0x95
-+ DLT_USER3 = 0x96
-+ DLT_USER4 = 0x97
-+ DLT_USER5 = 0x98
-+ DLT_USER6 = 0x99
-+ DLT_USER7 = 0x9a
-+ DLT_USER8 = 0x9b
-+ DLT_USER9 = 0x9c
- DT_BLK = 0x6
- DT_CHR = 0x2
- DT_DIR = 0x4
-@@ -324,6 +355,7 @@ const (
- ETHERTYPE_OS9NET = 0x7009
- ETHERTYPE_PACER = 0x80c6
- ETHERTYPE_PAE = 0x888e
-+ ETHERTYPE_PBB = 0x88e7
- ETHERTYPE_PCS = 0x4242
- ETHERTYPE_PLANNING = 0x8044
- ETHERTYPE_PPP = 0x880b
-@@ -398,27 +430,38 @@ const (
- ETHER_CRC_POLY_LE = 0xedb88320
- ETHER_HDR_LEN = 0xe
- ETHER_MAX_DIX_LEN = 0x600
-+ ETHER_MAX_HARDMTU_LEN = 0xff9b
- ETHER_MAX_LEN = 0x5ee
- ETHER_MIN_LEN = 0x40
- ETHER_TYPE_LEN = 0x2
- ETHER_VLAN_ENCAP_LEN = 0x4
- EVFILT_AIO = -0x3
-+ EVFILT_DEVICE = -0x8
- EVFILT_PROC = -0x5
- EVFILT_READ = -0x1
- EVFILT_SIGNAL = -0x6
-- EVFILT_SYSCOUNT = 0x7
-+ EVFILT_SYSCOUNT = 0x8
- EVFILT_TIMER = -0x7
- EVFILT_VNODE = -0x4
- EVFILT_WRITE = -0x2
-+ EVL_ENCAPLEN = 0x4
-+ EVL_PRIO_BITS = 0xd
-+ EVL_PRIO_MAX = 0x7
-+ EVL_VLID_MASK = 0xfff
-+ EVL_VLID_MAX = 0xffe
-+ EVL_VLID_MIN = 0x1
-+ EVL_VLID_NULL = 0x0
- EV_ADD = 0x1
- EV_CLEAR = 0x20
- EV_DELETE = 0x2
- EV_DISABLE = 0x8
-+ EV_DISPATCH = 0x80
- EV_ENABLE = 0x4
- EV_EOF = 0x8000
- EV_ERROR = 0x4000
- EV_FLAG1 = 0x2000
- EV_ONESHOT = 0x10
-+ EV_RECEIPT = 0x40
- EV_SYSFLAGS = 0xf000
- EXTA = 0x4b00
- EXTB = 0x9600
-@@ -432,6 +475,7 @@ const (
- F_GETFL = 0x3
- F_GETLK = 0x7
- F_GETOWN = 0x5
-+ F_ISATTY = 0xb
- F_OK = 0x0
- F_RDLCK = 0x1
- F_SETFD = 0x2
-@@ -442,13 +486,13 @@ const (
- F_UNLCK = 0x2
- F_WRLCK = 0x3
- HUPCL = 0x4000
-+ HW_MACHINE = 0x1
- ICANON = 0x100
- ICMP6_FILTER = 0x12
- ICRNL = 0x100
- IEXTEN = 0x400
- IFAN_ARRIVAL = 0x0
- IFAN_DEPARTURE = 0x1
-- IFA_ROUTE = 0x1
- IFF_ALLMULTI = 0x200
- IFF_BROADCAST = 0x2
- IFF_CANTCHANGE = 0x8e52
-@@ -459,12 +503,12 @@ const (
- IFF_LOOPBACK = 0x8
- IFF_MULTICAST = 0x8000
- IFF_NOARP = 0x80
-- IFF_NOTRAILERS = 0x20
- IFF_OACTIVE = 0x400
- IFF_POINTOPOINT = 0x10
- IFF_PROMISC = 0x100
- IFF_RUNNING = 0x40
- IFF_SIMPLEX = 0x800
-+ IFF_STATICARP = 0x20
- IFF_UP = 0x1
- IFNAMSIZ = 0x10
- IFT_1822 = 0x2
-@@ -593,6 +637,7 @@ const (
- IFT_LINEGROUP = 0xd2
- IFT_LOCALTALK = 0x2a
- IFT_LOOP = 0x18
-+ IFT_MBIM = 0xfa
- IFT_MEDIAMAILOVERIP = 0x8b
- IFT_MFSIGLINK = 0xa7
- IFT_MIOX25 = 0x26
-@@ -717,8 +762,6 @@ const (
- IPPROTO_AH = 0x33
- IPPROTO_CARP = 0x70
- IPPROTO_DIVERT = 0x102
-- IPPROTO_DIVERT_INIT = 0x2
-- IPPROTO_DIVERT_RESP = 0x1
- IPPROTO_DONE = 0x101
- IPPROTO_DSTOPTS = 0x3c
- IPPROTO_EGP = 0x8
-@@ -775,6 +818,7 @@ const (
- IPV6_LEAVE_GROUP = 0xd
- IPV6_MAXHLIM = 0xff
- IPV6_MAXPACKET = 0xffff
-+ IPV6_MINHOPCOUNT = 0x41
- IPV6_MMTU = 0x500
- IPV6_MULTICAST_HOPS = 0xa
- IPV6_MULTICAST_IF = 0x9
-@@ -814,12 +858,12 @@ const (
- IP_DEFAULT_MULTICAST_LOOP = 0x1
- IP_DEFAULT_MULTICAST_TTL = 0x1
- IP_DF = 0x4000
-- IP_DIVERTFL = 0x1022
- IP_DROP_MEMBERSHIP = 0xd
- IP_ESP_NETWORK_LEVEL = 0x16
- IP_ESP_TRANS_LEVEL = 0x15
- IP_HDRINCL = 0x2
- IP_IPCOMP_LEVEL = 0x1d
-+ IP_IPDEFTTL = 0x25
- IP_IPSECFLOWINFO = 0x24
- IP_IPSEC_LOCAL_AUTH = 0x1b
- IP_IPSEC_LOCAL_CRED = 0x19
-@@ -853,13 +897,19 @@ const (
- IP_RETOPTS = 0x8
- IP_RF = 0x8000
- IP_RTABLE = 0x1021
-+ IP_SENDSRCADDR = 0x7
- IP_TOS = 0x3
- IP_TTL = 0x4
- ISIG = 0x80
- ISTRIP = 0x20
-+ IUCLC = 0x1000
- IXANY = 0x800
- IXOFF = 0x400
- IXON = 0x200
-+ KERN_HOSTNAME = 0xa
-+ KERN_OSRELEASE = 0x2
-+ KERN_OSTYPE = 0x1
-+ KERN_VERSION = 0x4
- LCNT_OVERLOAD_FLUSH = 0x6
- LOCK_EX = 0x2
- LOCK_NB = 0x4
-@@ -873,25 +923,58 @@ const (
- MADV_SPACEAVAIL = 0x5
- MADV_WILLNEED = 0x3
- MAP_ANON = 0x1000
-- MAP_COPY = 0x4
-+ MAP_ANONYMOUS = 0x1000
-+ MAP_CONCEAL = 0x8000
-+ MAP_COPY = 0x2
- MAP_FILE = 0x0
- MAP_FIXED = 0x10
-- MAP_FLAGMASK = 0x1ff7
-- MAP_HASSEMAPHORE = 0x200
-- MAP_INHERIT = 0x80
-+ MAP_FLAGMASK = 0xfff7
-+ MAP_HASSEMAPHORE = 0x0
-+ MAP_INHERIT = 0x0
- MAP_INHERIT_COPY = 0x1
-- MAP_INHERIT_DONATE_COPY = 0x3
- MAP_INHERIT_NONE = 0x2
- MAP_INHERIT_SHARE = 0x0
-- MAP_NOEXTEND = 0x100
-- MAP_NORESERVE = 0x40
-+ MAP_INHERIT_ZERO = 0x3
-+ MAP_NOEXTEND = 0x0
-+ MAP_NORESERVE = 0x0
- MAP_PRIVATE = 0x2
-- MAP_RENAME = 0x20
-+ MAP_RENAME = 0x0
- MAP_SHARED = 0x1
-- MAP_TRYFIXED = 0x400
-+ MAP_STACK = 0x4000
-+ MAP_TRYFIXED = 0x0
- MCL_CURRENT = 0x1
- MCL_FUTURE = 0x2
-+ MNT_ASYNC = 0x40
-+ MNT_DEFEXPORTED = 0x200
-+ MNT_DELEXPORT = 0x20000
-+ MNT_DOOMED = 0x8000000
-+ MNT_EXPORTANON = 0x400
-+ MNT_EXPORTED = 0x100
-+ MNT_EXRDONLY = 0x80
-+ MNT_FORCE = 0x80000
-+ MNT_LAZY = 0x3
-+ MNT_LOCAL = 0x1000
-+ MNT_NOATIME = 0x8000
-+ MNT_NODEV = 0x10
-+ MNT_NOEXEC = 0x4
-+ MNT_NOPERM = 0x20
-+ MNT_NOSUID = 0x8
-+ MNT_NOWAIT = 0x2
-+ MNT_QUOTA = 0x2000
-+ MNT_RDONLY = 0x1
-+ MNT_RELOAD = 0x40000
-+ MNT_ROOTFS = 0x4000
-+ MNT_SOFTDEP = 0x4000000
-+ MNT_STALLED = 0x100000
-+ MNT_SWAPPABLE = 0x200000
-+ MNT_SYNCHRONOUS = 0x2
-+ MNT_UPDATE = 0x10000
-+ MNT_VISFLAGMASK = 0x400ffff
-+ MNT_WAIT = 0x1
-+ MNT_WANTRDWR = 0x2000000
-+ MNT_WXALLOWED = 0x800
- MSG_BCAST = 0x100
-+ MSG_CMSG_CLOEXEC = 0x800
- MSG_CTRUNC = 0x20
- MSG_DONTROUTE = 0x4
- MSG_DONTWAIT = 0x80
-@@ -909,11 +992,15 @@ const (
- NET_RT_DUMP = 0x1
- NET_RT_FLAGS = 0x2
- NET_RT_IFLIST = 0x3
-- NET_RT_MAXID = 0x6
-+ NET_RT_IFNAMES = 0x6
-+ NET_RT_MAXID = 0x7
- NET_RT_STATS = 0x4
- NET_RT_TABLE = 0x5
-+ NFDBITS = 0x20
- NOFLSH = 0x80000000
-+ NOKERNINFO = 0x2000000
- NOTE_ATTRIB = 0x8
-+ NOTE_CHANGE = 0x1
- NOTE_CHILD = 0x4
- NOTE_DELETE = 0x1
- NOTE_EOF = 0x2
-@@ -932,11 +1019,13 @@ const (
- NOTE_TRUNCATE = 0x80
- NOTE_WRITE = 0x2
- OCRNL = 0x10
-+ OLCUC = 0x20
- ONLCR = 0x2
- ONLRET = 0x80
- ONOCR = 0x40
- ONOEOT = 0x8
- OPOST = 0x1
-+ OXTABS = 0x4
- O_ACCMODE = 0x3
- O_APPEND = 0x8
- O_ASYNC = 0x40
-@@ -974,23 +1063,32 @@ const (
- RLIMIT_CPU = 0x0
- RLIMIT_DATA = 0x2
- RLIMIT_FSIZE = 0x1
-+ RLIMIT_MEMLOCK = 0x6
- RLIMIT_NOFILE = 0x8
-+ RLIMIT_NPROC = 0x7
-+ RLIMIT_RSS = 0x5
- RLIMIT_STACK = 0x3
- RLIM_INFINITY = 0x7fffffffffffffff
- RTAX_AUTHOR = 0x6
-+ RTAX_BFD = 0xb
- RTAX_BRD = 0x7
-+ RTAX_DNS = 0xc
- RTAX_DST = 0x0
- RTAX_GATEWAY = 0x1
- RTAX_GENMASK = 0x3
- RTAX_IFA = 0x5
- RTAX_IFP = 0x4
- RTAX_LABEL = 0xa
-- RTAX_MAX = 0xb
-+ RTAX_MAX = 0xf
- RTAX_NETMASK = 0x2
-+ RTAX_SEARCH = 0xe
- RTAX_SRC = 0x8
- RTAX_SRCMASK = 0x9
-+ RTAX_STATIC = 0xd
- RTA_AUTHOR = 0x40
-+ RTA_BFD = 0x800
- RTA_BRD = 0x80
-+ RTA_DNS = 0x1000
- RTA_DST = 0x1
- RTA_GATEWAY = 0x2
- RTA_GENMASK = 0x8
-@@ -998,46 +1096,54 @@ const (
- RTA_IFP = 0x10
- RTA_LABEL = 0x400
- RTA_NETMASK = 0x4
-+ RTA_SEARCH = 0x4000
- RTA_SRC = 0x100
- RTA_SRCMASK = 0x200
-+ RTA_STATIC = 0x2000
- RTF_ANNOUNCE = 0x4000
-+ RTF_BFD = 0x1000000
- RTF_BLACKHOLE = 0x1000
-+ RTF_BROADCAST = 0x400000
-+ RTF_CACHED = 0x20000
- RTF_CLONED = 0x10000
- RTF_CLONING = 0x100
-+ RTF_CONNECTED = 0x800000
- RTF_DONE = 0x40
- RTF_DYNAMIC = 0x10
-- RTF_FMASK = 0x10f808
-+ RTF_FMASK = 0x110fc08
- RTF_GATEWAY = 0x2
- RTF_HOST = 0x4
- RTF_LLINFO = 0x400
-- RTF_MASK = 0x80
-+ RTF_LOCAL = 0x200000
- RTF_MODIFIED = 0x20
- RTF_MPATH = 0x40000
- RTF_MPLS = 0x100000
-+ RTF_MULTICAST = 0x200
- RTF_PERMANENT_ARP = 0x2000
- RTF_PROTO1 = 0x8000
- RTF_PROTO2 = 0x4000
- RTF_PROTO3 = 0x2000
- RTF_REJECT = 0x8
-- RTF_SOURCE = 0x20000
- RTF_STATIC = 0x800
-- RTF_TUNNEL = 0x100000
- RTF_UP = 0x1
- RTF_USETRAILERS = 0x8000
-- RTF_XRESOLVE = 0x200
-+ RTM_80211INFO = 0x15
- RTM_ADD = 0x1
-+ RTM_BFD = 0x12
- RTM_CHANGE = 0x3
-+ RTM_CHGADDRATTR = 0x14
- RTM_DELADDR = 0xd
- RTM_DELETE = 0x2
- RTM_DESYNC = 0x10
- RTM_GET = 0x4
- RTM_IFANNOUNCE = 0xf
- RTM_IFINFO = 0xe
-- RTM_LOCK = 0x8
-+ RTM_INVALIDATE = 0x11
- RTM_LOSING = 0x5
- RTM_MAXSIZE = 0x800
- RTM_MISS = 0x7
- RTM_NEWADDR = 0xc
-+ RTM_PROPOSAL = 0x13
- RTM_REDIRECT = 0x6
- RTM_RESOLVE = 0xb
- RTM_RTTUNIT = 0xf4240
-@@ -1050,6 +1156,8 @@ const (
- RTV_RTTVAR = 0x80
- RTV_SPIPE = 0x10
- RTV_SSTHRESH = 0x20
-+ RT_TABLEID_BITS = 0x8
-+ RT_TABLEID_MASK = 0xff
- RT_TABLEID_MAX = 0xff
- RUSAGE_CHILDREN = -0x1
- RUSAGE_SELF = 0x0
-@@ -1062,55 +1170,57 @@ const (
- SIOCADDMULTI = 0x80206931
- SIOCAIFADDR = 0x8040691a
- SIOCAIFGROUP = 0x80286987
-- SIOCALIFADDR = 0x8218691c
- SIOCATMARK = 0x40047307
-- SIOCBRDGADD = 0x8058693c
-- SIOCBRDGADDS = 0x80586941
-- SIOCBRDGARL = 0x806e694d
-+ SIOCBRDGADD = 0x8060693c
-+ SIOCBRDGADDL = 0x80606949
-+ SIOCBRDGADDS = 0x80606941
-+ SIOCBRDGARL = 0x808c694d
- SIOCBRDGDADDR = 0x81286947
-- SIOCBRDGDEL = 0x8058693d
-- SIOCBRDGDELS = 0x80586942
-- SIOCBRDGFLUSH = 0x80586948
-- SIOCBRDGFRL = 0x806e694e
-- SIOCBRDGGCACHE = 0xc0146941
-- SIOCBRDGGFD = 0xc0146952
-- SIOCBRDGGHT = 0xc0146951
-- SIOCBRDGGIFFLGS = 0xc058693e
-- SIOCBRDGGMA = 0xc0146953
-+ SIOCBRDGDEL = 0x8060693d
-+ SIOCBRDGDELS = 0x80606942
-+ SIOCBRDGFLUSH = 0x80606948
-+ SIOCBRDGFRL = 0x808c694e
-+ SIOCBRDGGCACHE = 0xc0186941
-+ SIOCBRDGGFD = 0xc0186952
-+ SIOCBRDGGHT = 0xc0186951
-+ SIOCBRDGGIFFLGS = 0xc060693e
-+ SIOCBRDGGMA = 0xc0186953
- SIOCBRDGGPARAM = 0xc0406958
-- SIOCBRDGGPRI = 0xc0146950
-+ SIOCBRDGGPRI = 0xc0186950
- SIOCBRDGGRL = 0xc030694f
-- SIOCBRDGGSIFS = 0xc058693c
-- SIOCBRDGGTO = 0xc0146946
-- SIOCBRDGIFS = 0xc0586942
-+ SIOCBRDGGTO = 0xc0186946
-+ SIOCBRDGIFS = 0xc0606942
- SIOCBRDGRTS = 0xc0206943
- SIOCBRDGSADDR = 0xc1286944
-- SIOCBRDGSCACHE = 0x80146940
-- SIOCBRDGSFD = 0x80146952
-- SIOCBRDGSHT = 0x80146951
-- SIOCBRDGSIFCOST = 0x80586955
-- SIOCBRDGSIFFLGS = 0x8058693f
-- SIOCBRDGSIFPRIO = 0x80586954
-- SIOCBRDGSMA = 0x80146953
-- SIOCBRDGSPRI = 0x80146950
-- SIOCBRDGSPROTO = 0x8014695a
-- SIOCBRDGSTO = 0x80146945
-- SIOCBRDGSTXHC = 0x80146959
-+ SIOCBRDGSCACHE = 0x80186940
-+ SIOCBRDGSFD = 0x80186952
-+ SIOCBRDGSHT = 0x80186951
-+ SIOCBRDGSIFCOST = 0x80606955
-+ SIOCBRDGSIFFLGS = 0x8060693f
-+ SIOCBRDGSIFPRIO = 0x80606954
-+ SIOCBRDGSIFPROT = 0x8060694a
-+ SIOCBRDGSMA = 0x80186953
-+ SIOCBRDGSPRI = 0x80186950
-+ SIOCBRDGSPROTO = 0x8018695a
-+ SIOCBRDGSTO = 0x80186945
-+ SIOCBRDGSTXHC = 0x80186959
-+ SIOCDELLABEL = 0x80206997
- SIOCDELMULTI = 0x80206932
- SIOCDIFADDR = 0x80206919
- SIOCDIFGROUP = 0x80286989
-+ SIOCDIFPARENT = 0x802069b4
- SIOCDIFPHYADDR = 0x80206949
-- SIOCDLIFADDR = 0x8218691e
-+ SIOCDPWE3NEIGHBOR = 0x802069de
-+ SIOCDVNETID = 0x802069af
- SIOCGETKALIVE = 0xc01869a4
- SIOCGETLABEL = 0x8020699a
-+ SIOCGETMPWCFG = 0xc02069ae
- SIOCGETPFLOW = 0xc02069fe
- SIOCGETPFSYNC = 0xc02069f8
- SIOCGETSGCNT = 0xc0207534
- SIOCGETVIFCNT = 0xc0287533
- SIOCGETVLAN = 0xc0206990
-- SIOCGHIWAT = 0x40047301
- SIOCGIFADDR = 0xc0206921
-- SIOCGIFASYNCMAP = 0xc020697c
- SIOCGIFBRDADDR = 0xc0206923
- SIOCGIFCONF = 0xc0106924
- SIOCGIFDATA = 0xc020691b
-@@ -1119,40 +1229,52 @@ const (
- SIOCGIFFLAGS = 0xc0206911
- SIOCGIFGATTR = 0xc028698b
- SIOCGIFGENERIC = 0xc020693a
-+ SIOCGIFGLIST = 0xc028698d
- SIOCGIFGMEMB = 0xc028698a
- SIOCGIFGROUP = 0xc0286988
- SIOCGIFHARDMTU = 0xc02069a5
-- SIOCGIFMEDIA = 0xc0306936
-+ SIOCGIFLLPRIO = 0xc02069b6
-+ SIOCGIFMEDIA = 0xc0406938
- SIOCGIFMETRIC = 0xc0206917
- SIOCGIFMTU = 0xc020697e
- SIOCGIFNETMASK = 0xc0206925
-- SIOCGIFPDSTADDR = 0xc0206948
-+ SIOCGIFPAIR = 0xc02069b1
-+ SIOCGIFPARENT = 0xc02069b3
- SIOCGIFPRIORITY = 0xc020699c
-- SIOCGIFPSRCADDR = 0xc0206947
- SIOCGIFRDOMAIN = 0xc02069a0
- SIOCGIFRTLABEL = 0xc0206983
-- SIOCGIFTIMESLOT = 0xc0206986
-+ SIOCGIFRXR = 0x802069aa
-+ SIOCGIFSFFPAGE = 0xc1126939
- SIOCGIFXFLAGS = 0xc020699e
-- SIOCGLIFADDR = 0xc218691d
- SIOCGLIFPHYADDR = 0xc218694b
-+ SIOCGLIFPHYDF = 0xc02069c2
-+ SIOCGLIFPHYECN = 0xc02069c8
- SIOCGLIFPHYRTABLE = 0xc02069a2
- SIOCGLIFPHYTTL = 0xc02069a9
-- SIOCGLOWAT = 0x40047303
- SIOCGPGRP = 0x40047309
-+ SIOCGPWE3 = 0xc0206998
-+ SIOCGPWE3CTRLWORD = 0xc02069dc
-+ SIOCGPWE3FAT = 0xc02069dd
-+ SIOCGPWE3NEIGHBOR = 0xc21869de
- SIOCGSPPPPARAMS = 0xc0206994
-+ SIOCGTXHPRIO = 0xc02069c6
-+ SIOCGUMBINFO = 0xc02069be
-+ SIOCGUMBPARAM = 0xc02069c0
- SIOCGVH = 0xc02069f6
-+ SIOCGVNETFLOWID = 0xc02069c4
- SIOCGVNETID = 0xc02069a7
-+ SIOCIFAFATTACH = 0x801169ab
-+ SIOCIFAFDETACH = 0x801169ac
- SIOCIFCREATE = 0x8020697a
- SIOCIFDESTROY = 0x80206979
- SIOCIFGCLONERS = 0xc0106978
- SIOCSETKALIVE = 0x801869a3
- SIOCSETLABEL = 0x80206999
-+ SIOCSETMPWCFG = 0x802069ad
- SIOCSETPFLOW = 0x802069fd
- SIOCSETPFSYNC = 0x802069f7
- SIOCSETVLAN = 0x8020698f
-- SIOCSHIWAT = 0x80047300
- SIOCSIFADDR = 0x8020690c
-- SIOCSIFASYNCMAP = 0x8020697d
- SIOCSIFBRDADDR = 0x80206913
- SIOCSIFDESCR = 0x80206980
- SIOCSIFDSTADDR = 0x8020690e
-@@ -1160,25 +1282,41 @@ const (
- SIOCSIFGATTR = 0x8028698c
- SIOCSIFGENERIC = 0x80206939
- SIOCSIFLLADDR = 0x8020691f
-- SIOCSIFMEDIA = 0xc0206935
-+ SIOCSIFLLPRIO = 0x802069b5
-+ SIOCSIFMEDIA = 0xc0206937
- SIOCSIFMETRIC = 0x80206918
- SIOCSIFMTU = 0x8020697f
- SIOCSIFNETMASK = 0x80206916
-- SIOCSIFPHYADDR = 0x80406946
-+ SIOCSIFPAIR = 0x802069b0
-+ SIOCSIFPARENT = 0x802069b2
- SIOCSIFPRIORITY = 0x8020699b
- SIOCSIFRDOMAIN = 0x8020699f
- SIOCSIFRTLABEL = 0x80206982
-- SIOCSIFTIMESLOT = 0x80206985
- SIOCSIFXFLAGS = 0x8020699d
- SIOCSLIFPHYADDR = 0x8218694a
-+ SIOCSLIFPHYDF = 0x802069c1
-+ SIOCSLIFPHYECN = 0x802069c7
- SIOCSLIFPHYRTABLE = 0x802069a1
- SIOCSLIFPHYTTL = 0x802069a8
-- SIOCSLOWAT = 0x80047302
- SIOCSPGRP = 0x80047308
-+ SIOCSPWE3CTRLWORD = 0x802069dc
-+ SIOCSPWE3FAT = 0x802069dd
-+ SIOCSPWE3NEIGHBOR = 0x821869de
- SIOCSSPPPPARAMS = 0x80206993
-+ SIOCSTXHPRIO = 0x802069c5
-+ SIOCSUMBPARAM = 0x802069bf
- SIOCSVH = 0xc02069f5
-+ SIOCSVNETFLOWID = 0x802069c3
- SIOCSVNETID = 0x802069a6
-+ SIOCSWGDPID = 0xc018695b
-+ SIOCSWGMAXFLOW = 0xc0186960
-+ SIOCSWGMAXGROUP = 0xc018695d
-+ SIOCSWSDPID = 0x8018695c
-+ SIOCSWSPORTNO = 0xc060695f
-+ SOCK_CLOEXEC = 0x8000
- SOCK_DGRAM = 0x2
-+ SOCK_DNS = 0x1000
-+ SOCK_NONBLOCK = 0x4000
- SOCK_RAW = 0x3
- SOCK_RDM = 0x4
- SOCK_SEQPACKET = 0x5
-@@ -1209,9 +1347,42 @@ const (
- SO_TIMESTAMP = 0x800
- SO_TYPE = 0x1008
- SO_USELOOPBACK = 0x40
-+ SO_ZEROIZE = 0x2000
-+ S_BLKSIZE = 0x200
-+ S_IEXEC = 0x40
-+ S_IFBLK = 0x6000
-+ S_IFCHR = 0x2000
-+ S_IFDIR = 0x4000
-+ S_IFIFO = 0x1000
-+ S_IFLNK = 0xa000
-+ S_IFMT = 0xf000
-+ S_IFREG = 0x8000
-+ S_IFSOCK = 0xc000
-+ S_IREAD = 0x100
-+ S_IRGRP = 0x20
-+ S_IROTH = 0x4
-+ S_IRUSR = 0x100
-+ S_IRWXG = 0x38
-+ S_IRWXO = 0x7
-+ S_IRWXU = 0x1c0
-+ S_ISGID = 0x400
-+ S_ISTXT = 0x200
-+ S_ISUID = 0x800
-+ S_ISVTX = 0x200
-+ S_IWGRP = 0x10
-+ S_IWOTH = 0x2
-+ S_IWRITE = 0x80
-+ S_IWUSR = 0x80
-+ S_IXGRP = 0x8
-+ S_IXOTH = 0x1
-+ S_IXUSR = 0x40
- TCIFLUSH = 0x1
-+ TCIOFF = 0x3
- TCIOFLUSH = 0x3
-+ TCION = 0x4
- TCOFLUSH = 0x2
-+ TCOOFF = 0x1
-+ TCOON = 0x2
- TCP_MAXBURST = 0x4
- TCP_MAXSEG = 0x2
- TCP_MAXWIN = 0xffff
-@@ -1221,11 +1392,14 @@ const (
- TCP_MSS = 0x200
- TCP_NODELAY = 0x1
- TCP_NOPUSH = 0x10
-- TCP_NSTATES = 0xb
- TCP_SACK_ENABLE = 0x8
- TCSAFLUSH = 0x2
-+ TIMER_ABSTIME = 0x1
-+ TIMER_RELTIME = 0x0
- TIOCCBRK = 0x2000747a
- TIOCCDTR = 0x20007478
-+ TIOCCHKVERAUTH = 0x2000741e
-+ TIOCCLRVERAUTH = 0x2000741d
- TIOCCONS = 0x80047462
- TIOCDRAIN = 0x2000745e
- TIOCEXCL = 0x2000740d
-@@ -1280,17 +1454,21 @@ const (
- TIOCSETAF = 0x802c7416
- TIOCSETAW = 0x802c7415
- TIOCSETD = 0x8004741b
-+ TIOCSETVERAUTH = 0x8004741c
- TIOCSFLAGS = 0x8004745c
- TIOCSIG = 0x8004745f
- TIOCSPGRP = 0x80047476
- TIOCSTART = 0x2000746e
-- TIOCSTAT = 0x80047465
-- TIOCSTI = 0x80017472
-+ TIOCSTAT = 0x20007465
- TIOCSTOP = 0x2000746f
- TIOCSTSTAMP = 0x8008745a
- TIOCSWINSZ = 0x80087467
- TIOCUCNTL = 0x80047466
-+ TIOCUCNTL_CBRK = 0x7a
-+ TIOCUCNTL_SBRK = 0x7b
- TOSTOP = 0x400000
-+ UTIME_NOW = -0x2
-+ UTIME_OMIT = -0x1
- VDISCARD = 0xf
- VDSUSP = 0xb
- VEOF = 0x0
-@@ -1301,6 +1479,19 @@ const (
- VKILL = 0x5
- VLNEXT = 0xe
- VMIN = 0x10
-+ VM_ANONMIN = 0x7
-+ VM_LOADAVG = 0x2
-+ VM_MALLOC_CONF = 0xc
-+ VM_MAXID = 0xd
-+ VM_MAXSLP = 0xa
-+ VM_METER = 0x1
-+ VM_NKMEMPAGES = 0x6
-+ VM_PSSTRINGS = 0x3
-+ VM_SWAPENCRYPT = 0x5
-+ VM_USPACE = 0xb
-+ VM_UVMEXP = 0x4
-+ VM_VNODEMIN = 0x9
-+ VM_VTEXTMIN = 0x8
- VQUIT = 0x9
- VREPRINT = 0x6
- VSTART = 0xc
-@@ -1313,8 +1504,8 @@ const (
- WCONTINUED = 0x8
- WCOREFLAG = 0x80
- WNOHANG = 0x1
-- WSTOPPED = 0x7f
- WUNTRACED = 0x2
-+ XCASE = 0x1000000
- )
-
- // Errors
-@@ -1328,6 +1519,7 @@ const (
- EALREADY = syscall.Errno(0x25)
- EAUTH = syscall.Errno(0x50)
- EBADF = syscall.Errno(0x9)
-+ EBADMSG = syscall.Errno(0x5c)
- EBADRPC = syscall.Errno(0x48)
- EBUSY = syscall.Errno(0x10)
- ECANCELED = syscall.Errno(0x58)
-@@ -1354,7 +1546,7 @@ const (
- EIPSEC = syscall.Errno(0x52)
- EISCONN = syscall.Errno(0x38)
- EISDIR = syscall.Errno(0x15)
-- ELAST = syscall.Errno(0x5b)
-+ ELAST = syscall.Errno(0x5f)
- ELOOP = syscall.Errno(0x3e)
- EMEDIUMTYPE = syscall.Errno(0x56)
- EMFILE = syscall.Errno(0x18)
-@@ -1382,12 +1574,14 @@ const (
- ENOTCONN = syscall.Errno(0x39)
- ENOTDIR = syscall.Errno(0x14)
- ENOTEMPTY = syscall.Errno(0x42)
-+ ENOTRECOVERABLE = syscall.Errno(0x5d)
- ENOTSOCK = syscall.Errno(0x26)
- ENOTSUP = syscall.Errno(0x5b)
- ENOTTY = syscall.Errno(0x19)
- ENXIO = syscall.Errno(0x6)
- EOPNOTSUPP = syscall.Errno(0x2d)
- EOVERFLOW = syscall.Errno(0x57)
-+ EOWNERDEAD = syscall.Errno(0x5e)
- EPERM = syscall.Errno(0x1)
- EPFNOSUPPORT = syscall.Errno(0x2e)
- EPIPE = syscall.Errno(0x20)
-@@ -1395,6 +1589,7 @@ const (
- EPROCUNAVAIL = syscall.Errno(0x4c)
- EPROGMISMATCH = syscall.Errno(0x4b)
- EPROGUNAVAIL = syscall.Errno(0x4a)
-+ EPROTO = syscall.Errno(0x5f)
- EPROTONOSUPPORT = syscall.Errno(0x2b)
- EPROTOTYPE = syscall.Errno(0x29)
- ERANGE = syscall.Errno(0x22)
-@@ -1452,132 +1647,144 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "operation not permitted",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "input/output error",
-- 6: "device not configured",
-- 7: "argument list too long",
-- 8: "exec format error",
-- 9: "bad file descriptor",
-- 10: "no child processes",
-- 11: "resource deadlock avoided",
-- 12: "cannot allocate memory",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "operation not supported by device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "too many open files in system",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "numerical argument out of domain",
-- 34: "result too large",
-- 35: "resource temporarily unavailable",
-- 36: "operation now in progress",
-- 37: "operation already in progress",
-- 38: "socket operation on non-socket",
-- 39: "destination address required",
-- 40: "message too long",
-- 41: "protocol wrong type for socket",
-- 42: "protocol not available",
-- 43: "protocol not supported",
-- 44: "socket type not supported",
-- 45: "operation not supported",
-- 46: "protocol family not supported",
-- 47: "address family not supported by protocol family",
-- 48: "address already in use",
-- 49: "can't assign requested address",
-- 50: "network is down",
-- 51: "network is unreachable",
-- 52: "network dropped connection on reset",
-- 53: "software caused connection abort",
-- 54: "connection reset by peer",
-- 55: "no buffer space available",
-- 56: "socket is already connected",
-- 57: "socket is not connected",
-- 58: "can't send after socket shutdown",
-- 59: "too many references: can't splice",
-- 60: "connection timed out",
-- 61: "connection refused",
-- 62: "too many levels of symbolic links",
-- 63: "file name too long",
-- 64: "host is down",
-- 65: "no route to host",
-- 66: "directory not empty",
-- 67: "too many processes",
-- 68: "too many users",
-- 69: "disc quota exceeded",
-- 70: "stale NFS file handle",
-- 71: "too many levels of remote in path",
-- 72: "RPC struct is bad",
-- 73: "RPC version wrong",
-- 74: "RPC prog. not avail",
-- 75: "program version wrong",
-- 76: "bad procedure for program",
-- 77: "no locks available",
-- 78: "function not implemented",
-- 79: "inappropriate file type or format",
-- 80: "authentication error",
-- 81: "need authenticator",
-- 82: "IPsec processing failure",
-- 83: "attribute not found",
-- 84: "illegal byte sequence",
-- 85: "no medium found",
-- 86: "wrong medium type",
-- 87: "value too large to be stored in data type",
-- 88: "operation canceled",
-- 89: "identifier removed",
-- 90: "no message of desired type",
-- 91: "not supported",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "operation not permitted"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "input/output error"},
-+ {6, "ENXIO", "device not configured"},
-+ {7, "E2BIG", "argument list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file descriptor"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EDEADLK", "resource deadlock avoided"},
-+ {12, "ENOMEM", "cannot allocate memory"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "operation not supported by device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "too many open files in system"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "numerical argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "EAGAIN", "resource temporarily unavailable"},
-+ {36, "EINPROGRESS", "operation now in progress"},
-+ {37, "EALREADY", "operation already in progress"},
-+ {38, "ENOTSOCK", "socket operation on non-socket"},
-+ {39, "EDESTADDRREQ", "destination address required"},
-+ {40, "EMSGSIZE", "message too long"},
-+ {41, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {42, "ENOPROTOOPT", "protocol not available"},
-+ {43, "EPROTONOSUPPORT", "protocol not supported"},
-+ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {45, "EOPNOTSUPP", "operation not supported"},
-+ {46, "EPFNOSUPPORT", "protocol family not supported"},
-+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {48, "EADDRINUSE", "address already in use"},
-+ {49, "EADDRNOTAVAIL", "can't assign requested address"},
-+ {50, "ENETDOWN", "network is down"},
-+ {51, "ENETUNREACH", "network is unreachable"},
-+ {52, "ENETRESET", "network dropped connection on reset"},
-+ {53, "ECONNABORTED", "software caused connection abort"},
-+ {54, "ECONNRESET", "connection reset by peer"},
-+ {55, "ENOBUFS", "no buffer space available"},
-+ {56, "EISCONN", "socket is already connected"},
-+ {57, "ENOTCONN", "socket is not connected"},
-+ {58, "ESHUTDOWN", "can't send after socket shutdown"},
-+ {59, "ETOOMANYREFS", "too many references: can't splice"},
-+ {60, "ETIMEDOUT", "operation timed out"},
-+ {61, "ECONNREFUSED", "connection refused"},
-+ {62, "ELOOP", "too many levels of symbolic links"},
-+ {63, "ENAMETOOLONG", "file name too long"},
-+ {64, "EHOSTDOWN", "host is down"},
-+ {65, "EHOSTUNREACH", "no route to host"},
-+ {66, "ENOTEMPTY", "directory not empty"},
-+ {67, "EPROCLIM", "too many processes"},
-+ {68, "EUSERS", "too many users"},
-+ {69, "EDQUOT", "disk quota exceeded"},
-+ {70, "ESTALE", "stale NFS file handle"},
-+ {71, "EREMOTE", "too many levels of remote in path"},
-+ {72, "EBADRPC", "RPC struct is bad"},
-+ {73, "ERPCMISMATCH", "RPC version wrong"},
-+ {74, "EPROGUNAVAIL", "RPC program not available"},
-+ {75, "EPROGMISMATCH", "program version wrong"},
-+ {76, "EPROCUNAVAIL", "bad procedure for program"},
-+ {77, "ENOLCK", "no locks available"},
-+ {78, "ENOSYS", "function not implemented"},
-+ {79, "EFTYPE", "inappropriate file type or format"},
-+ {80, "EAUTH", "authentication error"},
-+ {81, "ENEEDAUTH", "need authenticator"},
-+ {82, "EIPSEC", "IPsec processing failure"},
-+ {83, "ENOATTR", "attribute not found"},
-+ {84, "EILSEQ", "illegal byte sequence"},
-+ {85, "ENOMEDIUM", "no medium found"},
-+ {86, "EMEDIUMTYPE", "wrong medium type"},
-+ {87, "EOVERFLOW", "value too large to be stored in data type"},
-+ {88, "ECANCELED", "operation canceled"},
-+ {89, "EIDRM", "identifier removed"},
-+ {90, "ENOMSG", "no message of desired type"},
-+ {91, "ENOTSUP", "not supported"},
-+ {92, "EBADMSG", "bad message"},
-+ {93, "ENOTRECOVERABLE", "state not recoverable"},
-+ {94, "EOWNERDEAD", "previous owner died"},
-+ {95, "ELAST", "protocol error"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal instruction",
-- 5: "trace/BPT trap",
-- 6: "abort trap",
-- 7: "EMT trap",
-- 8: "floating point exception",
-- 9: "killed",
-- 10: "bus error",
-- 11: "segmentation fault",
-- 12: "bad system call",
-- 13: "broken pipe",
-- 14: "alarm clock",
-- 15: "terminated",
-- 16: "urgent I/O condition",
-- 17: "stopped (signal)",
-- 18: "stopped",
-- 19: "continued",
-- 20: "child exited",
-- 21: "stopped (tty input)",
-- 22: "stopped (tty output)",
-- 23: "I/O possible",
-- 24: "cputime limit exceeded",
-- 25: "filesize limit exceeded",
-- 26: "virtual timer expired",
-- 27: "profiling timer expired",
-- 28: "window size changes",
-- 29: "information request",
-- 30: "user defined signal 1",
-- 31: "user defined signal 2",
-- 32: "thread AST",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal instruction"},
-+ {5, "SIGTRAP", "trace/BPT trap"},
-+ {6, "SIGABRT", "abort trap"},
-+ {7, "SIGEMT", "EMT trap"},
-+ {8, "SIGFPE", "floating point exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus error"},
-+ {11, "SIGSEGV", "segmentation fault"},
-+ {12, "SIGSYS", "bad system call"},
-+ {13, "SIGPIPE", "broken pipe"},
-+ {14, "SIGALRM", "alarm clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGURG", "urgent I/O condition"},
-+ {17, "SIGSTOP", "suspended (signal)"},
-+ {18, "SIGTSTP", "suspended"},
-+ {19, "SIGCONT", "continued"},
-+ {20, "SIGCHLD", "child exited"},
-+ {21, "SIGTTIN", "stopped (tty input)"},
-+ {22, "SIGTTOU", "stopped (tty output)"},
-+ {23, "SIGIO", "I/O possible"},
-+ {24, "SIGXCPU", "cputime limit exceeded"},
-+ {25, "SIGXFSZ", "filesize limit exceeded"},
-+ {26, "SIGVTALRM", "virtual timer expired"},
-+ {27, "SIGPROF", "profiling timer expired"},
-+ {28, "SIGWINCH", "window size changes"},
-+ {29, "SIGINFO", "information request"},
-+ {30, "SIGUSR1", "user defined signal 1"},
-+ {31, "SIGUSR2", "user defined signal 2"},
-+ {32, "SIGTHR", "thread AST"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go
-index 81e83d78..46e054cc 100644
---- a/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go
-@@ -3,7 +3,7 @@
-
- // +build amd64,solaris
-
--// Created by cgo -godefs - DO NOT EDIT
-+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
- // cgo -godefs -- -m64 _const.go
-
- package unix
-@@ -664,6 +664,9 @@ const (
- MS_OLDSYNC = 0x0
- MS_SYNC = 0x4
- M_FLUSH = 0x86
-+ NAME_MAX = 0xff
-+ NEWDEV = 0x1
-+ NFDBITS = 0x40
- NL0 = 0x0
- NL1 = 0x100
- NLDLY = 0x100
-@@ -672,6 +675,9 @@ const (
- OFDEL = 0x80
- OFILL = 0x40
- OLCUC = 0x2
-+ OLDDEV = 0x0
-+ ONBITSMAJOR = 0x7
-+ ONBITSMINOR = 0x8
- ONLCR = 0x4
- ONLRET = 0x20
- ONOCR = 0x10
-@@ -991,6 +997,39 @@ const (
- SO_USELOOPBACK = 0x40
- SO_VRRP = 0x1017
- SO_WROFF = 0x2
-+ S_ENFMT = 0x400
-+ S_IAMB = 0x1ff
-+ S_IEXEC = 0x40
-+ S_IFBLK = 0x6000
-+ S_IFCHR = 0x2000
-+ S_IFDIR = 0x4000
-+ S_IFDOOR = 0xd000
-+ S_IFIFO = 0x1000
-+ S_IFLNK = 0xa000
-+ S_IFMT = 0xf000
-+ S_IFNAM = 0x5000
-+ S_IFPORT = 0xe000
-+ S_IFREG = 0x8000
-+ S_IFSOCK = 0xc000
-+ S_INSEM = 0x1
-+ S_INSHD = 0x2
-+ S_IREAD = 0x100
-+ S_IRGRP = 0x20
-+ S_IROTH = 0x4
-+ S_IRUSR = 0x100
-+ S_IRWXG = 0x38
-+ S_IRWXO = 0x7
-+ S_IRWXU = 0x1c0
-+ S_ISGID = 0x400
-+ S_ISUID = 0x800
-+ S_ISVTX = 0x200
-+ S_IWGRP = 0x10
-+ S_IWOTH = 0x2
-+ S_IWRITE = 0x80
-+ S_IWUSR = 0x80
-+ S_IXGRP = 0x8
-+ S_IXOTH = 0x1
-+ S_IXUSR = 0x40
- TAB0 = 0x0
- TAB1 = 0x800
- TAB2 = 0x1000
-@@ -1097,6 +1136,8 @@ const (
- TIOCSTOP = 0x746f
- TIOCSWINSZ = 0x5467
- TOSTOP = 0x100
-+ UTIME_NOW = -0x1
-+ UTIME_OMIT = -0x2
- VCEOF = 0x8
- VCEOL = 0x9
- VDISCARD = 0xd
-@@ -1105,6 +1146,7 @@ const (
- VEOL = 0x5
- VEOL2 = 0x6
- VERASE = 0x2
-+ VERASE2 = 0x11
- VINTR = 0x0
- VKILL = 0x3
- VLNEXT = 0xf
-@@ -1313,171 +1355,179 @@ const (
- )
-
- // Error table
--var errors = [...]string{
-- 1: "not owner",
-- 2: "no such file or directory",
-- 3: "no such process",
-- 4: "interrupted system call",
-- 5: "I/O error",
-- 6: "no such device or address",
-- 7: "arg list too long",
-- 8: "exec format error",
-- 9: "bad file number",
-- 10: "no child processes",
-- 11: "resource temporarily unavailable",
-- 12: "not enough space",
-- 13: "permission denied",
-- 14: "bad address",
-- 15: "block device required",
-- 16: "device busy",
-- 17: "file exists",
-- 18: "cross-device link",
-- 19: "no such device",
-- 20: "not a directory",
-- 21: "is a directory",
-- 22: "invalid argument",
-- 23: "file table overflow",
-- 24: "too many open files",
-- 25: "inappropriate ioctl for device",
-- 26: "text file busy",
-- 27: "file too large",
-- 28: "no space left on device",
-- 29: "illegal seek",
-- 30: "read-only file system",
-- 31: "too many links",
-- 32: "broken pipe",
-- 33: "argument out of domain",
-- 34: "result too large",
-- 35: "no message of desired type",
-- 36: "identifier removed",
-- 37: "channel number out of range",
-- 38: "level 2 not synchronized",
-- 39: "level 3 halted",
-- 40: "level 3 reset",
-- 41: "link number out of range",
-- 42: "protocol driver not attached",
-- 43: "no CSI structure available",
-- 44: "level 2 halted",
-- 45: "deadlock situation detected/avoided",
-- 46: "no record locks available",
-- 47: "operation canceled",
-- 48: "operation not supported",
-- 49: "disc quota exceeded",
-- 50: "bad exchange descriptor",
-- 51: "bad request descriptor",
-- 52: "message tables full",
-- 53: "anode table overflow",
-- 54: "bad request code",
-- 55: "invalid slot",
-- 56: "file locking deadlock",
-- 57: "bad font file format",
-- 58: "owner of the lock died",
-- 59: "lock is not recoverable",
-- 60: "not a stream device",
-- 61: "no data available",
-- 62: "timer expired",
-- 63: "out of stream resources",
-- 64: "machine is not on the network",
-- 65: "package not installed",
-- 66: "object is remote",
-- 67: "link has been severed",
-- 68: "advertise error",
-- 69: "srmount error",
-- 70: "communication error on send",
-- 71: "protocol error",
-- 72: "locked lock was unmapped ",
-- 73: "facility is not active",
-- 74: "multihop attempted",
-- 77: "not a data message",
-- 78: "file name too long",
-- 79: "value too large for defined data type",
-- 80: "name not unique on network",
-- 81: "file descriptor in bad state",
-- 82: "remote address changed",
-- 83: "can not access a needed shared library",
-- 84: "accessing a corrupted shared library",
-- 85: ".lib section in a.out corrupted",
-- 86: "attempting to link in more shared libraries than system limit",
-- 87: "can not exec a shared library directly",
-- 88: "illegal byte sequence",
-- 89: "operation not applicable",
-- 90: "number of symbolic links encountered during path name traversal exceeds MAXSYMLINKS",
-- 91: "error 91",
-- 92: "error 92",
-- 93: "directory not empty",
-- 94: "too many users",
-- 95: "socket operation on non-socket",
-- 96: "destination address required",
-- 97: "message too long",
-- 98: "protocol wrong type for socket",
-- 99: "option not supported by protocol",
-- 120: "protocol not supported",
-- 121: "socket type not supported",
-- 122: "operation not supported on transport endpoint",
-- 123: "protocol family not supported",
-- 124: "address family not supported by protocol family",
-- 125: "address already in use",
-- 126: "cannot assign requested address",
-- 127: "network is down",
-- 128: "network is unreachable",
-- 129: "network dropped connection because of reset",
-- 130: "software caused connection abort",
-- 131: "connection reset by peer",
-- 132: "no buffer space available",
-- 133: "transport endpoint is already connected",
-- 134: "transport endpoint is not connected",
-- 143: "cannot send after socket shutdown",
-- 144: "too many references: cannot splice",
-- 145: "connection timed out",
-- 146: "connection refused",
-- 147: "host is down",
-- 148: "no route to host",
-- 149: "operation already in progress",
-- 150: "operation now in progress",
-- 151: "stale NFS file handle",
-+var errorList = [...]struct {
-+ num syscall.Errno
-+ name string
-+ desc string
-+}{
-+ {1, "EPERM", "not owner"},
-+ {2, "ENOENT", "no such file or directory"},
-+ {3, "ESRCH", "no such process"},
-+ {4, "EINTR", "interrupted system call"},
-+ {5, "EIO", "I/O error"},
-+ {6, "ENXIO", "no such device or address"},
-+ {7, "E2BIG", "arg list too long"},
-+ {8, "ENOEXEC", "exec format error"},
-+ {9, "EBADF", "bad file number"},
-+ {10, "ECHILD", "no child processes"},
-+ {11, "EAGAIN", "resource temporarily unavailable"},
-+ {12, "ENOMEM", "not enough space"},
-+ {13, "EACCES", "permission denied"},
-+ {14, "EFAULT", "bad address"},
-+ {15, "ENOTBLK", "block device required"},
-+ {16, "EBUSY", "device busy"},
-+ {17, "EEXIST", "file exists"},
-+ {18, "EXDEV", "cross-device link"},
-+ {19, "ENODEV", "no such device"},
-+ {20, "ENOTDIR", "not a directory"},
-+ {21, "EISDIR", "is a directory"},
-+ {22, "EINVAL", "invalid argument"},
-+ {23, "ENFILE", "file table overflow"},
-+ {24, "EMFILE", "too many open files"},
-+ {25, "ENOTTY", "inappropriate ioctl for device"},
-+ {26, "ETXTBSY", "text file busy"},
-+ {27, "EFBIG", "file too large"},
-+ {28, "ENOSPC", "no space left on device"},
-+ {29, "ESPIPE", "illegal seek"},
-+ {30, "EROFS", "read-only file system"},
-+ {31, "EMLINK", "too many links"},
-+ {32, "EPIPE", "broken pipe"},
-+ {33, "EDOM", "argument out of domain"},
-+ {34, "ERANGE", "result too large"},
-+ {35, "ENOMSG", "no message of desired type"},
-+ {36, "EIDRM", "identifier removed"},
-+ {37, "ECHRNG", "channel number out of range"},
-+ {38, "EL2NSYNC", "level 2 not synchronized"},
-+ {39, "EL3HLT", "level 3 halted"},
-+ {40, "EL3RST", "level 3 reset"},
-+ {41, "ELNRNG", "link number out of range"},
-+ {42, "EUNATCH", "protocol driver not attached"},
-+ {43, "ENOCSI", "no CSI structure available"},
-+ {44, "EL2HLT", "level 2 halted"},
-+ {45, "EDEADLK", "deadlock situation detected/avoided"},
-+ {46, "ENOLCK", "no record locks available"},
-+ {47, "ECANCELED", "operation canceled"},
-+ {48, "ENOTSUP", "operation not supported"},
-+ {49, "EDQUOT", "disc quota exceeded"},
-+ {50, "EBADE", "bad exchange descriptor"},
-+ {51, "EBADR", "bad request descriptor"},
-+ {52, "EXFULL", "message tables full"},
-+ {53, "ENOANO", "anode table overflow"},
-+ {54, "EBADRQC", "bad request code"},
-+ {55, "EBADSLT", "invalid slot"},
-+ {56, "EDEADLOCK", "file locking deadlock"},
-+ {57, "EBFONT", "bad font file format"},
-+ {58, "EOWNERDEAD", "owner of the lock died"},
-+ {59, "ENOTRECOVERABLE", "lock is not recoverable"},
-+ {60, "ENOSTR", "not a stream device"},
-+ {61, "ENODATA", "no data available"},
-+ {62, "ETIME", "timer expired"},
-+ {63, "ENOSR", "out of stream resources"},
-+ {64, "ENONET", "machine is not on the network"},
-+ {65, "ENOPKG", "package not installed"},
-+ {66, "EREMOTE", "object is remote"},
-+ {67, "ENOLINK", "link has been severed"},
-+ {68, "EADV", "advertise error"},
-+ {69, "ESRMNT", "srmount error"},
-+ {70, "ECOMM", "communication error on send"},
-+ {71, "EPROTO", "protocol error"},
-+ {72, "ELOCKUNMAPPED", "locked lock was unmapped "},
-+ {73, "ENOTACTIVE", "facility is not active"},
-+ {74, "EMULTIHOP", "multihop attempted"},
-+ {77, "EBADMSG", "not a data message"},
-+ {78, "ENAMETOOLONG", "file name too long"},
-+ {79, "EOVERFLOW", "value too large for defined data type"},
-+ {80, "ENOTUNIQ", "name not unique on network"},
-+ {81, "EBADFD", "file descriptor in bad state"},
-+ {82, "EREMCHG", "remote address changed"},
-+ {83, "ELIBACC", "can not access a needed shared library"},
-+ {84, "ELIBBAD", "accessing a corrupted shared library"},
-+ {85, "ELIBSCN", ".lib section in a.out corrupted"},
-+ {86, "ELIBMAX", "attempting to link in more shared libraries than system limit"},
-+ {87, "ELIBEXEC", "can not exec a shared library directly"},
-+ {88, "EILSEQ", "illegal byte sequence"},
-+ {89, "ENOSYS", "operation not applicable"},
-+ {90, "ELOOP", "number of symbolic links encountered during path name traversal exceeds MAXSYMLINKS"},
-+ {91, "ERESTART", "error 91"},
-+ {92, "ESTRPIPE", "error 92"},
-+ {93, "ENOTEMPTY", "directory not empty"},
-+ {94, "EUSERS", "too many users"},
-+ {95, "ENOTSOCK", "socket operation on non-socket"},
-+ {96, "EDESTADDRREQ", "destination address required"},
-+ {97, "EMSGSIZE", "message too long"},
-+ {98, "EPROTOTYPE", "protocol wrong type for socket"},
-+ {99, "ENOPROTOOPT", "option not supported by protocol"},
-+ {120, "EPROTONOSUPPORT", "protocol not supported"},
-+ {121, "ESOCKTNOSUPPORT", "socket type not supported"},
-+ {122, "EOPNOTSUPP", "operation not supported on transport endpoint"},
-+ {123, "EPFNOSUPPORT", "protocol family not supported"},
-+ {124, "EAFNOSUPPORT", "address family not supported by protocol family"},
-+ {125, "EADDRINUSE", "address already in use"},
-+ {126, "EADDRNOTAVAIL", "cannot assign requested address"},
-+ {127, "ENETDOWN", "network is down"},
-+ {128, "ENETUNREACH", "network is unreachable"},
-+ {129, "ENETRESET", "network dropped connection because of reset"},
-+ {130, "ECONNABORTED", "software caused connection abort"},
-+ {131, "ECONNRESET", "connection reset by peer"},
-+ {132, "ENOBUFS", "no buffer space available"},
-+ {133, "EISCONN", "transport endpoint is already connected"},
-+ {134, "ENOTCONN", "transport endpoint is not connected"},
-+ {143, "ESHUTDOWN", "cannot send after socket shutdown"},
-+ {144, "ETOOMANYREFS", "too many references: cannot splice"},
-+ {145, "ETIMEDOUT", "connection timed out"},
-+ {146, "ECONNREFUSED", "connection refused"},
-+ {147, "EHOSTDOWN", "host is down"},
-+ {148, "EHOSTUNREACH", "no route to host"},
-+ {149, "EALREADY", "operation already in progress"},
-+ {150, "EINPROGRESS", "operation now in progress"},
-+ {151, "ESTALE", "stale NFS file handle"},
- }
-
- // Signal table
--var signals = [...]string{
-- 1: "hangup",
-- 2: "interrupt",
-- 3: "quit",
-- 4: "illegal Instruction",
-- 5: "trace/Breakpoint Trap",
-- 6: "abort",
-- 7: "emulation Trap",
-- 8: "arithmetic Exception",
-- 9: "killed",
-- 10: "bus Error",
-- 11: "segmentation Fault",
-- 12: "bad System Call",
-- 13: "broken Pipe",
-- 14: "alarm Clock",
-- 15: "terminated",
-- 16: "user Signal 1",
-- 17: "user Signal 2",
-- 18: "child Status Changed",
-- 19: "power-Fail/Restart",
-- 20: "window Size Change",
-- 21: "urgent Socket Condition",
-- 22: "pollable Event",
-- 23: "stopped (signal)",
-- 24: "stopped (user)",
-- 25: "continued",
-- 26: "stopped (tty input)",
-- 27: "stopped (tty output)",
-- 28: "virtual Timer Expired",
-- 29: "profiling Timer Expired",
-- 30: "cpu Limit Exceeded",
-- 31: "file Size Limit Exceeded",
-- 32: "no runnable lwp",
-- 33: "inter-lwp signal",
-- 34: "checkpoint Freeze",
-- 35: "checkpoint Thaw",
-- 36: "thread Cancellation",
-- 37: "resource Lost",
-- 38: "resource Control Exceeded",
-- 39: "reserved for JVM 1",
-- 40: "reserved for JVM 2",
-- 41: "information Request",
-+var signalList = [...]struct {
-+ num syscall.Signal
-+ name string
-+ desc string
-+}{
-+ {1, "SIGHUP", "hangup"},
-+ {2, "SIGINT", "interrupt"},
-+ {3, "SIGQUIT", "quit"},
-+ {4, "SIGILL", "illegal Instruction"},
-+ {5, "SIGTRAP", "trace/Breakpoint Trap"},
-+ {6, "SIGABRT", "abort"},
-+ {7, "SIGEMT", "emulation Trap"},
-+ {8, "SIGFPE", "arithmetic Exception"},
-+ {9, "SIGKILL", "killed"},
-+ {10, "SIGBUS", "bus Error"},
-+ {11, "SIGSEGV", "segmentation Fault"},
-+ {12, "SIGSYS", "bad System Call"},
-+ {13, "SIGPIPE", "broken Pipe"},
-+ {14, "SIGALRM", "alarm Clock"},
-+ {15, "SIGTERM", "terminated"},
-+ {16, "SIGUSR1", "user Signal 1"},
-+ {17, "SIGUSR2", "user Signal 2"},
-+ {18, "SIGCHLD", "child Status Changed"},
-+ {19, "SIGPWR", "power-Fail/Restart"},
-+ {20, "SIGWINCH", "window Size Change"},
-+ {21, "SIGURG", "urgent Socket Condition"},
-+ {22, "SIGIO", "pollable Event"},
-+ {23, "SIGSTOP", "stopped (signal)"},
-+ {24, "SIGTSTP", "stopped (user)"},
-+ {25, "SIGCONT", "continued"},
-+ {26, "SIGTTIN", "stopped (tty input)"},
-+ {27, "SIGTTOU", "stopped (tty output)"},
-+ {28, "SIGVTALRM", "virtual Timer Expired"},
-+ {29, "SIGPROF", "profiling Timer Expired"},
-+ {30, "SIGXCPU", "cpu Limit Exceeded"},
-+ {31, "SIGXFSZ", "file Size Limit Exceeded"},
-+ {32, "SIGWAITING", "no runnable lwp"},
-+ {33, "SIGLWP", "inter-lwp signal"},
-+ {34, "SIGFREEZE", "checkpoint Freeze"},
-+ {35, "SIGTHAW", "checkpoint Thaw"},
-+ {36, "SIGCANCEL", "thread Cancellation"},
-+ {37, "SIGLOST", "resource Lost"},
-+ {38, "SIGXRES", "resource Control Exceeded"},
-+ {39, "SIGJVM1", "reserved for JVM 1"},
-+ {40, "SIGJVM2", "reserved for JVM 2"},
-+ {41, "SIGINFO", "information Request"},
- }
-diff --git a/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go b/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go
-new file mode 100644
-index 00000000..89c5920e
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go
-@@ -0,0 +1,41 @@
-+// Code generated by linux/mkall.go generatePtracePair("arm", "arm64"). DO NOT EDIT.
-+
-+// +build linux
-+// +build arm arm64
-+
-+package unix
-+
-+import "unsafe"
-+
-+// PtraceRegsArm is the registers used by arm binaries.
-+type PtraceRegsArm struct {
-+ Uregs [18]uint32
-+}
-+
-+// PtraceGetRegsArm fetches the registers used by arm binaries.
-+func PtraceGetRegsArm(pid int, regsout *PtraceRegsArm) error {
-+ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
-+}
-+
-+// PtraceSetRegsArm sets the registers used by arm binaries.
-+func PtraceSetRegsArm(pid int, regs *PtraceRegsArm) error {
-+ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
-+}
-+
-+// PtraceRegsArm64 is the registers used by arm64 binaries.
-+type PtraceRegsArm64 struct {
-+ Regs [31]uint64
-+ Sp uint64
-+ Pc uint64
-+ Pstate uint64
-+}
-+
-+// PtraceGetRegsArm64 fetches the registers used by arm64 binaries.
-+func PtraceGetRegsArm64(pid int, regsout *PtraceRegsArm64) error {
-+ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
-+}
-+
-+// PtraceSetRegsArm64 sets the registers used by arm64 binaries.
-+func PtraceSetRegsArm64(pid int, regs *PtraceRegsArm64) error {
-+ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zptrace_linux_arm64.go b/vendor/golang.org/x/sys/unix/zptrace_linux_arm64.go
-new file mode 100644
-index 00000000..6cb6d688
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zptrace_linux_arm64.go
-@@ -0,0 +1,17 @@
-+// Code generated by linux/mkall.go generatePtraceRegSet("arm64"). DO NOT EDIT.
-+
-+package unix
-+
-+import "unsafe"
-+
-+// PtraceGetRegSetArm64 fetches the registers used by arm64 binaries.
-+func PtraceGetRegSetArm64(pid, addr int, regsout *PtraceRegsArm64) error {
-+ iovec := Iovec{(*byte)(unsafe.Pointer(regsout)), uint64(unsafe.Sizeof(*regsout))}
-+ return ptrace(PTRACE_GETREGSET, pid, uintptr(addr), uintptr(unsafe.Pointer(&iovec)))
-+}
-+
-+// PtraceSetRegSetArm64 sets the registers used by arm64 binaries.
-+func PtraceSetRegSetArm64(pid, addr int, regs *PtraceRegsArm64) error {
-+ iovec := Iovec{(*byte)(unsafe.Pointer(regs)), uint64(unsafe.Sizeof(*regs))}
-+ return ptrace(PTRACE_SETREGSET, pid, uintptr(addr), uintptr(unsafe.Pointer(&iovec)))
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go b/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go
-new file mode 100644
-index 00000000..24b841ee
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go
-@@ -0,0 +1,50 @@
-+// Code generated by linux/mkall.go generatePtracePair("mips", "mips64"). DO NOT EDIT.
-+
-+// +build linux
-+// +build mips mips64
-+
-+package unix
-+
-+import "unsafe"
-+
-+// PtraceRegsMips is the registers used by mips binaries.
-+type PtraceRegsMips struct {
-+ Regs [32]uint64
-+ Lo uint64
-+ Hi uint64
-+ Epc uint64
-+ Badvaddr uint64
-+ Status uint64
-+ Cause uint64
-+}
-+
-+// PtraceGetRegsMips fetches the registers used by mips binaries.
-+func PtraceGetRegsMips(pid int, regsout *PtraceRegsMips) error {
-+ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
-+}
-+
-+// PtraceSetRegsMips sets the registers used by mips binaries.
-+func PtraceSetRegsMips(pid int, regs *PtraceRegsMips) error {
-+ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
-+}
-+
-+// PtraceRegsMips64 is the registers used by mips64 binaries.
-+type PtraceRegsMips64 struct {
-+ Regs [32]uint64
-+ Lo uint64
-+ Hi uint64
-+ Epc uint64
-+ Badvaddr uint64
-+ Status uint64
-+ Cause uint64
-+}
-+
-+// PtraceGetRegsMips64 fetches the registers used by mips64 binaries.
-+func PtraceGetRegsMips64(pid int, regsout *PtraceRegsMips64) error {
-+ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
-+}
-+
-+// PtraceSetRegsMips64 sets the registers used by mips64 binaries.
-+func PtraceSetRegsMips64(pid int, regs *PtraceRegsMips64) error {
-+ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go b/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go
-new file mode 100644
-index 00000000..47b04895
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go
-@@ -0,0 +1,50 @@
-+// Code generated by linux/mkall.go generatePtracePair("mipsle", "mips64le"). DO NOT EDIT.
-+
-+// +build linux
-+// +build mipsle mips64le
-+
-+package unix
-+
-+import "unsafe"
-+
-+// PtraceRegsMipsle is the registers used by mipsle binaries.
-+type PtraceRegsMipsle struct {
-+ Regs [32]uint64
-+ Lo uint64
-+ Hi uint64
-+ Epc uint64
-+ Badvaddr uint64
-+ Status uint64
-+ Cause uint64
-+}
-+
-+// PtraceGetRegsMipsle fetches the registers used by mipsle binaries.
-+func PtraceGetRegsMipsle(pid int, regsout *PtraceRegsMipsle) error {
-+ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
-+}
-+
-+// PtraceSetRegsMipsle sets the registers used by mipsle binaries.
-+func PtraceSetRegsMipsle(pid int, regs *PtraceRegsMipsle) error {
-+ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
-+}
-+
-+// PtraceRegsMips64le is the registers used by mips64le binaries.
-+type PtraceRegsMips64le struct {
-+ Regs [32]uint64
-+ Lo uint64
-+ Hi uint64
-+ Epc uint64
-+ Badvaddr uint64
-+ Status uint64
-+ Cause uint64
-+}
-+
-+// PtraceGetRegsMips64le fetches the registers used by mips64le binaries.
-+func PtraceGetRegsMips64le(pid int, regsout *PtraceRegsMips64le) error {
-+ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
-+}
-+
-+// PtraceSetRegsMips64le sets the registers used by mips64le binaries.
-+func PtraceSetRegsMips64le(pid int, regs *PtraceRegsMips64le) error {
-+ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go b/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go
-new file mode 100644
-index 00000000..ea5d9cb5
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go
-@@ -0,0 +1,80 @@
-+// Code generated by linux/mkall.go generatePtracePair("386", "amd64"). DO NOT EDIT.
-+
-+// +build linux
-+// +build 386 amd64
-+
-+package unix
-+
-+import "unsafe"
-+
-+// PtraceRegs386 is the registers used by 386 binaries.
-+type PtraceRegs386 struct {
-+ Ebx int32
-+ Ecx int32
-+ Edx int32
-+ Esi int32
-+ Edi int32
-+ Ebp int32
-+ Eax int32
-+ Xds int32
-+ Xes int32
-+ Xfs int32
-+ Xgs int32
-+ Orig_eax int32
-+ Eip int32
-+ Xcs int32
-+ Eflags int32
-+ Esp int32
-+ Xss int32
-+}
-+
-+// PtraceGetRegs386 fetches the registers used by 386 binaries.
-+func PtraceGetRegs386(pid int, regsout *PtraceRegs386) error {
-+ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
-+}
-+
-+// PtraceSetRegs386 sets the registers used by 386 binaries.
-+func PtraceSetRegs386(pid int, regs *PtraceRegs386) error {
-+ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
-+}
-+
-+// PtraceRegsAmd64 is the registers used by amd64 binaries.
-+type PtraceRegsAmd64 struct {
-+ R15 uint64
-+ R14 uint64
-+ R13 uint64
-+ R12 uint64
-+ Rbp uint64
-+ Rbx uint64
-+ R11 uint64
-+ R10 uint64
-+ R9 uint64
-+ R8 uint64
-+ Rax uint64
-+ Rcx uint64
-+ Rdx uint64
-+ Rsi uint64
-+ Rdi uint64
-+ Orig_rax uint64
-+ Rip uint64
-+ Cs uint64
-+ Eflags uint64
-+ Rsp uint64
-+ Ss uint64
-+ Fs_base uint64
-+ Gs_base uint64
-+ Ds uint64
-+ Es uint64
-+ Fs uint64
-+ Gs uint64
-+}
-+
-+// PtraceGetRegsAmd64 fetches the registers used by amd64 binaries.
-+func PtraceGetRegsAmd64(pid int, regsout *PtraceRegsAmd64) error {
-+ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
-+}
-+
-+// PtraceSetRegsAmd64 sets the registers used by amd64 binaries.
-+func PtraceSetRegsAmd64(pid int, regs *PtraceRegsAmd64) error {
-+ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go
-new file mode 100644
-index 00000000..ed657ff1
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go
-@@ -0,0 +1,1484 @@
-+// go run mksyscall_aix_ppc.go -aix -tags aix,ppc syscall_aix.go syscall_aix_ppc.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build aix,ppc
-+
-+package unix
-+
-+/*
-+#include <stdint.h>
-+#include <stddef.h>
-+int utimes(uintptr_t, uintptr_t);
-+int utimensat(int, uintptr_t, uintptr_t, int);
-+int getcwd(uintptr_t, size_t);
-+int accept(int, uintptr_t, uintptr_t);
-+int getdirent(int, uintptr_t, size_t);
-+int wait4(int, uintptr_t, int, uintptr_t);
-+int ioctl(int, int, uintptr_t);
-+int fcntl(uintptr_t, int, uintptr_t);
-+int acct(uintptr_t);
-+int chdir(uintptr_t);
-+int chroot(uintptr_t);
-+int close(int);
-+int dup(int);
-+void exit(int);
-+int faccessat(int, uintptr_t, unsigned int, int);
-+int fchdir(int);
-+int fchmod(int, unsigned int);
-+int fchmodat(int, uintptr_t, unsigned int, int);
-+int fchownat(int, uintptr_t, int, int, int);
-+int fdatasync(int);
-+int fsync(int);
-+int getpgid(int);
-+int getpgrp();
-+int getpid();
-+int getppid();
-+int getpriority(int, int);
-+int getrusage(int, uintptr_t);
-+int getsid(int);
-+int kill(int, int);
-+int syslog(int, uintptr_t, size_t);
-+int mkdir(int, uintptr_t, unsigned int);
-+int mkdirat(int, uintptr_t, unsigned int);
-+int mkfifo(uintptr_t, unsigned int);
-+int mknod(uintptr_t, unsigned int, int);
-+int mknodat(int, uintptr_t, unsigned int, int);
-+int nanosleep(uintptr_t, uintptr_t);
-+int open64(uintptr_t, int, unsigned int);
-+int openat(int, uintptr_t, int, unsigned int);
-+int read(int, uintptr_t, size_t);
-+int readlink(uintptr_t, uintptr_t, size_t);
-+int renameat(int, uintptr_t, int, uintptr_t);
-+int setdomainname(uintptr_t, size_t);
-+int sethostname(uintptr_t, size_t);
-+int setpgid(int, int);
-+int setsid();
-+int settimeofday(uintptr_t);
-+int setuid(int);
-+int setgid(int);
-+int setpriority(int, int, int);
-+int statx(int, uintptr_t, int, int, uintptr_t);
-+int sync();
-+uintptr_t times(uintptr_t);
-+int umask(int);
-+int uname(uintptr_t);
-+int unlink(uintptr_t);
-+int unlinkat(int, uintptr_t, int);
-+int ustat(int, uintptr_t);
-+int write(int, uintptr_t, size_t);
-+int dup2(int, int);
-+int posix_fadvise64(int, long long, long long, int);
-+int fchown(int, int, int);
-+int fstat(int, uintptr_t);
-+int fstatat(int, uintptr_t, uintptr_t, int);
-+int fstatfs(int, uintptr_t);
-+int ftruncate(int, long long);
-+int getegid();
-+int geteuid();
-+int getgid();
-+int getuid();
-+int lchown(uintptr_t, int, int);
-+int listen(int, int);
-+int lstat(uintptr_t, uintptr_t);
-+int pause();
-+int pread64(int, uintptr_t, size_t, long long);
-+int pwrite64(int, uintptr_t, size_t, long long);
-+#define c_select select
-+int select(int, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
-+int pselect(int, uintptr_t, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
-+int setregid(int, int);
-+int setreuid(int, int);
-+int shutdown(int, int);
-+long long splice(int, uintptr_t, int, uintptr_t, int, int);
-+int stat(uintptr_t, uintptr_t);
-+int statfs(uintptr_t, uintptr_t);
-+int truncate(uintptr_t, long long);
-+int bind(int, uintptr_t, uintptr_t);
-+int connect(int, uintptr_t, uintptr_t);
-+int getgroups(int, uintptr_t);
-+int setgroups(int, uintptr_t);
-+int getsockopt(int, int, int, uintptr_t, uintptr_t);
-+int setsockopt(int, int, int, uintptr_t, uintptr_t);
-+int socket(int, int, int);
-+int socketpair(int, int, int, uintptr_t);
-+int getpeername(int, uintptr_t, uintptr_t);
-+int getsockname(int, uintptr_t, uintptr_t);
-+int recvfrom(int, uintptr_t, size_t, int, uintptr_t, uintptr_t);
-+int sendto(int, uintptr_t, size_t, int, uintptr_t, uintptr_t);
-+int nrecvmsg(int, uintptr_t, int);
-+int nsendmsg(int, uintptr_t, int);
-+int munmap(uintptr_t, uintptr_t);
-+int madvise(uintptr_t, size_t, int);
-+int mprotect(uintptr_t, size_t, int);
-+int mlock(uintptr_t, size_t);
-+int mlockall(int);
-+int msync(uintptr_t, size_t, int);
-+int munlock(uintptr_t, size_t);
-+int munlockall();
-+int pipe(uintptr_t);
-+int poll(uintptr_t, int, int);
-+int gettimeofday(uintptr_t, uintptr_t);
-+int time(uintptr_t);
-+int utime(uintptr_t, uintptr_t);
-+unsigned long long getsystemcfg(int);
-+int umount(uintptr_t);
-+int getrlimit64(int, uintptr_t);
-+int setrlimit64(int, uintptr_t);
-+long long lseek64(int, long long, int);
-+uintptr_t mmap(uintptr_t, uintptr_t, int, int, int, long long);
-+
-+*/
-+import "C"
-+import (
-+ "unsafe"
-+)
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func utimes(path string, times *[2]Timeval) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.utimes(C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(times))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func utimensat(dirfd int, path string, times *[2]Timespec, flag int) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.utimensat(C.int(dirfd), C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(times))), C.int(flag))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getcwd(buf []byte) (err error) {
-+ var _p0 *byte
-+ if len(buf) > 0 {
-+ _p0 = &buf[0]
-+ }
-+ var _p1 int
-+ _p1 = len(buf)
-+ r0, er := C.getcwd(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
-+ r0, er := C.accept(C.int(s), C.uintptr_t(uintptr(unsafe.Pointer(rsa))), C.uintptr_t(uintptr(unsafe.Pointer(addrlen))))
-+ fd = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getdirent(fd int, buf []byte) (n int, err error) {
-+ var _p0 *byte
-+ if len(buf) > 0 {
-+ _p0 = &buf[0]
-+ }
-+ var _p1 int
-+ _p1 = len(buf)
-+ r0, er := C.getdirent(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func wait4(pid Pid_t, status *_C_int, options int, rusage *Rusage) (wpid Pid_t, err error) {
-+ r0, er := C.wait4(C.int(pid), C.uintptr_t(uintptr(unsafe.Pointer(status))), C.int(options), C.uintptr_t(uintptr(unsafe.Pointer(rusage))))
-+ wpid = Pid_t(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ioctl(fd int, req uint, arg uintptr) (err error) {
-+ r0, er := C.ioctl(C.int(fd), C.int(req), C.uintptr_t(arg))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func FcntlInt(fd uintptr, cmd int, arg int) (r int, err error) {
-+ r0, er := C.fcntl(C.uintptr_t(fd), C.int(cmd), C.uintptr_t(arg))
-+ r = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) (err error) {
-+ r0, er := C.fcntl(C.uintptr_t(fd), C.int(cmd), C.uintptr_t(uintptr(unsafe.Pointer(lk))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fcntl(fd int, cmd int, arg int) (val int, err error) {
-+ r0, er := C.fcntl(C.uintptr_t(fd), C.int(cmd), C.uintptr_t(arg))
-+ val = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Acct(path string) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.acct(C.uintptr_t(_p0))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Chdir(path string) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.chdir(C.uintptr_t(_p0))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Chroot(path string) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.chroot(C.uintptr_t(_p0))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Close(fd int) (err error) {
-+ r0, er := C.close(C.int(fd))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Dup(oldfd int) (fd int, err error) {
-+ r0, er := C.dup(C.int(oldfd))
-+ fd = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Exit(code int) {
-+ C.exit(C.int(code))
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.faccessat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode), C.int(flags))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fchdir(fd int) (err error) {
-+ r0, er := C.fchdir(C.int(fd))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fchmod(fd int, mode uint32) (err error) {
-+ r0, er := C.fchmod(C.int(fd), C.uint(mode))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.fchmodat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode), C.int(flags))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.fchownat(C.int(dirfd), C.uintptr_t(_p0), C.int(uid), C.int(gid), C.int(flags))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fdatasync(fd int) (err error) {
-+ r0, er := C.fdatasync(C.int(fd))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fsync(fd int) (err error) {
-+ r0, er := C.fsync(C.int(fd))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getpgid(pid int) (pgid int, err error) {
-+ r0, er := C.getpgid(C.int(pid))
-+ pgid = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getpgrp() (pid int) {
-+ r0, _ := C.getpgrp()
-+ pid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getpid() (pid int) {
-+ r0, _ := C.getpid()
-+ pid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getppid() (ppid int) {
-+ r0, _ := C.getppid()
-+ ppid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getpriority(which int, who int) (prio int, err error) {
-+ r0, er := C.getpriority(C.int(which), C.int(who))
-+ prio = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getrusage(who int, rusage *Rusage) (err error) {
-+ r0, er := C.getrusage(C.int(who), C.uintptr_t(uintptr(unsafe.Pointer(rusage))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getsid(pid int) (sid int, err error) {
-+ r0, er := C.getsid(C.int(pid))
-+ sid = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Kill(pid int, sig Signal) (err error) {
-+ r0, er := C.kill(C.int(pid), C.int(sig))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Klogctl(typ int, buf []byte) (n int, err error) {
-+ var _p0 *byte
-+ if len(buf) > 0 {
-+ _p0 = &buf[0]
-+ }
-+ var _p1 int
-+ _p1 = len(buf)
-+ r0, er := C.syslog(C.int(typ), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Mkdir(dirfd int, path string, mode uint32) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.mkdir(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.mkdirat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Mkfifo(path string, mode uint32) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.mkfifo(C.uintptr_t(_p0), C.uint(mode))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Mknod(path string, mode uint32, dev int) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.mknod(C.uintptr_t(_p0), C.uint(mode), C.int(dev))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.mknodat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode), C.int(dev))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-+ r0, er := C.nanosleep(C.uintptr_t(uintptr(unsafe.Pointer(time))), C.uintptr_t(uintptr(unsafe.Pointer(leftover))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Open(path string, mode int, perm uint32) (fd int, err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.open64(C.uintptr_t(_p0), C.int(mode), C.uint(perm))
-+ fd = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.openat(C.int(dirfd), C.uintptr_t(_p0), C.int(flags), C.uint(mode))
-+ fd = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func read(fd int, p []byte) (n int, err error) {
-+ var _p0 *byte
-+ if len(p) > 0 {
-+ _p0 = &p[0]
-+ }
-+ var _p1 int
-+ _p1 = len(p)
-+ r0, er := C.read(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Readlink(path string, buf []byte) (n int, err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ var _p1 *byte
-+ if len(buf) > 0 {
-+ _p1 = &buf[0]
-+ }
-+ var _p2 int
-+ _p2 = len(buf)
-+ r0, er := C.readlink(C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(_p1))), C.size_t(_p2))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(oldpath)))
-+ _p1 := uintptr(unsafe.Pointer(C.CString(newpath)))
-+ r0, er := C.renameat(C.int(olddirfd), C.uintptr_t(_p0), C.int(newdirfd), C.uintptr_t(_p1))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setdomainname(p []byte) (err error) {
-+ var _p0 *byte
-+ if len(p) > 0 {
-+ _p0 = &p[0]
-+ }
-+ var _p1 int
-+ _p1 = len(p)
-+ r0, er := C.setdomainname(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Sethostname(p []byte) (err error) {
-+ var _p0 *byte
-+ if len(p) > 0 {
-+ _p0 = &p[0]
-+ }
-+ var _p1 int
-+ _p1 = len(p)
-+ r0, er := C.sethostname(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setpgid(pid int, pgid int) (err error) {
-+ r0, er := C.setpgid(C.int(pid), C.int(pgid))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setsid() (pid int, err error) {
-+ r0, er := C.setsid()
-+ pid = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Settimeofday(tv *Timeval) (err error) {
-+ r0, er := C.settimeofday(C.uintptr_t(uintptr(unsafe.Pointer(tv))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setuid(uid int) (err error) {
-+ r0, er := C.setuid(C.int(uid))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setgid(uid int) (err error) {
-+ r0, er := C.setgid(C.int(uid))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setpriority(which int, who int, prio int) (err error) {
-+ r0, er := C.setpriority(C.int(which), C.int(who), C.int(prio))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.statx(C.int(dirfd), C.uintptr_t(_p0), C.int(flags), C.int(mask), C.uintptr_t(uintptr(unsafe.Pointer(stat))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Sync() {
-+ C.sync()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Times(tms *Tms) (ticks uintptr, err error) {
-+ r0, er := C.times(C.uintptr_t(uintptr(unsafe.Pointer(tms))))
-+ ticks = uintptr(r0)
-+ if uintptr(r0) == ^uintptr(0) && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Umask(mask int) (oldmask int) {
-+ r0, _ := C.umask(C.int(mask))
-+ oldmask = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Uname(buf *Utsname) (err error) {
-+ r0, er := C.uname(C.uintptr_t(uintptr(unsafe.Pointer(buf))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Unlink(path string) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.unlink(C.uintptr_t(_p0))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Unlinkat(dirfd int, path string, flags int) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.unlinkat(C.int(dirfd), C.uintptr_t(_p0), C.int(flags))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ r0, er := C.ustat(C.int(dev), C.uintptr_t(uintptr(unsafe.Pointer(ubuf))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func write(fd int, p []byte) (n int, err error) {
-+ var _p0 *byte
-+ if len(p) > 0 {
-+ _p0 = &p[0]
-+ }
-+ var _p1 int
-+ _p1 = len(p)
-+ r0, er := C.write(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func readlen(fd int, p *byte, np int) (n int, err error) {
-+ r0, er := C.read(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(p))), C.size_t(np))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func writelen(fd int, p *byte, np int) (n int, err error) {
-+ r0, er := C.write(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(p))), C.size_t(np))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Dup2(oldfd int, newfd int) (err error) {
-+ r0, er := C.dup2(C.int(oldfd), C.int(newfd))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ r0, er := C.posix_fadvise64(C.int(fd), C.longlong(offset), C.longlong(length), C.int(advice))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fchown(fd int, uid int, gid int) (err error) {
-+ r0, er := C.fchown(C.int(fd), C.int(uid), C.int(gid))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstat(fd int, stat *Stat_t) (err error) {
-+ r0, er := C.fstat(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(stat))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.fstatat(C.int(dirfd), C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(stat))), C.int(flags))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatfs(fd int, buf *Statfs_t) (err error) {
-+ r0, er := C.fstatfs(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(buf))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Ftruncate(fd int, length int64) (err error) {
-+ r0, er := C.ftruncate(C.int(fd), C.longlong(length))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getegid() (egid int) {
-+ r0, _ := C.getegid()
-+ egid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Geteuid() (euid int) {
-+ r0, _ := C.geteuid()
-+ euid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getgid() (gid int) {
-+ r0, _ := C.getgid()
-+ gid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getuid() (uid int) {
-+ r0, _ := C.getuid()
-+ uid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Lchown(path string, uid int, gid int) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.lchown(C.uintptr_t(_p0), C.int(uid), C.int(gid))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Listen(s int, n int) (err error) {
-+ r0, er := C.listen(C.int(s), C.int(n))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func lstat(path string, stat *Stat_t) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.lstat(C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(stat))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Pause() (err error) {
-+ r0, er := C.pause()
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Pread(fd int, p []byte, offset int64) (n int, err error) {
-+ var _p0 *byte
-+ if len(p) > 0 {
-+ _p0 = &p[0]
-+ }
-+ var _p1 int
-+ _p1 = len(p)
-+ r0, er := C.pread64(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.longlong(offset))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-+ var _p0 *byte
-+ if len(p) > 0 {
-+ _p0 = &p[0]
-+ }
-+ var _p1 int
-+ _p1 = len(p)
-+ r0, er := C.pwrite64(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.longlong(offset))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, er := C.c_select(C.int(nfd), C.uintptr_t(uintptr(unsafe.Pointer(r))), C.uintptr_t(uintptr(unsafe.Pointer(w))), C.uintptr_t(uintptr(unsafe.Pointer(e))), C.uintptr_t(uintptr(unsafe.Pointer(timeout))))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-+ r0, er := C.pselect(C.int(nfd), C.uintptr_t(uintptr(unsafe.Pointer(r))), C.uintptr_t(uintptr(unsafe.Pointer(w))), C.uintptr_t(uintptr(unsafe.Pointer(e))), C.uintptr_t(uintptr(unsafe.Pointer(timeout))), C.uintptr_t(uintptr(unsafe.Pointer(sigmask))))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setregid(rgid int, egid int) (err error) {
-+ r0, er := C.setregid(C.int(rgid), C.int(egid))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setreuid(ruid int, euid int) (err error) {
-+ r0, er := C.setreuid(C.int(ruid), C.int(euid))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Shutdown(fd int, how int) (err error) {
-+ r0, er := C.shutdown(C.int(fd), C.int(how))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) {
-+ r0, er := C.splice(C.int(rfd), C.uintptr_t(uintptr(unsafe.Pointer(roff))), C.int(wfd), C.uintptr_t(uintptr(unsafe.Pointer(woff))), C.int(len), C.int(flags))
-+ n = int64(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func stat(path string, statptr *Stat_t) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.stat(C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(statptr))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Statfs(path string, buf *Statfs_t) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.statfs(C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(buf))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Truncate(path string, length int64) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.truncate(C.uintptr_t(_p0), C.longlong(length))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-+ r0, er := C.bind(C.int(s), C.uintptr_t(uintptr(addr)), C.uintptr_t(uintptr(addrlen)))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-+ r0, er := C.connect(C.int(s), C.uintptr_t(uintptr(addr)), C.uintptr_t(uintptr(addrlen)))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getgroups(n int, list *_Gid_t) (nn int, err error) {
-+ r0, er := C.getgroups(C.int(n), C.uintptr_t(uintptr(unsafe.Pointer(list))))
-+ nn = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setgroups(n int, list *_Gid_t) (err error) {
-+ r0, er := C.setgroups(C.int(n), C.uintptr_t(uintptr(unsafe.Pointer(list))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
-+ r0, er := C.getsockopt(C.int(s), C.int(level), C.int(name), C.uintptr_t(uintptr(val)), C.uintptr_t(uintptr(unsafe.Pointer(vallen))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
-+ r0, er := C.setsockopt(C.int(s), C.int(level), C.int(name), C.uintptr_t(uintptr(val)), C.uintptr_t(vallen))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func socket(domain int, typ int, proto int) (fd int, err error) {
-+ r0, er := C.socket(C.int(domain), C.int(typ), C.int(proto))
-+ fd = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
-+ r0, er := C.socketpair(C.int(domain), C.int(typ), C.int(proto), C.uintptr_t(uintptr(unsafe.Pointer(fd))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-+ r0, er := C.getpeername(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(rsa))), C.uintptr_t(uintptr(unsafe.Pointer(addrlen))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-+ r0, er := C.getsockname(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(rsa))), C.uintptr_t(uintptr(unsafe.Pointer(addrlen))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
-+ var _p0 *byte
-+ if len(p) > 0 {
-+ _p0 = &p[0]
-+ }
-+ var _p1 int
-+ _p1 = len(p)
-+ r0, er := C.recvfrom(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.int(flags), C.uintptr_t(uintptr(unsafe.Pointer(from))), C.uintptr_t(uintptr(unsafe.Pointer(fromlen))))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
-+ var _p0 *byte
-+ if len(buf) > 0 {
-+ _p0 = &buf[0]
-+ }
-+ var _p1 int
-+ _p1 = len(buf)
-+ r0, er := C.sendto(C.int(s), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.int(flags), C.uintptr_t(uintptr(to)), C.uintptr_t(uintptr(addrlen)))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-+ r0, er := C.nrecvmsg(C.int(s), C.uintptr_t(uintptr(unsafe.Pointer(msg))), C.int(flags))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-+ r0, er := C.nsendmsg(C.int(s), C.uintptr_t(uintptr(unsafe.Pointer(msg))), C.int(flags))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func munmap(addr uintptr, length uintptr) (err error) {
-+ r0, er := C.munmap(C.uintptr_t(addr), C.uintptr_t(length))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Madvise(b []byte, advice int) (err error) {
-+ var _p0 *byte
-+ if len(b) > 0 {
-+ _p0 = &b[0]
-+ }
-+ var _p1 int
-+ _p1 = len(b)
-+ r0, er := C.madvise(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.int(advice))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Mprotect(b []byte, prot int) (err error) {
-+ var _p0 *byte
-+ if len(b) > 0 {
-+ _p0 = &b[0]
-+ }
-+ var _p1 int
-+ _p1 = len(b)
-+ r0, er := C.mprotect(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.int(prot))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Mlock(b []byte) (err error) {
-+ var _p0 *byte
-+ if len(b) > 0 {
-+ _p0 = &b[0]
-+ }
-+ var _p1 int
-+ _p1 = len(b)
-+ r0, er := C.mlock(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Mlockall(flags int) (err error) {
-+ r0, er := C.mlockall(C.int(flags))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Msync(b []byte, flags int) (err error) {
-+ var _p0 *byte
-+ if len(b) > 0 {
-+ _p0 = &b[0]
-+ }
-+ var _p1 int
-+ _p1 = len(b)
-+ r0, er := C.msync(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.int(flags))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Munlock(b []byte) (err error) {
-+ var _p0 *byte
-+ if len(b) > 0 {
-+ _p0 = &b[0]
-+ }
-+ var _p1 int
-+ _p1 = len(b)
-+ r0, er := C.munlock(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Munlockall() (err error) {
-+ r0, er := C.munlockall()
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func pipe(p *[2]_C_int) (err error) {
-+ r0, er := C.pipe(C.uintptr_t(uintptr(unsafe.Pointer(p))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, er := C.poll(C.uintptr_t(uintptr(unsafe.Pointer(fds))), C.int(nfds), C.int(timeout))
-+ n = int(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func gettimeofday(tv *Timeval, tzp *Timezone) (err error) {
-+ r0, er := C.gettimeofday(C.uintptr_t(uintptr(unsafe.Pointer(tv))), C.uintptr_t(uintptr(unsafe.Pointer(tzp))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Time(t *Time_t) (tt Time_t, err error) {
-+ r0, er := C.time(C.uintptr_t(uintptr(unsafe.Pointer(t))))
-+ tt = Time_t(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Utime(path string, buf *Utimbuf) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
-+ r0, er := C.utime(C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(buf))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getsystemcfg(label int) (n uint64) {
-+ r0, _ := C.getsystemcfg(C.int(label))
-+ n = uint64(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func umount(target string) (err error) {
-+ _p0 := uintptr(unsafe.Pointer(C.CString(target)))
-+ r0, er := C.umount(C.uintptr_t(_p0))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getrlimit(resource int, rlim *Rlimit) (err error) {
-+ r0, er := C.getrlimit64(C.int(resource), C.uintptr_t(uintptr(unsafe.Pointer(rlim))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setrlimit(resource int, rlim *Rlimit) (err error) {
-+ r0, er := C.setrlimit64(C.int(resource), C.uintptr_t(uintptr(unsafe.Pointer(rlim))))
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Seek(fd int, offset int64, whence int) (off int64, err error) {
-+ r0, er := C.lseek64(C.int(fd), C.longlong(offset), C.int(whence))
-+ off = int64(r0)
-+ if r0 == -1 && er != nil {
-+ err = er
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) {
-+ r0, er := C.mmap(C.uintptr_t(addr), C.uintptr_t(length), C.int(prot), C.int(flags), C.int(fd), C.longlong(offset))
-+ xaddr = uintptr(r0)
-+ if uintptr(r0) == ^uintptr(0) && er != nil {
-+ err = er
-+ }
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go
-similarity index 57%
-copy from vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
-copy to vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go
-index 7b6c2c87..664b293b 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go
-@@ -1,22 +1,23 @@
--// mksyscall.pl -netbsd -tags netbsd,amd64 syscall_bsd.go syscall_netbsd.go syscall_netbsd_amd64.go
-+// go run mksyscall_aix_ppc64.go -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build netbsd,amd64
-+// +build aix,ppc64
-
- package unix
-
- import (
-- "syscall"
- "unsafe"
- )
-
--var _ syscall.Errno
--
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
-- n = int(r0)
-+func utimes(path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, e1 := callutimes(uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -25,8 +26,13 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func setgroups(ngid int, gid *_Gid_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
-+func utimensat(dirfd int, path string, times *[2]Timespec, flag int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, e1 := callutimensat(dirfd, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), flag)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -35,9 +41,12 @@ func setgroups(ngid int, gid *_Gid_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-- wpid = int(r0)
-+func getcwd(buf []byte) (err error) {
-+ var _p0 *byte
-+ if len(buf) > 0 {
-+ _p0 = &buf[0]
-+ }
-+ _, e1 := callgetcwd(uintptr(unsafe.Pointer(_p0)), len(buf))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -47,7 +56,7 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ r0, e1 := callaccept(s, uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -57,8 +66,13 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen))
-+func getdirent(fd int, buf []byte) (n int, err error) {
-+ var _p0 *byte
-+ if len(buf) > 0 {
-+ _p0 = &buf[0]
-+ }
-+ r0, e1 := callgetdirent(fd, uintptr(unsafe.Pointer(_p0)), len(buf))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -67,8 +81,9 @@ func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen))
-+func wait4(pid Pid_t, status *_C_int, options int, rusage *Rusage) (wpid Pid_t, err error) {
-+ r0, e1 := callwait4(int(pid), uintptr(unsafe.Pointer(status)), options, uintptr(unsafe.Pointer(rusage)))
-+ wpid = Pid_t(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -77,9 +92,8 @@ func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func socket(domain int, typ int, proto int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto))
-- fd = int(r0)
-+func ioctl(fd int, req uint, arg uintptr) (err error) {
-+ _, e1 := callioctl(fd, int(req), arg)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -88,8 +102,9 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
-- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
-+func FcntlInt(fd uintptr, cmd int, arg int) (r int, err error) {
-+ r0, e1 := callfcntl(fd, cmd, uintptr(arg))
-+ r = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -98,8 +113,8 @@ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
-+func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) (err error) {
-+ _, e1 := callfcntl(fd, cmd, uintptr(unsafe.Pointer(lk)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -108,8 +123,9 @@ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr)
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+func fcntl(fd int, cmd int, arg int) (val int, err error) {
-+ r0, e1 := callfcntl(uintptr(fd), cmd, uintptr(arg))
-+ val = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -118,8 +134,13 @@ func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+func Acct(path string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, e1 := callacct(uintptr(unsafe.Pointer(_p0)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -128,8 +149,13 @@ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Shutdown(s int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0)
-+func Chdir(path string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, e1 := callchdir(uintptr(unsafe.Pointer(_p0)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -138,8 +164,13 @@ func Shutdown(s int, how int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
-- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
-+func Chroot(path string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, e1 := callchroot(uintptr(unsafe.Pointer(_p0)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -148,15 +179,8 @@ func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
-- n = int(r0)
-+func Close(fd int) (err error) {
-+ _, e1 := callclose(fd)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -165,14 +189,9 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
-+func Dup(oldfd int) (fd int, err error) {
-+ r0, e1 := calldup(oldfd)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -181,9 +200,20 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
-- n = int(r0)
-+func Exit(code int) {
-+ callexit(code)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, e1 := callfaccessat(dirfd, uintptr(unsafe.Pointer(_p0)), mode, flags)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -192,9 +222,8 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
-- n = int(r0)
-+func Fchdir(fd int) (err error) {
-+ _, e1 := callfchdir(fd)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -203,9 +232,8 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
-- n = int(r0)
-+func Fchmod(fd int, mode uint32) (err error) {
-+ _, e1 := callfchmod(fd, mode)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -214,14 +242,13 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-+func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ _, e1 := callfchmodat(dirfd, uintptr(unsafe.Pointer(_p0)), mode, flags)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -230,13 +257,13 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr)
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func utimes(path string, timeval *[2]Timeval) (err error) {
-+func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
-+ _, e1 := callfchownat(dirfd, uintptr(unsafe.Pointer(_p0)), uid, gid, flags)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -245,8 +272,8 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func futimes(fd int, timeval *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
-+func Fdatasync(fd int) (err error) {
-+ _, e1 := callfdatasync(fd)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -255,9 +282,8 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func Fsync(fd int) (err error) {
-+ _, e1 := callfsync(fd)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -266,14 +292,9 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Madvise(b []byte, behav int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav))
-+func Getpgid(pid int) (pgid int, err error) {
-+ r0, e1 := callgetpgid(pid)
-+ pgid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -282,56 +303,33 @@ func Madvise(b []byte, behav int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-+func Getpgrp() (pid int) {
-+ r0, _ := callgetpgrp()
-+ pid = int(r0)
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-+func Getpid() (pid int) {
-+ r0, _ := callgetpid()
-+ pid = int(r0)
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mprotect(b []byte, prot int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-+func Getppid() (ppid int) {
-+ r0, _ := callgetppid()
-+ ppid = int(r0)
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Msync(b []byte, flags int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-+func Getpriority(which int, who int) (prio int, err error) {
-+ r0, e1 := callgetpriority(which, who)
-+ prio = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -340,14 +338,8 @@ func Msync(b []byte, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Munlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-+func Getrusage(who int, rusage *Rusage) (err error) {
-+ _, e1 := callgetrusage(who, uintptr(unsafe.Pointer(rusage)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -356,8 +348,9 @@ func Munlock(b []byte) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-+func Getsid(pid int) (sid int, err error) {
-+ r0, e1 := callgetsid(pid)
-+ sid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,10 +359,8 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe() (fd1 int, fd2 int, err error) {
-- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
-- fd1 = int(r0)
-- fd2 = int(r1)
-+func Kill(pid int, sig Signal) (err error) {
-+ _, e1 := callkill(pid, int(sig))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -378,14 +369,12 @@ func pipe() (fd1 int, fd2 int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func getdents(fd int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-+func Klogctl(typ int, buf []byte) (n int, err error) {
-+ var _p0 *byte
- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-+ _p0 = &buf[0]
- }
-- r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-+ r0, e1 := callsyslog(typ, uintptr(unsafe.Pointer(_p0)), len(buf))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -395,13 +384,13 @@ func getdents(fd int, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Access(path string, mode uint32) (err error) {
-+func Mkdir(dirfd int, path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, e1 := callmkdir(dirfd, uintptr(unsafe.Pointer(_p0)), mode)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -410,8 +399,13 @@ func Access(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
-+func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, e1 := callmkdirat(dirfd, uintptr(unsafe.Pointer(_p0)), mode)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -420,13 +414,13 @@ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Chdir(path string) (err error) {
-+func Mkfifo(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, e1 := callmkfifo(uintptr(unsafe.Pointer(_p0)), mode)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -435,13 +429,13 @@ func Chdir(path string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Chflags(path string, flags int) (err error) {
-+func Mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ _, e1 := callmknod(uintptr(unsafe.Pointer(_p0)), mode, dev)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -450,13 +444,13 @@ func Chflags(path string, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Chmod(path string, mode uint32) (err error) {
-+func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, e1 := callmknodat(dirfd, uintptr(unsafe.Pointer(_p0)), mode, dev)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -465,13 +459,8 @@ func Chmod(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Chown(path string, uid int, gid int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
-+func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-+ _, e1 := callnanosleep(uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -480,13 +469,14 @@ func Chown(path string, uid int, gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Chroot(path string) (err error) {
-+func Open(path string, mode int, perm uint32) (fd int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ r0, e1 := callopen64(uintptr(unsafe.Pointer(_p0)), mode, perm)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -495,8 +485,14 @@ func Chroot(path string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-+func Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, e1 := callopenat(dirfd, uintptr(unsafe.Pointer(_p0)), flags, mode)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -505,9 +501,13 @@ func Close(fd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Dup(fd int) (nfd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0)
-- nfd = int(r0)
-+func read(fd int, p []byte) (n int, err error) {
-+ var _p0 *byte
-+ if len(p) > 0 {
-+ _p0 = &p[0]
-+ }
-+ r0, e1 := callread(fd, uintptr(unsafe.Pointer(_p0)), len(p))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -516,8 +516,18 @@ func Dup(fd int) (nfd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Dup2(from int, to int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0)
-+func Readlink(path string, buf []byte) (n int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ if len(buf) > 0 {
-+ _p1 = &buf[0]
-+ }
-+ r0, e1 := callreadlink(uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), len(buf))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -526,15 +536,32 @@ func Dup2(from int, to int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Exit(code int) {
-- Syscall(SYS_EXIT, uintptr(code), 0, 0)
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, e1 := callrenameat(olddirfd, uintptr(unsafe.Pointer(_p0)), newdirfd, uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-+func Setdomainname(p []byte) (err error) {
-+ var _p0 *byte
-+ if len(p) > 0 {
-+ _p0 = &p[0]
-+ }
-+ _, e1 := callsetdomainname(uintptr(unsafe.Pointer(_p0)), len(p))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -543,8 +570,12 @@ func Fchdir(fd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fchflags(fd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0)
-+func Sethostname(p []byte) (err error) {
-+ var _p0 *byte
-+ if len(p) > 0 {
-+ _p0 = &p[0]
-+ }
-+ _, e1 := callsethostname(uintptr(unsafe.Pointer(_p0)), len(p))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -553,8 +584,8 @@ func Fchflags(fd int, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-+func Setpgid(pid int, pgid int) (err error) {
-+ _, e1 := callsetpgid(pid, pgid)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -563,8 +594,9 @@ func Fchmod(fd int, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fchown(fd int, uid int, gid int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
-+func Setsid() (pid int, err error) {
-+ r0, e1 := callsetsid()
-+ pid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -573,8 +605,8 @@ func Fchown(fd int, uid int, gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-+func Settimeofday(tv *Timeval) (err error) {
-+ _, e1 := callsettimeofday(uintptr(unsafe.Pointer(tv)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -583,9 +615,8 @@ func Flock(fd int, how int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fpathconf(fd int, name int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0)
-- val = int(r0)
-+func Setuid(uid int) (err error) {
-+ _, e1 := callsetuid(uid)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -594,8 +625,8 @@ func Fpathconf(fd int, name int) (val int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+func Setgid(uid int) (err error) {
-+ _, e1 := callsetgid(uid)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -604,8 +635,8 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-+func Setpriority(which int, who int, prio int) (err error) {
-+ _, e1 := callsetpriority(which, who, prio)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -614,8 +645,13 @@ func Fsync(fd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Ftruncate(fd int, length int64) (err error) {
-- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), 0, uintptr(length))
-+func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, e1 := callstatx(dirfd, uintptr(unsafe.Pointer(_p0)), flags, mask, uintptr(unsafe.Pointer(stat)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -624,33 +660,34 @@ func Ftruncate(fd int, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-- egid = int(r0)
-+func Sync() {
-+ callsync()
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Geteuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-- uid = int(r0)
-+func Times(tms *Tms) (ticks uintptr, err error) {
-+ r0, e1 := calltimes(uintptr(unsafe.Pointer(tms)))
-+ ticks = uintptr(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-- gid = int(r0)
-+func Umask(mask int) (oldmask int) {
-+ r0, _ := callumask(mask)
-+ oldmask = int(r0)
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-- pgid = int(r0)
-+func Uname(buf *Utsname) (err error) {
-+ _, e1 := calluname(uintptr(unsafe.Pointer(buf)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -659,33 +696,53 @@ func Getpgid(pid int) (pgid int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getpgrp() (pgrp int) {
-- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0)
-- pgrp = int(r0)
-+func Unlink(path string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, e1 := callunlink(uintptr(unsafe.Pointer(_p0)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-- pid = int(r0)
-+func Unlinkat(dirfd int, path string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, e1 := callunlinkat(dirfd, uintptr(unsafe.Pointer(_p0)), flags)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-- ppid = int(r0)
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ _, e1 := callustat(dev, uintptr(unsafe.Pointer(ubuf)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-- prio = int(r0)
-+func write(fd int, p []byte) (n int, err error) {
-+ var _p0 *byte
-+ if len(p) > 0 {
-+ _p0 = &p[0]
-+ }
-+ r0, e1 := callwrite(fd, uintptr(unsafe.Pointer(_p0)), len(p))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -694,8 +751,9 @@ func Getpriority(which int, who int) (prio int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getrlimit(which int, lim *Rlimit) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
-+func readlen(fd int, p *byte, np int) (n int, err error) {
-+ r0, e1 := callread(fd, uintptr(unsafe.Pointer(p)), np)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -704,8 +762,9 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-+func writelen(fd int, p *byte, np int) (n int, err error) {
-+ r0, e1 := callwrite(fd, uintptr(unsafe.Pointer(p)), np)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -714,9 +773,8 @@ func Getrusage(who int, rusage *Rusage) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-- sid = int(r0)
-+func Dup2(oldfd int, newfd int) (err error) {
-+ _, e1 := calldup2(oldfd, newfd)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -725,8 +783,8 @@ func Getsid(pid int) (sid int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Gettimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, e1 := callposix_fadvise64(fd, offset, length, advice)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -735,24 +793,33 @@ func Gettimeofday(tv *Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-- uid = int(r0)
-+func Fchown(fd int, uid int, gid int) (err error) {
-+ _, e1 := callfchown(fd, uid, gid)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Issetugid() (tainted bool) {
-- r0, _, _ := Syscall(SYS_ISSETUGID, 0, 0, 0)
-- tainted = bool(r0 != 0)
-+func fstat(fd int, stat *Stat_t) (err error) {
-+ _, e1 := callfstat(fd, uintptr(unsafe.Pointer(stat)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Kill(pid int, signum syscall.Signal) (err error) {
-- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), 0)
-+func fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, e1 := callfstatat(dirfd, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), flags)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -761,9 +828,8 @@ func Kill(pid int, signum syscall.Signal) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Kqueue() (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0)
-- fd = int(r0)
-+func Fstatfs(fd int, buf *Statfs_t) (err error) {
-+ _, e1 := callfstatfs(fd, uintptr(unsafe.Pointer(buf)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -772,13 +838,8 @@ func Kqueue() (fd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Lchown(path string, uid int, gid int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
-+func Ftruncate(fd int, length int64) (err error) {
-+ _, e1 := callftruncate(fd, length)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -787,18 +848,45 @@ func Lchown(path string, uid int, gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Link(path string, link string) (err error) {
-+func Getegid() (egid int) {
-+ r0, _ := callgetegid()
-+ egid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Geteuid() (euid int) {
-+ r0, _ := callgeteuid()
-+ euid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getgid() (gid int) {
-+ r0, _ := callgetgid()
-+ gid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getuid() (uid int) {
-+ r0, _ := callgetuid()
-+ uid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Lchown(path string, uid int, gid int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(link)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, e1 := calllchown(uintptr(unsafe.Pointer(_p0)), uid, gid)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -807,8 +895,8 @@ func Link(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Listen(s int, backlog int) (err error) {
-- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
-+func Listen(s int, n int) (err error) {
-+ _, e1 := calllisten(s, n)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -817,13 +905,13 @@ func Listen(s int, backlog int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Lstat(path string, stat *Stat_t) (err error) {
-+func lstat(path string, stat *Stat_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ _, e1 := calllstat(uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -832,13 +920,8 @@ func Lstat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mkdir(path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+func Pause() (err error) {
-+ _, e1 := callpause()
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -847,13 +930,13 @@ func Mkdir(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mkfifo(path string, mode uint32) (err error) {
-+func Pread(fd int, p []byte, offset int64) (n int, err error) {
- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-+ if len(p) > 0 {
-+ _p0 = &p[0]
- }
-- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ r0, e1 := callpread64(fd, uintptr(unsafe.Pointer(_p0)), len(p), offset)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -862,13 +945,13 @@ func Mkfifo(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mknod(path string, mode uint32, dev int) (err error) {
-+func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-+ if len(p) > 0 {
-+ _p0 = &p[0]
- }
-- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
-+ r0, e1 := callpwrite64(fd, uintptr(unsafe.Pointer(_p0)), len(p), offset)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -877,8 +960,9 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, e1 := callselect(nfd, uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -887,14 +971,9 @@ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Open(path string, mode int, perm uint32) (fd int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
-- fd = int(r0)
-+func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-+ r0, e1 := callpselect(nfd, uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -903,14 +982,8 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Pathconf(path string, name int) (val int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
-- val = int(r0)
-+func Setregid(rgid int, egid int) (err error) {
-+ _, e1 := callsetregid(rgid, egid)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -919,15 +992,8 @@ func Pathconf(path string, name int) (val int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Pread(fd int, p []byte, offset int64) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0)
-- n = int(r0)
-+func Setreuid(ruid int, euid int) (err error) {
-+ _, e1 := callsetreuid(ruid, euid)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -936,15 +1002,8 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0)
-- n = int(r0)
-+func Shutdown(fd int, how int) (err error) {
-+ _, e1 := callshutdown(fd, how)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -953,15 +1012,9 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func read(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-+func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) {
-+ r0, e1 := callsplice(rfd, uintptr(unsafe.Pointer(roff)), wfd, uintptr(unsafe.Pointer(woff)), len, flags)
-+ n = int64(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -970,20 +1023,13 @@ func read(fd int, p []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Readlink(path string, buf []byte) (n int, err error) {
-+func stat(path string, statptr *Stat_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- var _p1 unsafe.Pointer
-- if len(buf) > 0 {
-- _p1 = unsafe.Pointer(&buf[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
-- n = int(r0)
-+ _, e1 := callstat(uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(statptr)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -992,18 +1038,13 @@ func Readlink(path string, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Rename(from string, to string) (err error) {
-+func Statfs(path string, buf *Statfs_t) (err error) {
- var _p0 *byte
-- _p0, err = BytePtrFromString(from)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(to)
-+ _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, e1 := callstatfs(uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1012,13 +1053,13 @@ func Rename(from string, to string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Revoke(path string) (err error) {
-+func Truncate(path string, length int64) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, e1 := calltruncate(uintptr(unsafe.Pointer(_p0)), length)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1027,13 +1068,8 @@ func Revoke(path string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Rmdir(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-+ _, e1 := callbind(s, uintptr(addr), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1042,9 +1078,8 @@ func Rmdir(path string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-- r0, _, e1 := Syscall6(SYS_LSEEK, uintptr(fd), 0, uintptr(offset), uintptr(whence), 0, 0)
-- newoffset = int64(r0)
-+func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-+ _, e1 := callconnect(s, uintptr(addr), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1053,8 +1088,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func getgroups(n int, list *_Gid_t) (nn int, err error) {
-+ r0, e1 := callgetgroups(n, uintptr(unsafe.Pointer(list)))
-+ nn = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1063,8 +1099,8 @@ func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setegid(egid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETEGID, uintptr(egid), 0, 0)
-+func setgroups(n int, list *_Gid_t) (err error) {
-+ _, e1 := callsetgroups(n, uintptr(unsafe.Pointer(list)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1073,8 +1109,8 @@ func Setegid(egid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Seteuid(euid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0)
-+func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
-+ _, e1 := callgetsockopt(s, level, name, uintptr(val), uintptr(unsafe.Pointer(vallen)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1083,8 +1119,8 @@ func Seteuid(euid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setgid(gid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0)
-+func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
-+ _, e1 := callsetsockopt(s, level, name, uintptr(val), vallen)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1093,8 +1129,9 @@ func Setgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-+func socket(domain int, typ int, proto int) (fd int, err error) {
-+ r0, e1 := callsocket(domain, typ, proto)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1103,8 +1140,8 @@ func Setpgid(pid int, pgid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-+func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
-+ _, e1 := callsocketpair(domain, typ, proto, uintptr(unsafe.Pointer(fd)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1113,8 +1150,8 @@ func Setpriority(which int, who int, prio int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setregid(rgid int, egid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
-+func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-+ _, e1 := callgetpeername(fd, uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1123,8 +1160,8 @@ func Setregid(rgid int, egid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setreuid(ruid int, euid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
-+func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-+ _, e1 := callgetsockname(fd, uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1133,8 +1170,13 @@ func Setreuid(ruid int, euid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setrlimit(which int, lim *Rlimit) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
-+func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
-+ var _p0 *byte
-+ if len(p) > 0 {
-+ _p0 = &p[0]
-+ }
-+ r0, e1 := callrecvfrom(fd, uintptr(unsafe.Pointer(_p0)), len(p), flags, uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1143,9 +1185,12 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-- pid = int(r0)
-+func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
-+ var _p0 *byte
-+ if len(buf) > 0 {
-+ _p0 = &buf[0]
-+ }
-+ _, e1 := callsendto(s, uintptr(unsafe.Pointer(_p0)), len(buf), flags, uintptr(to), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1154,8 +1199,9 @@ func Setsid() (pid int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Settimeofday(tp *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
-+func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-+ r0, e1 := callnrecvmsg(s, uintptr(unsafe.Pointer(msg)), flags)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1164,8 +1210,9 @@ func Settimeofday(tp *Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setuid(uid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0)
-+func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-+ r0, e1 := callnsendmsg(s, uintptr(unsafe.Pointer(msg)), flags)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1174,13 +1221,8 @@ func Setuid(uid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+func munmap(addr uintptr, length uintptr) (err error) {
-+ _, e1 := callmunmap(addr, length)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1189,18 +1231,12 @@ func Stat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Symlink(path string, link string) (err error) {
-+func Madvise(b []byte, advice int) (err error) {
- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(link)
-- if err != nil {
-- return
-+ if len(b) > 0 {
-+ _p0 = &b[0]
- }
-- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, e1 := callmadvise(uintptr(unsafe.Pointer(_p0)), len(b), advice)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1209,8 +1245,12 @@ func Symlink(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Sync() (err error) {
-- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
-+func Mprotect(b []byte, prot int) (err error) {
-+ var _p0 *byte
-+ if len(b) > 0 {
-+ _p0 = &b[0]
-+ }
-+ _, e1 := callmprotect(uintptr(unsafe.Pointer(_p0)), len(b), prot)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1219,13 +1259,12 @@ func Sync() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Truncate(path string, length int64) (err error) {
-+func Mlock(b []byte) (err error) {
- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-+ if len(b) > 0 {
-+ _p0 = &b[0]
- }
-- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), 0, uintptr(length))
-+ _, e1 := callmlock(uintptr(unsafe.Pointer(_p0)), len(b))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1234,21 +1273,22 @@ func Truncate(path string, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Umask(newmask int) (oldmask int) {
-- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0)
-- oldmask = int(r0)
-+func Mlockall(flags int) (err error) {
-+ _, e1 := callmlockall(flags)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Unlink(path string) (err error) {
-+func Msync(b []byte, flags int) (err error) {
- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-+ if len(b) > 0 {
-+ _p0 = &b[0]
- }
-- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, e1 := callmsync(uintptr(unsafe.Pointer(_p0)), len(b), flags)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1257,13 +1297,12 @@ func Unlink(path string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Unmount(path string, flags int) (err error) {
-+func Munlock(b []byte) (err error) {
- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-+ if len(b) > 0 {
-+ _p0 = &b[0]
- }
-- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ _, e1 := callmunlock(uintptr(unsafe.Pointer(_p0)), len(b))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1272,15 +1311,8 @@ func Unmount(path string, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func write(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-+func Munlockall() (err error) {
-+ _, e1 := callmunlockall()
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1289,9 +1321,8 @@ func write(fd int, p []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
-- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), 0, uintptr(pos), 0, 0)
-- ret = uintptr(r0)
-+func pipe(p *[2]_C_int) (err error) {
-+ _, e1 := callpipe(uintptr(unsafe.Pointer(p)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1300,8 +1331,9 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, e1 := callpoll(uintptr(unsafe.Pointer(fds)), nfds, timeout)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1310,9 +1342,8 @@ func munmap(addr uintptr, length uintptr) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
-- n = int(r0)
-+func gettimeofday(tv *Timeval, tzp *Timezone) (err error) {
-+ _, e1 := callgettimeofday(uintptr(unsafe.Pointer(tv)), uintptr(unsafe.Pointer(tzp)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1321,9 +1352,9 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
-- n = int(r0)
-+func Time(t *Time_t) (tt Time_t, err error) {
-+ r0, e1 := calltime(uintptr(unsafe.Pointer(t)))
-+ tt = Time_t(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1332,13 +1363,78 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-+func Utime(path string, buf *Utimbuf) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
-+ _, e1 := callutime(uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getsystemcfg(label int) (n uint64) {
-+ r0, _ := callgetsystemcfg(label)
-+ n = uint64(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func umount(target string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(target)
-+ if err != nil {
-+ return
-+ }
-+ _, e1 := callumount(uintptr(unsafe.Pointer(_p0)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getrlimit(resource int, rlim *Rlimit) (err error) {
-+ _, e1 := callgetrlimit(resource, uintptr(unsafe.Pointer(rlim)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setrlimit(resource int, rlim *Rlimit) (err error) {
-+ _, e1 := callsetrlimit(resource, uintptr(unsafe.Pointer(rlim)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Seek(fd int, offset int64, whence int) (off int64, err error) {
-+ r0, e1 := calllseek(fd, offset, whence)
-+ off = int64(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) {
-+ r0, e1 := callmmap64(addr, length, prot, flags, fd, offset)
-+ xaddr = uintptr(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go
-new file mode 100644
-index 00000000..4b3a8ad7
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go
-@@ -0,0 +1,1192 @@
-+// go run mksyscall_aix_ppc64.go -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build aix,ppc64
-+// +build !gccgo
-+
-+package unix
-+
-+import (
-+ "unsafe"
-+)
-+
-+//go:cgo_import_dynamic libc_utimes utimes "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_utimensat utimensat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getcwd getcwd "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_accept accept "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getdirent getdirent "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_wait4 wait4 "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_ioctl ioctl "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_fcntl fcntl "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_acct acct "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_chdir chdir "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_chroot chroot "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_close close "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_dup dup "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_exit exit "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_faccessat faccessat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_fchdir fchdir "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_fchmod fchmod "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_fchmodat fchmodat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_fchownat fchownat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_fdatasync fdatasync "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_fsync fsync "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getpgid getpgid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getpgrp getpgrp "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getpid getpid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getppid getppid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getpriority getpriority "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getrusage getrusage "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getsid getsid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_kill kill "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_syslog syslog "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_mkdir mkdir "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_mkdirat mkdirat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_mkfifo mkfifo "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_mknod mknod "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_mknodat mknodat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_nanosleep nanosleep "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_open64 open64 "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_openat openat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_read read "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_readlink readlink "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_renameat renameat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_setdomainname setdomainname "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_sethostname sethostname "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_setpgid setpgid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_setsid setsid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_settimeofday settimeofday "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_setuid setuid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_setgid setgid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_setpriority setpriority "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_statx statx "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_sync sync "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_times times "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_umask umask "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_uname uname "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_unlink unlink "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_unlinkat unlinkat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_ustat ustat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_write write "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_dup2 dup2 "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_posix_fadvise64 posix_fadvise64 "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_fchown fchown "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_fstat fstat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_fstatat fstatat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_fstatfs fstatfs "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_ftruncate ftruncate "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getegid getegid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_geteuid geteuid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getgid getgid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getuid getuid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_lchown lchown "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_listen listen "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_lstat lstat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_pause pause "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_pread64 pread64 "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_pwrite64 pwrite64 "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_select select "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_pselect pselect "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_setregid setregid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_setreuid setreuid "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_shutdown shutdown "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_splice splice "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_stat stat "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_statfs statfs "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_truncate truncate "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_bind bind "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_connect connect "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getgroups getgroups "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_setgroups setgroups "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getsockopt getsockopt "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_setsockopt setsockopt "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_socket socket "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_socketpair socketpair "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getpeername getpeername "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getsockname getsockname "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_recvfrom recvfrom "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_sendto sendto "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_nrecvmsg nrecvmsg "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_nsendmsg nsendmsg "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_munmap munmap "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_madvise madvise "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_mprotect mprotect "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_mlock mlock "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_mlockall mlockall "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_msync msync "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_munlock munlock "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_munlockall munlockall "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_pipe pipe "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_poll poll "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_gettimeofday gettimeofday "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_time time "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_utime utime "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getsystemcfg getsystemcfg "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_umount umount "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_getrlimit getrlimit "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_setrlimit setrlimit "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_lseek lseek "libc.a/shr_64.o"
-+//go:cgo_import_dynamic libc_mmap64 mmap64 "libc.a/shr_64.o"
-+
-+//go:linkname libc_utimes libc_utimes
-+//go:linkname libc_utimensat libc_utimensat
-+//go:linkname libc_getcwd libc_getcwd
-+//go:linkname libc_accept libc_accept
-+//go:linkname libc_getdirent libc_getdirent
-+//go:linkname libc_wait4 libc_wait4
-+//go:linkname libc_ioctl libc_ioctl
-+//go:linkname libc_fcntl libc_fcntl
-+//go:linkname libc_acct libc_acct
-+//go:linkname libc_chdir libc_chdir
-+//go:linkname libc_chroot libc_chroot
-+//go:linkname libc_close libc_close
-+//go:linkname libc_dup libc_dup
-+//go:linkname libc_exit libc_exit
-+//go:linkname libc_faccessat libc_faccessat
-+//go:linkname libc_fchdir libc_fchdir
-+//go:linkname libc_fchmod libc_fchmod
-+//go:linkname libc_fchmodat libc_fchmodat
-+//go:linkname libc_fchownat libc_fchownat
-+//go:linkname libc_fdatasync libc_fdatasync
-+//go:linkname libc_fsync libc_fsync
-+//go:linkname libc_getpgid libc_getpgid
-+//go:linkname libc_getpgrp libc_getpgrp
-+//go:linkname libc_getpid libc_getpid
-+//go:linkname libc_getppid libc_getppid
-+//go:linkname libc_getpriority libc_getpriority
-+//go:linkname libc_getrusage libc_getrusage
-+//go:linkname libc_getsid libc_getsid
-+//go:linkname libc_kill libc_kill
-+//go:linkname libc_syslog libc_syslog
-+//go:linkname libc_mkdir libc_mkdir
-+//go:linkname libc_mkdirat libc_mkdirat
-+//go:linkname libc_mkfifo libc_mkfifo
-+//go:linkname libc_mknod libc_mknod
-+//go:linkname libc_mknodat libc_mknodat
-+//go:linkname libc_nanosleep libc_nanosleep
-+//go:linkname libc_open64 libc_open64
-+//go:linkname libc_openat libc_openat
-+//go:linkname libc_read libc_read
-+//go:linkname libc_readlink libc_readlink
-+//go:linkname libc_renameat libc_renameat
-+//go:linkname libc_setdomainname libc_setdomainname
-+//go:linkname libc_sethostname libc_sethostname
-+//go:linkname libc_setpgid libc_setpgid
-+//go:linkname libc_setsid libc_setsid
-+//go:linkname libc_settimeofday libc_settimeofday
-+//go:linkname libc_setuid libc_setuid
-+//go:linkname libc_setgid libc_setgid
-+//go:linkname libc_setpriority libc_setpriority
-+//go:linkname libc_statx libc_statx
-+//go:linkname libc_sync libc_sync
-+//go:linkname libc_times libc_times
-+//go:linkname libc_umask libc_umask
-+//go:linkname libc_uname libc_uname
-+//go:linkname libc_unlink libc_unlink
-+//go:linkname libc_unlinkat libc_unlinkat
-+//go:linkname libc_ustat libc_ustat
-+//go:linkname libc_write libc_write
-+//go:linkname libc_dup2 libc_dup2
-+//go:linkname libc_posix_fadvise64 libc_posix_fadvise64
-+//go:linkname libc_fchown libc_fchown
-+//go:linkname libc_fstat libc_fstat
-+//go:linkname libc_fstatat libc_fstatat
-+//go:linkname libc_fstatfs libc_fstatfs
-+//go:linkname libc_ftruncate libc_ftruncate
-+//go:linkname libc_getegid libc_getegid
-+//go:linkname libc_geteuid libc_geteuid
-+//go:linkname libc_getgid libc_getgid
-+//go:linkname libc_getuid libc_getuid
-+//go:linkname libc_lchown libc_lchown
-+//go:linkname libc_listen libc_listen
-+//go:linkname libc_lstat libc_lstat
-+//go:linkname libc_pause libc_pause
-+//go:linkname libc_pread64 libc_pread64
-+//go:linkname libc_pwrite64 libc_pwrite64
-+//go:linkname libc_select libc_select
-+//go:linkname libc_pselect libc_pselect
-+//go:linkname libc_setregid libc_setregid
-+//go:linkname libc_setreuid libc_setreuid
-+//go:linkname libc_shutdown libc_shutdown
-+//go:linkname libc_splice libc_splice
-+//go:linkname libc_stat libc_stat
-+//go:linkname libc_statfs libc_statfs
-+//go:linkname libc_truncate libc_truncate
-+//go:linkname libc_bind libc_bind
-+//go:linkname libc_connect libc_connect
-+//go:linkname libc_getgroups libc_getgroups
-+//go:linkname libc_setgroups libc_setgroups
-+//go:linkname libc_getsockopt libc_getsockopt
-+//go:linkname libc_setsockopt libc_setsockopt
-+//go:linkname libc_socket libc_socket
-+//go:linkname libc_socketpair libc_socketpair
-+//go:linkname libc_getpeername libc_getpeername
-+//go:linkname libc_getsockname libc_getsockname
-+//go:linkname libc_recvfrom libc_recvfrom
-+//go:linkname libc_sendto libc_sendto
-+//go:linkname libc_nrecvmsg libc_nrecvmsg
-+//go:linkname libc_nsendmsg libc_nsendmsg
-+//go:linkname libc_munmap libc_munmap
-+//go:linkname libc_madvise libc_madvise
-+//go:linkname libc_mprotect libc_mprotect
-+//go:linkname libc_mlock libc_mlock
-+//go:linkname libc_mlockall libc_mlockall
-+//go:linkname libc_msync libc_msync
-+//go:linkname libc_munlock libc_munlock
-+//go:linkname libc_munlockall libc_munlockall
-+//go:linkname libc_pipe libc_pipe
-+//go:linkname libc_poll libc_poll
-+//go:linkname libc_gettimeofday libc_gettimeofday
-+//go:linkname libc_time libc_time
-+//go:linkname libc_utime libc_utime
-+//go:linkname libc_getsystemcfg libc_getsystemcfg
-+//go:linkname libc_umount libc_umount
-+//go:linkname libc_getrlimit libc_getrlimit
-+//go:linkname libc_setrlimit libc_setrlimit
-+//go:linkname libc_lseek libc_lseek
-+//go:linkname libc_mmap64 libc_mmap64
-+
-+type syscallFunc uintptr
-+
-+var (
-+ libc_utimes,
-+ libc_utimensat,
-+ libc_getcwd,
-+ libc_accept,
-+ libc_getdirent,
-+ libc_wait4,
-+ libc_ioctl,
-+ libc_fcntl,
-+ libc_acct,
-+ libc_chdir,
-+ libc_chroot,
-+ libc_close,
-+ libc_dup,
-+ libc_exit,
-+ libc_faccessat,
-+ libc_fchdir,
-+ libc_fchmod,
-+ libc_fchmodat,
-+ libc_fchownat,
-+ libc_fdatasync,
-+ libc_fsync,
-+ libc_getpgid,
-+ libc_getpgrp,
-+ libc_getpid,
-+ libc_getppid,
-+ libc_getpriority,
-+ libc_getrusage,
-+ libc_getsid,
-+ libc_kill,
-+ libc_syslog,
-+ libc_mkdir,
-+ libc_mkdirat,
-+ libc_mkfifo,
-+ libc_mknod,
-+ libc_mknodat,
-+ libc_nanosleep,
-+ libc_open64,
-+ libc_openat,
-+ libc_read,
-+ libc_readlink,
-+ libc_renameat,
-+ libc_setdomainname,
-+ libc_sethostname,
-+ libc_setpgid,
-+ libc_setsid,
-+ libc_settimeofday,
-+ libc_setuid,
-+ libc_setgid,
-+ libc_setpriority,
-+ libc_statx,
-+ libc_sync,
-+ libc_times,
-+ libc_umask,
-+ libc_uname,
-+ libc_unlink,
-+ libc_unlinkat,
-+ libc_ustat,
-+ libc_write,
-+ libc_dup2,
-+ libc_posix_fadvise64,
-+ libc_fchown,
-+ libc_fstat,
-+ libc_fstatat,
-+ libc_fstatfs,
-+ libc_ftruncate,
-+ libc_getegid,
-+ libc_geteuid,
-+ libc_getgid,
-+ libc_getuid,
-+ libc_lchown,
-+ libc_listen,
-+ libc_lstat,
-+ libc_pause,
-+ libc_pread64,
-+ libc_pwrite64,
-+ libc_select,
-+ libc_pselect,
-+ libc_setregid,
-+ libc_setreuid,
-+ libc_shutdown,
-+ libc_splice,
-+ libc_stat,
-+ libc_statfs,
-+ libc_truncate,
-+ libc_bind,
-+ libc_connect,
-+ libc_getgroups,
-+ libc_setgroups,
-+ libc_getsockopt,
-+ libc_setsockopt,
-+ libc_socket,
-+ libc_socketpair,
-+ libc_getpeername,
-+ libc_getsockname,
-+ libc_recvfrom,
-+ libc_sendto,
-+ libc_nrecvmsg,
-+ libc_nsendmsg,
-+ libc_munmap,
-+ libc_madvise,
-+ libc_mprotect,
-+ libc_mlock,
-+ libc_mlockall,
-+ libc_msync,
-+ libc_munlock,
-+ libc_munlockall,
-+ libc_pipe,
-+ libc_poll,
-+ libc_gettimeofday,
-+ libc_time,
-+ libc_utime,
-+ libc_getsystemcfg,
-+ libc_umount,
-+ libc_getrlimit,
-+ libc_setrlimit,
-+ libc_lseek,
-+ libc_mmap64 syscallFunc
-+)
-+
-+// Implemented in runtime/syscall_aix.go.
-+func rawSyscall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
-+func syscall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callutimes(_p0 uintptr, times uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_utimes)), 2, _p0, times, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callutimensat(dirfd int, _p0 uintptr, times uintptr, flag int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_utimensat)), 4, uintptr(dirfd), _p0, times, uintptr(flag), 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetcwd(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_getcwd)), 2, _p0, uintptr(_lenp0), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callaccept(s int, rsa uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_accept)), 3, uintptr(s), rsa, addrlen, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetdirent(fd int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_getdirent)), 3, uintptr(fd), _p0, uintptr(_lenp0), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callwait4(pid int, status uintptr, options int, rusage uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_wait4)), 4, uintptr(pid), status, uintptr(options), rusage, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callioctl(fd int, req int, arg uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_ioctl)), 3, uintptr(fd), uintptr(req), arg, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfcntl(fd uintptr, cmd int, arg uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fcntl)), 3, fd, uintptr(cmd), arg, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callacct(_p0 uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_acct)), 1, _p0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callchdir(_p0 uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_chdir)), 1, _p0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callchroot(_p0 uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_chroot)), 1, _p0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callclose(fd int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_close)), 1, uintptr(fd), 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calldup(oldfd int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_dup)), 1, uintptr(oldfd), 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callexit(code int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_exit)), 1, uintptr(code), 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfaccessat(dirfd int, _p0 uintptr, mode uint32, flags int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_faccessat)), 4, uintptr(dirfd), _p0, uintptr(mode), uintptr(flags), 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfchdir(fd int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fchdir)), 1, uintptr(fd), 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfchmod(fd int, mode uint32) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fchmod)), 2, uintptr(fd), uintptr(mode), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfchmodat(dirfd int, _p0 uintptr, mode uint32, flags int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fchmodat)), 4, uintptr(dirfd), _p0, uintptr(mode), uintptr(flags), 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfchownat(dirfd int, _p0 uintptr, uid int, gid int, flags int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fchownat)), 5, uintptr(dirfd), _p0, uintptr(uid), uintptr(gid), uintptr(flags), 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfdatasync(fd int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fdatasync)), 1, uintptr(fd), 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfsync(fd int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fsync)), 1, uintptr(fd), 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetpgid(pid int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getpgid)), 1, uintptr(pid), 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetpgrp() (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_getpgrp)), 0, 0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetpid() (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getpid)), 0, 0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetppid() (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getppid)), 0, 0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetpriority(which int, who int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_getpriority)), 2, uintptr(which), uintptr(who), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetrusage(who int, rusage uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getrusage)), 2, uintptr(who), rusage, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetsid(pid int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getsid)), 1, uintptr(pid), 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callkill(pid int, sig int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_kill)), 2, uintptr(pid), uintptr(sig), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsyslog(typ int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_syslog)), 3, uintptr(typ), _p0, uintptr(_lenp0), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmkdir(dirfd int, _p0 uintptr, mode uint32) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mkdir)), 3, uintptr(dirfd), _p0, uintptr(mode), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmkdirat(dirfd int, _p0 uintptr, mode uint32) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mkdirat)), 3, uintptr(dirfd), _p0, uintptr(mode), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmkfifo(_p0 uintptr, mode uint32) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mkfifo)), 2, _p0, uintptr(mode), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmknod(_p0 uintptr, mode uint32, dev int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mknod)), 3, _p0, uintptr(mode), uintptr(dev), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmknodat(dirfd int, _p0 uintptr, mode uint32, dev int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mknodat)), 4, uintptr(dirfd), _p0, uintptr(mode), uintptr(dev), 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callnanosleep(time uintptr, leftover uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_nanosleep)), 2, time, leftover, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callopen64(_p0 uintptr, mode int, perm uint32) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_open64)), 3, _p0, uintptr(mode), uintptr(perm), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callopenat(dirfd int, _p0 uintptr, flags int, mode uint32) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_openat)), 4, uintptr(dirfd), _p0, uintptr(flags), uintptr(mode), 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callread(fd int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_read)), 3, uintptr(fd), _p0, uintptr(_lenp0), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callreadlink(_p0 uintptr, _p1 uintptr, _lenp1 int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_readlink)), 3, _p0, _p1, uintptr(_lenp1), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callrenameat(olddirfd int, _p0 uintptr, newdirfd int, _p1 uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_renameat)), 4, uintptr(olddirfd), _p0, uintptr(newdirfd), _p1, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetdomainname(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_setdomainname)), 2, _p0, uintptr(_lenp0), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsethostname(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_sethostname)), 2, _p0, uintptr(_lenp0), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetpgid(pid int, pgid int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_setpgid)), 2, uintptr(pid), uintptr(pgid), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetsid() (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_setsid)), 0, 0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsettimeofday(tv uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_settimeofday)), 1, tv, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetuid(uid int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_setuid)), 1, uintptr(uid), 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetgid(uid int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_setgid)), 1, uintptr(uid), 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetpriority(which int, who int, prio int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_setpriority)), 3, uintptr(which), uintptr(who), uintptr(prio), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callstatx(dirfd int, _p0 uintptr, flags int, mask int, stat uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_statx)), 5, uintptr(dirfd), _p0, uintptr(flags), uintptr(mask), stat, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsync() (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_sync)), 0, 0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calltimes(tms uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_times)), 1, tms, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callumask(mask int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_umask)), 1, uintptr(mask), 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calluname(buf uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_uname)), 1, buf, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callunlink(_p0 uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_unlink)), 1, _p0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callunlinkat(dirfd int, _p0 uintptr, flags int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_unlinkat)), 3, uintptr(dirfd), _p0, uintptr(flags), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callustat(dev int, ubuf uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_ustat)), 2, uintptr(dev), ubuf, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callwrite(fd int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_write)), 3, uintptr(fd), _p0, uintptr(_lenp0), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calldup2(oldfd int, newfd int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_dup2)), 2, uintptr(oldfd), uintptr(newfd), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callposix_fadvise64(fd int, offset int64, length int64, advice int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_posix_fadvise64)), 4, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfchown(fd int, uid int, gid int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fchown)), 3, uintptr(fd), uintptr(uid), uintptr(gid), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfstat(fd int, stat uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fstat)), 2, uintptr(fd), stat, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfstatat(dirfd int, _p0 uintptr, stat uintptr, flags int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fstatat)), 4, uintptr(dirfd), _p0, stat, uintptr(flags), 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfstatfs(fd int, buf uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fstatfs)), 2, uintptr(fd), buf, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callftruncate(fd int, length int64) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_ftruncate)), 2, uintptr(fd), uintptr(length), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetegid() (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getegid)), 0, 0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgeteuid() (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_geteuid)), 0, 0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetgid() (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getgid)), 0, 0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetuid() (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getuid)), 0, 0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calllchown(_p0 uintptr, uid int, gid int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_lchown)), 3, _p0, uintptr(uid), uintptr(gid), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calllisten(s int, n int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_listen)), 2, uintptr(s), uintptr(n), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calllstat(_p0 uintptr, stat uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_lstat)), 2, _p0, stat, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callpause() (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_pause)), 0, 0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callpread64(fd int, _p0 uintptr, _lenp0 int, offset int64) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_pread64)), 4, uintptr(fd), _p0, uintptr(_lenp0), uintptr(offset), 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callpwrite64(fd int, _p0 uintptr, _lenp0 int, offset int64) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_pwrite64)), 4, uintptr(fd), _p0, uintptr(_lenp0), uintptr(offset), 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callselect(nfd int, r uintptr, w uintptr, e uintptr, timeout uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_select)), 5, uintptr(nfd), r, w, e, timeout, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callpselect(nfd int, r uintptr, w uintptr, e uintptr, timeout uintptr, sigmask uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_pselect)), 6, uintptr(nfd), r, w, e, timeout, sigmask)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetregid(rgid int, egid int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_setregid)), 2, uintptr(rgid), uintptr(egid), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetreuid(ruid int, euid int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_setreuid)), 2, uintptr(ruid), uintptr(euid), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callshutdown(fd int, how int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_shutdown)), 2, uintptr(fd), uintptr(how), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsplice(rfd int, roff uintptr, wfd int, woff uintptr, len int, flags int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_splice)), 6, uintptr(rfd), roff, uintptr(wfd), woff, uintptr(len), uintptr(flags))
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callstat(_p0 uintptr, statptr uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_stat)), 2, _p0, statptr, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callstatfs(_p0 uintptr, buf uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_statfs)), 2, _p0, buf, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calltruncate(_p0 uintptr, length int64) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_truncate)), 2, _p0, uintptr(length), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callbind(s int, addr uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_bind)), 3, uintptr(s), addr, addrlen, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callconnect(s int, addr uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_connect)), 3, uintptr(s), addr, addrlen, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetgroups(n int, list uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getgroups)), 2, uintptr(n), list, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetgroups(n int, list uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_setgroups)), 2, uintptr(n), list, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetsockopt(s int, level int, name int, val uintptr, vallen uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_getsockopt)), 5, uintptr(s), uintptr(level), uintptr(name), val, vallen, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetsockopt(s int, level int, name int, val uintptr, vallen uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_setsockopt)), 5, uintptr(s), uintptr(level), uintptr(name), val, vallen, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsocket(domain int, typ int, proto int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_socket)), 3, uintptr(domain), uintptr(typ), uintptr(proto), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsocketpair(domain int, typ int, proto int, fd uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_socketpair)), 4, uintptr(domain), uintptr(typ), uintptr(proto), fd, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetpeername(fd int, rsa uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getpeername)), 3, uintptr(fd), rsa, addrlen, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetsockname(fd int, rsa uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getsockname)), 3, uintptr(fd), rsa, addrlen, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callrecvfrom(fd int, _p0 uintptr, _lenp0 int, flags int, from uintptr, fromlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_recvfrom)), 6, uintptr(fd), _p0, uintptr(_lenp0), uintptr(flags), from, fromlen)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsendto(s int, _p0 uintptr, _lenp0 int, flags int, to uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_sendto)), 6, uintptr(s), _p0, uintptr(_lenp0), uintptr(flags), to, addrlen)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callnrecvmsg(s int, msg uintptr, flags int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_nrecvmsg)), 3, uintptr(s), msg, uintptr(flags), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callnsendmsg(s int, msg uintptr, flags int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_nsendmsg)), 3, uintptr(s), msg, uintptr(flags), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmunmap(addr uintptr, length uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_munmap)), 2, addr, length, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmadvise(_p0 uintptr, _lenp0 int, advice int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_madvise)), 3, _p0, uintptr(_lenp0), uintptr(advice), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmprotect(_p0 uintptr, _lenp0 int, prot int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mprotect)), 3, _p0, uintptr(_lenp0), uintptr(prot), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmlock(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mlock)), 2, _p0, uintptr(_lenp0), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmlockall(flags int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mlockall)), 1, uintptr(flags), 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmsync(_p0 uintptr, _lenp0 int, flags int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_msync)), 3, _p0, uintptr(_lenp0), uintptr(flags), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmunlock(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_munlock)), 2, _p0, uintptr(_lenp0), 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmunlockall() (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_munlockall)), 0, 0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callpipe(p uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_pipe)), 1, p, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callpoll(fds uintptr, nfds int, timeout int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_poll)), 3, fds, uintptr(nfds), uintptr(timeout), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgettimeofday(tv uintptr, tzp uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_gettimeofday)), 2, tv, tzp, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calltime(t uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_time)), 1, t, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callutime(_p0 uintptr, buf uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_utime)), 2, _p0, buf, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetsystemcfg(label int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_getsystemcfg)), 1, uintptr(label), 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callumount(_p0 uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_umount)), 1, _p0, 0, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetrlimit(resource int, rlim uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getrlimit)), 2, uintptr(resource), rlim, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetrlimit(resource int, rlim uintptr) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_setrlimit)), 2, uintptr(resource), rlim, 0, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calllseek(fd int, offset int64, whence int) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_lseek)), 3, uintptr(fd), uintptr(offset), uintptr(whence), 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmmap64(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (r1 uintptr, e1 Errno) {
-+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mmap64)), 6, addr, length, uintptr(prot), uintptr(flags), uintptr(fd), uintptr(offset))
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go
-new file mode 100644
-index 00000000..cde4dbc5
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go
-@@ -0,0 +1,1070 @@
-+// go run mksyscall_aix_ppc64.go -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build aix,ppc64
-+// +build gccgo
-+
-+package unix
-+
-+/*
-+#include <stdint.h>
-+int utimes(uintptr_t, uintptr_t);
-+int utimensat(int, uintptr_t, uintptr_t, int);
-+int getcwd(uintptr_t, size_t);
-+int accept(int, uintptr_t, uintptr_t);
-+int getdirent(int, uintptr_t, size_t);
-+int wait4(int, uintptr_t, int, uintptr_t);
-+int ioctl(int, int, uintptr_t);
-+int fcntl(uintptr_t, int, uintptr_t);
-+int acct(uintptr_t);
-+int chdir(uintptr_t);
-+int chroot(uintptr_t);
-+int close(int);
-+int dup(int);
-+void exit(int);
-+int faccessat(int, uintptr_t, unsigned int, int);
-+int fchdir(int);
-+int fchmod(int, unsigned int);
-+int fchmodat(int, uintptr_t, unsigned int, int);
-+int fchownat(int, uintptr_t, int, int, int);
-+int fdatasync(int);
-+int fsync(int);
-+int getpgid(int);
-+int getpgrp();
-+int getpid();
-+int getppid();
-+int getpriority(int, int);
-+int getrusage(int, uintptr_t);
-+int getsid(int);
-+int kill(int, int);
-+int syslog(int, uintptr_t, size_t);
-+int mkdir(int, uintptr_t, unsigned int);
-+int mkdirat(int, uintptr_t, unsigned int);
-+int mkfifo(uintptr_t, unsigned int);
-+int mknod(uintptr_t, unsigned int, int);
-+int mknodat(int, uintptr_t, unsigned int, int);
-+int nanosleep(uintptr_t, uintptr_t);
-+int open64(uintptr_t, int, unsigned int);
-+int openat(int, uintptr_t, int, unsigned int);
-+int read(int, uintptr_t, size_t);
-+int readlink(uintptr_t, uintptr_t, size_t);
-+int renameat(int, uintptr_t, int, uintptr_t);
-+int setdomainname(uintptr_t, size_t);
-+int sethostname(uintptr_t, size_t);
-+int setpgid(int, int);
-+int setsid();
-+int settimeofday(uintptr_t);
-+int setuid(int);
-+int setgid(int);
-+int setpriority(int, int, int);
-+int statx(int, uintptr_t, int, int, uintptr_t);
-+int sync();
-+uintptr_t times(uintptr_t);
-+int umask(int);
-+int uname(uintptr_t);
-+int unlink(uintptr_t);
-+int unlinkat(int, uintptr_t, int);
-+int ustat(int, uintptr_t);
-+int write(int, uintptr_t, size_t);
-+int dup2(int, int);
-+int posix_fadvise64(int, long long, long long, int);
-+int fchown(int, int, int);
-+int fstat(int, uintptr_t);
-+int fstatat(int, uintptr_t, uintptr_t, int);
-+int fstatfs(int, uintptr_t);
-+int ftruncate(int, long long);
-+int getegid();
-+int geteuid();
-+int getgid();
-+int getuid();
-+int lchown(uintptr_t, int, int);
-+int listen(int, int);
-+int lstat(uintptr_t, uintptr_t);
-+int pause();
-+int pread64(int, uintptr_t, size_t, long long);
-+int pwrite64(int, uintptr_t, size_t, long long);
-+#define c_select select
-+int select(int, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
-+int pselect(int, uintptr_t, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
-+int setregid(int, int);
-+int setreuid(int, int);
-+int shutdown(int, int);
-+long long splice(int, uintptr_t, int, uintptr_t, int, int);
-+int stat(uintptr_t, uintptr_t);
-+int statfs(uintptr_t, uintptr_t);
-+int truncate(uintptr_t, long long);
-+int bind(int, uintptr_t, uintptr_t);
-+int connect(int, uintptr_t, uintptr_t);
-+int getgroups(int, uintptr_t);
-+int setgroups(int, uintptr_t);
-+int getsockopt(int, int, int, uintptr_t, uintptr_t);
-+int setsockopt(int, int, int, uintptr_t, uintptr_t);
-+int socket(int, int, int);
-+int socketpair(int, int, int, uintptr_t);
-+int getpeername(int, uintptr_t, uintptr_t);
-+int getsockname(int, uintptr_t, uintptr_t);
-+int recvfrom(int, uintptr_t, size_t, int, uintptr_t, uintptr_t);
-+int sendto(int, uintptr_t, size_t, int, uintptr_t, uintptr_t);
-+int nrecvmsg(int, uintptr_t, int);
-+int nsendmsg(int, uintptr_t, int);
-+int munmap(uintptr_t, uintptr_t);
-+int madvise(uintptr_t, size_t, int);
-+int mprotect(uintptr_t, size_t, int);
-+int mlock(uintptr_t, size_t);
-+int mlockall(int);
-+int msync(uintptr_t, size_t, int);
-+int munlock(uintptr_t, size_t);
-+int munlockall();
-+int pipe(uintptr_t);
-+int poll(uintptr_t, int, int);
-+int gettimeofday(uintptr_t, uintptr_t);
-+int time(uintptr_t);
-+int utime(uintptr_t, uintptr_t);
-+unsigned long long getsystemcfg(int);
-+int umount(uintptr_t);
-+int getrlimit(int, uintptr_t);
-+int setrlimit(int, uintptr_t);
-+long long lseek(int, long long, int);
-+uintptr_t mmap64(uintptr_t, uintptr_t, int, int, int, long long);
-+
-+*/
-+import "C"
-+import (
-+ "syscall"
-+)
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callutimes(_p0 uintptr, times uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.utimes(C.uintptr_t(_p0), C.uintptr_t(times)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callutimensat(dirfd int, _p0 uintptr, times uintptr, flag int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.utimensat(C.int(dirfd), C.uintptr_t(_p0), C.uintptr_t(times), C.int(flag)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetcwd(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getcwd(C.uintptr_t(_p0), C.size_t(_lenp0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callaccept(s int, rsa uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.accept(C.int(s), C.uintptr_t(rsa), C.uintptr_t(addrlen)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetdirent(fd int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getdirent(C.int(fd), C.uintptr_t(_p0), C.size_t(_lenp0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callwait4(pid int, status uintptr, options int, rusage uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.wait4(C.int(pid), C.uintptr_t(status), C.int(options), C.uintptr_t(rusage)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callioctl(fd int, req int, arg uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.ioctl(C.int(fd), C.int(req), C.uintptr_t(arg)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfcntl(fd uintptr, cmd int, arg uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.fcntl(C.uintptr_t(fd), C.int(cmd), C.uintptr_t(arg)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callacct(_p0 uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.acct(C.uintptr_t(_p0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callchdir(_p0 uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.chdir(C.uintptr_t(_p0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callchroot(_p0 uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.chroot(C.uintptr_t(_p0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callclose(fd int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.close(C.int(fd)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calldup(oldfd int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.dup(C.int(oldfd)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callexit(code int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.exit(C.int(code)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfaccessat(dirfd int, _p0 uintptr, mode uint32, flags int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.faccessat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode), C.int(flags)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfchdir(fd int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.fchdir(C.int(fd)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfchmod(fd int, mode uint32) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.fchmod(C.int(fd), C.uint(mode)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfchmodat(dirfd int, _p0 uintptr, mode uint32, flags int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.fchmodat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode), C.int(flags)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfchownat(dirfd int, _p0 uintptr, uid int, gid int, flags int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.fchownat(C.int(dirfd), C.uintptr_t(_p0), C.int(uid), C.int(gid), C.int(flags)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfdatasync(fd int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.fdatasync(C.int(fd)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfsync(fd int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.fsync(C.int(fd)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetpgid(pid int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getpgid(C.int(pid)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetpgrp() (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getpgrp())
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetpid() (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getpid())
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetppid() (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getppid())
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetpriority(which int, who int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getpriority(C.int(which), C.int(who)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetrusage(who int, rusage uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getrusage(C.int(who), C.uintptr_t(rusage)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetsid(pid int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getsid(C.int(pid)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callkill(pid int, sig int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.kill(C.int(pid), C.int(sig)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsyslog(typ int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.syslog(C.int(typ), C.uintptr_t(_p0), C.size_t(_lenp0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmkdir(dirfd int, _p0 uintptr, mode uint32) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.mkdir(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmkdirat(dirfd int, _p0 uintptr, mode uint32) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.mkdirat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmkfifo(_p0 uintptr, mode uint32) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.mkfifo(C.uintptr_t(_p0), C.uint(mode)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmknod(_p0 uintptr, mode uint32, dev int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.mknod(C.uintptr_t(_p0), C.uint(mode), C.int(dev)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmknodat(dirfd int, _p0 uintptr, mode uint32, dev int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.mknodat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode), C.int(dev)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callnanosleep(time uintptr, leftover uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.nanosleep(C.uintptr_t(time), C.uintptr_t(leftover)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callopen64(_p0 uintptr, mode int, perm uint32) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.open64(C.uintptr_t(_p0), C.int(mode), C.uint(perm)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callopenat(dirfd int, _p0 uintptr, flags int, mode uint32) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.openat(C.int(dirfd), C.uintptr_t(_p0), C.int(flags), C.uint(mode)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callread(fd int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.read(C.int(fd), C.uintptr_t(_p0), C.size_t(_lenp0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callreadlink(_p0 uintptr, _p1 uintptr, _lenp1 int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.readlink(C.uintptr_t(_p0), C.uintptr_t(_p1), C.size_t(_lenp1)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callrenameat(olddirfd int, _p0 uintptr, newdirfd int, _p1 uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.renameat(C.int(olddirfd), C.uintptr_t(_p0), C.int(newdirfd), C.uintptr_t(_p1)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetdomainname(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.setdomainname(C.uintptr_t(_p0), C.size_t(_lenp0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsethostname(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.sethostname(C.uintptr_t(_p0), C.size_t(_lenp0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetpgid(pid int, pgid int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.setpgid(C.int(pid), C.int(pgid)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetsid() (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.setsid())
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsettimeofday(tv uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.settimeofday(C.uintptr_t(tv)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetuid(uid int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.setuid(C.int(uid)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetgid(uid int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.setgid(C.int(uid)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetpriority(which int, who int, prio int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.setpriority(C.int(which), C.int(who), C.int(prio)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callstatx(dirfd int, _p0 uintptr, flags int, mask int, stat uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.statx(C.int(dirfd), C.uintptr_t(_p0), C.int(flags), C.int(mask), C.uintptr_t(stat)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsync() (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.sync())
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calltimes(tms uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.times(C.uintptr_t(tms)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callumask(mask int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.umask(C.int(mask)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calluname(buf uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.uname(C.uintptr_t(buf)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callunlink(_p0 uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.unlink(C.uintptr_t(_p0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callunlinkat(dirfd int, _p0 uintptr, flags int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.unlinkat(C.int(dirfd), C.uintptr_t(_p0), C.int(flags)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callustat(dev int, ubuf uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.ustat(C.int(dev), C.uintptr_t(ubuf)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callwrite(fd int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.write(C.int(fd), C.uintptr_t(_p0), C.size_t(_lenp0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calldup2(oldfd int, newfd int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.dup2(C.int(oldfd), C.int(newfd)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callposix_fadvise64(fd int, offset int64, length int64, advice int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.posix_fadvise64(C.int(fd), C.longlong(offset), C.longlong(length), C.int(advice)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfchown(fd int, uid int, gid int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.fchown(C.int(fd), C.int(uid), C.int(gid)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfstat(fd int, stat uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.fstat(C.int(fd), C.uintptr_t(stat)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfstatat(dirfd int, _p0 uintptr, stat uintptr, flags int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.fstatat(C.int(dirfd), C.uintptr_t(_p0), C.uintptr_t(stat), C.int(flags)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callfstatfs(fd int, buf uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.fstatfs(C.int(fd), C.uintptr_t(buf)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callftruncate(fd int, length int64) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.ftruncate(C.int(fd), C.longlong(length)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetegid() (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getegid())
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgeteuid() (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.geteuid())
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetgid() (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getgid())
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetuid() (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getuid())
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calllchown(_p0 uintptr, uid int, gid int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.lchown(C.uintptr_t(_p0), C.int(uid), C.int(gid)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calllisten(s int, n int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.listen(C.int(s), C.int(n)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calllstat(_p0 uintptr, stat uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.lstat(C.uintptr_t(_p0), C.uintptr_t(stat)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callpause() (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.pause())
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callpread64(fd int, _p0 uintptr, _lenp0 int, offset int64) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.pread64(C.int(fd), C.uintptr_t(_p0), C.size_t(_lenp0), C.longlong(offset)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callpwrite64(fd int, _p0 uintptr, _lenp0 int, offset int64) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.pwrite64(C.int(fd), C.uintptr_t(_p0), C.size_t(_lenp0), C.longlong(offset)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callselect(nfd int, r uintptr, w uintptr, e uintptr, timeout uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.c_select(C.int(nfd), C.uintptr_t(r), C.uintptr_t(w), C.uintptr_t(e), C.uintptr_t(timeout)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callpselect(nfd int, r uintptr, w uintptr, e uintptr, timeout uintptr, sigmask uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.pselect(C.int(nfd), C.uintptr_t(r), C.uintptr_t(w), C.uintptr_t(e), C.uintptr_t(timeout), C.uintptr_t(sigmask)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetregid(rgid int, egid int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.setregid(C.int(rgid), C.int(egid)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetreuid(ruid int, euid int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.setreuid(C.int(ruid), C.int(euid)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callshutdown(fd int, how int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.shutdown(C.int(fd), C.int(how)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsplice(rfd int, roff uintptr, wfd int, woff uintptr, len int, flags int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.splice(C.int(rfd), C.uintptr_t(roff), C.int(wfd), C.uintptr_t(woff), C.int(len), C.int(flags)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callstat(_p0 uintptr, statptr uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.stat(C.uintptr_t(_p0), C.uintptr_t(statptr)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callstatfs(_p0 uintptr, buf uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.statfs(C.uintptr_t(_p0), C.uintptr_t(buf)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calltruncate(_p0 uintptr, length int64) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.truncate(C.uintptr_t(_p0), C.longlong(length)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callbind(s int, addr uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.bind(C.int(s), C.uintptr_t(addr), C.uintptr_t(addrlen)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callconnect(s int, addr uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.connect(C.int(s), C.uintptr_t(addr), C.uintptr_t(addrlen)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetgroups(n int, list uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getgroups(C.int(n), C.uintptr_t(list)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetgroups(n int, list uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.setgroups(C.int(n), C.uintptr_t(list)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetsockopt(s int, level int, name int, val uintptr, vallen uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getsockopt(C.int(s), C.int(level), C.int(name), C.uintptr_t(val), C.uintptr_t(vallen)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetsockopt(s int, level int, name int, val uintptr, vallen uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.setsockopt(C.int(s), C.int(level), C.int(name), C.uintptr_t(val), C.uintptr_t(vallen)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsocket(domain int, typ int, proto int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.socket(C.int(domain), C.int(typ), C.int(proto)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsocketpair(domain int, typ int, proto int, fd uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.socketpair(C.int(domain), C.int(typ), C.int(proto), C.uintptr_t(fd)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetpeername(fd int, rsa uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getpeername(C.int(fd), C.uintptr_t(rsa), C.uintptr_t(addrlen)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetsockname(fd int, rsa uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getsockname(C.int(fd), C.uintptr_t(rsa), C.uintptr_t(addrlen)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callrecvfrom(fd int, _p0 uintptr, _lenp0 int, flags int, from uintptr, fromlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.recvfrom(C.int(fd), C.uintptr_t(_p0), C.size_t(_lenp0), C.int(flags), C.uintptr_t(from), C.uintptr_t(fromlen)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsendto(s int, _p0 uintptr, _lenp0 int, flags int, to uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.sendto(C.int(s), C.uintptr_t(_p0), C.size_t(_lenp0), C.int(flags), C.uintptr_t(to), C.uintptr_t(addrlen)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callnrecvmsg(s int, msg uintptr, flags int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.nrecvmsg(C.int(s), C.uintptr_t(msg), C.int(flags)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callnsendmsg(s int, msg uintptr, flags int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.nsendmsg(C.int(s), C.uintptr_t(msg), C.int(flags)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmunmap(addr uintptr, length uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.munmap(C.uintptr_t(addr), C.uintptr_t(length)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmadvise(_p0 uintptr, _lenp0 int, advice int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.madvise(C.uintptr_t(_p0), C.size_t(_lenp0), C.int(advice)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmprotect(_p0 uintptr, _lenp0 int, prot int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.mprotect(C.uintptr_t(_p0), C.size_t(_lenp0), C.int(prot)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmlock(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.mlock(C.uintptr_t(_p0), C.size_t(_lenp0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmlockall(flags int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.mlockall(C.int(flags)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmsync(_p0 uintptr, _lenp0 int, flags int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.msync(C.uintptr_t(_p0), C.size_t(_lenp0), C.int(flags)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmunlock(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.munlock(C.uintptr_t(_p0), C.size_t(_lenp0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmunlockall() (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.munlockall())
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callpipe(p uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.pipe(C.uintptr_t(p)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callpoll(fds uintptr, nfds int, timeout int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.poll(C.uintptr_t(fds), C.int(nfds), C.int(timeout)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgettimeofday(tv uintptr, tzp uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.gettimeofday(C.uintptr_t(tv), C.uintptr_t(tzp)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calltime(t uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.time(C.uintptr_t(t)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callutime(_p0 uintptr, buf uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.utime(C.uintptr_t(_p0), C.uintptr_t(buf)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetsystemcfg(label int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getsystemcfg(C.int(label)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callumount(_p0 uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.umount(C.uintptr_t(_p0)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callgetrlimit(resource int, rlim uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.getrlimit(C.int(resource), C.uintptr_t(rlim)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callsetrlimit(resource int, rlim uintptr) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.setrlimit(C.int(resource), C.uintptr_t(rlim)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func calllseek(fd int, offset int64, whence int) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.lseek(C.int(fd), C.longlong(offset), C.int(whence)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func callmmap64(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (r1 uintptr, e1 Errno) {
-+ r1 = uintptr(C.mmap64(C.uintptr_t(addr), C.uintptr_t(length), C.int(prot), C.int(flags), C.int(fd), C.longlong(offset)))
-+ e1 = syscall.GetErrno()
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_11.go
-similarity index 85%
-copy from vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
-copy to vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_11.go
-index 7a409745..c1cc0a41 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_11.go
-@@ -1,7 +1,7 @@
--// mksyscall.pl -tags darwin,arm syscall_bsd.go syscall_darwin.go syscall_darwin_arm.go
-+// go run mksyscall.go -l32 -tags darwin,386,!go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_386.1_11.go syscall_darwin_386.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build darwin,arm
-+// +build darwin,386,!go1.12
-
- package unix
-
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,8 +350,8 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := Syscall6(SYS_GETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -388,6 +372,161 @@ func pipe() (r int, w int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func removexattr(path string, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fremovexattr(fd int, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
-+ r0, _, e1 := Syscall6(SYS_FLISTXATTR, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := Syscall6(SYS_SETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fcntl(fd int, cmd int, arg int) (val int, err error) {
-+ r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-+ val = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func kill(pid int, signum int, posix int) (err error) {
- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
- if e1 != 0 {
-@@ -408,6 +547,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
-+ _, _, e1 := Syscall9(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -672,26 +837,6 @@ func Fpathconf(fd int, name int) (val int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Fsync(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -712,23 +857,6 @@ func Ftruncate(fd int, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Getdtablesize() (size int) {
- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
- size = int(r0)
-@@ -930,21 +1058,6 @@ func Listen(s int, backlog int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Lstat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Mkdir(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1229,8 +1342,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1375,36 +1489,6 @@ func Setuid(uid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Statfs(path string, stat *Statfs_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Symlink(path string, link string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1598,6 +1682,33 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-+ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
- sec = int32(r0)
-@@ -1607,3 +1718,94 @@ func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
- }
- return
- }
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatfs(fd int, stat *Statfs_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_GETFSSTAT64, uintptr(buf), uintptr(size), uintptr(flags))
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Lstat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Stat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Statfs(path string, stat *Statfs_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go
-new file mode 100644
-index 00000000..e263fbdb
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go
-@@ -0,0 +1,41 @@
-+// go run mksyscall.go -l32 -tags darwin,386,go1.13 syscall_darwin.1_13.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build darwin,386,go1.13
-+
-+package unix
-+
-+import (
-+ "syscall"
-+ "unsafe"
-+)
-+
-+var _ syscall.Errno
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func closedir(dir uintptr) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_closedir_trampoline()
-+
-+//go:linkname libc_closedir libc_closedir
-+//go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) {
-+ r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result)))
-+ res = Errno(r0)
-+ return
-+}
-+
-+func libc_readdir_r_trampoline()
-+
-+//go:linkname libc_readdir_r libc_readdir_r
-+//go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib"
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s
-new file mode 100644
-index 00000000..00da1ebf
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s
-@@ -0,0 +1,12 @@
-+// go run mkasm_darwin.go 386
-+// Code generated by the command above; DO NOT EDIT.
-+
-+// +build go1.13
-+
-+#include "textflag.h"
-+TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fdopendir(SB)
-+TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_closedir(SB)
-+TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_readdir_r(SB)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
-index 10491e9e..a3fc4900 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
-@@ -1,7 +1,7 @@
--// mksyscall.pl -l32 -tags darwin,386 syscall_bsd.go syscall_darwin.go syscall_darwin_386.go
-+// go run mksyscall.go -l32 -tags darwin,386,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_386.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build darwin,386
-+// +build darwin,386,go1.12
-
- package unix
-
-@@ -15,7 +15,7 @@ var _ syscall.Errno
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -23,20 +23,30 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
- return
- }
-
-+func libc_getgroups_trampoline()
-+
-+//go:linkname libc_getgroups libc_getgroups
-+//go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func setgroups(ngid int, gid *_Gid_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setgroups_trampoline()
-+
-+//go:linkname libc_setgroups libc_setgroups
-+//go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
- wpid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -44,10 +54,15 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
- return
- }
-
-+func libc_wait4_trampoline()
-+
-+//go:linkname libc_wait4 libc_wait4
-+//go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -55,30 +70,45 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
- return
- }
-
-+func libc_accept_trampoline()
-+
-+//go:linkname libc_accept libc_accept
-+//go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen))
-+ _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_bind_trampoline()
-+
-+//go:linkname libc_bind libc_bind
-+//go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen))
-+ _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_connect_trampoline()
-+
-+//go:linkname libc_connect libc_connect
-+//go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func socket(domain int, typ int, proto int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto))
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto))
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -86,66 +116,101 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
- return
- }
-
-+func libc_socket_trampoline()
-+
-+//go:linkname libc_socket libc_socket
-+//go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
-- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getsockopt_trampoline()
-+
-+//go:linkname libc_getsockopt libc_getsockopt
-+//go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setsockopt_trampoline()
-+
-+//go:linkname libc_setsockopt libc_setsockopt
-+//go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getpeername_trampoline()
-+
-+//go:linkname libc_getpeername libc_getpeername
-+//go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getsockname_trampoline()
-+
-+//go:linkname libc_getsockname libc_getsockname
-+//go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Shutdown(s int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_shutdown_trampoline()
-+
-+//go:linkname libc_shutdown libc_shutdown
-+//go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
-- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
-+ _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_socketpair_trampoline()
-+
-+//go:linkname libc_socketpair libc_socketpair
-+//go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
-@@ -155,7 +220,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -163,6 +228,11 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
- return
- }
-
-+func libc_recvfrom_trampoline()
-+
-+//go:linkname libc_recvfrom libc_recvfrom
-+//go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
-@@ -172,17 +242,22 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
-+ _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_sendto_trampoline()
-+
-+//go:linkname libc_sendto libc_sendto
-+//go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -190,10 +265,15 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- return
- }
-
-+func libc_recvmsg_trampoline()
-+
-+//go:linkname libc_recvmsg libc_recvmsg
-+//go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -201,10 +281,15 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- return
- }
-
-+func libc_sendmsg_trampoline()
-+
-+//go:linkname libc_sendmsg libc_sendmsg
-+//go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -212,21 +297,10 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_kevent_trampoline()
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_kevent libc_kevent
-+//go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-@@ -236,34 +310,49 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_utimes_trampoline()
-+
-+//go:linkname libc_utimes libc_utimes
-+//go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func futimes(fd int, timeval *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_futimes_trampoline()
-+
-+//go:linkname libc_futimes libc_futimes
-+//go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_poll_trampoline()
-+
-+//go:linkname libc_poll libc_poll
-+//go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Madvise(b []byte, behav int) (err error) {
-@@ -273,13 +362,18 @@ func Madvise(b []byte, behav int) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav))
-+ _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_madvise_trampoline()
-+
-+//go:linkname libc_madvise libc_madvise
-+//go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mlock(b []byte) (err error) {
-@@ -289,23 +383,33 @@ func Mlock(b []byte) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mlock_trampoline()
-+
-+//go:linkname libc_mlock libc_mlock
-+//go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mlockall_trampoline()
-+
-+//go:linkname libc_mlockall libc_mlockall
-+//go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mprotect(b []byte, prot int) (err error) {
-@@ -315,13 +419,18 @@ func Mprotect(b []byte, prot int) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-+ _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mprotect_trampoline()
-+
-+//go:linkname libc_mprotect libc_mprotect
-+//go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Msync(b []byte, flags int) (err error) {
-@@ -331,13 +440,18 @@ func Msync(b []byte, flags int) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-+ _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_msync_trampoline()
-+
-+//go:linkname libc_msync libc_msync
-+//go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Munlock(b []byte) (err error) {
-@@ -347,37 +461,52 @@ func Munlock(b []byte) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_munlock_trampoline()
-+
-+//go:linkname libc_munlock libc_munlock
-+//go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_munlockall_trampoline()
-+
-+//go:linkname libc_munlockall libc_munlockall
-+//go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := syscall_syscall6(funcPC(libc_getattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getattrlist_trampoline()
-+
-+//go:linkname libc_getattrlist libc_getattrlist
-+//go:cgo_import_dynamic libc_getattrlist getattrlist "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func pipe() (r int, w int, err error) {
-- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
-+ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0)
- r = int(r0)
- w = int(r1)
- if e1 != 0 {
-@@ -386,26 +515,282 @@ func pipe() (r int, w int, err error) {
- return
- }
-
-+func libc_pipe_trampoline()
-+
-+//go:linkname libc_pipe libc_pipe
-+//go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_getxattr_trampoline()
-+
-+//go:linkname libc_getxattr libc_getxattr
-+//go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fgetxattr_trampoline()
-+
-+//go:linkname libc_fgetxattr libc_fgetxattr
-+//go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_setxattr_trampoline()
-+
-+//go:linkname libc_setxattr libc_setxattr
-+//go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fsetxattr_trampoline()
-+
-+//go:linkname libc_fsetxattr libc_fsetxattr
-+//go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func removexattr(path string, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_removexattr_trampoline()
-+
-+//go:linkname libc_removexattr libc_removexattr
-+//go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fremovexattr(fd int, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fremovexattr_trampoline()
-+
-+//go:linkname libc_fremovexattr libc_fremovexattr
-+//go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_listxattr_trampoline()
-+
-+//go:linkname libc_listxattr libc_listxattr
-+//go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_flistxattr_trampoline()
-+
-+//go:linkname libc_flistxattr libc_flistxattr
-+//go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_setattrlist_trampoline()
-+
-+//go:linkname libc_setattrlist libc_setattrlist
-+//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fcntl(fd int, cmd int, arg int) (val int, err error) {
-+ r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg))
-+ val = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fcntl_trampoline()
-+
-+//go:linkname libc_fcntl libc_fcntl
-+//go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func kill(pid int, signum int, posix int) (err error) {
-- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
-+ _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_kill_trampoline()
-+
-+//go:linkname libc_kill libc_kill
-+//go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-+ _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_ioctl_trampoline()
-+
-+//go:linkname libc_ioctl libc_ioctl
-+//go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_sysctl_trampoline()
-+
-+//go:linkname libc_sysctl libc_sysctl
-+//go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
-+ _, _, e1 := syscall_syscall9(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_sendfile_trampoline()
-+
-+//go:linkname libc_sendfile libc_sendfile
-+//go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Access(path string, mode uint32) (err error) {
-@@ -414,23 +799,33 @@ func Access(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_access_trampoline()
-+
-+//go:linkname libc_access libc_access
-+//go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_adjtime_trampoline()
-+
-+//go:linkname libc_adjtime libc_adjtime
-+//go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chdir(path string) (err error) {
-@@ -439,13 +834,18 @@ func Chdir(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chdir_trampoline()
-+
-+//go:linkname libc_chdir libc_chdir
-+//go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chflags(path string, flags int) (err error) {
-@@ -454,13 +854,18 @@ func Chflags(path string, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chflags_trampoline()
-+
-+//go:linkname libc_chflags libc_chflags
-+//go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chmod(path string, mode uint32) (err error) {
-@@ -469,13 +874,18 @@ func Chmod(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chmod_trampoline()
-+
-+//go:linkname libc_chmod libc_chmod
-+//go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chown(path string, uid int, gid int) (err error) {
-@@ -484,13 +894,18 @@ func Chown(path string, uid int, gid int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
-+ _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chown_trampoline()
-+
-+//go:linkname libc_chown libc_chown
-+//go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chroot(path string) (err error) {
-@@ -499,27 +914,52 @@ func Chroot(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_chroot_trampoline()
-+
-+//go:linkname libc_chroot libc_chroot
-+//go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ClockGettime(clockid int32, time *Timespec) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_clock_gettime_trampoline()
-+
-+//go:linkname libc_clock_gettime libc_clock_gettime
-+//go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_close_trampoline()
-+
-+//go:linkname libc_close libc_close
-+//go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Dup(fd int) (nfd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0)
- nfd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -527,16 +967,26 @@ func Dup(fd int) (nfd int, err error) {
- return
- }
-
-+func libc_dup_trampoline()
-+
-+//go:linkname libc_dup libc_dup
-+//go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Dup2(from int, to int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_dup2_trampoline()
-+
-+//go:linkname libc_dup2 libc_dup2
-+//go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Exchangedata(path1 string, path2 string, options int) (err error) {
-@@ -550,20 +1000,30 @@ func Exchangedata(path1 string, path2 string, options int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
-+ _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_exchangedata_trampoline()
-+
-+//go:linkname libc_exchangedata libc_exchangedata
-+//go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Exit(code int) {
-- Syscall(SYS_EXIT, uintptr(code), 0, 0)
-+ syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0)
- return
- }
-
-+func libc_exit_trampoline()
-+
-+//go:linkname libc_exit libc_exit
-+//go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-@@ -572,43 +1032,63 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_faccessat_trampoline()
-+
-+//go:linkname libc_faccessat libc_faccessat
-+//go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchdir_trampoline()
-+
-+//go:linkname libc_fchdir libc_fchdir
-+//go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchflags(fd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchflags_trampoline()
-+
-+//go:linkname libc_fchflags libc_fchflags
-+//go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchmod_trampoline()
-+
-+//go:linkname libc_fchmod libc_fchmod
-+//go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-@@ -617,23 +1097,33 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchmodat_trampoline()
-+
-+//go:linkname libc_fchmodat libc_fchmodat
-+//go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchown(fd int, uid int, gid int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchown_trampoline()
-+
-+//go:linkname libc_fchown libc_fchown
-+//go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-@@ -642,27 +1132,37 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchownat_trampoline()
-+
-+//go:linkname libc_fchownat libc_fchownat
-+//go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_flock_trampoline()
-+
-+//go:linkname libc_flock libc_flock
-+//go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fpathconf(fd int, name int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0)
- val = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -670,99 +1170,97 @@ func Fpathconf(fd int, name int) (val int, err error) {
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_fpathconf_trampoline()
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_fpathconf libc_fpathconf
-+//go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+func Fsync(fd int) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_fsync_trampoline()
-
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_fsync libc_fsync
-+//go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Ftruncate(fd int, length int64) (err error) {
-- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), uintptr(length>>32))
-+ _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), uintptr(length>>32))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_ftruncate_trampoline()
-
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_ftruncate libc_ftruncate
-+//go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getdtablesize() (size int) {
-- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
-+ r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0)
- size = int(r0)
- return
- }
-
-+func libc_getdtablesize_trampoline()
-+
-+//go:linkname libc_getdtablesize libc_getdtablesize
-+//go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0)
- egid = int(r0)
- return
- }
-
-+func libc_getegid_trampoline()
-+
-+//go:linkname libc_getegid libc_getegid
-+//go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0)
- uid = int(r0)
- return
- }
-
-+func libc_geteuid_trampoline()
-+
-+//go:linkname libc_geteuid libc_geteuid
-+//go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0)
- gid = int(r0)
- return
- }
-
-+func libc_getgid_trampoline()
-+
-+//go:linkname libc_getgid libc_getgid
-+//go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0)
- pgid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -770,34 +1268,54 @@ func Getpgid(pid int) (pgid int, err error) {
- return
- }
-
-+func libc_getpgid_trampoline()
-+
-+//go:linkname libc_getpgid libc_getpgid
-+//go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpgrp() (pgrp int) {
-- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0)
- pgrp = int(r0)
- return
- }
-
-+func libc_getpgrp_trampoline()
-+
-+//go:linkname libc_getpgrp libc_getpgrp
-+//go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0)
- pid = int(r0)
- return
- }
-
-+func libc_getpid_trampoline()
-+
-+//go:linkname libc_getpid libc_getpid
-+//go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0)
- ppid = int(r0)
- return
- }
-
-+func libc_getppid_trampoline()
-+
-+//go:linkname libc_getppid libc_getppid
-+//go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0)
- prio = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -805,30 +1323,45 @@ func Getpriority(which int, who int) (prio int, err error) {
- return
- }
-
-+func libc_getpriority_trampoline()
-+
-+//go:linkname libc_getpriority libc_getpriority
-+//go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getrlimit(which int, lim *Rlimit) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getrlimit_trampoline()
-+
-+//go:linkname libc_getrlimit libc_getrlimit
-+//go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getrusage_trampoline()
-+
-+//go:linkname libc_getrusage libc_getrusage
-+//go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0)
- sid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -836,26 +1369,41 @@ func Getsid(pid int) (sid int, err error) {
- return
- }
-
-+func libc_getsid_trampoline()
-+
-+//go:linkname libc_getsid libc_getsid
-+//go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0)
- uid = int(r0)
- return
- }
-
-+func libc_getuid_trampoline()
-+
-+//go:linkname libc_getuid libc_getuid
-+//go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Issetugid() (tainted bool) {
-- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0)
- tainted = bool(r0 != 0)
- return
- }
-
-+func libc_issetugid_trampoline()
-+
-+//go:linkname libc_issetugid libc_issetugid
-+//go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Kqueue() (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0)
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -863,6 +1411,11 @@ func Kqueue() (fd int, err error) {
- return
- }
-
-+func libc_kqueue_trampoline()
-+
-+//go:linkname libc_kqueue libc_kqueue
-+//go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Lchown(path string, uid int, gid int) (err error) {
-@@ -871,13 +1424,18 @@ func Lchown(path string, uid int, gid int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
-+ _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_lchown_trampoline()
-+
-+//go:linkname libc_lchown libc_lchown
-+//go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Link(path string, link string) (err error) {
-@@ -891,13 +1449,18 @@ func Link(path string, link string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_link_trampoline()
-+
-+//go:linkname libc_link libc_link
-+//go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
-@@ -911,37 +1474,32 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_linkat_trampoline()
-+
-+//go:linkname libc_linkat libc_linkat
-+//go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Listen(s int, backlog int) (err error) {
-- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_listen_trampoline()
-
--func Lstat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_listen libc_listen
-+//go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-@@ -951,13 +1509,18 @@ func Mkdir(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mkdir_trampoline()
-+
-+//go:linkname libc_mkdir libc_mkdir
-+//go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-@@ -966,13 +1529,18 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mkdirat_trampoline()
-+
-+//go:linkname libc_mkdirat libc_mkdirat
-+//go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mkfifo(path string, mode uint32) (err error) {
-@@ -981,13 +1549,18 @@ func Mkfifo(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mkfifo_trampoline()
-+
-+//go:linkname libc_mkfifo libc_mkfifo
-+//go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mknod(path string, mode uint32, dev int) (err error) {
-@@ -996,13 +1569,18 @@ func Mknod(path string, mode uint32, dev int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
-+ _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mknod_trampoline()
-+
-+//go:linkname libc_mknod libc_mknod
-+//go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Open(path string, mode int, perm uint32) (fd int, err error) {
-@@ -1011,7 +1589,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
- if err != nil {
- return
- }
-- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1019,6 +1597,11 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
- return
- }
-
-+func libc_open_trampoline()
-+
-+//go:linkname libc_open libc_open
-+//go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
-@@ -1027,7 +1610,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
- if err != nil {
- return
- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1035,6 +1618,11 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
- return
- }
-
-+func libc_openat_trampoline()
-+
-+//go:linkname libc_openat libc_openat
-+//go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Pathconf(path string, name int) (val int, err error) {
-@@ -1043,7 +1631,7 @@ func Pathconf(path string, name int) (val int, err error) {
- if err != nil {
- return
- }
-- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
- val = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1051,6 +1639,11 @@ func Pathconf(path string, name int) (val int, err error) {
- return
- }
-
-+func libc_pathconf_trampoline()
-+
-+//go:linkname libc_pathconf libc_pathconf
-+//go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Pread(fd int, p []byte, offset int64) (n int, err error) {
-@@ -1060,7 +1653,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1068,6 +1661,11 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
- return
- }
-
-+func libc_pread_trampoline()
-+
-+//go:linkname libc_pread libc_pread
-+//go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-@@ -1077,7 +1675,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1085,6 +1683,11 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
- return
- }
-
-+func libc_pwrite_trampoline()
-+
-+//go:linkname libc_pwrite libc_pwrite
-+//go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func read(fd int, p []byte) (n int, err error) {
-@@ -1094,7 +1697,7 @@ func read(fd int, p []byte) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1102,6 +1705,11 @@ func read(fd int, p []byte) (n int, err error) {
- return
- }
-
-+func libc_read_trampoline()
-+
-+//go:linkname libc_read libc_read
-+//go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Readlink(path string, buf []byte) (n int, err error) {
-@@ -1116,7 +1724,7 @@ func Readlink(path string, buf []byte) (n int, err error) {
- } else {
- _p1 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1124,6 +1732,11 @@ func Readlink(path string, buf []byte) (n int, err error) {
- return
- }
-
-+func libc_readlink_trampoline()
-+
-+//go:linkname libc_readlink libc_readlink
-+//go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-@@ -1138,7 +1751,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
- } else {
- _p1 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1146,6 +1759,11 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
- return
- }
-
-+func libc_readlinkat_trampoline()
-+
-+//go:linkname libc_readlinkat libc_readlinkat
-+//go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Rename(from string, to string) (err error) {
-@@ -1159,13 +1777,18 @@ func Rename(from string, to string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_rename_trampoline()
-+
-+//go:linkname libc_rename libc_rename
-+//go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Renameat(fromfd int, from string, tofd int, to string) (err error) {
-@@ -1179,13 +1802,18 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_renameat_trampoline()
-+
-+//go:linkname libc_renameat libc_renameat
-+//go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Revoke(path string) (err error) {
-@@ -1194,13 +1822,18 @@ func Revoke(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_revoke_trampoline()
-+
-+//go:linkname libc_revoke libc_revoke
-+//go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Rmdir(path string) (err error) {
-@@ -1209,17 +1842,22 @@ func Rmdir(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_rmdir_trampoline()
-+
-+//go:linkname libc_rmdir libc_rmdir
-+//go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-- r0, r1, e1 := Syscall6(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0)
-+ r0, r1, e1 := syscall_syscall6(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0)
- newoffset = int64(int64(r1)<<32 | int64(r0))
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1227,46 +1865,72 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
- return
- }
-
-+func libc_lseek_trampoline()
-+
-+//go:linkname libc_lseek libc_lseek
-+//go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_select_trampoline()
-+
-+//go:linkname libc_select libc_select
-+//go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setegid(egid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setegid_trampoline()
-+
-+//go:linkname libc_setegid libc_setegid
-+//go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Seteuid(euid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_seteuid_trampoline()
-+
-+//go:linkname libc_seteuid libc_seteuid
-+//go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setgid(gid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setgid_trampoline()
-+
-+//go:linkname libc_setgid libc_setgid
-+//go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setlogin(name string) (err error) {
-@@ -1275,77 +1939,112 @@ func Setlogin(name string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setlogin_trampoline()
-+
-+//go:linkname libc_setlogin libc_setlogin
-+//go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setpgid_trampoline()
-+
-+//go:linkname libc_setpgid libc_setpgid
-+//go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-+ _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setpriority_trampoline()
-+
-+//go:linkname libc_setpriority libc_setpriority
-+//go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setprivexec(flag int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setprivexec_trampoline()
-+
-+//go:linkname libc_setprivexec libc_setprivexec
-+//go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setregid(rgid int, egid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setregid_trampoline()
-+
-+//go:linkname libc_setregid libc_setregid
-+//go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setreuid(ruid int, euid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setreuid_trampoline()
-+
-+//go:linkname libc_setreuid libc_setreuid
-+//go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setrlimit(which int, lim *Rlimit) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setrlimit_trampoline()
-+
-+//go:linkname libc_setrlimit libc_setrlimit
-+//go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0)
- pid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1353,55 +2052,40 @@ func Setsid() (pid int, err error) {
- return
- }
-
-+func libc_setsid_trampoline()
-+
-+//go:linkname libc_setsid libc_setsid
-+//go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Settimeofday(tp *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_settimeofday_trampoline()
-
--func Setuid(uid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_settimeofday libc_settimeofday
-+//go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+func Setuid(uid int) (err error) {
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_setuid_trampoline()
-
--func Statfs(path string, stat *Statfs_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_setuid libc_setuid
-+//go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-@@ -1416,13 +2100,18 @@ func Symlink(path string, link string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_symlink_trampoline()
-+
-+//go:linkname libc_symlink libc_symlink
-+//go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-@@ -1436,23 +2125,33 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-+ _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_symlinkat_trampoline()
-+
-+//go:linkname libc_symlinkat libc_symlinkat
-+//go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Sync() (err error) {
-- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_sync_trampoline()
-+
-+//go:linkname libc_sync libc_sync
-+//go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Truncate(path string, length int64) (err error) {
-@@ -1461,21 +2160,31 @@ func Truncate(path string, length int64) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32))
-+ _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_truncate_trampoline()
-+
-+//go:linkname libc_truncate libc_truncate
-+//go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Umask(newmask int) (oldmask int) {
-- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0)
-+ r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0)
- oldmask = int(r0)
- return
- }
-
-+func libc_umask_trampoline()
-+
-+//go:linkname libc_umask libc_umask
-+//go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Undelete(path string) (err error) {
-@@ -1484,13 +2193,18 @@ func Undelete(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_undelete_trampoline()
-+
-+//go:linkname libc_undelete libc_undelete
-+//go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Unlink(path string) (err error) {
-@@ -1499,13 +2213,18 @@ func Unlink(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_unlink_trampoline()
-+
-+//go:linkname libc_unlink libc_unlink
-+//go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Unlinkat(dirfd int, path string, flags int) (err error) {
-@@ -1514,13 +2233,18 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-+ _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_unlinkat_trampoline()
-+
-+//go:linkname libc_unlinkat libc_unlinkat
-+//go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Unmount(path string, flags int) (err error) {
-@@ -1529,13 +2253,18 @@ func Unmount(path string, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_unmount_trampoline()
-+
-+//go:linkname libc_unmount libc_unmount
-+//go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func write(fd int, p []byte) (n int, err error) {
-@@ -1545,7 +2274,7 @@ func write(fd int, p []byte) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1553,10 +2282,15 @@ func write(fd int, p []byte) (n int, err error) {
- return
- }
-
-+func libc_write_trampoline()
-+
-+//go:linkname libc_write libc_write
-+//go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
-- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0)
-+ r0, _, e1 := syscall_syscall9(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0)
- ret = uintptr(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1564,20 +2298,30 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
- return
- }
-
-+func libc_mmap_trampoline()
-+
-+//go:linkname libc_mmap libc_mmap
-+//go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_munmap_trampoline()
-+
-+//go:linkname libc_munmap libc_munmap
-+//go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1588,7 +2332,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1598,8 +2342,23 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-+ _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_ptrace_trampoline()
-+
-+//go:linkname libc_ptrace libc_ptrace
-+//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
-- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
-+ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
- sec = int32(r0)
- usec = int32(r1)
- if e1 != 0 {
-@@ -1607,3 +2366,134 @@ func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
- }
- return
- }
-+
-+func libc_gettimeofday_trampoline()
-+
-+//go:linkname libc_gettimeofday libc_gettimeofday
-+//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_fstat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fstat64_trampoline()
-+
-+//go:linkname libc_fstat64 libc_fstat64
-+//go:cgo_import_dynamic libc_fstat64 fstat64 "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fstatat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fstatat64_trampoline()
-+
-+//go:linkname libc_fstatat64 libc_fstatat64
-+//go:cgo_import_dynamic libc_fstatat64 fstatat64 "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatfs(fd int, stat *Statfs_t) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_fstatfs64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fstatfs64_trampoline()
-+
-+//go:linkname libc_fstatfs64 libc_fstatfs64
-+//go:cgo_import_dynamic libc_fstatfs64 fstatfs64 "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
-+ r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat64_trampoline), uintptr(buf), uintptr(size), uintptr(flags))
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_getfsstat64_trampoline()
-+
-+//go:linkname libc_getfsstat64 libc_getfsstat64
-+//go:cgo_import_dynamic libc_getfsstat64 getfsstat64 "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Lstat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_lstat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_lstat64_trampoline()
-+
-+//go:linkname libc_lstat64 libc_lstat64
-+//go:cgo_import_dynamic libc_lstat64 lstat64 "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Stat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_stat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_stat64_trampoline()
-+
-+//go:linkname libc_stat64 libc_stat64
-+//go:cgo_import_dynamic libc_stat64 stat64 "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Statfs(path string, stat *Statfs_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_statfs64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_statfs64_trampoline()
-+
-+//go:linkname libc_statfs64 libc_statfs64
-+//go:cgo_import_dynamic libc_statfs64 statfs64 "/usr/lib/libSystem.B.dylib"
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s
-new file mode 100644
-index 00000000..6836a412
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s
-@@ -0,0 +1,284 @@
-+// go run mkasm_darwin.go 386
-+// Code generated by the command above; DO NOT EDIT.
-+
-+// +build go1.12
-+
-+#include "textflag.h"
-+TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getgroups(SB)
-+TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setgroups(SB)
-+TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_wait4(SB)
-+TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_accept(SB)
-+TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_bind(SB)
-+TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_connect(SB)
-+TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_socket(SB)
-+TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getsockopt(SB)
-+TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setsockopt(SB)
-+TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpeername(SB)
-+TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getsockname(SB)
-+TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_shutdown(SB)
-+TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_socketpair(SB)
-+TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_recvfrom(SB)
-+TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sendto(SB)
-+TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_recvmsg(SB)
-+TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sendmsg(SB)
-+TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_kevent(SB)
-+TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_utimes(SB)
-+TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_futimes(SB)
-+TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_poll(SB)
-+TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_madvise(SB)
-+TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mlock(SB)
-+TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mlockall(SB)
-+TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mprotect(SB)
-+TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_msync(SB)
-+TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_munlock(SB)
-+TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_munlockall(SB)
-+TEXT ·libc_getattrlist_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getattrlist(SB)
-+TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pipe(SB)
-+TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getxattr(SB)
-+TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fgetxattr(SB)
-+TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setxattr(SB)
-+TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fsetxattr(SB)
-+TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_removexattr(SB)
-+TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fremovexattr(SB)
-+TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_listxattr(SB)
-+TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_flistxattr(SB)
-+TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setattrlist(SB)
-+TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fcntl(SB)
-+TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_kill(SB)
-+TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_ioctl(SB)
-+TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sysctl(SB)
-+TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sendfile(SB)
-+TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_access(SB)
-+TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_adjtime(SB)
-+TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chdir(SB)
-+TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chflags(SB)
-+TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chmod(SB)
-+TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chown(SB)
-+TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chroot(SB)
-+TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_clock_gettime(SB)
-+TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_close(SB)
-+TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_dup(SB)
-+TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_dup2(SB)
-+TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_exchangedata(SB)
-+TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_exit(SB)
-+TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_faccessat(SB)
-+TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchdir(SB)
-+TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchflags(SB)
-+TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchmod(SB)
-+TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchmodat(SB)
-+TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchown(SB)
-+TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchownat(SB)
-+TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_flock(SB)
-+TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fpathconf(SB)
-+TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fsync(SB)
-+TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_ftruncate(SB)
-+TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getdtablesize(SB)
-+TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getegid(SB)
-+TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_geteuid(SB)
-+TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getgid(SB)
-+TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpgid(SB)
-+TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpgrp(SB)
-+TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpid(SB)
-+TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getppid(SB)
-+TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpriority(SB)
-+TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getrlimit(SB)
-+TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getrusage(SB)
-+TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getsid(SB)
-+TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getuid(SB)
-+TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_issetugid(SB)
-+TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_kqueue(SB)
-+TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_lchown(SB)
-+TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_link(SB)
-+TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_linkat(SB)
-+TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_listen(SB)
-+TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mkdir(SB)
-+TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mkdirat(SB)
-+TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mkfifo(SB)
-+TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mknod(SB)
-+TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_open(SB)
-+TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_openat(SB)
-+TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pathconf(SB)
-+TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pread(SB)
-+TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pwrite(SB)
-+TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_read(SB)
-+TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_readlink(SB)
-+TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_readlinkat(SB)
-+TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_rename(SB)
-+TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_renameat(SB)
-+TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_revoke(SB)
-+TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_rmdir(SB)
-+TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_lseek(SB)
-+TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_select(SB)
-+TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setegid(SB)
-+TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_seteuid(SB)
-+TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setgid(SB)
-+TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setlogin(SB)
-+TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setpgid(SB)
-+TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setpriority(SB)
-+TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setprivexec(SB)
-+TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setregid(SB)
-+TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setreuid(SB)
-+TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setrlimit(SB)
-+TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setsid(SB)
-+TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_settimeofday(SB)
-+TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setuid(SB)
-+TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_symlink(SB)
-+TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_symlinkat(SB)
-+TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sync(SB)
-+TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_truncate(SB)
-+TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_umask(SB)
-+TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_undelete(SB)
-+TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_unlink(SB)
-+TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_unlinkat(SB)
-+TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_unmount(SB)
-+TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_write(SB)
-+TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mmap(SB)
-+TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_munmap(SB)
-+TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_ptrace(SB)
-+TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_gettimeofday(SB)
-+TEXT ·libc_fstat64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fstat64(SB)
-+TEXT ·libc_fstatat64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fstatat64(SB)
-+TEXT ·libc_fstatfs64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fstatfs64(SB)
-+TEXT ·libc_getfsstat64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getfsstat64(SB)
-+TEXT ·libc_lstat64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_lstat64(SB)
-+TEXT ·libc_stat64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_stat64(SB)
-+TEXT ·libc_statfs64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_statfs64(SB)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_11.go
-similarity index 85%
-copy from vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
-copy to vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_11.go
-index 07c6ebc9..f8e5c37c 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_11.go
-@@ -1,7 +1,7 @@
--// mksyscall.pl -tags darwin,arm64 syscall_bsd.go syscall_darwin.go syscall_darwin_arm64.go
-+// go run mksyscall.go -tags darwin,amd64,!go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_amd64.1_11.go syscall_darwin_amd64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build darwin,arm64
-+// +build darwin,amd64,!go1.12
-
- package unix
-
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,8 +350,8 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := Syscall6(SYS_GETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -388,6 +372,161 @@ func pipe() (r int, w int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func removexattr(path string, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fremovexattr(fd int, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
-+ r0, _, e1 := Syscall6(SYS_FLISTXATTR, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := Syscall6(SYS_SETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fcntl(fd int, cmd int, arg int) (val int, err error) {
-+ r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-+ val = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func kill(pid int, signum int, posix int) (err error) {
- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
- if e1 != 0 {
-@@ -408,6 +547,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
-+ _, _, e1 := Syscall6(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -672,26 +837,6 @@ func Fpathconf(fd int, name int) (val int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Fsync(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -712,23 +857,6 @@ func Ftruncate(fd int, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Getdtablesize() (size int) {
- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
- size = int(r0)
-@@ -930,21 +1058,6 @@ func Listen(s int, backlog int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Lstat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Mkdir(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1229,8 +1342,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1375,36 +1489,6 @@ func Setuid(uid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Statfs(path string, stat *Statfs_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Symlink(path string, link string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1598,6 +1682,33 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-+ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
- sec = int64(r0)
-@@ -1607,3 +1718,94 @@ func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
- }
- return
- }
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatfs(fd int, stat *Statfs_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_GETFSSTAT64, uintptr(buf), uintptr(size), uintptr(flags))
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Lstat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Stat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Statfs(path string, stat *Statfs_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go
-new file mode 100644
-index 00000000..314042a9
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go
-@@ -0,0 +1,41 @@
-+// go run mksyscall.go -tags darwin,amd64,go1.13 syscall_darwin.1_13.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build darwin,amd64,go1.13
-+
-+package unix
-+
-+import (
-+ "syscall"
-+ "unsafe"
-+)
-+
-+var _ syscall.Errno
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func closedir(dir uintptr) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_closedir_trampoline()
-+
-+//go:linkname libc_closedir libc_closedir
-+//go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) {
-+ r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result)))
-+ res = Errno(r0)
-+ return
-+}
-+
-+func libc_readdir_r_trampoline()
-+
-+//go:linkname libc_readdir_r libc_readdir_r
-+//go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib"
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s
-new file mode 100644
-index 00000000..d671e831
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s
-@@ -0,0 +1,12 @@
-+// go run mkasm_darwin.go amd64
-+// Code generated by the command above; DO NOT EDIT.
-+
-+// +build go1.13
-+
-+#include "textflag.h"
-+TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fdopendir(SB)
-+TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_closedir(SB)
-+TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_readdir_r(SB)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
-index 5f1f6bfe..50d6437e 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
-@@ -1,7 +1,7 @@
--// mksyscall.pl -tags darwin,amd64 syscall_bsd.go syscall_darwin.go syscall_darwin_amd64.go
-+// go run mksyscall.go -tags darwin,amd64,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_amd64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build darwin,amd64
-+// +build darwin,amd64,go1.12
-
- package unix
-
-@@ -15,7 +15,7 @@ var _ syscall.Errno
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -23,20 +23,30 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
- return
- }
-
-+func libc_getgroups_trampoline()
-+
-+//go:linkname libc_getgroups libc_getgroups
-+//go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func setgroups(ngid int, gid *_Gid_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setgroups_trampoline()
-+
-+//go:linkname libc_setgroups libc_setgroups
-+//go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
- wpid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -44,10 +54,15 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
- return
- }
-
-+func libc_wait4_trampoline()
-+
-+//go:linkname libc_wait4 libc_wait4
-+//go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -55,30 +70,45 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
- return
- }
-
-+func libc_accept_trampoline()
-+
-+//go:linkname libc_accept libc_accept
-+//go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen))
-+ _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_bind_trampoline()
-+
-+//go:linkname libc_bind libc_bind
-+//go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen))
-+ _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_connect_trampoline()
-+
-+//go:linkname libc_connect libc_connect
-+//go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func socket(domain int, typ int, proto int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto))
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto))
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -86,66 +116,101 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
- return
- }
-
-+func libc_socket_trampoline()
-+
-+//go:linkname libc_socket libc_socket
-+//go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
-- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getsockopt_trampoline()
-+
-+//go:linkname libc_getsockopt libc_getsockopt
-+//go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setsockopt_trampoline()
-+
-+//go:linkname libc_setsockopt libc_setsockopt
-+//go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getpeername_trampoline()
-+
-+//go:linkname libc_getpeername libc_getpeername
-+//go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getsockname_trampoline()
-+
-+//go:linkname libc_getsockname libc_getsockname
-+//go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Shutdown(s int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_shutdown_trampoline()
-+
-+//go:linkname libc_shutdown libc_shutdown
-+//go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
-- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
-+ _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_socketpair_trampoline()
-+
-+//go:linkname libc_socketpair libc_socketpair
-+//go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
-@@ -155,7 +220,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -163,6 +228,11 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
- return
- }
-
-+func libc_recvfrom_trampoline()
-+
-+//go:linkname libc_recvfrom libc_recvfrom
-+//go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
-@@ -172,17 +242,22 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
-+ _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_sendto_trampoline()
-+
-+//go:linkname libc_sendto libc_sendto
-+//go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -190,10 +265,15 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- return
- }
-
-+func libc_recvmsg_trampoline()
-+
-+//go:linkname libc_recvmsg libc_recvmsg
-+//go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -201,10 +281,15 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- return
- }
-
-+func libc_sendmsg_trampoline()
-+
-+//go:linkname libc_sendmsg libc_sendmsg
-+//go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -212,21 +297,10 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_kevent_trampoline()
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_kevent libc_kevent
-+//go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-@@ -236,34 +310,49 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_utimes_trampoline()
-+
-+//go:linkname libc_utimes libc_utimes
-+//go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func futimes(fd int, timeval *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_futimes_trampoline()
-+
-+//go:linkname libc_futimes libc_futimes
-+//go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_poll_trampoline()
-+
-+//go:linkname libc_poll libc_poll
-+//go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Madvise(b []byte, behav int) (err error) {
-@@ -273,13 +362,18 @@ func Madvise(b []byte, behav int) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav))
-+ _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_madvise_trampoline()
-+
-+//go:linkname libc_madvise libc_madvise
-+//go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mlock(b []byte) (err error) {
-@@ -289,23 +383,33 @@ func Mlock(b []byte) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mlock_trampoline()
-+
-+//go:linkname libc_mlock libc_mlock
-+//go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mlockall_trampoline()
-+
-+//go:linkname libc_mlockall libc_mlockall
-+//go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mprotect(b []byte, prot int) (err error) {
-@@ -315,13 +419,18 @@ func Mprotect(b []byte, prot int) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-+ _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mprotect_trampoline()
-+
-+//go:linkname libc_mprotect libc_mprotect
-+//go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Msync(b []byte, flags int) (err error) {
-@@ -331,13 +440,18 @@ func Msync(b []byte, flags int) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-+ _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_msync_trampoline()
-+
-+//go:linkname libc_msync libc_msync
-+//go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Munlock(b []byte) (err error) {
-@@ -347,37 +461,52 @@ func Munlock(b []byte) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_munlock_trampoline()
-+
-+//go:linkname libc_munlock libc_munlock
-+//go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_munlockall_trampoline()
-+
-+//go:linkname libc_munlockall libc_munlockall
-+//go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := syscall_syscall6(funcPC(libc_getattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getattrlist_trampoline()
-+
-+//go:linkname libc_getattrlist libc_getattrlist
-+//go:cgo_import_dynamic libc_getattrlist getattrlist "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func pipe() (r int, w int, err error) {
-- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
-+ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0)
- r = int(r0)
- w = int(r1)
- if e1 != 0 {
-@@ -386,26 +515,282 @@ func pipe() (r int, w int, err error) {
- return
- }
-
-+func libc_pipe_trampoline()
-+
-+//go:linkname libc_pipe libc_pipe
-+//go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_getxattr_trampoline()
-+
-+//go:linkname libc_getxattr libc_getxattr
-+//go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fgetxattr_trampoline()
-+
-+//go:linkname libc_fgetxattr libc_fgetxattr
-+//go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_setxattr_trampoline()
-+
-+//go:linkname libc_setxattr libc_setxattr
-+//go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fsetxattr_trampoline()
-+
-+//go:linkname libc_fsetxattr libc_fsetxattr
-+//go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func removexattr(path string, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_removexattr_trampoline()
-+
-+//go:linkname libc_removexattr libc_removexattr
-+//go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fremovexattr(fd int, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fremovexattr_trampoline()
-+
-+//go:linkname libc_fremovexattr libc_fremovexattr
-+//go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_listxattr_trampoline()
-+
-+//go:linkname libc_listxattr libc_listxattr
-+//go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_flistxattr_trampoline()
-+
-+//go:linkname libc_flistxattr libc_flistxattr
-+//go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_setattrlist_trampoline()
-+
-+//go:linkname libc_setattrlist libc_setattrlist
-+//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fcntl(fd int, cmd int, arg int) (val int, err error) {
-+ r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg))
-+ val = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fcntl_trampoline()
-+
-+//go:linkname libc_fcntl libc_fcntl
-+//go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func kill(pid int, signum int, posix int) (err error) {
-- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
-+ _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_kill_trampoline()
-+
-+//go:linkname libc_kill libc_kill
-+//go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-+ _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_ioctl_trampoline()
-+
-+//go:linkname libc_ioctl libc_ioctl
-+//go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_sysctl_trampoline()
-+
-+//go:linkname libc_sysctl libc_sysctl
-+//go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
-+ _, _, e1 := syscall_syscall6(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_sendfile_trampoline()
-+
-+//go:linkname libc_sendfile libc_sendfile
-+//go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Access(path string, mode uint32) (err error) {
-@@ -414,23 +799,33 @@ func Access(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_access_trampoline()
-+
-+//go:linkname libc_access libc_access
-+//go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_adjtime_trampoline()
-+
-+//go:linkname libc_adjtime libc_adjtime
-+//go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chdir(path string) (err error) {
-@@ -439,13 +834,18 @@ func Chdir(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chdir_trampoline()
-+
-+//go:linkname libc_chdir libc_chdir
-+//go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chflags(path string, flags int) (err error) {
-@@ -454,13 +854,18 @@ func Chflags(path string, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chflags_trampoline()
-+
-+//go:linkname libc_chflags libc_chflags
-+//go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chmod(path string, mode uint32) (err error) {
-@@ -469,13 +874,18 @@ func Chmod(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chmod_trampoline()
-+
-+//go:linkname libc_chmod libc_chmod
-+//go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chown(path string, uid int, gid int) (err error) {
-@@ -484,13 +894,18 @@ func Chown(path string, uid int, gid int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
-+ _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chown_trampoline()
-+
-+//go:linkname libc_chown libc_chown
-+//go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chroot(path string) (err error) {
-@@ -499,27 +914,52 @@ func Chroot(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_chroot_trampoline()
-+
-+//go:linkname libc_chroot libc_chroot
-+//go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ClockGettime(clockid int32, time *Timespec) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_clock_gettime_trampoline()
-+
-+//go:linkname libc_clock_gettime libc_clock_gettime
-+//go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_close_trampoline()
-+
-+//go:linkname libc_close libc_close
-+//go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Dup(fd int) (nfd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0)
- nfd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -527,16 +967,26 @@ func Dup(fd int) (nfd int, err error) {
- return
- }
-
-+func libc_dup_trampoline()
-+
-+//go:linkname libc_dup libc_dup
-+//go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Dup2(from int, to int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_dup2_trampoline()
-+
-+//go:linkname libc_dup2 libc_dup2
-+//go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Exchangedata(path1 string, path2 string, options int) (err error) {
-@@ -550,20 +1000,30 @@ func Exchangedata(path1 string, path2 string, options int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
-+ _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_exchangedata_trampoline()
-+
-+//go:linkname libc_exchangedata libc_exchangedata
-+//go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Exit(code int) {
-- Syscall(SYS_EXIT, uintptr(code), 0, 0)
-+ syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0)
- return
- }
-
-+func libc_exit_trampoline()
-+
-+//go:linkname libc_exit libc_exit
-+//go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-@@ -572,43 +1032,63 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_faccessat_trampoline()
-+
-+//go:linkname libc_faccessat libc_faccessat
-+//go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchdir_trampoline()
-+
-+//go:linkname libc_fchdir libc_fchdir
-+//go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchflags(fd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchflags_trampoline()
-+
-+//go:linkname libc_fchflags libc_fchflags
-+//go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchmod_trampoline()
-+
-+//go:linkname libc_fchmod libc_fchmod
-+//go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-@@ -617,23 +1097,33 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchmodat_trampoline()
-+
-+//go:linkname libc_fchmodat libc_fchmodat
-+//go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchown(fd int, uid int, gid int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchown_trampoline()
-+
-+//go:linkname libc_fchown libc_fchown
-+//go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-@@ -642,27 +1132,37 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchownat_trampoline()
-+
-+//go:linkname libc_fchownat libc_fchownat
-+//go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_flock_trampoline()
-+
-+//go:linkname libc_flock libc_flock
-+//go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fpathconf(fd int, name int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0)
- val = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -670,99 +1170,97 @@ func Fpathconf(fd int, name int) (val int, err error) {
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_fpathconf_trampoline()
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_fpathconf libc_fpathconf
-+//go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+func Fsync(fd int) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_fsync_trampoline()
-
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_fsync libc_fsync
-+//go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Ftruncate(fd int, length int64) (err error) {
-- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_ftruncate_trampoline()
-
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_ftruncate libc_ftruncate
-+//go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getdtablesize() (size int) {
-- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
-+ r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0)
- size = int(r0)
- return
- }
-
-+func libc_getdtablesize_trampoline()
-+
-+//go:linkname libc_getdtablesize libc_getdtablesize
-+//go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0)
- egid = int(r0)
- return
- }
-
-+func libc_getegid_trampoline()
-+
-+//go:linkname libc_getegid libc_getegid
-+//go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0)
- uid = int(r0)
- return
- }
-
-+func libc_geteuid_trampoline()
-+
-+//go:linkname libc_geteuid libc_geteuid
-+//go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0)
- gid = int(r0)
- return
- }
-
-+func libc_getgid_trampoline()
-+
-+//go:linkname libc_getgid libc_getgid
-+//go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0)
- pgid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -770,34 +1268,54 @@ func Getpgid(pid int) (pgid int, err error) {
- return
- }
-
-+func libc_getpgid_trampoline()
-+
-+//go:linkname libc_getpgid libc_getpgid
-+//go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpgrp() (pgrp int) {
-- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0)
- pgrp = int(r0)
- return
- }
-
-+func libc_getpgrp_trampoline()
-+
-+//go:linkname libc_getpgrp libc_getpgrp
-+//go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0)
- pid = int(r0)
- return
- }
-
-+func libc_getpid_trampoline()
-+
-+//go:linkname libc_getpid libc_getpid
-+//go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0)
- ppid = int(r0)
- return
- }
-
-+func libc_getppid_trampoline()
-+
-+//go:linkname libc_getppid libc_getppid
-+//go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0)
- prio = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -805,30 +1323,45 @@ func Getpriority(which int, who int) (prio int, err error) {
- return
- }
-
-+func libc_getpriority_trampoline()
-+
-+//go:linkname libc_getpriority libc_getpriority
-+//go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getrlimit(which int, lim *Rlimit) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getrlimit_trampoline()
-+
-+//go:linkname libc_getrlimit libc_getrlimit
-+//go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getrusage_trampoline()
-+
-+//go:linkname libc_getrusage libc_getrusage
-+//go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0)
- sid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -836,26 +1369,41 @@ func Getsid(pid int) (sid int, err error) {
- return
- }
-
-+func libc_getsid_trampoline()
-+
-+//go:linkname libc_getsid libc_getsid
-+//go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0)
- uid = int(r0)
- return
- }
-
-+func libc_getuid_trampoline()
-+
-+//go:linkname libc_getuid libc_getuid
-+//go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Issetugid() (tainted bool) {
-- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0)
- tainted = bool(r0 != 0)
- return
- }
-
-+func libc_issetugid_trampoline()
-+
-+//go:linkname libc_issetugid libc_issetugid
-+//go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Kqueue() (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0)
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -863,6 +1411,11 @@ func Kqueue() (fd int, err error) {
- return
- }
-
-+func libc_kqueue_trampoline()
-+
-+//go:linkname libc_kqueue libc_kqueue
-+//go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Lchown(path string, uid int, gid int) (err error) {
-@@ -871,13 +1424,18 @@ func Lchown(path string, uid int, gid int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
-+ _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_lchown_trampoline()
-+
-+//go:linkname libc_lchown libc_lchown
-+//go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Link(path string, link string) (err error) {
-@@ -891,13 +1449,18 @@ func Link(path string, link string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_link_trampoline()
-+
-+//go:linkname libc_link libc_link
-+//go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
-@@ -911,37 +1474,32 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_linkat_trampoline()
-+
-+//go:linkname libc_linkat libc_linkat
-+//go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Listen(s int, backlog int) (err error) {
-- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_listen_trampoline()
-
--func Lstat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_listen libc_listen
-+//go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-@@ -951,13 +1509,18 @@ func Mkdir(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mkdir_trampoline()
-+
-+//go:linkname libc_mkdir libc_mkdir
-+//go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-@@ -966,13 +1529,18 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mkdirat_trampoline()
-+
-+//go:linkname libc_mkdirat libc_mkdirat
-+//go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mkfifo(path string, mode uint32) (err error) {
-@@ -981,13 +1549,18 @@ func Mkfifo(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mkfifo_trampoline()
-+
-+//go:linkname libc_mkfifo libc_mkfifo
-+//go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mknod(path string, mode uint32, dev int) (err error) {
-@@ -996,13 +1569,18 @@ func Mknod(path string, mode uint32, dev int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
-+ _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mknod_trampoline()
-+
-+//go:linkname libc_mknod libc_mknod
-+//go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Open(path string, mode int, perm uint32) (fd int, err error) {
-@@ -1011,7 +1589,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
- if err != nil {
- return
- }
-- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1019,6 +1597,11 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
- return
- }
-
-+func libc_open_trampoline()
-+
-+//go:linkname libc_open libc_open
-+//go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
-@@ -1027,7 +1610,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
- if err != nil {
- return
- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1035,6 +1618,11 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
- return
- }
-
-+func libc_openat_trampoline()
-+
-+//go:linkname libc_openat libc_openat
-+//go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Pathconf(path string, name int) (val int, err error) {
-@@ -1043,7 +1631,7 @@ func Pathconf(path string, name int) (val int, err error) {
- if err != nil {
- return
- }
-- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
- val = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1051,6 +1639,11 @@ func Pathconf(path string, name int) (val int, err error) {
- return
- }
-
-+func libc_pathconf_trampoline()
-+
-+//go:linkname libc_pathconf libc_pathconf
-+//go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Pread(fd int, p []byte, offset int64) (n int, err error) {
-@@ -1060,7 +1653,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1068,6 +1661,11 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
- return
- }
-
-+func libc_pread_trampoline()
-+
-+//go:linkname libc_pread libc_pread
-+//go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-@@ -1077,7 +1675,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1085,6 +1683,11 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
- return
- }
-
-+func libc_pwrite_trampoline()
-+
-+//go:linkname libc_pwrite libc_pwrite
-+//go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func read(fd int, p []byte) (n int, err error) {
-@@ -1094,7 +1697,7 @@ func read(fd int, p []byte) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1102,6 +1705,11 @@ func read(fd int, p []byte) (n int, err error) {
- return
- }
-
-+func libc_read_trampoline()
-+
-+//go:linkname libc_read libc_read
-+//go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Readlink(path string, buf []byte) (n int, err error) {
-@@ -1116,7 +1724,7 @@ func Readlink(path string, buf []byte) (n int, err error) {
- } else {
- _p1 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1124,6 +1732,11 @@ func Readlink(path string, buf []byte) (n int, err error) {
- return
- }
-
-+func libc_readlink_trampoline()
-+
-+//go:linkname libc_readlink libc_readlink
-+//go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-@@ -1138,7 +1751,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
- } else {
- _p1 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1146,6 +1759,11 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
- return
- }
-
-+func libc_readlinkat_trampoline()
-+
-+//go:linkname libc_readlinkat libc_readlinkat
-+//go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Rename(from string, to string) (err error) {
-@@ -1159,13 +1777,18 @@ func Rename(from string, to string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_rename_trampoline()
-+
-+//go:linkname libc_rename libc_rename
-+//go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Renameat(fromfd int, from string, tofd int, to string) (err error) {
-@@ -1179,13 +1802,18 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_renameat_trampoline()
-+
-+//go:linkname libc_renameat libc_renameat
-+//go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Revoke(path string) (err error) {
-@@ -1194,13 +1822,18 @@ func Revoke(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_revoke_trampoline()
-+
-+//go:linkname libc_revoke libc_revoke
-+//go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Rmdir(path string) (err error) {
-@@ -1209,17 +1842,22 @@ func Rmdir(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_rmdir_trampoline()
-+
-+//go:linkname libc_rmdir libc_rmdir
-+//go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(whence))
- newoffset = int64(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1227,46 +1865,72 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
- return
- }
-
-+func libc_lseek_trampoline()
-+
-+//go:linkname libc_lseek libc_lseek
-+//go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_select_trampoline()
-+
-+//go:linkname libc_select libc_select
-+//go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setegid(egid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setegid_trampoline()
-+
-+//go:linkname libc_setegid libc_setegid
-+//go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Seteuid(euid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_seteuid_trampoline()
-+
-+//go:linkname libc_seteuid libc_seteuid
-+//go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setgid(gid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setgid_trampoline()
-+
-+//go:linkname libc_setgid libc_setgid
-+//go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setlogin(name string) (err error) {
-@@ -1275,77 +1939,112 @@ func Setlogin(name string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setlogin_trampoline()
-+
-+//go:linkname libc_setlogin libc_setlogin
-+//go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setpgid_trampoline()
-+
-+//go:linkname libc_setpgid libc_setpgid
-+//go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-+ _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setpriority_trampoline()
-+
-+//go:linkname libc_setpriority libc_setpriority
-+//go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setprivexec(flag int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setprivexec_trampoline()
-+
-+//go:linkname libc_setprivexec libc_setprivexec
-+//go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setregid(rgid int, egid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setregid_trampoline()
-+
-+//go:linkname libc_setregid libc_setregid
-+//go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setreuid(ruid int, euid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setreuid_trampoline()
-+
-+//go:linkname libc_setreuid libc_setreuid
-+//go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setrlimit(which int, lim *Rlimit) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setrlimit_trampoline()
-+
-+//go:linkname libc_setrlimit libc_setrlimit
-+//go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0)
- pid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1353,55 +2052,40 @@ func Setsid() (pid int, err error) {
- return
- }
-
-+func libc_setsid_trampoline()
-+
-+//go:linkname libc_setsid libc_setsid
-+//go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Settimeofday(tp *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_settimeofday_trampoline()
-
--func Setuid(uid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_settimeofday libc_settimeofday
-+//go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+func Setuid(uid int) (err error) {
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_setuid_trampoline()
-
--func Statfs(path string, stat *Statfs_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_setuid libc_setuid
-+//go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-@@ -1416,13 +2100,18 @@ func Symlink(path string, link string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_symlink_trampoline()
-+
-+//go:linkname libc_symlink libc_symlink
-+//go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-@@ -1436,23 +2125,33 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-+ _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_symlinkat_trampoline()
-+
-+//go:linkname libc_symlinkat libc_symlinkat
-+//go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Sync() (err error) {
-- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_sync_trampoline()
-+
-+//go:linkname libc_sync libc_sync
-+//go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Truncate(path string, length int64) (err error) {
-@@ -1461,21 +2160,31 @@ func Truncate(path string, length int64) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_truncate_trampoline()
-+
-+//go:linkname libc_truncate libc_truncate
-+//go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Umask(newmask int) (oldmask int) {
-- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0)
-+ r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0)
- oldmask = int(r0)
- return
- }
-
-+func libc_umask_trampoline()
-+
-+//go:linkname libc_umask libc_umask
-+//go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Undelete(path string) (err error) {
-@@ -1484,13 +2193,18 @@ func Undelete(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_undelete_trampoline()
-+
-+//go:linkname libc_undelete libc_undelete
-+//go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Unlink(path string) (err error) {
-@@ -1499,13 +2213,18 @@ func Unlink(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_unlink_trampoline()
-+
-+//go:linkname libc_unlink libc_unlink
-+//go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Unlinkat(dirfd int, path string, flags int) (err error) {
-@@ -1514,13 +2233,18 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-+ _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_unlinkat_trampoline()
-+
-+//go:linkname libc_unlinkat libc_unlinkat
-+//go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Unmount(path string, flags int) (err error) {
-@@ -1529,13 +2253,18 @@ func Unmount(path string, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_unmount_trampoline()
-+
-+//go:linkname libc_unmount libc_unmount
-+//go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func write(fd int, p []byte) (n int, err error) {
-@@ -1545,7 +2274,7 @@ func write(fd int, p []byte) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1553,10 +2282,15 @@ func write(fd int, p []byte) (n int, err error) {
- return
- }
-
-+func libc_write_trampoline()
-+
-+//go:linkname libc_write libc_write
-+//go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
-- r0, _, e1 := Syscall6(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos))
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos))
- ret = uintptr(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1564,20 +2298,30 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
- return
- }
-
-+func libc_mmap_trampoline()
-+
-+//go:linkname libc_mmap libc_mmap
-+//go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_munmap_trampoline()
-+
-+//go:linkname libc_munmap libc_munmap
-+//go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1588,7 +2332,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1598,8 +2342,23 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-+ _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_ptrace_trampoline()
-+
-+//go:linkname libc_ptrace libc_ptrace
-+//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
-- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
-+ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
- sec = int64(r0)
- usec = int32(r1)
- if e1 != 0 {
-@@ -1607,3 +2366,134 @@ func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
- }
- return
- }
-+
-+func libc_gettimeofday_trampoline()
-+
-+//go:linkname libc_gettimeofday libc_gettimeofday
-+//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_fstat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fstat64_trampoline()
-+
-+//go:linkname libc_fstat64 libc_fstat64
-+//go:cgo_import_dynamic libc_fstat64 fstat64 "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fstatat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fstatat64_trampoline()
-+
-+//go:linkname libc_fstatat64 libc_fstatat64
-+//go:cgo_import_dynamic libc_fstatat64 fstatat64 "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatfs(fd int, stat *Statfs_t) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_fstatfs64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fstatfs64_trampoline()
-+
-+//go:linkname libc_fstatfs64 libc_fstatfs64
-+//go:cgo_import_dynamic libc_fstatfs64 fstatfs64 "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
-+ r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat64_trampoline), uintptr(buf), uintptr(size), uintptr(flags))
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_getfsstat64_trampoline()
-+
-+//go:linkname libc_getfsstat64 libc_getfsstat64
-+//go:cgo_import_dynamic libc_getfsstat64 getfsstat64 "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Lstat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_lstat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_lstat64_trampoline()
-+
-+//go:linkname libc_lstat64 libc_lstat64
-+//go:cgo_import_dynamic libc_lstat64 lstat64 "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Stat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_stat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_stat64_trampoline()
-+
-+//go:linkname libc_stat64 libc_stat64
-+//go:cgo_import_dynamic libc_stat64 stat64 "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Statfs(path string, stat *Statfs_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_statfs64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_statfs64_trampoline()
-+
-+//go:linkname libc_statfs64 libc_statfs64
-+//go:cgo_import_dynamic libc_statfs64 statfs64 "/usr/lib/libSystem.B.dylib"
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s
-new file mode 100644
-index 00000000..a3fdf099
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s
-@@ -0,0 +1,284 @@
-+// go run mkasm_darwin.go amd64
-+// Code generated by the command above; DO NOT EDIT.
-+
-+// +build go1.12
-+
-+#include "textflag.h"
-+TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getgroups(SB)
-+TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setgroups(SB)
-+TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_wait4(SB)
-+TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_accept(SB)
-+TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_bind(SB)
-+TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_connect(SB)
-+TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_socket(SB)
-+TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getsockopt(SB)
-+TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setsockopt(SB)
-+TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpeername(SB)
-+TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getsockname(SB)
-+TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_shutdown(SB)
-+TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_socketpair(SB)
-+TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_recvfrom(SB)
-+TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sendto(SB)
-+TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_recvmsg(SB)
-+TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sendmsg(SB)
-+TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_kevent(SB)
-+TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_utimes(SB)
-+TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_futimes(SB)
-+TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_poll(SB)
-+TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_madvise(SB)
-+TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mlock(SB)
-+TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mlockall(SB)
-+TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mprotect(SB)
-+TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_msync(SB)
-+TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_munlock(SB)
-+TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_munlockall(SB)
-+TEXT ·libc_getattrlist_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getattrlist(SB)
-+TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pipe(SB)
-+TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getxattr(SB)
-+TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fgetxattr(SB)
-+TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setxattr(SB)
-+TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fsetxattr(SB)
-+TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_removexattr(SB)
-+TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fremovexattr(SB)
-+TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_listxattr(SB)
-+TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_flistxattr(SB)
-+TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setattrlist(SB)
-+TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fcntl(SB)
-+TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_kill(SB)
-+TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_ioctl(SB)
-+TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sysctl(SB)
-+TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sendfile(SB)
-+TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_access(SB)
-+TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_adjtime(SB)
-+TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chdir(SB)
-+TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chflags(SB)
-+TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chmod(SB)
-+TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chown(SB)
-+TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chroot(SB)
-+TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_clock_gettime(SB)
-+TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_close(SB)
-+TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_dup(SB)
-+TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_dup2(SB)
-+TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_exchangedata(SB)
-+TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_exit(SB)
-+TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_faccessat(SB)
-+TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchdir(SB)
-+TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchflags(SB)
-+TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchmod(SB)
-+TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchmodat(SB)
-+TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchown(SB)
-+TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchownat(SB)
-+TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_flock(SB)
-+TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fpathconf(SB)
-+TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fsync(SB)
-+TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_ftruncate(SB)
-+TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getdtablesize(SB)
-+TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getegid(SB)
-+TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_geteuid(SB)
-+TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getgid(SB)
-+TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpgid(SB)
-+TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpgrp(SB)
-+TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpid(SB)
-+TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getppid(SB)
-+TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpriority(SB)
-+TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getrlimit(SB)
-+TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getrusage(SB)
-+TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getsid(SB)
-+TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getuid(SB)
-+TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_issetugid(SB)
-+TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_kqueue(SB)
-+TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_lchown(SB)
-+TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_link(SB)
-+TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_linkat(SB)
-+TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_listen(SB)
-+TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mkdir(SB)
-+TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mkdirat(SB)
-+TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mkfifo(SB)
-+TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mknod(SB)
-+TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_open(SB)
-+TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_openat(SB)
-+TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pathconf(SB)
-+TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pread(SB)
-+TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pwrite(SB)
-+TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_read(SB)
-+TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_readlink(SB)
-+TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_readlinkat(SB)
-+TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_rename(SB)
-+TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_renameat(SB)
-+TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_revoke(SB)
-+TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_rmdir(SB)
-+TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_lseek(SB)
-+TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_select(SB)
-+TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setegid(SB)
-+TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_seteuid(SB)
-+TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setgid(SB)
-+TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setlogin(SB)
-+TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setpgid(SB)
-+TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setpriority(SB)
-+TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setprivexec(SB)
-+TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setregid(SB)
-+TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setreuid(SB)
-+TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setrlimit(SB)
-+TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setsid(SB)
-+TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_settimeofday(SB)
-+TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setuid(SB)
-+TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_symlink(SB)
-+TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_symlinkat(SB)
-+TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sync(SB)
-+TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_truncate(SB)
-+TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_umask(SB)
-+TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_undelete(SB)
-+TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_unlink(SB)
-+TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_unlinkat(SB)
-+TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_unmount(SB)
-+TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_write(SB)
-+TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mmap(SB)
-+TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_munmap(SB)
-+TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_ptrace(SB)
-+TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_gettimeofday(SB)
-+TEXT ·libc_fstat64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fstat64(SB)
-+TEXT ·libc_fstatat64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fstatat64(SB)
-+TEXT ·libc_fstatfs64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fstatfs64(SB)
-+TEXT ·libc_getfsstat64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getfsstat64(SB)
-+TEXT ·libc_lstat64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_lstat64(SB)
-+TEXT ·libc_stat64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_stat64(SB)
-+TEXT ·libc_statfs64_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_statfs64(SB)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_11.go
-similarity index 85%
-copy from vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
-copy to vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_11.go
-index 7a409745..cea04e04 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_11.go
-@@ -1,7 +1,7 @@
--// mksyscall.pl -tags darwin,arm syscall_bsd.go syscall_darwin.go syscall_darwin_arm.go
-+// go run mksyscall.go -l32 -tags darwin,arm,!go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_arm.1_11.go syscall_darwin_arm.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build darwin,arm
-+// +build darwin,arm,!go1.12
-
- package unix
-
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,8 +350,8 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := Syscall6(SYS_GETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -388,6 +372,161 @@ func pipe() (r int, w int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func removexattr(path string, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fremovexattr(fd int, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
-+ r0, _, e1 := Syscall6(SYS_FLISTXATTR, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := Syscall6(SYS_SETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fcntl(fd int, cmd int, arg int) (val int, err error) {
-+ r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-+ val = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func kill(pid int, signum int, posix int) (err error) {
- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
- if e1 != 0 {
-@@ -408,6 +547,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
-+ _, _, e1 := Syscall9(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -672,26 +837,6 @@ func Fpathconf(fd int, name int) (val int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Fsync(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -712,23 +857,6 @@ func Ftruncate(fd int, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Getdtablesize() (size int) {
- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
- size = int(r0)
-@@ -930,21 +1058,6 @@ func Listen(s int, backlog int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Lstat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Mkdir(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1229,8 +1342,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1375,36 +1489,6 @@ func Setuid(uid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Statfs(path string, stat *Statfs_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Symlink(path string, link string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1607,3 +1691,94 @@ func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
- }
- return
- }
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatfs(fd int, stat *Statfs_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_GETFSSTAT, uintptr(buf), uintptr(size), uintptr(flags))
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Lstat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Stat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Statfs(path string, stat *Statfs_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go
-new file mode 100644
-index 00000000..f519ce9a
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go
-@@ -0,0 +1,41 @@
-+// go run mksyscall.go -l32 -tags darwin,arm,go1.13 syscall_darwin.1_13.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build darwin,arm,go1.13
-+
-+package unix
-+
-+import (
-+ "syscall"
-+ "unsafe"
-+)
-+
-+var _ syscall.Errno
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func closedir(dir uintptr) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_closedir_trampoline()
-+
-+//go:linkname libc_closedir libc_closedir
-+//go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) {
-+ r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result)))
-+ res = Errno(r0)
-+ return
-+}
-+
-+func libc_readdir_r_trampoline()
-+
-+//go:linkname libc_readdir_r libc_readdir_r
-+//go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib"
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s
-new file mode 100644
-index 00000000..488e5570
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s
-@@ -0,0 +1,12 @@
-+// go run mkasm_darwin.go arm
-+// Code generated by the command above; DO NOT EDIT.
-+
-+// +build go1.13
-+
-+#include "textflag.h"
-+TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fdopendir(SB)
-+TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_closedir(SB)
-+TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_readdir_r(SB)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
-index 7a409745..63103950 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
-@@ -1,7 +1,7 @@
--// mksyscall.pl -tags darwin,arm syscall_bsd.go syscall_darwin.go syscall_darwin_arm.go
-+// go run mksyscall.go -l32 -tags darwin,arm,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_arm.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build darwin,arm
-+// +build darwin,arm,go1.12
-
- package unix
-
-@@ -15,7 +15,7 @@ var _ syscall.Errno
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -23,20 +23,30 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
- return
- }
-
-+func libc_getgroups_trampoline()
-+
-+//go:linkname libc_getgroups libc_getgroups
-+//go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func setgroups(ngid int, gid *_Gid_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setgroups_trampoline()
-+
-+//go:linkname libc_setgroups libc_setgroups
-+//go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
- wpid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -44,10 +54,15 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
- return
- }
-
-+func libc_wait4_trampoline()
-+
-+//go:linkname libc_wait4 libc_wait4
-+//go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -55,30 +70,45 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
- return
- }
-
-+func libc_accept_trampoline()
-+
-+//go:linkname libc_accept libc_accept
-+//go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen))
-+ _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_bind_trampoline()
-+
-+//go:linkname libc_bind libc_bind
-+//go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen))
-+ _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_connect_trampoline()
-+
-+//go:linkname libc_connect libc_connect
-+//go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func socket(domain int, typ int, proto int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto))
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto))
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -86,66 +116,101 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
- return
- }
-
-+func libc_socket_trampoline()
-+
-+//go:linkname libc_socket libc_socket
-+//go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
-- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getsockopt_trampoline()
-+
-+//go:linkname libc_getsockopt libc_getsockopt
-+//go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setsockopt_trampoline()
-+
-+//go:linkname libc_setsockopt libc_setsockopt
-+//go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getpeername_trampoline()
-+
-+//go:linkname libc_getpeername libc_getpeername
-+//go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getsockname_trampoline()
-+
-+//go:linkname libc_getsockname libc_getsockname
-+//go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Shutdown(s int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_shutdown_trampoline()
-+
-+//go:linkname libc_shutdown libc_shutdown
-+//go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
-- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
-+ _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_socketpair_trampoline()
-+
-+//go:linkname libc_socketpair libc_socketpair
-+//go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
-@@ -155,7 +220,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -163,6 +228,11 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
- return
- }
-
-+func libc_recvfrom_trampoline()
-+
-+//go:linkname libc_recvfrom libc_recvfrom
-+//go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
-@@ -172,17 +242,22 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
-+ _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_sendto_trampoline()
-+
-+//go:linkname libc_sendto libc_sendto
-+//go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -190,10 +265,15 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- return
- }
-
-+func libc_recvmsg_trampoline()
-+
-+//go:linkname libc_recvmsg libc_recvmsg
-+//go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -201,10 +281,15 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- return
- }
-
-+func libc_sendmsg_trampoline()
-+
-+//go:linkname libc_sendmsg libc_sendmsg
-+//go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -212,21 +297,10 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_kevent_trampoline()
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_kevent libc_kevent
-+//go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-@@ -236,34 +310,49 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_utimes_trampoline()
-+
-+//go:linkname libc_utimes libc_utimes
-+//go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func futimes(fd int, timeval *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_futimes_trampoline()
-+
-+//go:linkname libc_futimes libc_futimes
-+//go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_poll_trampoline()
-+
-+//go:linkname libc_poll libc_poll
-+//go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Madvise(b []byte, behav int) (err error) {
-@@ -273,13 +362,18 @@ func Madvise(b []byte, behav int) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav))
-+ _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_madvise_trampoline()
-+
-+//go:linkname libc_madvise libc_madvise
-+//go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mlock(b []byte) (err error) {
-@@ -289,23 +383,33 @@ func Mlock(b []byte) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mlock_trampoline()
-+
-+//go:linkname libc_mlock libc_mlock
-+//go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mlockall_trampoline()
-+
-+//go:linkname libc_mlockall libc_mlockall
-+//go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mprotect(b []byte, prot int) (err error) {
-@@ -315,13 +419,18 @@ func Mprotect(b []byte, prot int) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-+ _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mprotect_trampoline()
-+
-+//go:linkname libc_mprotect libc_mprotect
-+//go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Msync(b []byte, flags int) (err error) {
-@@ -331,13 +440,18 @@ func Msync(b []byte, flags int) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-+ _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_msync_trampoline()
-+
-+//go:linkname libc_msync libc_msync
-+//go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Munlock(b []byte) (err error) {
-@@ -347,37 +461,52 @@ func Munlock(b []byte) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_munlock_trampoline()
-+
-+//go:linkname libc_munlock libc_munlock
-+//go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_munlockall_trampoline()
-+
-+//go:linkname libc_munlockall libc_munlockall
-+//go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := syscall_syscall6(funcPC(libc_getattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getattrlist_trampoline()
-+
-+//go:linkname libc_getattrlist libc_getattrlist
-+//go:cgo_import_dynamic libc_getattrlist getattrlist "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func pipe() (r int, w int, err error) {
-- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
-+ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0)
- r = int(r0)
- w = int(r1)
- if e1 != 0 {
-@@ -386,26 +515,282 @@ func pipe() (r int, w int, err error) {
- return
- }
-
-+func libc_pipe_trampoline()
-+
-+//go:linkname libc_pipe libc_pipe
-+//go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_getxattr_trampoline()
-+
-+//go:linkname libc_getxattr libc_getxattr
-+//go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fgetxattr_trampoline()
-+
-+//go:linkname libc_fgetxattr libc_fgetxattr
-+//go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_setxattr_trampoline()
-+
-+//go:linkname libc_setxattr libc_setxattr
-+//go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fsetxattr_trampoline()
-+
-+//go:linkname libc_fsetxattr libc_fsetxattr
-+//go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func removexattr(path string, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_removexattr_trampoline()
-+
-+//go:linkname libc_removexattr libc_removexattr
-+//go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fremovexattr(fd int, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fremovexattr_trampoline()
-+
-+//go:linkname libc_fremovexattr libc_fremovexattr
-+//go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_listxattr_trampoline()
-+
-+//go:linkname libc_listxattr libc_listxattr
-+//go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_flistxattr_trampoline()
-+
-+//go:linkname libc_flistxattr libc_flistxattr
-+//go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_setattrlist_trampoline()
-+
-+//go:linkname libc_setattrlist libc_setattrlist
-+//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fcntl(fd int, cmd int, arg int) (val int, err error) {
-+ r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg))
-+ val = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fcntl_trampoline()
-+
-+//go:linkname libc_fcntl libc_fcntl
-+//go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func kill(pid int, signum int, posix int) (err error) {
-- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
-+ _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_kill_trampoline()
-+
-+//go:linkname libc_kill libc_kill
-+//go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-+ _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_ioctl_trampoline()
-+
-+//go:linkname libc_ioctl libc_ioctl
-+//go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_sysctl_trampoline()
-+
-+//go:linkname libc_sysctl libc_sysctl
-+//go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
-+ _, _, e1 := syscall_syscall9(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_sendfile_trampoline()
-+
-+//go:linkname libc_sendfile libc_sendfile
-+//go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Access(path string, mode uint32) (err error) {
-@@ -414,23 +799,33 @@ func Access(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_access_trampoline()
-+
-+//go:linkname libc_access libc_access
-+//go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_adjtime_trampoline()
-+
-+//go:linkname libc_adjtime libc_adjtime
-+//go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chdir(path string) (err error) {
-@@ -439,13 +834,18 @@ func Chdir(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chdir_trampoline()
-+
-+//go:linkname libc_chdir libc_chdir
-+//go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chflags(path string, flags int) (err error) {
-@@ -454,13 +854,18 @@ func Chflags(path string, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chflags_trampoline()
-+
-+//go:linkname libc_chflags libc_chflags
-+//go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chmod(path string, mode uint32) (err error) {
-@@ -469,13 +874,18 @@ func Chmod(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chmod_trampoline()
-+
-+//go:linkname libc_chmod libc_chmod
-+//go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chown(path string, uid int, gid int) (err error) {
-@@ -484,13 +894,18 @@ func Chown(path string, uid int, gid int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
-+ _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chown_trampoline()
-+
-+//go:linkname libc_chown libc_chown
-+//go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chroot(path string) (err error) {
-@@ -499,27 +914,52 @@ func Chroot(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chroot_trampoline()
-+
-+//go:linkname libc_chroot libc_chroot
-+//go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ClockGettime(clockid int32, time *Timespec) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_clock_gettime_trampoline()
-+
-+//go:linkname libc_clock_gettime libc_clock_gettime
-+//go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_close_trampoline()
-+
-+//go:linkname libc_close libc_close
-+//go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Dup(fd int) (nfd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0)
- nfd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -527,16 +967,26 @@ func Dup(fd int) (nfd int, err error) {
- return
- }
-
-+func libc_dup_trampoline()
-+
-+//go:linkname libc_dup libc_dup
-+//go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Dup2(from int, to int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_dup2_trampoline()
-+
-+//go:linkname libc_dup2 libc_dup2
-+//go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Exchangedata(path1 string, path2 string, options int) (err error) {
-@@ -550,20 +1000,30 @@ func Exchangedata(path1 string, path2 string, options int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
-+ _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_exchangedata_trampoline()
-+
-+//go:linkname libc_exchangedata libc_exchangedata
-+//go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Exit(code int) {
-- Syscall(SYS_EXIT, uintptr(code), 0, 0)
-+ syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0)
- return
- }
-
-+func libc_exit_trampoline()
-+
-+//go:linkname libc_exit libc_exit
-+//go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-@@ -572,43 +1032,63 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_faccessat_trampoline()
-+
-+//go:linkname libc_faccessat libc_faccessat
-+//go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchdir_trampoline()
-+
-+//go:linkname libc_fchdir libc_fchdir
-+//go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchflags(fd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchflags_trampoline()
-+
-+//go:linkname libc_fchflags libc_fchflags
-+//go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchmod_trampoline()
-+
-+//go:linkname libc_fchmod libc_fchmod
-+//go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-@@ -617,23 +1097,33 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchmodat_trampoline()
-+
-+//go:linkname libc_fchmodat libc_fchmodat
-+//go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchown(fd int, uid int, gid int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchown_trampoline()
-+
-+//go:linkname libc_fchown libc_fchown
-+//go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-@@ -642,27 +1132,37 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchownat_trampoline()
-+
-+//go:linkname libc_fchownat libc_fchownat
-+//go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_flock_trampoline()
-+
-+//go:linkname libc_flock libc_flock
-+//go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fpathconf(fd int, name int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0)
- val = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -670,99 +1170,97 @@ func Fpathconf(fd int, name int) (val int, err error) {
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_fpathconf_trampoline()
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_fpathconf libc_fpathconf
-+//go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+func Fsync(fd int) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_fsync_trampoline()
-
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_fsync libc_fsync
-+//go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Ftruncate(fd int, length int64) (err error) {
-- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), uintptr(length>>32))
-+ _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), uintptr(length>>32))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+func libc_ftruncate_trampoline()
-+
-+//go:linkname libc_ftruncate libc_ftruncate
-+//go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getdtablesize() (size int) {
-- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
-+ r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0)
- size = int(r0)
- return
- }
-
-+func libc_getdtablesize_trampoline()
-+
-+//go:linkname libc_getdtablesize libc_getdtablesize
-+//go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0)
- egid = int(r0)
- return
- }
-
-+func libc_getegid_trampoline()
-+
-+//go:linkname libc_getegid libc_getegid
-+//go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0)
- uid = int(r0)
- return
- }
-
-+func libc_geteuid_trampoline()
-+
-+//go:linkname libc_geteuid libc_geteuid
-+//go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0)
- gid = int(r0)
- return
- }
-
-+func libc_getgid_trampoline()
-+
-+//go:linkname libc_getgid libc_getgid
-+//go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0)
- pgid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -770,34 +1268,54 @@ func Getpgid(pid int) (pgid int, err error) {
- return
- }
-
-+func libc_getpgid_trampoline()
-+
-+//go:linkname libc_getpgid libc_getpgid
-+//go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpgrp() (pgrp int) {
-- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0)
- pgrp = int(r0)
- return
- }
-
-+func libc_getpgrp_trampoline()
-+
-+//go:linkname libc_getpgrp libc_getpgrp
-+//go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0)
- pid = int(r0)
- return
- }
-
-+func libc_getpid_trampoline()
-+
-+//go:linkname libc_getpid libc_getpid
-+//go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0)
- ppid = int(r0)
- return
- }
-
-+func libc_getppid_trampoline()
-+
-+//go:linkname libc_getppid libc_getppid
-+//go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0)
- prio = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -805,30 +1323,45 @@ func Getpriority(which int, who int) (prio int, err error) {
- return
- }
-
-+func libc_getpriority_trampoline()
-+
-+//go:linkname libc_getpriority libc_getpriority
-+//go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getrlimit(which int, lim *Rlimit) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getrlimit_trampoline()
-+
-+//go:linkname libc_getrlimit libc_getrlimit
-+//go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getrusage_trampoline()
-+
-+//go:linkname libc_getrusage libc_getrusage
-+//go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0)
- sid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -836,26 +1369,41 @@ func Getsid(pid int) (sid int, err error) {
- return
- }
-
-+func libc_getsid_trampoline()
-+
-+//go:linkname libc_getsid libc_getsid
-+//go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0)
- uid = int(r0)
- return
- }
-
-+func libc_getuid_trampoline()
-+
-+//go:linkname libc_getuid libc_getuid
-+//go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Issetugid() (tainted bool) {
-- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0)
- tainted = bool(r0 != 0)
- return
- }
-
-+func libc_issetugid_trampoline()
-+
-+//go:linkname libc_issetugid libc_issetugid
-+//go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Kqueue() (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0)
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -863,6 +1411,11 @@ func Kqueue() (fd int, err error) {
- return
- }
-
-+func libc_kqueue_trampoline()
-+
-+//go:linkname libc_kqueue libc_kqueue
-+//go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Lchown(path string, uid int, gid int) (err error) {
-@@ -871,13 +1424,18 @@ func Lchown(path string, uid int, gid int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
-+ _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_lchown_trampoline()
-+
-+//go:linkname libc_lchown libc_lchown
-+//go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Link(path string, link string) (err error) {
-@@ -891,13 +1449,18 @@ func Link(path string, link string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_link_trampoline()
-+
-+//go:linkname libc_link libc_link
-+//go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
-@@ -911,37 +1474,32 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_linkat_trampoline()
-+
-+//go:linkname libc_linkat libc_linkat
-+//go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Listen(s int, backlog int) (err error) {
-- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_listen_trampoline()
-
--func Lstat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_listen libc_listen
-+//go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-@@ -951,13 +1509,18 @@ func Mkdir(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mkdir_trampoline()
-+
-+//go:linkname libc_mkdir libc_mkdir
-+//go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-@@ -966,13 +1529,18 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mkdirat_trampoline()
-+
-+//go:linkname libc_mkdirat libc_mkdirat
-+//go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mkfifo(path string, mode uint32) (err error) {
-@@ -981,13 +1549,18 @@ func Mkfifo(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mkfifo_trampoline()
-+
-+//go:linkname libc_mkfifo libc_mkfifo
-+//go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mknod(path string, mode uint32, dev int) (err error) {
-@@ -996,13 +1569,18 @@ func Mknod(path string, mode uint32, dev int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
-+ _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mknod_trampoline()
-+
-+//go:linkname libc_mknod libc_mknod
-+//go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Open(path string, mode int, perm uint32) (fd int, err error) {
-@@ -1011,7 +1589,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
- if err != nil {
- return
- }
-- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1019,6 +1597,11 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
- return
- }
-
-+func libc_open_trampoline()
-+
-+//go:linkname libc_open libc_open
-+//go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
-@@ -1027,7 +1610,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
- if err != nil {
- return
- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1035,6 +1618,11 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
- return
- }
-
-+func libc_openat_trampoline()
-+
-+//go:linkname libc_openat libc_openat
-+//go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Pathconf(path string, name int) (val int, err error) {
-@@ -1043,7 +1631,7 @@ func Pathconf(path string, name int) (val int, err error) {
- if err != nil {
- return
- }
-- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
- val = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1051,6 +1639,11 @@ func Pathconf(path string, name int) (val int, err error) {
- return
- }
-
-+func libc_pathconf_trampoline()
-+
-+//go:linkname libc_pathconf libc_pathconf
-+//go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Pread(fd int, p []byte, offset int64) (n int, err error) {
-@@ -1060,7 +1653,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1068,6 +1661,11 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
- return
- }
-
-+func libc_pread_trampoline()
-+
-+//go:linkname libc_pread libc_pread
-+//go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-@@ -1077,7 +1675,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1085,6 +1683,11 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
- return
- }
-
-+func libc_pwrite_trampoline()
-+
-+//go:linkname libc_pwrite libc_pwrite
-+//go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func read(fd int, p []byte) (n int, err error) {
-@@ -1094,7 +1697,7 @@ func read(fd int, p []byte) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1102,6 +1705,11 @@ func read(fd int, p []byte) (n int, err error) {
- return
- }
-
-+func libc_read_trampoline()
-+
-+//go:linkname libc_read libc_read
-+//go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Readlink(path string, buf []byte) (n int, err error) {
-@@ -1116,7 +1724,7 @@ func Readlink(path string, buf []byte) (n int, err error) {
- } else {
- _p1 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1124,6 +1732,11 @@ func Readlink(path string, buf []byte) (n int, err error) {
- return
- }
-
-+func libc_readlink_trampoline()
-+
-+//go:linkname libc_readlink libc_readlink
-+//go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-@@ -1138,7 +1751,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
- } else {
- _p1 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1146,6 +1759,11 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
- return
- }
-
-+func libc_readlinkat_trampoline()
-+
-+//go:linkname libc_readlinkat libc_readlinkat
-+//go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Rename(from string, to string) (err error) {
-@@ -1159,13 +1777,18 @@ func Rename(from string, to string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_rename_trampoline()
-+
-+//go:linkname libc_rename libc_rename
-+//go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Renameat(fromfd int, from string, tofd int, to string) (err error) {
-@@ -1179,13 +1802,18 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_renameat_trampoline()
-+
-+//go:linkname libc_renameat libc_renameat
-+//go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Revoke(path string) (err error) {
-@@ -1194,13 +1822,18 @@ func Revoke(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_revoke_trampoline()
-+
-+//go:linkname libc_revoke libc_revoke
-+//go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Rmdir(path string) (err error) {
-@@ -1209,17 +1842,22 @@ func Rmdir(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_rmdir_trampoline()
-+
-+//go:linkname libc_rmdir libc_rmdir
-+//go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-- r0, r1, e1 := Syscall6(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0)
-+ r0, r1, e1 := syscall_syscall6(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0)
- newoffset = int64(int64(r1)<<32 | int64(r0))
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1227,46 +1865,72 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
- return
- }
-
-+func libc_lseek_trampoline()
-+
-+//go:linkname libc_lseek libc_lseek
-+//go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_select_trampoline()
-+
-+//go:linkname libc_select libc_select
-+//go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setegid(egid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setegid_trampoline()
-+
-+//go:linkname libc_setegid libc_setegid
-+//go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Seteuid(euid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_seteuid_trampoline()
-+
-+//go:linkname libc_seteuid libc_seteuid
-+//go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setgid(gid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setgid_trampoline()
-+
-+//go:linkname libc_setgid libc_setgid
-+//go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setlogin(name string) (err error) {
-@@ -1275,77 +1939,112 @@ func Setlogin(name string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setlogin_trampoline()
-+
-+//go:linkname libc_setlogin libc_setlogin
-+//go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setpgid_trampoline()
-+
-+//go:linkname libc_setpgid libc_setpgid
-+//go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-+ _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setpriority_trampoline()
-+
-+//go:linkname libc_setpriority libc_setpriority
-+//go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setprivexec(flag int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setprivexec_trampoline()
-+
-+//go:linkname libc_setprivexec libc_setprivexec
-+//go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setregid(rgid int, egid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setregid_trampoline()
-+
-+//go:linkname libc_setregid libc_setregid
-+//go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setreuid(ruid int, euid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setreuid_trampoline()
-+
-+//go:linkname libc_setreuid libc_setreuid
-+//go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setrlimit(which int, lim *Rlimit) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setrlimit_trampoline()
-+
-+//go:linkname libc_setrlimit libc_setrlimit
-+//go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0)
- pid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1353,55 +2052,40 @@ func Setsid() (pid int, err error) {
- return
- }
-
-+func libc_setsid_trampoline()
-+
-+//go:linkname libc_setsid libc_setsid
-+//go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Settimeofday(tp *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_settimeofday_trampoline()
-
--func Setuid(uid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_settimeofday libc_settimeofday
-+//go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+func Setuid(uid int) (err error) {
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_setuid_trampoline()
-
--func Statfs(path string, stat *Statfs_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_setuid libc_setuid
-+//go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-@@ -1416,13 +2100,18 @@ func Symlink(path string, link string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_symlink_trampoline()
-+
-+//go:linkname libc_symlink libc_symlink
-+//go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-@@ -1436,23 +2125,33 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-+ _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_symlinkat_trampoline()
-+
-+//go:linkname libc_symlinkat libc_symlinkat
-+//go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Sync() (err error) {
-- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_sync_trampoline()
-+
-+//go:linkname libc_sync libc_sync
-+//go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Truncate(path string, length int64) (err error) {
-@@ -1461,21 +2160,31 @@ func Truncate(path string, length int64) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32))
-+ _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_truncate_trampoline()
-+
-+//go:linkname libc_truncate libc_truncate
-+//go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Umask(newmask int) (oldmask int) {
-- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0)
-+ r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0)
- oldmask = int(r0)
- return
- }
-
-+func libc_umask_trampoline()
-+
-+//go:linkname libc_umask libc_umask
-+//go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Undelete(path string) (err error) {
-@@ -1484,13 +2193,18 @@ func Undelete(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_undelete_trampoline()
-+
-+//go:linkname libc_undelete libc_undelete
-+//go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Unlink(path string) (err error) {
-@@ -1499,13 +2213,18 @@ func Unlink(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_unlink_trampoline()
-+
-+//go:linkname libc_unlink libc_unlink
-+//go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Unlinkat(dirfd int, path string, flags int) (err error) {
-@@ -1514,13 +2233,18 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-+ _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_unlinkat_trampoline()
-+
-+//go:linkname libc_unlinkat libc_unlinkat
-+//go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Unmount(path string, flags int) (err error) {
-@@ -1529,13 +2253,18 @@ func Unmount(path string, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_unmount_trampoline()
-+
-+//go:linkname libc_unmount libc_unmount
-+//go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func write(fd int, p []byte) (n int, err error) {
-@@ -1545,7 +2274,7 @@ func write(fd int, p []byte) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1553,10 +2282,15 @@ func write(fd int, p []byte) (n int, err error) {
- return
- }
-
-+func libc_write_trampoline()
-+
-+//go:linkname libc_write libc_write
-+//go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
-- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0)
-+ r0, _, e1 := syscall_syscall9(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0)
- ret = uintptr(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1564,20 +2298,30 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
- return
- }
-
-+func libc_mmap_trampoline()
-+
-+//go:linkname libc_mmap libc_mmap
-+//go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_munmap_trampoline()
-+
-+//go:linkname libc_munmap libc_munmap
-+//go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1588,7 +2332,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1599,7 +2343,7 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
-- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
-+ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
- sec = int32(r0)
- usec = int32(r1)
- if e1 != 0 {
-@@ -1607,3 +2351,134 @@ func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
- }
- return
- }
-+
-+func libc_gettimeofday_trampoline()
-+
-+//go:linkname libc_gettimeofday libc_gettimeofday
-+//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_fstat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fstat_trampoline()
-+
-+//go:linkname libc_fstat libc_fstat
-+//go:cgo_import_dynamic libc_fstat fstat "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fstatat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fstatat_trampoline()
-+
-+//go:linkname libc_fstatat libc_fstatat
-+//go:cgo_import_dynamic libc_fstatat fstatat "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatfs(fd int, stat *Statfs_t) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_fstatfs_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fstatfs_trampoline()
-+
-+//go:linkname libc_fstatfs libc_fstatfs
-+//go:cgo_import_dynamic libc_fstatfs fstatfs "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
-+ r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat_trampoline), uintptr(buf), uintptr(size), uintptr(flags))
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_getfsstat_trampoline()
-+
-+//go:linkname libc_getfsstat libc_getfsstat
-+//go:cgo_import_dynamic libc_getfsstat getfsstat "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Lstat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_lstat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_lstat_trampoline()
-+
-+//go:linkname libc_lstat libc_lstat
-+//go:cgo_import_dynamic libc_lstat lstat "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Stat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_stat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_stat_trampoline()
-+
-+//go:linkname libc_stat libc_stat
-+//go:cgo_import_dynamic libc_stat stat "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Statfs(path string, stat *Statfs_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_statfs_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_statfs_trampoline()
-+
-+//go:linkname libc_statfs libc_statfs
-+//go:cgo_import_dynamic libc_statfs statfs "/usr/lib/libSystem.B.dylib"
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s
-new file mode 100644
-index 00000000..b67f518f
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s
-@@ -0,0 +1,282 @@
-+// go run mkasm_darwin.go arm
-+// Code generated by the command above; DO NOT EDIT.
-+
-+// +build go1.12
-+
-+#include "textflag.h"
-+TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getgroups(SB)
-+TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setgroups(SB)
-+TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_wait4(SB)
-+TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_accept(SB)
-+TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_bind(SB)
-+TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_connect(SB)
-+TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_socket(SB)
-+TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getsockopt(SB)
-+TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setsockopt(SB)
-+TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpeername(SB)
-+TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getsockname(SB)
-+TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_shutdown(SB)
-+TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_socketpair(SB)
-+TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_recvfrom(SB)
-+TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sendto(SB)
-+TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_recvmsg(SB)
-+TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sendmsg(SB)
-+TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_kevent(SB)
-+TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_utimes(SB)
-+TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_futimes(SB)
-+TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_poll(SB)
-+TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_madvise(SB)
-+TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mlock(SB)
-+TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mlockall(SB)
-+TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mprotect(SB)
-+TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_msync(SB)
-+TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_munlock(SB)
-+TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_munlockall(SB)
-+TEXT ·libc_getattrlist_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getattrlist(SB)
-+TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pipe(SB)
-+TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getxattr(SB)
-+TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fgetxattr(SB)
-+TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setxattr(SB)
-+TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fsetxattr(SB)
-+TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_removexattr(SB)
-+TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fremovexattr(SB)
-+TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_listxattr(SB)
-+TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_flistxattr(SB)
-+TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setattrlist(SB)
-+TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fcntl(SB)
-+TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_kill(SB)
-+TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_ioctl(SB)
-+TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sysctl(SB)
-+TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sendfile(SB)
-+TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_access(SB)
-+TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_adjtime(SB)
-+TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chdir(SB)
-+TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chflags(SB)
-+TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chmod(SB)
-+TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chown(SB)
-+TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chroot(SB)
-+TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_clock_gettime(SB)
-+TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_close(SB)
-+TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_dup(SB)
-+TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_dup2(SB)
-+TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_exchangedata(SB)
-+TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_exit(SB)
-+TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_faccessat(SB)
-+TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchdir(SB)
-+TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchflags(SB)
-+TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchmod(SB)
-+TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchmodat(SB)
-+TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchown(SB)
-+TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchownat(SB)
-+TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_flock(SB)
-+TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fpathconf(SB)
-+TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fsync(SB)
-+TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_ftruncate(SB)
-+TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getdtablesize(SB)
-+TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getegid(SB)
-+TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_geteuid(SB)
-+TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getgid(SB)
-+TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpgid(SB)
-+TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpgrp(SB)
-+TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpid(SB)
-+TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getppid(SB)
-+TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpriority(SB)
-+TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getrlimit(SB)
-+TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getrusage(SB)
-+TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getsid(SB)
-+TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getuid(SB)
-+TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_issetugid(SB)
-+TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_kqueue(SB)
-+TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_lchown(SB)
-+TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_link(SB)
-+TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_linkat(SB)
-+TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_listen(SB)
-+TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mkdir(SB)
-+TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mkdirat(SB)
-+TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mkfifo(SB)
-+TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mknod(SB)
-+TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_open(SB)
-+TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_openat(SB)
-+TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pathconf(SB)
-+TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pread(SB)
-+TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pwrite(SB)
-+TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_read(SB)
-+TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_readlink(SB)
-+TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_readlinkat(SB)
-+TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_rename(SB)
-+TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_renameat(SB)
-+TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_revoke(SB)
-+TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_rmdir(SB)
-+TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_lseek(SB)
-+TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_select(SB)
-+TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setegid(SB)
-+TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_seteuid(SB)
-+TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setgid(SB)
-+TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setlogin(SB)
-+TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setpgid(SB)
-+TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setpriority(SB)
-+TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setprivexec(SB)
-+TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setregid(SB)
-+TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setreuid(SB)
-+TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setrlimit(SB)
-+TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setsid(SB)
-+TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_settimeofday(SB)
-+TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setuid(SB)
-+TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_symlink(SB)
-+TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_symlinkat(SB)
-+TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sync(SB)
-+TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_truncate(SB)
-+TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_umask(SB)
-+TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_undelete(SB)
-+TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_unlink(SB)
-+TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_unlinkat(SB)
-+TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_unmount(SB)
-+TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_write(SB)
-+TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mmap(SB)
-+TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_munmap(SB)
-+TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_gettimeofday(SB)
-+TEXT ·libc_fstat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fstat(SB)
-+TEXT ·libc_fstatat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fstatat(SB)
-+TEXT ·libc_fstatfs_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fstatfs(SB)
-+TEXT ·libc_getfsstat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getfsstat(SB)
-+TEXT ·libc_lstat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_lstat(SB)
-+TEXT ·libc_stat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_stat(SB)
-+TEXT ·libc_statfs_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_statfs(SB)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_11.go
-similarity index 84%
-copy from vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
-copy to vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_11.go
-index 07c6ebc9..8c3bb3a2 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_11.go
-@@ -1,7 +1,7 @@
--// mksyscall.pl -tags darwin,arm64 syscall_bsd.go syscall_darwin.go syscall_darwin_arm64.go
-+// go run mksyscall.go -tags darwin,arm64,!go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_arm64.1_11.go syscall_darwin_arm64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build darwin,arm64
-+// +build darwin,arm64,!go1.12
-
- package unix
-
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,8 +350,8 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := Syscall6(SYS_GETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -388,6 +372,161 @@ func pipe() (r int, w int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func removexattr(path string, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fremovexattr(fd int, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
-+ r0, _, e1 := Syscall6(SYS_FLISTXATTR, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := Syscall6(SYS_SETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fcntl(fd int, cmd int, arg int) (val int, err error) {
-+ r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-+ val = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func kill(pid int, signum int, posix int) (err error) {
- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
- if e1 != 0 {
-@@ -408,6 +547,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
-+ _, _, e1 := Syscall6(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -672,26 +837,6 @@ func Fpathconf(fd int, name int) (val int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Fsync(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -712,23 +857,6 @@ func Ftruncate(fd int, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Getdtablesize() (size int) {
- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
- size = int(r0)
-@@ -930,21 +1058,6 @@ func Listen(s int, backlog int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Lstat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Mkdir(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1229,8 +1342,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1375,36 +1489,6 @@ func Setuid(uid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Statfs(path string, stat *Statfs_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Symlink(path string, link string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1607,3 +1691,94 @@ func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
- }
- return
- }
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatfs(fd int, stat *Statfs_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_GETFSSTAT, uintptr(buf), uintptr(size), uintptr(flags))
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Lstat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Stat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Statfs(path string, stat *Statfs_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go
-new file mode 100644
-index 00000000..d64e6c80
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go
-@@ -0,0 +1,41 @@
-+// go run mksyscall.go -tags darwin,arm64,go1.13 syscall_darwin.1_13.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build darwin,arm64,go1.13
-+
-+package unix
-+
-+import (
-+ "syscall"
-+ "unsafe"
-+)
-+
-+var _ syscall.Errno
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func closedir(dir uintptr) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_closedir_trampoline()
-+
-+//go:linkname libc_closedir libc_closedir
-+//go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) {
-+ r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result)))
-+ res = Errno(r0)
-+ return
-+}
-+
-+func libc_readdir_r_trampoline()
-+
-+//go:linkname libc_readdir_r libc_readdir_r
-+//go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib"
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s
-new file mode 100644
-index 00000000..b29dabb0
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s
-@@ -0,0 +1,12 @@
-+// go run mkasm_darwin.go arm64
-+// Code generated by the command above; DO NOT EDIT.
-+
-+// +build go1.13
-+
-+#include "textflag.h"
-+TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fdopendir(SB)
-+TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_closedir(SB)
-+TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_readdir_r(SB)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
-index 07c6ebc9..a8709f72 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
-@@ -1,7 +1,7 @@
--// mksyscall.pl -tags darwin,arm64 syscall_bsd.go syscall_darwin.go syscall_darwin_arm64.go
-+// go run mksyscall.go -tags darwin,arm64,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_arm64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build darwin,arm64
-+// +build darwin,arm64,go1.12
-
- package unix
-
-@@ -15,7 +15,7 @@ var _ syscall.Errno
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -23,20 +23,30 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
- return
- }
-
-+func libc_getgroups_trampoline()
-+
-+//go:linkname libc_getgroups libc_getgroups
-+//go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func setgroups(ngid int, gid *_Gid_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setgroups_trampoline()
-+
-+//go:linkname libc_setgroups libc_setgroups
-+//go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
- wpid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -44,10 +54,15 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
- return
- }
-
-+func libc_wait4_trampoline()
-+
-+//go:linkname libc_wait4 libc_wait4
-+//go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -55,30 +70,45 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
- return
- }
-
-+func libc_accept_trampoline()
-+
-+//go:linkname libc_accept libc_accept
-+//go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen))
-+ _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_bind_trampoline()
-+
-+//go:linkname libc_bind libc_bind
-+//go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen))
-+ _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_connect_trampoline()
-+
-+//go:linkname libc_connect libc_connect
-+//go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func socket(domain int, typ int, proto int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto))
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto))
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -86,66 +116,101 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
- return
- }
-
-+func libc_socket_trampoline()
-+
-+//go:linkname libc_socket libc_socket
-+//go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
-- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getsockopt_trampoline()
-+
-+//go:linkname libc_getsockopt libc_getsockopt
-+//go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setsockopt_trampoline()
-+
-+//go:linkname libc_setsockopt libc_setsockopt
-+//go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getpeername_trampoline()
-+
-+//go:linkname libc_getpeername libc_getpeername
-+//go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getsockname_trampoline()
-+
-+//go:linkname libc_getsockname libc_getsockname
-+//go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Shutdown(s int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_shutdown_trampoline()
-+
-+//go:linkname libc_shutdown libc_shutdown
-+//go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
-- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
-+ _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_socketpair_trampoline()
-+
-+//go:linkname libc_socketpair libc_socketpair
-+//go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
-@@ -155,7 +220,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -163,6 +228,11 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
- return
- }
-
-+func libc_recvfrom_trampoline()
-+
-+//go:linkname libc_recvfrom libc_recvfrom
-+//go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
-@@ -172,17 +242,22 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
-+ _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_sendto_trampoline()
-+
-+//go:linkname libc_sendto libc_sendto
-+//go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -190,10 +265,15 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- return
- }
-
-+func libc_recvmsg_trampoline()
-+
-+//go:linkname libc_recvmsg libc_recvmsg
-+//go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -201,10 +281,15 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- return
- }
-
-+func libc_sendmsg_trampoline()
-+
-+//go:linkname libc_sendmsg libc_sendmsg
-+//go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -212,21 +297,10 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_kevent_trampoline()
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_kevent libc_kevent
-+//go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-@@ -236,34 +310,49 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_utimes_trampoline()
-+
-+//go:linkname libc_utimes libc_utimes
-+//go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func futimes(fd int, timeval *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_futimes_trampoline()
-+
-+//go:linkname libc_futimes libc_futimes
-+//go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_poll_trampoline()
-+
-+//go:linkname libc_poll libc_poll
-+//go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Madvise(b []byte, behav int) (err error) {
-@@ -273,13 +362,18 @@ func Madvise(b []byte, behav int) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav))
-+ _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_madvise_trampoline()
-+
-+//go:linkname libc_madvise libc_madvise
-+//go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mlock(b []byte) (err error) {
-@@ -289,23 +383,33 @@ func Mlock(b []byte) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mlock_trampoline()
-+
-+//go:linkname libc_mlock libc_mlock
-+//go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mlockall_trampoline()
-+
-+//go:linkname libc_mlockall libc_mlockall
-+//go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mprotect(b []byte, prot int) (err error) {
-@@ -315,13 +419,18 @@ func Mprotect(b []byte, prot int) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-+ _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mprotect_trampoline()
-+
-+//go:linkname libc_mprotect libc_mprotect
-+//go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Msync(b []byte, flags int) (err error) {
-@@ -331,13 +440,18 @@ func Msync(b []byte, flags int) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-+ _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_msync_trampoline()
-+
-+//go:linkname libc_msync libc_msync
-+//go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Munlock(b []byte) (err error) {
-@@ -347,37 +461,52 @@ func Munlock(b []byte) (err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_munlock_trampoline()
-+
-+//go:linkname libc_munlock libc_munlock
-+//go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_munlockall_trampoline()
-+
-+//go:linkname libc_munlockall libc_munlockall
-+//go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := syscall_syscall6(funcPC(libc_getattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getattrlist_trampoline()
-+
-+//go:linkname libc_getattrlist libc_getattrlist
-+//go:cgo_import_dynamic libc_getattrlist getattrlist "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func pipe() (r int, w int, err error) {
-- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
-+ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0)
- r = int(r0)
- w = int(r1)
- if e1 != 0 {
-@@ -386,26 +515,282 @@ func pipe() (r int, w int, err error) {
- return
- }
-
-+func libc_pipe_trampoline()
-+
-+//go:linkname libc_pipe libc_pipe
-+//go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_getxattr_trampoline()
-+
-+//go:linkname libc_getxattr libc_getxattr
-+//go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fgetxattr_trampoline()
-+
-+//go:linkname libc_fgetxattr libc_fgetxattr
-+//go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_setxattr_trampoline()
-+
-+//go:linkname libc_setxattr libc_setxattr
-+//go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fsetxattr_trampoline()
-+
-+//go:linkname libc_fsetxattr libc_fsetxattr
-+//go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func removexattr(path string, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_removexattr_trampoline()
-+
-+//go:linkname libc_removexattr libc_removexattr
-+//go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fremovexattr(fd int, attr string, options int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fremovexattr_trampoline()
-+
-+//go:linkname libc_fremovexattr libc_fremovexattr
-+//go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_listxattr_trampoline()
-+
-+//go:linkname libc_listxattr libc_listxattr
-+//go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
-+ sz = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_flistxattr_trampoline()
-+
-+//go:linkname libc_flistxattr libc_flistxattr
-+//go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
-+ _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_setattrlist_trampoline()
-+
-+//go:linkname libc_setattrlist libc_setattrlist
-+//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fcntl(fd int, cmd int, arg int) (val int, err error) {
-+ r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg))
-+ val = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fcntl_trampoline()
-+
-+//go:linkname libc_fcntl libc_fcntl
-+//go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func kill(pid int, signum int, posix int) (err error) {
-- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
-+ _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_kill_trampoline()
-+
-+//go:linkname libc_kill libc_kill
-+//go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-+ _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_ioctl_trampoline()
-+
-+//go:linkname libc_ioctl libc_ioctl
-+//go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_sysctl_trampoline()
-+
-+//go:linkname libc_sysctl libc_sysctl
-+//go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
-+ _, _, e1 := syscall_syscall6(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_sendfile_trampoline()
-+
-+//go:linkname libc_sendfile libc_sendfile
-+//go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Access(path string, mode uint32) (err error) {
-@@ -414,23 +799,33 @@ func Access(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_access_trampoline()
-+
-+//go:linkname libc_access libc_access
-+//go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_adjtime_trampoline()
-+
-+//go:linkname libc_adjtime libc_adjtime
-+//go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chdir(path string) (err error) {
-@@ -439,13 +834,18 @@ func Chdir(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chdir_trampoline()
-+
-+//go:linkname libc_chdir libc_chdir
-+//go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chflags(path string, flags int) (err error) {
-@@ -454,13 +854,18 @@ func Chflags(path string, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chflags_trampoline()
-+
-+//go:linkname libc_chflags libc_chflags
-+//go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chmod(path string, mode uint32) (err error) {
-@@ -469,13 +874,18 @@ func Chmod(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chmod_trampoline()
-+
-+//go:linkname libc_chmod libc_chmod
-+//go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chown(path string, uid int, gid int) (err error) {
-@@ -484,13 +894,18 @@ func Chown(path string, uid int, gid int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
-+ _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chown_trampoline()
-+
-+//go:linkname libc_chown libc_chown
-+//go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Chroot(path string) (err error) {
-@@ -499,27 +914,52 @@ func Chroot(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_chroot_trampoline()
-+
-+//go:linkname libc_chroot libc_chroot
-+//go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ClockGettime(clockid int32, time *Timespec) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_clock_gettime_trampoline()
-+
-+//go:linkname libc_clock_gettime libc_clock_gettime
-+//go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_close_trampoline()
-+
-+//go:linkname libc_close libc_close
-+//go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Dup(fd int) (nfd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0)
- nfd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -527,16 +967,26 @@ func Dup(fd int) (nfd int, err error) {
- return
- }
-
-+func libc_dup_trampoline()
-+
-+//go:linkname libc_dup libc_dup
-+//go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Dup2(from int, to int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_dup2_trampoline()
-+
-+//go:linkname libc_dup2 libc_dup2
-+//go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Exchangedata(path1 string, path2 string, options int) (err error) {
-@@ -550,20 +1000,30 @@ func Exchangedata(path1 string, path2 string, options int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
-+ _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_exchangedata_trampoline()
-+
-+//go:linkname libc_exchangedata libc_exchangedata
-+//go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Exit(code int) {
-- Syscall(SYS_EXIT, uintptr(code), 0, 0)
-+ syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0)
- return
- }
-
-+func libc_exit_trampoline()
-+
-+//go:linkname libc_exit libc_exit
-+//go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-@@ -572,43 +1032,63 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_faccessat_trampoline()
-+
-+//go:linkname libc_faccessat libc_faccessat
-+//go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchdir_trampoline()
-+
-+//go:linkname libc_fchdir libc_fchdir
-+//go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchflags(fd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchflags_trampoline()
-+
-+//go:linkname libc_fchflags libc_fchflags
-+//go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchmod_trampoline()
-+
-+//go:linkname libc_fchmod libc_fchmod
-+//go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-@@ -617,23 +1097,33 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchmodat_trampoline()
-+
-+//go:linkname libc_fchmodat libc_fchmodat
-+//go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchown(fd int, uid int, gid int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
-+ _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchown_trampoline()
-+
-+//go:linkname libc_fchown libc_fchown
-+//go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-@@ -642,27 +1132,37 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_fchownat_trampoline()
-+
-+//go:linkname libc_fchownat libc_fchownat
-+//go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_flock_trampoline()
-+
-+//go:linkname libc_flock libc_flock
-+//go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fpathconf(fd int, name int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0)
- val = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -670,99 +1170,97 @@ func Fpathconf(fd int, name int) (val int, err error) {
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_fpathconf_trampoline()
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_fpathconf libc_fpathconf
-+//go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+func Fsync(fd int) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_fsync_trampoline()
-
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_fsync libc_fsync
-+//go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Ftruncate(fd int, length int64) (err error) {
-- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+func libc_ftruncate_trampoline()
-+
-+//go:linkname libc_ftruncate libc_ftruncate
-+//go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getdtablesize() (size int) {
-- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
-+ r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0)
- size = int(r0)
- return
- }
-
-+func libc_getdtablesize_trampoline()
-+
-+//go:linkname libc_getdtablesize libc_getdtablesize
-+//go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0)
- egid = int(r0)
- return
- }
-
-+func libc_getegid_trampoline()
-+
-+//go:linkname libc_getegid libc_getegid
-+//go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0)
- uid = int(r0)
- return
- }
-
-+func libc_geteuid_trampoline()
-+
-+//go:linkname libc_geteuid libc_geteuid
-+//go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0)
- gid = int(r0)
- return
- }
-
-+func libc_getgid_trampoline()
-+
-+//go:linkname libc_getgid libc_getgid
-+//go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0)
- pgid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -770,34 +1268,54 @@ func Getpgid(pid int) (pgid int, err error) {
- return
- }
-
-+func libc_getpgid_trampoline()
-+
-+//go:linkname libc_getpgid libc_getpgid
-+//go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpgrp() (pgrp int) {
-- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0)
- pgrp = int(r0)
- return
- }
-
-+func libc_getpgrp_trampoline()
-+
-+//go:linkname libc_getpgrp libc_getpgrp
-+//go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0)
- pid = int(r0)
- return
- }
-
-+func libc_getpid_trampoline()
-+
-+//go:linkname libc_getpid libc_getpid
-+//go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0)
- ppid = int(r0)
- return
- }
-
-+func libc_getppid_trampoline()
-+
-+//go:linkname libc_getppid libc_getppid
-+//go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0)
- prio = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -805,30 +1323,45 @@ func Getpriority(which int, who int) (prio int, err error) {
- return
- }
-
-+func libc_getpriority_trampoline()
-+
-+//go:linkname libc_getpriority libc_getpriority
-+//go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getrlimit(which int, lim *Rlimit) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getrlimit_trampoline()
-+
-+//go:linkname libc_getrlimit libc_getrlimit
-+//go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_getrusage_trampoline()
-+
-+//go:linkname libc_getrusage libc_getrusage
-+//go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0)
- sid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -836,26 +1369,41 @@ func Getsid(pid int) (sid int, err error) {
- return
- }
-
-+func libc_getsid_trampoline()
-+
-+//go:linkname libc_getsid libc_getsid
-+//go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0)
- uid = int(r0)
- return
- }
-
-+func libc_getuid_trampoline()
-+
-+//go:linkname libc_getuid libc_getuid
-+//go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Issetugid() (tainted bool) {
-- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0)
-+ r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0)
- tainted = bool(r0 != 0)
- return
- }
-
-+func libc_issetugid_trampoline()
-+
-+//go:linkname libc_issetugid libc_issetugid
-+//go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Kqueue() (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0)
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -863,6 +1411,11 @@ func Kqueue() (fd int, err error) {
- return
- }
-
-+func libc_kqueue_trampoline()
-+
-+//go:linkname libc_kqueue libc_kqueue
-+//go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Lchown(path string, uid int, gid int) (err error) {
-@@ -871,13 +1424,18 @@ func Lchown(path string, uid int, gid int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
-+ _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_lchown_trampoline()
-+
-+//go:linkname libc_lchown libc_lchown
-+//go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Link(path string, link string) (err error) {
-@@ -891,13 +1449,18 @@ func Link(path string, link string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_link_trampoline()
-+
-+//go:linkname libc_link libc_link
-+//go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
-@@ -911,37 +1474,32 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_linkat_trampoline()
-+
-+//go:linkname libc_linkat libc_linkat
-+//go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Listen(s int, backlog int) (err error) {
-- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_listen_trampoline()
-
--func Lstat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_listen libc_listen
-+//go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-@@ -951,13 +1509,18 @@ func Mkdir(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mkdir_trampoline()
-+
-+//go:linkname libc_mkdir libc_mkdir
-+//go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-@@ -966,13 +1529,18 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mkdirat_trampoline()
-+
-+//go:linkname libc_mkdirat libc_mkdirat
-+//go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mkfifo(path string, mode uint32) (err error) {
-@@ -981,13 +1549,18 @@ func Mkfifo(path string, mode uint32) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mkfifo_trampoline()
-+
-+//go:linkname libc_mkfifo libc_mkfifo
-+//go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Mknod(path string, mode uint32, dev int) (err error) {
-@@ -996,13 +1569,18 @@ func Mknod(path string, mode uint32, dev int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
-+ _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_mknod_trampoline()
-+
-+//go:linkname libc_mknod libc_mknod
-+//go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Open(path string, mode int, perm uint32) (fd int, err error) {
-@@ -1011,7 +1589,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
- if err != nil {
- return
- }
-- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1019,6 +1597,11 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
- return
- }
-
-+func libc_open_trampoline()
-+
-+//go:linkname libc_open libc_open
-+//go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
-@@ -1027,7 +1610,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
- if err != nil {
- return
- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1035,6 +1618,11 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
- return
- }
-
-+func libc_openat_trampoline()
-+
-+//go:linkname libc_openat libc_openat
-+//go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Pathconf(path string, name int) (val int, err error) {
-@@ -1043,7 +1631,7 @@ func Pathconf(path string, name int) (val int, err error) {
- if err != nil {
- return
- }
-- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
-+ r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
- val = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1051,6 +1639,11 @@ func Pathconf(path string, name int) (val int, err error) {
- return
- }
-
-+func libc_pathconf_trampoline()
-+
-+//go:linkname libc_pathconf libc_pathconf
-+//go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Pread(fd int, p []byte, offset int64) (n int, err error) {
-@@ -1060,7 +1653,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1068,6 +1661,11 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
- return
- }
-
-+func libc_pread_trampoline()
-+
-+//go:linkname libc_pread libc_pread
-+//go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-@@ -1077,7 +1675,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1085,6 +1683,11 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
- return
- }
-
-+func libc_pwrite_trampoline()
-+
-+//go:linkname libc_pwrite libc_pwrite
-+//go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func read(fd int, p []byte) (n int, err error) {
-@@ -1094,7 +1697,7 @@ func read(fd int, p []byte) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1102,6 +1705,11 @@ func read(fd int, p []byte) (n int, err error) {
- return
- }
-
-+func libc_read_trampoline()
-+
-+//go:linkname libc_read libc_read
-+//go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Readlink(path string, buf []byte) (n int, err error) {
-@@ -1116,7 +1724,7 @@ func Readlink(path string, buf []byte) (n int, err error) {
- } else {
- _p1 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1124,6 +1732,11 @@ func Readlink(path string, buf []byte) (n int, err error) {
- return
- }
-
-+func libc_readlink_trampoline()
-+
-+//go:linkname libc_readlink libc_readlink
-+//go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-@@ -1138,7 +1751,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
- } else {
- _p1 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1146,6 +1759,11 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
- return
- }
-
-+func libc_readlinkat_trampoline()
-+
-+//go:linkname libc_readlinkat libc_readlinkat
-+//go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Rename(from string, to string) (err error) {
-@@ -1159,13 +1777,18 @@ func Rename(from string, to string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_rename_trampoline()
-+
-+//go:linkname libc_rename libc_rename
-+//go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Renameat(fromfd int, from string, tofd int, to string) (err error) {
-@@ -1179,13 +1802,18 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_renameat_trampoline()
-+
-+//go:linkname libc_renameat libc_renameat
-+//go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Revoke(path string) (err error) {
-@@ -1194,13 +1822,18 @@ func Revoke(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_revoke_trampoline()
-+
-+//go:linkname libc_revoke libc_revoke
-+//go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Rmdir(path string) (err error) {
-@@ -1209,17 +1842,22 @@ func Rmdir(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_rmdir_trampoline()
-+
-+//go:linkname libc_rmdir libc_rmdir
-+//go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(whence))
- newoffset = int64(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1227,46 +1865,72 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
- return
- }
-
-+func libc_lseek_trampoline()
-+
-+//go:linkname libc_lseek libc_lseek
-+//go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_select_trampoline()
-+
-+//go:linkname libc_select libc_select
-+//go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setegid(egid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setegid_trampoline()
-+
-+//go:linkname libc_setegid libc_setegid
-+//go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Seteuid(euid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_seteuid_trampoline()
-+
-+//go:linkname libc_seteuid libc_seteuid
-+//go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setgid(gid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setgid_trampoline()
-+
-+//go:linkname libc_setgid libc_setgid
-+//go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setlogin(name string) (err error) {
-@@ -1275,77 +1939,112 @@ func Setlogin(name string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setlogin_trampoline()
-+
-+//go:linkname libc_setlogin libc_setlogin
-+//go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setpgid_trampoline()
-+
-+//go:linkname libc_setpgid libc_setpgid
-+//go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-+ _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setpriority_trampoline()
-+
-+//go:linkname libc_setpriority libc_setpriority
-+//go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setprivexec(flag int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setprivexec_trampoline()
-+
-+//go:linkname libc_setprivexec libc_setprivexec
-+//go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setregid(rgid int, egid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setregid_trampoline()
-+
-+//go:linkname libc_setregid libc_setregid
-+//go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setreuid(ruid int, euid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setreuid_trampoline()
-+
-+//go:linkname libc_setreuid libc_setreuid
-+//go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setrlimit(which int, lim *Rlimit) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_setrlimit_trampoline()
-+
-+//go:linkname libc_setrlimit libc_setrlimit
-+//go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-+ r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0)
- pid = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1353,55 +2052,40 @@ func Setsid() (pid int, err error) {
- return
- }
-
-+func libc_setsid_trampoline()
-+
-+//go:linkname libc_setsid libc_setsid
-+//go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Settimeofday(tp *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_settimeofday_trampoline()
-
--func Setuid(uid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_settimeofday libc_settimeofday
-+//go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+func Setuid(uid int) (err error) {
-+ _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+func libc_setuid_trampoline()
-
--func Statfs(path string, stat *Statfs_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-+//go:linkname libc_setuid libc_setuid
-+//go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib"
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-@@ -1416,13 +2100,18 @@ func Symlink(path string, link string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_symlink_trampoline()
-+
-+//go:linkname libc_symlink libc_symlink
-+//go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-@@ -1436,23 +2125,33 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-+ _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_symlinkat_trampoline()
-+
-+//go:linkname libc_symlinkat libc_symlinkat
-+//go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Sync() (err error) {
-- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_sync_trampoline()
-+
-+//go:linkname libc_sync libc_sync
-+//go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Truncate(path string, length int64) (err error) {
-@@ -1461,21 +2160,31 @@ func Truncate(path string, length int64) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_truncate_trampoline()
-+
-+//go:linkname libc_truncate libc_truncate
-+//go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Umask(newmask int) (oldmask int) {
-- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0)
-+ r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0)
- oldmask = int(r0)
- return
- }
-
-+func libc_umask_trampoline()
-+
-+//go:linkname libc_umask libc_umask
-+//go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Undelete(path string) (err error) {
-@@ -1484,13 +2193,18 @@ func Undelete(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_undelete_trampoline()
-+
-+//go:linkname libc_undelete libc_undelete
-+//go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Unlink(path string) (err error) {
-@@ -1499,13 +2213,18 @@ func Unlink(path string) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_unlink_trampoline()
-+
-+//go:linkname libc_unlink libc_unlink
-+//go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Unlinkat(dirfd int, path string, flags int) (err error) {
-@@ -1514,13 +2233,18 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-+ _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_unlinkat_trampoline()
-+
-+//go:linkname libc_unlinkat libc_unlinkat
-+//go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Unmount(path string, flags int) (err error) {
-@@ -1529,13 +2253,18 @@ func Unmount(path string, flags int) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_unmount_trampoline()
-+
-+//go:linkname libc_unmount libc_unmount
-+//go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func write(fd int, p []byte) (n int, err error) {
-@@ -1545,7 +2274,7 @@ func write(fd int, p []byte) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1553,10 +2282,15 @@ func write(fd int, p []byte) (n int, err error) {
- return
- }
-
-+func libc_write_trampoline()
-+
-+//go:linkname libc_write libc_write
-+//go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
-- r0, _, e1 := Syscall6(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos))
-+ r0, _, e1 := syscall_syscall6(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos))
- ret = uintptr(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1564,20 +2298,30 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
- return
- }
-
-+func libc_mmap_trampoline()
-+
-+//go:linkname libc_mmap libc_mmap
-+//go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-+ _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
- return
- }
-
-+func libc_munmap_trampoline()
-+
-+//go:linkname libc_munmap libc_munmap
-+//go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib"
-+
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1588,7 +2332,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
-+ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1599,7 +2343,7 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
-- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
-+ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
- sec = int64(r0)
- usec = int32(r1)
- if e1 != 0 {
-@@ -1607,3 +2351,134 @@ func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
- }
- return
- }
-+
-+func libc_gettimeofday_trampoline()
-+
-+//go:linkname libc_gettimeofday libc_gettimeofday
-+//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_fstat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fstat_trampoline()
-+
-+//go:linkname libc_fstat libc_fstat
-+//go:cgo_import_dynamic libc_fstat fstat "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall6(funcPC(libc_fstatat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fstatat_trampoline()
-+
-+//go:linkname libc_fstatat libc_fstatat
-+//go:cgo_import_dynamic libc_fstatat fstatat "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatfs(fd int, stat *Statfs_t) (err error) {
-+ _, _, e1 := syscall_syscall(funcPC(libc_fstatfs_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_fstatfs_trampoline()
-+
-+//go:linkname libc_fstatfs libc_fstatfs
-+//go:cgo_import_dynamic libc_fstatfs fstatfs "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
-+ r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat_trampoline), uintptr(buf), uintptr(size), uintptr(flags))
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_getfsstat_trampoline()
-+
-+//go:linkname libc_getfsstat libc_getfsstat
-+//go:cgo_import_dynamic libc_getfsstat getfsstat "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Lstat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_lstat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_lstat_trampoline()
-+
-+//go:linkname libc_lstat libc_lstat
-+//go:cgo_import_dynamic libc_lstat lstat "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Stat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_stat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_stat_trampoline()
-+
-+//go:linkname libc_stat libc_stat
-+//go:cgo_import_dynamic libc_stat stat "/usr/lib/libSystem.B.dylib"
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Statfs(path string, stat *Statfs_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := syscall_syscall(funcPC(libc_statfs_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+func libc_statfs_trampoline()
-+
-+//go:linkname libc_statfs libc_statfs
-+//go:cgo_import_dynamic libc_statfs statfs "/usr/lib/libSystem.B.dylib"
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s
-new file mode 100644
-index 00000000..40cce1bb
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s
-@@ -0,0 +1,282 @@
-+// go run mkasm_darwin.go arm64
-+// Code generated by the command above; DO NOT EDIT.
-+
-+// +build go1.12
-+
-+#include "textflag.h"
-+TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getgroups(SB)
-+TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setgroups(SB)
-+TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_wait4(SB)
-+TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_accept(SB)
-+TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_bind(SB)
-+TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_connect(SB)
-+TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_socket(SB)
-+TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getsockopt(SB)
-+TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setsockopt(SB)
-+TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpeername(SB)
-+TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getsockname(SB)
-+TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_shutdown(SB)
-+TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_socketpair(SB)
-+TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_recvfrom(SB)
-+TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sendto(SB)
-+TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_recvmsg(SB)
-+TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sendmsg(SB)
-+TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_kevent(SB)
-+TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_utimes(SB)
-+TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_futimes(SB)
-+TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_poll(SB)
-+TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_madvise(SB)
-+TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mlock(SB)
-+TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mlockall(SB)
-+TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mprotect(SB)
-+TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_msync(SB)
-+TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_munlock(SB)
-+TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_munlockall(SB)
-+TEXT ·libc_getattrlist_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getattrlist(SB)
-+TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pipe(SB)
-+TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getxattr(SB)
-+TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fgetxattr(SB)
-+TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setxattr(SB)
-+TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fsetxattr(SB)
-+TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_removexattr(SB)
-+TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fremovexattr(SB)
-+TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_listxattr(SB)
-+TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_flistxattr(SB)
-+TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setattrlist(SB)
-+TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fcntl(SB)
-+TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_kill(SB)
-+TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_ioctl(SB)
-+TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sysctl(SB)
-+TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sendfile(SB)
-+TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_access(SB)
-+TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_adjtime(SB)
-+TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chdir(SB)
-+TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chflags(SB)
-+TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chmod(SB)
-+TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chown(SB)
-+TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_chroot(SB)
-+TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_clock_gettime(SB)
-+TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_close(SB)
-+TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_dup(SB)
-+TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_dup2(SB)
-+TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_exchangedata(SB)
-+TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_exit(SB)
-+TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_faccessat(SB)
-+TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchdir(SB)
-+TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchflags(SB)
-+TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchmod(SB)
-+TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchmodat(SB)
-+TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchown(SB)
-+TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fchownat(SB)
-+TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_flock(SB)
-+TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fpathconf(SB)
-+TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fsync(SB)
-+TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_ftruncate(SB)
-+TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getdtablesize(SB)
-+TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getegid(SB)
-+TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_geteuid(SB)
-+TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getgid(SB)
-+TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpgid(SB)
-+TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpgrp(SB)
-+TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpid(SB)
-+TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getppid(SB)
-+TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getpriority(SB)
-+TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getrlimit(SB)
-+TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getrusage(SB)
-+TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getsid(SB)
-+TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getuid(SB)
-+TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_issetugid(SB)
-+TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_kqueue(SB)
-+TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_lchown(SB)
-+TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_link(SB)
-+TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_linkat(SB)
-+TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_listen(SB)
-+TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mkdir(SB)
-+TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mkdirat(SB)
-+TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mkfifo(SB)
-+TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mknod(SB)
-+TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_open(SB)
-+TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_openat(SB)
-+TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pathconf(SB)
-+TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pread(SB)
-+TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_pwrite(SB)
-+TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_read(SB)
-+TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_readlink(SB)
-+TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_readlinkat(SB)
-+TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_rename(SB)
-+TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_renameat(SB)
-+TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_revoke(SB)
-+TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_rmdir(SB)
-+TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_lseek(SB)
-+TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_select(SB)
-+TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setegid(SB)
-+TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_seteuid(SB)
-+TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setgid(SB)
-+TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setlogin(SB)
-+TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setpgid(SB)
-+TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setpriority(SB)
-+TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setprivexec(SB)
-+TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setregid(SB)
-+TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setreuid(SB)
-+TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setrlimit(SB)
-+TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setsid(SB)
-+TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_settimeofday(SB)
-+TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_setuid(SB)
-+TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_symlink(SB)
-+TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_symlinkat(SB)
-+TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_sync(SB)
-+TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_truncate(SB)
-+TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_umask(SB)
-+TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_undelete(SB)
-+TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_unlink(SB)
-+TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_unlinkat(SB)
-+TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_unmount(SB)
-+TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_write(SB)
-+TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_mmap(SB)
-+TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_munmap(SB)
-+TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_gettimeofday(SB)
-+TEXT ·libc_fstat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fstat(SB)
-+TEXT ·libc_fstatat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fstatat(SB)
-+TEXT ·libc_fstatfs_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_fstatfs(SB)
-+TEXT ·libc_getfsstat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_getfsstat(SB)
-+TEXT ·libc_lstat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_lstat(SB)
-+TEXT ·libc_stat_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_stat(SB)
-+TEXT ·libc_statfs_trampoline(SB),NOSPLIT,$0-0
-+ JMP libc_statfs(SB)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
-index 7fa205cd..fe1fdd78 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -dragonfly -tags dragonfly,amd64 syscall_bsd.go syscall_dragonfly.go syscall_dragonfly_amd64.go
-+// go run mksyscall.go -dragonfly -tags dragonfly,amd64 syscall_bsd.go syscall_dragonfly.go syscall_dragonfly_amd64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build dragonfly,amd64
-@@ -255,9 +255,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -412,6 +412,33 @@ func extpwrite(fd int, p []byte, flags int, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getcwd(buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ioctl(fd int, req uint, arg uintptr) (err error) {
-+ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -550,6 +577,21 @@ func Exit(code int) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchdir(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -580,6 +622,21 @@ func Fchmod(fd int, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchown(fd int, uid int, gid int) (err error) {
- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
-@@ -590,6 +647,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Flock(fd int, how int) (err error) {
- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
- if e1 != 0 {
-@@ -621,6 +693,21 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fstatfs(fd int, stat *Statfs_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
-@@ -651,6 +738,23 @@ func Ftruncate(fd int, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getdents(fd int, buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(buf) > 0 {
-@@ -859,6 +963,26 @@ func Link(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Listen(s int, backlog int) (err error) {
- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
- if e1 != 0 {
-@@ -899,6 +1023,21 @@ func Mkdir(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mkfifo(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -929,6 +1068,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mknodat(fd int, path string, mode uint32, dev int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
- if e1 != 0 {
-@@ -955,6 +1109,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Pathconf(path string, name int) (val int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1030,6 +1200,26 @@ func Rename(from string, to string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(fromfd int, from string, tofd int, to string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(from)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(to)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Revoke(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1071,8 +1261,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1277,6 +1468,26 @@ func Symlink(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Sync() (err error) {
- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
- if e1 != 0 {
-@@ -1340,6 +1551,21 @@ func Unlink(path string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Unlinkat(dirfd int, path string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Unmount(path string, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go
-index 1a0bb4cb..600f1d26 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -l32 -tags freebsd,386 syscall_bsd.go syscall_freebsd.go syscall_freebsd_386.go
-+// go run mksyscall.go -l32 -tags freebsd,386 syscall_bsd.go syscall_freebsd.go syscall_freebsd_386.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build freebsd,386
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,10 +350,25 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe() (r int, w int, err error) {
-- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
-- r = int(r0)
-- w = int(r1)
-+func pipe2(p *[2]_C_int, flags int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getcwd(buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -388,6 +387,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ptrace(request int, pid int, addr uintptr, data int) (err error) {
-+ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -886,7 +911,7 @@ func Fpathconf(fd int, name int) (val int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-+func fstat(fd int, stat *stat_freebsd11_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -896,7 +921,47 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-+func fstat_freebsd12(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -906,6 +971,16 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func fstatfs_freebsd12(fd int, stat *Statfs_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATFS_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fsync(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -926,7 +1001,7 @@ func Ftruncate(fd int, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-+func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(buf) > 0 {
- _p0 = unsafe.Pointer(&buf[0])
-@@ -943,6 +1018,23 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES_FREEBSD12, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getdtablesize() (size int) {
- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
- size = int(r0)
-@@ -1164,7 +1256,7 @@ func Listen(s int, backlog int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Lstat(path string, stat *Stat_t) (err error) {
-+func lstat(path string, stat *stat_freebsd11_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1224,7 +1316,7 @@ func Mkfifo(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mknod(path string, mode uint32, dev int) (err error) {
-+func mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1239,6 +1331,36 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func mknodat(fd int, path string, mode uint32, dev int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), uintptr(dev>>32), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
- if e1 != 0 {
-@@ -1473,8 +1595,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1629,7 +1752,7 @@ func Setuid(uid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-+func stat(path string, stat *stat_freebsd11_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1644,7 +1767,7 @@ func Stat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Statfs(path string, stat *Statfs_t) (err error) {
-+func statfs(path string, stat *statfs_freebsd11_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1659,6 +1782,21 @@ func Statfs(path string, stat *Statfs_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func statfs_freebsd12(path string, stat *Statfs_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STATFS_FREEBSD12, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Symlink(path string, link string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
-index ac1e8e01..064934b0 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -tags freebsd,amd64 syscall_bsd.go syscall_freebsd.go syscall_freebsd_amd64.go
-+// go run mksyscall.go -tags freebsd,amd64 syscall_bsd.go syscall_freebsd.go syscall_freebsd_amd64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build freebsd,amd64
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,10 +350,25 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe() (r int, w int, err error) {
-- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
-- r = int(r0)
-- w = int(r1)
-+func pipe2(p *[2]_C_int, flags int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getcwd(buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -388,6 +387,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ptrace(request int, pid int, addr uintptr, data int) (err error) {
-+ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -886,7 +911,7 @@ func Fpathconf(fd int, name int) (val int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-+func fstat(fd int, stat *stat_freebsd11_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -896,7 +921,47 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-+func fstat_freebsd12(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -906,6 +971,16 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func fstatfs_freebsd12(fd int, stat *Statfs_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATFS_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fsync(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -926,7 +1001,7 @@ func Ftruncate(fd int, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-+func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(buf) > 0 {
- _p0 = unsafe.Pointer(&buf[0])
-@@ -943,6 +1018,23 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES_FREEBSD12, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getdtablesize() (size int) {
- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
- size = int(r0)
-@@ -1164,7 +1256,7 @@ func Listen(s int, backlog int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Lstat(path string, stat *Stat_t) (err error) {
-+func lstat(path string, stat *stat_freebsd11_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1224,7 +1316,7 @@ func Mkfifo(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mknod(path string, mode uint32, dev int) (err error) {
-+func mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1239,6 +1331,36 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func mknodat(fd int, path string, mode uint32, dev int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
- if e1 != 0 {
-@@ -1473,8 +1595,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1629,7 +1752,7 @@ func Setuid(uid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-+func stat(path string, stat *stat_freebsd11_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1644,7 +1767,7 @@ func Stat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Statfs(path string, stat *Statfs_t) (err error) {
-+func statfs(path string, stat *statfs_freebsd11_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1659,6 +1782,21 @@ func Statfs(path string, stat *Statfs_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func statfs_freebsd12(path string, stat *Statfs_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STATFS_FREEBSD12, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Symlink(path string, link string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go
-index 2b4e6acf..31d2c461 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -l32 -arm -tags freebsd,arm syscall_bsd.go syscall_freebsd.go syscall_freebsd_arm.go
-+// go run mksyscall.go -l32 -arm -tags freebsd,arm syscall_bsd.go syscall_freebsd.go syscall_freebsd_arm.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build freebsd,arm
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,10 +350,41 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe() (r int, w int, err error) {
-- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
-- r = int(r0)
-- w = int(r1)
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func pipe2(p *[2]_C_int, flags int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getcwd(buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -388,6 +403,16 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func ptrace(request int, pid int, addr uintptr, data int) (err error) {
-+ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -886,7 +911,7 @@ func Fpathconf(fd int, name int) (val int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-+func fstat(fd int, stat *stat_freebsd11_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -896,7 +921,47 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-+func fstat_freebsd12(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -906,6 +971,16 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func fstatfs_freebsd12(fd int, stat *Statfs_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATFS_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fsync(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -926,7 +1001,7 @@ func Ftruncate(fd int, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-+func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(buf) > 0 {
- _p0 = unsafe.Pointer(&buf[0])
-@@ -943,6 +1018,23 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES_FREEBSD12, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getdtablesize() (size int) {
- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
- size = int(r0)
-@@ -1164,7 +1256,7 @@ func Listen(s int, backlog int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Lstat(path string, stat *Stat_t) (err error) {
-+func lstat(path string, stat *stat_freebsd11_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1224,7 +1316,7 @@ func Mkfifo(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mknod(path string, mode uint32, dev int) (err error) {
-+func mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1239,6 +1331,36 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func mknodat(fd int, path string, mode uint32, dev int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
- if e1 != 0 {
-@@ -1473,8 +1595,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1629,7 +1752,7 @@ func Setuid(uid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-+func stat(path string, stat *stat_freebsd11_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1644,7 +1767,7 @@ func Stat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Statfs(path string, stat *Statfs_t) (err error) {
-+func statfs(path string, stat *statfs_freebsd11_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1659,6 +1782,21 @@ func Statfs(path string, stat *Statfs_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func statfs_freebsd12(path string, stat *Statfs_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STATFS_FREEBSD12, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Symlink(path string, link string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go
-similarity index 90%
-copy from vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
-copy to vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go
-index ac1e8e01..4adaaa56 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go
-@@ -1,7 +1,7 @@
--// mksyscall.pl -tags freebsd,amd64 syscall_bsd.go syscall_freebsd.go syscall_freebsd_amd64.go
-+// go run mksyscall.go -tags freebsd,arm64 syscall_bsd.go syscall_freebsd.go syscall_freebsd_arm64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build freebsd,amd64
-+// +build freebsd,arm64
-
- package unix
-
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,10 +350,25 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe() (r int, w int, err error) {
-- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
-- r = int(r0)
-- w = int(r1)
-+func pipe2(p *[2]_C_int, flags int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getcwd(buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -388,6 +387,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ptrace(request int, pid int, addr uintptr, data int) (err error) {
-+ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -886,7 +911,7 @@ func Fpathconf(fd int, name int) (val int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-+func fstat(fd int, stat *stat_freebsd11_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -896,7 +921,47 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-+func fstat_freebsd12(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -906,6 +971,16 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func fstatfs_freebsd12(fd int, stat *Statfs_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATFS_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fsync(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -926,7 +1001,7 @@ func Ftruncate(fd int, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-+func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(buf) > 0 {
- _p0 = unsafe.Pointer(&buf[0])
-@@ -943,6 +1018,23 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES_FREEBSD12, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getdtablesize() (size int) {
- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
- size = int(r0)
-@@ -1164,7 +1256,7 @@ func Listen(s int, backlog int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Lstat(path string, stat *Stat_t) (err error) {
-+func lstat(path string, stat *stat_freebsd11_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1224,7 +1316,7 @@ func Mkfifo(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mknod(path string, mode uint32, dev int) (err error) {
-+func mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1239,6 +1331,36 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func mknodat(fd int, path string, mode uint32, dev int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
- if e1 != 0 {
-@@ -1473,8 +1595,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1629,7 +1752,7 @@ func Setuid(uid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-+func stat(path string, stat *stat_freebsd11_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1644,7 +1767,7 @@ func Stat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Statfs(path string, stat *Statfs_t) (err error) {
-+func statfs(path string, stat *statfs_freebsd11_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
-@@ -1659,6 +1782,21 @@ func Statfs(path string, stat *Statfs_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func statfs_freebsd12(path string, stat *Statfs_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STATFS_FREEBSD12, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Symlink(path string, link string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go
-new file mode 100644
-index 00000000..92efa1da
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go
-@@ -0,0 +1,87 @@
-+// go run mksyscall_solaris.go -illumos -tags illumos,amd64 syscall_illumos.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build illumos,amd64
-+
-+package unix
-+
-+import (
-+ "unsafe"
-+)
-+
-+//go:cgo_import_dynamic libc_readv readv "libc.so"
-+//go:cgo_import_dynamic libc_preadv preadv "libc.so"
-+//go:cgo_import_dynamic libc_writev writev "libc.so"
-+//go:cgo_import_dynamic libc_pwritev pwritev "libc.so"
-+
-+//go:linkname procreadv libc_readv
-+//go:linkname procpreadv libc_preadv
-+//go:linkname procwritev libc_writev
-+//go:linkname procpwritev libc_pwritev
-+
-+var (
-+ procreadv,
-+ procpreadv,
-+ procwritev,
-+ procpwritev syscallFunc
-+)
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func readv(fd int, iovs []Iovec) (n int, err error) {
-+ var _p0 *Iovec
-+ if len(iovs) > 0 {
-+ _p0 = &iovs[0]
-+ }
-+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procreadv)), 3, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(iovs)), 0, 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = e1
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func preadv(fd int, iovs []Iovec, off int64) (n int, err error) {
-+ var _p0 *Iovec
-+ if len(iovs) > 0 {
-+ _p0 = &iovs[0]
-+ }
-+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procpreadv)), 4, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(iovs)), uintptr(off), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = e1
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func writev(fd int, iovs []Iovec) (n int, err error) {
-+ var _p0 *Iovec
-+ if len(iovs) > 0 {
-+ _p0 = &iovs[0]
-+ }
-+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procwritev)), 3, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(iovs)), 0, 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = e1
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func pwritev(fd int, iovs []Iovec, off int64) (n int, err error) {
-+ var _p0 *Iovec
-+ if len(iovs) > 0 {
-+ _p0 = &iovs[0]
-+ }
-+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procpwritev)), 4, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(iovs)), uintptr(off), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = e1
-+ }
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go b/vendor/golang.org/x/sys/unix/zsyscall_linux.go
-similarity index 79%
-copy from vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
-copy to vendor/golang.org/x/sys/unix/zsyscall_linux.go
-index b6ff9e39..fd2dae8e 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux.go
-@@ -1,7 +1,6 @@
--// mksyscall.pl -tags linux,s390x syscall_linux.go syscall_linux_s390x.go
--// Code generated by the command above; see README.md. DO NOT EDIT.
-+// Code generated by mkmerge.go; DO NOT EDIT.
-
--// +build linux,s390x
-+// +build linux
-
- package unix
-
-@@ -10,7 +9,16 @@ import (
- "unsafe"
- )
-
--var _ syscall.Errno
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-+ r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_flags), 0)
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-@@ -143,21 +151,6 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func utimes(path string, times *[2]Timeval) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -173,16 +166,6 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Getcwd(buf []byte) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(buf) > 0 {
-@@ -309,6 +292,36 @@ func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(keyType)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(restriction)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-+ _, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
- if e1 != 0 {
-@@ -412,6 +425,26 @@ func Adjtimex(buf *Timex) (state int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-+ _, _, e1 := RawSyscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-+ _, _, e1 := RawSyscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Chdir(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -442,6 +475,16 @@ func Chroot(path string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func ClockGetres(clockid int32, res *Timespec) (err error) {
-+ _, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func ClockGettime(clockid int32, time *Timespec) (err error) {
- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
- if e1 != 0 {
-@@ -452,6 +495,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-+ _, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Close(fd int) (err error) {
- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -473,9 +526,13 @@ func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags in
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Dup(oldfd int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-- fd = int(r0)
-+func DeleteModule(name string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(name)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_DELETE_MODULE, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -484,8 +541,9 @@ func Dup(oldfd int) (fd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Dup3(oldfd int, newfd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-+func Dup(oldfd int) (fd int, err error) {
-+ r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -494,9 +552,8 @@ func Dup3(oldfd int, newfd int, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func EpollCreate(size int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-- fd = int(r0)
-+func Dup3(oldfd int, newfd int, flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -538,19 +595,14 @@ func Eventfd(initval uint, flags int) (fd int, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Exit(code int) {
-- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-+ SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+func Fchdir(fd int) (err error) {
-+ _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -559,8 +611,8 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
-+func Fchmod(fd int, mode uint32) (err error) {
-+ _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -569,8 +621,13 @@ func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-+func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -579,8 +636,8 @@ func Fchdir(fd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-+func Fdatasync(fd int) (err error) {
-+ _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -589,13 +646,20 @@ func Fchmod(fd int, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-+func Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-+ _p0, err = BytePtrFromString(attr)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-+ var _p1 unsafe.Pointer
-+ if len(dest) > 0 {
-+ _p1 = unsafe.Pointer(&dest[0])
-+ } else {
-+ _p1 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 0, 0)
-+ sz = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -604,9 +668,13 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func FinitModule(fd int, params string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(params)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -615,8 +683,15 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fdatasync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
-+func Flistxattr(fd int, dest []byte) (sz int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(dest) > 0 {
-+ _p0 = unsafe.Pointer(&dest[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-+ sz = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -635,6 +710,42 @@ func Flock(fd int, how int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fremovexattr(fd int, attr string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fsetxattr(fd int, attr string, dest []byte, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attr)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 unsafe.Pointer
-+ if len(dest) > 0 {
-+ _p1 = unsafe.Pointer(&dest[0])
-+ } else {
-+ _p1 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fsync(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -674,7 +785,7 @@ func Getpgid(pid int) (pgid int, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETPID, 0, 0, 0)
- pid = int(r0)
- return
- }
-@@ -682,7 +793,7 @@ func Getpid() (pid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETPPID, 0, 0, 0)
- ppid = int(r0)
- return
- }
-@@ -739,7 +850,7 @@ func Getsid(pid int) (sid int, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Gettid() (tid int) {
-- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
- tid = int(r0)
- return
- }
-@@ -773,6 +884,27 @@ func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func InitModule(moduleImage []byte, params string) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(moduleImage) > 0 {
-+ _p0 = unsafe.Pointer(&moduleImage[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(params)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(pathname)
-@@ -955,6 +1087,22 @@ func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func MemfdCreate(name string, flags int) (fd int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(name)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall(SYS_MEMFD_CREATE, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mkdirat(dirfd int, path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -995,6 +1143,17 @@ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func PerfEventOpen(attr *PerfEventAttr, pid int, cpu int, groupFd int, flags int) (fd int, err error) {
-+ r0, _, e1 := Syscall6(SYS_PERF_EVENT_OPEN, uintptr(unsafe.Pointer(attr)), uintptr(pid), uintptr(cpu), uintptr(groupFd), uintptr(flags), 0)
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func PivotRoot(newroot string, putold string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(newroot)
-@@ -1035,6 +1194,17 @@ func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func read(fd int, p []byte) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(p) > 0 {
-@@ -1072,7 +1242,7 @@ func Removexattr(path string, attr string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(oldpath)
- if err != nil {
-@@ -1083,7 +1253,7 @@ func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err e
- if err != nil {
- return
- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ _, _, e1 := Syscall6(SYS_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1227,15 +1397,24 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Sync() {
-- Syscall(SYS_SYNC, 0, 0, 0)
-+func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-+ newfd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Syncfs(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
-+func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1244,8 +1423,15 @@ func Syncfs(fd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Sysinfo(info *Sysinfo_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
-+func Sync() {
-+ SyscallNoError(SYS_SYNC, 0, 0, 0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Syncfs(fd int) (err error) {
-+ _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1254,9 +1440,8 @@ func Sysinfo(info *Sysinfo_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-- r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-- n = int64(r0)
-+func Sysinfo(info *Sysinfo_t) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1287,7 +1472,7 @@ func Times(tms *Tms) (ticks uintptr, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Umask(mask int) (oldmask int) {
-- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
- oldmask = int(r0)
- return
- }
-@@ -1329,16 +1514,6 @@ func Unshare(flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Ustat(dev int, ubuf *Ustat_t) (err error) {
-- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func write(fd int, p []byte) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(p) > 0 {
-@@ -1388,24 +1563,15 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Madvise(b []byte, advice int) (err error) {
-+func readv(fd int, iovs []Iovec) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-+ if len(iovs) > 0 {
-+ _p0 = unsafe.Pointer(&iovs[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
-+ r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1414,14 +1580,15 @@ func Madvise(b []byte, advice int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mprotect(b []byte, prot int) (err error) {
-+func writev(fd int, iovs []Iovec) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-+ if len(iovs) > 0 {
-+ _p0 = unsafe.Pointer(&iovs[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-+ r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1430,14 +1597,15 @@ func Mprotect(b []byte, prot int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mlock(b []byte) (err error) {
-+func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-+ if len(iovs) > 0 {
-+ _p0 = unsafe.Pointer(&iovs[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-+ r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1446,24 +1614,15 @@ func Mlock(b []byte) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Munlock(b []byte) (err error) {
-+func pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-+ if len(iovs) > 0 {
-+ _p0 = unsafe.Pointer(&iovs[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-+ r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1472,34 +1631,15 @@ func Mlockall(flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Msync(b []byte, flags int) (err error) {
-+func preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-+ if len(iovs) > 0 {
-+ _p0 = unsafe.Pointer(&iovs[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup2(oldfd int, newfd int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
-+ r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), uintptr(flags))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1508,14 +1648,14 @@ func Dup2(oldfd int, newfd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-+func pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(events) > 0 {
-- _p0 = unsafe.Pointer(&events[0])
-+ if len(iovs) > 0 {
-+ _p0 = unsafe.Pointer(&iovs[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
-+ r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), uintptr(flags))
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1525,141 +1665,8 @@ func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-- _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchown(fd int, uid int, gid int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fstatfs(fd int, buf *Statfs_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(buf)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Ftruncate(fd int, length int64) (err error) {
-- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-- egid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Geteuid() (euid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-- euid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-- gid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrlimit(resource int, rlim *Rlimit) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-- uid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyInit() (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lchown(path string, uid int, gid int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lstat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Pause() (err error) {
-- _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0)
-+func munmap(addr uintptr, length uintptr) (err error) {
-+ _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1668,15 +1675,14 @@ func Pause() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Pread(fd int, p []byte, offset int64) (n int, err error) {
-+func Madvise(b []byte, advice int) (err error) {
- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-+ if len(b) > 0 {
-+ _p0 = unsafe.Pointer(&b[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PREAD64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
-- n = int(r0)
-+ _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1685,58 +1691,14 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-+func Mprotect(b []byte, prot int) (err error) {
- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-+ if len(b) > 0 {
-+ _p0 = unsafe.Pointer(&b[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PWRITE64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Seek(fd int, offset int64, whence int) (off int64, err error) {
-- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
-- off = int64(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-- r0, _, e1 := Syscall6(SYS_SENDFILE, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
-- written = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setfsgid(gid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+ _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1745,18 +1707,14 @@ func Setfsgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsuid(uid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-+func Mlock(b []byte) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(b) > 0 {
-+ _p0 = unsafe.Pointer(&b[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setregid(rgid int, egid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
-+ _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1765,8 +1723,8 @@ func Setregid(rgid int, egid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setresgid(rgid int, egid int, sgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid))
-+func Mlockall(flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1775,18 +1733,14 @@ func Setresgid(rgid int, egid int, sgid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setresuid(ruid int, euid int, suid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid))
-- if e1 != 0 {
-- err = errnoErr(e1)
-+func Msync(b []byte, flags int) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(b) > 0 {
-+ _p0 = unsafe.Pointer(&b[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setrlimit(resource int, rlim *Rlimit) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
-+ _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1795,19 +1749,14 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setreuid(ruid int, euid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-+func Munlock(b []byte) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(b) > 0 {
-+ _p0 = unsafe.Pointer(&b[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) {
-- r0, _, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int64(r0)
-+ _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1816,13 +1765,8 @@ func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n i
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+func Munlockall() (err error) {
-+ _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1831,13 +1775,13 @@ func Stat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Statfs(path string, buf *Statfs_t) (err error) {
-+func faccessat(dirfd int, path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
-+ _, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1846,23 +1790,13 @@ func Statfs(path string, buf *Statfs_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func SyncFileRange(fd int, off int64, n int64, flags int) (err error) {
-- _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE, uintptr(fd), uintptr(off), uintptr(n), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Truncate(path string, length int64) (err error) {
-+func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int, flags int) (err error) {
- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-+ _p0, err = BytePtrFromString(pathname)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
-+ _, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1871,44 +1805,9 @@ func Truncate(path string, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func getgroups(n int, list *_Gid_t) (nn int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0)
-- nn = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func setgroups(n int, list *_Gid_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Gettimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Utime(path string, buf *Utimbuf) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
-+func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-+ r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1924,14 +1823,3 @@ func pipe2(p *[2]_C_int, flags int) (err error) {
- }
- return
- }
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
-index 38c1bbdf..ba63af7b 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -l32 -tags linux,386 syscall_linux.go syscall_linux_386.go
-+// go run mksyscall.go -l32 -tags linux,386 syscall_linux.go syscall_linux_386.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build linux,386
-@@ -14,1259 +14,8 @@ var _ syscall.Errno
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fchmodat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(buf) > 0 {
-- _p1 = unsafe.Pointer(&buf[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unlinkat(dirfd int, path string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimes(path string, times *[2]Timeval) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getcwd(buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-- wpid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg2)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg3)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(arg4)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(payload) > 0 {
-- _p0 = unsafe.Pointer(&payload[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(source)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(fstype)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Acct(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(payload) > 0 {
-- _p2 = unsafe.Pointer(&payload[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Adjtimex(buf *Timex) (state int, err error) {
-- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-- state = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chdir(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chroot(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ClockGettime(clockid int32, time *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup(oldfd int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup3(oldfd int, newfd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate(size int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate1(flag int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Eventfd(initval uint, flags int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Exit(code int) {
-- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fdatasync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdents(fd int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-- pgid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-- pid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-- ppid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-- prio = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrandom(buf []byte, flags int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-- sid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Gettid() (tid int) {
-- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
-- tid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(pathname)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-- watchdesc = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyInit1(flags int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-- success = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Kill(pid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Klogctl(typ int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Listxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Llistxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lremovexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func PivotRoot(newroot string, putold string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(newroot)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(putold)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
-- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func read(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Removexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(callback)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setdomainname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sethostname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-- pid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Settimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setns(fd int, nstype int) (err error) {
-- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sync() {
-- Syscall(SYS_SYNC, 0, 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Syncfs(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sysinfo(info *Sysinfo_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-- r0, r1, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-- n = int64(int64(r1)<<32 | int64(r0))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
-+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(mask>>32), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1275,9 +24,8 @@ func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Times(tms *Tms) (ticks uintptr, err error) {
-- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
-- ticks = uintptr(r0)
-+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1286,16 +34,9 @@ func Times(tms *Tms) (ticks uintptr, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Umask(mask int) (oldmask int) {
-- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
-- oldmask = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Uname(buf *Utsname) (err error) {
-- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
-+func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-+ r0, r1, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-+ n = int64(int64(r1)<<32 | int64(r0))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1304,13 +45,8 @@ func Uname(buf *Utsname) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Unmount(target string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+func pipe(p *[2]_C_int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1319,8 +55,8 @@ func Unmount(target string, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Unshare(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
-+func Dup2(oldfd int, newfd int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1329,8 +65,9 @@ func Unshare(flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Ustat(dev int, ubuf *Ustat_t) (err error) {
-- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+func EpollCreate(size int) (fd int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1339,46 +76,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func write(fd int, p []byte) (n int, err error) {
-+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-+ if len(events) > 0 {
-+ _p0 = unsafe.Pointer(&events[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func exitThread(code int) (err error) {
-- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func readlen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func writelen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-+ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1388,128 +93,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Madvise(b []byte, advice int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mprotect(b []byte, prot int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Msync(b []byte, flags int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func pipe(p *[2]_C_int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func pipe2(p *[2]_C_int, flags int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall6(SYS_FADVISE64_64, uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(length), uintptr(length>>32), uintptr(advice))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1518,8 +103,8 @@ func pipe2(p *[2]_C_int, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Dup2(oldfd int, newfd int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
-+func Fchown(fd int, uid int, gid int) (err error) {
-+ _, _, e1 := Syscall(SYS_FCHOWN32, uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1528,8 +113,8 @@ func Dup2(oldfd int, newfd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-- _, _, e1 := Syscall6(SYS_FADVISE64_64, uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(length), uintptr(length>>32), uintptr(advice))
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1538,18 +123,13 @@ func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fchown(fd int, uid int, gid int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHOWN32, uintptr(fd), uintptr(uid), uintptr(gid))
-- if e1 != 0 {
-- err = errnoErr(e1)
-+func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1569,7 +149,7 @@ func Ftruncate(fd int, length int64) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID32, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEGID32, 0, 0, 0)
- egid = int(r0)
- return
- }
-@@ -1577,7 +157,7 @@ func Getegid() (egid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (euid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID32, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEUID32, 0, 0, 0)
- euid = int(r0)
- return
- }
-@@ -1585,7 +165,7 @@ func Geteuid() (euid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID32, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETGID32, 0, 0, 0)
- gid = int(r0)
- return
- }
-@@ -1593,7 +173,7 @@ func Getgid() (gid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID32, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETUID32, 0, 0, 0)
- uid = int(r0)
- return
- }
-@@ -1695,6 +275,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
- r0, _, e1 := Syscall6(SYS_SENDFILE64, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
- written = int(r0)
-@@ -1706,8 +306,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsgid(gid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSGID32, uintptr(gid), 0, 0)
-+func setfsgid(gid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSGID32, uintptr(gid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1716,8 +317,9 @@ func Setfsgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsuid(uid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSUID32, uintptr(uid), 0, 0)
-+func setfsuid(uid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSUID32, uintptr(uid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1817,6 +419,16 @@ func Truncate(path string, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func getgroups(n int, list *_Gid_t) (nn int, err error) {
- r0, _, e1 := RawSyscall(SYS_GETGROUPS32, uintptr(n), uintptr(unsafe.Pointer(list)), 0)
- nn = int(r0)
-@@ -1860,15 +472,8 @@ func mmap2(addr uintptr, length uintptr, prot int, flags int, fd int, pageOffset
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(events) > 0 {
-- _p0 = unsafe.Pointer(&events[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
-- n = int(r0)
-+func Pause() (err error) {
-+ _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1877,8 +482,8 @@ func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Pause() (err error) {
-- _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0)
-+func getrlimit(resource int, rlim *rlimit32) (err error) {
-+ _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1887,8 +492,8 @@ func Pause() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func getrlimit(resource int, rlim *rlimit32) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
-+func setrlimit(resource int, rlim *rlimit32) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1897,8 +502,13 @@ func getrlimit(resource int, rlim *rlimit32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func setrlimit(resource int, rlim *rlimit32) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
-+func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1943,6 +553,21 @@ func Utime(path string, buf *Utimbuf) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func utimes(path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
- n = int(r0)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
-index dc8fe0a8..f64adef4 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -tags linux,amd64 syscall_linux.go syscall_linux_amd64.go
-+// go run mksyscall.go -tags linux,amd64 syscall_linux.go syscall_linux_amd64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build linux,amd64
-@@ -14,1446 +14,8 @@ var _ syscall.Errno
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fchmodat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(buf) > 0 {
-- _p1 = unsafe.Pointer(&buf[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unlinkat(dirfd int, path string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimes(path string, times *[2]Timeval) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getcwd(buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-- wpid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg2)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg3)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(arg4)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(payload) > 0 {
-- _p0 = unsafe.Pointer(&payload[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(source)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(fstype)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Acct(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(payload) > 0 {
-- _p2 = unsafe.Pointer(&payload[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Adjtimex(buf *Timex) (state int, err error) {
-- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-- state = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chdir(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chroot(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ClockGettime(clockid int32, time *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup(oldfd int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup3(oldfd int, newfd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate(size int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate1(flag int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Eventfd(initval uint, flags int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Exit(code int) {
-- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fdatasync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdents(fd int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-- pgid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-- pid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-- ppid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-- prio = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrandom(buf []byte, flags int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-- sid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Gettid() (tid int) {
-- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
-- tid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(pathname)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-- watchdesc = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyInit1(flags int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-- success = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Kill(pid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Klogctl(typ int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Listxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Llistxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lremovexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func PivotRoot(newroot string, putold string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(newroot)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(putold)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
-- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func read(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Removexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(callback)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setdomainname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sethostname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-- pid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Settimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setns(fd int, nstype int) (err error) {
-- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sync() {
-- Syscall(SYS_SYNC, 0, 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Syncfs(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sysinfo(info *Sysinfo_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-- r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-- n = int64(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Times(tms *Tms) (ticks uintptr, err error) {
-- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
-- ticks = uintptr(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Umask(mask int) (oldmask int) {
-- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
-- oldmask = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Uname(buf *Utsname) (err error) {
-- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unmount(target string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unshare(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Ustat(dev int, ubuf *Ustat_t) (err error) {
-- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func write(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func exitThread(code int) (err error) {
-- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func readlen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func writelen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Madvise(b []byte, advice int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mprotect(b []byte, prot int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
-+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1462,8 +24,8 @@ func Munlock(b []byte) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1472,14 +34,9 @@ func Mlockall(flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Msync(b []byte, flags int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-+func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-+ r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-+ n = int64(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1488,8 +45,8 @@ func Msync(b []byte, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-+func Dup2(oldfd int, newfd int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1498,8 +55,9 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Dup2(oldfd int, newfd int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
-+func EpollCreate(size int) (fd int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1555,6 +113,21 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_NEWFSTATAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fstatfs(fd int, buf *Statfs_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(buf)), 0)
- if e1 != 0 {
-@@ -1576,7 +149,7 @@ func Ftruncate(fd int, length int64) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
- egid = int(r0)
- return
- }
-@@ -1584,7 +157,7 @@ func Getegid() (egid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (euid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
- euid = int(r0)
- return
- }
-@@ -1592,7 +165,7 @@ func Geteuid() (euid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
- gid = int(r0)
- return
- }
-@@ -1610,14 +183,14 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
- uid = int(r0)
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func InotifyInit() (fd int, err error) {
-+func inotifyInit() (fd int, err error) {
- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
- fd = int(r0)
- if e1 != 0 {
-@@ -1673,21 +246,6 @@ func Listen(s int, n int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Lstat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Pause() (err error) {
- _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0)
- if e1 != 0 {
-@@ -1732,9 +290,18 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Seek(fd int, offset int64, whence int) (off int64, err error) {
-- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
-- off = int64(r0)
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1743,9 +310,9 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-- n = int(r0)
-+func Seek(fd int, offset int64, whence int) (off int64, err error) {
-+ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
-+ off = int64(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1765,8 +332,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsgid(gid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+func setfsgid(gid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1775,8 +343,9 @@ func Setfsgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsuid(uid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+func setfsuid(uid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1856,21 +425,6 @@ func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n i
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Statfs(path string, buf *Statfs_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1911,6 +465,16 @@ func Truncate(path string, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- fd = int(r0)
-@@ -2101,6 +665,21 @@ func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int6
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Utime(path string, buf *Utimbuf) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -2116,8 +695,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe(p *[2]_C_int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
-+func utimes(path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2126,8 +710,8 @@ func pipe(p *[2]_C_int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe2(p *[2]_C_int, flags int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+func pipe(p *[2]_C_int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2144,3 +728,18 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
- }
- return
- }
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(cmdline)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
-index 4d280427..ac19523e 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -l32 -arm -tags linux,arm syscall_linux.go syscall_linux_arm.go
-+// go run mksyscall.go -l32 -arm -tags linux,arm syscall_linux.go syscall_linux_arm.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build linux,arm
-@@ -14,1456 +14,8 @@ var _ syscall.Errno
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fchmodat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(buf) > 0 {
-- _p1 = unsafe.Pointer(&buf[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unlinkat(dirfd int, path string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimes(path string, times *[2]Timeval) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getcwd(buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-- wpid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg2)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg3)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(arg4)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(payload) > 0 {
-- _p0 = unsafe.Pointer(&payload[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(source)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(fstype)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Acct(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(payload) > 0 {
-- _p2 = unsafe.Pointer(&payload[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Adjtimex(buf *Timex) (state int, err error) {
-- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-- state = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chdir(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chroot(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ClockGettime(clockid int32, time *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup(oldfd int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup3(oldfd int, newfd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate(size int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate1(flag int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Eventfd(initval uint, flags int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Exit(code int) {
-- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fdatasync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdents(fd int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-- pgid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-- pid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-- ppid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-- prio = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrandom(buf []byte, flags int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-- sid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Gettid() (tid int) {
-- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
-- tid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(pathname)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-- watchdesc = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyInit1(flags int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-- success = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Kill(pid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Klogctl(typ int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Listxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Llistxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lremovexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func PivotRoot(newroot string, putold string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(newroot)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(putold)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
-- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func read(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Removexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(callback)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setdomainname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sethostname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-- pid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Settimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setns(fd int, nstype int) (err error) {
-- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sync() {
-- Syscall(SYS_SYNC, 0, 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Syncfs(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sysinfo(info *Sysinfo_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-- r0, r1, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-- n = int64(int64(r1)<<32 | int64(r0))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Times(tms *Tms) (ticks uintptr, err error) {
-- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
-- ticks = uintptr(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Umask(mask int) (oldmask int) {
-- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
-- oldmask = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Uname(buf *Utsname) (err error) {
-- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unmount(target string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unshare(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Ustat(dev int, ubuf *Ustat_t) (err error) {
-- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func write(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func exitThread(code int) (err error) {
-- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func readlen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func writelen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Madvise(b []byte, advice int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mprotect(b []byte, prot int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
-+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(mask>>32), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1472,14 +24,8 @@ func Mlockall(flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Msync(b []byte, flags int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1488,8 +34,9 @@ func Msync(b []byte, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-+func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-+ r0, r1, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-+ n = int64(int64(r1)<<32 | int64(r0))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1498,8 +45,8 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe2(p *[2]_C_int, flags int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+func pipe(p *[2]_C_int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1697,6 +244,34 @@ func Dup2(oldfd int, newfd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func EpollCreate(size int) (fd int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(events) > 0 {
-+ _p0 = unsafe.Pointer(&events[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchown(fd int, uid int, gid int) (err error) {
- _, _, e1 := Syscall(SYS_FCHOWN32, uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
-@@ -1717,8 +292,23 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID32, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEGID32, 0, 0, 0)
- egid = int(r0)
- return
- }
-@@ -1726,7 +316,7 @@ func Getegid() (egid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (euid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID32, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEUID32, 0, 0, 0)
- euid = int(r0)
- return
- }
-@@ -1734,7 +324,7 @@ func Geteuid() (euid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID32, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETGID32, 0, 0, 0)
- gid = int(r0)
- return
- }
-@@ -1742,7 +332,7 @@ func Getgid() (gid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID32, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETUID32, 0, 0, 0)
- uid = int(r0)
- return
- }
-@@ -1800,6 +390,36 @@ func Lstat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Pause() (err error) {
-+ _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
- r0, _, e1 := Syscall6(SYS_SENDFILE64, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
- written = int(r0)
-@@ -1822,8 +442,9 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsgid(gid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSGID32, uintptr(gid), 0, 0)
-+func setfsgid(gid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSGID32, uintptr(gid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1832,8 +453,9 @@ func Setfsgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsuid(uid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSUID32, uintptr(uid), 0, 0)
-+func setfsuid(uid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSUID32, uintptr(uid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1918,8 +540,8 @@ func Stat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Gettimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1928,15 +550,13 @@ func Gettimeofday(tv *Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(events) > 0 {
-- _p0 = unsafe.Pointer(&events[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-+func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
- }
-- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
-- n = int(r0)
-+ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1945,8 +565,23 @@ func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Pause() (err error) {
-- _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0)
-+func Gettimeofday(tv *Timeval) (err error) {
-+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func utimes(path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2053,3 +688,28 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
- }
- return
- }
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func armSyncFileRange(fd int, flags int, off int64, n int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_ARM_SYNC_FILE_RANGE, uintptr(fd), uintptr(flags), uintptr(off), uintptr(off>>32), uintptr(n), uintptr(n>>32))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(cmdline)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
-index 20ad4b6c..f0d2890b 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -tags linux,arm64 syscall_linux.go syscall_linux_arm64.go
-+// go run mksyscall.go -tags linux,arm64 syscall_linux.go syscall_linux_arm64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build linux,arm64
-@@ -14,1228 +14,8 @@ var _ syscall.Errno
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fchmodat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(buf) > 0 {
-- _p1 = unsafe.Pointer(&buf[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unlinkat(dirfd int, path string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimes(path string, times *[2]Timeval) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getcwd(buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-- wpid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg2)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg3)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(arg4)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(payload) > 0 {
-- _p0 = unsafe.Pointer(&payload[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(source)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(fstype)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Acct(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(payload) > 0 {
-- _p2 = unsafe.Pointer(&payload[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Adjtimex(buf *Timex) (state int, err error) {
-- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-- state = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chdir(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chroot(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ClockGettime(clockid int32, time *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup(oldfd int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup3(oldfd int, newfd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate(size int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate1(flag int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Eventfd(initval uint, flags int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Exit(code int) {
-- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fdatasync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdents(fd int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-- pgid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-- pid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-- ppid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-- prio = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrandom(buf []byte, flags int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-- sid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Gettid() (tid int) {
-- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
-- tid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(pathname)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-- watchdesc = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyInit1(flags int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-- success = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Kill(pid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Klogctl(typ int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Listxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Llistxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lremovexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func PivotRoot(newroot string, putold string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(newroot)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(putold)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
-- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func read(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Removexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(callback)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setdomainname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sethostname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-- pid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Settimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setns(fd int, nstype int) (err error) {
-- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sync() {
-- Syscall(SYS_SYNC, 0, 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Syncfs(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
-+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
-+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1244,8 +24,8 @@ func Syncfs(fd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Sysinfo(info *Sysinfo_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
-+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1265,120 +45,14 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Times(tms *Tms) (ticks uintptr, err error) {
-- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
-- ticks = uintptr(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Umask(mask int) (oldmask int) {
-- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
-- oldmask = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Uname(buf *Utsname) (err error) {
-- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unmount(target string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unshare(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Ustat(dev int, ubuf *Ustat_t) (err error) {
-- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func write(fd int, p []byte) (n int, err error) {
-+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-+ if len(events) > 0 {
-+ _p0 = unsafe.Pointer(&events[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func exitThread(code int) (err error) {
-- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func readlen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func writelen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-+ r0, _, e1 := Syscall6(SYS_EPOLL_PWAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1388,125 +62,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Madvise(b []byte, advice int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mprotect(b []byte, prot int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Msync(b []byte, flags int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(events) > 0 {
-- _p0 = unsafe.Pointer(&events[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_EPOLL_PWAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
-- n = int(r0)
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1571,7 +128,7 @@ func Ftruncate(fd int, length int64) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
- egid = int(r0)
- return
- }
-@@ -1579,7 +136,7 @@ func Getegid() (egid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (euid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
- euid = int(r0)
- return
- }
-@@ -1587,7 +144,7 @@ func Geteuid() (euid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
- gid = int(r0)
- return
- }
-@@ -1605,7 +162,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
- uid = int(r0)
- return
- }
-@@ -1656,9 +213,18 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Seek(fd int, offset int64, whence int) (off int64, err error) {
-- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
-- off = int64(r0)
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1667,9 +233,9 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-- n = int(r0)
-+func Seek(fd int, offset int64, whence int) (off int64, err error) {
-+ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
-+ off = int64(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1689,8 +255,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsgid(gid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+func setfsgid(gid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1699,8 +266,9 @@ func Setfsgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsuid(uid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+func setfsuid(uid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2020,8 +588,13 @@ func Gettimeofday(tv *Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe2(p *[2]_C_int, flags int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(cmdline)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go
-index 9f194dc4..aecbbca7 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -b32 -arm -tags linux,mips syscall_linux.go syscall_linux_mipsx.go
-+// go run mksyscall.go -b32 -arm -tags linux,mips syscall_linux.go syscall_linux_mipsx.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build linux,mips
-@@ -14,1228 +14,8 @@ var _ syscall.Errno
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fchmodat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(buf) > 0 {
-- _p1 = unsafe.Pointer(&buf[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unlinkat(dirfd int, path string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimes(path string, times *[2]Timeval) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getcwd(buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-- wpid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg2)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg3)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(arg4)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(payload) > 0 {
-- _p0 = unsafe.Pointer(&payload[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(source)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(fstype)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Acct(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(payload) > 0 {
-- _p2 = unsafe.Pointer(&payload[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Adjtimex(buf *Timex) (state int, err error) {
-- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-- state = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chdir(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chroot(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ClockGettime(clockid int32, time *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup(oldfd int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup3(oldfd int, newfd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate(size int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate1(flag int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Eventfd(initval uint, flags int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Exit(code int) {
-- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off>>32), uintptr(off), uintptr(len>>32), uintptr(len))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fdatasync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdents(fd int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-- pgid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-- pid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-- ppid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-- prio = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrandom(buf []byte, flags int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-- sid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Gettid() (tid int) {
-- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
-- tid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(pathname)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-- watchdesc = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyInit1(flags int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-- success = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Kill(pid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Klogctl(typ int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Listxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Llistxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lremovexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func PivotRoot(newroot string, putold string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(newroot)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(putold)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
-- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func read(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Removexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(callback)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setdomainname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sethostname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-- pid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Settimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setns(fd int, nstype int) (err error) {
-- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sync() {
-- Syscall(SYS_SYNC, 0, 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Syncfs(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
-+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
-+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask>>32), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1244,8 +24,8 @@ func Syncfs(fd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Sysinfo(info *Sysinfo_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
-+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off>>32), uintptr(off), uintptr(len>>32), uintptr(len))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1265,62 +45,8 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Times(tms *Tms) (ticks uintptr, err error) {
-- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
-- ticks = uintptr(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Umask(mask int) (oldmask int) {
-- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
-- oldmask = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Uname(buf *Utsname) (err error) {
-- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unmount(target string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unshare(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
-+func Dup2(oldfd int, newfd int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1329,8 +55,9 @@ func Unshare(flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Ustat(dev int, ubuf *Ustat_t) (err error) {
-- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+func EpollCreate(size int) (fd int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1339,46 +66,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func write(fd int, p []byte) (n int, err error) {
-+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-+ if len(events) > 0 {
-+ _p0 = unsafe.Pointer(&events[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func exitThread(code int) (err error) {
-- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func readlen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func writelen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-+ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1388,118 +83,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Madvise(b []byte, advice int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mprotect(b []byte, prot int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Msync(b []byte, flags int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup2(oldfd int, newfd int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall9(SYS_FADVISE64, uintptr(fd), 0, uintptr(offset>>32), uintptr(offset), uintptr(length>>32), uintptr(length), uintptr(advice), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1529,7 +114,7 @@ func Ftruncate(fd int, length int64) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
- egid = int(r0)
- return
- }
-@@ -1537,7 +122,7 @@ func Getegid() (egid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (euid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
- euid = int(r0)
- return
- }
-@@ -1545,7 +130,7 @@ func Geteuid() (euid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
- gid = int(r0)
- return
- }
-@@ -1553,7 +138,7 @@ func Getgid() (gid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
- uid = int(r0)
- return
- }
-@@ -1619,6 +204,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
- r0, _, e1 := Syscall6(SYS__NEWSELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
- n = int(r0)
-@@ -1641,8 +246,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsgid(gid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+func setfsgid(gid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1651,8 +257,9 @@ func Setfsgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsuid(uid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+func setfsuid(uid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1711,9 +318,9 @@ func Shutdown(fd int, how int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) {
-- r0, r1, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int64(int64(r0)<<32 | int64(r1))
-+func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1747,6 +354,16 @@ func Truncate(path string, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- fd = int(r0)
-@@ -1957,6 +574,21 @@ func Iopl(level int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Gettimeofday(tv *Timeval) (err error) {
- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
- if e1 != 0 {
-@@ -1978,13 +610,13 @@ func Time(t *Time_t) (tt Time_t, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Lstat(path string, stat *Stat_t) (err error) {
-+func Utime(path string, buf *Utimbuf) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ _, _, e1 := Syscall(SYS_UTIME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1993,8 +625,13 @@ func Lstat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+func utimes(path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2003,13 +640,13 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-+func Lstat(path string, stat *Stat_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2018,13 +655,23 @@ func Stat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Utime(path string, buf *Utimbuf) (err error) {
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UTIME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
-+ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2033,15 +680,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(events) > 0 {
-- _p0 = unsafe.Pointer(&events[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-+func Stat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
- }
-- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
-- n = int(r0)
-+ _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2060,8 +705,10 @@ func Pause() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe2(p *[2]_C_int, flags int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+func pipe() (p1 int, p2 int, err error) {
-+ r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
-+ p1 = int(r0)
-+ p2 = int(r1)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go
-index 4fde3ef0..424fb7fb 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -tags linux,mips64 syscall_linux.go syscall_linux_mips64x.go
-+// go run mksyscall.go -tags linux,mips64 syscall_linux.go syscall_linux_mips64x.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build linux,mips64
-@@ -14,1228 +14,8 @@ var _ syscall.Errno
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fchmodat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(buf) > 0 {
-- _p1 = unsafe.Pointer(&buf[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unlinkat(dirfd int, path string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimes(path string, times *[2]Timeval) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getcwd(buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-- wpid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg2)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg3)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(arg4)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(payload) > 0 {
-- _p0 = unsafe.Pointer(&payload[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(source)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(fstype)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Acct(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(payload) > 0 {
-- _p2 = unsafe.Pointer(&payload[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Adjtimex(buf *Timex) (state int, err error) {
-- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-- state = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chdir(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chroot(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ClockGettime(clockid int32, time *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup(oldfd int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup3(oldfd int, newfd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate(size int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate1(flag int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Eventfd(initval uint, flags int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Exit(code int) {
-- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fdatasync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdents(fd int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-- pgid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-- pid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-- ppid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-- prio = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrandom(buf []byte, flags int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-- sid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Gettid() (tid int) {
-- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
-- tid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(pathname)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-- watchdesc = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyInit1(flags int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-- success = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Kill(pid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Klogctl(typ int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Listxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Llistxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lremovexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func PivotRoot(newroot string, putold string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(newroot)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(putold)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
-- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func read(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Removexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(callback)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setdomainname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sethostname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-- pid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Settimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setns(fd int, nstype int) (err error) {
-- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sync() {
-- Syscall(SYS_SYNC, 0, 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Syncfs(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
-+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
-+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1244,8 +24,8 @@ func Syncfs(fd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Sysinfo(info *Sysinfo_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
-+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1265,62 +45,8 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Times(tms *Tms) (ticks uintptr, err error) {
-- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
-- ticks = uintptr(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Umask(mask int) (oldmask int) {
-- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
-- oldmask = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Uname(buf *Utsname) (err error) {
-- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unmount(target string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unshare(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
-+func Dup2(oldfd int, newfd int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1329,8 +55,9 @@ func Unshare(flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Ustat(dev int, ubuf *Ustat_t) (err error) {
-- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+func EpollCreate(size int) (fd int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1339,46 +66,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func write(fd int, p []byte) (n int, err error) {
-+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-+ if len(events) > 0 {
-+ _p0 = unsafe.Pointer(&events[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func exitThread(code int) (err error) {
-- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func readlen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func writelen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-+ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1388,135 +83,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Madvise(b []byte, advice int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mprotect(b []byte, prot int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Msync(b []byte, flags int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup2(oldfd int, newfd int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(events) > 0 {
-- _p0 = unsafe.Pointer(&events[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
-- n = int(r0)
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1556,7 +124,7 @@ func Ftruncate(fd int, length int64) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
- egid = int(r0)
- return
- }
-@@ -1564,7 +132,7 @@ func Getegid() (egid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (euid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
- euid = int(r0)
- return
- }
-@@ -1572,7 +140,7 @@ func Geteuid() (euid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
- gid = int(r0)
- return
- }
-@@ -1590,7 +158,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
- uid = int(r0)
- return
- }
-@@ -1666,9 +234,18 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Seek(fd int, offset int64, whence int) (off int64, err error) {
-- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
-- off = int64(r0)
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1677,9 +254,9 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-- n = int(r0)
-+func Seek(fd int, offset int64, whence int) (off int64, err error) {
-+ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
-+ off = int64(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1699,8 +276,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsgid(gid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+func setfsgid(gid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1709,8 +287,9 @@ func Setfsgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsuid(uid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+func setfsuid(uid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1830,6 +409,16 @@ func Truncate(path string, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- fd = int(r0)
-@@ -2020,6 +609,21 @@ func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int6
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Gettimeofday(tv *Timeval) (err error) {
- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
- if e1 != 0 {
-@@ -2045,8 +649,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe2(p *[2]_C_int, flags int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+func utimes(path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2065,6 +674,21 @@ func fstat(fd int, st *stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func fstatat(dirfd int, path string, st *stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_NEWFSTATAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(st)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func lstat(path string, st *stat_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go
-index f6463423..28c7239c 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -tags linux,mips64le syscall_linux.go syscall_linux_mips64x.go
-+// go run mksyscall.go -tags linux,mips64le syscall_linux.go syscall_linux_mips64x.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build linux,mips64le
-@@ -14,1228 +14,8 @@ var _ syscall.Errno
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fchmodat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(buf) > 0 {
-- _p1 = unsafe.Pointer(&buf[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unlinkat(dirfd int, path string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimes(path string, times *[2]Timeval) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getcwd(buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-- wpid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg2)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg3)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(arg4)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(payload) > 0 {
-- _p0 = unsafe.Pointer(&payload[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(source)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(fstype)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Acct(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(payload) > 0 {
-- _p2 = unsafe.Pointer(&payload[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Adjtimex(buf *Timex) (state int, err error) {
-- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-- state = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chdir(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chroot(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ClockGettime(clockid int32, time *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup(oldfd int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup3(oldfd int, newfd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate(size int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate1(flag int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Eventfd(initval uint, flags int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Exit(code int) {
-- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fdatasync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdents(fd int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-- pgid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-- pid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-- ppid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-- prio = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrandom(buf []byte, flags int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-- sid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Gettid() (tid int) {
-- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
-- tid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(pathname)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-- watchdesc = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyInit1(flags int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-- success = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Kill(pid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Klogctl(typ int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Listxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Llistxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lremovexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func PivotRoot(newroot string, putold string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(newroot)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(putold)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
-- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func read(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Removexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(callback)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setdomainname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sethostname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-- pid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Settimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setns(fd int, nstype int) (err error) {
-- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sync() {
-- Syscall(SYS_SYNC, 0, 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Syncfs(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
-+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
-+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1244,8 +24,8 @@ func Syncfs(fd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Sysinfo(info *Sysinfo_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
-+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1265,62 +45,8 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Times(tms *Tms) (ticks uintptr, err error) {
-- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
-- ticks = uintptr(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Umask(mask int) (oldmask int) {
-- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
-- oldmask = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Uname(buf *Utsname) (err error) {
-- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unmount(target string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unshare(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
-+func Dup2(oldfd int, newfd int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1329,8 +55,9 @@ func Unshare(flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Ustat(dev int, ubuf *Ustat_t) (err error) {
-- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+func EpollCreate(size int) (fd int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1339,46 +66,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func write(fd int, p []byte) (n int, err error) {
-+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-+ if len(events) > 0 {
-+ _p0 = unsafe.Pointer(&events[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func exitThread(code int) (err error) {
-- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func readlen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func writelen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-+ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1388,135 +83,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Madvise(b []byte, advice int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mprotect(b []byte, prot int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Msync(b []byte, flags int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup2(oldfd int, newfd int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(events) > 0 {
-- _p0 = unsafe.Pointer(&events[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
-- n = int(r0)
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1556,7 +124,7 @@ func Ftruncate(fd int, length int64) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
- egid = int(r0)
- return
- }
-@@ -1564,7 +132,7 @@ func Getegid() (egid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (euid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
- euid = int(r0)
- return
- }
-@@ -1572,7 +140,7 @@ func Geteuid() (euid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
- gid = int(r0)
- return
- }
-@@ -1590,7 +158,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
- uid = int(r0)
- return
- }
-@@ -1666,9 +234,18 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Seek(fd int, offset int64, whence int) (off int64, err error) {
-- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
-- off = int64(r0)
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1677,9 +254,9 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-- n = int(r0)
-+func Seek(fd int, offset int64, whence int) (off int64, err error) {
-+ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
-+ off = int64(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1699,8 +276,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsgid(gid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+func setfsgid(gid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1709,8 +287,9 @@ func Setfsgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsuid(uid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+func setfsuid(uid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1830,6 +409,16 @@ func Truncate(path string, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- fd = int(r0)
-@@ -2020,6 +609,21 @@ func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int6
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Gettimeofday(tv *Timeval) (err error) {
- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
- if e1 != 0 {
-@@ -2045,8 +649,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe2(p *[2]_C_int, flags int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+func utimes(path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2065,6 +674,21 @@ func fstat(fd int, st *stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func fstatat(dirfd int, path string, st *stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_NEWFSTATAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(st)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func lstat(path string, st *stat_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go
-index 964591e5..84596b30 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -l32 -arm -tags linux,mipsle syscall_linux.go syscall_linux_mipsx.go
-+// go run mksyscall.go -l32 -arm -tags linux,mipsle syscall_linux.go syscall_linux_mipsx.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build linux,mipsle
-@@ -14,1228 +14,8 @@ var _ syscall.Errno
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fchmodat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(buf) > 0 {
-- _p1 = unsafe.Pointer(&buf[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unlinkat(dirfd int, path string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimes(path string, times *[2]Timeval) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getcwd(buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-- wpid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg2)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg3)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(arg4)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(payload) > 0 {
-- _p0 = unsafe.Pointer(&payload[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(source)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(fstype)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Acct(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(payload) > 0 {
-- _p2 = unsafe.Pointer(&payload[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Adjtimex(buf *Timex) (state int, err error) {
-- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-- state = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chdir(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chroot(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ClockGettime(clockid int32, time *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup(oldfd int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup3(oldfd int, newfd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate(size int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate1(flag int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Eventfd(initval uint, flags int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Exit(code int) {
-- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fdatasync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdents(fd int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-- pgid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-- pid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-- ppid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-- prio = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrandom(buf []byte, flags int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-- sid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Gettid() (tid int) {
-- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
-- tid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(pathname)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-- watchdesc = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyInit1(flags int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-- success = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Kill(pid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Klogctl(typ int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Listxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Llistxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lremovexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func PivotRoot(newroot string, putold string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(newroot)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(putold)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
-- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func read(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Removexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(callback)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setdomainname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sethostname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-- pid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Settimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setns(fd int, nstype int) (err error) {
-- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sync() {
-- Syscall(SYS_SYNC, 0, 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Syncfs(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
-+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
-+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(mask>>32), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1244,8 +24,8 @@ func Syncfs(fd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Sysinfo(info *Sysinfo_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
-+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1265,62 +45,8 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Times(tms *Tms) (ticks uintptr, err error) {
-- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
-- ticks = uintptr(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Umask(mask int) (oldmask int) {
-- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
-- oldmask = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Uname(buf *Utsname) (err error) {
-- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unmount(target string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unshare(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
-+func Dup2(oldfd int, newfd int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1329,8 +55,9 @@ func Unshare(flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Ustat(dev int, ubuf *Ustat_t) (err error) {
-- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+func EpollCreate(size int) (fd int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1339,46 +66,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func write(fd int, p []byte) (n int, err error) {
-+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-+ if len(events) > 0 {
-+ _p0 = unsafe.Pointer(&events[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func exitThread(code int) (err error) {
-- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func readlen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func writelen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-+ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1388,118 +83,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Madvise(b []byte, advice int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mprotect(b []byte, prot int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Msync(b []byte, flags int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup2(oldfd int, newfd int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall9(SYS_FADVISE64, uintptr(fd), 0, uintptr(offset), uintptr(offset>>32), uintptr(length), uintptr(length>>32), uintptr(advice), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1529,7 +114,7 @@ func Ftruncate(fd int, length int64) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
- egid = int(r0)
- return
- }
-@@ -1537,7 +122,7 @@ func Getegid() (egid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (euid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
- euid = int(r0)
- return
- }
-@@ -1545,7 +130,7 @@ func Geteuid() (euid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
- gid = int(r0)
- return
- }
-@@ -1553,7 +138,7 @@ func Getgid() (gid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
- uid = int(r0)
- return
- }
-@@ -1619,6 +204,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
- r0, _, e1 := Syscall6(SYS__NEWSELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
- n = int(r0)
-@@ -1641,8 +246,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsgid(gid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+func setfsgid(gid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1651,8 +257,9 @@ func Setfsgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsuid(uid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+func setfsuid(uid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1711,9 +318,9 @@ func Shutdown(fd int, how int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) {
-- r0, r1, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int64(int64(r1)<<32 | int64(r0))
-+func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1747,6 +354,16 @@ func Truncate(path string, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
- fd = int(r0)
-@@ -1957,6 +574,21 @@ func Iopl(level int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Gettimeofday(tv *Timeval) (err error) {
- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
- if e1 != 0 {
-@@ -1978,13 +610,13 @@ func Time(t *Time_t) (tt Time_t, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Lstat(path string, stat *Stat_t) (err error) {
-+func Utime(path string, buf *Utimbuf) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ _, _, e1 := Syscall(SYS_UTIME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1993,8 +625,13 @@ func Lstat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+func utimes(path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2003,13 +640,13 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Stat(path string, stat *Stat_t) (err error) {
-+func Lstat(path string, stat *Stat_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2018,13 +655,23 @@ func Stat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Utime(path string, buf *Utimbuf) (err error) {
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_UTIME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
-+ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2033,15 +680,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(events) > 0 {
-- _p0 = unsafe.Pointer(&events[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-+func Stat(path string, stat *Stat_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
- }
-- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
-- n = int(r0)
-+ _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2060,8 +705,10 @@ func Pause() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe2(p *[2]_C_int, flags int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+func pipe() (p1 int, p2 int, err error) {
-+ r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
-+ p1 = int(r0)
-+ p2 = int(r1)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
-index 204ab1ae..de022639 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -tags linux,ppc64 syscall_linux.go syscall_linux_ppc64x.go
-+// go run mksyscall.go -tags linux,ppc64 syscall_linux.go syscall_linux_ppc64x.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build linux,ppc64
-@@ -14,1270 +14,8 @@ var _ syscall.Errno
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fchmodat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(buf) > 0 {
-- _p1 = unsafe.Pointer(&buf[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unlinkat(dirfd int, path string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimes(path string, times *[2]Timeval) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getcwd(buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-- wpid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg2)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg3)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(arg4)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(payload) > 0 {
-- _p0 = unsafe.Pointer(&payload[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(source)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(fstype)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Acct(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(payload) > 0 {
-- _p2 = unsafe.Pointer(&payload[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Adjtimex(buf *Timex) (state int, err error) {
-- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-- state = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chdir(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chroot(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ClockGettime(clockid int32, time *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup(oldfd int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup3(oldfd int, newfd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate(size int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate1(flag int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Eventfd(initval uint, flags int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Exit(code int) {
-- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fdatasync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdents(fd int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-- pgid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-- pid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-- ppid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-- prio = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrandom(buf []byte, flags int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-- sid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Gettid() (tid int) {
-- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
-- tid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(pathname)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-- watchdesc = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyInit1(flags int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-- success = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Kill(pid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Klogctl(typ int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Listxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Llistxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lremovexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func PivotRoot(newroot string, putold string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(newroot)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(putold)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
-- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func read(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Removexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(callback)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setdomainname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sethostname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-- pid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Settimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setns(fd int, nstype int) (err error) {
-- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sync() {
-- Syscall(SYS_SYNC, 0, 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Syncfs(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sysinfo(info *Sysinfo_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-- r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-- n = int64(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Times(tms *Tms) (ticks uintptr, err error) {
-- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
-- ticks = uintptr(r0)
-+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
-+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1286,16 +24,8 @@ func Times(tms *Tms) (ticks uintptr, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Umask(mask int) (oldmask int) {
-- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
-- oldmask = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Uname(buf *Utsname) (err error) {
-- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
-+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1304,13 +34,9 @@ func Uname(buf *Utsname) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Unmount(target string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-+ r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-+ n = int64(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1319,8 +45,8 @@ func Unmount(target string, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Unshare(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
-+func Dup2(oldfd int, newfd int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1329,8 +55,9 @@ func Unshare(flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Ustat(dev int, ubuf *Ustat_t) (err error) {
-- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+func EpollCreate(size int) (fd int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1339,46 +66,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func write(fd int, p []byte) (n int, err error) {
-+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-+ if len(events) > 0 {
-+ _p0 = unsafe.Pointer(&events[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func exitThread(code int) (err error) {
-- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func readlen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func writelen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-+ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1388,108 +83,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Madvise(b []byte, advice int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mprotect(b []byte, prot int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Msync(b []byte, flags int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1498,15 +93,8 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(events) > 0 {
-- _p0 = unsafe.Pointer(&events[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
-- n = int(r0)
-+func Fchown(fd int, uid int, gid int) (err error) {
-+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1515,8 +103,8 @@ func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Dup2(oldfd int, newfd int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1525,18 +113,13 @@ func Dup2(oldfd int, newfd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fchown(fd int, uid int, gid int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
-- if e1 != 0 {
-- err = errnoErr(e1)
-+func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ _, _, e1 := Syscall6(SYS_NEWFSTATAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1566,7 +149,7 @@ func Ftruncate(fd int, length int64) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
- egid = int(r0)
- return
- }
-@@ -1574,7 +157,7 @@ func Getegid() (egid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (euid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
- euid = int(r0)
- return
- }
-@@ -1582,7 +165,7 @@ func Geteuid() (euid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
- gid = int(r0)
- return
- }
-@@ -1600,7 +183,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
- uid = int(r0)
- return
- }
-@@ -1722,6 +305,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Seek(fd int, offset int64, whence int) (off int64, err error) {
- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
- off = int64(r0)
-@@ -1734,7 +337,7 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ r0, _, e1 := Syscall6(SYS__NEWSELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1755,8 +358,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsgid(gid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+func setfsgid(gid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1765,8 +369,9 @@ func Setfsgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsuid(uid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+func setfsuid(uid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1876,8 +481,13 @@ func Statfs(path string, buf *Statfs_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func SyncFileRange(fd int, off int64, n int64, flags int) (err error) {
-- _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(off), uintptr(n), uintptr(flags), 0, 0)
-+func Truncate(path string, length int64) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1886,13 +496,8 @@ func SyncFileRange(fd int, off int64, n int64, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Truncate(path string, length int64) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2091,6 +696,21 @@ func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int6
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Gettimeofday(tv *Timeval) (err error) {
- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
- if e1 != 0 {
-@@ -2127,8 +747,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe(p *[2]_C_int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
-+func utimes(path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2137,8 +762,8 @@ func pipe(p *[2]_C_int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe2(p *[2]_C_int, flags int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+func pipe(p *[2]_C_int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2155,3 +780,28 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
- }
- return
- }
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func syncFileRange2(fd int, flags int, off int64, n int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(flags), uintptr(off), uintptr(n), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(cmdline)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
-index a8a2b0b0..888f21d3 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -tags linux,ppc64le syscall_linux.go syscall_linux_ppc64x.go
-+// go run mksyscall.go -tags linux,ppc64le syscall_linux.go syscall_linux_ppc64x.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build linux,ppc64le
-@@ -14,1270 +14,8 @@ var _ syscall.Errno
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fchmodat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(buf) > 0 {
-- _p1 = unsafe.Pointer(&buf[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unlinkat(dirfd int, path string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimes(path string, times *[2]Timeval) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getcwd(buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-- wpid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg2)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg3)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(arg4)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(payload) > 0 {
-- _p0 = unsafe.Pointer(&payload[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(source)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(fstype)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Acct(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(payload) > 0 {
-- _p2 = unsafe.Pointer(&payload[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Adjtimex(buf *Timex) (state int, err error) {
-- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-- state = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chdir(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chroot(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ClockGettime(clockid int32, time *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup(oldfd int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup3(oldfd int, newfd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate(size int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate1(flag int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Eventfd(initval uint, flags int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Exit(code int) {
-- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fdatasync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdents(fd int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-- pgid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-- pid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-- ppid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-- prio = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrandom(buf []byte, flags int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-- sid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Gettid() (tid int) {
-- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
-- tid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(pathname)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-- watchdesc = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyInit1(flags int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-- success = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Kill(pid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Klogctl(typ int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Listxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Llistxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lremovexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func PivotRoot(newroot string, putold string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(newroot)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(putold)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
-- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func read(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Removexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(callback)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setdomainname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sethostname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-- pid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Settimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setns(fd int, nstype int) (err error) {
-- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sync() {
-- Syscall(SYS_SYNC, 0, 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Syncfs(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sysinfo(info *Sysinfo_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-- r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-- n = int64(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Times(tms *Tms) (ticks uintptr, err error) {
-- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
-- ticks = uintptr(r0)
-+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
-+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1286,16 +24,8 @@ func Times(tms *Tms) (ticks uintptr, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Umask(mask int) (oldmask int) {
-- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
-- oldmask = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Uname(buf *Utsname) (err error) {
-- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
-+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1304,13 +34,9 @@ func Uname(buf *Utsname) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Unmount(target string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-+ r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-+ n = int64(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1319,8 +45,8 @@ func Unmount(target string, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Unshare(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
-+func Dup2(oldfd int, newfd int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1329,8 +55,9 @@ func Unshare(flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Ustat(dev int, ubuf *Ustat_t) (err error) {
-- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+func EpollCreate(size int) (fd int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1339,46 +66,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func write(fd int, p []byte) (n int, err error) {
-+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-+ if len(events) > 0 {
-+ _p0 = unsafe.Pointer(&events[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func exitThread(code int) (err error) {
-- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func readlen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func writelen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-+ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1388,108 +83,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Madvise(b []byte, advice int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mprotect(b []byte, prot int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Msync(b []byte, flags int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1498,15 +93,8 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(events) > 0 {
-- _p0 = unsafe.Pointer(&events[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
-- n = int(r0)
-+func Fchown(fd int, uid int, gid int) (err error) {
-+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1515,8 +103,8 @@ func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Dup2(oldfd int, newfd int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1525,18 +113,13 @@ func Dup2(oldfd int, newfd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fchown(fd int, uid int, gid int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
-- if e1 != 0 {
-- err = errnoErr(e1)
-+func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ _, _, e1 := Syscall6(SYS_NEWFSTATAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1566,7 +149,7 @@ func Ftruncate(fd int, length int64) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
- egid = int(r0)
- return
- }
-@@ -1574,7 +157,7 @@ func Getegid() (egid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (euid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
- euid = int(r0)
- return
- }
-@@ -1582,7 +165,7 @@ func Geteuid() (euid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
- gid = int(r0)
- return
- }
-@@ -1600,7 +183,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
- uid = int(r0)
- return
- }
-@@ -1722,6 +305,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Seek(fd int, offset int64, whence int) (off int64, err error) {
- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
- off = int64(r0)
-@@ -1734,7 +337,7 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ r0, _, e1 := Syscall6(SYS__NEWSELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1755,8 +358,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsgid(gid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+func setfsgid(gid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1765,8 +369,9 @@ func Setfsgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsuid(uid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+func setfsuid(uid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1876,8 +481,13 @@ func Statfs(path string, buf *Statfs_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func SyncFileRange(fd int, off int64, n int64, flags int) (err error) {
-- _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(off), uintptr(n), uintptr(flags), 0, 0)
-+func Truncate(path string, length int64) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1886,13 +496,8 @@ func SyncFileRange(fd int, off int64, n int64, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Truncate(path string, length int64) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2091,6 +696,21 @@ func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int6
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Gettimeofday(tv *Timeval) (err error) {
- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
- if e1 != 0 {
-@@ -2127,8 +747,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe(p *[2]_C_int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
-+func utimes(path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2137,8 +762,8 @@ func pipe(p *[2]_C_int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe2(p *[2]_C_int, flags int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+func pipe(p *[2]_C_int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -2155,3 +780,28 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
- }
- return
- }
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func syncFileRange2(fd int, flags int, off int64, n int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(flags), uintptr(off), uintptr(n), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(cmdline)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go
-new file mode 100644
-index 00000000..b7613344
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go
-@@ -0,0 +1,582 @@
-+// go run mksyscall.go -tags linux,riscv64 syscall_linux.go syscall_linux_riscv64.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build linux,riscv64
-+
-+package unix
-+
-+import (
-+ "syscall"
-+ "unsafe"
-+)
-+
-+var _ syscall.Errno
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
-+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-+ r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-+ n = int64(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(events) > 0 {
-+ _p0 = unsafe.Pointer(&events[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_EPOLL_PWAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fchown(fd int, uid int, gid int) (err error) {
-+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatfs(fd int, buf *Statfs_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(buf)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Ftruncate(fd int, length int64) (err error) {
-+ _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getegid() (egid int) {
-+ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
-+ egid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Geteuid() (euid int) {
-+ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
-+ euid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getgid() (gid int) {
-+ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
-+ gid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getrlimit(resource int, rlim *Rlimit) (err error) {
-+ _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Getuid() (uid int) {
-+ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
-+ uid = int(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Listen(s int, n int) (err error) {
-+ _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(n), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Pread(fd int, p []byte, offset int64) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(p) > 0 {
-+ _p0 = unsafe.Pointer(&p[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_PREAD64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(p) > 0 {
-+ _p0 = unsafe.Pointer(&p[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_PWRITE64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Seek(fd int, offset int64, whence int) (off int64, err error) {
-+ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
-+ off = int64(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SENDFILE, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
-+ written = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setfsgid(gid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+ prev = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setfsuid(uid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+ prev = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setregid(rgid int, egid int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setresgid(rgid int, egid int, sgid int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setresuid(ruid int, euid int, suid int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setrlimit(resource int, rlim *Rlimit) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setreuid(ruid int, euid int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Shutdown(fd int, how int) (err error) {
-+ _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) {
-+ r0, _, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-+ n = int64(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Statfs(path string, buf *Statfs_t) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func SyncFileRange(fd int, off int64, n int64, flags int) (err error) {
-+ _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE, uintptr(fd), uintptr(off), uintptr(n), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Truncate(path string, length int64) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
-+ r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) {
-+ r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0)
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-+ _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
-+ _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getgroups(n int, list *_Gid_t) (nn int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0)
-+ nn = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setgroups(n int, list *_Gid_t) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
-+ _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
-+ _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func socket(domain int, typ int, proto int) (fd int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto))
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
-+ _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-+ _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
-+ _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(p) > 0 {
-+ _p0 = unsafe.Pointer(&p[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) {
-+ r0, _, e1 := Syscall6(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flags), uintptr(fd), uintptr(offset))
-+ xaddr = uintptr(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Gettimeofday(tv *Timeval) (err error) {
-+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(cmdline)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
-index b6ff9e39..9bc353f0 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -tags linux,s390x syscall_linux.go syscall_linux_s390x.go
-+// go run mksyscall.go -tags linux,s390x syscall_linux.go syscall_linux_s390x.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build linux,s390x
-@@ -14,1446 +14,8 @@ var _ syscall.Errno
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fchmodat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(buf) > 0 {
-- _p1 = unsafe.Pointer(&buf[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unlinkat(dirfd int, path string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimes(path string, times *[2]Timeval) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getcwd(buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-- wpid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg2)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg3)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(arg4)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(payload) > 0 {
-- _p0 = unsafe.Pointer(&payload[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-- ret = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(source)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(fstype)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Acct(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(payload) > 0 {
-- _p2 = unsafe.Pointer(&payload[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Adjtimex(buf *Timex) (state int, err error) {
-- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-- state = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chdir(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chroot(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ClockGettime(clockid int32, time *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup(oldfd int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup3(oldfd int, newfd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate(size int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate1(flag int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Eventfd(initval uint, flags int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Exit(code int) {
-- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fdatasync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdents(fd int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-- pgid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-- pid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-- ppid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-- prio = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrandom(buf []byte, flags int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-- sid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Gettid() (tid int) {
-- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
-- tid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(pathname)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-- watchdesc = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyInit1(flags int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-- success = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Kill(pid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Klogctl(typ int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Listxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Llistxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lremovexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func PivotRoot(newroot string, putold string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(newroot)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(putold)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
-- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func read(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Removexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(keyType)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(description)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(callback)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-- id = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setdomainname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sethostname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-- pid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Settimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setns(fd int, nstype int) (err error) {
-- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sync() {
-- Syscall(SYS_SYNC, 0, 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Syncfs(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sysinfo(info *Sysinfo_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-- r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-- n = int64(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Times(tms *Tms) (ticks uintptr, err error) {
-- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
-- ticks = uintptr(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Umask(mask int) (oldmask int) {
-- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
-- oldmask = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Uname(buf *Utsname) (err error) {
-- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unmount(target string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unshare(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Ustat(dev int, ubuf *Ustat_t) (err error) {
-- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func write(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func exitThread(code int) (err error) {
-- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func readlen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func writelen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Madvise(b []byte, advice int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mprotect(b []byte, prot int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
-+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1462,8 +24,8 @@ func Munlock(b []byte) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1472,14 +34,9 @@ func Mlockall(flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Msync(b []byte, flags int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
-+func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-+ r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-+ n = int64(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1488,8 +45,8 @@ func Msync(b []byte, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-+func Dup2(oldfd int, newfd int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1498,8 +55,9 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Dup2(oldfd int, newfd int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
-+func EpollCreate(size int) (fd int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-+ fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1555,6 +113,21 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_NEWFSTATAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fstatfs(fd int, buf *Statfs_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(buf)), 0)
- if e1 != 0 {
-@@ -1576,7 +149,7 @@ func Ftruncate(fd int, length int64) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
- egid = int(r0)
- return
- }
-@@ -1584,7 +157,7 @@ func Getegid() (egid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (euid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
- euid = int(r0)
- return
- }
-@@ -1592,7 +165,7 @@ func Geteuid() (euid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
- gid = int(r0)
- return
- }
-@@ -1610,7 +183,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
- uid = int(r0)
- return
- }
-@@ -1702,6 +275,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Seek(fd int, offset int64, whence int) (off int64, err error) {
- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
- off = int64(r0)
-@@ -1735,8 +328,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsgid(gid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+func setfsgid(gid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1745,8 +339,9 @@ func Setfsgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsuid(uid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+func setfsuid(uid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1871,6 +466,16 @@ func Truncate(path string, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Ustat(dev int, ubuf *Ustat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func getgroups(n int, list *_Gid_t) (nn int, err error) {
- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0)
- nn = int(r0)
-@@ -1892,6 +497,21 @@ func setgroups(n int, list *_Gid_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Gettimeofday(tv *Timeval) (err error) {
- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
- if e1 != 0 {
-@@ -1917,8 +537,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe2(p *[2]_C_int, flags int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+func utimes(path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1935,3 +560,18 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
- }
- return
- }
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(cmdline)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go
-index 2dd98434..854e816d 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -tags linux,sparc64 syscall_linux.go syscall_linux_sparc64.go
-+// go run mksyscall.go -tags linux,sparc64 syscall_linux.go syscall_linux_sparc64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build linux,sparc64
-@@ -14,944 +14,8 @@ var _ syscall.Errno
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(buf) > 0 {
-- _p1 = unsafe.Pointer(&buf[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unlinkat(dirfd int, path string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimes(path string, times *[2]Timeval) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getcwd(buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
-- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
-- wpid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(arg)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(source)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- var _p2 *byte
-- _p2, err = BytePtrFromString(fstype)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Acct(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Adjtimex(buf *Timex) (state int, err error) {
-- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-- state = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chdir(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Chroot(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func ClockGettime(clockid int32, time *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Close(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
-- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup(oldfd int) (fd int, err error) {
-- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Dup3(oldfd int, newfd int, flags int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate(size int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCreate1(flag int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Exit(code int) {
-- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchdir(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchmod(fd int, mode uint32) (err error) {
-- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fdatasync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Flock(fd int, how int) (err error) {
-- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getdents(fd int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpgid(pid int) (pgid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
-- pgid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpid() (pid int) {
-- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
-- pid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getppid() (ppid int) {
-- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
-- ppid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getpriority(which int, who int) (prio int, err error) {
-- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
-- prio = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrandom(buf []byte, flags int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getrusage(who int, rusage *Rusage) (err error) {
-- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getsid(pid int) (sid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
-- sid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Gettid() (tid int) {
-- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
-- tid = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(dest) > 0 {
-- _p2 = unsafe.Pointer(&dest[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(pathname)
-- if err != nil {
-- return
-- }
-- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-- watchdesc = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyInit1(flags int) (fd int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
-- fd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-- success = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Kill(pid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Klogctl(typ int, buf []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Listxattr(path string, dest []byte) (sz int, err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 unsafe.Pointer
-- if len(dest) > 0 {
-- _p1 = unsafe.Pointer(&dest[0])
-- } else {
-- _p1 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-- sz = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func PivotRoot(newroot string, putold string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(newroot)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(putold)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
-- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func read(fd int, p []byte) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Removexattr(path string, attr string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(oldpath)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(newpath)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setdomainname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sethostname(p []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpgid(pid int, pgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setsid() (pid int, err error) {
-- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
-- pid = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Settimeofday(tv *Timeval) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setns(fd int, nstype int) (err error) {
-- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setpriority(which int, who int, prio int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(attr)
-- if err != nil {
-- return
-- }
-- var _p2 unsafe.Pointer
-- if len(data) > 0 {
-- _p2 = unsafe.Pointer(&data[0])
-- } else {
-- _p2 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
-+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -960,15 +24,8 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Sync() {
-- Syscall(SYS_SYNC, 0, 0, 0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Sysinfo(info *Sysinfo_t) (err error) {
-- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
-+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
-+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -988,120 +45,14 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Times(tms *Tms) (ticks uintptr, err error) {
-- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
-- ticks = uintptr(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Umask(mask int) (oldmask int) {
-- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
-- oldmask = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Uname(buf *Utsname) (err error) {
-- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unmount(target string, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(target)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Unshare(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Ustat(dev int, ubuf *Ustat_t) (err error) {
-- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func write(fd int, p []byte) (n int, err error) {
-+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
- var _p0 unsafe.Pointer
-- if len(p) > 0 {
-- _p0 = unsafe.Pointer(&p[0])
-+ if len(events) > 0 {
-+ _p0 = unsafe.Pointer(&events[0])
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func exitThread(code int) (err error) {
-- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func readlen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-- n = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func writelen(fd int, p *byte, np int) (n int, err error) {
-- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-+ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1111,82 +62,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func munmap(addr uintptr, length uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Madvise(b []byte, advice int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mprotect(b []byte, prot int) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Munlock(b []byte) (err error) {
-- var _p0 unsafe.Pointer
-- if len(b) > 0 {
-- _p0 = unsafe.Pointer(&b[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Mlockall(flags int) (err error) {
-- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1195,8 +72,8 @@ func Mlockall(flags int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Munlockall() (err error) {
-- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
-+func Dup2(oldfd int, newfd int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1205,15 +82,8 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(events) > 0 {
-- _p0 = unsafe.Pointer(&events[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
-- n = int(r0)
-+func Fchown(fd int, uid int, gid int) (err error) {
-+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1222,8 +92,8 @@ func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Dup2(oldfd int, newfd int) (err error) {
-- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
-+func Fstat(fd int, stat *Stat_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1232,18 +102,13 @@ func Dup2(oldfd int, newfd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fchown(fd int, uid int, gid int) (err error) {
-- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
-- if e1 != 0 {
-- err = errnoErr(e1)
-+func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1273,7 +138,7 @@ func Ftruncate(fd int, length int64) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getegid() (egid int) {
-- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
- egid = int(r0)
- return
- }
-@@ -1281,7 +146,7 @@ func Getegid() (egid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Geteuid() (euid int) {
-- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
- euid = int(r0)
- return
- }
-@@ -1289,7 +154,7 @@ func Geteuid() (euid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getgid() (gid int) {
-- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
- gid = int(r0)
- return
- }
-@@ -1307,7 +172,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Getuid() (uid int) {
-- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
-+ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
- uid = int(r0)
- return
- }
-@@ -1409,6 +274,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Seek(fd int, offset int64, whence int) (off int64, err error) {
- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
- off = int64(r0)
-@@ -1442,8 +327,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsgid(gid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+func setfsgid(gid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1452,8 +338,9 @@ func Setfsgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setfsuid(uid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+func setfsuid(uid int) (prev int, err error) {
-+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
-+ prev = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1778,6 +665,21 @@ func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int6
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Gettimeofday(tv *Timeval) (err error) {
- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
- if e1 != 0 {
-@@ -1803,8 +705,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe(p *[2]_C_int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
-+func utimes(path string, times *[2]Timeval) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1813,8 +720,8 @@ func pipe(p *[2]_C_int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe2(p *[2]_C_int, flags int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
-+func pipe(p *[2]_C_int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go
-index db99fd0c..3bbd9e39 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -l32 -netbsd -tags netbsd,386 syscall_bsd.go syscall_netbsd.go syscall_netbsd_386.go
-+// go run mksyscall.go -l32 -netbsd -tags netbsd,386 syscall_bsd.go syscall_netbsd.go syscall_netbsd_386.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build netbsd,386
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -378,7 +362,7 @@ func pipe() (fd1 int, fd2 int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func getdents(fd int, buf []byte) (n int, err error) {
-+func Getdents(fd int, buf []byte) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(buf) > 0 {
- _p0 = unsafe.Pointer(&buf[0])
-@@ -395,6 +379,49 @@ func getdents(fd int, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getcwd(buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ioctl(fd int, req uint, arg uintptr) (err error) {
-+ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -526,6 +553,16 @@ func Dup2(from int, to int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Dup3(from int, to int, flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Exit(code int) {
- Syscall(SYS_EXIT, uintptr(code), 0, 0)
- return
-@@ -533,6 +570,245 @@ func Exit(code int) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func ExtattrGetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrSetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrDeleteFd(fd int, attrnamespace int, attrname string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrListFd(fd int, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FD, uintptr(fd), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrGetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(file)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrSetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(file)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrDeleteFile(file string, attrnamespace int, attrname string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(file)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrListFile(file string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(file)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrGetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrSetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrDeleteLink(link string, attrnamespace int, attrname string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrListLink(link string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall9(SYS_POSIX_FADVISE, uintptr(fd), 0, uintptr(offset), uintptr(offset>>32), 0, uintptr(length), uintptr(length>>32), uintptr(advice), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchdir(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -563,6 +839,21 @@ func Fchmod(fd int, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchown(fd int, uid int, gid int) (err error) {
- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
-@@ -573,6 +864,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Flock(fd int, how int) (err error) {
- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
- if e1 != 0 {
-@@ -604,6 +910,31 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatvfs1(fd int, buf *Statvfs_t, flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATVFS1, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fsync(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -807,6 +1138,26 @@ func Link(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Listen(s int, backlog int) (err error) {
- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
- if e1 != 0 {
-@@ -847,6 +1198,21 @@ func Mkdir(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mkfifo(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -862,6 +1228,21 @@ func Mkfifo(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -877,6 +1258,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
- if e1 != 0 {
-@@ -903,6 +1299,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Pathconf(path string, name int) (val int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -992,6 +1404,28 @@ func Readlink(path string, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p1 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p1 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Rename(from string, to string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(from)
-@@ -1012,6 +1446,26 @@ func Rename(from string, to string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(fromfd int, from string, tofd int, to string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(from)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(to)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Revoke(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1053,8 +1507,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1189,6 +1644,21 @@ func Stat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Statvfs1(path string, buf *Statvfs_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STATVFS1, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Symlink(path string, link string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1209,6 +1679,26 @@ func Symlink(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Sync() (err error) {
- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
- if e1 != 0 {
-@@ -1257,6 +1747,21 @@ func Unlink(path string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Unlinkat(dirfd int, path string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Unmount(path string, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
-index 7b6c2c87..d8cf5012 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -netbsd -tags netbsd,amd64 syscall_bsd.go syscall_netbsd.go syscall_netbsd_amd64.go
-+// go run mksyscall.go -netbsd -tags netbsd,amd64 syscall_bsd.go syscall_netbsd.go syscall_netbsd_amd64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build netbsd,amd64
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -378,7 +362,7 @@ func pipe() (fd1 int, fd2 int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func getdents(fd int, buf []byte) (n int, err error) {
-+func Getdents(fd int, buf []byte) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(buf) > 0 {
- _p0 = unsafe.Pointer(&buf[0])
-@@ -395,6 +379,49 @@ func getdents(fd int, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getcwd(buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ioctl(fd int, req uint, arg uintptr) (err error) {
-+ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -526,6 +553,16 @@ func Dup2(from int, to int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Dup3(from int, to int, flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Exit(code int) {
- Syscall(SYS_EXIT, uintptr(code), 0, 0)
- return
-@@ -533,6 +570,245 @@ func Exit(code int) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func ExtattrGetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrSetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrDeleteFd(fd int, attrnamespace int, attrname string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrListFd(fd int, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FD, uintptr(fd), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrGetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(file)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrSetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(file)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrDeleteFile(file string, attrnamespace int, attrname string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(file)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrListFile(file string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(file)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrGetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrSetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrDeleteLink(link string, attrnamespace int, attrname string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrListLink(link string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall6(SYS_POSIX_FADVISE, uintptr(fd), 0, uintptr(offset), 0, uintptr(length), uintptr(advice))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchdir(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -563,6 +839,21 @@ func Fchmod(fd int, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchown(fd int, uid int, gid int) (err error) {
- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
-@@ -573,6 +864,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Flock(fd int, how int) (err error) {
- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
- if e1 != 0 {
-@@ -604,6 +910,31 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatvfs1(fd int, buf *Statvfs_t, flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATVFS1, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fsync(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -807,6 +1138,26 @@ func Link(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Listen(s int, backlog int) (err error) {
- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
- if e1 != 0 {
-@@ -847,6 +1198,21 @@ func Mkdir(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mkfifo(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -862,6 +1228,21 @@ func Mkfifo(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -877,6 +1258,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
- if e1 != 0 {
-@@ -903,6 +1299,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Pathconf(path string, name int) (val int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -992,6 +1404,28 @@ func Readlink(path string, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p1 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p1 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Rename(from string, to string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(from)
-@@ -1012,6 +1446,26 @@ func Rename(from string, to string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(fromfd int, from string, tofd int, to string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(from)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(to)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Revoke(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1053,8 +1507,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1189,6 +1644,21 @@ func Stat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Statvfs1(path string, buf *Statvfs_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STATVFS1, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Symlink(path string, link string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1209,6 +1679,26 @@ func Symlink(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Sync() (err error) {
- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
- if e1 != 0 {
-@@ -1257,6 +1747,21 @@ func Unlink(path string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Unlinkat(dirfd int, path string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Unmount(path string, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go
-index 0f4cc3b5..1153fe69 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -l32 -netbsd -arm -tags netbsd,arm syscall_bsd.go syscall_netbsd.go syscall_netbsd_arm.go
-+// go run mksyscall.go -l32 -netbsd -arm -tags netbsd,arm syscall_bsd.go syscall_netbsd.go syscall_netbsd_arm.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build netbsd,arm
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -378,7 +362,7 @@ func pipe() (fd1 int, fd2 int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func getdents(fd int, buf []byte) (n int, err error) {
-+func Getdents(fd int, buf []byte) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(buf) > 0 {
- _p0 = unsafe.Pointer(&buf[0])
-@@ -395,6 +379,49 @@ func getdents(fd int, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getcwd(buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ioctl(fd int, req uint, arg uintptr) (err error) {
-+ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -526,6 +553,16 @@ func Dup2(from int, to int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Dup3(from int, to int, flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Exit(code int) {
- Syscall(SYS_EXIT, uintptr(code), 0, 0)
- return
-@@ -533,6 +570,245 @@ func Exit(code int) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func ExtattrGetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrSetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrDeleteFd(fd int, attrnamespace int, attrname string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrListFd(fd int, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FD, uintptr(fd), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrGetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(file)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrSetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(file)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrDeleteFile(file string, attrnamespace int, attrname string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(file)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrListFile(file string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(file)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrGetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrSetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrDeleteLink(link string, attrnamespace int, attrname string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(attrname)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ExtattrListLink(link string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
-+ ret = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall9(SYS_POSIX_FADVISE, uintptr(fd), 0, uintptr(offset), uintptr(offset>>32), 0, uintptr(length), uintptr(length>>32), uintptr(advice), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchdir(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -563,6 +839,21 @@ func Fchmod(fd int, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchown(fd int, uid int, gid int) (err error) {
- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
-@@ -573,6 +864,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Flock(fd int, how int) (err error) {
- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
- if e1 != 0 {
-@@ -604,6 +910,31 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatvfs1(fd int, buf *Statvfs_t, flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATVFS1, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fsync(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -807,6 +1138,26 @@ func Link(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Listen(s int, backlog int) (err error) {
- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
- if e1 != 0 {
-@@ -847,6 +1198,21 @@ func Mkdir(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mkfifo(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -862,6 +1228,21 @@ func Mkfifo(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -877,6 +1258,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
- if e1 != 0 {
-@@ -903,6 +1299,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Pathconf(path string, name int) (val int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -992,6 +1404,28 @@ func Readlink(path string, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p1 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p1 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Rename(from string, to string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(from)
-@@ -1012,6 +1446,26 @@ func Rename(from string, to string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(fromfd int, from string, tofd int, to string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(from)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(to)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Revoke(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1053,8 +1507,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1189,6 +1644,21 @@ func Stat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Statvfs1(path string, buf *Statvfs_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_STATVFS1, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Symlink(path string, link string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1209,6 +1679,26 @@ func Symlink(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Sync() (err error) {
- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
- if e1 != 0 {
-@@ -1257,6 +1747,21 @@ func Unlink(path string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Unlinkat(dirfd int, path string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Unmount(path string, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go
-similarity index 92%
-copy from vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
-copy to vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go
-index ac1e8e01..24b4ebb4 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go
-@@ -1,7 +1,7 @@
--// mksyscall.pl -tags freebsd,amd64 syscall_bsd.go syscall_freebsd.go syscall_freebsd_amd64.go
-+// go run mksyscall.go -netbsd -tags netbsd,arm64 syscall_bsd.go syscall_netbsd.go syscall_netbsd_arm64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build freebsd,amd64
-+// +build netbsd,arm64
-
- package unix
-
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,10 +350,10 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe() (r int, w int, err error) {
-+func pipe() (fd1 int, fd2 int, err error) {
- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
-- r = int(r0)
-- w = int(r1)
-+ fd1 = int(r0)
-+ fd2 = int(r1)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -378,8 +362,15 @@ func pipe() (r int, w int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func ioctl(fd int, req uint, arg uintptr) (err error) {
-- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-+func Getdents(fd int, buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -388,13 +379,15 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Access(path string, mode uint32) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-+func Getcwd(buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
- }
-- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
-+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -403,8 +396,8 @@ func Access(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
-- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
-+func ioctl(fd int, req uint, arg uintptr) (err error) {
-+ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -413,8 +406,14 @@ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func CapEnter() (err error) {
-- _, _, e1 := Syscall(SYS_CAP_ENTER, 0, 0, 0)
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -423,8 +422,13 @@ func CapEnter() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func capRightsGet(version int, fd int, rightsp *CapRights) (err error) {
-- _, _, e1 := Syscall(SYS___CAP_RIGHTS_GET, uintptr(version), uintptr(fd), uintptr(unsafe.Pointer(rightsp)))
-+func Access(path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -433,8 +437,8 @@ func capRightsGet(version int, fd int, rightsp *CapRights) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func capRightsLimit(fd int, rightsp *CapRights) (err error) {
-- _, _, e1 := Syscall(SYS_CAP_RIGHTS_LIMIT, uintptr(fd), uintptr(unsafe.Pointer(rightsp)), 0)
-+func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
-+ _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -549,6 +553,16 @@ func Dup2(from int, to int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Dup3(from int, to int, flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Exit(code int) {
- Syscall(SYS_EXIT, uintptr(code), 0, 0)
- return
-@@ -770,8 +784,13 @@ func ExtattrListLink(link string, attrnamespace int, data uintptr, nbytes int) (
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-- _, _, e1 := Syscall6(SYS_POSIX_FADVISE, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
-+func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -780,13 +799,8 @@ func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
-+ _, _, e1 := Syscall6(SYS_POSIX_FADVISE, uintptr(fd), 0, uintptr(offset), 0, uintptr(length), uintptr(advice))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -896,8 +910,13 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -906,8 +925,8 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-+func Fstatvfs1(fd int, buf *Statvfs_t, flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATVFS1, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -916,8 +935,8 @@ func Fsync(fd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Ftruncate(fd int, length int64) (err error) {
-- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0)
-+func Fsync(fd int) (err error) {
-+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -926,15 +945,8 @@ func Ftruncate(fd int, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-- n = int(r0)
-+func Ftruncate(fd int, length int64) (err error) {
-+ _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), 0, uintptr(length))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -943,14 +955,6 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getdtablesize() (size int) {
-- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
-- size = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Getegid() (egid int) {
- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
- egid = int(r0)
-@@ -1224,6 +1228,21 @@ func Mkfifo(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1239,6 +1258,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
- if e1 != 0 {
-@@ -1265,13 +1299,13 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Openat(fdat int, path string, mode int, perm uint32) (fd int, err error) {
-+func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(fdat), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
-+ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
- fd = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1304,7 +1338,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
-+ r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1321,7 +1355,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
-+ r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1463,7 +1497,7 @@ func Rmdir(path string) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
-+ r0, _, e1 := Syscall6(SYS_LSEEK, uintptr(fd), 0, uintptr(offset), uintptr(whence), 0, 0)
- newoffset = int64(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1473,8 +1507,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1513,21 +1548,6 @@ func Setgid(gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setlogin(name string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(name)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Setpgid(pid int, pgid int) (err error) {
- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
- if e1 != 0 {
-@@ -1568,26 +1588,6 @@ func Setreuid(ruid int, euid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setresgid(rgid int, egid int, sgid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
--func Setresuid(ruid int, euid int, suid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Setrlimit(which int, lim *Rlimit) (err error) {
- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
- if e1 != 0 {
-@@ -1644,13 +1644,13 @@ func Stat(path string, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Statfs(path string, stat *Statfs_t) (err error) {
-+func Statvfs1(path string, buf *Statvfs_t, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ _, _, e1 := Syscall(SYS_STATVFS1, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1715,7 +1715,7 @@ func Truncate(path string, length int64) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
-+ _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), 0, uintptr(length))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1732,21 +1732,6 @@ func Umask(newmask int) (oldmask int) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Undelete(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Unlink(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1810,7 +1795,7 @@ func write(fd int, p []byte) (n int, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
-- r0, _, e1 := Syscall6(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos))
-+ r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), 0, uintptr(pos), 0, 0)
- ret = uintptr(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1852,17 +1837,6 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func accept4(fd int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (nfd int, err error) {
-- r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0)
-- nfd = int(r0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go
-index 7baea87c..b44b31ae 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -l32 -openbsd -tags openbsd,386 syscall_bsd.go syscall_openbsd.go syscall_openbsd_386.go
-+// go run mksyscall.go -l32 -openbsd -tags openbsd,386 syscall_bsd.go syscall_openbsd.go syscall_openbsd_386.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build openbsd,386
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,8 +350,8 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe(p *[2]_C_int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
-+func pipe2(p *[2]_C_int, flags int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -376,7 +360,7 @@ func pipe(p *[2]_C_int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func getdents(fd int, buf []byte) (n int, err error) {
-+func Getdents(fd int, buf []byte) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(buf) > 0 {
- _p0 = unsafe.Pointer(&buf[0])
-@@ -393,6 +377,60 @@ func getdents(fd int, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getcwd(buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ioctl(fd int, req uint, arg uintptr) (err error) {
-+ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -524,6 +562,16 @@ func Dup2(from int, to int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Dup3(from int, to int, flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Exit(code int) {
- Syscall(SYS_EXIT, uintptr(code), 0, 0)
- return
-@@ -531,6 +579,21 @@ func Exit(code int) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchdir(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -561,6 +624,21 @@ func Fchmod(fd int, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchown(fd int, uid int, gid int) (err error) {
- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
-@@ -571,6 +649,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Flock(fd int, how int) (err error) {
- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
- if e1 != 0 {
-@@ -602,6 +695,21 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fstatfs(fd int, stat *Statfs_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
-@@ -712,6 +820,17 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getrtable() (rtable int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_GETRTABLE, 0, 0, 0)
-+ rtable = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getrusage(who int, rusage *Rusage) (err error) {
- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
- if e1 != 0 {
-@@ -815,6 +934,26 @@ func Link(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Listen(s int, backlog int) (err error) {
- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
- if e1 != 0 {
-@@ -855,6 +994,21 @@ func Mkdir(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mkfifo(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -870,6 +1024,21 @@ func Mkfifo(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -885,6 +1054,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
- if e1 != 0 {
-@@ -911,6 +1095,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Pathconf(path string, name int) (val int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1000,6 +1200,28 @@ func Readlink(path string, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p1 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p1 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Rename(from string, to string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(from)
-@@ -1020,6 +1242,26 @@ func Rename(from string, to string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(fromfd int, from string, tofd int, to string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(from)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(to)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Revoke(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1061,8 +1303,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1186,6 +1429,16 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Setrtable(rtable int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETRTABLE, uintptr(rtable), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Setsid() (pid int, err error) {
- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
- pid = int(r0)
-@@ -1267,6 +1520,26 @@ func Symlink(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Sync() (err error) {
- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
- if e1 != 0 {
-@@ -1315,6 +1588,21 @@ func Unlink(path string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Unlinkat(dirfd int, path string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Unmount(path string, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go
-index 0d69ce6b..67f93ee7 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -openbsd -tags openbsd,amd64 syscall_bsd.go syscall_openbsd.go syscall_openbsd_amd64.go
-+// go run mksyscall.go -openbsd -tags openbsd,amd64 syscall_bsd.go syscall_openbsd.go syscall_openbsd_amd64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build openbsd,amd64
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,8 +350,8 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe(p *[2]_C_int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
-+func pipe2(p *[2]_C_int, flags int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -376,7 +360,7 @@ func pipe(p *[2]_C_int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func getdents(fd int, buf []byte) (n int, err error) {
-+func Getdents(fd int, buf []byte) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(buf) > 0 {
- _p0 = unsafe.Pointer(&buf[0])
-@@ -393,6 +377,60 @@ func getdents(fd int, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getcwd(buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ioctl(fd int, req uint, arg uintptr) (err error) {
-+ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -524,6 +562,16 @@ func Dup2(from int, to int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Dup3(from int, to int, flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Exit(code int) {
- Syscall(SYS_EXIT, uintptr(code), 0, 0)
- return
-@@ -531,6 +579,21 @@ func Exit(code int) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchdir(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -561,6 +624,21 @@ func Fchmod(fd int, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchown(fd int, uid int, gid int) (err error) {
- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
-@@ -571,6 +649,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Flock(fd int, how int) (err error) {
- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
- if e1 != 0 {
-@@ -602,6 +695,21 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fstatfs(fd int, stat *Statfs_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
-@@ -712,6 +820,17 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getrtable() (rtable int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_GETRTABLE, 0, 0, 0)
-+ rtable = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getrusage(who int, rusage *Rusage) (err error) {
- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
- if e1 != 0 {
-@@ -815,6 +934,26 @@ func Link(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Listen(s int, backlog int) (err error) {
- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
- if e1 != 0 {
-@@ -855,6 +994,21 @@ func Mkdir(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mkfifo(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -870,6 +1024,21 @@ func Mkfifo(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -885,6 +1054,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
- if e1 != 0 {
-@@ -911,6 +1095,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Pathconf(path string, name int) (val int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1000,6 +1200,28 @@ func Readlink(path string, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p1 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p1 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Rename(from string, to string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(from)
-@@ -1020,6 +1242,26 @@ func Rename(from string, to string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(fromfd int, from string, tofd int, to string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(from)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(to)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Revoke(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1061,8 +1303,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1186,6 +1429,16 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Setrtable(rtable int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETRTABLE, uintptr(rtable), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Setsid() (pid int, err error) {
- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
- pid = int(r0)
-@@ -1267,6 +1520,26 @@ func Symlink(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Sync() (err error) {
- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
- if e1 != 0 {
-@@ -1315,6 +1588,21 @@ func Unlink(path string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Unlinkat(dirfd int, path string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Unmount(path string, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go
-index 41572c26..d7c878b1 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go
-@@ -1,4 +1,4 @@
--// mksyscall.pl -l32 -openbsd -arm -tags openbsd,arm syscall_bsd.go syscall_openbsd.go syscall_openbsd_arm.go
-+// go run mksyscall.go -l32 -openbsd -arm -tags openbsd,arm syscall_bsd.go syscall_openbsd.go syscall_openbsd_arm.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build openbsd,arm
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,8 +350,8 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe(p *[2]_C_int) (err error) {
-- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
-+func pipe2(p *[2]_C_int, flags int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -376,7 +360,7 @@ func pipe(p *[2]_C_int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func getdents(fd int, buf []byte) (n int, err error) {
-+func Getdents(fd int, buf []byte) (n int, err error) {
- var _p0 unsafe.Pointer
- if len(buf) > 0 {
- _p0 = unsafe.Pointer(&buf[0])
-@@ -393,6 +377,60 @@ func getdents(fd int, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getcwd(buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ioctl(fd int, req uint, arg uintptr) (err error) {
-+ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -524,6 +562,16 @@ func Dup2(from int, to int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Dup3(from int, to int, flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Exit(code int) {
- Syscall(SYS_EXIT, uintptr(code), 0, 0)
- return
-@@ -531,6 +579,21 @@ func Exit(code int) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchdir(fd int) (err error) {
- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
- if e1 != 0 {
-@@ -561,6 +624,21 @@ func Fchmod(fd int, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchown(fd int, uid int, gid int) (err error) {
- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
- if e1 != 0 {
-@@ -571,6 +649,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Flock(fd int, how int) (err error) {
- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
- if e1 != 0 {
-@@ -602,6 +695,21 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fstatfs(fd int, stat *Statfs_t) (err error) {
- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
-@@ -712,6 +820,17 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getrtable() (rtable int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_GETRTABLE, 0, 0, 0)
-+ rtable = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getrusage(who int, rusage *Rusage) (err error) {
- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
- if e1 != 0 {
-@@ -815,6 +934,26 @@ func Link(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(link)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Listen(s int, backlog int) (err error) {
- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
- if e1 != 0 {
-@@ -855,6 +994,21 @@ func Mkdir(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkdirat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mkfifo(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -870,6 +1024,21 @@ func Mkfifo(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -885,6 +1054,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
- if e1 != 0 {
-@@ -911,6 +1095,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
-+ fd = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Pathconf(path string, name int) (val int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1000,6 +1200,28 @@ func Readlink(path string, buf []byte) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p1 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p1 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Rename(from string, to string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(from)
-@@ -1020,6 +1242,26 @@ func Rename(from string, to string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Renameat(fromfd int, from string, tofd int, to string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(from)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(to)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Revoke(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1061,8 +1303,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1186,6 +1429,16 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Setrtable(rtable int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETRTABLE, uintptr(rtable), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Setsid() (pid int, err error) {
- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
- pid = int(r0)
-@@ -1267,6 +1520,26 @@ func Symlink(path string, link string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(oldpath)
-+ if err != nil {
-+ return
-+ }
-+ var _p1 *byte
-+ _p1, err = BytePtrFromString(newpath)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Sync() (err error) {
- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
- if e1 != 0 {
-@@ -1315,6 +1588,21 @@ func Unlink(path string) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Unlinkat(dirfd int, path string, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Unmount(path string, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go
-similarity index 87%
-copy from vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
-copy to vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go
-index 10491e9e..8facd695 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go
-@@ -1,7 +1,7 @@
--// mksyscall.pl -l32 -tags darwin,386 syscall_bsd.go syscall_darwin.go syscall_darwin_386.go
-+// go run mksyscall.go -openbsd -tags openbsd,arm64 syscall_bsd.go syscall_openbsd.go syscall_openbsd_arm64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build darwin,386
-+// +build openbsd,arm64
-
- package unix
-
-@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-- var _p0 unsafe.Pointer
-- if len(mib) > 0 {
-- _p0 = unsafe.Pointer(&mib[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func utimes(path string, timeval *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func fcntl(fd int, cmd int, arg int) (val int, err error) {
-- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
-- val = int(r0)
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -366,8 +350,8 @@ func Munlockall() (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
-+func pipe2(p *[2]_C_int, flags int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -376,10 +360,15 @@ func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func pipe() (r int, w int, err error) {
-- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
-- r = int(r0)
-- w = int(r1)
-+func Getdents(fd int, buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -388,8 +377,15 @@ func pipe() (r int, w int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func kill(pid int, signum int, posix int) (err error) {
-- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
-+func Getcwd(buf []byte) (n int, err error) {
-+ var _p0 unsafe.Pointer
-+ if len(buf) > 0 {
-+ _p0 = unsafe.Pointer(&buf[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -408,6 +404,33 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
-+ var _p0 unsafe.Pointer
-+ if len(mib) > 0 {
-+ _p0 = unsafe.Pointer(&mib[0])
-+ } else {
-+ _p0 = unsafe.Pointer(&_zero)
-+ }
-+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -539,18 +562,8 @@ func Dup2(from int, to int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Exchangedata(path1 string, path2 string, options int) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path1)
-- if err != nil {
-- return
-- }
-- var _p1 *byte
-- _p1, err = BytePtrFromString(path2)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
-+func Dup3(from int, to int, flags int) (err error) {
-+ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -673,7 +686,7 @@ func Fpathconf(fd int, name int) (val int, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Fstat(fd int, stat *Stat_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -682,8 +695,13 @@ func Fstat(fd int, stat *Stat_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fstatfs(fd int, stat *Statfs_t) (err error) {
-- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -692,8 +710,8 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Fsync(fd int) (err error) {
-- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
-+func Fstatfs(fd int, stat *Statfs_t) (err error) {
-+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -702,8 +720,8 @@ func Fsync(fd int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Ftruncate(fd int, length int64) (err error) {
-- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), uintptr(length>>32))
-+func Fsync(fd int) (err error) {
-+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -712,15 +730,8 @@ func Ftruncate(fd int, length int64) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-- var _p0 unsafe.Pointer
-- if len(buf) > 0 {
-- _p0 = unsafe.Pointer(&buf[0])
-- } else {
-- _p0 = unsafe.Pointer(&_zero)
-- }
-- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
-- n = int(r0)
-+func Ftruncate(fd int, length int64) (err error) {
-+ _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), 0, uintptr(length))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -729,14 +740,6 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Getdtablesize() (size int) {
-- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
-- size = int(r0)
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Getegid() (egid int) {
- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
- egid = int(r0)
-@@ -817,6 +820,17 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Getrtable() (rtable int, err error) {
-+ r0, _, e1 := RawSyscall(SYS_GETRTABLE, 0, 0, 0)
-+ rtable = int(r0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getrusage(who int, rusage *Rusage) (err error) {
- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
- if e1 != 0 {
-@@ -838,6 +852,16 @@ func Getsid(pid int) (sid int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Gettimeofday(tv *Timeval) (err error) {
-+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getuid() (uid int) {
- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
- uid = int(r0)
-@@ -847,13 +871,23 @@ func Getuid() (uid int) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Issetugid() (tainted bool) {
-- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0)
-+ r0, _, _ := Syscall(SYS_ISSETUGID, 0, 0, 0)
- tainted = bool(r0 != 0)
- return
- }
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Kill(pid int, signum syscall.Signal) (err error) {
-+ _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Kqueue() (fd int, err error) {
- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0)
- fd = int(r0)
-@@ -936,7 +970,7 @@ func Lstat(path string, stat *Stat_t) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -990,6 +1024,21 @@ func Mkfifo(path string, mode uint32) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1005,6 +1054,31 @@ func Mknod(path string, mode uint32, dev int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
-+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Open(path string, mode int, perm uint32) (fd int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1060,7 +1134,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
-+ r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1077,7 +1151,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
- } else {
- _p0 = unsafe.Pointer(&_zero)
- }
-- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
-+ r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0)
- n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1219,8 +1293,8 @@ func Rmdir(path string) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-- r0, r1, e1 := Syscall6(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0)
-- newoffset = int64(int64(r1)<<32 | int64(r0))
-+ r0, _, e1 := Syscall6(SYS_LSEEK, uintptr(fd), 0, uintptr(offset), uintptr(whence), 0, 0)
-+ newoffset = int64(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1229,8 +1303,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
-- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1240,7 +1315,7 @@ func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func Setegid(egid int) (err error) {
-- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0)
-+ _, _, e1 := RawSyscall(SYS_SETEGID, uintptr(egid), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1304,8 +1379,8 @@ func Setpriority(which int, who int, prio int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setprivexec(flag int) (err error) {
-- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0)
-+func Setregid(rgid int, egid int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1314,8 +1389,8 @@ func Setprivexec(flag int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setregid(rgid int, egid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
-+func Setreuid(ruid int, euid int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1324,8 +1399,18 @@ func Setregid(rgid int, egid int) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Setreuid(ruid int, euid int) (err error) {
-- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
-+func Setresgid(rgid int, egid int, sgid int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid))
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Setresuid(ruid int, euid int, suid int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1344,6 +1429,16 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-+func Setrtable(rtable int) (err error) {
-+ _, _, e1 := RawSyscall(SYS_SETRTABLE, uintptr(rtable), 0, 0)
-+ if e1 != 0 {
-+ err = errnoErr(e1)
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Setsid() (pid int, err error) {
- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
- pid = int(r0)
-@@ -1381,7 +1476,7 @@ func Stat(path string, stat *Stat_t) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1396,7 +1491,7 @@ func Statfs(path string, stat *Statfs_t) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
-+ _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1461,7 +1556,7 @@ func Truncate(path string, length int64) (err error) {
- if err != nil {
- return
- }
-- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32))
-+ _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), 0, uintptr(length))
- if e1 != 0 {
- err = errnoErr(e1)
- }
-@@ -1478,21 +1573,6 @@ func Umask(newmask int) (oldmask int) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func Undelete(path string) (err error) {
-- var _p0 *byte
-- _p0, err = BytePtrFromString(path)
-- if err != nil {
-- return
-- }
-- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0)
-- if e1 != 0 {
-- err = errnoErr(e1)
-- }
-- return
--}
--
--// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
--
- func Unlink(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1556,7 +1636,7 @@ func write(fd int, p []byte) (n int, err error) {
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
- func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
-- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0)
-+ r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), 0, uintptr(pos), 0, 0)
- ret = uintptr(r0)
- if e1 != 0 {
- err = errnoErr(e1)
-@@ -1598,10 +1678,13 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
-
- // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
--func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
-- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
-- sec = int32(r0)
-- usec = int32(r1)
-+func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
- if e1 != 0 {
- err = errnoErr(e1)
- }
-diff --git a/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
-index 4287133d..a96165d4 100644
---- a/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
-@@ -1,4 +1,4 @@
--// mksyscall_solaris.pl -tags solaris,amd64 syscall_solaris.go syscall_solaris_amd64.go
-+// go run mksyscall_solaris.go -tags solaris,amd64 syscall_solaris.go syscall_solaris_amd64.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build solaris,amd64
-@@ -25,7 +25,11 @@ import (
- //go:cgo_import_dynamic libc___xnet_recvmsg __xnet_recvmsg "libsocket.so"
- //go:cgo_import_dynamic libc___xnet_sendmsg __xnet_sendmsg "libsocket.so"
- //go:cgo_import_dynamic libc_acct acct "libc.so"
-+//go:cgo_import_dynamic libc___makedev __makedev "libc.so"
-+//go:cgo_import_dynamic libc___major __major "libc.so"
-+//go:cgo_import_dynamic libc___minor __minor "libc.so"
- //go:cgo_import_dynamic libc_ioctl ioctl "libc.so"
-+//go:cgo_import_dynamic libc_poll poll "libc.so"
- //go:cgo_import_dynamic libc_access access "libc.so"
- //go:cgo_import_dynamic libc_adjtime adjtime "libc.so"
- //go:cgo_import_dynamic libc_chdir chdir "libc.so"
-@@ -37,6 +41,7 @@ import (
- //go:cgo_import_dynamic libc_dup dup "libc.so"
- //go:cgo_import_dynamic libc_dup2 dup2 "libc.so"
- //go:cgo_import_dynamic libc_exit exit "libc.so"
-+//go:cgo_import_dynamic libc_faccessat faccessat "libc.so"
- //go:cgo_import_dynamic libc_fchdir fchdir "libc.so"
- //go:cgo_import_dynamic libc_fchmod fchmod "libc.so"
- //go:cgo_import_dynamic libc_fchmodat fchmodat "libc.so"
-@@ -46,6 +51,7 @@ import (
- //go:cgo_import_dynamic libc_flock flock "libc.so"
- //go:cgo_import_dynamic libc_fpathconf fpathconf "libc.so"
- //go:cgo_import_dynamic libc_fstat fstat "libc.so"
-+//go:cgo_import_dynamic libc_fstatat fstatat "libc.so"
- //go:cgo_import_dynamic libc_fstatvfs fstatvfs "libc.so"
- //go:cgo_import_dynamic libc_getdents getdents "libc.so"
- //go:cgo_import_dynamic libc_getgid getgid "libc.so"
-@@ -75,6 +81,7 @@ import (
- //go:cgo_import_dynamic libc_mlock mlock "libc.so"
- //go:cgo_import_dynamic libc_mlockall mlockall "libc.so"
- //go:cgo_import_dynamic libc_mprotect mprotect "libc.so"
-+//go:cgo_import_dynamic libc_msync msync "libc.so"
- //go:cgo_import_dynamic libc_munlock munlock "libc.so"
- //go:cgo_import_dynamic libc_munlockall munlockall "libc.so"
- //go:cgo_import_dynamic libc_nanosleep nanosleep "libc.so"
-@@ -90,6 +97,7 @@ import (
- //go:cgo_import_dynamic libc_renameat renameat "libc.so"
- //go:cgo_import_dynamic libc_rmdir rmdir "libc.so"
- //go:cgo_import_dynamic libc_lseek lseek "libc.so"
-+//go:cgo_import_dynamic libc_select select "libc.so"
- //go:cgo_import_dynamic libc_setegid setegid "libc.so"
- //go:cgo_import_dynamic libc_seteuid seteuid "libc.so"
- //go:cgo_import_dynamic libc_setgid setgid "libc.so"
-@@ -121,6 +129,7 @@ import (
- //go:cgo_import_dynamic libc___xnet_connect __xnet_connect "libsocket.so"
- //go:cgo_import_dynamic libc_mmap mmap "libc.so"
- //go:cgo_import_dynamic libc_munmap munmap "libc.so"
-+//go:cgo_import_dynamic libc_sendfile sendfile "libsendfile.so"
- //go:cgo_import_dynamic libc___xnet_sendto __xnet_sendto "libsocket.so"
- //go:cgo_import_dynamic libc___xnet_socket __xnet_socket "libsocket.so"
- //go:cgo_import_dynamic libc___xnet_socketpair __xnet_socketpair "libsocket.so"
-@@ -129,7 +138,6 @@ import (
- //go:cgo_import_dynamic libc_getpeername getpeername "libsocket.so"
- //go:cgo_import_dynamic libc_setsockopt setsockopt "libsocket.so"
- //go:cgo_import_dynamic libc_recvfrom recvfrom "libsocket.so"
--//go:cgo_import_dynamic libc_sysconf sysconf "libc.so"
-
- //go:linkname procpipe libc_pipe
- //go:linkname procgetsockname libc_getsockname
-@@ -146,7 +154,11 @@ import (
- //go:linkname proc__xnet_recvmsg libc___xnet_recvmsg
- //go:linkname proc__xnet_sendmsg libc___xnet_sendmsg
- //go:linkname procacct libc_acct
-+//go:linkname proc__makedev libc___makedev
-+//go:linkname proc__major libc___major
-+//go:linkname proc__minor libc___minor
- //go:linkname procioctl libc_ioctl
-+//go:linkname procpoll libc_poll
- //go:linkname procAccess libc_access
- //go:linkname procAdjtime libc_adjtime
- //go:linkname procChdir libc_chdir
-@@ -158,6 +170,7 @@ import (
- //go:linkname procDup libc_dup
- //go:linkname procDup2 libc_dup2
- //go:linkname procExit libc_exit
-+//go:linkname procFaccessat libc_faccessat
- //go:linkname procFchdir libc_fchdir
- //go:linkname procFchmod libc_fchmod
- //go:linkname procFchmodat libc_fchmodat
-@@ -167,6 +180,7 @@ import (
- //go:linkname procFlock libc_flock
- //go:linkname procFpathconf libc_fpathconf
- //go:linkname procFstat libc_fstat
-+//go:linkname procFstatat libc_fstatat
- //go:linkname procFstatvfs libc_fstatvfs
- //go:linkname procGetdents libc_getdents
- //go:linkname procGetgid libc_getgid
-@@ -196,6 +210,7 @@ import (
- //go:linkname procMlock libc_mlock
- //go:linkname procMlockall libc_mlockall
- //go:linkname procMprotect libc_mprotect
-+//go:linkname procMsync libc_msync
- //go:linkname procMunlock libc_munlock
- //go:linkname procMunlockall libc_munlockall
- //go:linkname procNanosleep libc_nanosleep
-@@ -211,6 +226,7 @@ import (
- //go:linkname procRenameat libc_renameat
- //go:linkname procRmdir libc_rmdir
- //go:linkname proclseek libc_lseek
-+//go:linkname procSelect libc_select
- //go:linkname procSetegid libc_setegid
- //go:linkname procSeteuid libc_seteuid
- //go:linkname procSetgid libc_setgid
-@@ -242,6 +258,7 @@ import (
- //go:linkname proc__xnet_connect libc___xnet_connect
- //go:linkname procmmap libc_mmap
- //go:linkname procmunmap libc_munmap
-+//go:linkname procsendfile libc_sendfile
- //go:linkname proc__xnet_sendto libc___xnet_sendto
- //go:linkname proc__xnet_socket libc___xnet_socket
- //go:linkname proc__xnet_socketpair libc___xnet_socketpair
-@@ -250,7 +267,6 @@ import (
- //go:linkname procgetpeername libc_getpeername
- //go:linkname procsetsockopt libc_setsockopt
- //go:linkname procrecvfrom libc_recvfrom
--//go:linkname procsysconf libc_sysconf
-
- var (
- procpipe,
-@@ -268,7 +284,11 @@ var (
- proc__xnet_recvmsg,
- proc__xnet_sendmsg,
- procacct,
-+ proc__makedev,
-+ proc__major,
-+ proc__minor,
- procioctl,
-+ procpoll,
- procAccess,
- procAdjtime,
- procChdir,
-@@ -280,6 +300,7 @@ var (
- procDup,
- procDup2,
- procExit,
-+ procFaccessat,
- procFchdir,
- procFchmod,
- procFchmodat,
-@@ -289,6 +310,7 @@ var (
- procFlock,
- procFpathconf,
- procFstat,
-+ procFstatat,
- procFstatvfs,
- procGetdents,
- procGetgid,
-@@ -318,6 +340,7 @@ var (
- procMlock,
- procMlockall,
- procMprotect,
-+ procMsync,
- procMunlock,
- procMunlockall,
- procNanosleep,
-@@ -333,6 +356,7 @@ var (
- procRenameat,
- procRmdir,
- proclseek,
-+ procSelect,
- procSetegid,
- procSeteuid,
- procSetgid,
-@@ -364,6 +388,7 @@ var (
- proc__xnet_connect,
- procmmap,
- procmunmap,
-+ procsendfile,
- proc__xnet_sendto,
- proc__xnet_socket,
- proc__xnet_socketpair,
-@@ -371,10 +396,11 @@ var (
- proc__xnet_getsockopt,
- procgetpeername,
- procsetsockopt,
-- procrecvfrom,
-- procsysconf syscallFunc
-+ procrecvfrom syscallFunc
- )
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func pipe(p *[2]_C_int) (n int, err error) {
- r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procpipe)), 1, uintptr(unsafe.Pointer(p)), 0, 0, 0, 0, 0)
- n = int(r0)
-@@ -384,6 +410,8 @@ func pipe(p *[2]_C_int) (n int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procgetsockname)), 3, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), 0, 0, 0)
- if e1 != 0 {
-@@ -392,6 +420,8 @@ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getcwd(buf []byte) (n int, err error) {
- var _p0 *byte
- if len(buf) > 0 {
-@@ -405,6 +435,8 @@ func Getcwd(buf []byte) (n int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
- r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procgetgroups)), 2, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0, 0, 0, 0)
- n = int(r0)
-@@ -414,6 +446,8 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func setgroups(ngid int, gid *_Gid_t) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procsetgroups)), 2, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -422,6 +456,8 @@ func setgroups(ngid int, gid *_Gid_t) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func wait4(pid int32, statusp *_C_int, options int, rusage *Rusage) (wpid int32, err error) {
- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procwait4)), 4, uintptr(pid), uintptr(unsafe.Pointer(statusp)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
- wpid = int32(r0)
-@@ -431,6 +467,8 @@ func wait4(pid int32, statusp *_C_int, options int, rusage *Rusage) (wpid int32,
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func gethostname(buf []byte) (n int, err error) {
- var _p0 *byte
- if len(buf) > 0 {
-@@ -444,6 +482,8 @@ func gethostname(buf []byte) (n int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func utimes(path string, times *[2]Timeval) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -457,6 +497,8 @@ func utimes(path string, times *[2]Timeval) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func utimensat(fd int, path string, times *[2]Timespec, flag int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -470,6 +512,8 @@ func utimensat(fd int, path string, times *[2]Timespec, flag int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func fcntl(fd int, cmd int, arg int) (val int, err error) {
- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procfcntl)), 3, uintptr(fd), uintptr(cmd), uintptr(arg), 0, 0, 0)
- val = int(r0)
-@@ -479,6 +523,8 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func futimesat(fildes int, path *byte, times *[2]Timeval) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procfutimesat)), 3, uintptr(fildes), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)), 0, 0, 0)
- if e1 != 0 {
-@@ -487,6 +533,8 @@ func futimesat(fildes int, path *byte, times *[2]Timeval) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procaccept)), 3, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), 0, 0, 0)
- fd = int(r0)
-@@ -496,6 +544,8 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_recvmsg)), 3, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags), 0, 0, 0)
- n = int(r0)
-@@ -505,6 +555,8 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_sendmsg)), 3, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags), 0, 0, 0)
- n = int(r0)
-@@ -514,6 +566,8 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func acct(path *byte) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procacct)), 1, uintptr(unsafe.Pointer(path)), 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -522,6 +576,32 @@ func acct(path *byte) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func __makedev(version int, major uint, minor uint) (val uint64) {
-+ r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&proc__makedev)), 3, uintptr(version), uintptr(major), uintptr(minor), 0, 0, 0)
-+ val = uint64(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func __major(version int, dev uint64) (val uint) {
-+ r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&proc__major)), 2, uintptr(version), uintptr(dev), 0, 0, 0, 0)
-+ val = uint(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func __minor(version int, dev uint64) (val uint) {
-+ r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&proc__minor)), 2, uintptr(version), uintptr(dev), 0, 0, 0, 0)
-+ val = uint(r0)
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func ioctl(fd int, req uint, arg uintptr) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procioctl)), 3, uintptr(fd), uintptr(req), uintptr(arg), 0, 0, 0)
- if e1 != 0 {
-@@ -530,6 +610,19 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
-+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procpoll)), 3, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout), 0, 0, 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = e1
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Access(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -543,6 +636,8 @@ func Access(path string, mode uint32) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procAdjtime)), 2, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -551,6 +646,8 @@ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Chdir(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -564,6 +661,8 @@ func Chdir(path string) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Chmod(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -577,6 +676,8 @@ func Chmod(path string, mode uint32) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Chown(path string, uid int, gid int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -590,6 +691,8 @@ func Chown(path string, uid int, gid int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Chroot(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -603,6 +706,8 @@ func Chroot(path string) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Close(fd int) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procClose)), 1, uintptr(fd), 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -611,6 +716,8 @@ func Close(fd int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Creat(path string, mode uint32) (fd int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -625,6 +732,8 @@ func Creat(path string, mode uint32) (fd int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Dup(fd int) (nfd int, err error) {
- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procDup)), 1, uintptr(fd), 0, 0, 0, 0, 0)
- nfd = int(r0)
-@@ -634,6 +743,8 @@ func Dup(fd int) (nfd int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Dup2(oldfd int, newfd int) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procDup2)), 2, uintptr(oldfd), uintptr(newfd), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -642,11 +753,30 @@ func Dup2(oldfd int, newfd int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Exit(code int) {
- sysvicall6(uintptr(unsafe.Pointer(&procExit)), 1, uintptr(code), 0, 0, 0, 0, 0)
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFaccessat)), 4, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = e1
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchdir(fd int) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFchdir)), 1, uintptr(fd), 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -655,6 +785,8 @@ func Fchdir(fd int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchmod(fd int, mode uint32) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFchmod)), 2, uintptr(fd), uintptr(mode), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -663,6 +795,8 @@ func Fchmod(fd int, mode uint32) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -676,6 +810,8 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchown(fd int, uid int, gid int) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFchown)), 3, uintptr(fd), uintptr(uid), uintptr(gid), 0, 0, 0)
- if e1 != 0 {
-@@ -684,6 +820,8 @@ func Fchown(fd int, uid int, gid int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -697,6 +835,8 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fdatasync(fd int) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFdatasync)), 1, uintptr(fd), 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -705,6 +845,8 @@ func Fdatasync(fd int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Flock(fd int, how int) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFlock)), 2, uintptr(fd), uintptr(how), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -713,6 +855,8 @@ func Flock(fd int, how int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fpathconf(fd int, name int) (val int, err error) {
- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFpathconf)), 2, uintptr(fd), uintptr(name), 0, 0, 0, 0)
- val = int(r0)
-@@ -722,6 +866,8 @@ func Fpathconf(fd int, name int) (val int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fstat(fd int, stat *Stat_t) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFstat)), 2, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -730,6 +876,23 @@ func Fstat(fd int, stat *Stat_t) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
-+ var _p0 *byte
-+ _p0, err = BytePtrFromString(path)
-+ if err != nil {
-+ return
-+ }
-+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFstatat)), 4, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
-+ if e1 != 0 {
-+ err = e1
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fstatvfs(fd int, vfsstat *Statvfs_t) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFstatvfs)), 2, uintptr(fd), uintptr(unsafe.Pointer(vfsstat)), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -738,6 +901,8 @@ func Fstatvfs(fd int, vfsstat *Statvfs_t) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getdents(fd int, buf []byte, basep *uintptr) (n int, err error) {
- var _p0 *byte
- if len(buf) > 0 {
-@@ -751,18 +916,24 @@ func Getdents(fd int, buf []byte, basep *uintptr) (n int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getgid() (gid int) {
- r0, _, _ := rawSysvicall6(uintptr(unsafe.Pointer(&procGetgid)), 0, 0, 0, 0, 0, 0, 0)
- gid = int(r0)
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getpid() (pid int) {
- r0, _, _ := rawSysvicall6(uintptr(unsafe.Pointer(&procGetpid)), 0, 0, 0, 0, 0, 0, 0)
- pid = int(r0)
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getpgid(pid int) (pgid int, err error) {
- r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procGetpgid)), 1, uintptr(pid), 0, 0, 0, 0, 0)
- pgid = int(r0)
-@@ -772,6 +943,8 @@ func Getpgid(pid int) (pgid int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getpgrp() (pgid int, err error) {
- r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procGetpgrp)), 0, 0, 0, 0, 0, 0, 0)
- pgid = int(r0)
-@@ -781,24 +954,32 @@ func Getpgrp() (pgid int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Geteuid() (euid int) {
- r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&procGeteuid)), 0, 0, 0, 0, 0, 0, 0)
- euid = int(r0)
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getegid() (egid int) {
- r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&procGetegid)), 0, 0, 0, 0, 0, 0, 0)
- egid = int(r0)
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getppid() (ppid int) {
- r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&procGetppid)), 0, 0, 0, 0, 0, 0, 0)
- ppid = int(r0)
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getpriority(which int, who int) (n int, err error) {
- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procGetpriority)), 2, uintptr(which), uintptr(who), 0, 0, 0, 0)
- n = int(r0)
-@@ -808,6 +989,8 @@ func Getpriority(which int, who int) (n int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getrlimit(which int, lim *Rlimit) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procGetrlimit)), 2, uintptr(which), uintptr(unsafe.Pointer(lim)), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -816,6 +999,8 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getrusage(who int, rusage *Rusage) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procGetrusage)), 2, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -824,6 +1009,8 @@ func Getrusage(who int, rusage *Rusage) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Gettimeofday(tv *Timeval) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procGettimeofday)), 1, uintptr(unsafe.Pointer(tv)), 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -832,12 +1019,16 @@ func Gettimeofday(tv *Timeval) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Getuid() (uid int) {
- r0, _, _ := rawSysvicall6(uintptr(unsafe.Pointer(&procGetuid)), 0, 0, 0, 0, 0, 0, 0)
- uid = int(r0)
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Kill(pid int, signum syscall.Signal) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procKill)), 2, uintptr(pid), uintptr(signum), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -846,6 +1037,8 @@ func Kill(pid int, signum syscall.Signal) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Lchown(path string, uid int, gid int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -859,6 +1052,8 @@ func Lchown(path string, uid int, gid int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Link(path string, link string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -877,6 +1072,8 @@ func Link(path string, link string) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Listen(s int, backlog int) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_llisten)), 2, uintptr(s), uintptr(backlog), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -885,6 +1082,8 @@ func Listen(s int, backlog int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Lstat(path string, stat *Stat_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -898,6 +1097,8 @@ func Lstat(path string, stat *Stat_t) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Madvise(b []byte, advice int) (err error) {
- var _p0 *byte
- if len(b) > 0 {
-@@ -910,6 +1111,8 @@ func Madvise(b []byte, advice int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mkdir(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -923,6 +1126,8 @@ func Mkdir(path string, mode uint32) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mkdirat(dirfd int, path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -936,6 +1141,8 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mkfifo(path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -949,6 +1156,8 @@ func Mkfifo(path string, mode uint32) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -962,6 +1171,8 @@ func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mknod(path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -975,6 +1186,8 @@ func Mknod(path string, mode uint32, dev int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -988,6 +1201,8 @@ func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mlock(b []byte) (err error) {
- var _p0 *byte
- if len(b) > 0 {
-@@ -1000,6 +1215,8 @@ func Mlock(b []byte) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mlockall(flags int) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procMlockall)), 1, uintptr(flags), 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1008,6 +1225,8 @@ func Mlockall(flags int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Mprotect(b []byte, prot int) (err error) {
- var _p0 *byte
- if len(b) > 0 {
-@@ -1020,6 +1239,22 @@ func Mprotect(b []byte, prot int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Msync(b []byte, flags int) (err error) {
-+ var _p0 *byte
-+ if len(b) > 0 {
-+ _p0 = &b[0]
-+ }
-+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procMsync)), 3, uintptr(unsafe.Pointer(_p0)), uintptr(len(b)), uintptr(flags), 0, 0, 0)
-+ if e1 != 0 {
-+ err = e1
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Munlock(b []byte) (err error) {
- var _p0 *byte
- if len(b) > 0 {
-@@ -1032,6 +1267,8 @@ func Munlock(b []byte) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Munlockall() (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procMunlockall)), 0, 0, 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1040,6 +1277,8 @@ func Munlockall() (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procNanosleep)), 2, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1048,6 +1287,8 @@ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Open(path string, mode int, perm uint32) (fd int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1062,6 +1303,8 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1076,6 +1319,8 @@ func Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error)
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Pathconf(path string, name int) (val int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1090,6 +1335,8 @@ func Pathconf(path string, name int) (val int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Pause() (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procPause)), 0, 0, 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1098,6 +1345,8 @@ func Pause() (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Pread(fd int, p []byte, offset int64) (n int, err error) {
- var _p0 *byte
- if len(p) > 0 {
-@@ -1111,6 +1360,8 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
- var _p0 *byte
- if len(p) > 0 {
-@@ -1124,6 +1375,8 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func read(fd int, p []byte) (n int, err error) {
- var _p0 *byte
- if len(p) > 0 {
-@@ -1137,6 +1390,8 @@ func read(fd int, p []byte) (n int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Readlink(path string, buf []byte) (n int, err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1155,6 +1410,8 @@ func Readlink(path string, buf []byte) (n int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Rename(from string, to string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(from)
-@@ -1173,6 +1430,8 @@ func Rename(from string, to string) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(oldpath)
-@@ -1191,6 +1450,8 @@ func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err e
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Rmdir(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1204,6 +1465,8 @@ func Rmdir(path string) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proclseek)), 3, uintptr(fd), uintptr(offset), uintptr(whence), 0, 0, 0)
- newoffset = int64(r0)
-@@ -1213,6 +1476,19 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
-+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procSelect)), 5, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
-+ n = int(r0)
-+ if e1 != 0 {
-+ err = e1
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Setegid(egid int) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetegid)), 1, uintptr(egid), 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1221,6 +1497,8 @@ func Setegid(egid int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Seteuid(euid int) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSeteuid)), 1, uintptr(euid), 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1229,6 +1507,8 @@ func Seteuid(euid int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Setgid(gid int) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetgid)), 1, uintptr(gid), 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1237,6 +1517,8 @@ func Setgid(gid int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Sethostname(p []byte) (err error) {
- var _p0 *byte
- if len(p) > 0 {
-@@ -1249,6 +1531,8 @@ func Sethostname(p []byte) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Setpgid(pid int, pgid int) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetpgid)), 2, uintptr(pid), uintptr(pgid), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1257,6 +1541,8 @@ func Setpgid(pid int, pgid int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Setpriority(which int, who int, prio int) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procSetpriority)), 3, uintptr(which), uintptr(who), uintptr(prio), 0, 0, 0)
- if e1 != 0 {
-@@ -1265,6 +1551,8 @@ func Setpriority(which int, who int, prio int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Setregid(rgid int, egid int) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetregid)), 2, uintptr(rgid), uintptr(egid), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1273,6 +1561,8 @@ func Setregid(rgid int, egid int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Setreuid(ruid int, euid int) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetreuid)), 2, uintptr(ruid), uintptr(euid), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1281,6 +1571,8 @@ func Setreuid(ruid int, euid int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Setrlimit(which int, lim *Rlimit) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetrlimit)), 2, uintptr(which), uintptr(unsafe.Pointer(lim)), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1289,6 +1581,8 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Setsid() (pid int, err error) {
- r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetsid)), 0, 0, 0, 0, 0, 0, 0)
- pid = int(r0)
-@@ -1298,6 +1592,8 @@ func Setsid() (pid int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Setuid(uid int) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetuid)), 1, uintptr(uid), 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1306,6 +1602,8 @@ func Setuid(uid int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Shutdown(s int, how int) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procshutdown)), 2, uintptr(s), uintptr(how), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1314,6 +1612,8 @@ func Shutdown(s int, how int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Stat(path string, stat *Stat_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1327,6 +1627,8 @@ func Stat(path string, stat *Stat_t) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Statvfs(path string, vfsstat *Statvfs_t) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1340,6 +1642,8 @@ func Statvfs(path string, vfsstat *Statvfs_t) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Symlink(path string, link string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1358,6 +1662,8 @@ func Symlink(path string, link string) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Sync() (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procSync)), 0, 0, 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1366,6 +1672,8 @@ func Sync() (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Times(tms *Tms) (ticks uintptr, err error) {
- r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procTimes)), 1, uintptr(unsafe.Pointer(tms)), 0, 0, 0, 0, 0)
- ticks = uintptr(r0)
-@@ -1375,6 +1683,8 @@ func Times(tms *Tms) (ticks uintptr, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Truncate(path string, length int64) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1388,6 +1698,8 @@ func Truncate(path string, length int64) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Fsync(fd int) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFsync)), 1, uintptr(fd), 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1396,6 +1708,8 @@ func Fsync(fd int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Ftruncate(fd int, length int64) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFtruncate)), 2, uintptr(fd), uintptr(length), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1404,12 +1718,16 @@ func Ftruncate(fd int, length int64) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Umask(mask int) (oldmask int) {
- r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&procUmask)), 1, uintptr(mask), 0, 0, 0, 0, 0)
- oldmask = int(r0)
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Uname(buf *Utsname) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procUname)), 1, uintptr(unsafe.Pointer(buf)), 0, 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1418,6 +1736,8 @@ func Uname(buf *Utsname) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Unmount(target string, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(target)
-@@ -1431,6 +1751,8 @@ func Unmount(target string, flags int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Unlink(path string) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1444,6 +1766,8 @@ func Unlink(path string) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Unlinkat(dirfd int, path string, flags int) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1457,6 +1781,8 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Ustat(dev int, ubuf *Ustat_t) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procUstat)), 2, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1465,6 +1791,8 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func Utime(path string, buf *Utimbuf) (err error) {
- var _p0 *byte
- _p0, err = BytePtrFromString(path)
-@@ -1478,6 +1806,8 @@ func Utime(path string, buf *Utimbuf) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_bind)), 3, uintptr(s), uintptr(addr), uintptr(addrlen), 0, 0, 0)
- if e1 != 0 {
-@@ -1486,6 +1816,8 @@ func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_connect)), 3, uintptr(s), uintptr(addr), uintptr(addrlen), 0, 0, 0)
- if e1 != 0 {
-@@ -1494,6 +1826,8 @@ func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procmmap)), 6, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos))
- ret = uintptr(r0)
-@@ -1503,6 +1837,8 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func munmap(addr uintptr, length uintptr) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procmunmap)), 2, uintptr(addr), uintptr(length), 0, 0, 0, 0)
- if e1 != 0 {
-@@ -1511,6 +1847,19 @@ func munmap(addr uintptr, length uintptr) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
-+func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
-+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procsendfile)), 4, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
-+ written = int(r0)
-+ if e1 != 0 {
-+ err = e1
-+ }
-+ return
-+}
-+
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
- var _p0 *byte
- if len(buf) > 0 {
-@@ -1523,6 +1872,8 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func socket(domain int, typ int, proto int) (fd int, err error) {
- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_socket)), 3, uintptr(domain), uintptr(typ), uintptr(proto), 0, 0, 0)
- fd = int(r0)
-@@ -1532,6 +1883,8 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&proc__xnet_socketpair)), 4, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
- if e1 != 0 {
-@@ -1540,6 +1893,8 @@ func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func write(fd int, p []byte) (n int, err error) {
- var _p0 *byte
- if len(p) > 0 {
-@@ -1553,6 +1908,8 @@ func write(fd int, p []byte) (n int, err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_getsockopt)), 5, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
- if e1 != 0 {
-@@ -1561,6 +1918,8 @@ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
- _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procgetpeername)), 3, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), 0, 0, 0)
- if e1 != 0 {
-@@ -1569,6 +1928,8 @@ func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procsetsockopt)), 5, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
- if e1 != 0 {
-@@ -1577,6 +1938,8 @@ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr)
- return
- }
-
-+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-+
- func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
- var _p0 *byte
- if len(p) > 0 {
-@@ -1589,12 +1952,3 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
- }
- return
- }
--
--func sysconf(name int) (n int64, err error) {
-- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procsysconf)), 1, uintptr(name), 0, 0, 0, 0, 0)
-- n = int64(r0)
-- if e1 != 0 {
-- err = e1
-- }
-- return
--}
-diff --git a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go
-similarity index 99%
-copy from vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
-copy to vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go
-index 83bb935b..37dcc74c 100644
---- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
-+++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go
-@@ -1,5 +1,7 @@
- // mksysctl_openbsd.pl
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// Code generated by the command above; DO NOT EDIT.
-+
-+// +build 386,openbsd
-
- package unix
-
-diff --git a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go
-similarity index 91%
-copy from vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
-copy to vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go
-index 83bb935b..fe6caa6e 100644
---- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
-+++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go
-@@ -1,5 +1,7 @@
--// mksysctl_openbsd.pl
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run mksysctl_openbsd.go
-+// Code generated by the command above; DO NOT EDIT.
-+
-+// +build amd64,openbsd
-
- package unix
-
-@@ -14,6 +16,7 @@ var sysctlMib = []mibentry{
- {"ddb.max_line", []_C_int{9, 3}},
- {"ddb.max_width", []_C_int{9, 2}},
- {"ddb.panic", []_C_int{9, 5}},
-+ {"ddb.profile", []_C_int{9, 9}},
- {"ddb.radix", []_C_int{9, 1}},
- {"ddb.tab_stop_width", []_C_int{9, 4}},
- {"ddb.trigger", []_C_int{9, 8}},
-@@ -29,6 +32,7 @@ var sysctlMib = []mibentry{
- {"hw.ncpu", []_C_int{6, 3}},
- {"hw.ncpufound", []_C_int{6, 21}},
- {"hw.pagesize", []_C_int{6, 7}},
-+ {"hw.perfpolicy", []_C_int{6, 23}},
- {"hw.physmem", []_C_int{6, 19}},
- {"hw.product", []_C_int{6, 15}},
- {"hw.serialno", []_C_int{6, 17}},
-@@ -37,7 +41,7 @@ var sysctlMib = []mibentry{
- {"hw.uuid", []_C_int{6, 18}},
- {"hw.vendor", []_C_int{6, 14}},
- {"hw.version", []_C_int{6, 16}},
-- {"kern.arandom", []_C_int{1, 37}},
-+ {"kern.allowkmem", []_C_int{1, 52}},
- {"kern.argmax", []_C_int{1, 8}},
- {"kern.boottime", []_C_int{1, 21}},
- {"kern.bufcachepercent", []_C_int{1, 72}},
-@@ -46,12 +50,13 @@ var sysctlMib = []mibentry{
- {"kern.consdev", []_C_int{1, 75}},
- {"kern.cp_time", []_C_int{1, 40}},
- {"kern.cp_time2", []_C_int{1, 71}},
-- {"kern.cryptodevallowsoft", []_C_int{1, 53}},
-+ {"kern.dnsjackport", []_C_int{1, 13}},
- {"kern.domainname", []_C_int{1, 22}},
- {"kern.file", []_C_int{1, 73}},
- {"kern.forkstat", []_C_int{1, 42}},
- {"kern.fscale", []_C_int{1, 46}},
- {"kern.fsync", []_C_int{1, 33}},
-+ {"kern.global_ptrace", []_C_int{1, 81}},
- {"kern.hostid", []_C_int{1, 11}},
- {"kern.hostname", []_C_int{1, 10}},
- {"kern.intrcnt.nintrcnt", []_C_int{1, 63, 1}},
-@@ -84,7 +89,6 @@ var sysctlMib = []mibentry{
- {"kern.pool_debug", []_C_int{1, 77}},
- {"kern.posix1version", []_C_int{1, 17}},
- {"kern.proc", []_C_int{1, 66}},
-- {"kern.random", []_C_int{1, 31}},
- {"kern.rawpartition", []_C_int{1, 24}},
- {"kern.saved_ids", []_C_int{1, 20}},
- {"kern.securelevel", []_C_int{1, 9}},
-@@ -102,21 +106,16 @@ var sysctlMib = []mibentry{
- {"kern.timecounter.hardware", []_C_int{1, 69, 3}},
- {"kern.timecounter.tick", []_C_int{1, 69, 1}},
- {"kern.timecounter.timestepwarnings", []_C_int{1, 69, 2}},
-- {"kern.tty.maxptys", []_C_int{1, 44, 6}},
-- {"kern.tty.nptys", []_C_int{1, 44, 7}},
- {"kern.tty.tk_cancc", []_C_int{1, 44, 4}},
- {"kern.tty.tk_nin", []_C_int{1, 44, 1}},
- {"kern.tty.tk_nout", []_C_int{1, 44, 2}},
- {"kern.tty.tk_rawcc", []_C_int{1, 44, 3}},
- {"kern.tty.ttyinfo", []_C_int{1, 44, 5}},
- {"kern.ttycount", []_C_int{1, 57}},
-- {"kern.userasymcrypto", []_C_int{1, 60}},
-- {"kern.usercrypto", []_C_int{1, 52}},
-- {"kern.usermount", []_C_int{1, 30}},
- {"kern.version", []_C_int{1, 4}},
-- {"kern.vnode", []_C_int{1, 13}},
- {"kern.watchdog.auto", []_C_int{1, 64, 2}},
- {"kern.watchdog.period", []_C_int{1, 64, 1}},
-+ {"kern.wxabort", []_C_int{1, 74}},
- {"net.bpf.bufsize", []_C_int{4, 31, 1}},
- {"net.bpf.maxbufsize", []_C_int{4, 31, 2}},
- {"net.inet.ah.enable", []_C_int{4, 2, 51, 1}},
-@@ -144,7 +143,9 @@ var sysctlMib = []mibentry{
- {"net.inet.icmp.stats", []_C_int{4, 2, 1, 7}},
- {"net.inet.icmp.tstamprepl", []_C_int{4, 2, 1, 6}},
- {"net.inet.igmp.stats", []_C_int{4, 2, 2, 1}},
-+ {"net.inet.ip.arpdown", []_C_int{4, 2, 0, 40}},
- {"net.inet.ip.arpqueued", []_C_int{4, 2, 0, 36}},
-+ {"net.inet.ip.arptimeout", []_C_int{4, 2, 0, 39}},
- {"net.inet.ip.encdebug", []_C_int{4, 2, 0, 12}},
- {"net.inet.ip.forwarding", []_C_int{4, 2, 0, 1}},
- {"net.inet.ip.ifq.congestion", []_C_int{4, 2, 0, 30, 4}},
-@@ -153,8 +154,10 @@ var sysctlMib = []mibentry{
- {"net.inet.ip.ifq.maxlen", []_C_int{4, 2, 0, 30, 2}},
- {"net.inet.ip.maxqueue", []_C_int{4, 2, 0, 11}},
- {"net.inet.ip.mforwarding", []_C_int{4, 2, 0, 31}},
-+ {"net.inet.ip.mrtmfc", []_C_int{4, 2, 0, 37}},
- {"net.inet.ip.mrtproto", []_C_int{4, 2, 0, 34}},
- {"net.inet.ip.mrtstats", []_C_int{4, 2, 0, 35}},
-+ {"net.inet.ip.mrtvif", []_C_int{4, 2, 0, 38}},
- {"net.inet.ip.mtu", []_C_int{4, 2, 0, 4}},
- {"net.inet.ip.mtudisc", []_C_int{4, 2, 0, 27}},
- {"net.inet.ip.mtudisctimeout", []_C_int{4, 2, 0, 28}},
-@@ -173,7 +176,6 @@ var sysctlMib = []mibentry{
- {"net.inet.ipip.stats", []_C_int{4, 2, 4, 2}},
- {"net.inet.mobileip.allow", []_C_int{4, 2, 55, 1}},
- {"net.inet.pfsync.stats", []_C_int{4, 2, 240, 1}},
-- {"net.inet.pim.stats", []_C_int{4, 2, 103, 1}},
- {"net.inet.tcp.ackonpush", []_C_int{4, 2, 6, 13}},
- {"net.inet.tcp.always_keepalive", []_C_int{4, 2, 6, 22}},
- {"net.inet.tcp.baddynamic", []_C_int{4, 2, 6, 6}},
-@@ -187,6 +189,7 @@ var sysctlMib = []mibentry{
- {"net.inet.tcp.reasslimit", []_C_int{4, 2, 6, 18}},
- {"net.inet.tcp.rfc1323", []_C_int{4, 2, 6, 1}},
- {"net.inet.tcp.rfc3390", []_C_int{4, 2, 6, 17}},
-+ {"net.inet.tcp.rootonly", []_C_int{4, 2, 6, 24}},
- {"net.inet.tcp.rstppslimit", []_C_int{4, 2, 6, 12}},
- {"net.inet.tcp.sack", []_C_int{4, 2, 6, 10}},
- {"net.inet.tcp.sackholelimit", []_C_int{4, 2, 6, 20}},
-@@ -194,9 +197,12 @@ var sysctlMib = []mibentry{
- {"net.inet.tcp.stats", []_C_int{4, 2, 6, 21}},
- {"net.inet.tcp.synbucketlimit", []_C_int{4, 2, 6, 16}},
- {"net.inet.tcp.syncachelimit", []_C_int{4, 2, 6, 15}},
-+ {"net.inet.tcp.synhashsize", []_C_int{4, 2, 6, 25}},
-+ {"net.inet.tcp.synuselimit", []_C_int{4, 2, 6, 23}},
- {"net.inet.udp.baddynamic", []_C_int{4, 2, 17, 2}},
- {"net.inet.udp.checksum", []_C_int{4, 2, 17, 1}},
- {"net.inet.udp.recvspace", []_C_int{4, 2, 17, 3}},
-+ {"net.inet.udp.rootonly", []_C_int{4, 2, 17, 6}},
- {"net.inet.udp.sendspace", []_C_int{4, 2, 17, 4}},
- {"net.inet.udp.stats", []_C_int{4, 2, 17, 5}},
- {"net.inet6.divert.recvspace", []_C_int{4, 24, 86, 1}},
-@@ -209,13 +215,8 @@ var sysctlMib = []mibentry{
- {"net.inet6.icmp6.nd6_delay", []_C_int{4, 24, 30, 8}},
- {"net.inet6.icmp6.nd6_maxnudhint", []_C_int{4, 24, 30, 15}},
- {"net.inet6.icmp6.nd6_mmaxtries", []_C_int{4, 24, 30, 10}},
-- {"net.inet6.icmp6.nd6_prune", []_C_int{4, 24, 30, 6}},
- {"net.inet6.icmp6.nd6_umaxtries", []_C_int{4, 24, 30, 9}},
-- {"net.inet6.icmp6.nd6_useloopback", []_C_int{4, 24, 30, 11}},
-- {"net.inet6.icmp6.nodeinfo", []_C_int{4, 24, 30, 13}},
-- {"net.inet6.icmp6.rediraccept", []_C_int{4, 24, 30, 2}},
- {"net.inet6.icmp6.redirtimeout", []_C_int{4, 24, 30, 3}},
-- {"net.inet6.ip6.accept_rtadv", []_C_int{4, 24, 17, 12}},
- {"net.inet6.ip6.auto_flowlabel", []_C_int{4, 24, 17, 17}},
- {"net.inet6.ip6.dad_count", []_C_int{4, 24, 17, 16}},
- {"net.inet6.ip6.dad_pending", []_C_int{4, 24, 17, 49}},
-@@ -228,20 +229,19 @@ var sysctlMib = []mibentry{
- {"net.inet6.ip6.maxdynroutes", []_C_int{4, 24, 17, 48}},
- {"net.inet6.ip6.maxfragpackets", []_C_int{4, 24, 17, 9}},
- {"net.inet6.ip6.maxfrags", []_C_int{4, 24, 17, 41}},
-- {"net.inet6.ip6.maxifdefrouters", []_C_int{4, 24, 17, 47}},
-- {"net.inet6.ip6.maxifprefixes", []_C_int{4, 24, 17, 46}},
- {"net.inet6.ip6.mforwarding", []_C_int{4, 24, 17, 42}},
-+ {"net.inet6.ip6.mrtmfc", []_C_int{4, 24, 17, 53}},
-+ {"net.inet6.ip6.mrtmif", []_C_int{4, 24, 17, 52}},
- {"net.inet6.ip6.mrtproto", []_C_int{4, 24, 17, 8}},
- {"net.inet6.ip6.mtudisctimeout", []_C_int{4, 24, 17, 50}},
- {"net.inet6.ip6.multicast_mtudisc", []_C_int{4, 24, 17, 44}},
- {"net.inet6.ip6.multipath", []_C_int{4, 24, 17, 43}},
- {"net.inet6.ip6.neighborgcthresh", []_C_int{4, 24, 17, 45}},
- {"net.inet6.ip6.redirect", []_C_int{4, 24, 17, 2}},
-- {"net.inet6.ip6.rr_prune", []_C_int{4, 24, 17, 22}},
-+ {"net.inet6.ip6.soiikey", []_C_int{4, 24, 17, 54}},
- {"net.inet6.ip6.sourcecheck", []_C_int{4, 24, 17, 10}},
- {"net.inet6.ip6.sourcecheck_logint", []_C_int{4, 24, 17, 11}},
- {"net.inet6.ip6.use_deprecated", []_C_int{4, 24, 17, 21}},
-- {"net.inet6.ip6.v6only", []_C_int{4, 24, 17, 24}},
- {"net.key.sadb_dump", []_C_int{4, 30, 1}},
- {"net.key.spd_dump", []_C_int{4, 30, 2}},
- {"net.mpls.ifq.congestion", []_C_int{4, 33, 3, 4}},
-diff --git a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go
-similarity index 99%
-copy from vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
-copy to vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go
-index 83bb935b..6eb8c0b0 100644
---- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
-+++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go
-@@ -1,5 +1,7 @@
--// mksysctl_openbsd.pl
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run mksysctl_openbsd.go
-+// Code generated by the command above; DO NOT EDIT.
-+
-+// +build arm,openbsd
-
- package unix
-
-diff --git a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go
-similarity index 91%
-rename from vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
-rename to vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go
-index 83bb935b..ba4304fd 100644
---- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
-+++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go
-@@ -1,5 +1,7 @@
--// mksysctl_openbsd.pl
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run mksysctl_openbsd.go
-+// Code generated by the command above; DO NOT EDIT.
-+
-+// +build arm64,openbsd
-
- package unix
-
-@@ -14,6 +16,7 @@ var sysctlMib = []mibentry{
- {"ddb.max_line", []_C_int{9, 3}},
- {"ddb.max_width", []_C_int{9, 2}},
- {"ddb.panic", []_C_int{9, 5}},
-+ {"ddb.profile", []_C_int{9, 9}},
- {"ddb.radix", []_C_int{9, 1}},
- {"ddb.tab_stop_width", []_C_int{9, 4}},
- {"ddb.trigger", []_C_int{9, 8}},
-@@ -28,17 +31,21 @@ var sysctlMib = []mibentry{
- {"hw.model", []_C_int{6, 2}},
- {"hw.ncpu", []_C_int{6, 3}},
- {"hw.ncpufound", []_C_int{6, 21}},
-+ {"hw.ncpuonline", []_C_int{6, 25}},
- {"hw.pagesize", []_C_int{6, 7}},
-+ {"hw.perfpolicy", []_C_int{6, 23}},
- {"hw.physmem", []_C_int{6, 19}},
- {"hw.product", []_C_int{6, 15}},
- {"hw.serialno", []_C_int{6, 17}},
- {"hw.setperf", []_C_int{6, 13}},
-+ {"hw.smt", []_C_int{6, 24}},
- {"hw.usermem", []_C_int{6, 20}},
- {"hw.uuid", []_C_int{6, 18}},
- {"hw.vendor", []_C_int{6, 14}},
- {"hw.version", []_C_int{6, 16}},
-- {"kern.arandom", []_C_int{1, 37}},
-+ {"kern.allowkmem", []_C_int{1, 52}},
- {"kern.argmax", []_C_int{1, 8}},
-+ {"kern.audio", []_C_int{1, 84}},
- {"kern.boottime", []_C_int{1, 21}},
- {"kern.bufcachepercent", []_C_int{1, 72}},
- {"kern.ccpu", []_C_int{1, 45}},
-@@ -46,12 +53,13 @@ var sysctlMib = []mibentry{
- {"kern.consdev", []_C_int{1, 75}},
- {"kern.cp_time", []_C_int{1, 40}},
- {"kern.cp_time2", []_C_int{1, 71}},
-- {"kern.cryptodevallowsoft", []_C_int{1, 53}},
-+ {"kern.cpustats", []_C_int{1, 85}},
- {"kern.domainname", []_C_int{1, 22}},
- {"kern.file", []_C_int{1, 73}},
- {"kern.forkstat", []_C_int{1, 42}},
- {"kern.fscale", []_C_int{1, 46}},
- {"kern.fsync", []_C_int{1, 33}},
-+ {"kern.global_ptrace", []_C_int{1, 81}},
- {"kern.hostid", []_C_int{1, 11}},
- {"kern.hostname", []_C_int{1, 10}},
- {"kern.intrcnt.nintrcnt", []_C_int{1, 63, 1}},
-@@ -84,7 +92,6 @@ var sysctlMib = []mibentry{
- {"kern.pool_debug", []_C_int{1, 77}},
- {"kern.posix1version", []_C_int{1, 17}},
- {"kern.proc", []_C_int{1, 66}},
-- {"kern.random", []_C_int{1, 31}},
- {"kern.rawpartition", []_C_int{1, 24}},
- {"kern.saved_ids", []_C_int{1, 20}},
- {"kern.securelevel", []_C_int{1, 9}},
-@@ -102,21 +109,17 @@ var sysctlMib = []mibentry{
- {"kern.timecounter.hardware", []_C_int{1, 69, 3}},
- {"kern.timecounter.tick", []_C_int{1, 69, 1}},
- {"kern.timecounter.timestepwarnings", []_C_int{1, 69, 2}},
-- {"kern.tty.maxptys", []_C_int{1, 44, 6}},
-- {"kern.tty.nptys", []_C_int{1, 44, 7}},
- {"kern.tty.tk_cancc", []_C_int{1, 44, 4}},
- {"kern.tty.tk_nin", []_C_int{1, 44, 1}},
- {"kern.tty.tk_nout", []_C_int{1, 44, 2}},
- {"kern.tty.tk_rawcc", []_C_int{1, 44, 3}},
- {"kern.tty.ttyinfo", []_C_int{1, 44, 5}},
- {"kern.ttycount", []_C_int{1, 57}},
-- {"kern.userasymcrypto", []_C_int{1, 60}},
-- {"kern.usercrypto", []_C_int{1, 52}},
-- {"kern.usermount", []_C_int{1, 30}},
- {"kern.version", []_C_int{1, 4}},
-- {"kern.vnode", []_C_int{1, 13}},
- {"kern.watchdog.auto", []_C_int{1, 64, 2}},
- {"kern.watchdog.period", []_C_int{1, 64, 1}},
-+ {"kern.witnesswatch", []_C_int{1, 53}},
-+ {"kern.wxabort", []_C_int{1, 74}},
- {"net.bpf.bufsize", []_C_int{4, 31, 1}},
- {"net.bpf.maxbufsize", []_C_int{4, 31, 2}},
- {"net.inet.ah.enable", []_C_int{4, 2, 51, 1}},
-@@ -144,7 +147,9 @@ var sysctlMib = []mibentry{
- {"net.inet.icmp.stats", []_C_int{4, 2, 1, 7}},
- {"net.inet.icmp.tstamprepl", []_C_int{4, 2, 1, 6}},
- {"net.inet.igmp.stats", []_C_int{4, 2, 2, 1}},
-+ {"net.inet.ip.arpdown", []_C_int{4, 2, 0, 40}},
- {"net.inet.ip.arpqueued", []_C_int{4, 2, 0, 36}},
-+ {"net.inet.ip.arptimeout", []_C_int{4, 2, 0, 39}},
- {"net.inet.ip.encdebug", []_C_int{4, 2, 0, 12}},
- {"net.inet.ip.forwarding", []_C_int{4, 2, 0, 1}},
- {"net.inet.ip.ifq.congestion", []_C_int{4, 2, 0, 30, 4}},
-@@ -153,8 +158,10 @@ var sysctlMib = []mibentry{
- {"net.inet.ip.ifq.maxlen", []_C_int{4, 2, 0, 30, 2}},
- {"net.inet.ip.maxqueue", []_C_int{4, 2, 0, 11}},
- {"net.inet.ip.mforwarding", []_C_int{4, 2, 0, 31}},
-+ {"net.inet.ip.mrtmfc", []_C_int{4, 2, 0, 37}},
- {"net.inet.ip.mrtproto", []_C_int{4, 2, 0, 34}},
- {"net.inet.ip.mrtstats", []_C_int{4, 2, 0, 35}},
-+ {"net.inet.ip.mrtvif", []_C_int{4, 2, 0, 38}},
- {"net.inet.ip.mtu", []_C_int{4, 2, 0, 4}},
- {"net.inet.ip.mtudisc", []_C_int{4, 2, 0, 27}},
- {"net.inet.ip.mtudisctimeout", []_C_int{4, 2, 0, 28}},
-@@ -173,7 +180,6 @@ var sysctlMib = []mibentry{
- {"net.inet.ipip.stats", []_C_int{4, 2, 4, 2}},
- {"net.inet.mobileip.allow", []_C_int{4, 2, 55, 1}},
- {"net.inet.pfsync.stats", []_C_int{4, 2, 240, 1}},
-- {"net.inet.pim.stats", []_C_int{4, 2, 103, 1}},
- {"net.inet.tcp.ackonpush", []_C_int{4, 2, 6, 13}},
- {"net.inet.tcp.always_keepalive", []_C_int{4, 2, 6, 22}},
- {"net.inet.tcp.baddynamic", []_C_int{4, 2, 6, 6}},
-@@ -187,6 +193,7 @@ var sysctlMib = []mibentry{
- {"net.inet.tcp.reasslimit", []_C_int{4, 2, 6, 18}},
- {"net.inet.tcp.rfc1323", []_C_int{4, 2, 6, 1}},
- {"net.inet.tcp.rfc3390", []_C_int{4, 2, 6, 17}},
-+ {"net.inet.tcp.rootonly", []_C_int{4, 2, 6, 24}},
- {"net.inet.tcp.rstppslimit", []_C_int{4, 2, 6, 12}},
- {"net.inet.tcp.sack", []_C_int{4, 2, 6, 10}},
- {"net.inet.tcp.sackholelimit", []_C_int{4, 2, 6, 20}},
-@@ -194,9 +201,12 @@ var sysctlMib = []mibentry{
- {"net.inet.tcp.stats", []_C_int{4, 2, 6, 21}},
- {"net.inet.tcp.synbucketlimit", []_C_int{4, 2, 6, 16}},
- {"net.inet.tcp.syncachelimit", []_C_int{4, 2, 6, 15}},
-+ {"net.inet.tcp.synhashsize", []_C_int{4, 2, 6, 25}},
-+ {"net.inet.tcp.synuselimit", []_C_int{4, 2, 6, 23}},
- {"net.inet.udp.baddynamic", []_C_int{4, 2, 17, 2}},
- {"net.inet.udp.checksum", []_C_int{4, 2, 17, 1}},
- {"net.inet.udp.recvspace", []_C_int{4, 2, 17, 3}},
-+ {"net.inet.udp.rootonly", []_C_int{4, 2, 17, 6}},
- {"net.inet.udp.sendspace", []_C_int{4, 2, 17, 4}},
- {"net.inet.udp.stats", []_C_int{4, 2, 17, 5}},
- {"net.inet6.divert.recvspace", []_C_int{4, 24, 86, 1}},
-@@ -209,13 +219,8 @@ var sysctlMib = []mibentry{
- {"net.inet6.icmp6.nd6_delay", []_C_int{4, 24, 30, 8}},
- {"net.inet6.icmp6.nd6_maxnudhint", []_C_int{4, 24, 30, 15}},
- {"net.inet6.icmp6.nd6_mmaxtries", []_C_int{4, 24, 30, 10}},
-- {"net.inet6.icmp6.nd6_prune", []_C_int{4, 24, 30, 6}},
- {"net.inet6.icmp6.nd6_umaxtries", []_C_int{4, 24, 30, 9}},
-- {"net.inet6.icmp6.nd6_useloopback", []_C_int{4, 24, 30, 11}},
-- {"net.inet6.icmp6.nodeinfo", []_C_int{4, 24, 30, 13}},
-- {"net.inet6.icmp6.rediraccept", []_C_int{4, 24, 30, 2}},
- {"net.inet6.icmp6.redirtimeout", []_C_int{4, 24, 30, 3}},
-- {"net.inet6.ip6.accept_rtadv", []_C_int{4, 24, 17, 12}},
- {"net.inet6.ip6.auto_flowlabel", []_C_int{4, 24, 17, 17}},
- {"net.inet6.ip6.dad_count", []_C_int{4, 24, 17, 16}},
- {"net.inet6.ip6.dad_pending", []_C_int{4, 24, 17, 49}},
-@@ -228,20 +233,19 @@ var sysctlMib = []mibentry{
- {"net.inet6.ip6.maxdynroutes", []_C_int{4, 24, 17, 48}},
- {"net.inet6.ip6.maxfragpackets", []_C_int{4, 24, 17, 9}},
- {"net.inet6.ip6.maxfrags", []_C_int{4, 24, 17, 41}},
-- {"net.inet6.ip6.maxifdefrouters", []_C_int{4, 24, 17, 47}},
-- {"net.inet6.ip6.maxifprefixes", []_C_int{4, 24, 17, 46}},
- {"net.inet6.ip6.mforwarding", []_C_int{4, 24, 17, 42}},
-+ {"net.inet6.ip6.mrtmfc", []_C_int{4, 24, 17, 53}},
-+ {"net.inet6.ip6.mrtmif", []_C_int{4, 24, 17, 52}},
- {"net.inet6.ip6.mrtproto", []_C_int{4, 24, 17, 8}},
- {"net.inet6.ip6.mtudisctimeout", []_C_int{4, 24, 17, 50}},
- {"net.inet6.ip6.multicast_mtudisc", []_C_int{4, 24, 17, 44}},
- {"net.inet6.ip6.multipath", []_C_int{4, 24, 17, 43}},
- {"net.inet6.ip6.neighborgcthresh", []_C_int{4, 24, 17, 45}},
- {"net.inet6.ip6.redirect", []_C_int{4, 24, 17, 2}},
-- {"net.inet6.ip6.rr_prune", []_C_int{4, 24, 17, 22}},
-+ {"net.inet6.ip6.soiikey", []_C_int{4, 24, 17, 54}},
- {"net.inet6.ip6.sourcecheck", []_C_int{4, 24, 17, 10}},
- {"net.inet6.ip6.sourcecheck_logint", []_C_int{4, 24, 17, 11}},
- {"net.inet6.ip6.use_deprecated", []_C_int{4, 24, 17, 21}},
-- {"net.inet6.ip6.v6only", []_C_int{4, 24, 17, 24}},
- {"net.key.sadb_dump", []_C_int{4, 30, 1}},
- {"net.key.spd_dump", []_C_int{4, 30, 2}},
- {"net.mpls.ifq.congestion", []_C_int{4, 33, 3, 4}},
-@@ -256,6 +260,7 @@ var sysctlMib = []mibentry{
- {"net.pipex.enable", []_C_int{4, 35, 1}},
- {"vm.anonmin", []_C_int{2, 7}},
- {"vm.loadavg", []_C_int{2, 2}},
-+ {"vm.malloc_conf", []_C_int{2, 12}},
- {"vm.maxslp", []_C_int{2, 10}},
- {"vm.nkmempages", []_C_int{2, 6}},
- {"vm.psstrings", []_C_int{2, 3}},
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go
-index 2786773b..f3361453 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go
-@@ -1,5 +1,5 @@
--// mksysnum_darwin.pl /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/sys/syscall.h
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include/sys/syscall.h
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build 386,darwin
-
-@@ -121,13 +121,15 @@ const (
- SYS_CSOPS = 169
- SYS_CSOPS_AUDITTOKEN = 170
- SYS_WAITID = 173
-+ SYS_KDEBUG_TYPEFILTER = 177
-+ SYS_KDEBUG_TRACE_STRING = 178
- SYS_KDEBUG_TRACE64 = 179
- SYS_KDEBUG_TRACE = 180
- SYS_SETGID = 181
- SYS_SETEGID = 182
- SYS_SETEUID = 183
- SYS_SIGRETURN = 184
-- SYS_CHUD = 185
-+ SYS_THREAD_SELFCOUNTS = 186
- SYS_FDATASYNC = 187
- SYS_STAT = 188
- SYS_FSTAT = 189
-@@ -278,7 +280,6 @@ const (
- SYS_KQUEUE = 362
- SYS_KEVENT = 363
- SYS_LCHOWN = 364
-- SYS_STACK_SNAPSHOT = 365
- SYS_BSDTHREAD_REGISTER = 366
- SYS_WORKQ_OPEN = 367
- SYS_WORKQ_KERNRETURN = 368
-@@ -287,6 +288,8 @@ const (
- SYS___OLD_SEMWAIT_SIGNAL_NOCANCEL = 371
- SYS_THREAD_SELFID = 372
- SYS_LEDGER = 373
-+ SYS_KEVENT_QOS = 374
-+ SYS_KEVENT_ID = 375
- SYS___MAC_EXECVE = 380
- SYS___MAC_SYSCALL = 381
- SYS___MAC_GET_FILE = 382
-@@ -298,11 +301,8 @@ const (
- SYS___MAC_GET_FD = 388
- SYS___MAC_SET_FD = 389
- SYS___MAC_GET_PID = 390
-- SYS___MAC_GET_LCID = 391
-- SYS___MAC_GET_LCTX = 392
-- SYS___MAC_SET_LCTX = 393
-- SYS_SETLCID = 394
-- SYS_GETLCID = 395
-+ SYS_PSELECT = 394
-+ SYS_PSELECT_NOCANCEL = 395
- SYS_READ_NOCANCEL = 396
- SYS_WRITE_NOCANCEL = 397
- SYS_OPEN_NOCANCEL = 398
-@@ -351,6 +351,7 @@ const (
- SYS_GUARDED_CLOSE_NP = 442
- SYS_GUARDED_KQUEUE_NP = 443
- SYS_CHANGE_FDGUARD_NP = 444
-+ SYS_USRCTL = 445
- SYS_PROC_RLIMIT_CONTROL = 446
- SYS_CONNECTX = 447
- SYS_DISCONNECTX = 448
-@@ -367,6 +368,7 @@ const (
- SYS_COALITION_INFO = 459
- SYS_NECP_MATCH_POLICY = 460
- SYS_GETATTRLISTBULK = 461
-+ SYS_CLONEFILEAT = 462
- SYS_OPENAT = 463
- SYS_OPENAT_NOCANCEL = 464
- SYS_RENAMEAT = 465
-@@ -392,7 +394,43 @@ const (
- SYS_GUARDED_WRITE_NP = 485
- SYS_GUARDED_PWRITE_NP = 486
- SYS_GUARDED_WRITEV_NP = 487
-- SYS_RENAME_EXT = 488
-+ SYS_RENAMEATX_NP = 488
- SYS_MREMAP_ENCRYPTED = 489
-- SYS_MAXSYSCALL = 490
-+ SYS_NETAGENT_TRIGGER = 490
-+ SYS_STACK_SNAPSHOT_WITH_CONFIG = 491
-+ SYS_MICROSTACKSHOT = 492
-+ SYS_GRAB_PGO_DATA = 493
-+ SYS_PERSONA = 494
-+ SYS_WORK_INTERVAL_CTL = 499
-+ SYS_GETENTROPY = 500
-+ SYS_NECP_OPEN = 501
-+ SYS_NECP_CLIENT_ACTION = 502
-+ SYS___NEXUS_OPEN = 503
-+ SYS___NEXUS_REGISTER = 504
-+ SYS___NEXUS_DEREGISTER = 505
-+ SYS___NEXUS_CREATE = 506
-+ SYS___NEXUS_DESTROY = 507
-+ SYS___NEXUS_GET_OPT = 508
-+ SYS___NEXUS_SET_OPT = 509
-+ SYS___CHANNEL_OPEN = 510
-+ SYS___CHANNEL_GET_INFO = 511
-+ SYS___CHANNEL_SYNC = 512
-+ SYS___CHANNEL_GET_OPT = 513
-+ SYS___CHANNEL_SET_OPT = 514
-+ SYS_ULOCK_WAIT = 515
-+ SYS_ULOCK_WAKE = 516
-+ SYS_FCLONEFILEAT = 517
-+ SYS_FS_SNAPSHOT = 518
-+ SYS_TERMINATE_WITH_PAYLOAD = 520
-+ SYS_ABORT_WITH_PAYLOAD = 521
-+ SYS_NECP_SESSION_OPEN = 522
-+ SYS_NECP_SESSION_ACTION = 523
-+ SYS_SETATTRLISTAT = 524
-+ SYS_NET_QOS_GUIDELINE = 525
-+ SYS_FMOUNT = 526
-+ SYS_NTP_ADJTIME = 527
-+ SYS_NTP_GETTIME = 528
-+ SYS_OS_FAULT_WITH_PAYLOAD = 529
-+ SYS_MAXSYSCALL = 530
-+ SYS_INVALID = 63
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
-index 09de240c..654dd3da 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
-@@ -1,5 +1,5 @@
--// mksysnum_darwin.pl /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/sys/syscall.h
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/syscall.h
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build amd64,darwin
-
-@@ -121,13 +121,15 @@ const (
- SYS_CSOPS = 169
- SYS_CSOPS_AUDITTOKEN = 170
- SYS_WAITID = 173
-+ SYS_KDEBUG_TYPEFILTER = 177
-+ SYS_KDEBUG_TRACE_STRING = 178
- SYS_KDEBUG_TRACE64 = 179
- SYS_KDEBUG_TRACE = 180
- SYS_SETGID = 181
- SYS_SETEGID = 182
- SYS_SETEUID = 183
- SYS_SIGRETURN = 184
-- SYS_CHUD = 185
-+ SYS_THREAD_SELFCOUNTS = 186
- SYS_FDATASYNC = 187
- SYS_STAT = 188
- SYS_FSTAT = 189
-@@ -278,7 +280,6 @@ const (
- SYS_KQUEUE = 362
- SYS_KEVENT = 363
- SYS_LCHOWN = 364
-- SYS_STACK_SNAPSHOT = 365
- SYS_BSDTHREAD_REGISTER = 366
- SYS_WORKQ_OPEN = 367
- SYS_WORKQ_KERNRETURN = 368
-@@ -287,6 +288,8 @@ const (
- SYS___OLD_SEMWAIT_SIGNAL_NOCANCEL = 371
- SYS_THREAD_SELFID = 372
- SYS_LEDGER = 373
-+ SYS_KEVENT_QOS = 374
-+ SYS_KEVENT_ID = 375
- SYS___MAC_EXECVE = 380
- SYS___MAC_SYSCALL = 381
- SYS___MAC_GET_FILE = 382
-@@ -298,11 +301,8 @@ const (
- SYS___MAC_GET_FD = 388
- SYS___MAC_SET_FD = 389
- SYS___MAC_GET_PID = 390
-- SYS___MAC_GET_LCID = 391
-- SYS___MAC_GET_LCTX = 392
-- SYS___MAC_SET_LCTX = 393
-- SYS_SETLCID = 394
-- SYS_GETLCID = 395
-+ SYS_PSELECT = 394
-+ SYS_PSELECT_NOCANCEL = 395
- SYS_READ_NOCANCEL = 396
- SYS_WRITE_NOCANCEL = 397
- SYS_OPEN_NOCANCEL = 398
-@@ -351,6 +351,7 @@ const (
- SYS_GUARDED_CLOSE_NP = 442
- SYS_GUARDED_KQUEUE_NP = 443
- SYS_CHANGE_FDGUARD_NP = 444
-+ SYS_USRCTL = 445
- SYS_PROC_RLIMIT_CONTROL = 446
- SYS_CONNECTX = 447
- SYS_DISCONNECTX = 448
-@@ -367,6 +368,7 @@ const (
- SYS_COALITION_INFO = 459
- SYS_NECP_MATCH_POLICY = 460
- SYS_GETATTRLISTBULK = 461
-+ SYS_CLONEFILEAT = 462
- SYS_OPENAT = 463
- SYS_OPENAT_NOCANCEL = 464
- SYS_RENAMEAT = 465
-@@ -392,7 +394,45 @@ const (
- SYS_GUARDED_WRITE_NP = 485
- SYS_GUARDED_PWRITE_NP = 486
- SYS_GUARDED_WRITEV_NP = 487
-- SYS_RENAME_EXT = 488
-+ SYS_RENAMEATX_NP = 488
- SYS_MREMAP_ENCRYPTED = 489
-- SYS_MAXSYSCALL = 490
-+ SYS_NETAGENT_TRIGGER = 490
-+ SYS_STACK_SNAPSHOT_WITH_CONFIG = 491
-+ SYS_MICROSTACKSHOT = 492
-+ SYS_GRAB_PGO_DATA = 493
-+ SYS_PERSONA = 494
-+ SYS_WORK_INTERVAL_CTL = 499
-+ SYS_GETENTROPY = 500
-+ SYS_NECP_OPEN = 501
-+ SYS_NECP_CLIENT_ACTION = 502
-+ SYS___NEXUS_OPEN = 503
-+ SYS___NEXUS_REGISTER = 504
-+ SYS___NEXUS_DEREGISTER = 505
-+ SYS___NEXUS_CREATE = 506
-+ SYS___NEXUS_DESTROY = 507
-+ SYS___NEXUS_GET_OPT = 508
-+ SYS___NEXUS_SET_OPT = 509
-+ SYS___CHANNEL_OPEN = 510
-+ SYS___CHANNEL_GET_INFO = 511
-+ SYS___CHANNEL_SYNC = 512
-+ SYS___CHANNEL_GET_OPT = 513
-+ SYS___CHANNEL_SET_OPT = 514
-+ SYS_ULOCK_WAIT = 515
-+ SYS_ULOCK_WAKE = 516
-+ SYS_FCLONEFILEAT = 517
-+ SYS_FS_SNAPSHOT = 518
-+ SYS_TERMINATE_WITH_PAYLOAD = 520
-+ SYS_ABORT_WITH_PAYLOAD = 521
-+ SYS_NECP_SESSION_OPEN = 522
-+ SYS_NECP_SESSION_ACTION = 523
-+ SYS_SETATTRLISTAT = 524
-+ SYS_NET_QOS_GUIDELINE = 525
-+ SYS_FMOUNT = 526
-+ SYS_NTP_ADJTIME = 527
-+ SYS_NTP_GETTIME = 528
-+ SYS_OS_FAULT_WITH_PAYLOAD = 529
-+ SYS_KQUEUE_WORKLOOP_CTL = 530
-+ SYS___MACH_BRIDGE_REMOTE_TIME = 531
-+ SYS_MAXSYSCALL = 532
-+ SYS_INVALID = 63
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go
-index 41cb6ed3..103a72ed 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go
-@@ -1,4 +1,4 @@
--// mksysnum_darwin.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.2.sdk/usr/include/sys/syscall.h
-+// go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.1.sdk/usr/include/sys/syscall.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build arm,darwin
-@@ -129,6 +129,7 @@ const (
- SYS_SETEGID = 182
- SYS_SETEUID = 183
- SYS_SIGRETURN = 184
-+ SYS_THREAD_SELFCOUNTS = 186
- SYS_FDATASYNC = 187
- SYS_STAT = 188
- SYS_FSTAT = 189
-@@ -288,6 +289,7 @@ const (
- SYS_THREAD_SELFID = 372
- SYS_LEDGER = 373
- SYS_KEVENT_QOS = 374
-+ SYS_KEVENT_ID = 375
- SYS___MAC_EXECVE = 380
- SYS___MAC_SYSCALL = 381
- SYS___MAC_GET_FILE = 382
-@@ -421,6 +423,14 @@ const (
- SYS_FS_SNAPSHOT = 518
- SYS_TERMINATE_WITH_PAYLOAD = 520
- SYS_ABORT_WITH_PAYLOAD = 521
-- SYS_MAXSYSCALL = 522
-+ SYS_NECP_SESSION_OPEN = 522
-+ SYS_NECP_SESSION_ACTION = 523
-+ SYS_SETATTRLISTAT = 524
-+ SYS_NET_QOS_GUIDELINE = 525
-+ SYS_FMOUNT = 526
-+ SYS_NTP_ADJTIME = 527
-+ SYS_NTP_GETTIME = 528
-+ SYS_OS_FAULT_WITH_PAYLOAD = 529
-+ SYS_MAXSYSCALL = 530
- SYS_INVALID = 63
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
-index 075816c3..7ab2130b 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
-@@ -1,4 +1,4 @@
--// mksysnum_darwin.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.2.sdk/usr/include/sys/syscall.h
-+// go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.1.sdk/usr/include/sys/syscall.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build arm64,darwin
-@@ -129,6 +129,7 @@ const (
- SYS_SETEGID = 182
- SYS_SETEUID = 183
- SYS_SIGRETURN = 184
-+ SYS_THREAD_SELFCOUNTS = 186
- SYS_FDATASYNC = 187
- SYS_STAT = 188
- SYS_FSTAT = 189
-@@ -288,6 +289,7 @@ const (
- SYS_THREAD_SELFID = 372
- SYS_LEDGER = 373
- SYS_KEVENT_QOS = 374
-+ SYS_KEVENT_ID = 375
- SYS___MAC_EXECVE = 380
- SYS___MAC_SYSCALL = 381
- SYS___MAC_GET_FILE = 382
-@@ -421,6 +423,14 @@ const (
- SYS_FS_SNAPSHOT = 518
- SYS_TERMINATE_WITH_PAYLOAD = 520
- SYS_ABORT_WITH_PAYLOAD = 521
-- SYS_MAXSYSCALL = 522
-+ SYS_NECP_SESSION_OPEN = 522
-+ SYS_NECP_SESSION_ACTION = 523
-+ SYS_SETATTRLISTAT = 524
-+ SYS_NET_QOS_GUIDELINE = 525
-+ SYS_FMOUNT = 526
-+ SYS_NTP_ADJTIME = 527
-+ SYS_NTP_GETTIME = 528
-+ SYS_OS_FAULT_WITH_PAYLOAD = 529
-+ SYS_MAXSYSCALL = 530
- SYS_INVALID = 63
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
-index b2c9ef81..464c9a98 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
-@@ -1,4 +1,4 @@
--// mksysnum_dragonfly.pl
-+// go run mksysnum.go https://gitweb.dragonflybsd.org/dragonfly.git/blob_plain/HEAD:/sys/kern/syscalls.master
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build amd64,dragonfly
-@@ -13,7 +13,7 @@ const (
- SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); }
- SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
- SYS_CLOSE = 6 // { int close(int fd); }
-- SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, \
-+ SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); } wait4 wait_args int
- SYS_LINK = 9 // { int link(char *path, char *link); }
- SYS_UNLINK = 10 // { int unlink(char *path); }
- SYS_CHDIR = 12 // { int chdir(char *path); }
-@@ -22,17 +22,17 @@ const (
- SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
- SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
- SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int
-- SYS_GETFSSTAT = 18 // { int getfsstat(struct statfs *buf, long bufsize, \
-+ SYS_GETFSSTAT = 18 // { int getfsstat(struct statfs *buf, long bufsize, int flags); }
- SYS_GETPID = 20 // { pid_t getpid(void); }
-- SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, \
-+ SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); }
- SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
- SYS_SETUID = 23 // { int setuid(uid_t uid); }
- SYS_GETUID = 24 // { uid_t getuid(void); }
- SYS_GETEUID = 25 // { uid_t geteuid(void); }
-- SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, \
-+ SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); }
- SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); }
- SYS_SENDMSG = 28 // { int sendmsg(int s, caddr_t msg, int flags); }
-- SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, \
-+ SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, caddr_t from, int *fromlenaddr); }
- SYS_ACCEPT = 30 // { int accept(int s, caddr_t name, int *anamelen); }
- SYS_GETPEERNAME = 31 // { int getpeername(int fdes, caddr_t asa, int *alen); }
- SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, caddr_t asa, int *alen); }
-@@ -45,8 +45,8 @@ const (
- SYS_DUP = 41 // { int dup(int fd); }
- SYS_PIPE = 42 // { int pipe(void); }
- SYS_GETEGID = 43 // { gid_t getegid(void); }
-- SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, \
-- SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, \
-+ SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); }
-+ SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); }
- SYS_GETGID = 47 // { gid_t getgid(void); }
- SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int namelen); }
- SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
-@@ -67,32 +67,32 @@ const (
- SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
- SYS_MPROTECT = 74 // { int mprotect(void *addr, size_t len, int prot); }
- SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); }
-- SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, \
-+ SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); }
- SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); }
- SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); }
- SYS_GETPGRP = 81 // { int getpgrp(void); }
- SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
-- SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, \
-+ SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); }
- SYS_SWAPON = 85 // { int swapon(char *name); }
- SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); }
- SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
- SYS_DUP2 = 90 // { int dup2(int from, int to); }
- SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
-- SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, \
-+ SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
- SYS_FSYNC = 95 // { int fsync(int fd); }
- SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); }
- SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); }
- SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); }
- SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
- SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); }
-- SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, \
-+ SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); }
- SYS_LISTEN = 106 // { int listen(int s, int backlog); }
-- SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, \
-+ SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); }
- SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); }
-- SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, \
-+ SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); }
- SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); }
-- SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, \
-- SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, \
-+ SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); }
-+ SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); }
- SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
- SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
- SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
-@@ -100,15 +100,15 @@ const (
- SYS_RENAME = 128 // { int rename(char *from, char *to); }
- SYS_FLOCK = 131 // { int flock(int fd, int how); }
- SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
-- SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, \
-+ SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); }
- SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
-- SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, \
-+ SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); }
- SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
- SYS_RMDIR = 137 // { int rmdir(char *path); }
- SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); }
-- SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, \
-+ SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); }
- SYS_SETSID = 147 // { int setsid(void); }
-- SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, \
-+ SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); }
- SYS_STATFS = 157 // { int statfs(char *path, struct statfs *buf); }
- SYS_FSTATFS = 158 // { int fstatfs(int fd, struct statfs *buf); }
- SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); }
-@@ -116,53 +116,53 @@ const (
- SYS_SETDOMAINNAME = 163 // { int setdomainname(char *domainname, int len); }
- SYS_UNAME = 164 // { int uname(struct utsname *name); }
- SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
-- SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, \
-- SYS_EXTPREAD = 173 // { ssize_t extpread(int fd, void *buf, \
-- SYS_EXTPWRITE = 174 // { ssize_t extpwrite(int fd, const void *buf, \
-+ SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); }
-+ SYS_EXTPREAD = 173 // { ssize_t extpread(int fd, void *buf, size_t nbyte, int flags, off_t offset); }
-+ SYS_EXTPWRITE = 174 // { ssize_t extpwrite(int fd, const void *buf, size_t nbyte, int flags, off_t offset); }
- SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
- SYS_SETGID = 181 // { int setgid(gid_t gid); }
- SYS_SETEGID = 182 // { int setegid(gid_t egid); }
- SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
- SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
- SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
-- SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, \
-- SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, \
-- SYS_MMAP = 197 // { caddr_t mmap(caddr_t addr, size_t len, int prot, \
-+ SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int
-+ SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int
-+ SYS_MMAP = 197 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, int pad, off_t pos); }
- // SYS_NOSYS = 198; // { int nosys(void); } __syscall __syscall_args int
-- SYS_LSEEK = 199 // { off_t lseek(int fd, int pad, off_t offset, \
-+ SYS_LSEEK = 199 // { off_t lseek(int fd, int pad, off_t offset, int whence); }
- SYS_TRUNCATE = 200 // { int truncate(char *path, int pad, off_t length); }
- SYS_FTRUNCATE = 201 // { int ftruncate(int fd, int pad, off_t length); }
-- SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, \
-+ SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int
- SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
- SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
- SYS_UNDELETE = 205 // { int undelete(char *path); }
- SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
- SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
-- SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, \
-- SYS___SEMCTL = 220 // { int __semctl(int semid, int semnum, int cmd, \
-+ SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, int timeout); }
-+ SYS___SEMCTL = 220 // { int __semctl(int semid, int semnum, int cmd, union semun *arg); }
- SYS_SEMGET = 221 // { int semget(key_t key, int nsems, int semflg); }
-- SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, \
-- SYS_MSGCTL = 224 // { int msgctl(int msqid, int cmd, \
-+ SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, u_int nsops); }
-+ SYS_MSGCTL = 224 // { int msgctl(int msqid, int cmd, struct msqid_ds *buf); }
- SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); }
-- SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, \
-- SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, \
-- SYS_SHMAT = 228 // { caddr_t shmat(int shmid, const void *shmaddr, \
-- SYS_SHMCTL = 229 // { int shmctl(int shmid, int cmd, \
-+ SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
-+ SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
-+ SYS_SHMAT = 228 // { caddr_t shmat(int shmid, const void *shmaddr, int shmflg); }
-+ SYS_SHMCTL = 229 // { int shmctl(int shmid, int cmd, struct shmid_ds *buf); }
- SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); }
- SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); }
-- SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, \
-- SYS_CLOCK_SETTIME = 233 // { int clock_settime(clockid_t clock_id, \
-- SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, \
-- SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, \
-+ SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); }
-+ SYS_CLOCK_SETTIME = 233 // { int clock_settime(clockid_t clock_id, const struct timespec *tp); }
-+ SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); }
-+ SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
- SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); }
- SYS_RFORK = 251 // { int rfork(int flags); }
-- SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, \
-+ SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); }
- SYS_ISSETUGID = 253 // { int issetugid(void); }
- SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
- SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
- SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); }
-- SYS_EXTPREADV = 289 // { ssize_t extpreadv(int fd, struct iovec *iovp, \
-- SYS_EXTPWRITEV = 290 // { ssize_t extpwritev(int fd, struct iovec *iovp,\
-+ SYS_EXTPREADV = 289 // { ssize_t extpreadv(int fd, struct iovec *iovp, u_int iovcnt, int flags, off_t offset); }
-+ SYS_EXTPWRITEV = 290 // { ssize_t extpwritev(int fd, struct iovec *iovp,u_int iovcnt, int flags, off_t offset); }
- SYS_FHSTATFS = 297 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); }
- SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); }
- SYS_MODNEXT = 300 // { int modnext(int modid); }
-@@ -200,34 +200,34 @@ const (
- SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
- SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, void *data); }
- SYS_JAIL = 338 // { int jail(struct jail *jail); }
-- SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, const sigset_t *set, \
-+ SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, const sigset_t *set, sigset_t *oset); }
- SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
-- SYS_SIGACTION = 342 // { int sigaction(int sig, const struct sigaction *act, \
-+ SYS_SIGACTION = 342 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); }
- SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
- SYS_SIGRETURN = 344 // { int sigreturn(ucontext_t *sigcntxp); }
-- SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set,\
-- SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set,\
-- SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, \
-- SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, \
-- SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, acl_type_t type, \
-- SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, acl_type_t type, \
-- SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, \
-+ SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set,siginfo_t *info, const struct timespec *timeout); }
-+ SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set,siginfo_t *info); }
-+ SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, acl_type_t type); }
- SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, acl_type_t type); }
-- SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, \
-- SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, \
-- SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, \
-- SYS_EXTATTR_SET_FILE = 356 // { int extattr_set_file(const char *path, \
-- SYS_EXTATTR_GET_FILE = 357 // { int extattr_get_file(const char *path, \
-- SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, \
-+ SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); }
-+ SYS_EXTATTR_SET_FILE = 356 // { int extattr_set_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_GET_FILE = 357 // { int extattr_get_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); }
- SYS_AIO_WAITCOMPLETE = 359 // { int aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); }
- SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
- SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
- SYS_KQUEUE = 362 // { int kqueue(void); }
-- SYS_KEVENT = 363 // { int kevent(int fd, \
-+ SYS_KEVENT = 363 // { int kevent(int fd, const struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
- SYS_KENV = 390 // { int kenv(int what, const char *name, char *value, int len); }
- SYS_LCHFLAGS = 391 // { int lchflags(char *path, int flags); }
- SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); }
-- SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, \
-+ SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
- SYS_VARSYM_SET = 450 // { int varsym_set(int level, const char *name, const char *data); }
- SYS_VARSYM_GET = 451 // { int varsym_get(int mask, const char *wild, char *buf, int bufsize); }
- SYS_VARSYM_LIST = 452 // { int varsym_list(int level, char *buf, int maxsize, int *marker); }
-@@ -245,58 +245,58 @@ const (
- SYS_FSTAT = 476 // { int fstat(int fd, struct stat *sb); }
- SYS_LSTAT = 477 // { int lstat(const char *path, struct stat *ub); }
- SYS_FHSTAT = 478 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); }
-- SYS_GETDIRENTRIES = 479 // { int getdirentries(int fd, char *buf, u_int count, \
-+ SYS_GETDIRENTRIES = 479 // { int getdirentries(int fd, char *buf, u_int count, long *basep); }
- SYS_GETDENTS = 480 // { int getdents(int fd, char *buf, size_t count); }
-- SYS_USCHED_SET = 481 // { int usched_set(pid_t pid, int cmd, void *data, \
-+ SYS_USCHED_SET = 481 // { int usched_set(pid_t pid, int cmd, void *data, int bytes); }
- SYS_EXTACCEPT = 482 // { int extaccept(int s, int flags, caddr_t name, int *anamelen); }
- SYS_EXTCONNECT = 483 // { int extconnect(int s, int flags, caddr_t name, int namelen); }
- SYS_MCONTROL = 485 // { int mcontrol(void *addr, size_t len, int behav, off_t value); }
- SYS_VMSPACE_CREATE = 486 // { int vmspace_create(void *id, int type, void *data); }
- SYS_VMSPACE_DESTROY = 487 // { int vmspace_destroy(void *id); }
-- SYS_VMSPACE_CTL = 488 // { int vmspace_ctl(void *id, int cmd, \
-- SYS_VMSPACE_MMAP = 489 // { int vmspace_mmap(void *id, void *addr, size_t len, \
-- SYS_VMSPACE_MUNMAP = 490 // { int vmspace_munmap(void *id, void *addr, \
-- SYS_VMSPACE_MCONTROL = 491 // { int vmspace_mcontrol(void *id, void *addr, \
-- SYS_VMSPACE_PREAD = 492 // { ssize_t vmspace_pread(void *id, void *buf, \
-- SYS_VMSPACE_PWRITE = 493 // { ssize_t vmspace_pwrite(void *id, const void *buf, \
-+ SYS_VMSPACE_CTL = 488 // { int vmspace_ctl(void *id, int cmd, struct trapframe *tframe, struct vextframe *vframe); }
-+ SYS_VMSPACE_MMAP = 489 // { int vmspace_mmap(void *id, void *addr, size_t len, int prot, int flags, int fd, off_t offset); }
-+ SYS_VMSPACE_MUNMAP = 490 // { int vmspace_munmap(void *id, void *addr, size_t len); }
-+ SYS_VMSPACE_MCONTROL = 491 // { int vmspace_mcontrol(void *id, void *addr, size_t len, int behav, off_t value); }
-+ SYS_VMSPACE_PREAD = 492 // { ssize_t vmspace_pread(void *id, void *buf, size_t nbyte, int flags, off_t offset); }
-+ SYS_VMSPACE_PWRITE = 493 // { ssize_t vmspace_pwrite(void *id, const void *buf, size_t nbyte, int flags, off_t offset); }
- SYS_EXTEXIT = 494 // { void extexit(int how, int status, void *addr); }
- SYS_LWP_CREATE = 495 // { int lwp_create(struct lwp_params *params); }
- SYS_LWP_GETTID = 496 // { lwpid_t lwp_gettid(void); }
- SYS_LWP_KILL = 497 // { int lwp_kill(pid_t pid, lwpid_t tid, int signum); }
- SYS_LWP_RTPRIO = 498 // { int lwp_rtprio(int function, pid_t pid, lwpid_t tid, struct rtprio *rtp); }
-- SYS_PSELECT = 499 // { int pselect(int nd, fd_set *in, fd_set *ou, \
-+ SYS_PSELECT = 499 // { int pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *sigmask); }
- SYS_STATVFS = 500 // { int statvfs(const char *path, struct statvfs *buf); }
- SYS_FSTATVFS = 501 // { int fstatvfs(int fd, struct statvfs *buf); }
- SYS_FHSTATVFS = 502 // { int fhstatvfs(const struct fhandle *u_fhp, struct statvfs *buf); }
-- SYS_GETVFSSTAT = 503 // { int getvfsstat(struct statfs *buf, \
-+ SYS_GETVFSSTAT = 503 // { int getvfsstat(struct statfs *buf, struct statvfs *vbuf, long vbufsize, int flags); }
- SYS_OPENAT = 504 // { int openat(int fd, char *path, int flags, int mode); }
-- SYS_FSTATAT = 505 // { int fstatat(int fd, char *path, \
-- SYS_FCHMODAT = 506 // { int fchmodat(int fd, char *path, int mode, \
-- SYS_FCHOWNAT = 507 // { int fchownat(int fd, char *path, int uid, int gid, \
-+ SYS_FSTATAT = 505 // { int fstatat(int fd, char *path, struct stat *sb, int flags); }
-+ SYS_FCHMODAT = 506 // { int fchmodat(int fd, char *path, int mode, int flags); }
-+ SYS_FCHOWNAT = 507 // { int fchownat(int fd, char *path, int uid, int gid, int flags); }
- SYS_UNLINKAT = 508 // { int unlinkat(int fd, char *path, int flags); }
-- SYS_FACCESSAT = 509 // { int faccessat(int fd, char *path, int amode, \
-- SYS_MQ_OPEN = 510 // { mqd_t mq_open(const char * name, int oflag, \
-+ SYS_FACCESSAT = 509 // { int faccessat(int fd, char *path, int amode, int flags); }
-+ SYS_MQ_OPEN = 510 // { mqd_t mq_open(const char * name, int oflag, mode_t mode, struct mq_attr *attr); }
- SYS_MQ_CLOSE = 511 // { int mq_close(mqd_t mqdes); }
- SYS_MQ_UNLINK = 512 // { int mq_unlink(const char *name); }
-- SYS_MQ_GETATTR = 513 // { int mq_getattr(mqd_t mqdes, \
-- SYS_MQ_SETATTR = 514 // { int mq_setattr(mqd_t mqdes, \
-- SYS_MQ_NOTIFY = 515 // { int mq_notify(mqd_t mqdes, \
-- SYS_MQ_SEND = 516 // { int mq_send(mqd_t mqdes, const char *msg_ptr, \
-- SYS_MQ_RECEIVE = 517 // { ssize_t mq_receive(mqd_t mqdes, char *msg_ptr, \
-- SYS_MQ_TIMEDSEND = 518 // { int mq_timedsend(mqd_t mqdes, \
-- SYS_MQ_TIMEDRECEIVE = 519 // { ssize_t mq_timedreceive(mqd_t mqdes, \
-+ SYS_MQ_GETATTR = 513 // { int mq_getattr(mqd_t mqdes, struct mq_attr *mqstat); }
-+ SYS_MQ_SETATTR = 514 // { int mq_setattr(mqd_t mqdes, const struct mq_attr *mqstat, struct mq_attr *omqstat); }
-+ SYS_MQ_NOTIFY = 515 // { int mq_notify(mqd_t mqdes, const struct sigevent *notification); }
-+ SYS_MQ_SEND = 516 // { int mq_send(mqd_t mqdes, const char *msg_ptr, size_t msg_len, unsigned msg_prio); }
-+ SYS_MQ_RECEIVE = 517 // { ssize_t mq_receive(mqd_t mqdes, char *msg_ptr, size_t msg_len, unsigned *msg_prio); }
-+ SYS_MQ_TIMEDSEND = 518 // { int mq_timedsend(mqd_t mqdes, const char *msg_ptr, size_t msg_len, unsigned msg_prio, const struct timespec *abs_timeout); }
-+ SYS_MQ_TIMEDRECEIVE = 519 // { ssize_t mq_timedreceive(mqd_t mqdes, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); }
- SYS_IOPRIO_SET = 520 // { int ioprio_set(int which, int who, int prio); }
- SYS_IOPRIO_GET = 521 // { int ioprio_get(int which, int who); }
- SYS_CHROOT_KERNEL = 522 // { int chroot_kernel(char *path); }
-- SYS_RENAMEAT = 523 // { int renameat(int oldfd, char *old, int newfd, \
-+ SYS_RENAMEAT = 523 // { int renameat(int oldfd, char *old, int newfd, char *new); }
- SYS_MKDIRAT = 524 // { int mkdirat(int fd, char *path, mode_t mode); }
- SYS_MKFIFOAT = 525 // { int mkfifoat(int fd, char *path, mode_t mode); }
-- SYS_MKNODAT = 526 // { int mknodat(int fd, char *path, mode_t mode, \
-- SYS_READLINKAT = 527 // { int readlinkat(int fd, char *path, char *buf, \
-+ SYS_MKNODAT = 526 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); }
-+ SYS_READLINKAT = 527 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); }
- SYS_SYMLINKAT = 528 // { int symlinkat(char *path1, int fd, char *path2); }
- SYS_SWAPOFF = 529 // { int swapoff(char *name); }
-- SYS_VQUOTACTL = 530 // { int vquotactl(const char *path, \
-- SYS_LINKAT = 531 // { int linkat(int fd1, char *path1, int fd2, \
-+ SYS_VQUOTACTL = 530 // { int vquotactl(const char *path, struct plistref *pref); }
-+ SYS_LINKAT = 531 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flags); }
- SYS_EACCESS = 532 // { int eaccess(char *path, int flags); }
- SYS_LPATHCONF = 533 // { int lpathconf(char *path, int name); }
- SYS_VMM_GUEST_CTL = 534 // { int vmm_guest_ctl(int op, struct vmm_guest_options *options); }
-@@ -308,7 +308,7 @@ const (
- SYS_FUTIMENS = 540 // { int futimens(int fd, const struct timespec *ts); }
- SYS_ACCEPT4 = 541 // { int accept4(int s, caddr_t name, int *anamelen, int flags); }
- SYS_LWP_SETNAME = 542 // { int lwp_setname(lwpid_t tid, const char *name); }
-- SYS_PPOLL = 543 // { int ppoll(struct pollfd *fds, u_int nfds, \
-+ SYS_PPOLL = 543 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *sigmask); }
- SYS_LWP_SETAFFINITY = 544 // { int lwp_setaffinity(pid_t pid, lwpid_t tid, const cpumask_t *mask); }
- SYS_LWP_GETAFFINITY = 545 // { int lwp_getaffinity(pid_t pid, lwpid_t tid, cpumask_t *mask); }
- SYS_LWP_CREATE2 = 546 // { int lwp_create2(struct lwp_params *params, const cpumask_t *mask); }
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go
-index b64a8122..9474974b 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go
-@@ -1,4 +1,4 @@
--// mksysnum_freebsd.pl
-+// go run mksysnum.go https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build 386,freebsd
-@@ -7,347 +7,390 @@ package unix
-
- const (
- // SYS_NOSYS = 0; // { int nosys(void); } syscall nosys_args int
-- SYS_EXIT = 1 // { void sys_exit(int rval); } exit \
-- SYS_FORK = 2 // { int fork(void); }
-- SYS_READ = 3 // { ssize_t read(int fd, void *buf, \
-- SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, \
-- SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
-- SYS_CLOSE = 6 // { int close(int fd); }
-- SYS_WAIT4 = 7 // { int wait4(int pid, int *status, \
-- SYS_LINK = 9 // { int link(char *path, char *link); }
-- SYS_UNLINK = 10 // { int unlink(char *path); }
-- SYS_CHDIR = 12 // { int chdir(char *path); }
-- SYS_FCHDIR = 13 // { int fchdir(int fd); }
-- SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
-- SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
-- SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
-- SYS_OBREAK = 17 // { int obreak(char *nsize); } break \
-- SYS_GETPID = 20 // { pid_t getpid(void); }
-- SYS_MOUNT = 21 // { int mount(char *type, char *path, \
-- SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
-- SYS_SETUID = 23 // { int setuid(uid_t uid); }
-- SYS_GETUID = 24 // { uid_t getuid(void); }
-- SYS_GETEUID = 25 // { uid_t geteuid(void); }
-- SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, \
-- SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, \
-- SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, \
-- SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, \
-- SYS_ACCEPT = 30 // { int accept(int s, \
-- SYS_GETPEERNAME = 31 // { int getpeername(int fdes, \
-- SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, \
-- SYS_ACCESS = 33 // { int access(char *path, int amode); }
-- SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
-- SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
-- SYS_SYNC = 36 // { int sync(void); }
-- SYS_KILL = 37 // { int kill(int pid, int signum); }
-- SYS_GETPPID = 39 // { pid_t getppid(void); }
-- SYS_DUP = 41 // { int dup(u_int fd); }
-- SYS_PIPE = 42 // { int pipe(void); }
-- SYS_GETEGID = 43 // { gid_t getegid(void); }
-- SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, \
-- SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, \
-- SYS_GETGID = 47 // { gid_t getgid(void); }
-- SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int \
-- SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
-- SYS_ACCT = 51 // { int acct(char *path); }
-- SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, \
-- SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, \
-- SYS_REBOOT = 55 // { int reboot(int opt); }
-- SYS_REVOKE = 56 // { int revoke(char *path); }
-- SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
-- SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, \
-- SYS_EXECVE = 59 // { int execve(char *fname, char **argv, \
-- SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args \
-- SYS_CHROOT = 61 // { int chroot(char *path); }
-- SYS_MSYNC = 65 // { int msync(void *addr, size_t len, \
-- SYS_VFORK = 66 // { int vfork(void); }
-- SYS_SBRK = 69 // { int sbrk(int incr); }
-- SYS_SSTK = 70 // { int sstk(int incr); }
-- SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise \
-- SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
-- SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, \
-- SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, \
-- SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, \
-- SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, \
-- SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, \
-- SYS_GETPGRP = 81 // { int getpgrp(void); }
-- SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
-- SYS_SETITIMER = 83 // { int setitimer(u_int which, struct \
-- SYS_SWAPON = 85 // { int swapon(char *name); }
-- SYS_GETITIMER = 86 // { int getitimer(u_int which, \
-- SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
-- SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
-- SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
-- SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, \
-- SYS_FSYNC = 95 // { int fsync(int fd); }
-- SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, \
-- SYS_SOCKET = 97 // { int socket(int domain, int type, \
-- SYS_CONNECT = 98 // { int connect(int s, caddr_t name, \
-- SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
-- SYS_BIND = 104 // { int bind(int s, caddr_t name, \
-- SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, \
-- SYS_LISTEN = 106 // { int listen(int s, int backlog); }
-- SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, \
-- SYS_GETRUSAGE = 117 // { int getrusage(int who, \
-- SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, \
-- SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, \
-- SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, \
-- SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, \
-- SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
-- SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
-- SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
-- SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
-- SYS_RENAME = 128 // { int rename(char *from, char *to); }
-- SYS_FLOCK = 131 // { int flock(int fd, int how); }
-- SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
-- SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, \
-- SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
-- SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, \
-- SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
-- SYS_RMDIR = 137 // { int rmdir(char *path); }
-- SYS_UTIMES = 138 // { int utimes(char *path, \
-- SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, \
-- SYS_SETSID = 147 // { int setsid(void); }
-- SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, \
-- SYS_LGETFH = 160 // { int lgetfh(char *fname, \
-- SYS_GETFH = 161 // { int getfh(char *fname, \
-- SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
-- SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, \
-- SYS_FREEBSD6_PREAD = 173 // { ssize_t freebsd6_pread(int fd, void *buf, \
-- SYS_FREEBSD6_PWRITE = 174 // { ssize_t freebsd6_pwrite(int fd, \
-- SYS_SETFIB = 175 // { int setfib(int fibnum); }
-- SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
-- SYS_SETGID = 181 // { int setgid(gid_t gid); }
-- SYS_SETEGID = 182 // { int setegid(gid_t egid); }
-- SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
-- SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
-- SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
-- SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
-- SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
-- SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
-- SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, \
-- SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, \
-- SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, \
-- SYS_FREEBSD6_MMAP = 197 // { caddr_t freebsd6_mmap(caddr_t addr, \
-- SYS_FREEBSD6_LSEEK = 199 // { off_t freebsd6_lseek(int fd, int pad, \
-- SYS_FREEBSD6_TRUNCATE = 200 // { int freebsd6_truncate(char *path, int pad, \
-- SYS_FREEBSD6_FTRUNCATE = 201 // { int freebsd6_ftruncate(int fd, int pad, \
-- SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, \
-- SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
-- SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
-- SYS_UNDELETE = 205 // { int undelete(char *path); }
-- SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
-- SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
-- SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, \
-- SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, \
-- SYS_CLOCK_SETTIME = 233 // { int clock_settime( \
-- SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, \
-- SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, \
-- SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
-- SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, \
-- SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct \
-- SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
-- SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, \
-- SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
-- SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( \
-- SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( \
-- SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,\
-- SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
-- SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, \
-- SYS_RFORK = 251 // { int rfork(int flags); }
-- SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, \
-- SYS_ISSETUGID = 253 // { int issetugid(void); }
-- SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
-- SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, \
-- SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
-- SYS_LUTIMES = 276 // { int lutimes(char *path, \
-- SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
-- SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
-- SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
-- SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, \
-- SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, \
-- SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, \
-- SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, \
-- SYS_MODNEXT = 300 // { int modnext(int modid); }
-- SYS_MODSTAT = 301 // { int modstat(int modid, \
-- SYS_MODFNEXT = 302 // { int modfnext(int modid); }
-- SYS_MODFIND = 303 // { int modfind(const char *name); }
-- SYS_KLDLOAD = 304 // { int kldload(const char *file); }
-- SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
-- SYS_KLDFIND = 306 // { int kldfind(const char *file); }
-- SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
-- SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct \
-- SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
-- SYS_GETSID = 310 // { int getsid(pid_t pid); }
-- SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, \
-- SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, \
-- SYS_YIELD = 321 // { int yield(void); }
-- SYS_MLOCKALL = 324 // { int mlockall(int how); }
-- SYS_MUNLOCKALL = 325 // { int munlockall(void); }
-- SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
-- SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, \
-- SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct \
-- SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int \
-- SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
-- SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
-- SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
-- SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
-- SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, \
-- SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
-- SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, \
-- SYS_JAIL = 338 // { int jail(struct jail *jail); }
-- SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, \
-- SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
-- SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
-- SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, \
-- SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, \
-- SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, \
-- SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, \
-- SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, \
-- SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, \
-- SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, \
-- SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, \
-- SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, \
-- SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, \
-- SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, \
-- SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( \
-- SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( \
-- SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, \
-- SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, \
-- SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, \
-- SYS_KQUEUE = 362 // { int kqueue(void); }
-- SYS_KEVENT = 363 // { int kevent(int fd, \
-- SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, \
-- SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, \
-- SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, \
-- SYS___SETUGID = 374 // { int __setugid(int flag); }
-- SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
-- SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, \
-- SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
-- SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
-- SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, \
-- SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, \
-- SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, \
-- SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, \
-- SYS_KENV = 390 // { int kenv(int what, const char *name, \
-- SYS_LCHFLAGS = 391 // { int lchflags(const char *path, \
-- SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, \
-- SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, \
-- SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, \
-- SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, \
-- SYS_STATFS = 396 // { int statfs(char *path, \
-- SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
-- SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, \
-- SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, \
-- SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, \
-- SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, \
-- SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( \
-- SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( \
-- SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( \
-- SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, \
-- SYS_SIGACTION = 416 // { int sigaction(int sig, \
-- SYS_SIGRETURN = 417 // { int sigreturn( \
-- SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
-- SYS_SETCONTEXT = 422 // { int setcontext( \
-- SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, \
-- SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
-- SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, \
-- SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, \
-- SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, \
-- SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, \
-- SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, \
-- SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, \
-- SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
-- SYS_THR_SELF = 432 // { int thr_self(long *id); }
-- SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
-- SYS__UMTX_LOCK = 434 // { int _umtx_lock(struct umtx *umtx); }
-- SYS__UMTX_UNLOCK = 435 // { int _umtx_unlock(struct umtx *umtx); }
-- SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
-- SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, \
-- SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( \
-- SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( \
-- SYS_THR_SUSPEND = 442 // { int thr_suspend( \
-- SYS_THR_WAKE = 443 // { int thr_wake(long id); }
-- SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
-- SYS_AUDIT = 445 // { int audit(const void *record, \
-- SYS_AUDITON = 446 // { int auditon(int cmd, void *data, \
-- SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
-- SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
-- SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
-- SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
-- SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( \
-- SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( \
-- SYS_AUDITCTL = 453 // { int auditctl(char *path); }
-- SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, \
-- SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, \
-- SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
-- SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
-- SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
-- SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, \
-- SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, \
-- SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, \
-- SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, \
-- SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, \
-- SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
-- SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
-- SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
-- SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, \
-- SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
-- SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
-- SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, \
-- SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, \
-- SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, \
-- SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, \
-- SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, \
-- SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, \
-- SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, \
-- SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, \
-- SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, \
-- SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, \
-- SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, \
-- SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
-- SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
-- SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, \
-- SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, \
-- SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, \
-- SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, \
-- SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, \
-- SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
-- SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
-- SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, \
-- SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, \
-- SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
-- SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
-- SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
-- SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, \
-- SYS_CAP_ENTER = 516 // { int cap_enter(void); }
-- SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
-- SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
-- SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
-- SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
-- SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, \
-- SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, \
-- SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
-- SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, \
-- SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, \
-- SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, \
-- SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, \
-- SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, \
-- SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, \
-- SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, \
-- SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, \
-- SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, \
-- SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, \
-- SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, \
-- SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, \
-- SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, \
-- SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, \
-- SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, \
-- SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, \
-- SYS_ACCEPT4 = 541 // { int accept4(int s, \
-- SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
-- SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, \
-- SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, \
-- SYS_FUTIMENS = 546 // { int futimens(int fd, \
-- SYS_UTIMENSAT = 547 // { int utimensat(int fd, \
-+ SYS_EXIT = 1 // { void sys_exit(int rval); } exit sys_exit_args void
-+ SYS_FORK = 2 // { int fork(void); }
-+ SYS_READ = 3 // { ssize_t read(int fd, void *buf, size_t nbyte); }
-+ SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); }
-+ SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
-+ SYS_CLOSE = 6 // { int close(int fd); }
-+ SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); }
-+ SYS_LINK = 9 // { int link(char *path, char *link); }
-+ SYS_UNLINK = 10 // { int unlink(char *path); }
-+ SYS_CHDIR = 12 // { int chdir(char *path); }
-+ SYS_FCHDIR = 13 // { int fchdir(int fd); }
-+ SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
-+ SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
-+ SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
-+ SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int
-+ SYS_GETPID = 20 // { pid_t getpid(void); }
-+ SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); }
-+ SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
-+ SYS_SETUID = 23 // { int setuid(uid_t uid); }
-+ SYS_GETUID = 24 // { uid_t getuid(void); }
-+ SYS_GETEUID = 25 // { uid_t geteuid(void); }
-+ SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); }
-+ SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); }
-+ SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, int flags); }
-+ SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, struct sockaddr * __restrict from, __socklen_t * __restrict fromlenaddr); }
-+ SYS_ACCEPT = 30 // { int accept(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen); }
-+ SYS_GETPEERNAME = 31 // { int getpeername(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
-+ SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
-+ SYS_ACCESS = 33 // { int access(char *path, int amode); }
-+ SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
-+ SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
-+ SYS_SYNC = 36 // { int sync(void); }
-+ SYS_KILL = 37 // { int kill(int pid, int signum); }
-+ SYS_GETPPID = 39 // { pid_t getppid(void); }
-+ SYS_DUP = 41 // { int dup(u_int fd); }
-+ SYS_PIPE = 42 // { int pipe(void); }
-+ SYS_GETEGID = 43 // { gid_t getegid(void); }
-+ SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); }
-+ SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); }
-+ SYS_GETGID = 47 // { gid_t getgid(void); }
-+ SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int namelen); }
-+ SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
-+ SYS_ACCT = 51 // { int acct(char *path); }
-+ SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, stack_t *oss); }
-+ SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, caddr_t data); }
-+ SYS_REBOOT = 55 // { int reboot(int opt); }
-+ SYS_REVOKE = 56 // { int revoke(char *path); }
-+ SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
-+ SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, size_t count); }
-+ SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); }
-+ SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int
-+ SYS_CHROOT = 61 // { int chroot(char *path); }
-+ SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); }
-+ SYS_VFORK = 66 // { int vfork(void); }
-+ SYS_SBRK = 69 // { int sbrk(int incr); }
-+ SYS_SSTK = 70 // { int sstk(int incr); }
-+ SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise ovadvise_args int
-+ SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
-+ SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, int prot); }
-+ SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); }
-+ SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); }
-+ SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); }
-+ SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); }
-+ SYS_GETPGRP = 81 // { int getpgrp(void); }
-+ SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
-+ SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); }
-+ SYS_SWAPON = 85 // { int swapon(char *name); }
-+ SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); }
-+ SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
-+ SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
-+ SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
-+ SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
-+ SYS_FSYNC = 95 // { int fsync(int fd); }
-+ SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); }
-+ SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); }
-+ SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); }
-+ SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
-+ SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); }
-+ SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); }
-+ SYS_LISTEN = 106 // { int listen(int s, int backlog); }
-+ SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); }
-+ SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); }
-+ SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); }
-+ SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); }
-+ SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); }
-+ SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); }
-+ SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
-+ SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
-+ SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
-+ SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
-+ SYS_RENAME = 128 // { int rename(char *from, char *to); }
-+ SYS_FLOCK = 131 // { int flock(int fd, int how); }
-+ SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
-+ SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); }
-+ SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
-+ SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); }
-+ SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
-+ SYS_RMDIR = 137 // { int rmdir(char *path); }
-+ SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); }
-+ SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); }
-+ SYS_SETSID = 147 // { int setsid(void); }
-+ SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); }
-+ SYS_NLM_SYSCALL = 154 // { int nlm_syscall(int debug_level, int grace_period, int addr_count, char **addrs); }
-+ SYS_NFSSVC = 155 // { int nfssvc(int flag, caddr_t argp); }
-+ SYS_LGETFH = 160 // { int lgetfh(char *fname, struct fhandle *fhp); }
-+ SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); }
-+ SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
-+ SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); }
-+ SYS_SEMSYS = 169 // { int semsys(int which, int a2, int a3, int a4, int a5); }
-+ SYS_MSGSYS = 170 // { int msgsys(int which, int a2, int a3, int a4, int a5, int a6); }
-+ SYS_SHMSYS = 171 // { int shmsys(int which, int a2, int a3, int a4); }
-+ SYS_SETFIB = 175 // { int setfib(int fibnum); }
-+ SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
-+ SYS_SETGID = 181 // { int setgid(gid_t gid); }
-+ SYS_SETEGID = 182 // { int setegid(gid_t egid); }
-+ SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
-+ SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
-+ SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
-+ SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
-+ SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
-+ SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
-+ SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int
-+ SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int
-+ SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, u_int count, long *basep); }
-+ SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int
-+ SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
-+ SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
-+ SYS_UNDELETE = 205 // { int undelete(char *path); }
-+ SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
-+ SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
-+ SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, int timeout); }
-+ SYS_SEMGET = 221 // { int semget(key_t key, int nsems, int semflg); }
-+ SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, size_t nsops); }
-+ SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); }
-+ SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
-+ SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
-+ SYS_SHMAT = 228 // { int shmat(int shmid, const void *shmaddr, int shmflg); }
-+ SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); }
-+ SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); }
-+ SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); }
-+ SYS_CLOCK_SETTIME = 233 // { int clock_settime( clockid_t clock_id, const struct timespec *tp); }
-+ SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); }
-+ SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, struct sigevent *evp, int *timerid); }
-+ SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
-+ SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue); }
-+ SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct itimerspec *value); }
-+ SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
-+ SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
-+ SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
-+ SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( struct ffclock_estimate *cest); }
-+ SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( struct ffclock_estimate *cest); }
-+ SYS_CLOCK_NANOSLEEP = 244 // { int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); }
-+ SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,int which, clockid_t *clock_id); }
-+ SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
-+ SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); }
-+ SYS_RFORK = 251 // { int rfork(int flags); }
-+ SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); }
-+ SYS_ISSETUGID = 253 // { int issetugid(void); }
-+ SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
-+ SYS_AIO_READ = 255 // { int aio_read(struct aiocb *aiocbp); }
-+ SYS_AIO_WRITE = 256 // { int aio_write(struct aiocb *aiocbp); }
-+ SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); }
-+ SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, size_t count); }
-+ SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
-+ SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); }
-+ SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
-+ SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
-+ SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
-+ SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
-+ SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
-+ SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); }
-+ SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); }
-+ SYS_MODNEXT = 300 // { int modnext(int modid); }
-+ SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat *stat); }
-+ SYS_MODFNEXT = 302 // { int modfnext(int modid); }
-+ SYS_MODFIND = 303 // { int modfind(const char *name); }
-+ SYS_KLDLOAD = 304 // { int kldload(const char *file); }
-+ SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
-+ SYS_KLDFIND = 306 // { int kldfind(const char *file); }
-+ SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
-+ SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat* stat); }
-+ SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
-+ SYS_GETSID = 310 // { int getsid(pid_t pid); }
-+ SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, uid_t suid); }
-+ SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
-+ SYS_AIO_RETURN = 314 // { ssize_t aio_return(struct aiocb *aiocbp); }
-+ SYS_AIO_SUSPEND = 315 // { int aio_suspend( struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); }
-+ SYS_AIO_CANCEL = 316 // { int aio_cancel(int fd, struct aiocb *aiocbp); }
-+ SYS_AIO_ERROR = 317 // { int aio_error(struct aiocb *aiocbp); }
-+ SYS_YIELD = 321 // { int yield(void); }
-+ SYS_MLOCKALL = 324 // { int mlockall(int how); }
-+ SYS_MUNLOCKALL = 325 // { int munlockall(void); }
-+ SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
-+ SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, const struct sched_param *param); }
-+ SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct sched_param *param); }
-+ SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); }
-+ SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
-+ SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
-+ SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
-+ SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
-+ SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, struct timespec *interval); }
-+ SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
-+ SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, void *data); }
-+ SYS_JAIL = 338 // { int jail(struct jail *jail); }
-+ SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, const sigset_t *set, sigset_t *oset); }
-+ SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
-+ SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
-+ SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, siginfo_t *info, const struct timespec *timeout); }
-+ SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, siginfo_t *info); }
-+ SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, acl_type_t type); }
-+ SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, acl_type_t type); }
-+ SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); }
-+ SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); }
-+ SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete( struct aiocb **aiocbp, struct timespec *timeout); }
-+ SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
-+ SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
-+ SYS_KQUEUE = 362 // { int kqueue(void); }
-+ SYS_KEVENT = 363 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
-+ SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, int attrnamespace, const char *attrname); }
-+ SYS___SETUGID = 374 // { int __setugid(int flag); }
-+ SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
-+ SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, unsigned int iovcnt, int flags); }
-+ SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
-+ SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
-+ SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, struct mac *mac_p); }
-+ SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, struct mac *mac_p); }
-+ SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, struct mac *mac_p); }
-+ SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, struct mac *mac_p); }
-+ SYS_KENV = 390 // { int kenv(int what, const char *name, char *value, int len); }
-+ SYS_LCHFLAGS = 391 // { int lchflags(const char *path, u_long flags); }
-+ SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); }
-+ SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
-+ SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, int call, void *arg); }
-+ SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, long bufsize, int mode); }
-+ SYS_STATFS = 396 // { int statfs(char *path, struct statfs *buf); }
-+ SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
-+ SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); }
-+ SYS_KSEM_CLOSE = 400 // { int ksem_close(semid_t id); }
-+ SYS_KSEM_POST = 401 // { int ksem_post(semid_t id); }
-+ SYS_KSEM_WAIT = 402 // { int ksem_wait(semid_t id); }
-+ SYS_KSEM_TRYWAIT = 403 // { int ksem_trywait(semid_t id); }
-+ SYS_KSEM_INIT = 404 // { int ksem_init(semid_t *idp, unsigned int value); }
-+ SYS_KSEM_OPEN = 405 // { int ksem_open(semid_t *idp, const char *name, int oflag, mode_t mode, unsigned int value); }
-+ SYS_KSEM_UNLINK = 406 // { int ksem_unlink(const char *name); }
-+ SYS_KSEM_GETVALUE = 407 // { int ksem_getvalue(semid_t id, int *val); }
-+ SYS_KSEM_DESTROY = 408 // { int ksem_destroy(semid_t id); }
-+ SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, struct mac *mac_p); }
-+ SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, struct mac *mac_p); }
-+ SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, struct mac *mac_p); }
-+ SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( const char *path, int attrnamespace, const char *attrname); }
-+ SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, char **envv, struct mac *mac_p); }
-+ SYS_SIGACTION = 416 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); }
-+ SYS_SIGRETURN = 417 // { int sigreturn( const struct __ucontext *sigcntxp); }
-+ SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
-+ SYS_SETCONTEXT = 422 // { int setcontext( const struct __ucontext *ucp); }
-+ SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, const struct __ucontext *ucp); }
-+ SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
-+ SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, acl_type_t type); }
-+ SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, int *sig); }
-+ SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, int flags); }
-+ SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
-+ SYS_THR_SELF = 432 // { int thr_self(long *id); }
-+ SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
-+ SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
-+ SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); }
-+ SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( const char *path, int attrnamespace, void *data, size_t nbytes); }
-+ SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( const char *path, int attrnamespace, void *data, size_t nbytes); }
-+ SYS_KSEM_TIMEDWAIT = 441 // { int ksem_timedwait(semid_t id, const struct timespec *abstime); }
-+ SYS_THR_SUSPEND = 442 // { int thr_suspend( const struct timespec *timeout); }
-+ SYS_THR_WAKE = 443 // { int thr_wake(long id); }
-+ SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
-+ SYS_AUDIT = 445 // { int audit(const void *record, u_int length); }
-+ SYS_AUDITON = 446 // { int auditon(int cmd, void *data, u_int length); }
-+ SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
-+ SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
-+ SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
-+ SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
-+ SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
-+ SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
-+ SYS_AUDITCTL = 453 // { int auditctl(char *path); }
-+ SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, u_long val, void *uaddr1, void *uaddr2); }
-+ SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, int param_size); }
-+ SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
-+ SYS_KMQ_OPEN = 457 // { int kmq_open(const char *path, int flags, mode_t mode, const struct mq_attr *attr); }
-+ SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); }
-+ SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); }
-+ SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len,unsigned msg_prio, const struct timespec *abs_timeout);}
-+ SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); }
-+ SYS_KMQ_UNLINK = 462 // { int kmq_unlink(const char *path); }
-+ SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
-+ SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
-+ SYS_AIO_FSYNC = 465 // { int aio_fsync(int op, struct aiocb *aiocbp); }
-+ SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, lwpid_t lwpid, struct rtprio *rtp); }
-+ SYS_SCTP_PEELOFF = 471 // { int sctp_peeloff(int sd, uint32_t name); }
-+ SYS_SCTP_GENERIC_SENDMSG = 472 // { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
-+ SYS_SCTP_GENERIC_SENDMSG_IOV = 473 // { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
-+ SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr * from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); }
-+ SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, size_t nbyte, off_t offset); }
-+ SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, size_t nbyte, off_t offset); }
-+ SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, off_t pos); }
-+ SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, int whence); }
-+ SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
-+ SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
-+ SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
-+ SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, mode_t mode); }
-+ SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
-+ SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
-+ SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, cpusetid_t setid); }
-+ SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, cpuwhich_t which, id_t id, cpusetid_t *setid); }
-+ SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, cpuset_t *mask); }
-+ SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, const cpuset_t *mask); }
-+ SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, int flag); }
-+ SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, int flag); }
-+ SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, gid_t gid, int flag); }
-+ SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, char **envv); }
-+ SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, struct stat *buf, int flag); }
-+ SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, struct timeval *times); }
-+ SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flag); }
-+ SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
-+ SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
-+ SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); }
-+ SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, mode_t mode); }
-+ SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); }
-+ SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, char *new); }
-+ SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, char *path2); }
-+ SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
-+ SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
-+ SYS_GSSD_SYSCALL = 505 // { int gssd_syscall(char *path); }
-+ SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, unsigned int iovcnt, int flags); }
-+ SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, unsigned int iovcnt, int flags); }
-+ SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
-+ SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
-+ SYS___SEMCTL = 510 // { int __semctl(int semid, int semnum, int cmd, union semun *arg); }
-+ SYS_MSGCTL = 511 // { int msgctl(int msqid, int cmd, struct msqid_ds *buf); }
-+ SYS_SHMCTL = 512 // { int shmctl(int shmid, int cmd, struct shmid_ds *buf); }
-+ SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
-+ SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, int fd, cap_rights_t *rightsp); }
-+ SYS_CAP_ENTER = 516 // { int cap_enter(void); }
-+ SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
-+ SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
-+ SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
-+ SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
-+ SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *sm); }
-+ SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, size_t namelen); }
-+ SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
-+ SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, off_t offset, off_t len); }
-+ SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, off_t len, int advice); }
-+ SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, int *status, int options, struct __wrusage *wrusage, siginfo_t *info); }
-+ SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, cap_rights_t *rightsp); }
-+ SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, const u_long *cmds, size_t ncmds); }
-+ SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, u_long *cmds, size_t maxcmds); }
-+ SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, uint32_t fcntlrights); }
-+ SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, uint32_t *fcntlrightsp); }
-+ SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, int namelen); }
-+ SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, int namelen); }
-+ SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, u_long flags, int atflag); }
-+ SYS_ACCEPT4 = 541 // { int accept4(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen, int flags); }
-+ SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
-+ SYS_AIO_MLOCK = 543 // { int aio_mlock(struct aiocb *aiocbp); }
-+ SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, int com, void *data); }
-+ SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *set); }
-+ SYS_FUTIMENS = 546 // { int futimens(int fd, struct timespec *times); }
-+ SYS_UTIMENSAT = 547 // { int utimensat(int fd, char *path, struct timespec *times, int flag); }
-+ SYS_NUMA_GETAFFINITY = 548 // { int numa_getaffinity(cpuwhich_t which, id_t id, struct vm_domain_policy_entry *policy); }
-+ SYS_NUMA_SETAFFINITY = 549 // { int numa_setaffinity(cpuwhich_t which, id_t id, const struct vm_domain_policy_entry *policy); }
-+ SYS_FDATASYNC = 550 // { int fdatasync(int fd); }
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
-index 81722ac9..48a7beae 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
-@@ -1,4 +1,4 @@
--// mksysnum_freebsd.pl
-+// go run mksysnum.go https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build amd64,freebsd
-@@ -7,347 +7,390 @@ package unix
-
- const (
- // SYS_NOSYS = 0; // { int nosys(void); } syscall nosys_args int
-- SYS_EXIT = 1 // { void sys_exit(int rval); } exit \
-- SYS_FORK = 2 // { int fork(void); }
-- SYS_READ = 3 // { ssize_t read(int fd, void *buf, \
-- SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, \
-- SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
-- SYS_CLOSE = 6 // { int close(int fd); }
-- SYS_WAIT4 = 7 // { int wait4(int pid, int *status, \
-- SYS_LINK = 9 // { int link(char *path, char *link); }
-- SYS_UNLINK = 10 // { int unlink(char *path); }
-- SYS_CHDIR = 12 // { int chdir(char *path); }
-- SYS_FCHDIR = 13 // { int fchdir(int fd); }
-- SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
-- SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
-- SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
-- SYS_OBREAK = 17 // { int obreak(char *nsize); } break \
-- SYS_GETPID = 20 // { pid_t getpid(void); }
-- SYS_MOUNT = 21 // { int mount(char *type, char *path, \
-- SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
-- SYS_SETUID = 23 // { int setuid(uid_t uid); }
-- SYS_GETUID = 24 // { uid_t getuid(void); }
-- SYS_GETEUID = 25 // { uid_t geteuid(void); }
-- SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, \
-- SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, \
-- SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, \
-- SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, \
-- SYS_ACCEPT = 30 // { int accept(int s, \
-- SYS_GETPEERNAME = 31 // { int getpeername(int fdes, \
-- SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, \
-- SYS_ACCESS = 33 // { int access(char *path, int amode); }
-- SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
-- SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
-- SYS_SYNC = 36 // { int sync(void); }
-- SYS_KILL = 37 // { int kill(int pid, int signum); }
-- SYS_GETPPID = 39 // { pid_t getppid(void); }
-- SYS_DUP = 41 // { int dup(u_int fd); }
-- SYS_PIPE = 42 // { int pipe(void); }
-- SYS_GETEGID = 43 // { gid_t getegid(void); }
-- SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, \
-- SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, \
-- SYS_GETGID = 47 // { gid_t getgid(void); }
-- SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int \
-- SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
-- SYS_ACCT = 51 // { int acct(char *path); }
-- SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, \
-- SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, \
-- SYS_REBOOT = 55 // { int reboot(int opt); }
-- SYS_REVOKE = 56 // { int revoke(char *path); }
-- SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
-- SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, \
-- SYS_EXECVE = 59 // { int execve(char *fname, char **argv, \
-- SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args \
-- SYS_CHROOT = 61 // { int chroot(char *path); }
-- SYS_MSYNC = 65 // { int msync(void *addr, size_t len, \
-- SYS_VFORK = 66 // { int vfork(void); }
-- SYS_SBRK = 69 // { int sbrk(int incr); }
-- SYS_SSTK = 70 // { int sstk(int incr); }
-- SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise \
-- SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
-- SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, \
-- SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, \
-- SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, \
-- SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, \
-- SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, \
-- SYS_GETPGRP = 81 // { int getpgrp(void); }
-- SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
-- SYS_SETITIMER = 83 // { int setitimer(u_int which, struct \
-- SYS_SWAPON = 85 // { int swapon(char *name); }
-- SYS_GETITIMER = 86 // { int getitimer(u_int which, \
-- SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
-- SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
-- SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
-- SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, \
-- SYS_FSYNC = 95 // { int fsync(int fd); }
-- SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, \
-- SYS_SOCKET = 97 // { int socket(int domain, int type, \
-- SYS_CONNECT = 98 // { int connect(int s, caddr_t name, \
-- SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
-- SYS_BIND = 104 // { int bind(int s, caddr_t name, \
-- SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, \
-- SYS_LISTEN = 106 // { int listen(int s, int backlog); }
-- SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, \
-- SYS_GETRUSAGE = 117 // { int getrusage(int who, \
-- SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, \
-- SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, \
-- SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, \
-- SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, \
-- SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
-- SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
-- SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
-- SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
-- SYS_RENAME = 128 // { int rename(char *from, char *to); }
-- SYS_FLOCK = 131 // { int flock(int fd, int how); }
-- SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
-- SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, \
-- SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
-- SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, \
-- SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
-- SYS_RMDIR = 137 // { int rmdir(char *path); }
-- SYS_UTIMES = 138 // { int utimes(char *path, \
-- SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, \
-- SYS_SETSID = 147 // { int setsid(void); }
-- SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, \
-- SYS_LGETFH = 160 // { int lgetfh(char *fname, \
-- SYS_GETFH = 161 // { int getfh(char *fname, \
-- SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
-- SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, \
-- SYS_FREEBSD6_PREAD = 173 // { ssize_t freebsd6_pread(int fd, void *buf, \
-- SYS_FREEBSD6_PWRITE = 174 // { ssize_t freebsd6_pwrite(int fd, \
-- SYS_SETFIB = 175 // { int setfib(int fibnum); }
-- SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
-- SYS_SETGID = 181 // { int setgid(gid_t gid); }
-- SYS_SETEGID = 182 // { int setegid(gid_t egid); }
-- SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
-- SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
-- SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
-- SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
-- SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
-- SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
-- SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, \
-- SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, \
-- SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, \
-- SYS_FREEBSD6_MMAP = 197 // { caddr_t freebsd6_mmap(caddr_t addr, \
-- SYS_FREEBSD6_LSEEK = 199 // { off_t freebsd6_lseek(int fd, int pad, \
-- SYS_FREEBSD6_TRUNCATE = 200 // { int freebsd6_truncate(char *path, int pad, \
-- SYS_FREEBSD6_FTRUNCATE = 201 // { int freebsd6_ftruncate(int fd, int pad, \
-- SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, \
-- SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
-- SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
-- SYS_UNDELETE = 205 // { int undelete(char *path); }
-- SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
-- SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
-- SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, \
-- SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, \
-- SYS_CLOCK_SETTIME = 233 // { int clock_settime( \
-- SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, \
-- SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, \
-- SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
-- SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, \
-- SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct \
-- SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
-- SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, \
-- SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
-- SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( \
-- SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( \
-- SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,\
-- SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
-- SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, \
-- SYS_RFORK = 251 // { int rfork(int flags); }
-- SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, \
-- SYS_ISSETUGID = 253 // { int issetugid(void); }
-- SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
-- SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, \
-- SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
-- SYS_LUTIMES = 276 // { int lutimes(char *path, \
-- SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
-- SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
-- SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
-- SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, \
-- SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, \
-- SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, \
-- SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, \
-- SYS_MODNEXT = 300 // { int modnext(int modid); }
-- SYS_MODSTAT = 301 // { int modstat(int modid, \
-- SYS_MODFNEXT = 302 // { int modfnext(int modid); }
-- SYS_MODFIND = 303 // { int modfind(const char *name); }
-- SYS_KLDLOAD = 304 // { int kldload(const char *file); }
-- SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
-- SYS_KLDFIND = 306 // { int kldfind(const char *file); }
-- SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
-- SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct \
-- SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
-- SYS_GETSID = 310 // { int getsid(pid_t pid); }
-- SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, \
-- SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, \
-- SYS_YIELD = 321 // { int yield(void); }
-- SYS_MLOCKALL = 324 // { int mlockall(int how); }
-- SYS_MUNLOCKALL = 325 // { int munlockall(void); }
-- SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
-- SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, \
-- SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct \
-- SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int \
-- SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
-- SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
-- SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
-- SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
-- SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, \
-- SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
-- SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, \
-- SYS_JAIL = 338 // { int jail(struct jail *jail); }
-- SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, \
-- SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
-- SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
-- SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, \
-- SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, \
-- SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, \
-- SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, \
-- SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, \
-- SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, \
-- SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, \
-- SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, \
-- SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, \
-- SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, \
-- SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, \
-- SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( \
-- SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( \
-- SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, \
-- SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, \
-- SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, \
-- SYS_KQUEUE = 362 // { int kqueue(void); }
-- SYS_KEVENT = 363 // { int kevent(int fd, \
-- SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, \
-- SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, \
-- SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, \
-- SYS___SETUGID = 374 // { int __setugid(int flag); }
-- SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
-- SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, \
-- SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
-- SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
-- SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, \
-- SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, \
-- SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, \
-- SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, \
-- SYS_KENV = 390 // { int kenv(int what, const char *name, \
-- SYS_LCHFLAGS = 391 // { int lchflags(const char *path, \
-- SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, \
-- SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, \
-- SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, \
-- SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, \
-- SYS_STATFS = 396 // { int statfs(char *path, \
-- SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
-- SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, \
-- SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, \
-- SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, \
-- SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, \
-- SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( \
-- SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( \
-- SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( \
-- SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, \
-- SYS_SIGACTION = 416 // { int sigaction(int sig, \
-- SYS_SIGRETURN = 417 // { int sigreturn( \
-- SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
-- SYS_SETCONTEXT = 422 // { int setcontext( \
-- SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, \
-- SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
-- SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, \
-- SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, \
-- SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, \
-- SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, \
-- SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, \
-- SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, \
-- SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
-- SYS_THR_SELF = 432 // { int thr_self(long *id); }
-- SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
-- SYS__UMTX_LOCK = 434 // { int _umtx_lock(struct umtx *umtx); }
-- SYS__UMTX_UNLOCK = 435 // { int _umtx_unlock(struct umtx *umtx); }
-- SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
-- SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, \
-- SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( \
-- SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( \
-- SYS_THR_SUSPEND = 442 // { int thr_suspend( \
-- SYS_THR_WAKE = 443 // { int thr_wake(long id); }
-- SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
-- SYS_AUDIT = 445 // { int audit(const void *record, \
-- SYS_AUDITON = 446 // { int auditon(int cmd, void *data, \
-- SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
-- SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
-- SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
-- SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
-- SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( \
-- SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( \
-- SYS_AUDITCTL = 453 // { int auditctl(char *path); }
-- SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, \
-- SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, \
-- SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
-- SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
-- SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
-- SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, \
-- SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, \
-- SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, \
-- SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, \
-- SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, \
-- SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
-- SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
-- SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
-- SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, \
-- SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
-- SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
-- SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, \
-- SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, \
-- SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, \
-- SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, \
-- SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, \
-- SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, \
-- SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, \
-- SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, \
-- SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, \
-- SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, \
-- SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, \
-- SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
-- SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
-- SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, \
-- SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, \
-- SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, \
-- SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, \
-- SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, \
-- SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
-- SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
-- SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, \
-- SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, \
-- SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
-- SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
-- SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
-- SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, \
-- SYS_CAP_ENTER = 516 // { int cap_enter(void); }
-- SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
-- SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
-- SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
-- SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
-- SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, \
-- SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, \
-- SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
-- SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, \
-- SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, \
-- SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, \
-- SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, \
-- SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, \
-- SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, \
-- SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, \
-- SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, \
-- SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, \
-- SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, \
-- SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, \
-- SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, \
-- SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, \
-- SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, \
-- SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, \
-- SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, \
-- SYS_ACCEPT4 = 541 // { int accept4(int s, \
-- SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
-- SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, \
-- SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, \
-- SYS_FUTIMENS = 546 // { int futimens(int fd, \
-- SYS_UTIMENSAT = 547 // { int utimensat(int fd, \
-+ SYS_EXIT = 1 // { void sys_exit(int rval); } exit sys_exit_args void
-+ SYS_FORK = 2 // { int fork(void); }
-+ SYS_READ = 3 // { ssize_t read(int fd, void *buf, size_t nbyte); }
-+ SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); }
-+ SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
-+ SYS_CLOSE = 6 // { int close(int fd); }
-+ SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); }
-+ SYS_LINK = 9 // { int link(char *path, char *link); }
-+ SYS_UNLINK = 10 // { int unlink(char *path); }
-+ SYS_CHDIR = 12 // { int chdir(char *path); }
-+ SYS_FCHDIR = 13 // { int fchdir(int fd); }
-+ SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
-+ SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
-+ SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
-+ SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int
-+ SYS_GETPID = 20 // { pid_t getpid(void); }
-+ SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); }
-+ SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
-+ SYS_SETUID = 23 // { int setuid(uid_t uid); }
-+ SYS_GETUID = 24 // { uid_t getuid(void); }
-+ SYS_GETEUID = 25 // { uid_t geteuid(void); }
-+ SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); }
-+ SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); }
-+ SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, int flags); }
-+ SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, struct sockaddr * __restrict from, __socklen_t * __restrict fromlenaddr); }
-+ SYS_ACCEPT = 30 // { int accept(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen); }
-+ SYS_GETPEERNAME = 31 // { int getpeername(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
-+ SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
-+ SYS_ACCESS = 33 // { int access(char *path, int amode); }
-+ SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
-+ SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
-+ SYS_SYNC = 36 // { int sync(void); }
-+ SYS_KILL = 37 // { int kill(int pid, int signum); }
-+ SYS_GETPPID = 39 // { pid_t getppid(void); }
-+ SYS_DUP = 41 // { int dup(u_int fd); }
-+ SYS_PIPE = 42 // { int pipe(void); }
-+ SYS_GETEGID = 43 // { gid_t getegid(void); }
-+ SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); }
-+ SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); }
-+ SYS_GETGID = 47 // { gid_t getgid(void); }
-+ SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int namelen); }
-+ SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
-+ SYS_ACCT = 51 // { int acct(char *path); }
-+ SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, stack_t *oss); }
-+ SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, caddr_t data); }
-+ SYS_REBOOT = 55 // { int reboot(int opt); }
-+ SYS_REVOKE = 56 // { int revoke(char *path); }
-+ SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
-+ SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, size_t count); }
-+ SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); }
-+ SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int
-+ SYS_CHROOT = 61 // { int chroot(char *path); }
-+ SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); }
-+ SYS_VFORK = 66 // { int vfork(void); }
-+ SYS_SBRK = 69 // { int sbrk(int incr); }
-+ SYS_SSTK = 70 // { int sstk(int incr); }
-+ SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise ovadvise_args int
-+ SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
-+ SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, int prot); }
-+ SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); }
-+ SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); }
-+ SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); }
-+ SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); }
-+ SYS_GETPGRP = 81 // { int getpgrp(void); }
-+ SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
-+ SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); }
-+ SYS_SWAPON = 85 // { int swapon(char *name); }
-+ SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); }
-+ SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
-+ SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
-+ SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
-+ SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
-+ SYS_FSYNC = 95 // { int fsync(int fd); }
-+ SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); }
-+ SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); }
-+ SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); }
-+ SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
-+ SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); }
-+ SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); }
-+ SYS_LISTEN = 106 // { int listen(int s, int backlog); }
-+ SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); }
-+ SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); }
-+ SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); }
-+ SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); }
-+ SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); }
-+ SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); }
-+ SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
-+ SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
-+ SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
-+ SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
-+ SYS_RENAME = 128 // { int rename(char *from, char *to); }
-+ SYS_FLOCK = 131 // { int flock(int fd, int how); }
-+ SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
-+ SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); }
-+ SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
-+ SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); }
-+ SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
-+ SYS_RMDIR = 137 // { int rmdir(char *path); }
-+ SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); }
-+ SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); }
-+ SYS_SETSID = 147 // { int setsid(void); }
-+ SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); }
-+ SYS_NLM_SYSCALL = 154 // { int nlm_syscall(int debug_level, int grace_period, int addr_count, char **addrs); }
-+ SYS_NFSSVC = 155 // { int nfssvc(int flag, caddr_t argp); }
-+ SYS_LGETFH = 160 // { int lgetfh(char *fname, struct fhandle *fhp); }
-+ SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); }
-+ SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
-+ SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); }
-+ SYS_SEMSYS = 169 // { int semsys(int which, int a2, int a3, int a4, int a5); }
-+ SYS_MSGSYS = 170 // { int msgsys(int which, int a2, int a3, int a4, int a5, int a6); }
-+ SYS_SHMSYS = 171 // { int shmsys(int which, int a2, int a3, int a4); }
-+ SYS_SETFIB = 175 // { int setfib(int fibnum); }
-+ SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
-+ SYS_SETGID = 181 // { int setgid(gid_t gid); }
-+ SYS_SETEGID = 182 // { int setegid(gid_t egid); }
-+ SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
-+ SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
-+ SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
-+ SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
-+ SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
-+ SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
-+ SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int
-+ SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int
-+ SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, u_int count, long *basep); }
-+ SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int
-+ SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
-+ SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
-+ SYS_UNDELETE = 205 // { int undelete(char *path); }
-+ SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
-+ SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
-+ SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, int timeout); }
-+ SYS_SEMGET = 221 // { int semget(key_t key, int nsems, int semflg); }
-+ SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, size_t nsops); }
-+ SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); }
-+ SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
-+ SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
-+ SYS_SHMAT = 228 // { int shmat(int shmid, const void *shmaddr, int shmflg); }
-+ SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); }
-+ SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); }
-+ SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); }
-+ SYS_CLOCK_SETTIME = 233 // { int clock_settime( clockid_t clock_id, const struct timespec *tp); }
-+ SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); }
-+ SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, struct sigevent *evp, int *timerid); }
-+ SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
-+ SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue); }
-+ SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct itimerspec *value); }
-+ SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
-+ SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
-+ SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
-+ SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( struct ffclock_estimate *cest); }
-+ SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( struct ffclock_estimate *cest); }
-+ SYS_CLOCK_NANOSLEEP = 244 // { int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); }
-+ SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,int which, clockid_t *clock_id); }
-+ SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
-+ SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); }
-+ SYS_RFORK = 251 // { int rfork(int flags); }
-+ SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); }
-+ SYS_ISSETUGID = 253 // { int issetugid(void); }
-+ SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
-+ SYS_AIO_READ = 255 // { int aio_read(struct aiocb *aiocbp); }
-+ SYS_AIO_WRITE = 256 // { int aio_write(struct aiocb *aiocbp); }
-+ SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); }
-+ SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, size_t count); }
-+ SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
-+ SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); }
-+ SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
-+ SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
-+ SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
-+ SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
-+ SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
-+ SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); }
-+ SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); }
-+ SYS_MODNEXT = 300 // { int modnext(int modid); }
-+ SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat *stat); }
-+ SYS_MODFNEXT = 302 // { int modfnext(int modid); }
-+ SYS_MODFIND = 303 // { int modfind(const char *name); }
-+ SYS_KLDLOAD = 304 // { int kldload(const char *file); }
-+ SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
-+ SYS_KLDFIND = 306 // { int kldfind(const char *file); }
-+ SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
-+ SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat* stat); }
-+ SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
-+ SYS_GETSID = 310 // { int getsid(pid_t pid); }
-+ SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, uid_t suid); }
-+ SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
-+ SYS_AIO_RETURN = 314 // { ssize_t aio_return(struct aiocb *aiocbp); }
-+ SYS_AIO_SUSPEND = 315 // { int aio_suspend( struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); }
-+ SYS_AIO_CANCEL = 316 // { int aio_cancel(int fd, struct aiocb *aiocbp); }
-+ SYS_AIO_ERROR = 317 // { int aio_error(struct aiocb *aiocbp); }
-+ SYS_YIELD = 321 // { int yield(void); }
-+ SYS_MLOCKALL = 324 // { int mlockall(int how); }
-+ SYS_MUNLOCKALL = 325 // { int munlockall(void); }
-+ SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
-+ SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, const struct sched_param *param); }
-+ SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct sched_param *param); }
-+ SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); }
-+ SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
-+ SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
-+ SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
-+ SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
-+ SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, struct timespec *interval); }
-+ SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
-+ SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, void *data); }
-+ SYS_JAIL = 338 // { int jail(struct jail *jail); }
-+ SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, const sigset_t *set, sigset_t *oset); }
-+ SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
-+ SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
-+ SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, siginfo_t *info, const struct timespec *timeout); }
-+ SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, siginfo_t *info); }
-+ SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, acl_type_t type); }
-+ SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, acl_type_t type); }
-+ SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); }
-+ SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); }
-+ SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete( struct aiocb **aiocbp, struct timespec *timeout); }
-+ SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
-+ SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
-+ SYS_KQUEUE = 362 // { int kqueue(void); }
-+ SYS_KEVENT = 363 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
-+ SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, int attrnamespace, const char *attrname); }
-+ SYS___SETUGID = 374 // { int __setugid(int flag); }
-+ SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
-+ SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, unsigned int iovcnt, int flags); }
-+ SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
-+ SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
-+ SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, struct mac *mac_p); }
-+ SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, struct mac *mac_p); }
-+ SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, struct mac *mac_p); }
-+ SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, struct mac *mac_p); }
-+ SYS_KENV = 390 // { int kenv(int what, const char *name, char *value, int len); }
-+ SYS_LCHFLAGS = 391 // { int lchflags(const char *path, u_long flags); }
-+ SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); }
-+ SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
-+ SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, int call, void *arg); }
-+ SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, long bufsize, int mode); }
-+ SYS_STATFS = 396 // { int statfs(char *path, struct statfs *buf); }
-+ SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
-+ SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); }
-+ SYS_KSEM_CLOSE = 400 // { int ksem_close(semid_t id); }
-+ SYS_KSEM_POST = 401 // { int ksem_post(semid_t id); }
-+ SYS_KSEM_WAIT = 402 // { int ksem_wait(semid_t id); }
-+ SYS_KSEM_TRYWAIT = 403 // { int ksem_trywait(semid_t id); }
-+ SYS_KSEM_INIT = 404 // { int ksem_init(semid_t *idp, unsigned int value); }
-+ SYS_KSEM_OPEN = 405 // { int ksem_open(semid_t *idp, const char *name, int oflag, mode_t mode, unsigned int value); }
-+ SYS_KSEM_UNLINK = 406 // { int ksem_unlink(const char *name); }
-+ SYS_KSEM_GETVALUE = 407 // { int ksem_getvalue(semid_t id, int *val); }
-+ SYS_KSEM_DESTROY = 408 // { int ksem_destroy(semid_t id); }
-+ SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, struct mac *mac_p); }
-+ SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, struct mac *mac_p); }
-+ SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, struct mac *mac_p); }
-+ SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( const char *path, int attrnamespace, const char *attrname); }
-+ SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, char **envv, struct mac *mac_p); }
-+ SYS_SIGACTION = 416 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); }
-+ SYS_SIGRETURN = 417 // { int sigreturn( const struct __ucontext *sigcntxp); }
-+ SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
-+ SYS_SETCONTEXT = 422 // { int setcontext( const struct __ucontext *ucp); }
-+ SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, const struct __ucontext *ucp); }
-+ SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
-+ SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, acl_type_t type); }
-+ SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, int *sig); }
-+ SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, int flags); }
-+ SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
-+ SYS_THR_SELF = 432 // { int thr_self(long *id); }
-+ SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
-+ SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
-+ SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); }
-+ SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( const char *path, int attrnamespace, void *data, size_t nbytes); }
-+ SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( const char *path, int attrnamespace, void *data, size_t nbytes); }
-+ SYS_KSEM_TIMEDWAIT = 441 // { int ksem_timedwait(semid_t id, const struct timespec *abstime); }
-+ SYS_THR_SUSPEND = 442 // { int thr_suspend( const struct timespec *timeout); }
-+ SYS_THR_WAKE = 443 // { int thr_wake(long id); }
-+ SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
-+ SYS_AUDIT = 445 // { int audit(const void *record, u_int length); }
-+ SYS_AUDITON = 446 // { int auditon(int cmd, void *data, u_int length); }
-+ SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
-+ SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
-+ SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
-+ SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
-+ SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
-+ SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
-+ SYS_AUDITCTL = 453 // { int auditctl(char *path); }
-+ SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, u_long val, void *uaddr1, void *uaddr2); }
-+ SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, int param_size); }
-+ SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
-+ SYS_KMQ_OPEN = 457 // { int kmq_open(const char *path, int flags, mode_t mode, const struct mq_attr *attr); }
-+ SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); }
-+ SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); }
-+ SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len,unsigned msg_prio, const struct timespec *abs_timeout);}
-+ SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); }
-+ SYS_KMQ_UNLINK = 462 // { int kmq_unlink(const char *path); }
-+ SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
-+ SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
-+ SYS_AIO_FSYNC = 465 // { int aio_fsync(int op, struct aiocb *aiocbp); }
-+ SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, lwpid_t lwpid, struct rtprio *rtp); }
-+ SYS_SCTP_PEELOFF = 471 // { int sctp_peeloff(int sd, uint32_t name); }
-+ SYS_SCTP_GENERIC_SENDMSG = 472 // { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
-+ SYS_SCTP_GENERIC_SENDMSG_IOV = 473 // { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
-+ SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr * from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); }
-+ SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, size_t nbyte, off_t offset); }
-+ SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, size_t nbyte, off_t offset); }
-+ SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, off_t pos); }
-+ SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, int whence); }
-+ SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
-+ SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
-+ SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
-+ SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, mode_t mode); }
-+ SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
-+ SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
-+ SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, cpusetid_t setid); }
-+ SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, cpuwhich_t which, id_t id, cpusetid_t *setid); }
-+ SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, cpuset_t *mask); }
-+ SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, const cpuset_t *mask); }
-+ SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, int flag); }
-+ SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, int flag); }
-+ SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, gid_t gid, int flag); }
-+ SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, char **envv); }
-+ SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, struct stat *buf, int flag); }
-+ SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, struct timeval *times); }
-+ SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flag); }
-+ SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
-+ SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
-+ SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); }
-+ SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, mode_t mode); }
-+ SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); }
-+ SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, char *new); }
-+ SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, char *path2); }
-+ SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
-+ SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
-+ SYS_GSSD_SYSCALL = 505 // { int gssd_syscall(char *path); }
-+ SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, unsigned int iovcnt, int flags); }
-+ SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, unsigned int iovcnt, int flags); }
-+ SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
-+ SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
-+ SYS___SEMCTL = 510 // { int __semctl(int semid, int semnum, int cmd, union semun *arg); }
-+ SYS_MSGCTL = 511 // { int msgctl(int msqid, int cmd, struct msqid_ds *buf); }
-+ SYS_SHMCTL = 512 // { int shmctl(int shmid, int cmd, struct shmid_ds *buf); }
-+ SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
-+ SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, int fd, cap_rights_t *rightsp); }
-+ SYS_CAP_ENTER = 516 // { int cap_enter(void); }
-+ SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
-+ SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
-+ SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
-+ SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
-+ SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *sm); }
-+ SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, size_t namelen); }
-+ SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
-+ SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, off_t offset, off_t len); }
-+ SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, off_t len, int advice); }
-+ SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, int *status, int options, struct __wrusage *wrusage, siginfo_t *info); }
-+ SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, cap_rights_t *rightsp); }
-+ SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, const u_long *cmds, size_t ncmds); }
-+ SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, u_long *cmds, size_t maxcmds); }
-+ SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, uint32_t fcntlrights); }
-+ SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, uint32_t *fcntlrightsp); }
-+ SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, int namelen); }
-+ SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, int namelen); }
-+ SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, u_long flags, int atflag); }
-+ SYS_ACCEPT4 = 541 // { int accept4(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen, int flags); }
-+ SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
-+ SYS_AIO_MLOCK = 543 // { int aio_mlock(struct aiocb *aiocbp); }
-+ SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, int com, void *data); }
-+ SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *set); }
-+ SYS_FUTIMENS = 546 // { int futimens(int fd, struct timespec *times); }
-+ SYS_UTIMENSAT = 547 // { int utimensat(int fd, char *path, struct timespec *times, int flag); }
-+ SYS_NUMA_GETAFFINITY = 548 // { int numa_getaffinity(cpuwhich_t which, id_t id, struct vm_domain_policy_entry *policy); }
-+ SYS_NUMA_SETAFFINITY = 549 // { int numa_setaffinity(cpuwhich_t which, id_t id, const struct vm_domain_policy_entry *policy); }
-+ SYS_FDATASYNC = 550 // { int fdatasync(int fd); }
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
-index 44883141..4a6dfd4a 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
-@@ -1,4 +1,4 @@
--// mksysnum_freebsd.pl
-+// go run mksysnum.go https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build arm,freebsd
-@@ -7,347 +7,390 @@ package unix
-
- const (
- // SYS_NOSYS = 0; // { int nosys(void); } syscall nosys_args int
-- SYS_EXIT = 1 // { void sys_exit(int rval); } exit \
-- SYS_FORK = 2 // { int fork(void); }
-- SYS_READ = 3 // { ssize_t read(int fd, void *buf, \
-- SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, \
-- SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
-- SYS_CLOSE = 6 // { int close(int fd); }
-- SYS_WAIT4 = 7 // { int wait4(int pid, int *status, \
-- SYS_LINK = 9 // { int link(char *path, char *link); }
-- SYS_UNLINK = 10 // { int unlink(char *path); }
-- SYS_CHDIR = 12 // { int chdir(char *path); }
-- SYS_FCHDIR = 13 // { int fchdir(int fd); }
-- SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
-- SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
-- SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
-- SYS_OBREAK = 17 // { int obreak(char *nsize); } break \
-- SYS_GETPID = 20 // { pid_t getpid(void); }
-- SYS_MOUNT = 21 // { int mount(char *type, char *path, \
-- SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
-- SYS_SETUID = 23 // { int setuid(uid_t uid); }
-- SYS_GETUID = 24 // { uid_t getuid(void); }
-- SYS_GETEUID = 25 // { uid_t geteuid(void); }
-- SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, \
-- SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, \
-- SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, \
-- SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, \
-- SYS_ACCEPT = 30 // { int accept(int s, \
-- SYS_GETPEERNAME = 31 // { int getpeername(int fdes, \
-- SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, \
-- SYS_ACCESS = 33 // { int access(char *path, int amode); }
-- SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
-- SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
-- SYS_SYNC = 36 // { int sync(void); }
-- SYS_KILL = 37 // { int kill(int pid, int signum); }
-- SYS_GETPPID = 39 // { pid_t getppid(void); }
-- SYS_DUP = 41 // { int dup(u_int fd); }
-- SYS_PIPE = 42 // { int pipe(void); }
-- SYS_GETEGID = 43 // { gid_t getegid(void); }
-- SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, \
-- SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, \
-- SYS_GETGID = 47 // { gid_t getgid(void); }
-- SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int \
-- SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
-- SYS_ACCT = 51 // { int acct(char *path); }
-- SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, \
-- SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, \
-- SYS_REBOOT = 55 // { int reboot(int opt); }
-- SYS_REVOKE = 56 // { int revoke(char *path); }
-- SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
-- SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, \
-- SYS_EXECVE = 59 // { int execve(char *fname, char **argv, \
-- SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args \
-- SYS_CHROOT = 61 // { int chroot(char *path); }
-- SYS_MSYNC = 65 // { int msync(void *addr, size_t len, \
-- SYS_VFORK = 66 // { int vfork(void); }
-- SYS_SBRK = 69 // { int sbrk(int incr); }
-- SYS_SSTK = 70 // { int sstk(int incr); }
-- SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise \
-- SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
-- SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, \
-- SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, \
-- SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, \
-- SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, \
-- SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, \
-- SYS_GETPGRP = 81 // { int getpgrp(void); }
-- SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
-- SYS_SETITIMER = 83 // { int setitimer(u_int which, struct \
-- SYS_SWAPON = 85 // { int swapon(char *name); }
-- SYS_GETITIMER = 86 // { int getitimer(u_int which, \
-- SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
-- SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
-- SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
-- SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, \
-- SYS_FSYNC = 95 // { int fsync(int fd); }
-- SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, \
-- SYS_SOCKET = 97 // { int socket(int domain, int type, \
-- SYS_CONNECT = 98 // { int connect(int s, caddr_t name, \
-- SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
-- SYS_BIND = 104 // { int bind(int s, caddr_t name, \
-- SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, \
-- SYS_LISTEN = 106 // { int listen(int s, int backlog); }
-- SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, \
-- SYS_GETRUSAGE = 117 // { int getrusage(int who, \
-- SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, \
-- SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, \
-- SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, \
-- SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, \
-- SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
-- SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
-- SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
-- SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
-- SYS_RENAME = 128 // { int rename(char *from, char *to); }
-- SYS_FLOCK = 131 // { int flock(int fd, int how); }
-- SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
-- SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, \
-- SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
-- SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, \
-- SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
-- SYS_RMDIR = 137 // { int rmdir(char *path); }
-- SYS_UTIMES = 138 // { int utimes(char *path, \
-- SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, \
-- SYS_SETSID = 147 // { int setsid(void); }
-- SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, \
-- SYS_LGETFH = 160 // { int lgetfh(char *fname, \
-- SYS_GETFH = 161 // { int getfh(char *fname, \
-- SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
-- SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, \
-- SYS_FREEBSD6_PREAD = 173 // { ssize_t freebsd6_pread(int fd, void *buf, \
-- SYS_FREEBSD6_PWRITE = 174 // { ssize_t freebsd6_pwrite(int fd, \
-- SYS_SETFIB = 175 // { int setfib(int fibnum); }
-- SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
-- SYS_SETGID = 181 // { int setgid(gid_t gid); }
-- SYS_SETEGID = 182 // { int setegid(gid_t egid); }
-- SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
-- SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
-- SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
-- SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
-- SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
-- SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
-- SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, \
-- SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, \
-- SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, \
-- SYS_FREEBSD6_MMAP = 197 // { caddr_t freebsd6_mmap(caddr_t addr, \
-- SYS_FREEBSD6_LSEEK = 199 // { off_t freebsd6_lseek(int fd, int pad, \
-- SYS_FREEBSD6_TRUNCATE = 200 // { int freebsd6_truncate(char *path, int pad, \
-- SYS_FREEBSD6_FTRUNCATE = 201 // { int freebsd6_ftruncate(int fd, int pad, \
-- SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, \
-- SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
-- SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
-- SYS_UNDELETE = 205 // { int undelete(char *path); }
-- SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
-- SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
-- SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, \
-- SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, \
-- SYS_CLOCK_SETTIME = 233 // { int clock_settime( \
-- SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, \
-- SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, \
-- SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
-- SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, \
-- SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct \
-- SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
-- SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, \
-- SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
-- SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( \
-- SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( \
-- SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,\
-- SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
-- SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, \
-- SYS_RFORK = 251 // { int rfork(int flags); }
-- SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, \
-- SYS_ISSETUGID = 253 // { int issetugid(void); }
-- SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
-- SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, \
-- SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
-- SYS_LUTIMES = 276 // { int lutimes(char *path, \
-- SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
-- SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
-- SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
-- SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, \
-- SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, \
-- SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, \
-- SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, \
-- SYS_MODNEXT = 300 // { int modnext(int modid); }
-- SYS_MODSTAT = 301 // { int modstat(int modid, \
-- SYS_MODFNEXT = 302 // { int modfnext(int modid); }
-- SYS_MODFIND = 303 // { int modfind(const char *name); }
-- SYS_KLDLOAD = 304 // { int kldload(const char *file); }
-- SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
-- SYS_KLDFIND = 306 // { int kldfind(const char *file); }
-- SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
-- SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct \
-- SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
-- SYS_GETSID = 310 // { int getsid(pid_t pid); }
-- SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, \
-- SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, \
-- SYS_YIELD = 321 // { int yield(void); }
-- SYS_MLOCKALL = 324 // { int mlockall(int how); }
-- SYS_MUNLOCKALL = 325 // { int munlockall(void); }
-- SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
-- SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, \
-- SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct \
-- SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int \
-- SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
-- SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
-- SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
-- SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
-- SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, \
-- SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
-- SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, \
-- SYS_JAIL = 338 // { int jail(struct jail *jail); }
-- SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, \
-- SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
-- SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
-- SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, \
-- SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, \
-- SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, \
-- SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, \
-- SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, \
-- SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, \
-- SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, \
-- SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, \
-- SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, \
-- SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, \
-- SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, \
-- SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( \
-- SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( \
-- SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, \
-- SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, \
-- SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, \
-- SYS_KQUEUE = 362 // { int kqueue(void); }
-- SYS_KEVENT = 363 // { int kevent(int fd, \
-- SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, \
-- SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, \
-- SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, \
-- SYS___SETUGID = 374 // { int __setugid(int flag); }
-- SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
-- SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, \
-- SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
-- SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
-- SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, \
-- SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, \
-- SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, \
-- SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, \
-- SYS_KENV = 390 // { int kenv(int what, const char *name, \
-- SYS_LCHFLAGS = 391 // { int lchflags(const char *path, \
-- SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, \
-- SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, \
-- SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, \
-- SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, \
-- SYS_STATFS = 396 // { int statfs(char *path, \
-- SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
-- SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, \
-- SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, \
-- SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, \
-- SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, \
-- SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( \
-- SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( \
-- SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( \
-- SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, \
-- SYS_SIGACTION = 416 // { int sigaction(int sig, \
-- SYS_SIGRETURN = 417 // { int sigreturn( \
-- SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
-- SYS_SETCONTEXT = 422 // { int setcontext( \
-- SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, \
-- SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
-- SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, \
-- SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, \
-- SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, \
-- SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, \
-- SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, \
-- SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, \
-- SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
-- SYS_THR_SELF = 432 // { int thr_self(long *id); }
-- SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
-- SYS__UMTX_LOCK = 434 // { int _umtx_lock(struct umtx *umtx); }
-- SYS__UMTX_UNLOCK = 435 // { int _umtx_unlock(struct umtx *umtx); }
-- SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
-- SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, \
-- SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( \
-- SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( \
-- SYS_THR_SUSPEND = 442 // { int thr_suspend( \
-- SYS_THR_WAKE = 443 // { int thr_wake(long id); }
-- SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
-- SYS_AUDIT = 445 // { int audit(const void *record, \
-- SYS_AUDITON = 446 // { int auditon(int cmd, void *data, \
-- SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
-- SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
-- SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
-- SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
-- SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( \
-- SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( \
-- SYS_AUDITCTL = 453 // { int auditctl(char *path); }
-- SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, \
-- SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, \
-- SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
-- SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
-- SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
-- SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, \
-- SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, \
-- SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, \
-- SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, \
-- SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, \
-- SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
-- SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
-- SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
-- SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, \
-- SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
-- SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
-- SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, \
-- SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, \
-- SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, \
-- SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, \
-- SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, \
-- SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, \
-- SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, \
-- SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, \
-- SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, \
-- SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, \
-- SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, \
-- SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
-- SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
-- SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, \
-- SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, \
-- SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, \
-- SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, \
-- SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, \
-- SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
-- SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
-- SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, \
-- SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, \
-- SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
-- SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
-- SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
-- SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, \
-- SYS_CAP_ENTER = 516 // { int cap_enter(void); }
-- SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
-- SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
-- SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
-- SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
-- SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, \
-- SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, \
-- SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
-- SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, \
-- SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, \
-- SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, \
-- SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, \
-- SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, \
-- SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, \
-- SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, \
-- SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, \
-- SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, \
-- SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, \
-- SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, \
-- SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, \
-- SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, \
-- SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, \
-- SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, \
-- SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, \
-- SYS_ACCEPT4 = 541 // { int accept4(int s, \
-- SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
-- SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, \
-- SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, \
-- SYS_FUTIMENS = 546 // { int futimens(int fd, \
-- SYS_UTIMENSAT = 547 // { int utimensat(int fd, \
-+ SYS_EXIT = 1 // { void sys_exit(int rval); } exit sys_exit_args void
-+ SYS_FORK = 2 // { int fork(void); }
-+ SYS_READ = 3 // { ssize_t read(int fd, void *buf, size_t nbyte); }
-+ SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); }
-+ SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
-+ SYS_CLOSE = 6 // { int close(int fd); }
-+ SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); }
-+ SYS_LINK = 9 // { int link(char *path, char *link); }
-+ SYS_UNLINK = 10 // { int unlink(char *path); }
-+ SYS_CHDIR = 12 // { int chdir(char *path); }
-+ SYS_FCHDIR = 13 // { int fchdir(int fd); }
-+ SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
-+ SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
-+ SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
-+ SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int
-+ SYS_GETPID = 20 // { pid_t getpid(void); }
-+ SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); }
-+ SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
-+ SYS_SETUID = 23 // { int setuid(uid_t uid); }
-+ SYS_GETUID = 24 // { uid_t getuid(void); }
-+ SYS_GETEUID = 25 // { uid_t geteuid(void); }
-+ SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); }
-+ SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); }
-+ SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, int flags); }
-+ SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, struct sockaddr * __restrict from, __socklen_t * __restrict fromlenaddr); }
-+ SYS_ACCEPT = 30 // { int accept(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen); }
-+ SYS_GETPEERNAME = 31 // { int getpeername(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
-+ SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
-+ SYS_ACCESS = 33 // { int access(char *path, int amode); }
-+ SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
-+ SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
-+ SYS_SYNC = 36 // { int sync(void); }
-+ SYS_KILL = 37 // { int kill(int pid, int signum); }
-+ SYS_GETPPID = 39 // { pid_t getppid(void); }
-+ SYS_DUP = 41 // { int dup(u_int fd); }
-+ SYS_PIPE = 42 // { int pipe(void); }
-+ SYS_GETEGID = 43 // { gid_t getegid(void); }
-+ SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); }
-+ SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); }
-+ SYS_GETGID = 47 // { gid_t getgid(void); }
-+ SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int namelen); }
-+ SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
-+ SYS_ACCT = 51 // { int acct(char *path); }
-+ SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, stack_t *oss); }
-+ SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, caddr_t data); }
-+ SYS_REBOOT = 55 // { int reboot(int opt); }
-+ SYS_REVOKE = 56 // { int revoke(char *path); }
-+ SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
-+ SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, size_t count); }
-+ SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); }
-+ SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int
-+ SYS_CHROOT = 61 // { int chroot(char *path); }
-+ SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); }
-+ SYS_VFORK = 66 // { int vfork(void); }
-+ SYS_SBRK = 69 // { int sbrk(int incr); }
-+ SYS_SSTK = 70 // { int sstk(int incr); }
-+ SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise ovadvise_args int
-+ SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
-+ SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, int prot); }
-+ SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); }
-+ SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); }
-+ SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); }
-+ SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); }
-+ SYS_GETPGRP = 81 // { int getpgrp(void); }
-+ SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
-+ SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); }
-+ SYS_SWAPON = 85 // { int swapon(char *name); }
-+ SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); }
-+ SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
-+ SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
-+ SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
-+ SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
-+ SYS_FSYNC = 95 // { int fsync(int fd); }
-+ SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); }
-+ SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); }
-+ SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); }
-+ SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
-+ SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); }
-+ SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); }
-+ SYS_LISTEN = 106 // { int listen(int s, int backlog); }
-+ SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); }
-+ SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); }
-+ SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); }
-+ SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); }
-+ SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); }
-+ SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); }
-+ SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
-+ SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
-+ SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
-+ SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
-+ SYS_RENAME = 128 // { int rename(char *from, char *to); }
-+ SYS_FLOCK = 131 // { int flock(int fd, int how); }
-+ SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
-+ SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); }
-+ SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
-+ SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); }
-+ SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
-+ SYS_RMDIR = 137 // { int rmdir(char *path); }
-+ SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); }
-+ SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); }
-+ SYS_SETSID = 147 // { int setsid(void); }
-+ SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); }
-+ SYS_NLM_SYSCALL = 154 // { int nlm_syscall(int debug_level, int grace_period, int addr_count, char **addrs); }
-+ SYS_NFSSVC = 155 // { int nfssvc(int flag, caddr_t argp); }
-+ SYS_LGETFH = 160 // { int lgetfh(char *fname, struct fhandle *fhp); }
-+ SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); }
-+ SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
-+ SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); }
-+ SYS_SEMSYS = 169 // { int semsys(int which, int a2, int a3, int a4, int a5); }
-+ SYS_MSGSYS = 170 // { int msgsys(int which, int a2, int a3, int a4, int a5, int a6); }
-+ SYS_SHMSYS = 171 // { int shmsys(int which, int a2, int a3, int a4); }
-+ SYS_SETFIB = 175 // { int setfib(int fibnum); }
-+ SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
-+ SYS_SETGID = 181 // { int setgid(gid_t gid); }
-+ SYS_SETEGID = 182 // { int setegid(gid_t egid); }
-+ SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
-+ SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
-+ SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
-+ SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
-+ SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
-+ SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
-+ SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int
-+ SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int
-+ SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, u_int count, long *basep); }
-+ SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int
-+ SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
-+ SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
-+ SYS_UNDELETE = 205 // { int undelete(char *path); }
-+ SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
-+ SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
-+ SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, int timeout); }
-+ SYS_SEMGET = 221 // { int semget(key_t key, int nsems, int semflg); }
-+ SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, size_t nsops); }
-+ SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); }
-+ SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
-+ SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
-+ SYS_SHMAT = 228 // { int shmat(int shmid, const void *shmaddr, int shmflg); }
-+ SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); }
-+ SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); }
-+ SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); }
-+ SYS_CLOCK_SETTIME = 233 // { int clock_settime( clockid_t clock_id, const struct timespec *tp); }
-+ SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); }
-+ SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, struct sigevent *evp, int *timerid); }
-+ SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
-+ SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue); }
-+ SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct itimerspec *value); }
-+ SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
-+ SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
-+ SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
-+ SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( struct ffclock_estimate *cest); }
-+ SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( struct ffclock_estimate *cest); }
-+ SYS_CLOCK_NANOSLEEP = 244 // { int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); }
-+ SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,int which, clockid_t *clock_id); }
-+ SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
-+ SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); }
-+ SYS_RFORK = 251 // { int rfork(int flags); }
-+ SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); }
-+ SYS_ISSETUGID = 253 // { int issetugid(void); }
-+ SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
-+ SYS_AIO_READ = 255 // { int aio_read(struct aiocb *aiocbp); }
-+ SYS_AIO_WRITE = 256 // { int aio_write(struct aiocb *aiocbp); }
-+ SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); }
-+ SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, size_t count); }
-+ SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
-+ SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); }
-+ SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
-+ SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
-+ SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
-+ SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
-+ SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
-+ SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); }
-+ SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); }
-+ SYS_MODNEXT = 300 // { int modnext(int modid); }
-+ SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat *stat); }
-+ SYS_MODFNEXT = 302 // { int modfnext(int modid); }
-+ SYS_MODFIND = 303 // { int modfind(const char *name); }
-+ SYS_KLDLOAD = 304 // { int kldload(const char *file); }
-+ SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
-+ SYS_KLDFIND = 306 // { int kldfind(const char *file); }
-+ SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
-+ SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat* stat); }
-+ SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
-+ SYS_GETSID = 310 // { int getsid(pid_t pid); }
-+ SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, uid_t suid); }
-+ SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
-+ SYS_AIO_RETURN = 314 // { ssize_t aio_return(struct aiocb *aiocbp); }
-+ SYS_AIO_SUSPEND = 315 // { int aio_suspend( struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); }
-+ SYS_AIO_CANCEL = 316 // { int aio_cancel(int fd, struct aiocb *aiocbp); }
-+ SYS_AIO_ERROR = 317 // { int aio_error(struct aiocb *aiocbp); }
-+ SYS_YIELD = 321 // { int yield(void); }
-+ SYS_MLOCKALL = 324 // { int mlockall(int how); }
-+ SYS_MUNLOCKALL = 325 // { int munlockall(void); }
-+ SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
-+ SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, const struct sched_param *param); }
-+ SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct sched_param *param); }
-+ SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); }
-+ SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
-+ SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
-+ SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
-+ SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
-+ SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, struct timespec *interval); }
-+ SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
-+ SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, void *data); }
-+ SYS_JAIL = 338 // { int jail(struct jail *jail); }
-+ SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, const sigset_t *set, sigset_t *oset); }
-+ SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
-+ SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
-+ SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, siginfo_t *info, const struct timespec *timeout); }
-+ SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, siginfo_t *info); }
-+ SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, acl_type_t type); }
-+ SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, acl_type_t type); }
-+ SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); }
-+ SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); }
-+ SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete( struct aiocb **aiocbp, struct timespec *timeout); }
-+ SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
-+ SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
-+ SYS_KQUEUE = 362 // { int kqueue(void); }
-+ SYS_KEVENT = 363 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
-+ SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, int attrnamespace, const char *attrname); }
-+ SYS___SETUGID = 374 // { int __setugid(int flag); }
-+ SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
-+ SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, unsigned int iovcnt, int flags); }
-+ SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
-+ SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
-+ SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, struct mac *mac_p); }
-+ SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, struct mac *mac_p); }
-+ SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, struct mac *mac_p); }
-+ SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, struct mac *mac_p); }
-+ SYS_KENV = 390 // { int kenv(int what, const char *name, char *value, int len); }
-+ SYS_LCHFLAGS = 391 // { int lchflags(const char *path, u_long flags); }
-+ SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); }
-+ SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
-+ SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, int call, void *arg); }
-+ SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, long bufsize, int mode); }
-+ SYS_STATFS = 396 // { int statfs(char *path, struct statfs *buf); }
-+ SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
-+ SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); }
-+ SYS_KSEM_CLOSE = 400 // { int ksem_close(semid_t id); }
-+ SYS_KSEM_POST = 401 // { int ksem_post(semid_t id); }
-+ SYS_KSEM_WAIT = 402 // { int ksem_wait(semid_t id); }
-+ SYS_KSEM_TRYWAIT = 403 // { int ksem_trywait(semid_t id); }
-+ SYS_KSEM_INIT = 404 // { int ksem_init(semid_t *idp, unsigned int value); }
-+ SYS_KSEM_OPEN = 405 // { int ksem_open(semid_t *idp, const char *name, int oflag, mode_t mode, unsigned int value); }
-+ SYS_KSEM_UNLINK = 406 // { int ksem_unlink(const char *name); }
-+ SYS_KSEM_GETVALUE = 407 // { int ksem_getvalue(semid_t id, int *val); }
-+ SYS_KSEM_DESTROY = 408 // { int ksem_destroy(semid_t id); }
-+ SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, struct mac *mac_p); }
-+ SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, struct mac *mac_p); }
-+ SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, struct mac *mac_p); }
-+ SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( const char *path, int attrnamespace, const char *attrname); }
-+ SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, char **envv, struct mac *mac_p); }
-+ SYS_SIGACTION = 416 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); }
-+ SYS_SIGRETURN = 417 // { int sigreturn( const struct __ucontext *sigcntxp); }
-+ SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
-+ SYS_SETCONTEXT = 422 // { int setcontext( const struct __ucontext *ucp); }
-+ SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, const struct __ucontext *ucp); }
-+ SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
-+ SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, acl_type_t type); }
-+ SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, int *sig); }
-+ SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, int flags); }
-+ SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
-+ SYS_THR_SELF = 432 // { int thr_self(long *id); }
-+ SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
-+ SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
-+ SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); }
-+ SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( const char *path, int attrnamespace, void *data, size_t nbytes); }
-+ SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( const char *path, int attrnamespace, void *data, size_t nbytes); }
-+ SYS_KSEM_TIMEDWAIT = 441 // { int ksem_timedwait(semid_t id, const struct timespec *abstime); }
-+ SYS_THR_SUSPEND = 442 // { int thr_suspend( const struct timespec *timeout); }
-+ SYS_THR_WAKE = 443 // { int thr_wake(long id); }
-+ SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
-+ SYS_AUDIT = 445 // { int audit(const void *record, u_int length); }
-+ SYS_AUDITON = 446 // { int auditon(int cmd, void *data, u_int length); }
-+ SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
-+ SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
-+ SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
-+ SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
-+ SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
-+ SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
-+ SYS_AUDITCTL = 453 // { int auditctl(char *path); }
-+ SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, u_long val, void *uaddr1, void *uaddr2); }
-+ SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, int param_size); }
-+ SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
-+ SYS_KMQ_OPEN = 457 // { int kmq_open(const char *path, int flags, mode_t mode, const struct mq_attr *attr); }
-+ SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); }
-+ SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); }
-+ SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len,unsigned msg_prio, const struct timespec *abs_timeout);}
-+ SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); }
-+ SYS_KMQ_UNLINK = 462 // { int kmq_unlink(const char *path); }
-+ SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
-+ SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
-+ SYS_AIO_FSYNC = 465 // { int aio_fsync(int op, struct aiocb *aiocbp); }
-+ SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, lwpid_t lwpid, struct rtprio *rtp); }
-+ SYS_SCTP_PEELOFF = 471 // { int sctp_peeloff(int sd, uint32_t name); }
-+ SYS_SCTP_GENERIC_SENDMSG = 472 // { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
-+ SYS_SCTP_GENERIC_SENDMSG_IOV = 473 // { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
-+ SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr * from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); }
-+ SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, size_t nbyte, off_t offset); }
-+ SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, size_t nbyte, off_t offset); }
-+ SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, off_t pos); }
-+ SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, int whence); }
-+ SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
-+ SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
-+ SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
-+ SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, mode_t mode); }
-+ SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
-+ SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
-+ SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, cpusetid_t setid); }
-+ SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, cpuwhich_t which, id_t id, cpusetid_t *setid); }
-+ SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, cpuset_t *mask); }
-+ SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, const cpuset_t *mask); }
-+ SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, int flag); }
-+ SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, int flag); }
-+ SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, gid_t gid, int flag); }
-+ SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, char **envv); }
-+ SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, struct stat *buf, int flag); }
-+ SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, struct timeval *times); }
-+ SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flag); }
-+ SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
-+ SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
-+ SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); }
-+ SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, mode_t mode); }
-+ SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); }
-+ SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, char *new); }
-+ SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, char *path2); }
-+ SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
-+ SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
-+ SYS_GSSD_SYSCALL = 505 // { int gssd_syscall(char *path); }
-+ SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, unsigned int iovcnt, int flags); }
-+ SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, unsigned int iovcnt, int flags); }
-+ SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
-+ SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
-+ SYS___SEMCTL = 510 // { int __semctl(int semid, int semnum, int cmd, union semun *arg); }
-+ SYS_MSGCTL = 511 // { int msgctl(int msqid, int cmd, struct msqid_ds *buf); }
-+ SYS_SHMCTL = 512 // { int shmctl(int shmid, int cmd, struct shmid_ds *buf); }
-+ SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
-+ SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, int fd, cap_rights_t *rightsp); }
-+ SYS_CAP_ENTER = 516 // { int cap_enter(void); }
-+ SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
-+ SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
-+ SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
-+ SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
-+ SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *sm); }
-+ SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, size_t namelen); }
-+ SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
-+ SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, off_t offset, off_t len); }
-+ SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, off_t len, int advice); }
-+ SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, int *status, int options, struct __wrusage *wrusage, siginfo_t *info); }
-+ SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, cap_rights_t *rightsp); }
-+ SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, const u_long *cmds, size_t ncmds); }
-+ SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, u_long *cmds, size_t maxcmds); }
-+ SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, uint32_t fcntlrights); }
-+ SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, uint32_t *fcntlrightsp); }
-+ SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, int namelen); }
-+ SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, int namelen); }
-+ SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, u_long flags, int atflag); }
-+ SYS_ACCEPT4 = 541 // { int accept4(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen, int flags); }
-+ SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
-+ SYS_AIO_MLOCK = 543 // { int aio_mlock(struct aiocb *aiocbp); }
-+ SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, int com, void *data); }
-+ SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *set); }
-+ SYS_FUTIMENS = 546 // { int futimens(int fd, struct timespec *times); }
-+ SYS_UTIMENSAT = 547 // { int utimensat(int fd, char *path, struct timespec *times, int flag); }
-+ SYS_NUMA_GETAFFINITY = 548 // { int numa_getaffinity(cpuwhich_t which, id_t id, struct vm_domain_policy_entry *policy); }
-+ SYS_NUMA_SETAFFINITY = 549 // { int numa_setaffinity(cpuwhich_t which, id_t id, const struct vm_domain_policy_entry *policy); }
-+ SYS_FDATASYNC = 550 // { int fdatasync(int fd); }
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go
-new file mode 100644
-index 00000000..3e51af8e
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go
-@@ -0,0 +1,396 @@
-+// go run mksysnum.go https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build arm64,freebsd
-+
-+package unix
-+
-+const (
-+ // SYS_NOSYS = 0; // { int nosys(void); } syscall nosys_args int
-+ SYS_EXIT = 1 // { void sys_exit(int rval); } exit sys_exit_args void
-+ SYS_FORK = 2 // { int fork(void); }
-+ SYS_READ = 3 // { ssize_t read(int fd, void *buf, size_t nbyte); }
-+ SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); }
-+ SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
-+ SYS_CLOSE = 6 // { int close(int fd); }
-+ SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); }
-+ SYS_LINK = 9 // { int link(char *path, char *link); }
-+ SYS_UNLINK = 10 // { int unlink(char *path); }
-+ SYS_CHDIR = 12 // { int chdir(char *path); }
-+ SYS_FCHDIR = 13 // { int fchdir(int fd); }
-+ SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
-+ SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
-+ SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
-+ SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int
-+ SYS_GETPID = 20 // { pid_t getpid(void); }
-+ SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); }
-+ SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
-+ SYS_SETUID = 23 // { int setuid(uid_t uid); }
-+ SYS_GETUID = 24 // { uid_t getuid(void); }
-+ SYS_GETEUID = 25 // { uid_t geteuid(void); }
-+ SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); }
-+ SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); }
-+ SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, int flags); }
-+ SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, struct sockaddr * __restrict from, __socklen_t * __restrict fromlenaddr); }
-+ SYS_ACCEPT = 30 // { int accept(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen); }
-+ SYS_GETPEERNAME = 31 // { int getpeername(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
-+ SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
-+ SYS_ACCESS = 33 // { int access(char *path, int amode); }
-+ SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
-+ SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
-+ SYS_SYNC = 36 // { int sync(void); }
-+ SYS_KILL = 37 // { int kill(int pid, int signum); }
-+ SYS_GETPPID = 39 // { pid_t getppid(void); }
-+ SYS_DUP = 41 // { int dup(u_int fd); }
-+ SYS_PIPE = 42 // { int pipe(void); }
-+ SYS_GETEGID = 43 // { gid_t getegid(void); }
-+ SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); }
-+ SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); }
-+ SYS_GETGID = 47 // { gid_t getgid(void); }
-+ SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int namelen); }
-+ SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
-+ SYS_ACCT = 51 // { int acct(char *path); }
-+ SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, stack_t *oss); }
-+ SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, caddr_t data); }
-+ SYS_REBOOT = 55 // { int reboot(int opt); }
-+ SYS_REVOKE = 56 // { int revoke(char *path); }
-+ SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
-+ SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, size_t count); }
-+ SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); }
-+ SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int
-+ SYS_CHROOT = 61 // { int chroot(char *path); }
-+ SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); }
-+ SYS_VFORK = 66 // { int vfork(void); }
-+ SYS_SBRK = 69 // { int sbrk(int incr); }
-+ SYS_SSTK = 70 // { int sstk(int incr); }
-+ SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise ovadvise_args int
-+ SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
-+ SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, int prot); }
-+ SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); }
-+ SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); }
-+ SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); }
-+ SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); }
-+ SYS_GETPGRP = 81 // { int getpgrp(void); }
-+ SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
-+ SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); }
-+ SYS_SWAPON = 85 // { int swapon(char *name); }
-+ SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); }
-+ SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
-+ SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
-+ SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
-+ SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
-+ SYS_FSYNC = 95 // { int fsync(int fd); }
-+ SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); }
-+ SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); }
-+ SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); }
-+ SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
-+ SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); }
-+ SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); }
-+ SYS_LISTEN = 106 // { int listen(int s, int backlog); }
-+ SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); }
-+ SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); }
-+ SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); }
-+ SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); }
-+ SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); }
-+ SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); }
-+ SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
-+ SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
-+ SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
-+ SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
-+ SYS_RENAME = 128 // { int rename(char *from, char *to); }
-+ SYS_FLOCK = 131 // { int flock(int fd, int how); }
-+ SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
-+ SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); }
-+ SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
-+ SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); }
-+ SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
-+ SYS_RMDIR = 137 // { int rmdir(char *path); }
-+ SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); }
-+ SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); }
-+ SYS_SETSID = 147 // { int setsid(void); }
-+ SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); }
-+ SYS_NLM_SYSCALL = 154 // { int nlm_syscall(int debug_level, int grace_period, int addr_count, char **addrs); }
-+ SYS_NFSSVC = 155 // { int nfssvc(int flag, caddr_t argp); }
-+ SYS_LGETFH = 160 // { int lgetfh(char *fname, struct fhandle *fhp); }
-+ SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); }
-+ SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
-+ SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); }
-+ SYS_SEMSYS = 169 // { int semsys(int which, int a2, int a3, int a4, int a5); }
-+ SYS_MSGSYS = 170 // { int msgsys(int which, int a2, int a3, int a4, int a5, int a6); }
-+ SYS_SHMSYS = 171 // { int shmsys(int which, int a2, int a3, int a4); }
-+ SYS_SETFIB = 175 // { int setfib(int fibnum); }
-+ SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
-+ SYS_SETGID = 181 // { int setgid(gid_t gid); }
-+ SYS_SETEGID = 182 // { int setegid(gid_t egid); }
-+ SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
-+ SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
-+ SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
-+ SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
-+ SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
-+ SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
-+ SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int
-+ SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int
-+ SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, u_int count, long *basep); }
-+ SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int
-+ SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
-+ SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
-+ SYS_UNDELETE = 205 // { int undelete(char *path); }
-+ SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
-+ SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
-+ SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, int timeout); }
-+ SYS_SEMGET = 221 // { int semget(key_t key, int nsems, int semflg); }
-+ SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, size_t nsops); }
-+ SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); }
-+ SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
-+ SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
-+ SYS_SHMAT = 228 // { int shmat(int shmid, const void *shmaddr, int shmflg); }
-+ SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); }
-+ SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); }
-+ SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); }
-+ SYS_CLOCK_SETTIME = 233 // { int clock_settime( clockid_t clock_id, const struct timespec *tp); }
-+ SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); }
-+ SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, struct sigevent *evp, int *timerid); }
-+ SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
-+ SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue); }
-+ SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct itimerspec *value); }
-+ SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
-+ SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
-+ SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
-+ SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( struct ffclock_estimate *cest); }
-+ SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( struct ffclock_estimate *cest); }
-+ SYS_CLOCK_NANOSLEEP = 244 // { int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); }
-+ SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,int which, clockid_t *clock_id); }
-+ SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
-+ SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); }
-+ SYS_RFORK = 251 // { int rfork(int flags); }
-+ SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); }
-+ SYS_ISSETUGID = 253 // { int issetugid(void); }
-+ SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
-+ SYS_AIO_READ = 255 // { int aio_read(struct aiocb *aiocbp); }
-+ SYS_AIO_WRITE = 256 // { int aio_write(struct aiocb *aiocbp); }
-+ SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); }
-+ SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, size_t count); }
-+ SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
-+ SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); }
-+ SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
-+ SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
-+ SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
-+ SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
-+ SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
-+ SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); }
-+ SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); }
-+ SYS_MODNEXT = 300 // { int modnext(int modid); }
-+ SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat *stat); }
-+ SYS_MODFNEXT = 302 // { int modfnext(int modid); }
-+ SYS_MODFIND = 303 // { int modfind(const char *name); }
-+ SYS_KLDLOAD = 304 // { int kldload(const char *file); }
-+ SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
-+ SYS_KLDFIND = 306 // { int kldfind(const char *file); }
-+ SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
-+ SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat* stat); }
-+ SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
-+ SYS_GETSID = 310 // { int getsid(pid_t pid); }
-+ SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, uid_t suid); }
-+ SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
-+ SYS_AIO_RETURN = 314 // { ssize_t aio_return(struct aiocb *aiocbp); }
-+ SYS_AIO_SUSPEND = 315 // { int aio_suspend( struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); }
-+ SYS_AIO_CANCEL = 316 // { int aio_cancel(int fd, struct aiocb *aiocbp); }
-+ SYS_AIO_ERROR = 317 // { int aio_error(struct aiocb *aiocbp); }
-+ SYS_YIELD = 321 // { int yield(void); }
-+ SYS_MLOCKALL = 324 // { int mlockall(int how); }
-+ SYS_MUNLOCKALL = 325 // { int munlockall(void); }
-+ SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
-+ SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, const struct sched_param *param); }
-+ SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct sched_param *param); }
-+ SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); }
-+ SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
-+ SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
-+ SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
-+ SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
-+ SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, struct timespec *interval); }
-+ SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
-+ SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, void *data); }
-+ SYS_JAIL = 338 // { int jail(struct jail *jail); }
-+ SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, const sigset_t *set, sigset_t *oset); }
-+ SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
-+ SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
-+ SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, siginfo_t *info, const struct timespec *timeout); }
-+ SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, siginfo_t *info); }
-+ SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, acl_type_t type); }
-+ SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, acl_type_t type); }
-+ SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); }
-+ SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); }
-+ SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); }
-+ SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete( struct aiocb **aiocbp, struct timespec *timeout); }
-+ SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
-+ SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
-+ SYS_KQUEUE = 362 // { int kqueue(void); }
-+ SYS_KEVENT = 363 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
-+ SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, int attrnamespace, const char *attrname); }
-+ SYS___SETUGID = 374 // { int __setugid(int flag); }
-+ SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
-+ SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, unsigned int iovcnt, int flags); }
-+ SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
-+ SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
-+ SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, struct mac *mac_p); }
-+ SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, struct mac *mac_p); }
-+ SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, struct mac *mac_p); }
-+ SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, struct mac *mac_p); }
-+ SYS_KENV = 390 // { int kenv(int what, const char *name, char *value, int len); }
-+ SYS_LCHFLAGS = 391 // { int lchflags(const char *path, u_long flags); }
-+ SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); }
-+ SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
-+ SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, int call, void *arg); }
-+ SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, long bufsize, int mode); }
-+ SYS_STATFS = 396 // { int statfs(char *path, struct statfs *buf); }
-+ SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
-+ SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); }
-+ SYS_KSEM_CLOSE = 400 // { int ksem_close(semid_t id); }
-+ SYS_KSEM_POST = 401 // { int ksem_post(semid_t id); }
-+ SYS_KSEM_WAIT = 402 // { int ksem_wait(semid_t id); }
-+ SYS_KSEM_TRYWAIT = 403 // { int ksem_trywait(semid_t id); }
-+ SYS_KSEM_INIT = 404 // { int ksem_init(semid_t *idp, unsigned int value); }
-+ SYS_KSEM_OPEN = 405 // { int ksem_open(semid_t *idp, const char *name, int oflag, mode_t mode, unsigned int value); }
-+ SYS_KSEM_UNLINK = 406 // { int ksem_unlink(const char *name); }
-+ SYS_KSEM_GETVALUE = 407 // { int ksem_getvalue(semid_t id, int *val); }
-+ SYS_KSEM_DESTROY = 408 // { int ksem_destroy(semid_t id); }
-+ SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, struct mac *mac_p); }
-+ SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, struct mac *mac_p); }
-+ SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, struct mac *mac_p); }
-+ SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
-+ SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( const char *path, int attrnamespace, const char *attrname); }
-+ SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, char **envv, struct mac *mac_p); }
-+ SYS_SIGACTION = 416 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); }
-+ SYS_SIGRETURN = 417 // { int sigreturn( const struct __ucontext *sigcntxp); }
-+ SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
-+ SYS_SETCONTEXT = 422 // { int setcontext( const struct __ucontext *ucp); }
-+ SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, const struct __ucontext *ucp); }
-+ SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
-+ SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, acl_type_t type); }
-+ SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, acl_type_t type, struct acl *aclp); }
-+ SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, int *sig); }
-+ SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, int flags); }
-+ SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
-+ SYS_THR_SELF = 432 // { int thr_self(long *id); }
-+ SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
-+ SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
-+ SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); }
-+ SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( const char *path, int attrnamespace, void *data, size_t nbytes); }
-+ SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( const char *path, int attrnamespace, void *data, size_t nbytes); }
-+ SYS_KSEM_TIMEDWAIT = 441 // { int ksem_timedwait(semid_t id, const struct timespec *abstime); }
-+ SYS_THR_SUSPEND = 442 // { int thr_suspend( const struct timespec *timeout); }
-+ SYS_THR_WAKE = 443 // { int thr_wake(long id); }
-+ SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
-+ SYS_AUDIT = 445 // { int audit(const void *record, u_int length); }
-+ SYS_AUDITON = 446 // { int auditon(int cmd, void *data, u_int length); }
-+ SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
-+ SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
-+ SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
-+ SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
-+ SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
-+ SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
-+ SYS_AUDITCTL = 453 // { int auditctl(char *path); }
-+ SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, u_long val, void *uaddr1, void *uaddr2); }
-+ SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, int param_size); }
-+ SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
-+ SYS_KMQ_OPEN = 457 // { int kmq_open(const char *path, int flags, mode_t mode, const struct mq_attr *attr); }
-+ SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); }
-+ SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); }
-+ SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len,unsigned msg_prio, const struct timespec *abs_timeout);}
-+ SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); }
-+ SYS_KMQ_UNLINK = 462 // { int kmq_unlink(const char *path); }
-+ SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
-+ SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
-+ SYS_AIO_FSYNC = 465 // { int aio_fsync(int op, struct aiocb *aiocbp); }
-+ SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, lwpid_t lwpid, struct rtprio *rtp); }
-+ SYS_SCTP_PEELOFF = 471 // { int sctp_peeloff(int sd, uint32_t name); }
-+ SYS_SCTP_GENERIC_SENDMSG = 472 // { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
-+ SYS_SCTP_GENERIC_SENDMSG_IOV = 473 // { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
-+ SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr * from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); }
-+ SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, size_t nbyte, off_t offset); }
-+ SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, size_t nbyte, off_t offset); }
-+ SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, off_t pos); }
-+ SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, int whence); }
-+ SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
-+ SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
-+ SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
-+ SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, mode_t mode); }
-+ SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
-+ SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
-+ SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, cpusetid_t setid); }
-+ SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, cpuwhich_t which, id_t id, cpusetid_t *setid); }
-+ SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, cpuset_t *mask); }
-+ SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, const cpuset_t *mask); }
-+ SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, int flag); }
-+ SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, int flag); }
-+ SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, gid_t gid, int flag); }
-+ SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, char **envv); }
-+ SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, struct stat *buf, int flag); }
-+ SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, struct timeval *times); }
-+ SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flag); }
-+ SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
-+ SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
-+ SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); }
-+ SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, mode_t mode); }
-+ SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); }
-+ SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, char *new); }
-+ SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, char *path2); }
-+ SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
-+ SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
-+ SYS_GSSD_SYSCALL = 505 // { int gssd_syscall(char *path); }
-+ SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, unsigned int iovcnt, int flags); }
-+ SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, unsigned int iovcnt, int flags); }
-+ SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
-+ SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
-+ SYS___SEMCTL = 510 // { int __semctl(int semid, int semnum, int cmd, union semun *arg); }
-+ SYS_MSGCTL = 511 // { int msgctl(int msqid, int cmd, struct msqid_ds *buf); }
-+ SYS_SHMCTL = 512 // { int shmctl(int shmid, int cmd, struct shmid_ds *buf); }
-+ SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
-+ SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, int fd, cap_rights_t *rightsp); }
-+ SYS_CAP_ENTER = 516 // { int cap_enter(void); }
-+ SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
-+ SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
-+ SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
-+ SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
-+ SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *sm); }
-+ SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, size_t namelen); }
-+ SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
-+ SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
-+ SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, off_t offset, off_t len); }
-+ SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, off_t len, int advice); }
-+ SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, int *status, int options, struct __wrusage *wrusage, siginfo_t *info); }
-+ SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, cap_rights_t *rightsp); }
-+ SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, const u_long *cmds, size_t ncmds); }
-+ SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, u_long *cmds, size_t maxcmds); }
-+ SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, uint32_t fcntlrights); }
-+ SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, uint32_t *fcntlrightsp); }
-+ SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, int namelen); }
-+ SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, int namelen); }
-+ SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, u_long flags, int atflag); }
-+ SYS_ACCEPT4 = 541 // { int accept4(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen, int flags); }
-+ SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
-+ SYS_AIO_MLOCK = 543 // { int aio_mlock(struct aiocb *aiocbp); }
-+ SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, int com, void *data); }
-+ SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *set); }
-+ SYS_FUTIMENS = 546 // { int futimens(int fd, struct timespec *times); }
-+ SYS_UTIMENSAT = 547 // { int utimensat(int fd, char *path, struct timespec *times, int flag); }
-+ SYS_NUMA_GETAFFINITY = 548 // { int numa_getaffinity(cpuwhich_t which, id_t id, struct vm_domain_policy_entry *policy); }
-+ SYS_NUMA_SETAFFINITY = 549 // { int numa_setaffinity(cpuwhich_t which, id_t id, const struct vm_domain_policy_entry *policy); }
-+ SYS_FDATASYNC = 550 // { int fdatasync(int fd); }
-+)
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
-index cef4fed0..54559a89 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
-@@ -1,4 +1,4 @@
--// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include -m32 /tmp/include/asm/unistd.h
-+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include -m32 /tmp/include/asm/unistd.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build 386,linux
-@@ -6,383 +6,431 @@
- package unix
-
- const (
-- SYS_RESTART_SYSCALL = 0
-- SYS_EXIT = 1
-- SYS_FORK = 2
-- SYS_READ = 3
-- SYS_WRITE = 4
-- SYS_OPEN = 5
-- SYS_CLOSE = 6
-- SYS_WAITPID = 7
-- SYS_CREAT = 8
-- SYS_LINK = 9
-- SYS_UNLINK = 10
-- SYS_EXECVE = 11
-- SYS_CHDIR = 12
-- SYS_TIME = 13
-- SYS_MKNOD = 14
-- SYS_CHMOD = 15
-- SYS_LCHOWN = 16
-- SYS_BREAK = 17
-- SYS_OLDSTAT = 18
-- SYS_LSEEK = 19
-- SYS_GETPID = 20
-- SYS_MOUNT = 21
-- SYS_UMOUNT = 22
-- SYS_SETUID = 23
-- SYS_GETUID = 24
-- SYS_STIME = 25
-- SYS_PTRACE = 26
-- SYS_ALARM = 27
-- SYS_OLDFSTAT = 28
-- SYS_PAUSE = 29
-- SYS_UTIME = 30
-- SYS_STTY = 31
-- SYS_GTTY = 32
-- SYS_ACCESS = 33
-- SYS_NICE = 34
-- SYS_FTIME = 35
-- SYS_SYNC = 36
-- SYS_KILL = 37
-- SYS_RENAME = 38
-- SYS_MKDIR = 39
-- SYS_RMDIR = 40
-- SYS_DUP = 41
-- SYS_PIPE = 42
-- SYS_TIMES = 43
-- SYS_PROF = 44
-- SYS_BRK = 45
-- SYS_SETGID = 46
-- SYS_GETGID = 47
-- SYS_SIGNAL = 48
-- SYS_GETEUID = 49
-- SYS_GETEGID = 50
-- SYS_ACCT = 51
-- SYS_UMOUNT2 = 52
-- SYS_LOCK = 53
-- SYS_IOCTL = 54
-- SYS_FCNTL = 55
-- SYS_MPX = 56
-- SYS_SETPGID = 57
-- SYS_ULIMIT = 58
-- SYS_OLDOLDUNAME = 59
-- SYS_UMASK = 60
-- SYS_CHROOT = 61
-- SYS_USTAT = 62
-- SYS_DUP2 = 63
-- SYS_GETPPID = 64
-- SYS_GETPGRP = 65
-- SYS_SETSID = 66
-- SYS_SIGACTION = 67
-- SYS_SGETMASK = 68
-- SYS_SSETMASK = 69
-- SYS_SETREUID = 70
-- SYS_SETREGID = 71
-- SYS_SIGSUSPEND = 72
-- SYS_SIGPENDING = 73
-- SYS_SETHOSTNAME = 74
-- SYS_SETRLIMIT = 75
-- SYS_GETRLIMIT = 76
-- SYS_GETRUSAGE = 77
-- SYS_GETTIMEOFDAY = 78
-- SYS_SETTIMEOFDAY = 79
-- SYS_GETGROUPS = 80
-- SYS_SETGROUPS = 81
-- SYS_SELECT = 82
-- SYS_SYMLINK = 83
-- SYS_OLDLSTAT = 84
-- SYS_READLINK = 85
-- SYS_USELIB = 86
-- SYS_SWAPON = 87
-- SYS_REBOOT = 88
-- SYS_READDIR = 89
-- SYS_MMAP = 90
-- SYS_MUNMAP = 91
-- SYS_TRUNCATE = 92
-- SYS_FTRUNCATE = 93
-- SYS_FCHMOD = 94
-- SYS_FCHOWN = 95
-- SYS_GETPRIORITY = 96
-- SYS_SETPRIORITY = 97
-- SYS_PROFIL = 98
-- SYS_STATFS = 99
-- SYS_FSTATFS = 100
-- SYS_IOPERM = 101
-- SYS_SOCKETCALL = 102
-- SYS_SYSLOG = 103
-- SYS_SETITIMER = 104
-- SYS_GETITIMER = 105
-- SYS_STAT = 106
-- SYS_LSTAT = 107
-- SYS_FSTAT = 108
-- SYS_OLDUNAME = 109
-- SYS_IOPL = 110
-- SYS_VHANGUP = 111
-- SYS_IDLE = 112
-- SYS_VM86OLD = 113
-- SYS_WAIT4 = 114
-- SYS_SWAPOFF = 115
-- SYS_SYSINFO = 116
-- SYS_IPC = 117
-- SYS_FSYNC = 118
-- SYS_SIGRETURN = 119
-- SYS_CLONE = 120
-- SYS_SETDOMAINNAME = 121
-- SYS_UNAME = 122
-- SYS_MODIFY_LDT = 123
-- SYS_ADJTIMEX = 124
-- SYS_MPROTECT = 125
-- SYS_SIGPROCMASK = 126
-- SYS_CREATE_MODULE = 127
-- SYS_INIT_MODULE = 128
-- SYS_DELETE_MODULE = 129
-- SYS_GET_KERNEL_SYMS = 130
-- SYS_QUOTACTL = 131
-- SYS_GETPGID = 132
-- SYS_FCHDIR = 133
-- SYS_BDFLUSH = 134
-- SYS_SYSFS = 135
-- SYS_PERSONALITY = 136
-- SYS_AFS_SYSCALL = 137
-- SYS_SETFSUID = 138
-- SYS_SETFSGID = 139
-- SYS__LLSEEK = 140
-- SYS_GETDENTS = 141
-- SYS__NEWSELECT = 142
-- SYS_FLOCK = 143
-- SYS_MSYNC = 144
-- SYS_READV = 145
-- SYS_WRITEV = 146
-- SYS_GETSID = 147
-- SYS_FDATASYNC = 148
-- SYS__SYSCTL = 149
-- SYS_MLOCK = 150
-- SYS_MUNLOCK = 151
-- SYS_MLOCKALL = 152
-- SYS_MUNLOCKALL = 153
-- SYS_SCHED_SETPARAM = 154
-- SYS_SCHED_GETPARAM = 155
-- SYS_SCHED_SETSCHEDULER = 156
-- SYS_SCHED_GETSCHEDULER = 157
-- SYS_SCHED_YIELD = 158
-- SYS_SCHED_GET_PRIORITY_MAX = 159
-- SYS_SCHED_GET_PRIORITY_MIN = 160
-- SYS_SCHED_RR_GET_INTERVAL = 161
-- SYS_NANOSLEEP = 162
-- SYS_MREMAP = 163
-- SYS_SETRESUID = 164
-- SYS_GETRESUID = 165
-- SYS_VM86 = 166
-- SYS_QUERY_MODULE = 167
-- SYS_POLL = 168
-- SYS_NFSSERVCTL = 169
-- SYS_SETRESGID = 170
-- SYS_GETRESGID = 171
-- SYS_PRCTL = 172
-- SYS_RT_SIGRETURN = 173
-- SYS_RT_SIGACTION = 174
-- SYS_RT_SIGPROCMASK = 175
-- SYS_RT_SIGPENDING = 176
-- SYS_RT_SIGTIMEDWAIT = 177
-- SYS_RT_SIGQUEUEINFO = 178
-- SYS_RT_SIGSUSPEND = 179
-- SYS_PREAD64 = 180
-- SYS_PWRITE64 = 181
-- SYS_CHOWN = 182
-- SYS_GETCWD = 183
-- SYS_CAPGET = 184
-- SYS_CAPSET = 185
-- SYS_SIGALTSTACK = 186
-- SYS_SENDFILE = 187
-- SYS_GETPMSG = 188
-- SYS_PUTPMSG = 189
-- SYS_VFORK = 190
-- SYS_UGETRLIMIT = 191
-- SYS_MMAP2 = 192
-- SYS_TRUNCATE64 = 193
-- SYS_FTRUNCATE64 = 194
-- SYS_STAT64 = 195
-- SYS_LSTAT64 = 196
-- SYS_FSTAT64 = 197
-- SYS_LCHOWN32 = 198
-- SYS_GETUID32 = 199
-- SYS_GETGID32 = 200
-- SYS_GETEUID32 = 201
-- SYS_GETEGID32 = 202
-- SYS_SETREUID32 = 203
-- SYS_SETREGID32 = 204
-- SYS_GETGROUPS32 = 205
-- SYS_SETGROUPS32 = 206
-- SYS_FCHOWN32 = 207
-- SYS_SETRESUID32 = 208
-- SYS_GETRESUID32 = 209
-- SYS_SETRESGID32 = 210
-- SYS_GETRESGID32 = 211
-- SYS_CHOWN32 = 212
-- SYS_SETUID32 = 213
-- SYS_SETGID32 = 214
-- SYS_SETFSUID32 = 215
-- SYS_SETFSGID32 = 216
-- SYS_PIVOT_ROOT = 217
-- SYS_MINCORE = 218
-- SYS_MADVISE = 219
-- SYS_GETDENTS64 = 220
-- SYS_FCNTL64 = 221
-- SYS_GETTID = 224
-- SYS_READAHEAD = 225
-- SYS_SETXATTR = 226
-- SYS_LSETXATTR = 227
-- SYS_FSETXATTR = 228
-- SYS_GETXATTR = 229
-- SYS_LGETXATTR = 230
-- SYS_FGETXATTR = 231
-- SYS_LISTXATTR = 232
-- SYS_LLISTXATTR = 233
-- SYS_FLISTXATTR = 234
-- SYS_REMOVEXATTR = 235
-- SYS_LREMOVEXATTR = 236
-- SYS_FREMOVEXATTR = 237
-- SYS_TKILL = 238
-- SYS_SENDFILE64 = 239
-- SYS_FUTEX = 240
-- SYS_SCHED_SETAFFINITY = 241
-- SYS_SCHED_GETAFFINITY = 242
-- SYS_SET_THREAD_AREA = 243
-- SYS_GET_THREAD_AREA = 244
-- SYS_IO_SETUP = 245
-- SYS_IO_DESTROY = 246
-- SYS_IO_GETEVENTS = 247
-- SYS_IO_SUBMIT = 248
-- SYS_IO_CANCEL = 249
-- SYS_FADVISE64 = 250
-- SYS_EXIT_GROUP = 252
-- SYS_LOOKUP_DCOOKIE = 253
-- SYS_EPOLL_CREATE = 254
-- SYS_EPOLL_CTL = 255
-- SYS_EPOLL_WAIT = 256
-- SYS_REMAP_FILE_PAGES = 257
-- SYS_SET_TID_ADDRESS = 258
-- SYS_TIMER_CREATE = 259
-- SYS_TIMER_SETTIME = 260
-- SYS_TIMER_GETTIME = 261
-- SYS_TIMER_GETOVERRUN = 262
-- SYS_TIMER_DELETE = 263
-- SYS_CLOCK_SETTIME = 264
-- SYS_CLOCK_GETTIME = 265
-- SYS_CLOCK_GETRES = 266
-- SYS_CLOCK_NANOSLEEP = 267
-- SYS_STATFS64 = 268
-- SYS_FSTATFS64 = 269
-- SYS_TGKILL = 270
-- SYS_UTIMES = 271
-- SYS_FADVISE64_64 = 272
-- SYS_VSERVER = 273
-- SYS_MBIND = 274
-- SYS_GET_MEMPOLICY = 275
-- SYS_SET_MEMPOLICY = 276
-- SYS_MQ_OPEN = 277
-- SYS_MQ_UNLINK = 278
-- SYS_MQ_TIMEDSEND = 279
-- SYS_MQ_TIMEDRECEIVE = 280
-- SYS_MQ_NOTIFY = 281
-- SYS_MQ_GETSETATTR = 282
-- SYS_KEXEC_LOAD = 283
-- SYS_WAITID = 284
-- SYS_ADD_KEY = 286
-- SYS_REQUEST_KEY = 287
-- SYS_KEYCTL = 288
-- SYS_IOPRIO_SET = 289
-- SYS_IOPRIO_GET = 290
-- SYS_INOTIFY_INIT = 291
-- SYS_INOTIFY_ADD_WATCH = 292
-- SYS_INOTIFY_RM_WATCH = 293
-- SYS_MIGRATE_PAGES = 294
-- SYS_OPENAT = 295
-- SYS_MKDIRAT = 296
-- SYS_MKNODAT = 297
-- SYS_FCHOWNAT = 298
-- SYS_FUTIMESAT = 299
-- SYS_FSTATAT64 = 300
-- SYS_UNLINKAT = 301
-- SYS_RENAMEAT = 302
-- SYS_LINKAT = 303
-- SYS_SYMLINKAT = 304
-- SYS_READLINKAT = 305
-- SYS_FCHMODAT = 306
-- SYS_FACCESSAT = 307
-- SYS_PSELECT6 = 308
-- SYS_PPOLL = 309
-- SYS_UNSHARE = 310
-- SYS_SET_ROBUST_LIST = 311
-- SYS_GET_ROBUST_LIST = 312
-- SYS_SPLICE = 313
-- SYS_SYNC_FILE_RANGE = 314
-- SYS_TEE = 315
-- SYS_VMSPLICE = 316
-- SYS_MOVE_PAGES = 317
-- SYS_GETCPU = 318
-- SYS_EPOLL_PWAIT = 319
-- SYS_UTIMENSAT = 320
-- SYS_SIGNALFD = 321
-- SYS_TIMERFD_CREATE = 322
-- SYS_EVENTFD = 323
-- SYS_FALLOCATE = 324
-- SYS_TIMERFD_SETTIME = 325
-- SYS_TIMERFD_GETTIME = 326
-- SYS_SIGNALFD4 = 327
-- SYS_EVENTFD2 = 328
-- SYS_EPOLL_CREATE1 = 329
-- SYS_DUP3 = 330
-- SYS_PIPE2 = 331
-- SYS_INOTIFY_INIT1 = 332
-- SYS_PREADV = 333
-- SYS_PWRITEV = 334
-- SYS_RT_TGSIGQUEUEINFO = 335
-- SYS_PERF_EVENT_OPEN = 336
-- SYS_RECVMMSG = 337
-- SYS_FANOTIFY_INIT = 338
-- SYS_FANOTIFY_MARK = 339
-- SYS_PRLIMIT64 = 340
-- SYS_NAME_TO_HANDLE_AT = 341
-- SYS_OPEN_BY_HANDLE_AT = 342
-- SYS_CLOCK_ADJTIME = 343
-- SYS_SYNCFS = 344
-- SYS_SENDMMSG = 345
-- SYS_SETNS = 346
-- SYS_PROCESS_VM_READV = 347
-- SYS_PROCESS_VM_WRITEV = 348
-- SYS_KCMP = 349
-- SYS_FINIT_MODULE = 350
-- SYS_SCHED_SETATTR = 351
-- SYS_SCHED_GETATTR = 352
-- SYS_RENAMEAT2 = 353
-- SYS_SECCOMP = 354
-- SYS_GETRANDOM = 355
-- SYS_MEMFD_CREATE = 356
-- SYS_BPF = 357
-- SYS_EXECVEAT = 358
-- SYS_SOCKET = 359
-- SYS_SOCKETPAIR = 360
-- SYS_BIND = 361
-- SYS_CONNECT = 362
-- SYS_LISTEN = 363
-- SYS_ACCEPT4 = 364
-- SYS_GETSOCKOPT = 365
-- SYS_SETSOCKOPT = 366
-- SYS_GETSOCKNAME = 367
-- SYS_GETPEERNAME = 368
-- SYS_SENDTO = 369
-- SYS_SENDMSG = 370
-- SYS_RECVFROM = 371
-- SYS_RECVMSG = 372
-- SYS_SHUTDOWN = 373
-- SYS_USERFAULTFD = 374
-- SYS_MEMBARRIER = 375
-- SYS_MLOCK2 = 376
-- SYS_COPY_FILE_RANGE = 377
-- SYS_PREADV2 = 378
-- SYS_PWRITEV2 = 379
-- SYS_PKEY_MPROTECT = 380
-- SYS_PKEY_ALLOC = 381
-- SYS_PKEY_FREE = 382
-+ SYS_RESTART_SYSCALL = 0
-+ SYS_EXIT = 1
-+ SYS_FORK = 2
-+ SYS_READ = 3
-+ SYS_WRITE = 4
-+ SYS_OPEN = 5
-+ SYS_CLOSE = 6
-+ SYS_WAITPID = 7
-+ SYS_CREAT = 8
-+ SYS_LINK = 9
-+ SYS_UNLINK = 10
-+ SYS_EXECVE = 11
-+ SYS_CHDIR = 12
-+ SYS_TIME = 13
-+ SYS_MKNOD = 14
-+ SYS_CHMOD = 15
-+ SYS_LCHOWN = 16
-+ SYS_BREAK = 17
-+ SYS_OLDSTAT = 18
-+ SYS_LSEEK = 19
-+ SYS_GETPID = 20
-+ SYS_MOUNT = 21
-+ SYS_UMOUNT = 22
-+ SYS_SETUID = 23
-+ SYS_GETUID = 24
-+ SYS_STIME = 25
-+ SYS_PTRACE = 26
-+ SYS_ALARM = 27
-+ SYS_OLDFSTAT = 28
-+ SYS_PAUSE = 29
-+ SYS_UTIME = 30
-+ SYS_STTY = 31
-+ SYS_GTTY = 32
-+ SYS_ACCESS = 33
-+ SYS_NICE = 34
-+ SYS_FTIME = 35
-+ SYS_SYNC = 36
-+ SYS_KILL = 37
-+ SYS_RENAME = 38
-+ SYS_MKDIR = 39
-+ SYS_RMDIR = 40
-+ SYS_DUP = 41
-+ SYS_PIPE = 42
-+ SYS_TIMES = 43
-+ SYS_PROF = 44
-+ SYS_BRK = 45
-+ SYS_SETGID = 46
-+ SYS_GETGID = 47
-+ SYS_SIGNAL = 48
-+ SYS_GETEUID = 49
-+ SYS_GETEGID = 50
-+ SYS_ACCT = 51
-+ SYS_UMOUNT2 = 52
-+ SYS_LOCK = 53
-+ SYS_IOCTL = 54
-+ SYS_FCNTL = 55
-+ SYS_MPX = 56
-+ SYS_SETPGID = 57
-+ SYS_ULIMIT = 58
-+ SYS_OLDOLDUNAME = 59
-+ SYS_UMASK = 60
-+ SYS_CHROOT = 61
-+ SYS_USTAT = 62
-+ SYS_DUP2 = 63
-+ SYS_GETPPID = 64
-+ SYS_GETPGRP = 65
-+ SYS_SETSID = 66
-+ SYS_SIGACTION = 67
-+ SYS_SGETMASK = 68
-+ SYS_SSETMASK = 69
-+ SYS_SETREUID = 70
-+ SYS_SETREGID = 71
-+ SYS_SIGSUSPEND = 72
-+ SYS_SIGPENDING = 73
-+ SYS_SETHOSTNAME = 74
-+ SYS_SETRLIMIT = 75
-+ SYS_GETRLIMIT = 76
-+ SYS_GETRUSAGE = 77
-+ SYS_GETTIMEOFDAY = 78
-+ SYS_SETTIMEOFDAY = 79
-+ SYS_GETGROUPS = 80
-+ SYS_SETGROUPS = 81
-+ SYS_SELECT = 82
-+ SYS_SYMLINK = 83
-+ SYS_OLDLSTAT = 84
-+ SYS_READLINK = 85
-+ SYS_USELIB = 86
-+ SYS_SWAPON = 87
-+ SYS_REBOOT = 88
-+ SYS_READDIR = 89
-+ SYS_MMAP = 90
-+ SYS_MUNMAP = 91
-+ SYS_TRUNCATE = 92
-+ SYS_FTRUNCATE = 93
-+ SYS_FCHMOD = 94
-+ SYS_FCHOWN = 95
-+ SYS_GETPRIORITY = 96
-+ SYS_SETPRIORITY = 97
-+ SYS_PROFIL = 98
-+ SYS_STATFS = 99
-+ SYS_FSTATFS = 100
-+ SYS_IOPERM = 101
-+ SYS_SOCKETCALL = 102
-+ SYS_SYSLOG = 103
-+ SYS_SETITIMER = 104
-+ SYS_GETITIMER = 105
-+ SYS_STAT = 106
-+ SYS_LSTAT = 107
-+ SYS_FSTAT = 108
-+ SYS_OLDUNAME = 109
-+ SYS_IOPL = 110
-+ SYS_VHANGUP = 111
-+ SYS_IDLE = 112
-+ SYS_VM86OLD = 113
-+ SYS_WAIT4 = 114
-+ SYS_SWAPOFF = 115
-+ SYS_SYSINFO = 116
-+ SYS_IPC = 117
-+ SYS_FSYNC = 118
-+ SYS_SIGRETURN = 119
-+ SYS_CLONE = 120
-+ SYS_SETDOMAINNAME = 121
-+ SYS_UNAME = 122
-+ SYS_MODIFY_LDT = 123
-+ SYS_ADJTIMEX = 124
-+ SYS_MPROTECT = 125
-+ SYS_SIGPROCMASK = 126
-+ SYS_CREATE_MODULE = 127
-+ SYS_INIT_MODULE = 128
-+ SYS_DELETE_MODULE = 129
-+ SYS_GET_KERNEL_SYMS = 130
-+ SYS_QUOTACTL = 131
-+ SYS_GETPGID = 132
-+ SYS_FCHDIR = 133
-+ SYS_BDFLUSH = 134
-+ SYS_SYSFS = 135
-+ SYS_PERSONALITY = 136
-+ SYS_AFS_SYSCALL = 137
-+ SYS_SETFSUID = 138
-+ SYS_SETFSGID = 139
-+ SYS__LLSEEK = 140
-+ SYS_GETDENTS = 141
-+ SYS__NEWSELECT = 142
-+ SYS_FLOCK = 143
-+ SYS_MSYNC = 144
-+ SYS_READV = 145
-+ SYS_WRITEV = 146
-+ SYS_GETSID = 147
-+ SYS_FDATASYNC = 148
-+ SYS__SYSCTL = 149
-+ SYS_MLOCK = 150
-+ SYS_MUNLOCK = 151
-+ SYS_MLOCKALL = 152
-+ SYS_MUNLOCKALL = 153
-+ SYS_SCHED_SETPARAM = 154
-+ SYS_SCHED_GETPARAM = 155
-+ SYS_SCHED_SETSCHEDULER = 156
-+ SYS_SCHED_GETSCHEDULER = 157
-+ SYS_SCHED_YIELD = 158
-+ SYS_SCHED_GET_PRIORITY_MAX = 159
-+ SYS_SCHED_GET_PRIORITY_MIN = 160
-+ SYS_SCHED_RR_GET_INTERVAL = 161
-+ SYS_NANOSLEEP = 162
-+ SYS_MREMAP = 163
-+ SYS_SETRESUID = 164
-+ SYS_GETRESUID = 165
-+ SYS_VM86 = 166
-+ SYS_QUERY_MODULE = 167
-+ SYS_POLL = 168
-+ SYS_NFSSERVCTL = 169
-+ SYS_SETRESGID = 170
-+ SYS_GETRESGID = 171
-+ SYS_PRCTL = 172
-+ SYS_RT_SIGRETURN = 173
-+ SYS_RT_SIGACTION = 174
-+ SYS_RT_SIGPROCMASK = 175
-+ SYS_RT_SIGPENDING = 176
-+ SYS_RT_SIGTIMEDWAIT = 177
-+ SYS_RT_SIGQUEUEINFO = 178
-+ SYS_RT_SIGSUSPEND = 179
-+ SYS_PREAD64 = 180
-+ SYS_PWRITE64 = 181
-+ SYS_CHOWN = 182
-+ SYS_GETCWD = 183
-+ SYS_CAPGET = 184
-+ SYS_CAPSET = 185
-+ SYS_SIGALTSTACK = 186
-+ SYS_SENDFILE = 187
-+ SYS_GETPMSG = 188
-+ SYS_PUTPMSG = 189
-+ SYS_VFORK = 190
-+ SYS_UGETRLIMIT = 191
-+ SYS_MMAP2 = 192
-+ SYS_TRUNCATE64 = 193
-+ SYS_FTRUNCATE64 = 194
-+ SYS_STAT64 = 195
-+ SYS_LSTAT64 = 196
-+ SYS_FSTAT64 = 197
-+ SYS_LCHOWN32 = 198
-+ SYS_GETUID32 = 199
-+ SYS_GETGID32 = 200
-+ SYS_GETEUID32 = 201
-+ SYS_GETEGID32 = 202
-+ SYS_SETREUID32 = 203
-+ SYS_SETREGID32 = 204
-+ SYS_GETGROUPS32 = 205
-+ SYS_SETGROUPS32 = 206
-+ SYS_FCHOWN32 = 207
-+ SYS_SETRESUID32 = 208
-+ SYS_GETRESUID32 = 209
-+ SYS_SETRESGID32 = 210
-+ SYS_GETRESGID32 = 211
-+ SYS_CHOWN32 = 212
-+ SYS_SETUID32 = 213
-+ SYS_SETGID32 = 214
-+ SYS_SETFSUID32 = 215
-+ SYS_SETFSGID32 = 216
-+ SYS_PIVOT_ROOT = 217
-+ SYS_MINCORE = 218
-+ SYS_MADVISE = 219
-+ SYS_GETDENTS64 = 220
-+ SYS_FCNTL64 = 221
-+ SYS_GETTID = 224
-+ SYS_READAHEAD = 225
-+ SYS_SETXATTR = 226
-+ SYS_LSETXATTR = 227
-+ SYS_FSETXATTR = 228
-+ SYS_GETXATTR = 229
-+ SYS_LGETXATTR = 230
-+ SYS_FGETXATTR = 231
-+ SYS_LISTXATTR = 232
-+ SYS_LLISTXATTR = 233
-+ SYS_FLISTXATTR = 234
-+ SYS_REMOVEXATTR = 235
-+ SYS_LREMOVEXATTR = 236
-+ SYS_FREMOVEXATTR = 237
-+ SYS_TKILL = 238
-+ SYS_SENDFILE64 = 239
-+ SYS_FUTEX = 240
-+ SYS_SCHED_SETAFFINITY = 241
-+ SYS_SCHED_GETAFFINITY = 242
-+ SYS_SET_THREAD_AREA = 243
-+ SYS_GET_THREAD_AREA = 244
-+ SYS_IO_SETUP = 245
-+ SYS_IO_DESTROY = 246
-+ SYS_IO_GETEVENTS = 247
-+ SYS_IO_SUBMIT = 248
-+ SYS_IO_CANCEL = 249
-+ SYS_FADVISE64 = 250
-+ SYS_EXIT_GROUP = 252
-+ SYS_LOOKUP_DCOOKIE = 253
-+ SYS_EPOLL_CREATE = 254
-+ SYS_EPOLL_CTL = 255
-+ SYS_EPOLL_WAIT = 256
-+ SYS_REMAP_FILE_PAGES = 257
-+ SYS_SET_TID_ADDRESS = 258
-+ SYS_TIMER_CREATE = 259
-+ SYS_TIMER_SETTIME = 260
-+ SYS_TIMER_GETTIME = 261
-+ SYS_TIMER_GETOVERRUN = 262
-+ SYS_TIMER_DELETE = 263
-+ SYS_CLOCK_SETTIME = 264
-+ SYS_CLOCK_GETTIME = 265
-+ SYS_CLOCK_GETRES = 266
-+ SYS_CLOCK_NANOSLEEP = 267
-+ SYS_STATFS64 = 268
-+ SYS_FSTATFS64 = 269
-+ SYS_TGKILL = 270
-+ SYS_UTIMES = 271
-+ SYS_FADVISE64_64 = 272
-+ SYS_VSERVER = 273
-+ SYS_MBIND = 274
-+ SYS_GET_MEMPOLICY = 275
-+ SYS_SET_MEMPOLICY = 276
-+ SYS_MQ_OPEN = 277
-+ SYS_MQ_UNLINK = 278
-+ SYS_MQ_TIMEDSEND = 279
-+ SYS_MQ_TIMEDRECEIVE = 280
-+ SYS_MQ_NOTIFY = 281
-+ SYS_MQ_GETSETATTR = 282
-+ SYS_KEXEC_LOAD = 283
-+ SYS_WAITID = 284
-+ SYS_ADD_KEY = 286
-+ SYS_REQUEST_KEY = 287
-+ SYS_KEYCTL = 288
-+ SYS_IOPRIO_SET = 289
-+ SYS_IOPRIO_GET = 290
-+ SYS_INOTIFY_INIT = 291
-+ SYS_INOTIFY_ADD_WATCH = 292
-+ SYS_INOTIFY_RM_WATCH = 293
-+ SYS_MIGRATE_PAGES = 294
-+ SYS_OPENAT = 295
-+ SYS_MKDIRAT = 296
-+ SYS_MKNODAT = 297
-+ SYS_FCHOWNAT = 298
-+ SYS_FUTIMESAT = 299
-+ SYS_FSTATAT64 = 300
-+ SYS_UNLINKAT = 301
-+ SYS_RENAMEAT = 302
-+ SYS_LINKAT = 303
-+ SYS_SYMLINKAT = 304
-+ SYS_READLINKAT = 305
-+ SYS_FCHMODAT = 306
-+ SYS_FACCESSAT = 307
-+ SYS_PSELECT6 = 308
-+ SYS_PPOLL = 309
-+ SYS_UNSHARE = 310
-+ SYS_SET_ROBUST_LIST = 311
-+ SYS_GET_ROBUST_LIST = 312
-+ SYS_SPLICE = 313
-+ SYS_SYNC_FILE_RANGE = 314
-+ SYS_TEE = 315
-+ SYS_VMSPLICE = 316
-+ SYS_MOVE_PAGES = 317
-+ SYS_GETCPU = 318
-+ SYS_EPOLL_PWAIT = 319
-+ SYS_UTIMENSAT = 320
-+ SYS_SIGNALFD = 321
-+ SYS_TIMERFD_CREATE = 322
-+ SYS_EVENTFD = 323
-+ SYS_FALLOCATE = 324
-+ SYS_TIMERFD_SETTIME = 325
-+ SYS_TIMERFD_GETTIME = 326
-+ SYS_SIGNALFD4 = 327
-+ SYS_EVENTFD2 = 328
-+ SYS_EPOLL_CREATE1 = 329
-+ SYS_DUP3 = 330
-+ SYS_PIPE2 = 331
-+ SYS_INOTIFY_INIT1 = 332
-+ SYS_PREADV = 333
-+ SYS_PWRITEV = 334
-+ SYS_RT_TGSIGQUEUEINFO = 335
-+ SYS_PERF_EVENT_OPEN = 336
-+ SYS_RECVMMSG = 337
-+ SYS_FANOTIFY_INIT = 338
-+ SYS_FANOTIFY_MARK = 339
-+ SYS_PRLIMIT64 = 340
-+ SYS_NAME_TO_HANDLE_AT = 341
-+ SYS_OPEN_BY_HANDLE_AT = 342
-+ SYS_CLOCK_ADJTIME = 343
-+ SYS_SYNCFS = 344
-+ SYS_SENDMMSG = 345
-+ SYS_SETNS = 346
-+ SYS_PROCESS_VM_READV = 347
-+ SYS_PROCESS_VM_WRITEV = 348
-+ SYS_KCMP = 349
-+ SYS_FINIT_MODULE = 350
-+ SYS_SCHED_SETATTR = 351
-+ SYS_SCHED_GETATTR = 352
-+ SYS_RENAMEAT2 = 353
-+ SYS_SECCOMP = 354
-+ SYS_GETRANDOM = 355
-+ SYS_MEMFD_CREATE = 356
-+ SYS_BPF = 357
-+ SYS_EXECVEAT = 358
-+ SYS_SOCKET = 359
-+ SYS_SOCKETPAIR = 360
-+ SYS_BIND = 361
-+ SYS_CONNECT = 362
-+ SYS_LISTEN = 363
-+ SYS_ACCEPT4 = 364
-+ SYS_GETSOCKOPT = 365
-+ SYS_SETSOCKOPT = 366
-+ SYS_GETSOCKNAME = 367
-+ SYS_GETPEERNAME = 368
-+ SYS_SENDTO = 369
-+ SYS_SENDMSG = 370
-+ SYS_RECVFROM = 371
-+ SYS_RECVMSG = 372
-+ SYS_SHUTDOWN = 373
-+ SYS_USERFAULTFD = 374
-+ SYS_MEMBARRIER = 375
-+ SYS_MLOCK2 = 376
-+ SYS_COPY_FILE_RANGE = 377
-+ SYS_PREADV2 = 378
-+ SYS_PWRITEV2 = 379
-+ SYS_PKEY_MPROTECT = 380
-+ SYS_PKEY_ALLOC = 381
-+ SYS_PKEY_FREE = 382
-+ SYS_STATX = 383
-+ SYS_ARCH_PRCTL = 384
-+ SYS_IO_PGETEVENTS = 385
-+ SYS_RSEQ = 386
-+ SYS_SEMGET = 393
-+ SYS_SEMCTL = 394
-+ SYS_SHMGET = 395
-+ SYS_SHMCTL = 396
-+ SYS_SHMAT = 397
-+ SYS_SHMDT = 398
-+ SYS_MSGGET = 399
-+ SYS_MSGSND = 400
-+ SYS_MSGRCV = 401
-+ SYS_MSGCTL = 402
-+ SYS_CLOCK_GETTIME64 = 403
-+ SYS_CLOCK_SETTIME64 = 404
-+ SYS_CLOCK_ADJTIME64 = 405
-+ SYS_CLOCK_GETRES_TIME64 = 406
-+ SYS_CLOCK_NANOSLEEP_TIME64 = 407
-+ SYS_TIMER_GETTIME64 = 408
-+ SYS_TIMER_SETTIME64 = 409
-+ SYS_TIMERFD_GETTIME64 = 410
-+ SYS_TIMERFD_SETTIME64 = 411
-+ SYS_UTIMENSAT_TIME64 = 412
-+ SYS_PSELECT6_TIME64 = 413
-+ SYS_PPOLL_TIME64 = 414
-+ SYS_IO_PGETEVENTS_TIME64 = 416
-+ SYS_RECVMMSG_TIME64 = 417
-+ SYS_MQ_TIMEDSEND_TIME64 = 418
-+ SYS_MQ_TIMEDRECEIVE_TIME64 = 419
-+ SYS_SEMTIMEDOP_TIME64 = 420
-+ SYS_RT_SIGTIMEDWAIT_TIME64 = 421
-+ SYS_FUTEX_TIME64 = 422
-+ SYS_SCHED_RR_GET_INTERVAL_TIME64 = 423
-+ SYS_PIDFD_SEND_SIGNAL = 424
-+ SYS_IO_URING_SETUP = 425
-+ SYS_IO_URING_ENTER = 426
-+ SYS_IO_URING_REGISTER = 427
-+ SYS_OPEN_TREE = 428
-+ SYS_MOVE_MOUNT = 429
-+ SYS_FSOPEN = 430
-+ SYS_FSCONFIG = 431
-+ SYS_FSMOUNT = 432
-+ SYS_FSPICK = 433
-+ SYS_PIDFD_OPEN = 434
-+ SYS_CLONE3 = 435
-+ SYS_OPENAT2 = 437
-+ SYS_PIDFD_GETFD = 438
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
-index 49bfa127..054a741b 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
-@@ -1,4 +1,4 @@
--// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include -m64 /tmp/include/asm/unistd.h
-+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include -m64 /tmp/include/asm/unistd.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build amd64,linux
-@@ -338,4 +338,21 @@ const (
- SYS_PKEY_MPROTECT = 329
- SYS_PKEY_ALLOC = 330
- SYS_PKEY_FREE = 331
-+ SYS_STATX = 332
-+ SYS_IO_PGETEVENTS = 333
-+ SYS_RSEQ = 334
-+ SYS_PIDFD_SEND_SIGNAL = 424
-+ SYS_IO_URING_SETUP = 425
-+ SYS_IO_URING_ENTER = 426
-+ SYS_IO_URING_REGISTER = 427
-+ SYS_OPEN_TREE = 428
-+ SYS_MOVE_MOUNT = 429
-+ SYS_FSOPEN = 430
-+ SYS_FSCONFIG = 431
-+ SYS_FSMOUNT = 432
-+ SYS_FSPICK = 433
-+ SYS_PIDFD_OPEN = 434
-+ SYS_CLONE3 = 435
-+ SYS_OPENAT2 = 437
-+ SYS_PIDFD_GETFD = 438
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
-index 97b182ef..307f2ba1 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
-@@ -1,4 +1,4 @@
--// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
-+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build arm,linux
-@@ -6,356 +6,395 @@
- package unix
-
- const (
-- SYS_RESTART_SYSCALL = 0
-- SYS_EXIT = 1
-- SYS_FORK = 2
-- SYS_READ = 3
-- SYS_WRITE = 4
-- SYS_OPEN = 5
-- SYS_CLOSE = 6
-- SYS_CREAT = 8
-- SYS_LINK = 9
-- SYS_UNLINK = 10
-- SYS_EXECVE = 11
-- SYS_CHDIR = 12
-- SYS_MKNOD = 14
-- SYS_CHMOD = 15
-- SYS_LCHOWN = 16
-- SYS_LSEEK = 19
-- SYS_GETPID = 20
-- SYS_MOUNT = 21
-- SYS_SETUID = 23
-- SYS_GETUID = 24
-- SYS_PTRACE = 26
-- SYS_PAUSE = 29
-- SYS_ACCESS = 33
-- SYS_NICE = 34
-- SYS_SYNC = 36
-- SYS_KILL = 37
-- SYS_RENAME = 38
-- SYS_MKDIR = 39
-- SYS_RMDIR = 40
-- SYS_DUP = 41
-- SYS_PIPE = 42
-- SYS_TIMES = 43
-- SYS_BRK = 45
-- SYS_SETGID = 46
-- SYS_GETGID = 47
-- SYS_GETEUID = 49
-- SYS_GETEGID = 50
-- SYS_ACCT = 51
-- SYS_UMOUNT2 = 52
-- SYS_IOCTL = 54
-- SYS_FCNTL = 55
-- SYS_SETPGID = 57
-- SYS_UMASK = 60
-- SYS_CHROOT = 61
-- SYS_USTAT = 62
-- SYS_DUP2 = 63
-- SYS_GETPPID = 64
-- SYS_GETPGRP = 65
-- SYS_SETSID = 66
-- SYS_SIGACTION = 67
-- SYS_SETREUID = 70
-- SYS_SETREGID = 71
-- SYS_SIGSUSPEND = 72
-- SYS_SIGPENDING = 73
-- SYS_SETHOSTNAME = 74
-- SYS_SETRLIMIT = 75
-- SYS_GETRUSAGE = 77
-- SYS_GETTIMEOFDAY = 78
-- SYS_SETTIMEOFDAY = 79
-- SYS_GETGROUPS = 80
-- SYS_SETGROUPS = 81
-- SYS_SYMLINK = 83
-- SYS_READLINK = 85
-- SYS_USELIB = 86
-- SYS_SWAPON = 87
-- SYS_REBOOT = 88
-- SYS_MUNMAP = 91
-- SYS_TRUNCATE = 92
-- SYS_FTRUNCATE = 93
-- SYS_FCHMOD = 94
-- SYS_FCHOWN = 95
-- SYS_GETPRIORITY = 96
-- SYS_SETPRIORITY = 97
-- SYS_STATFS = 99
-- SYS_FSTATFS = 100
-- SYS_SYSLOG = 103
-- SYS_SETITIMER = 104
-- SYS_GETITIMER = 105
-- SYS_STAT = 106
-- SYS_LSTAT = 107
-- SYS_FSTAT = 108
-- SYS_VHANGUP = 111
-- SYS_WAIT4 = 114
-- SYS_SWAPOFF = 115
-- SYS_SYSINFO = 116
-- SYS_FSYNC = 118
-- SYS_SIGRETURN = 119
-- SYS_CLONE = 120
-- SYS_SETDOMAINNAME = 121
-- SYS_UNAME = 122
-- SYS_ADJTIMEX = 124
-- SYS_MPROTECT = 125
-- SYS_SIGPROCMASK = 126
-- SYS_INIT_MODULE = 128
-- SYS_DELETE_MODULE = 129
-- SYS_QUOTACTL = 131
-- SYS_GETPGID = 132
-- SYS_FCHDIR = 133
-- SYS_BDFLUSH = 134
-- SYS_SYSFS = 135
-- SYS_PERSONALITY = 136
-- SYS_SETFSUID = 138
-- SYS_SETFSGID = 139
-- SYS__LLSEEK = 140
-- SYS_GETDENTS = 141
-- SYS__NEWSELECT = 142
-- SYS_FLOCK = 143
-- SYS_MSYNC = 144
-- SYS_READV = 145
-- SYS_WRITEV = 146
-- SYS_GETSID = 147
-- SYS_FDATASYNC = 148
-- SYS__SYSCTL = 149
-- SYS_MLOCK = 150
-- SYS_MUNLOCK = 151
-- SYS_MLOCKALL = 152
-- SYS_MUNLOCKALL = 153
-- SYS_SCHED_SETPARAM = 154
-- SYS_SCHED_GETPARAM = 155
-- SYS_SCHED_SETSCHEDULER = 156
-- SYS_SCHED_GETSCHEDULER = 157
-- SYS_SCHED_YIELD = 158
-- SYS_SCHED_GET_PRIORITY_MAX = 159
-- SYS_SCHED_GET_PRIORITY_MIN = 160
-- SYS_SCHED_RR_GET_INTERVAL = 161
-- SYS_NANOSLEEP = 162
-- SYS_MREMAP = 163
-- SYS_SETRESUID = 164
-- SYS_GETRESUID = 165
-- SYS_POLL = 168
-- SYS_NFSSERVCTL = 169
-- SYS_SETRESGID = 170
-- SYS_GETRESGID = 171
-- SYS_PRCTL = 172
-- SYS_RT_SIGRETURN = 173
-- SYS_RT_SIGACTION = 174
-- SYS_RT_SIGPROCMASK = 175
-- SYS_RT_SIGPENDING = 176
-- SYS_RT_SIGTIMEDWAIT = 177
-- SYS_RT_SIGQUEUEINFO = 178
-- SYS_RT_SIGSUSPEND = 179
-- SYS_PREAD64 = 180
-- SYS_PWRITE64 = 181
-- SYS_CHOWN = 182
-- SYS_GETCWD = 183
-- SYS_CAPGET = 184
-- SYS_CAPSET = 185
-- SYS_SIGALTSTACK = 186
-- SYS_SENDFILE = 187
-- SYS_VFORK = 190
-- SYS_UGETRLIMIT = 191
-- SYS_MMAP2 = 192
-- SYS_TRUNCATE64 = 193
-- SYS_FTRUNCATE64 = 194
-- SYS_STAT64 = 195
-- SYS_LSTAT64 = 196
-- SYS_FSTAT64 = 197
-- SYS_LCHOWN32 = 198
-- SYS_GETUID32 = 199
-- SYS_GETGID32 = 200
-- SYS_GETEUID32 = 201
-- SYS_GETEGID32 = 202
-- SYS_SETREUID32 = 203
-- SYS_SETREGID32 = 204
-- SYS_GETGROUPS32 = 205
-- SYS_SETGROUPS32 = 206
-- SYS_FCHOWN32 = 207
-- SYS_SETRESUID32 = 208
-- SYS_GETRESUID32 = 209
-- SYS_SETRESGID32 = 210
-- SYS_GETRESGID32 = 211
-- SYS_CHOWN32 = 212
-- SYS_SETUID32 = 213
-- SYS_SETGID32 = 214
-- SYS_SETFSUID32 = 215
-- SYS_SETFSGID32 = 216
-- SYS_GETDENTS64 = 217
-- SYS_PIVOT_ROOT = 218
-- SYS_MINCORE = 219
-- SYS_MADVISE = 220
-- SYS_FCNTL64 = 221
-- SYS_GETTID = 224
-- SYS_READAHEAD = 225
-- SYS_SETXATTR = 226
-- SYS_LSETXATTR = 227
-- SYS_FSETXATTR = 228
-- SYS_GETXATTR = 229
-- SYS_LGETXATTR = 230
-- SYS_FGETXATTR = 231
-- SYS_LISTXATTR = 232
-- SYS_LLISTXATTR = 233
-- SYS_FLISTXATTR = 234
-- SYS_REMOVEXATTR = 235
-- SYS_LREMOVEXATTR = 236
-- SYS_FREMOVEXATTR = 237
-- SYS_TKILL = 238
-- SYS_SENDFILE64 = 239
-- SYS_FUTEX = 240
-- SYS_SCHED_SETAFFINITY = 241
-- SYS_SCHED_GETAFFINITY = 242
-- SYS_IO_SETUP = 243
-- SYS_IO_DESTROY = 244
-- SYS_IO_GETEVENTS = 245
-- SYS_IO_SUBMIT = 246
-- SYS_IO_CANCEL = 247
-- SYS_EXIT_GROUP = 248
-- SYS_LOOKUP_DCOOKIE = 249
-- SYS_EPOLL_CREATE = 250
-- SYS_EPOLL_CTL = 251
-- SYS_EPOLL_WAIT = 252
-- SYS_REMAP_FILE_PAGES = 253
-- SYS_SET_TID_ADDRESS = 256
-- SYS_TIMER_CREATE = 257
-- SYS_TIMER_SETTIME = 258
-- SYS_TIMER_GETTIME = 259
-- SYS_TIMER_GETOVERRUN = 260
-- SYS_TIMER_DELETE = 261
-- SYS_CLOCK_SETTIME = 262
-- SYS_CLOCK_GETTIME = 263
-- SYS_CLOCK_GETRES = 264
-- SYS_CLOCK_NANOSLEEP = 265
-- SYS_STATFS64 = 266
-- SYS_FSTATFS64 = 267
-- SYS_TGKILL = 268
-- SYS_UTIMES = 269
-- SYS_ARM_FADVISE64_64 = 270
-- SYS_PCICONFIG_IOBASE = 271
-- SYS_PCICONFIG_READ = 272
-- SYS_PCICONFIG_WRITE = 273
-- SYS_MQ_OPEN = 274
-- SYS_MQ_UNLINK = 275
-- SYS_MQ_TIMEDSEND = 276
-- SYS_MQ_TIMEDRECEIVE = 277
-- SYS_MQ_NOTIFY = 278
-- SYS_MQ_GETSETATTR = 279
-- SYS_WAITID = 280
-- SYS_SOCKET = 281
-- SYS_BIND = 282
-- SYS_CONNECT = 283
-- SYS_LISTEN = 284
-- SYS_ACCEPT = 285
-- SYS_GETSOCKNAME = 286
-- SYS_GETPEERNAME = 287
-- SYS_SOCKETPAIR = 288
-- SYS_SEND = 289
-- SYS_SENDTO = 290
-- SYS_RECV = 291
-- SYS_RECVFROM = 292
-- SYS_SHUTDOWN = 293
-- SYS_SETSOCKOPT = 294
-- SYS_GETSOCKOPT = 295
-- SYS_SENDMSG = 296
-- SYS_RECVMSG = 297
-- SYS_SEMOP = 298
-- SYS_SEMGET = 299
-- SYS_SEMCTL = 300
-- SYS_MSGSND = 301
-- SYS_MSGRCV = 302
-- SYS_MSGGET = 303
-- SYS_MSGCTL = 304
-- SYS_SHMAT = 305
-- SYS_SHMDT = 306
-- SYS_SHMGET = 307
-- SYS_SHMCTL = 308
-- SYS_ADD_KEY = 309
-- SYS_REQUEST_KEY = 310
-- SYS_KEYCTL = 311
-- SYS_SEMTIMEDOP = 312
-- SYS_VSERVER = 313
-- SYS_IOPRIO_SET = 314
-- SYS_IOPRIO_GET = 315
-- SYS_INOTIFY_INIT = 316
-- SYS_INOTIFY_ADD_WATCH = 317
-- SYS_INOTIFY_RM_WATCH = 318
-- SYS_MBIND = 319
-- SYS_GET_MEMPOLICY = 320
-- SYS_SET_MEMPOLICY = 321
-- SYS_OPENAT = 322
-- SYS_MKDIRAT = 323
-- SYS_MKNODAT = 324
-- SYS_FCHOWNAT = 325
-- SYS_FUTIMESAT = 326
-- SYS_FSTATAT64 = 327
-- SYS_UNLINKAT = 328
-- SYS_RENAMEAT = 329
-- SYS_LINKAT = 330
-- SYS_SYMLINKAT = 331
-- SYS_READLINKAT = 332
-- SYS_FCHMODAT = 333
-- SYS_FACCESSAT = 334
-- SYS_PSELECT6 = 335
-- SYS_PPOLL = 336
-- SYS_UNSHARE = 337
-- SYS_SET_ROBUST_LIST = 338
-- SYS_GET_ROBUST_LIST = 339
-- SYS_SPLICE = 340
-- SYS_ARM_SYNC_FILE_RANGE = 341
-- SYS_TEE = 342
-- SYS_VMSPLICE = 343
-- SYS_MOVE_PAGES = 344
-- SYS_GETCPU = 345
-- SYS_EPOLL_PWAIT = 346
-- SYS_KEXEC_LOAD = 347
-- SYS_UTIMENSAT = 348
-- SYS_SIGNALFD = 349
-- SYS_TIMERFD_CREATE = 350
-- SYS_EVENTFD = 351
-- SYS_FALLOCATE = 352
-- SYS_TIMERFD_SETTIME = 353
-- SYS_TIMERFD_GETTIME = 354
-- SYS_SIGNALFD4 = 355
-- SYS_EVENTFD2 = 356
-- SYS_EPOLL_CREATE1 = 357
-- SYS_DUP3 = 358
-- SYS_PIPE2 = 359
-- SYS_INOTIFY_INIT1 = 360
-- SYS_PREADV = 361
-- SYS_PWRITEV = 362
-- SYS_RT_TGSIGQUEUEINFO = 363
-- SYS_PERF_EVENT_OPEN = 364
-- SYS_RECVMMSG = 365
-- SYS_ACCEPT4 = 366
-- SYS_FANOTIFY_INIT = 367
-- SYS_FANOTIFY_MARK = 368
-- SYS_PRLIMIT64 = 369
-- SYS_NAME_TO_HANDLE_AT = 370
-- SYS_OPEN_BY_HANDLE_AT = 371
-- SYS_CLOCK_ADJTIME = 372
-- SYS_SYNCFS = 373
-- SYS_SENDMMSG = 374
-- SYS_SETNS = 375
-- SYS_PROCESS_VM_READV = 376
-- SYS_PROCESS_VM_WRITEV = 377
-- SYS_KCMP = 378
-- SYS_FINIT_MODULE = 379
-- SYS_SCHED_SETATTR = 380
-- SYS_SCHED_GETATTR = 381
-- SYS_RENAMEAT2 = 382
-- SYS_SECCOMP = 383
-- SYS_GETRANDOM = 384
-- SYS_MEMFD_CREATE = 385
-- SYS_BPF = 386
-- SYS_EXECVEAT = 387
-- SYS_USERFAULTFD = 388
-- SYS_MEMBARRIER = 389
-- SYS_MLOCK2 = 390
-- SYS_COPY_FILE_RANGE = 391
-- SYS_PREADV2 = 392
-- SYS_PWRITEV2 = 393
-- SYS_PKEY_MPROTECT = 394
-- SYS_PKEY_ALLOC = 395
-- SYS_PKEY_FREE = 396
-+ SYS_RESTART_SYSCALL = 0
-+ SYS_EXIT = 1
-+ SYS_FORK = 2
-+ SYS_READ = 3
-+ SYS_WRITE = 4
-+ SYS_OPEN = 5
-+ SYS_CLOSE = 6
-+ SYS_CREAT = 8
-+ SYS_LINK = 9
-+ SYS_UNLINK = 10
-+ SYS_EXECVE = 11
-+ SYS_CHDIR = 12
-+ SYS_MKNOD = 14
-+ SYS_CHMOD = 15
-+ SYS_LCHOWN = 16
-+ SYS_LSEEK = 19
-+ SYS_GETPID = 20
-+ SYS_MOUNT = 21
-+ SYS_SETUID = 23
-+ SYS_GETUID = 24
-+ SYS_PTRACE = 26
-+ SYS_PAUSE = 29
-+ SYS_ACCESS = 33
-+ SYS_NICE = 34
-+ SYS_SYNC = 36
-+ SYS_KILL = 37
-+ SYS_RENAME = 38
-+ SYS_MKDIR = 39
-+ SYS_RMDIR = 40
-+ SYS_DUP = 41
-+ SYS_PIPE = 42
-+ SYS_TIMES = 43
-+ SYS_BRK = 45
-+ SYS_SETGID = 46
-+ SYS_GETGID = 47
-+ SYS_GETEUID = 49
-+ SYS_GETEGID = 50
-+ SYS_ACCT = 51
-+ SYS_UMOUNT2 = 52
-+ SYS_IOCTL = 54
-+ SYS_FCNTL = 55
-+ SYS_SETPGID = 57
-+ SYS_UMASK = 60
-+ SYS_CHROOT = 61
-+ SYS_USTAT = 62
-+ SYS_DUP2 = 63
-+ SYS_GETPPID = 64
-+ SYS_GETPGRP = 65
-+ SYS_SETSID = 66
-+ SYS_SIGACTION = 67
-+ SYS_SETREUID = 70
-+ SYS_SETREGID = 71
-+ SYS_SIGSUSPEND = 72
-+ SYS_SIGPENDING = 73
-+ SYS_SETHOSTNAME = 74
-+ SYS_SETRLIMIT = 75
-+ SYS_GETRUSAGE = 77
-+ SYS_GETTIMEOFDAY = 78
-+ SYS_SETTIMEOFDAY = 79
-+ SYS_GETGROUPS = 80
-+ SYS_SETGROUPS = 81
-+ SYS_SYMLINK = 83
-+ SYS_READLINK = 85
-+ SYS_USELIB = 86
-+ SYS_SWAPON = 87
-+ SYS_REBOOT = 88
-+ SYS_MUNMAP = 91
-+ SYS_TRUNCATE = 92
-+ SYS_FTRUNCATE = 93
-+ SYS_FCHMOD = 94
-+ SYS_FCHOWN = 95
-+ SYS_GETPRIORITY = 96
-+ SYS_SETPRIORITY = 97
-+ SYS_STATFS = 99
-+ SYS_FSTATFS = 100
-+ SYS_SYSLOG = 103
-+ SYS_SETITIMER = 104
-+ SYS_GETITIMER = 105
-+ SYS_STAT = 106
-+ SYS_LSTAT = 107
-+ SYS_FSTAT = 108
-+ SYS_VHANGUP = 111
-+ SYS_WAIT4 = 114
-+ SYS_SWAPOFF = 115
-+ SYS_SYSINFO = 116
-+ SYS_FSYNC = 118
-+ SYS_SIGRETURN = 119
-+ SYS_CLONE = 120
-+ SYS_SETDOMAINNAME = 121
-+ SYS_UNAME = 122
-+ SYS_ADJTIMEX = 124
-+ SYS_MPROTECT = 125
-+ SYS_SIGPROCMASK = 126
-+ SYS_INIT_MODULE = 128
-+ SYS_DELETE_MODULE = 129
-+ SYS_QUOTACTL = 131
-+ SYS_GETPGID = 132
-+ SYS_FCHDIR = 133
-+ SYS_BDFLUSH = 134
-+ SYS_SYSFS = 135
-+ SYS_PERSONALITY = 136
-+ SYS_SETFSUID = 138
-+ SYS_SETFSGID = 139
-+ SYS__LLSEEK = 140
-+ SYS_GETDENTS = 141
-+ SYS__NEWSELECT = 142
-+ SYS_FLOCK = 143
-+ SYS_MSYNC = 144
-+ SYS_READV = 145
-+ SYS_WRITEV = 146
-+ SYS_GETSID = 147
-+ SYS_FDATASYNC = 148
-+ SYS__SYSCTL = 149
-+ SYS_MLOCK = 150
-+ SYS_MUNLOCK = 151
-+ SYS_MLOCKALL = 152
-+ SYS_MUNLOCKALL = 153
-+ SYS_SCHED_SETPARAM = 154
-+ SYS_SCHED_GETPARAM = 155
-+ SYS_SCHED_SETSCHEDULER = 156
-+ SYS_SCHED_GETSCHEDULER = 157
-+ SYS_SCHED_YIELD = 158
-+ SYS_SCHED_GET_PRIORITY_MAX = 159
-+ SYS_SCHED_GET_PRIORITY_MIN = 160
-+ SYS_SCHED_RR_GET_INTERVAL = 161
-+ SYS_NANOSLEEP = 162
-+ SYS_MREMAP = 163
-+ SYS_SETRESUID = 164
-+ SYS_GETRESUID = 165
-+ SYS_POLL = 168
-+ SYS_NFSSERVCTL = 169
-+ SYS_SETRESGID = 170
-+ SYS_GETRESGID = 171
-+ SYS_PRCTL = 172
-+ SYS_RT_SIGRETURN = 173
-+ SYS_RT_SIGACTION = 174
-+ SYS_RT_SIGPROCMASK = 175
-+ SYS_RT_SIGPENDING = 176
-+ SYS_RT_SIGTIMEDWAIT = 177
-+ SYS_RT_SIGQUEUEINFO = 178
-+ SYS_RT_SIGSUSPEND = 179
-+ SYS_PREAD64 = 180
-+ SYS_PWRITE64 = 181
-+ SYS_CHOWN = 182
-+ SYS_GETCWD = 183
-+ SYS_CAPGET = 184
-+ SYS_CAPSET = 185
-+ SYS_SIGALTSTACK = 186
-+ SYS_SENDFILE = 187
-+ SYS_VFORK = 190
-+ SYS_UGETRLIMIT = 191
-+ SYS_MMAP2 = 192
-+ SYS_TRUNCATE64 = 193
-+ SYS_FTRUNCATE64 = 194
-+ SYS_STAT64 = 195
-+ SYS_LSTAT64 = 196
-+ SYS_FSTAT64 = 197
-+ SYS_LCHOWN32 = 198
-+ SYS_GETUID32 = 199
-+ SYS_GETGID32 = 200
-+ SYS_GETEUID32 = 201
-+ SYS_GETEGID32 = 202
-+ SYS_SETREUID32 = 203
-+ SYS_SETREGID32 = 204
-+ SYS_GETGROUPS32 = 205
-+ SYS_SETGROUPS32 = 206
-+ SYS_FCHOWN32 = 207
-+ SYS_SETRESUID32 = 208
-+ SYS_GETRESUID32 = 209
-+ SYS_SETRESGID32 = 210
-+ SYS_GETRESGID32 = 211
-+ SYS_CHOWN32 = 212
-+ SYS_SETUID32 = 213
-+ SYS_SETGID32 = 214
-+ SYS_SETFSUID32 = 215
-+ SYS_SETFSGID32 = 216
-+ SYS_GETDENTS64 = 217
-+ SYS_PIVOT_ROOT = 218
-+ SYS_MINCORE = 219
-+ SYS_MADVISE = 220
-+ SYS_FCNTL64 = 221
-+ SYS_GETTID = 224
-+ SYS_READAHEAD = 225
-+ SYS_SETXATTR = 226
-+ SYS_LSETXATTR = 227
-+ SYS_FSETXATTR = 228
-+ SYS_GETXATTR = 229
-+ SYS_LGETXATTR = 230
-+ SYS_FGETXATTR = 231
-+ SYS_LISTXATTR = 232
-+ SYS_LLISTXATTR = 233
-+ SYS_FLISTXATTR = 234
-+ SYS_REMOVEXATTR = 235
-+ SYS_LREMOVEXATTR = 236
-+ SYS_FREMOVEXATTR = 237
-+ SYS_TKILL = 238
-+ SYS_SENDFILE64 = 239
-+ SYS_FUTEX = 240
-+ SYS_SCHED_SETAFFINITY = 241
-+ SYS_SCHED_GETAFFINITY = 242
-+ SYS_IO_SETUP = 243
-+ SYS_IO_DESTROY = 244
-+ SYS_IO_GETEVENTS = 245
-+ SYS_IO_SUBMIT = 246
-+ SYS_IO_CANCEL = 247
-+ SYS_EXIT_GROUP = 248
-+ SYS_LOOKUP_DCOOKIE = 249
-+ SYS_EPOLL_CREATE = 250
-+ SYS_EPOLL_CTL = 251
-+ SYS_EPOLL_WAIT = 252
-+ SYS_REMAP_FILE_PAGES = 253
-+ SYS_SET_TID_ADDRESS = 256
-+ SYS_TIMER_CREATE = 257
-+ SYS_TIMER_SETTIME = 258
-+ SYS_TIMER_GETTIME = 259
-+ SYS_TIMER_GETOVERRUN = 260
-+ SYS_TIMER_DELETE = 261
-+ SYS_CLOCK_SETTIME = 262
-+ SYS_CLOCK_GETTIME = 263
-+ SYS_CLOCK_GETRES = 264
-+ SYS_CLOCK_NANOSLEEP = 265
-+ SYS_STATFS64 = 266
-+ SYS_FSTATFS64 = 267
-+ SYS_TGKILL = 268
-+ SYS_UTIMES = 269
-+ SYS_ARM_FADVISE64_64 = 270
-+ SYS_PCICONFIG_IOBASE = 271
-+ SYS_PCICONFIG_READ = 272
-+ SYS_PCICONFIG_WRITE = 273
-+ SYS_MQ_OPEN = 274
-+ SYS_MQ_UNLINK = 275
-+ SYS_MQ_TIMEDSEND = 276
-+ SYS_MQ_TIMEDRECEIVE = 277
-+ SYS_MQ_NOTIFY = 278
-+ SYS_MQ_GETSETATTR = 279
-+ SYS_WAITID = 280
-+ SYS_SOCKET = 281
-+ SYS_BIND = 282
-+ SYS_CONNECT = 283
-+ SYS_LISTEN = 284
-+ SYS_ACCEPT = 285
-+ SYS_GETSOCKNAME = 286
-+ SYS_GETPEERNAME = 287
-+ SYS_SOCKETPAIR = 288
-+ SYS_SEND = 289
-+ SYS_SENDTO = 290
-+ SYS_RECV = 291
-+ SYS_RECVFROM = 292
-+ SYS_SHUTDOWN = 293
-+ SYS_SETSOCKOPT = 294
-+ SYS_GETSOCKOPT = 295
-+ SYS_SENDMSG = 296
-+ SYS_RECVMSG = 297
-+ SYS_SEMOP = 298
-+ SYS_SEMGET = 299
-+ SYS_SEMCTL = 300
-+ SYS_MSGSND = 301
-+ SYS_MSGRCV = 302
-+ SYS_MSGGET = 303
-+ SYS_MSGCTL = 304
-+ SYS_SHMAT = 305
-+ SYS_SHMDT = 306
-+ SYS_SHMGET = 307
-+ SYS_SHMCTL = 308
-+ SYS_ADD_KEY = 309
-+ SYS_REQUEST_KEY = 310
-+ SYS_KEYCTL = 311
-+ SYS_SEMTIMEDOP = 312
-+ SYS_VSERVER = 313
-+ SYS_IOPRIO_SET = 314
-+ SYS_IOPRIO_GET = 315
-+ SYS_INOTIFY_INIT = 316
-+ SYS_INOTIFY_ADD_WATCH = 317
-+ SYS_INOTIFY_RM_WATCH = 318
-+ SYS_MBIND = 319
-+ SYS_GET_MEMPOLICY = 320
-+ SYS_SET_MEMPOLICY = 321
-+ SYS_OPENAT = 322
-+ SYS_MKDIRAT = 323
-+ SYS_MKNODAT = 324
-+ SYS_FCHOWNAT = 325
-+ SYS_FUTIMESAT = 326
-+ SYS_FSTATAT64 = 327
-+ SYS_UNLINKAT = 328
-+ SYS_RENAMEAT = 329
-+ SYS_LINKAT = 330
-+ SYS_SYMLINKAT = 331
-+ SYS_READLINKAT = 332
-+ SYS_FCHMODAT = 333
-+ SYS_FACCESSAT = 334
-+ SYS_PSELECT6 = 335
-+ SYS_PPOLL = 336
-+ SYS_UNSHARE = 337
-+ SYS_SET_ROBUST_LIST = 338
-+ SYS_GET_ROBUST_LIST = 339
-+ SYS_SPLICE = 340
-+ SYS_ARM_SYNC_FILE_RANGE = 341
-+ SYS_TEE = 342
-+ SYS_VMSPLICE = 343
-+ SYS_MOVE_PAGES = 344
-+ SYS_GETCPU = 345
-+ SYS_EPOLL_PWAIT = 346
-+ SYS_KEXEC_LOAD = 347
-+ SYS_UTIMENSAT = 348
-+ SYS_SIGNALFD = 349
-+ SYS_TIMERFD_CREATE = 350
-+ SYS_EVENTFD = 351
-+ SYS_FALLOCATE = 352
-+ SYS_TIMERFD_SETTIME = 353
-+ SYS_TIMERFD_GETTIME = 354
-+ SYS_SIGNALFD4 = 355
-+ SYS_EVENTFD2 = 356
-+ SYS_EPOLL_CREATE1 = 357
-+ SYS_DUP3 = 358
-+ SYS_PIPE2 = 359
-+ SYS_INOTIFY_INIT1 = 360
-+ SYS_PREADV = 361
-+ SYS_PWRITEV = 362
-+ SYS_RT_TGSIGQUEUEINFO = 363
-+ SYS_PERF_EVENT_OPEN = 364
-+ SYS_RECVMMSG = 365
-+ SYS_ACCEPT4 = 366
-+ SYS_FANOTIFY_INIT = 367
-+ SYS_FANOTIFY_MARK = 368
-+ SYS_PRLIMIT64 = 369
-+ SYS_NAME_TO_HANDLE_AT = 370
-+ SYS_OPEN_BY_HANDLE_AT = 371
-+ SYS_CLOCK_ADJTIME = 372
-+ SYS_SYNCFS = 373
-+ SYS_SENDMMSG = 374
-+ SYS_SETNS = 375
-+ SYS_PROCESS_VM_READV = 376
-+ SYS_PROCESS_VM_WRITEV = 377
-+ SYS_KCMP = 378
-+ SYS_FINIT_MODULE = 379
-+ SYS_SCHED_SETATTR = 380
-+ SYS_SCHED_GETATTR = 381
-+ SYS_RENAMEAT2 = 382
-+ SYS_SECCOMP = 383
-+ SYS_GETRANDOM = 384
-+ SYS_MEMFD_CREATE = 385
-+ SYS_BPF = 386
-+ SYS_EXECVEAT = 387
-+ SYS_USERFAULTFD = 388
-+ SYS_MEMBARRIER = 389
-+ SYS_MLOCK2 = 390
-+ SYS_COPY_FILE_RANGE = 391
-+ SYS_PREADV2 = 392
-+ SYS_PWRITEV2 = 393
-+ SYS_PKEY_MPROTECT = 394
-+ SYS_PKEY_ALLOC = 395
-+ SYS_PKEY_FREE = 396
-+ SYS_STATX = 397
-+ SYS_RSEQ = 398
-+ SYS_IO_PGETEVENTS = 399
-+ SYS_MIGRATE_PAGES = 400
-+ SYS_KEXEC_FILE_LOAD = 401
-+ SYS_CLOCK_GETTIME64 = 403
-+ SYS_CLOCK_SETTIME64 = 404
-+ SYS_CLOCK_ADJTIME64 = 405
-+ SYS_CLOCK_GETRES_TIME64 = 406
-+ SYS_CLOCK_NANOSLEEP_TIME64 = 407
-+ SYS_TIMER_GETTIME64 = 408
-+ SYS_TIMER_SETTIME64 = 409
-+ SYS_TIMERFD_GETTIME64 = 410
-+ SYS_TIMERFD_SETTIME64 = 411
-+ SYS_UTIMENSAT_TIME64 = 412
-+ SYS_PSELECT6_TIME64 = 413
-+ SYS_PPOLL_TIME64 = 414
-+ SYS_IO_PGETEVENTS_TIME64 = 416
-+ SYS_RECVMMSG_TIME64 = 417
-+ SYS_MQ_TIMEDSEND_TIME64 = 418
-+ SYS_MQ_TIMEDRECEIVE_TIME64 = 419
-+ SYS_SEMTIMEDOP_TIME64 = 420
-+ SYS_RT_SIGTIMEDWAIT_TIME64 = 421
-+ SYS_FUTEX_TIME64 = 422
-+ SYS_SCHED_RR_GET_INTERVAL_TIME64 = 423
-+ SYS_PIDFD_SEND_SIGNAL = 424
-+ SYS_IO_URING_SETUP = 425
-+ SYS_IO_URING_ENTER = 426
-+ SYS_IO_URING_REGISTER = 427
-+ SYS_OPEN_TREE = 428
-+ SYS_MOVE_MOUNT = 429
-+ SYS_FSOPEN = 430
-+ SYS_FSCONFIG = 431
-+ SYS_FSMOUNT = 432
-+ SYS_FSPICK = 433
-+ SYS_PIDFD_OPEN = 434
-+ SYS_CLONE3 = 435
-+ SYS_OPENAT2 = 437
-+ SYS_PIDFD_GETFD = 438
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
-index 64078435..e9404dd5 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
-@@ -1,4 +1,4 @@
--// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include -fsigned-char /tmp/include/asm/unistd.h
-+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include -fsigned-char /tmp/include/asm/unistd.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build arm64,linux
-@@ -282,4 +282,22 @@ const (
- SYS_PKEY_MPROTECT = 288
- SYS_PKEY_ALLOC = 289
- SYS_PKEY_FREE = 290
-+ SYS_STATX = 291
-+ SYS_IO_PGETEVENTS = 292
-+ SYS_RSEQ = 293
-+ SYS_KEXEC_FILE_LOAD = 294
-+ SYS_PIDFD_SEND_SIGNAL = 424
-+ SYS_IO_URING_SETUP = 425
-+ SYS_IO_URING_ENTER = 426
-+ SYS_IO_URING_REGISTER = 427
-+ SYS_OPEN_TREE = 428
-+ SYS_MOVE_MOUNT = 429
-+ SYS_FSOPEN = 430
-+ SYS_FSCONFIG = 431
-+ SYS_FSMOUNT = 432
-+ SYS_FSPICK = 433
-+ SYS_PIDFD_OPEN = 434
-+ SYS_CLONE3 = 435
-+ SYS_OPENAT2 = 437
-+ SYS_PIDFD_GETFD = 438
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
-index 939567c0..68bb6d29 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
-@@ -1,4 +1,4 @@
--// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
-+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build mips,linux
-@@ -6,369 +6,416 @@
- package unix
-
- const (
-- SYS_SYSCALL = 4000
-- SYS_EXIT = 4001
-- SYS_FORK = 4002
-- SYS_READ = 4003
-- SYS_WRITE = 4004
-- SYS_OPEN = 4005
-- SYS_CLOSE = 4006
-- SYS_WAITPID = 4007
-- SYS_CREAT = 4008
-- SYS_LINK = 4009
-- SYS_UNLINK = 4010
-- SYS_EXECVE = 4011
-- SYS_CHDIR = 4012
-- SYS_TIME = 4013
-- SYS_MKNOD = 4014
-- SYS_CHMOD = 4015
-- SYS_LCHOWN = 4016
-- SYS_BREAK = 4017
-- SYS_UNUSED18 = 4018
-- SYS_LSEEK = 4019
-- SYS_GETPID = 4020
-- SYS_MOUNT = 4021
-- SYS_UMOUNT = 4022
-- SYS_SETUID = 4023
-- SYS_GETUID = 4024
-- SYS_STIME = 4025
-- SYS_PTRACE = 4026
-- SYS_ALARM = 4027
-- SYS_UNUSED28 = 4028
-- SYS_PAUSE = 4029
-- SYS_UTIME = 4030
-- SYS_STTY = 4031
-- SYS_GTTY = 4032
-- SYS_ACCESS = 4033
-- SYS_NICE = 4034
-- SYS_FTIME = 4035
-- SYS_SYNC = 4036
-- SYS_KILL = 4037
-- SYS_RENAME = 4038
-- SYS_MKDIR = 4039
-- SYS_RMDIR = 4040
-- SYS_DUP = 4041
-- SYS_PIPE = 4042
-- SYS_TIMES = 4043
-- SYS_PROF = 4044
-- SYS_BRK = 4045
-- SYS_SETGID = 4046
-- SYS_GETGID = 4047
-- SYS_SIGNAL = 4048
-- SYS_GETEUID = 4049
-- SYS_GETEGID = 4050
-- SYS_ACCT = 4051
-- SYS_UMOUNT2 = 4052
-- SYS_LOCK = 4053
-- SYS_IOCTL = 4054
-- SYS_FCNTL = 4055
-- SYS_MPX = 4056
-- SYS_SETPGID = 4057
-- SYS_ULIMIT = 4058
-- SYS_UNUSED59 = 4059
-- SYS_UMASK = 4060
-- SYS_CHROOT = 4061
-- SYS_USTAT = 4062
-- SYS_DUP2 = 4063
-- SYS_GETPPID = 4064
-- SYS_GETPGRP = 4065
-- SYS_SETSID = 4066
-- SYS_SIGACTION = 4067
-- SYS_SGETMASK = 4068
-- SYS_SSETMASK = 4069
-- SYS_SETREUID = 4070
-- SYS_SETREGID = 4071
-- SYS_SIGSUSPEND = 4072
-- SYS_SIGPENDING = 4073
-- SYS_SETHOSTNAME = 4074
-- SYS_SETRLIMIT = 4075
-- SYS_GETRLIMIT = 4076
-- SYS_GETRUSAGE = 4077
-- SYS_GETTIMEOFDAY = 4078
-- SYS_SETTIMEOFDAY = 4079
-- SYS_GETGROUPS = 4080
-- SYS_SETGROUPS = 4081
-- SYS_RESERVED82 = 4082
-- SYS_SYMLINK = 4083
-- SYS_UNUSED84 = 4084
-- SYS_READLINK = 4085
-- SYS_USELIB = 4086
-- SYS_SWAPON = 4087
-- SYS_REBOOT = 4088
-- SYS_READDIR = 4089
-- SYS_MMAP = 4090
-- SYS_MUNMAP = 4091
-- SYS_TRUNCATE = 4092
-- SYS_FTRUNCATE = 4093
-- SYS_FCHMOD = 4094
-- SYS_FCHOWN = 4095
-- SYS_GETPRIORITY = 4096
-- SYS_SETPRIORITY = 4097
-- SYS_PROFIL = 4098
-- SYS_STATFS = 4099
-- SYS_FSTATFS = 4100
-- SYS_IOPERM = 4101
-- SYS_SOCKETCALL = 4102
-- SYS_SYSLOG = 4103
-- SYS_SETITIMER = 4104
-- SYS_GETITIMER = 4105
-- SYS_STAT = 4106
-- SYS_LSTAT = 4107
-- SYS_FSTAT = 4108
-- SYS_UNUSED109 = 4109
-- SYS_IOPL = 4110
-- SYS_VHANGUP = 4111
-- SYS_IDLE = 4112
-- SYS_VM86 = 4113
-- SYS_WAIT4 = 4114
-- SYS_SWAPOFF = 4115
-- SYS_SYSINFO = 4116
-- SYS_IPC = 4117
-- SYS_FSYNC = 4118
-- SYS_SIGRETURN = 4119
-- SYS_CLONE = 4120
-- SYS_SETDOMAINNAME = 4121
-- SYS_UNAME = 4122
-- SYS_MODIFY_LDT = 4123
-- SYS_ADJTIMEX = 4124
-- SYS_MPROTECT = 4125
-- SYS_SIGPROCMASK = 4126
-- SYS_CREATE_MODULE = 4127
-- SYS_INIT_MODULE = 4128
-- SYS_DELETE_MODULE = 4129
-- SYS_GET_KERNEL_SYMS = 4130
-- SYS_QUOTACTL = 4131
-- SYS_GETPGID = 4132
-- SYS_FCHDIR = 4133
-- SYS_BDFLUSH = 4134
-- SYS_SYSFS = 4135
-- SYS_PERSONALITY = 4136
-- SYS_AFS_SYSCALL = 4137
-- SYS_SETFSUID = 4138
-- SYS_SETFSGID = 4139
-- SYS__LLSEEK = 4140
-- SYS_GETDENTS = 4141
-- SYS__NEWSELECT = 4142
-- SYS_FLOCK = 4143
-- SYS_MSYNC = 4144
-- SYS_READV = 4145
-- SYS_WRITEV = 4146
-- SYS_CACHEFLUSH = 4147
-- SYS_CACHECTL = 4148
-- SYS_SYSMIPS = 4149
-- SYS_UNUSED150 = 4150
-- SYS_GETSID = 4151
-- SYS_FDATASYNC = 4152
-- SYS__SYSCTL = 4153
-- SYS_MLOCK = 4154
-- SYS_MUNLOCK = 4155
-- SYS_MLOCKALL = 4156
-- SYS_MUNLOCKALL = 4157
-- SYS_SCHED_SETPARAM = 4158
-- SYS_SCHED_GETPARAM = 4159
-- SYS_SCHED_SETSCHEDULER = 4160
-- SYS_SCHED_GETSCHEDULER = 4161
-- SYS_SCHED_YIELD = 4162
-- SYS_SCHED_GET_PRIORITY_MAX = 4163
-- SYS_SCHED_GET_PRIORITY_MIN = 4164
-- SYS_SCHED_RR_GET_INTERVAL = 4165
-- SYS_NANOSLEEP = 4166
-- SYS_MREMAP = 4167
-- SYS_ACCEPT = 4168
-- SYS_BIND = 4169
-- SYS_CONNECT = 4170
-- SYS_GETPEERNAME = 4171
-- SYS_GETSOCKNAME = 4172
-- SYS_GETSOCKOPT = 4173
-- SYS_LISTEN = 4174
-- SYS_RECV = 4175
-- SYS_RECVFROM = 4176
-- SYS_RECVMSG = 4177
-- SYS_SEND = 4178
-- SYS_SENDMSG = 4179
-- SYS_SENDTO = 4180
-- SYS_SETSOCKOPT = 4181
-- SYS_SHUTDOWN = 4182
-- SYS_SOCKET = 4183
-- SYS_SOCKETPAIR = 4184
-- SYS_SETRESUID = 4185
-- SYS_GETRESUID = 4186
-- SYS_QUERY_MODULE = 4187
-- SYS_POLL = 4188
-- SYS_NFSSERVCTL = 4189
-- SYS_SETRESGID = 4190
-- SYS_GETRESGID = 4191
-- SYS_PRCTL = 4192
-- SYS_RT_SIGRETURN = 4193
-- SYS_RT_SIGACTION = 4194
-- SYS_RT_SIGPROCMASK = 4195
-- SYS_RT_SIGPENDING = 4196
-- SYS_RT_SIGTIMEDWAIT = 4197
-- SYS_RT_SIGQUEUEINFO = 4198
-- SYS_RT_SIGSUSPEND = 4199
-- SYS_PREAD64 = 4200
-- SYS_PWRITE64 = 4201
-- SYS_CHOWN = 4202
-- SYS_GETCWD = 4203
-- SYS_CAPGET = 4204
-- SYS_CAPSET = 4205
-- SYS_SIGALTSTACK = 4206
-- SYS_SENDFILE = 4207
-- SYS_GETPMSG = 4208
-- SYS_PUTPMSG = 4209
-- SYS_MMAP2 = 4210
-- SYS_TRUNCATE64 = 4211
-- SYS_FTRUNCATE64 = 4212
-- SYS_STAT64 = 4213
-- SYS_LSTAT64 = 4214
-- SYS_FSTAT64 = 4215
-- SYS_PIVOT_ROOT = 4216
-- SYS_MINCORE = 4217
-- SYS_MADVISE = 4218
-- SYS_GETDENTS64 = 4219
-- SYS_FCNTL64 = 4220
-- SYS_RESERVED221 = 4221
-- SYS_GETTID = 4222
-- SYS_READAHEAD = 4223
-- SYS_SETXATTR = 4224
-- SYS_LSETXATTR = 4225
-- SYS_FSETXATTR = 4226
-- SYS_GETXATTR = 4227
-- SYS_LGETXATTR = 4228
-- SYS_FGETXATTR = 4229
-- SYS_LISTXATTR = 4230
-- SYS_LLISTXATTR = 4231
-- SYS_FLISTXATTR = 4232
-- SYS_REMOVEXATTR = 4233
-- SYS_LREMOVEXATTR = 4234
-- SYS_FREMOVEXATTR = 4235
-- SYS_TKILL = 4236
-- SYS_SENDFILE64 = 4237
-- SYS_FUTEX = 4238
-- SYS_SCHED_SETAFFINITY = 4239
-- SYS_SCHED_GETAFFINITY = 4240
-- SYS_IO_SETUP = 4241
-- SYS_IO_DESTROY = 4242
-- SYS_IO_GETEVENTS = 4243
-- SYS_IO_SUBMIT = 4244
-- SYS_IO_CANCEL = 4245
-- SYS_EXIT_GROUP = 4246
-- SYS_LOOKUP_DCOOKIE = 4247
-- SYS_EPOLL_CREATE = 4248
-- SYS_EPOLL_CTL = 4249
-- SYS_EPOLL_WAIT = 4250
-- SYS_REMAP_FILE_PAGES = 4251
-- SYS_SET_TID_ADDRESS = 4252
-- SYS_RESTART_SYSCALL = 4253
-- SYS_FADVISE64 = 4254
-- SYS_STATFS64 = 4255
-- SYS_FSTATFS64 = 4256
-- SYS_TIMER_CREATE = 4257
-- SYS_TIMER_SETTIME = 4258
-- SYS_TIMER_GETTIME = 4259
-- SYS_TIMER_GETOVERRUN = 4260
-- SYS_TIMER_DELETE = 4261
-- SYS_CLOCK_SETTIME = 4262
-- SYS_CLOCK_GETTIME = 4263
-- SYS_CLOCK_GETRES = 4264
-- SYS_CLOCK_NANOSLEEP = 4265
-- SYS_TGKILL = 4266
-- SYS_UTIMES = 4267
-- SYS_MBIND = 4268
-- SYS_GET_MEMPOLICY = 4269
-- SYS_SET_MEMPOLICY = 4270
-- SYS_MQ_OPEN = 4271
-- SYS_MQ_UNLINK = 4272
-- SYS_MQ_TIMEDSEND = 4273
-- SYS_MQ_TIMEDRECEIVE = 4274
-- SYS_MQ_NOTIFY = 4275
-- SYS_MQ_GETSETATTR = 4276
-- SYS_VSERVER = 4277
-- SYS_WAITID = 4278
-- SYS_ADD_KEY = 4280
-- SYS_REQUEST_KEY = 4281
-- SYS_KEYCTL = 4282
-- SYS_SET_THREAD_AREA = 4283
-- SYS_INOTIFY_INIT = 4284
-- SYS_INOTIFY_ADD_WATCH = 4285
-- SYS_INOTIFY_RM_WATCH = 4286
-- SYS_MIGRATE_PAGES = 4287
-- SYS_OPENAT = 4288
-- SYS_MKDIRAT = 4289
-- SYS_MKNODAT = 4290
-- SYS_FCHOWNAT = 4291
-- SYS_FUTIMESAT = 4292
-- SYS_FSTATAT64 = 4293
-- SYS_UNLINKAT = 4294
-- SYS_RENAMEAT = 4295
-- SYS_LINKAT = 4296
-- SYS_SYMLINKAT = 4297
-- SYS_READLINKAT = 4298
-- SYS_FCHMODAT = 4299
-- SYS_FACCESSAT = 4300
-- SYS_PSELECT6 = 4301
-- SYS_PPOLL = 4302
-- SYS_UNSHARE = 4303
-- SYS_SPLICE = 4304
-- SYS_SYNC_FILE_RANGE = 4305
-- SYS_TEE = 4306
-- SYS_VMSPLICE = 4307
-- SYS_MOVE_PAGES = 4308
-- SYS_SET_ROBUST_LIST = 4309
-- SYS_GET_ROBUST_LIST = 4310
-- SYS_KEXEC_LOAD = 4311
-- SYS_GETCPU = 4312
-- SYS_EPOLL_PWAIT = 4313
-- SYS_IOPRIO_SET = 4314
-- SYS_IOPRIO_GET = 4315
-- SYS_UTIMENSAT = 4316
-- SYS_SIGNALFD = 4317
-- SYS_TIMERFD = 4318
-- SYS_EVENTFD = 4319
-- SYS_FALLOCATE = 4320
-- SYS_TIMERFD_CREATE = 4321
-- SYS_TIMERFD_GETTIME = 4322
-- SYS_TIMERFD_SETTIME = 4323
-- SYS_SIGNALFD4 = 4324
-- SYS_EVENTFD2 = 4325
-- SYS_EPOLL_CREATE1 = 4326
-- SYS_DUP3 = 4327
-- SYS_PIPE2 = 4328
-- SYS_INOTIFY_INIT1 = 4329
-- SYS_PREADV = 4330
-- SYS_PWRITEV = 4331
-- SYS_RT_TGSIGQUEUEINFO = 4332
-- SYS_PERF_EVENT_OPEN = 4333
-- SYS_ACCEPT4 = 4334
-- SYS_RECVMMSG = 4335
-- SYS_FANOTIFY_INIT = 4336
-- SYS_FANOTIFY_MARK = 4337
-- SYS_PRLIMIT64 = 4338
-- SYS_NAME_TO_HANDLE_AT = 4339
-- SYS_OPEN_BY_HANDLE_AT = 4340
-- SYS_CLOCK_ADJTIME = 4341
-- SYS_SYNCFS = 4342
-- SYS_SENDMMSG = 4343
-- SYS_SETNS = 4344
-- SYS_PROCESS_VM_READV = 4345
-- SYS_PROCESS_VM_WRITEV = 4346
-- SYS_KCMP = 4347
-- SYS_FINIT_MODULE = 4348
-- SYS_SCHED_SETATTR = 4349
-- SYS_SCHED_GETATTR = 4350
-- SYS_RENAMEAT2 = 4351
-- SYS_SECCOMP = 4352
-- SYS_GETRANDOM = 4353
-- SYS_MEMFD_CREATE = 4354
-- SYS_BPF = 4355
-- SYS_EXECVEAT = 4356
-- SYS_USERFAULTFD = 4357
-- SYS_MEMBARRIER = 4358
-- SYS_MLOCK2 = 4359
-- SYS_COPY_FILE_RANGE = 4360
-- SYS_PREADV2 = 4361
-- SYS_PWRITEV2 = 4362
-- SYS_PKEY_MPROTECT = 4363
-- SYS_PKEY_ALLOC = 4364
-- SYS_PKEY_FREE = 4365
-+ SYS_SYSCALL = 4000
-+ SYS_EXIT = 4001
-+ SYS_FORK = 4002
-+ SYS_READ = 4003
-+ SYS_WRITE = 4004
-+ SYS_OPEN = 4005
-+ SYS_CLOSE = 4006
-+ SYS_WAITPID = 4007
-+ SYS_CREAT = 4008
-+ SYS_LINK = 4009
-+ SYS_UNLINK = 4010
-+ SYS_EXECVE = 4011
-+ SYS_CHDIR = 4012
-+ SYS_TIME = 4013
-+ SYS_MKNOD = 4014
-+ SYS_CHMOD = 4015
-+ SYS_LCHOWN = 4016
-+ SYS_BREAK = 4017
-+ SYS_UNUSED18 = 4018
-+ SYS_LSEEK = 4019
-+ SYS_GETPID = 4020
-+ SYS_MOUNT = 4021
-+ SYS_UMOUNT = 4022
-+ SYS_SETUID = 4023
-+ SYS_GETUID = 4024
-+ SYS_STIME = 4025
-+ SYS_PTRACE = 4026
-+ SYS_ALARM = 4027
-+ SYS_UNUSED28 = 4028
-+ SYS_PAUSE = 4029
-+ SYS_UTIME = 4030
-+ SYS_STTY = 4031
-+ SYS_GTTY = 4032
-+ SYS_ACCESS = 4033
-+ SYS_NICE = 4034
-+ SYS_FTIME = 4035
-+ SYS_SYNC = 4036
-+ SYS_KILL = 4037
-+ SYS_RENAME = 4038
-+ SYS_MKDIR = 4039
-+ SYS_RMDIR = 4040
-+ SYS_DUP = 4041
-+ SYS_PIPE = 4042
-+ SYS_TIMES = 4043
-+ SYS_PROF = 4044
-+ SYS_BRK = 4045
-+ SYS_SETGID = 4046
-+ SYS_GETGID = 4047
-+ SYS_SIGNAL = 4048
-+ SYS_GETEUID = 4049
-+ SYS_GETEGID = 4050
-+ SYS_ACCT = 4051
-+ SYS_UMOUNT2 = 4052
-+ SYS_LOCK = 4053
-+ SYS_IOCTL = 4054
-+ SYS_FCNTL = 4055
-+ SYS_MPX = 4056
-+ SYS_SETPGID = 4057
-+ SYS_ULIMIT = 4058
-+ SYS_UNUSED59 = 4059
-+ SYS_UMASK = 4060
-+ SYS_CHROOT = 4061
-+ SYS_USTAT = 4062
-+ SYS_DUP2 = 4063
-+ SYS_GETPPID = 4064
-+ SYS_GETPGRP = 4065
-+ SYS_SETSID = 4066
-+ SYS_SIGACTION = 4067
-+ SYS_SGETMASK = 4068
-+ SYS_SSETMASK = 4069
-+ SYS_SETREUID = 4070
-+ SYS_SETREGID = 4071
-+ SYS_SIGSUSPEND = 4072
-+ SYS_SIGPENDING = 4073
-+ SYS_SETHOSTNAME = 4074
-+ SYS_SETRLIMIT = 4075
-+ SYS_GETRLIMIT = 4076
-+ SYS_GETRUSAGE = 4077
-+ SYS_GETTIMEOFDAY = 4078
-+ SYS_SETTIMEOFDAY = 4079
-+ SYS_GETGROUPS = 4080
-+ SYS_SETGROUPS = 4081
-+ SYS_RESERVED82 = 4082
-+ SYS_SYMLINK = 4083
-+ SYS_UNUSED84 = 4084
-+ SYS_READLINK = 4085
-+ SYS_USELIB = 4086
-+ SYS_SWAPON = 4087
-+ SYS_REBOOT = 4088
-+ SYS_READDIR = 4089
-+ SYS_MMAP = 4090
-+ SYS_MUNMAP = 4091
-+ SYS_TRUNCATE = 4092
-+ SYS_FTRUNCATE = 4093
-+ SYS_FCHMOD = 4094
-+ SYS_FCHOWN = 4095
-+ SYS_GETPRIORITY = 4096
-+ SYS_SETPRIORITY = 4097
-+ SYS_PROFIL = 4098
-+ SYS_STATFS = 4099
-+ SYS_FSTATFS = 4100
-+ SYS_IOPERM = 4101
-+ SYS_SOCKETCALL = 4102
-+ SYS_SYSLOG = 4103
-+ SYS_SETITIMER = 4104
-+ SYS_GETITIMER = 4105
-+ SYS_STAT = 4106
-+ SYS_LSTAT = 4107
-+ SYS_FSTAT = 4108
-+ SYS_UNUSED109 = 4109
-+ SYS_IOPL = 4110
-+ SYS_VHANGUP = 4111
-+ SYS_IDLE = 4112
-+ SYS_VM86 = 4113
-+ SYS_WAIT4 = 4114
-+ SYS_SWAPOFF = 4115
-+ SYS_SYSINFO = 4116
-+ SYS_IPC = 4117
-+ SYS_FSYNC = 4118
-+ SYS_SIGRETURN = 4119
-+ SYS_CLONE = 4120
-+ SYS_SETDOMAINNAME = 4121
-+ SYS_UNAME = 4122
-+ SYS_MODIFY_LDT = 4123
-+ SYS_ADJTIMEX = 4124
-+ SYS_MPROTECT = 4125
-+ SYS_SIGPROCMASK = 4126
-+ SYS_CREATE_MODULE = 4127
-+ SYS_INIT_MODULE = 4128
-+ SYS_DELETE_MODULE = 4129
-+ SYS_GET_KERNEL_SYMS = 4130
-+ SYS_QUOTACTL = 4131
-+ SYS_GETPGID = 4132
-+ SYS_FCHDIR = 4133
-+ SYS_BDFLUSH = 4134
-+ SYS_SYSFS = 4135
-+ SYS_PERSONALITY = 4136
-+ SYS_AFS_SYSCALL = 4137
-+ SYS_SETFSUID = 4138
-+ SYS_SETFSGID = 4139
-+ SYS__LLSEEK = 4140
-+ SYS_GETDENTS = 4141
-+ SYS__NEWSELECT = 4142
-+ SYS_FLOCK = 4143
-+ SYS_MSYNC = 4144
-+ SYS_READV = 4145
-+ SYS_WRITEV = 4146
-+ SYS_CACHEFLUSH = 4147
-+ SYS_CACHECTL = 4148
-+ SYS_SYSMIPS = 4149
-+ SYS_UNUSED150 = 4150
-+ SYS_GETSID = 4151
-+ SYS_FDATASYNC = 4152
-+ SYS__SYSCTL = 4153
-+ SYS_MLOCK = 4154
-+ SYS_MUNLOCK = 4155
-+ SYS_MLOCKALL = 4156
-+ SYS_MUNLOCKALL = 4157
-+ SYS_SCHED_SETPARAM = 4158
-+ SYS_SCHED_GETPARAM = 4159
-+ SYS_SCHED_SETSCHEDULER = 4160
-+ SYS_SCHED_GETSCHEDULER = 4161
-+ SYS_SCHED_YIELD = 4162
-+ SYS_SCHED_GET_PRIORITY_MAX = 4163
-+ SYS_SCHED_GET_PRIORITY_MIN = 4164
-+ SYS_SCHED_RR_GET_INTERVAL = 4165
-+ SYS_NANOSLEEP = 4166
-+ SYS_MREMAP = 4167
-+ SYS_ACCEPT = 4168
-+ SYS_BIND = 4169
-+ SYS_CONNECT = 4170
-+ SYS_GETPEERNAME = 4171
-+ SYS_GETSOCKNAME = 4172
-+ SYS_GETSOCKOPT = 4173
-+ SYS_LISTEN = 4174
-+ SYS_RECV = 4175
-+ SYS_RECVFROM = 4176
-+ SYS_RECVMSG = 4177
-+ SYS_SEND = 4178
-+ SYS_SENDMSG = 4179
-+ SYS_SENDTO = 4180
-+ SYS_SETSOCKOPT = 4181
-+ SYS_SHUTDOWN = 4182
-+ SYS_SOCKET = 4183
-+ SYS_SOCKETPAIR = 4184
-+ SYS_SETRESUID = 4185
-+ SYS_GETRESUID = 4186
-+ SYS_QUERY_MODULE = 4187
-+ SYS_POLL = 4188
-+ SYS_NFSSERVCTL = 4189
-+ SYS_SETRESGID = 4190
-+ SYS_GETRESGID = 4191
-+ SYS_PRCTL = 4192
-+ SYS_RT_SIGRETURN = 4193
-+ SYS_RT_SIGACTION = 4194
-+ SYS_RT_SIGPROCMASK = 4195
-+ SYS_RT_SIGPENDING = 4196
-+ SYS_RT_SIGTIMEDWAIT = 4197
-+ SYS_RT_SIGQUEUEINFO = 4198
-+ SYS_RT_SIGSUSPEND = 4199
-+ SYS_PREAD64 = 4200
-+ SYS_PWRITE64 = 4201
-+ SYS_CHOWN = 4202
-+ SYS_GETCWD = 4203
-+ SYS_CAPGET = 4204
-+ SYS_CAPSET = 4205
-+ SYS_SIGALTSTACK = 4206
-+ SYS_SENDFILE = 4207
-+ SYS_GETPMSG = 4208
-+ SYS_PUTPMSG = 4209
-+ SYS_MMAP2 = 4210
-+ SYS_TRUNCATE64 = 4211
-+ SYS_FTRUNCATE64 = 4212
-+ SYS_STAT64 = 4213
-+ SYS_LSTAT64 = 4214
-+ SYS_FSTAT64 = 4215
-+ SYS_PIVOT_ROOT = 4216
-+ SYS_MINCORE = 4217
-+ SYS_MADVISE = 4218
-+ SYS_GETDENTS64 = 4219
-+ SYS_FCNTL64 = 4220
-+ SYS_RESERVED221 = 4221
-+ SYS_GETTID = 4222
-+ SYS_READAHEAD = 4223
-+ SYS_SETXATTR = 4224
-+ SYS_LSETXATTR = 4225
-+ SYS_FSETXATTR = 4226
-+ SYS_GETXATTR = 4227
-+ SYS_LGETXATTR = 4228
-+ SYS_FGETXATTR = 4229
-+ SYS_LISTXATTR = 4230
-+ SYS_LLISTXATTR = 4231
-+ SYS_FLISTXATTR = 4232
-+ SYS_REMOVEXATTR = 4233
-+ SYS_LREMOVEXATTR = 4234
-+ SYS_FREMOVEXATTR = 4235
-+ SYS_TKILL = 4236
-+ SYS_SENDFILE64 = 4237
-+ SYS_FUTEX = 4238
-+ SYS_SCHED_SETAFFINITY = 4239
-+ SYS_SCHED_GETAFFINITY = 4240
-+ SYS_IO_SETUP = 4241
-+ SYS_IO_DESTROY = 4242
-+ SYS_IO_GETEVENTS = 4243
-+ SYS_IO_SUBMIT = 4244
-+ SYS_IO_CANCEL = 4245
-+ SYS_EXIT_GROUP = 4246
-+ SYS_LOOKUP_DCOOKIE = 4247
-+ SYS_EPOLL_CREATE = 4248
-+ SYS_EPOLL_CTL = 4249
-+ SYS_EPOLL_WAIT = 4250
-+ SYS_REMAP_FILE_PAGES = 4251
-+ SYS_SET_TID_ADDRESS = 4252
-+ SYS_RESTART_SYSCALL = 4253
-+ SYS_FADVISE64 = 4254
-+ SYS_STATFS64 = 4255
-+ SYS_FSTATFS64 = 4256
-+ SYS_TIMER_CREATE = 4257
-+ SYS_TIMER_SETTIME = 4258
-+ SYS_TIMER_GETTIME = 4259
-+ SYS_TIMER_GETOVERRUN = 4260
-+ SYS_TIMER_DELETE = 4261
-+ SYS_CLOCK_SETTIME = 4262
-+ SYS_CLOCK_GETTIME = 4263
-+ SYS_CLOCK_GETRES = 4264
-+ SYS_CLOCK_NANOSLEEP = 4265
-+ SYS_TGKILL = 4266
-+ SYS_UTIMES = 4267
-+ SYS_MBIND = 4268
-+ SYS_GET_MEMPOLICY = 4269
-+ SYS_SET_MEMPOLICY = 4270
-+ SYS_MQ_OPEN = 4271
-+ SYS_MQ_UNLINK = 4272
-+ SYS_MQ_TIMEDSEND = 4273
-+ SYS_MQ_TIMEDRECEIVE = 4274
-+ SYS_MQ_NOTIFY = 4275
-+ SYS_MQ_GETSETATTR = 4276
-+ SYS_VSERVER = 4277
-+ SYS_WAITID = 4278
-+ SYS_ADD_KEY = 4280
-+ SYS_REQUEST_KEY = 4281
-+ SYS_KEYCTL = 4282
-+ SYS_SET_THREAD_AREA = 4283
-+ SYS_INOTIFY_INIT = 4284
-+ SYS_INOTIFY_ADD_WATCH = 4285
-+ SYS_INOTIFY_RM_WATCH = 4286
-+ SYS_MIGRATE_PAGES = 4287
-+ SYS_OPENAT = 4288
-+ SYS_MKDIRAT = 4289
-+ SYS_MKNODAT = 4290
-+ SYS_FCHOWNAT = 4291
-+ SYS_FUTIMESAT = 4292
-+ SYS_FSTATAT64 = 4293
-+ SYS_UNLINKAT = 4294
-+ SYS_RENAMEAT = 4295
-+ SYS_LINKAT = 4296
-+ SYS_SYMLINKAT = 4297
-+ SYS_READLINKAT = 4298
-+ SYS_FCHMODAT = 4299
-+ SYS_FACCESSAT = 4300
-+ SYS_PSELECT6 = 4301
-+ SYS_PPOLL = 4302
-+ SYS_UNSHARE = 4303
-+ SYS_SPLICE = 4304
-+ SYS_SYNC_FILE_RANGE = 4305
-+ SYS_TEE = 4306
-+ SYS_VMSPLICE = 4307
-+ SYS_MOVE_PAGES = 4308
-+ SYS_SET_ROBUST_LIST = 4309
-+ SYS_GET_ROBUST_LIST = 4310
-+ SYS_KEXEC_LOAD = 4311
-+ SYS_GETCPU = 4312
-+ SYS_EPOLL_PWAIT = 4313
-+ SYS_IOPRIO_SET = 4314
-+ SYS_IOPRIO_GET = 4315
-+ SYS_UTIMENSAT = 4316
-+ SYS_SIGNALFD = 4317
-+ SYS_TIMERFD = 4318
-+ SYS_EVENTFD = 4319
-+ SYS_FALLOCATE = 4320
-+ SYS_TIMERFD_CREATE = 4321
-+ SYS_TIMERFD_GETTIME = 4322
-+ SYS_TIMERFD_SETTIME = 4323
-+ SYS_SIGNALFD4 = 4324
-+ SYS_EVENTFD2 = 4325
-+ SYS_EPOLL_CREATE1 = 4326
-+ SYS_DUP3 = 4327
-+ SYS_PIPE2 = 4328
-+ SYS_INOTIFY_INIT1 = 4329
-+ SYS_PREADV = 4330
-+ SYS_PWRITEV = 4331
-+ SYS_RT_TGSIGQUEUEINFO = 4332
-+ SYS_PERF_EVENT_OPEN = 4333
-+ SYS_ACCEPT4 = 4334
-+ SYS_RECVMMSG = 4335
-+ SYS_FANOTIFY_INIT = 4336
-+ SYS_FANOTIFY_MARK = 4337
-+ SYS_PRLIMIT64 = 4338
-+ SYS_NAME_TO_HANDLE_AT = 4339
-+ SYS_OPEN_BY_HANDLE_AT = 4340
-+ SYS_CLOCK_ADJTIME = 4341
-+ SYS_SYNCFS = 4342
-+ SYS_SENDMMSG = 4343
-+ SYS_SETNS = 4344
-+ SYS_PROCESS_VM_READV = 4345
-+ SYS_PROCESS_VM_WRITEV = 4346
-+ SYS_KCMP = 4347
-+ SYS_FINIT_MODULE = 4348
-+ SYS_SCHED_SETATTR = 4349
-+ SYS_SCHED_GETATTR = 4350
-+ SYS_RENAMEAT2 = 4351
-+ SYS_SECCOMP = 4352
-+ SYS_GETRANDOM = 4353
-+ SYS_MEMFD_CREATE = 4354
-+ SYS_BPF = 4355
-+ SYS_EXECVEAT = 4356
-+ SYS_USERFAULTFD = 4357
-+ SYS_MEMBARRIER = 4358
-+ SYS_MLOCK2 = 4359
-+ SYS_COPY_FILE_RANGE = 4360
-+ SYS_PREADV2 = 4361
-+ SYS_PWRITEV2 = 4362
-+ SYS_PKEY_MPROTECT = 4363
-+ SYS_PKEY_ALLOC = 4364
-+ SYS_PKEY_FREE = 4365
-+ SYS_STATX = 4366
-+ SYS_RSEQ = 4367
-+ SYS_IO_PGETEVENTS = 4368
-+ SYS_SEMGET = 4393
-+ SYS_SEMCTL = 4394
-+ SYS_SHMGET = 4395
-+ SYS_SHMCTL = 4396
-+ SYS_SHMAT = 4397
-+ SYS_SHMDT = 4398
-+ SYS_MSGGET = 4399
-+ SYS_MSGSND = 4400
-+ SYS_MSGRCV = 4401
-+ SYS_MSGCTL = 4402
-+ SYS_CLOCK_GETTIME64 = 4403
-+ SYS_CLOCK_SETTIME64 = 4404
-+ SYS_CLOCK_ADJTIME64 = 4405
-+ SYS_CLOCK_GETRES_TIME64 = 4406
-+ SYS_CLOCK_NANOSLEEP_TIME64 = 4407
-+ SYS_TIMER_GETTIME64 = 4408
-+ SYS_TIMER_SETTIME64 = 4409
-+ SYS_TIMERFD_GETTIME64 = 4410
-+ SYS_TIMERFD_SETTIME64 = 4411
-+ SYS_UTIMENSAT_TIME64 = 4412
-+ SYS_PSELECT6_TIME64 = 4413
-+ SYS_PPOLL_TIME64 = 4414
-+ SYS_IO_PGETEVENTS_TIME64 = 4416
-+ SYS_RECVMMSG_TIME64 = 4417
-+ SYS_MQ_TIMEDSEND_TIME64 = 4418
-+ SYS_MQ_TIMEDRECEIVE_TIME64 = 4419
-+ SYS_SEMTIMEDOP_TIME64 = 4420
-+ SYS_RT_SIGTIMEDWAIT_TIME64 = 4421
-+ SYS_FUTEX_TIME64 = 4422
-+ SYS_SCHED_RR_GET_INTERVAL_TIME64 = 4423
-+ SYS_PIDFD_SEND_SIGNAL = 4424
-+ SYS_IO_URING_SETUP = 4425
-+ SYS_IO_URING_ENTER = 4426
-+ SYS_IO_URING_REGISTER = 4427
-+ SYS_OPEN_TREE = 4428
-+ SYS_MOVE_MOUNT = 4429
-+ SYS_FSOPEN = 4430
-+ SYS_FSCONFIG = 4431
-+ SYS_FSMOUNT = 4432
-+ SYS_FSPICK = 4433
-+ SYS_PIDFD_OPEN = 4434
-+ SYS_CLONE3 = 4435
-+ SYS_OPENAT2 = 4437
-+ SYS_PIDFD_GETFD = 4438
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
-index 09db9596..4e525118 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
-@@ -1,4 +1,4 @@
--// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
-+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build mips64,linux
-@@ -331,4 +331,21 @@ const (
- SYS_PKEY_MPROTECT = 5323
- SYS_PKEY_ALLOC = 5324
- SYS_PKEY_FREE = 5325
-+ SYS_STATX = 5326
-+ SYS_RSEQ = 5327
-+ SYS_IO_PGETEVENTS = 5328
-+ SYS_PIDFD_SEND_SIGNAL = 5424
-+ SYS_IO_URING_SETUP = 5425
-+ SYS_IO_URING_ENTER = 5426
-+ SYS_IO_URING_REGISTER = 5427
-+ SYS_OPEN_TREE = 5428
-+ SYS_MOVE_MOUNT = 5429
-+ SYS_FSOPEN = 5430
-+ SYS_FSCONFIG = 5431
-+ SYS_FSMOUNT = 5432
-+ SYS_FSPICK = 5433
-+ SYS_PIDFD_OPEN = 5434
-+ SYS_CLONE3 = 5435
-+ SYS_OPENAT2 = 5437
-+ SYS_PIDFD_GETFD = 5438
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
-index d1b872a0..4d9aa300 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
-@@ -1,4 +1,4 @@
--// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
-+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build mips64le,linux
-@@ -331,4 +331,21 @@ const (
- SYS_PKEY_MPROTECT = 5323
- SYS_PKEY_ALLOC = 5324
- SYS_PKEY_FREE = 5325
-+ SYS_STATX = 5326
-+ SYS_RSEQ = 5327
-+ SYS_IO_PGETEVENTS = 5328
-+ SYS_PIDFD_SEND_SIGNAL = 5424
-+ SYS_IO_URING_SETUP = 5425
-+ SYS_IO_URING_ENTER = 5426
-+ SYS_IO_URING_REGISTER = 5427
-+ SYS_OPEN_TREE = 5428
-+ SYS_MOVE_MOUNT = 5429
-+ SYS_FSOPEN = 5430
-+ SYS_FSCONFIG = 5431
-+ SYS_FSMOUNT = 5432
-+ SYS_FSPICK = 5433
-+ SYS_PIDFD_OPEN = 5434
-+ SYS_CLONE3 = 5435
-+ SYS_OPENAT2 = 5437
-+ SYS_PIDFD_GETFD = 5438
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
-index 82ba20f2..64af0707 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
-@@ -1,4 +1,4 @@
--// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
-+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build mipsle,linux
-@@ -6,369 +6,416 @@
- package unix
-
- const (
-- SYS_SYSCALL = 4000
-- SYS_EXIT = 4001
-- SYS_FORK = 4002
-- SYS_READ = 4003
-- SYS_WRITE = 4004
-- SYS_OPEN = 4005
-- SYS_CLOSE = 4006
-- SYS_WAITPID = 4007
-- SYS_CREAT = 4008
-- SYS_LINK = 4009
-- SYS_UNLINK = 4010
-- SYS_EXECVE = 4011
-- SYS_CHDIR = 4012
-- SYS_TIME = 4013
-- SYS_MKNOD = 4014
-- SYS_CHMOD = 4015
-- SYS_LCHOWN = 4016
-- SYS_BREAK = 4017
-- SYS_UNUSED18 = 4018
-- SYS_LSEEK = 4019
-- SYS_GETPID = 4020
-- SYS_MOUNT = 4021
-- SYS_UMOUNT = 4022
-- SYS_SETUID = 4023
-- SYS_GETUID = 4024
-- SYS_STIME = 4025
-- SYS_PTRACE = 4026
-- SYS_ALARM = 4027
-- SYS_UNUSED28 = 4028
-- SYS_PAUSE = 4029
-- SYS_UTIME = 4030
-- SYS_STTY = 4031
-- SYS_GTTY = 4032
-- SYS_ACCESS = 4033
-- SYS_NICE = 4034
-- SYS_FTIME = 4035
-- SYS_SYNC = 4036
-- SYS_KILL = 4037
-- SYS_RENAME = 4038
-- SYS_MKDIR = 4039
-- SYS_RMDIR = 4040
-- SYS_DUP = 4041
-- SYS_PIPE = 4042
-- SYS_TIMES = 4043
-- SYS_PROF = 4044
-- SYS_BRK = 4045
-- SYS_SETGID = 4046
-- SYS_GETGID = 4047
-- SYS_SIGNAL = 4048
-- SYS_GETEUID = 4049
-- SYS_GETEGID = 4050
-- SYS_ACCT = 4051
-- SYS_UMOUNT2 = 4052
-- SYS_LOCK = 4053
-- SYS_IOCTL = 4054
-- SYS_FCNTL = 4055
-- SYS_MPX = 4056
-- SYS_SETPGID = 4057
-- SYS_ULIMIT = 4058
-- SYS_UNUSED59 = 4059
-- SYS_UMASK = 4060
-- SYS_CHROOT = 4061
-- SYS_USTAT = 4062
-- SYS_DUP2 = 4063
-- SYS_GETPPID = 4064
-- SYS_GETPGRP = 4065
-- SYS_SETSID = 4066
-- SYS_SIGACTION = 4067
-- SYS_SGETMASK = 4068
-- SYS_SSETMASK = 4069
-- SYS_SETREUID = 4070
-- SYS_SETREGID = 4071
-- SYS_SIGSUSPEND = 4072
-- SYS_SIGPENDING = 4073
-- SYS_SETHOSTNAME = 4074
-- SYS_SETRLIMIT = 4075
-- SYS_GETRLIMIT = 4076
-- SYS_GETRUSAGE = 4077
-- SYS_GETTIMEOFDAY = 4078
-- SYS_SETTIMEOFDAY = 4079
-- SYS_GETGROUPS = 4080
-- SYS_SETGROUPS = 4081
-- SYS_RESERVED82 = 4082
-- SYS_SYMLINK = 4083
-- SYS_UNUSED84 = 4084
-- SYS_READLINK = 4085
-- SYS_USELIB = 4086
-- SYS_SWAPON = 4087
-- SYS_REBOOT = 4088
-- SYS_READDIR = 4089
-- SYS_MMAP = 4090
-- SYS_MUNMAP = 4091
-- SYS_TRUNCATE = 4092
-- SYS_FTRUNCATE = 4093
-- SYS_FCHMOD = 4094
-- SYS_FCHOWN = 4095
-- SYS_GETPRIORITY = 4096
-- SYS_SETPRIORITY = 4097
-- SYS_PROFIL = 4098
-- SYS_STATFS = 4099
-- SYS_FSTATFS = 4100
-- SYS_IOPERM = 4101
-- SYS_SOCKETCALL = 4102
-- SYS_SYSLOG = 4103
-- SYS_SETITIMER = 4104
-- SYS_GETITIMER = 4105
-- SYS_STAT = 4106
-- SYS_LSTAT = 4107
-- SYS_FSTAT = 4108
-- SYS_UNUSED109 = 4109
-- SYS_IOPL = 4110
-- SYS_VHANGUP = 4111
-- SYS_IDLE = 4112
-- SYS_VM86 = 4113
-- SYS_WAIT4 = 4114
-- SYS_SWAPOFF = 4115
-- SYS_SYSINFO = 4116
-- SYS_IPC = 4117
-- SYS_FSYNC = 4118
-- SYS_SIGRETURN = 4119
-- SYS_CLONE = 4120
-- SYS_SETDOMAINNAME = 4121
-- SYS_UNAME = 4122
-- SYS_MODIFY_LDT = 4123
-- SYS_ADJTIMEX = 4124
-- SYS_MPROTECT = 4125
-- SYS_SIGPROCMASK = 4126
-- SYS_CREATE_MODULE = 4127
-- SYS_INIT_MODULE = 4128
-- SYS_DELETE_MODULE = 4129
-- SYS_GET_KERNEL_SYMS = 4130
-- SYS_QUOTACTL = 4131
-- SYS_GETPGID = 4132
-- SYS_FCHDIR = 4133
-- SYS_BDFLUSH = 4134
-- SYS_SYSFS = 4135
-- SYS_PERSONALITY = 4136
-- SYS_AFS_SYSCALL = 4137
-- SYS_SETFSUID = 4138
-- SYS_SETFSGID = 4139
-- SYS__LLSEEK = 4140
-- SYS_GETDENTS = 4141
-- SYS__NEWSELECT = 4142
-- SYS_FLOCK = 4143
-- SYS_MSYNC = 4144
-- SYS_READV = 4145
-- SYS_WRITEV = 4146
-- SYS_CACHEFLUSH = 4147
-- SYS_CACHECTL = 4148
-- SYS_SYSMIPS = 4149
-- SYS_UNUSED150 = 4150
-- SYS_GETSID = 4151
-- SYS_FDATASYNC = 4152
-- SYS__SYSCTL = 4153
-- SYS_MLOCK = 4154
-- SYS_MUNLOCK = 4155
-- SYS_MLOCKALL = 4156
-- SYS_MUNLOCKALL = 4157
-- SYS_SCHED_SETPARAM = 4158
-- SYS_SCHED_GETPARAM = 4159
-- SYS_SCHED_SETSCHEDULER = 4160
-- SYS_SCHED_GETSCHEDULER = 4161
-- SYS_SCHED_YIELD = 4162
-- SYS_SCHED_GET_PRIORITY_MAX = 4163
-- SYS_SCHED_GET_PRIORITY_MIN = 4164
-- SYS_SCHED_RR_GET_INTERVAL = 4165
-- SYS_NANOSLEEP = 4166
-- SYS_MREMAP = 4167
-- SYS_ACCEPT = 4168
-- SYS_BIND = 4169
-- SYS_CONNECT = 4170
-- SYS_GETPEERNAME = 4171
-- SYS_GETSOCKNAME = 4172
-- SYS_GETSOCKOPT = 4173
-- SYS_LISTEN = 4174
-- SYS_RECV = 4175
-- SYS_RECVFROM = 4176
-- SYS_RECVMSG = 4177
-- SYS_SEND = 4178
-- SYS_SENDMSG = 4179
-- SYS_SENDTO = 4180
-- SYS_SETSOCKOPT = 4181
-- SYS_SHUTDOWN = 4182
-- SYS_SOCKET = 4183
-- SYS_SOCKETPAIR = 4184
-- SYS_SETRESUID = 4185
-- SYS_GETRESUID = 4186
-- SYS_QUERY_MODULE = 4187
-- SYS_POLL = 4188
-- SYS_NFSSERVCTL = 4189
-- SYS_SETRESGID = 4190
-- SYS_GETRESGID = 4191
-- SYS_PRCTL = 4192
-- SYS_RT_SIGRETURN = 4193
-- SYS_RT_SIGACTION = 4194
-- SYS_RT_SIGPROCMASK = 4195
-- SYS_RT_SIGPENDING = 4196
-- SYS_RT_SIGTIMEDWAIT = 4197
-- SYS_RT_SIGQUEUEINFO = 4198
-- SYS_RT_SIGSUSPEND = 4199
-- SYS_PREAD64 = 4200
-- SYS_PWRITE64 = 4201
-- SYS_CHOWN = 4202
-- SYS_GETCWD = 4203
-- SYS_CAPGET = 4204
-- SYS_CAPSET = 4205
-- SYS_SIGALTSTACK = 4206
-- SYS_SENDFILE = 4207
-- SYS_GETPMSG = 4208
-- SYS_PUTPMSG = 4209
-- SYS_MMAP2 = 4210
-- SYS_TRUNCATE64 = 4211
-- SYS_FTRUNCATE64 = 4212
-- SYS_STAT64 = 4213
-- SYS_LSTAT64 = 4214
-- SYS_FSTAT64 = 4215
-- SYS_PIVOT_ROOT = 4216
-- SYS_MINCORE = 4217
-- SYS_MADVISE = 4218
-- SYS_GETDENTS64 = 4219
-- SYS_FCNTL64 = 4220
-- SYS_RESERVED221 = 4221
-- SYS_GETTID = 4222
-- SYS_READAHEAD = 4223
-- SYS_SETXATTR = 4224
-- SYS_LSETXATTR = 4225
-- SYS_FSETXATTR = 4226
-- SYS_GETXATTR = 4227
-- SYS_LGETXATTR = 4228
-- SYS_FGETXATTR = 4229
-- SYS_LISTXATTR = 4230
-- SYS_LLISTXATTR = 4231
-- SYS_FLISTXATTR = 4232
-- SYS_REMOVEXATTR = 4233
-- SYS_LREMOVEXATTR = 4234
-- SYS_FREMOVEXATTR = 4235
-- SYS_TKILL = 4236
-- SYS_SENDFILE64 = 4237
-- SYS_FUTEX = 4238
-- SYS_SCHED_SETAFFINITY = 4239
-- SYS_SCHED_GETAFFINITY = 4240
-- SYS_IO_SETUP = 4241
-- SYS_IO_DESTROY = 4242
-- SYS_IO_GETEVENTS = 4243
-- SYS_IO_SUBMIT = 4244
-- SYS_IO_CANCEL = 4245
-- SYS_EXIT_GROUP = 4246
-- SYS_LOOKUP_DCOOKIE = 4247
-- SYS_EPOLL_CREATE = 4248
-- SYS_EPOLL_CTL = 4249
-- SYS_EPOLL_WAIT = 4250
-- SYS_REMAP_FILE_PAGES = 4251
-- SYS_SET_TID_ADDRESS = 4252
-- SYS_RESTART_SYSCALL = 4253
-- SYS_FADVISE64 = 4254
-- SYS_STATFS64 = 4255
-- SYS_FSTATFS64 = 4256
-- SYS_TIMER_CREATE = 4257
-- SYS_TIMER_SETTIME = 4258
-- SYS_TIMER_GETTIME = 4259
-- SYS_TIMER_GETOVERRUN = 4260
-- SYS_TIMER_DELETE = 4261
-- SYS_CLOCK_SETTIME = 4262
-- SYS_CLOCK_GETTIME = 4263
-- SYS_CLOCK_GETRES = 4264
-- SYS_CLOCK_NANOSLEEP = 4265
-- SYS_TGKILL = 4266
-- SYS_UTIMES = 4267
-- SYS_MBIND = 4268
-- SYS_GET_MEMPOLICY = 4269
-- SYS_SET_MEMPOLICY = 4270
-- SYS_MQ_OPEN = 4271
-- SYS_MQ_UNLINK = 4272
-- SYS_MQ_TIMEDSEND = 4273
-- SYS_MQ_TIMEDRECEIVE = 4274
-- SYS_MQ_NOTIFY = 4275
-- SYS_MQ_GETSETATTR = 4276
-- SYS_VSERVER = 4277
-- SYS_WAITID = 4278
-- SYS_ADD_KEY = 4280
-- SYS_REQUEST_KEY = 4281
-- SYS_KEYCTL = 4282
-- SYS_SET_THREAD_AREA = 4283
-- SYS_INOTIFY_INIT = 4284
-- SYS_INOTIFY_ADD_WATCH = 4285
-- SYS_INOTIFY_RM_WATCH = 4286
-- SYS_MIGRATE_PAGES = 4287
-- SYS_OPENAT = 4288
-- SYS_MKDIRAT = 4289
-- SYS_MKNODAT = 4290
-- SYS_FCHOWNAT = 4291
-- SYS_FUTIMESAT = 4292
-- SYS_FSTATAT64 = 4293
-- SYS_UNLINKAT = 4294
-- SYS_RENAMEAT = 4295
-- SYS_LINKAT = 4296
-- SYS_SYMLINKAT = 4297
-- SYS_READLINKAT = 4298
-- SYS_FCHMODAT = 4299
-- SYS_FACCESSAT = 4300
-- SYS_PSELECT6 = 4301
-- SYS_PPOLL = 4302
-- SYS_UNSHARE = 4303
-- SYS_SPLICE = 4304
-- SYS_SYNC_FILE_RANGE = 4305
-- SYS_TEE = 4306
-- SYS_VMSPLICE = 4307
-- SYS_MOVE_PAGES = 4308
-- SYS_SET_ROBUST_LIST = 4309
-- SYS_GET_ROBUST_LIST = 4310
-- SYS_KEXEC_LOAD = 4311
-- SYS_GETCPU = 4312
-- SYS_EPOLL_PWAIT = 4313
-- SYS_IOPRIO_SET = 4314
-- SYS_IOPRIO_GET = 4315
-- SYS_UTIMENSAT = 4316
-- SYS_SIGNALFD = 4317
-- SYS_TIMERFD = 4318
-- SYS_EVENTFD = 4319
-- SYS_FALLOCATE = 4320
-- SYS_TIMERFD_CREATE = 4321
-- SYS_TIMERFD_GETTIME = 4322
-- SYS_TIMERFD_SETTIME = 4323
-- SYS_SIGNALFD4 = 4324
-- SYS_EVENTFD2 = 4325
-- SYS_EPOLL_CREATE1 = 4326
-- SYS_DUP3 = 4327
-- SYS_PIPE2 = 4328
-- SYS_INOTIFY_INIT1 = 4329
-- SYS_PREADV = 4330
-- SYS_PWRITEV = 4331
-- SYS_RT_TGSIGQUEUEINFO = 4332
-- SYS_PERF_EVENT_OPEN = 4333
-- SYS_ACCEPT4 = 4334
-- SYS_RECVMMSG = 4335
-- SYS_FANOTIFY_INIT = 4336
-- SYS_FANOTIFY_MARK = 4337
-- SYS_PRLIMIT64 = 4338
-- SYS_NAME_TO_HANDLE_AT = 4339
-- SYS_OPEN_BY_HANDLE_AT = 4340
-- SYS_CLOCK_ADJTIME = 4341
-- SYS_SYNCFS = 4342
-- SYS_SENDMMSG = 4343
-- SYS_SETNS = 4344
-- SYS_PROCESS_VM_READV = 4345
-- SYS_PROCESS_VM_WRITEV = 4346
-- SYS_KCMP = 4347
-- SYS_FINIT_MODULE = 4348
-- SYS_SCHED_SETATTR = 4349
-- SYS_SCHED_GETATTR = 4350
-- SYS_RENAMEAT2 = 4351
-- SYS_SECCOMP = 4352
-- SYS_GETRANDOM = 4353
-- SYS_MEMFD_CREATE = 4354
-- SYS_BPF = 4355
-- SYS_EXECVEAT = 4356
-- SYS_USERFAULTFD = 4357
-- SYS_MEMBARRIER = 4358
-- SYS_MLOCK2 = 4359
-- SYS_COPY_FILE_RANGE = 4360
-- SYS_PREADV2 = 4361
-- SYS_PWRITEV2 = 4362
-- SYS_PKEY_MPROTECT = 4363
-- SYS_PKEY_ALLOC = 4364
-- SYS_PKEY_FREE = 4365
-+ SYS_SYSCALL = 4000
-+ SYS_EXIT = 4001
-+ SYS_FORK = 4002
-+ SYS_READ = 4003
-+ SYS_WRITE = 4004
-+ SYS_OPEN = 4005
-+ SYS_CLOSE = 4006
-+ SYS_WAITPID = 4007
-+ SYS_CREAT = 4008
-+ SYS_LINK = 4009
-+ SYS_UNLINK = 4010
-+ SYS_EXECVE = 4011
-+ SYS_CHDIR = 4012
-+ SYS_TIME = 4013
-+ SYS_MKNOD = 4014
-+ SYS_CHMOD = 4015
-+ SYS_LCHOWN = 4016
-+ SYS_BREAK = 4017
-+ SYS_UNUSED18 = 4018
-+ SYS_LSEEK = 4019
-+ SYS_GETPID = 4020
-+ SYS_MOUNT = 4021
-+ SYS_UMOUNT = 4022
-+ SYS_SETUID = 4023
-+ SYS_GETUID = 4024
-+ SYS_STIME = 4025
-+ SYS_PTRACE = 4026
-+ SYS_ALARM = 4027
-+ SYS_UNUSED28 = 4028
-+ SYS_PAUSE = 4029
-+ SYS_UTIME = 4030
-+ SYS_STTY = 4031
-+ SYS_GTTY = 4032
-+ SYS_ACCESS = 4033
-+ SYS_NICE = 4034
-+ SYS_FTIME = 4035
-+ SYS_SYNC = 4036
-+ SYS_KILL = 4037
-+ SYS_RENAME = 4038
-+ SYS_MKDIR = 4039
-+ SYS_RMDIR = 4040
-+ SYS_DUP = 4041
-+ SYS_PIPE = 4042
-+ SYS_TIMES = 4043
-+ SYS_PROF = 4044
-+ SYS_BRK = 4045
-+ SYS_SETGID = 4046
-+ SYS_GETGID = 4047
-+ SYS_SIGNAL = 4048
-+ SYS_GETEUID = 4049
-+ SYS_GETEGID = 4050
-+ SYS_ACCT = 4051
-+ SYS_UMOUNT2 = 4052
-+ SYS_LOCK = 4053
-+ SYS_IOCTL = 4054
-+ SYS_FCNTL = 4055
-+ SYS_MPX = 4056
-+ SYS_SETPGID = 4057
-+ SYS_ULIMIT = 4058
-+ SYS_UNUSED59 = 4059
-+ SYS_UMASK = 4060
-+ SYS_CHROOT = 4061
-+ SYS_USTAT = 4062
-+ SYS_DUP2 = 4063
-+ SYS_GETPPID = 4064
-+ SYS_GETPGRP = 4065
-+ SYS_SETSID = 4066
-+ SYS_SIGACTION = 4067
-+ SYS_SGETMASK = 4068
-+ SYS_SSETMASK = 4069
-+ SYS_SETREUID = 4070
-+ SYS_SETREGID = 4071
-+ SYS_SIGSUSPEND = 4072
-+ SYS_SIGPENDING = 4073
-+ SYS_SETHOSTNAME = 4074
-+ SYS_SETRLIMIT = 4075
-+ SYS_GETRLIMIT = 4076
-+ SYS_GETRUSAGE = 4077
-+ SYS_GETTIMEOFDAY = 4078
-+ SYS_SETTIMEOFDAY = 4079
-+ SYS_GETGROUPS = 4080
-+ SYS_SETGROUPS = 4081
-+ SYS_RESERVED82 = 4082
-+ SYS_SYMLINK = 4083
-+ SYS_UNUSED84 = 4084
-+ SYS_READLINK = 4085
-+ SYS_USELIB = 4086
-+ SYS_SWAPON = 4087
-+ SYS_REBOOT = 4088
-+ SYS_READDIR = 4089
-+ SYS_MMAP = 4090
-+ SYS_MUNMAP = 4091
-+ SYS_TRUNCATE = 4092
-+ SYS_FTRUNCATE = 4093
-+ SYS_FCHMOD = 4094
-+ SYS_FCHOWN = 4095
-+ SYS_GETPRIORITY = 4096
-+ SYS_SETPRIORITY = 4097
-+ SYS_PROFIL = 4098
-+ SYS_STATFS = 4099
-+ SYS_FSTATFS = 4100
-+ SYS_IOPERM = 4101
-+ SYS_SOCKETCALL = 4102
-+ SYS_SYSLOG = 4103
-+ SYS_SETITIMER = 4104
-+ SYS_GETITIMER = 4105
-+ SYS_STAT = 4106
-+ SYS_LSTAT = 4107
-+ SYS_FSTAT = 4108
-+ SYS_UNUSED109 = 4109
-+ SYS_IOPL = 4110
-+ SYS_VHANGUP = 4111
-+ SYS_IDLE = 4112
-+ SYS_VM86 = 4113
-+ SYS_WAIT4 = 4114
-+ SYS_SWAPOFF = 4115
-+ SYS_SYSINFO = 4116
-+ SYS_IPC = 4117
-+ SYS_FSYNC = 4118
-+ SYS_SIGRETURN = 4119
-+ SYS_CLONE = 4120
-+ SYS_SETDOMAINNAME = 4121
-+ SYS_UNAME = 4122
-+ SYS_MODIFY_LDT = 4123
-+ SYS_ADJTIMEX = 4124
-+ SYS_MPROTECT = 4125
-+ SYS_SIGPROCMASK = 4126
-+ SYS_CREATE_MODULE = 4127
-+ SYS_INIT_MODULE = 4128
-+ SYS_DELETE_MODULE = 4129
-+ SYS_GET_KERNEL_SYMS = 4130
-+ SYS_QUOTACTL = 4131
-+ SYS_GETPGID = 4132
-+ SYS_FCHDIR = 4133
-+ SYS_BDFLUSH = 4134
-+ SYS_SYSFS = 4135
-+ SYS_PERSONALITY = 4136
-+ SYS_AFS_SYSCALL = 4137
-+ SYS_SETFSUID = 4138
-+ SYS_SETFSGID = 4139
-+ SYS__LLSEEK = 4140
-+ SYS_GETDENTS = 4141
-+ SYS__NEWSELECT = 4142
-+ SYS_FLOCK = 4143
-+ SYS_MSYNC = 4144
-+ SYS_READV = 4145
-+ SYS_WRITEV = 4146
-+ SYS_CACHEFLUSH = 4147
-+ SYS_CACHECTL = 4148
-+ SYS_SYSMIPS = 4149
-+ SYS_UNUSED150 = 4150
-+ SYS_GETSID = 4151
-+ SYS_FDATASYNC = 4152
-+ SYS__SYSCTL = 4153
-+ SYS_MLOCK = 4154
-+ SYS_MUNLOCK = 4155
-+ SYS_MLOCKALL = 4156
-+ SYS_MUNLOCKALL = 4157
-+ SYS_SCHED_SETPARAM = 4158
-+ SYS_SCHED_GETPARAM = 4159
-+ SYS_SCHED_SETSCHEDULER = 4160
-+ SYS_SCHED_GETSCHEDULER = 4161
-+ SYS_SCHED_YIELD = 4162
-+ SYS_SCHED_GET_PRIORITY_MAX = 4163
-+ SYS_SCHED_GET_PRIORITY_MIN = 4164
-+ SYS_SCHED_RR_GET_INTERVAL = 4165
-+ SYS_NANOSLEEP = 4166
-+ SYS_MREMAP = 4167
-+ SYS_ACCEPT = 4168
-+ SYS_BIND = 4169
-+ SYS_CONNECT = 4170
-+ SYS_GETPEERNAME = 4171
-+ SYS_GETSOCKNAME = 4172
-+ SYS_GETSOCKOPT = 4173
-+ SYS_LISTEN = 4174
-+ SYS_RECV = 4175
-+ SYS_RECVFROM = 4176
-+ SYS_RECVMSG = 4177
-+ SYS_SEND = 4178
-+ SYS_SENDMSG = 4179
-+ SYS_SENDTO = 4180
-+ SYS_SETSOCKOPT = 4181
-+ SYS_SHUTDOWN = 4182
-+ SYS_SOCKET = 4183
-+ SYS_SOCKETPAIR = 4184
-+ SYS_SETRESUID = 4185
-+ SYS_GETRESUID = 4186
-+ SYS_QUERY_MODULE = 4187
-+ SYS_POLL = 4188
-+ SYS_NFSSERVCTL = 4189
-+ SYS_SETRESGID = 4190
-+ SYS_GETRESGID = 4191
-+ SYS_PRCTL = 4192
-+ SYS_RT_SIGRETURN = 4193
-+ SYS_RT_SIGACTION = 4194
-+ SYS_RT_SIGPROCMASK = 4195
-+ SYS_RT_SIGPENDING = 4196
-+ SYS_RT_SIGTIMEDWAIT = 4197
-+ SYS_RT_SIGQUEUEINFO = 4198
-+ SYS_RT_SIGSUSPEND = 4199
-+ SYS_PREAD64 = 4200
-+ SYS_PWRITE64 = 4201
-+ SYS_CHOWN = 4202
-+ SYS_GETCWD = 4203
-+ SYS_CAPGET = 4204
-+ SYS_CAPSET = 4205
-+ SYS_SIGALTSTACK = 4206
-+ SYS_SENDFILE = 4207
-+ SYS_GETPMSG = 4208
-+ SYS_PUTPMSG = 4209
-+ SYS_MMAP2 = 4210
-+ SYS_TRUNCATE64 = 4211
-+ SYS_FTRUNCATE64 = 4212
-+ SYS_STAT64 = 4213
-+ SYS_LSTAT64 = 4214
-+ SYS_FSTAT64 = 4215
-+ SYS_PIVOT_ROOT = 4216
-+ SYS_MINCORE = 4217
-+ SYS_MADVISE = 4218
-+ SYS_GETDENTS64 = 4219
-+ SYS_FCNTL64 = 4220
-+ SYS_RESERVED221 = 4221
-+ SYS_GETTID = 4222
-+ SYS_READAHEAD = 4223
-+ SYS_SETXATTR = 4224
-+ SYS_LSETXATTR = 4225
-+ SYS_FSETXATTR = 4226
-+ SYS_GETXATTR = 4227
-+ SYS_LGETXATTR = 4228
-+ SYS_FGETXATTR = 4229
-+ SYS_LISTXATTR = 4230
-+ SYS_LLISTXATTR = 4231
-+ SYS_FLISTXATTR = 4232
-+ SYS_REMOVEXATTR = 4233
-+ SYS_LREMOVEXATTR = 4234
-+ SYS_FREMOVEXATTR = 4235
-+ SYS_TKILL = 4236
-+ SYS_SENDFILE64 = 4237
-+ SYS_FUTEX = 4238
-+ SYS_SCHED_SETAFFINITY = 4239
-+ SYS_SCHED_GETAFFINITY = 4240
-+ SYS_IO_SETUP = 4241
-+ SYS_IO_DESTROY = 4242
-+ SYS_IO_GETEVENTS = 4243
-+ SYS_IO_SUBMIT = 4244
-+ SYS_IO_CANCEL = 4245
-+ SYS_EXIT_GROUP = 4246
-+ SYS_LOOKUP_DCOOKIE = 4247
-+ SYS_EPOLL_CREATE = 4248
-+ SYS_EPOLL_CTL = 4249
-+ SYS_EPOLL_WAIT = 4250
-+ SYS_REMAP_FILE_PAGES = 4251
-+ SYS_SET_TID_ADDRESS = 4252
-+ SYS_RESTART_SYSCALL = 4253
-+ SYS_FADVISE64 = 4254
-+ SYS_STATFS64 = 4255
-+ SYS_FSTATFS64 = 4256
-+ SYS_TIMER_CREATE = 4257
-+ SYS_TIMER_SETTIME = 4258
-+ SYS_TIMER_GETTIME = 4259
-+ SYS_TIMER_GETOVERRUN = 4260
-+ SYS_TIMER_DELETE = 4261
-+ SYS_CLOCK_SETTIME = 4262
-+ SYS_CLOCK_GETTIME = 4263
-+ SYS_CLOCK_GETRES = 4264
-+ SYS_CLOCK_NANOSLEEP = 4265
-+ SYS_TGKILL = 4266
-+ SYS_UTIMES = 4267
-+ SYS_MBIND = 4268
-+ SYS_GET_MEMPOLICY = 4269
-+ SYS_SET_MEMPOLICY = 4270
-+ SYS_MQ_OPEN = 4271
-+ SYS_MQ_UNLINK = 4272
-+ SYS_MQ_TIMEDSEND = 4273
-+ SYS_MQ_TIMEDRECEIVE = 4274
-+ SYS_MQ_NOTIFY = 4275
-+ SYS_MQ_GETSETATTR = 4276
-+ SYS_VSERVER = 4277
-+ SYS_WAITID = 4278
-+ SYS_ADD_KEY = 4280
-+ SYS_REQUEST_KEY = 4281
-+ SYS_KEYCTL = 4282
-+ SYS_SET_THREAD_AREA = 4283
-+ SYS_INOTIFY_INIT = 4284
-+ SYS_INOTIFY_ADD_WATCH = 4285
-+ SYS_INOTIFY_RM_WATCH = 4286
-+ SYS_MIGRATE_PAGES = 4287
-+ SYS_OPENAT = 4288
-+ SYS_MKDIRAT = 4289
-+ SYS_MKNODAT = 4290
-+ SYS_FCHOWNAT = 4291
-+ SYS_FUTIMESAT = 4292
-+ SYS_FSTATAT64 = 4293
-+ SYS_UNLINKAT = 4294
-+ SYS_RENAMEAT = 4295
-+ SYS_LINKAT = 4296
-+ SYS_SYMLINKAT = 4297
-+ SYS_READLINKAT = 4298
-+ SYS_FCHMODAT = 4299
-+ SYS_FACCESSAT = 4300
-+ SYS_PSELECT6 = 4301
-+ SYS_PPOLL = 4302
-+ SYS_UNSHARE = 4303
-+ SYS_SPLICE = 4304
-+ SYS_SYNC_FILE_RANGE = 4305
-+ SYS_TEE = 4306
-+ SYS_VMSPLICE = 4307
-+ SYS_MOVE_PAGES = 4308
-+ SYS_SET_ROBUST_LIST = 4309
-+ SYS_GET_ROBUST_LIST = 4310
-+ SYS_KEXEC_LOAD = 4311
-+ SYS_GETCPU = 4312
-+ SYS_EPOLL_PWAIT = 4313
-+ SYS_IOPRIO_SET = 4314
-+ SYS_IOPRIO_GET = 4315
-+ SYS_UTIMENSAT = 4316
-+ SYS_SIGNALFD = 4317
-+ SYS_TIMERFD = 4318
-+ SYS_EVENTFD = 4319
-+ SYS_FALLOCATE = 4320
-+ SYS_TIMERFD_CREATE = 4321
-+ SYS_TIMERFD_GETTIME = 4322
-+ SYS_TIMERFD_SETTIME = 4323
-+ SYS_SIGNALFD4 = 4324
-+ SYS_EVENTFD2 = 4325
-+ SYS_EPOLL_CREATE1 = 4326
-+ SYS_DUP3 = 4327
-+ SYS_PIPE2 = 4328
-+ SYS_INOTIFY_INIT1 = 4329
-+ SYS_PREADV = 4330
-+ SYS_PWRITEV = 4331
-+ SYS_RT_TGSIGQUEUEINFO = 4332
-+ SYS_PERF_EVENT_OPEN = 4333
-+ SYS_ACCEPT4 = 4334
-+ SYS_RECVMMSG = 4335
-+ SYS_FANOTIFY_INIT = 4336
-+ SYS_FANOTIFY_MARK = 4337
-+ SYS_PRLIMIT64 = 4338
-+ SYS_NAME_TO_HANDLE_AT = 4339
-+ SYS_OPEN_BY_HANDLE_AT = 4340
-+ SYS_CLOCK_ADJTIME = 4341
-+ SYS_SYNCFS = 4342
-+ SYS_SENDMMSG = 4343
-+ SYS_SETNS = 4344
-+ SYS_PROCESS_VM_READV = 4345
-+ SYS_PROCESS_VM_WRITEV = 4346
-+ SYS_KCMP = 4347
-+ SYS_FINIT_MODULE = 4348
-+ SYS_SCHED_SETATTR = 4349
-+ SYS_SCHED_GETATTR = 4350
-+ SYS_RENAMEAT2 = 4351
-+ SYS_SECCOMP = 4352
-+ SYS_GETRANDOM = 4353
-+ SYS_MEMFD_CREATE = 4354
-+ SYS_BPF = 4355
-+ SYS_EXECVEAT = 4356
-+ SYS_USERFAULTFD = 4357
-+ SYS_MEMBARRIER = 4358
-+ SYS_MLOCK2 = 4359
-+ SYS_COPY_FILE_RANGE = 4360
-+ SYS_PREADV2 = 4361
-+ SYS_PWRITEV2 = 4362
-+ SYS_PKEY_MPROTECT = 4363
-+ SYS_PKEY_ALLOC = 4364
-+ SYS_PKEY_FREE = 4365
-+ SYS_STATX = 4366
-+ SYS_RSEQ = 4367
-+ SYS_IO_PGETEVENTS = 4368
-+ SYS_SEMGET = 4393
-+ SYS_SEMCTL = 4394
-+ SYS_SHMGET = 4395
-+ SYS_SHMCTL = 4396
-+ SYS_SHMAT = 4397
-+ SYS_SHMDT = 4398
-+ SYS_MSGGET = 4399
-+ SYS_MSGSND = 4400
-+ SYS_MSGRCV = 4401
-+ SYS_MSGCTL = 4402
-+ SYS_CLOCK_GETTIME64 = 4403
-+ SYS_CLOCK_SETTIME64 = 4404
-+ SYS_CLOCK_ADJTIME64 = 4405
-+ SYS_CLOCK_GETRES_TIME64 = 4406
-+ SYS_CLOCK_NANOSLEEP_TIME64 = 4407
-+ SYS_TIMER_GETTIME64 = 4408
-+ SYS_TIMER_SETTIME64 = 4409
-+ SYS_TIMERFD_GETTIME64 = 4410
-+ SYS_TIMERFD_SETTIME64 = 4411
-+ SYS_UTIMENSAT_TIME64 = 4412
-+ SYS_PSELECT6_TIME64 = 4413
-+ SYS_PPOLL_TIME64 = 4414
-+ SYS_IO_PGETEVENTS_TIME64 = 4416
-+ SYS_RECVMMSG_TIME64 = 4417
-+ SYS_MQ_TIMEDSEND_TIME64 = 4418
-+ SYS_MQ_TIMEDRECEIVE_TIME64 = 4419
-+ SYS_SEMTIMEDOP_TIME64 = 4420
-+ SYS_RT_SIGTIMEDWAIT_TIME64 = 4421
-+ SYS_FUTEX_TIME64 = 4422
-+ SYS_SCHED_RR_GET_INTERVAL_TIME64 = 4423
-+ SYS_PIDFD_SEND_SIGNAL = 4424
-+ SYS_IO_URING_SETUP = 4425
-+ SYS_IO_URING_ENTER = 4426
-+ SYS_IO_URING_REGISTER = 4427
-+ SYS_OPEN_TREE = 4428
-+ SYS_MOVE_MOUNT = 4429
-+ SYS_FSOPEN = 4430
-+ SYS_FSCONFIG = 4431
-+ SYS_FSMOUNT = 4432
-+ SYS_FSPICK = 4433
-+ SYS_PIDFD_OPEN = 4434
-+ SYS_CLONE3 = 4435
-+ SYS_OPENAT2 = 4437
-+ SYS_PIDFD_GETFD = 4438
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
-index 8944448a..cc3c067b 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
-@@ -1,4 +1,4 @@
--// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
-+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build ppc64,linux
-@@ -366,4 +366,35 @@ const (
- SYS_PREADV2 = 380
- SYS_PWRITEV2 = 381
- SYS_KEXEC_FILE_LOAD = 382
-+ SYS_STATX = 383
-+ SYS_PKEY_ALLOC = 384
-+ SYS_PKEY_FREE = 385
-+ SYS_PKEY_MPROTECT = 386
-+ SYS_RSEQ = 387
-+ SYS_IO_PGETEVENTS = 388
-+ SYS_SEMTIMEDOP = 392
-+ SYS_SEMGET = 393
-+ SYS_SEMCTL = 394
-+ SYS_SHMGET = 395
-+ SYS_SHMCTL = 396
-+ SYS_SHMAT = 397
-+ SYS_SHMDT = 398
-+ SYS_MSGGET = 399
-+ SYS_MSGSND = 400
-+ SYS_MSGRCV = 401
-+ SYS_MSGCTL = 402
-+ SYS_PIDFD_SEND_SIGNAL = 424
-+ SYS_IO_URING_SETUP = 425
-+ SYS_IO_URING_ENTER = 426
-+ SYS_IO_URING_REGISTER = 427
-+ SYS_OPEN_TREE = 428
-+ SYS_MOVE_MOUNT = 429
-+ SYS_FSOPEN = 430
-+ SYS_FSCONFIG = 431
-+ SYS_FSMOUNT = 432
-+ SYS_FSPICK = 433
-+ SYS_PIDFD_OPEN = 434
-+ SYS_CLONE3 = 435
-+ SYS_OPENAT2 = 437
-+ SYS_PIDFD_GETFD = 438
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
-index 90a039be..4050ff98 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
-@@ -1,4 +1,4 @@
--// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
-+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build ppc64le,linux
-@@ -366,4 +366,35 @@ const (
- SYS_PREADV2 = 380
- SYS_PWRITEV2 = 381
- SYS_KEXEC_FILE_LOAD = 382
-+ SYS_STATX = 383
-+ SYS_PKEY_ALLOC = 384
-+ SYS_PKEY_FREE = 385
-+ SYS_PKEY_MPROTECT = 386
-+ SYS_RSEQ = 387
-+ SYS_IO_PGETEVENTS = 388
-+ SYS_SEMTIMEDOP = 392
-+ SYS_SEMGET = 393
-+ SYS_SEMCTL = 394
-+ SYS_SHMGET = 395
-+ SYS_SHMCTL = 396
-+ SYS_SHMAT = 397
-+ SYS_SHMDT = 398
-+ SYS_MSGGET = 399
-+ SYS_MSGSND = 400
-+ SYS_MSGRCV = 401
-+ SYS_MSGCTL = 402
-+ SYS_PIDFD_SEND_SIGNAL = 424
-+ SYS_IO_URING_SETUP = 425
-+ SYS_IO_URING_ENTER = 426
-+ SYS_IO_URING_REGISTER = 427
-+ SYS_OPEN_TREE = 428
-+ SYS_MOVE_MOUNT = 429
-+ SYS_FSOPEN = 430
-+ SYS_FSCONFIG = 431
-+ SYS_FSMOUNT = 432
-+ SYS_FSPICK = 433
-+ SYS_PIDFD_OPEN = 434
-+ SYS_CLONE3 = 435
-+ SYS_OPENAT2 = 437
-+ SYS_PIDFD_GETFD = 438
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
-similarity index 92%
-copy from vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
-copy to vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
-index 64078435..529abb6a 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
-@@ -1,7 +1,7 @@
--// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include -fsigned-char /tmp/include/asm/unistd.h
-+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build arm64,linux
-+// +build riscv64,linux
-
- package unix
-
-@@ -44,7 +44,6 @@ const (
- SYS_UNLINKAT = 35
- SYS_SYMLINKAT = 36
- SYS_LINKAT = 37
-- SYS_RENAMEAT = 38
- SYS_UMOUNT2 = 39
- SYS_MOUNT = 40
- SYS_PIVOT_ROOT = 41
-@@ -282,4 +281,22 @@ const (
- SYS_PKEY_MPROTECT = 288
- SYS_PKEY_ALLOC = 289
- SYS_PKEY_FREE = 290
-+ SYS_STATX = 291
-+ SYS_IO_PGETEVENTS = 292
-+ SYS_RSEQ = 293
-+ SYS_KEXEC_FILE_LOAD = 294
-+ SYS_PIDFD_SEND_SIGNAL = 424
-+ SYS_IO_URING_SETUP = 425
-+ SYS_IO_URING_ENTER = 426
-+ SYS_IO_URING_REGISTER = 427
-+ SYS_OPEN_TREE = 428
-+ SYS_MOVE_MOUNT = 429
-+ SYS_FSOPEN = 430
-+ SYS_FSCONFIG = 431
-+ SYS_FSMOUNT = 432
-+ SYS_FSPICK = 433
-+ SYS_PIDFD_OPEN = 434
-+ SYS_CLONE3 = 435
-+ SYS_OPENAT2 = 437
-+ SYS_PIDFD_GETFD = 438
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
-index aab0cdb1..27665001 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
-@@ -1,4 +1,4 @@
--// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include -fsigned-char /tmp/include/asm/unistd.h
-+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include -fsigned-char /tmp/include/asm/unistd.h
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build s390x,linux
-@@ -109,6 +109,7 @@ const (
- SYS_PERSONALITY = 136
- SYS_AFS_SYSCALL = 137
- SYS_GETDENTS = 141
-+ SYS_SELECT = 142
- SYS_FLOCK = 143
- SYS_MSYNC = 144
- SYS_READV = 145
-@@ -151,6 +152,26 @@ const (
- SYS_GETPMSG = 188
- SYS_PUTPMSG = 189
- SYS_VFORK = 190
-+ SYS_GETRLIMIT = 191
-+ SYS_LCHOWN = 198
-+ SYS_GETUID = 199
-+ SYS_GETGID = 200
-+ SYS_GETEUID = 201
-+ SYS_GETEGID = 202
-+ SYS_SETREUID = 203
-+ SYS_SETREGID = 204
-+ SYS_GETGROUPS = 205
-+ SYS_SETGROUPS = 206
-+ SYS_FCHOWN = 207
-+ SYS_SETRESUID = 208
-+ SYS_GETRESUID = 209
-+ SYS_SETRESGID = 210
-+ SYS_GETRESGID = 211
-+ SYS_CHOWN = 212
-+ SYS_SETUID = 213
-+ SYS_SETGID = 214
-+ SYS_SETFSUID = 215
-+ SYS_SETFSGID = 216
- SYS_PIVOT_ROOT = 217
- SYS_MINCORE = 218
- SYS_MADVISE = 219
-@@ -222,6 +243,7 @@ const (
- SYS_MKNODAT = 290
- SYS_FCHOWNAT = 291
- SYS_FUTIMESAT = 292
-+ SYS_NEWFSTATAT = 293
- SYS_UNLINKAT = 294
- SYS_RENAMEAT = 295
- SYS_LINKAT = 296
-@@ -306,26 +328,38 @@ const (
- SYS_COPY_FILE_RANGE = 375
- SYS_PREADV2 = 376
- SYS_PWRITEV2 = 377
-- SYS_SELECT = 142
-- SYS_GETRLIMIT = 191
-- SYS_LCHOWN = 198
-- SYS_GETUID = 199
-- SYS_GETGID = 200
-- SYS_GETEUID = 201
-- SYS_GETEGID = 202
-- SYS_SETREUID = 203
-- SYS_SETREGID = 204
-- SYS_GETGROUPS = 205
-- SYS_SETGROUPS = 206
-- SYS_FCHOWN = 207
-- SYS_SETRESUID = 208
-- SYS_GETRESUID = 209
-- SYS_SETRESGID = 210
-- SYS_GETRESGID = 211
-- SYS_CHOWN = 212
-- SYS_SETUID = 213
-- SYS_SETGID = 214
-- SYS_SETFSUID = 215
-- SYS_SETFSGID = 216
-- SYS_NEWFSTATAT = 293
-+ SYS_S390_GUARDED_STORAGE = 378
-+ SYS_STATX = 379
-+ SYS_S390_STHYI = 380
-+ SYS_KEXEC_FILE_LOAD = 381
-+ SYS_IO_PGETEVENTS = 382
-+ SYS_RSEQ = 383
-+ SYS_PKEY_MPROTECT = 384
-+ SYS_PKEY_ALLOC = 385
-+ SYS_PKEY_FREE = 386
-+ SYS_SEMTIMEDOP = 392
-+ SYS_SEMGET = 393
-+ SYS_SEMCTL = 394
-+ SYS_SHMGET = 395
-+ SYS_SHMCTL = 396
-+ SYS_SHMAT = 397
-+ SYS_SHMDT = 398
-+ SYS_MSGGET = 399
-+ SYS_MSGSND = 400
-+ SYS_MSGRCV = 401
-+ SYS_MSGCTL = 402
-+ SYS_PIDFD_SEND_SIGNAL = 424
-+ SYS_IO_URING_SETUP = 425
-+ SYS_IO_URING_ENTER = 426
-+ SYS_IO_URING_REGISTER = 427
-+ SYS_OPEN_TREE = 428
-+ SYS_MOVE_MOUNT = 429
-+ SYS_FSOPEN = 430
-+ SYS_FSCONFIG = 431
-+ SYS_FSMOUNT = 432
-+ SYS_FSPICK = 433
-+ SYS_PIDFD_OPEN = 434
-+ SYS_CLONE3 = 435
-+ SYS_OPENAT2 = 437
-+ SYS_PIDFD_GETFD = 438
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
-index c9c129dc..4dc82bb2 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
-@@ -1,5 +1,5 @@
--// mksysnum_linux.pl -Ilinux/usr/include -m64 -D__arch64__ linux/usr/include/asm/unistd.h
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build sparc64,linux
-
-@@ -253,6 +253,7 @@ const (
- SYS_TIMER_GETOVERRUN = 264
- SYS_TIMER_DELETE = 265
- SYS_TIMER_CREATE = 266
-+ SYS_VSERVER = 267
- SYS_IO_SETUP = 268
- SYS_IO_DESTROY = 269
- SYS_IO_SUBMIT = 270
-@@ -345,4 +346,34 @@ const (
- SYS_COPY_FILE_RANGE = 357
- SYS_PREADV2 = 358
- SYS_PWRITEV2 = 359
-+ SYS_STATX = 360
-+ SYS_IO_PGETEVENTS = 361
-+ SYS_PKEY_MPROTECT = 362
-+ SYS_PKEY_ALLOC = 363
-+ SYS_PKEY_FREE = 364
-+ SYS_RSEQ = 365
-+ SYS_SEMTIMEDOP = 392
-+ SYS_SEMGET = 393
-+ SYS_SEMCTL = 394
-+ SYS_SHMGET = 395
-+ SYS_SHMCTL = 396
-+ SYS_SHMAT = 397
-+ SYS_SHMDT = 398
-+ SYS_MSGGET = 399
-+ SYS_MSGSND = 400
-+ SYS_MSGRCV = 401
-+ SYS_MSGCTL = 402
-+ SYS_PIDFD_SEND_SIGNAL = 424
-+ SYS_IO_URING_SETUP = 425
-+ SYS_IO_URING_ENTER = 426
-+ SYS_IO_URING_REGISTER = 427
-+ SYS_OPEN_TREE = 428
-+ SYS_MOVE_MOUNT = 429
-+ SYS_FSOPEN = 430
-+ SYS_FSCONFIG = 431
-+ SYS_FSMOUNT = 432
-+ SYS_FSPICK = 433
-+ SYS_PIDFD_OPEN = 434
-+ SYS_OPENAT2 = 437
-+ SYS_PIDFD_GETFD = 438
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
-index 8afda9c4..e66a8c9d 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
-@@ -1,5 +1,5 @@
--// mksysnum_netbsd.pl
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run mksysnum.go http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build 386,netbsd
-
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go
-index aea8dbec..42c788f2 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go
-@@ -1,5 +1,5 @@
--// mksysnum_netbsd.pl
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run mksysnum.go http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build amd64,netbsd
-
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go
-index c6158a7e..0a075717 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go
-@@ -1,5 +1,5 @@
--// mksysnum_netbsd.pl
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run mksysnum.go http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build arm,netbsd
-
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go
-similarity index 99%
-copy from vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
-copy to vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go
-index 8afda9c4..0291c093 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go
-@@ -1,7 +1,7 @@
--// mksysnum_netbsd.pl
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run mksysnum.go http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master
-+// Code generated by the command above; DO NOT EDIT.
-
--// +build 386,netbsd
-+// +build arm64,netbsd
-
- package unix
-
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go
-index 3e8ce2a1..b0207d1c 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go
-@@ -1,5 +1,5 @@
--// mksysnum_openbsd.pl
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build 386,openbsd
-
-@@ -9,109 +9,119 @@ const (
- SYS_EXIT = 1 // { void sys_exit(int rval); }
- SYS_FORK = 2 // { int sys_fork(void); }
- SYS_READ = 3 // { ssize_t sys_read(int fd, void *buf, size_t nbyte); }
-- SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, \
-- SYS_OPEN = 5 // { int sys_open(const char *path, \
-+ SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, size_t nbyte); }
-+ SYS_OPEN = 5 // { int sys_open(const char *path, int flags, ... mode_t mode); }
- SYS_CLOSE = 6 // { int sys_close(int fd); }
-- SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, \
-+ SYS_GETENTROPY = 7 // { int sys_getentropy(void *buf, size_t nbyte); }
-+ SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, size_t psize); }
- SYS_LINK = 9 // { int sys_link(const char *path, const char *link); }
- SYS_UNLINK = 10 // { int sys_unlink(const char *path); }
-- SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, \
-+ SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, int options, struct rusage *rusage); }
- SYS_CHDIR = 12 // { int sys_chdir(const char *path); }
- SYS_FCHDIR = 13 // { int sys_fchdir(int fd); }
-- SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, \
-+ SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, dev_t dev); }
- SYS_CHMOD = 15 // { int sys_chmod(const char *path, mode_t mode); }
-- SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, \
-+ SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, gid_t gid); }
- SYS_OBREAK = 17 // { int sys_obreak(char *nsize); } break
- SYS_GETDTABLECOUNT = 18 // { int sys_getdtablecount(void); }
-- SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, \
-+ SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, struct rusage *rusage); }
- SYS_GETPID = 20 // { pid_t sys_getpid(void); }
-- SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, \
-+ SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, int flags, void *data); }
- SYS_UNMOUNT = 22 // { int sys_unmount(const char *path, int flags); }
- SYS_SETUID = 23 // { int sys_setuid(uid_t uid); }
- SYS_GETUID = 24 // { uid_t sys_getuid(void); }
- SYS_GETEUID = 25 // { uid_t sys_geteuid(void); }
-- SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, \
-- SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, \
-- SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, \
-- SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, \
-- SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, \
-- SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, \
-- SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, \
-- SYS_ACCESS = 33 // { int sys_access(const char *path, int flags); }
-+ SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, int data); }
-+ SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, int flags); }
-+ SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, const struct msghdr *msg, int flags); }
-+ SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, int flags, struct sockaddr *from, socklen_t *fromlenaddr); }
-+ SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, socklen_t *anamelen); }
-+ SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, socklen_t *alen); }
-+ SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, socklen_t *alen); }
-+ SYS_ACCESS = 33 // { int sys_access(const char *path, int amode); }
- SYS_CHFLAGS = 34 // { int sys_chflags(const char *path, u_int flags); }
- SYS_FCHFLAGS = 35 // { int sys_fchflags(int fd, u_int flags); }
- SYS_SYNC = 36 // { void sys_sync(void); }
-- SYS_KILL = 37 // { int sys_kill(int pid, int signum); }
- SYS_STAT = 38 // { int sys_stat(const char *path, struct stat *ub); }
- SYS_GETPPID = 39 // { pid_t sys_getppid(void); }
- SYS_LSTAT = 40 // { int sys_lstat(const char *path, struct stat *ub); }
- SYS_DUP = 41 // { int sys_dup(int fd); }
-- SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, \
-+ SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, struct stat *buf, int flag); }
- SYS_GETEGID = 43 // { gid_t sys_getegid(void); }
-- SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, \
-- SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, \
-- SYS_SIGACTION = 46 // { int sys_sigaction(int signum, \
-+ SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, u_long offset, u_int scale); }
-+ SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, int facs, pid_t pid); }
-+ SYS_SIGACTION = 46 // { int sys_sigaction(int signum, const struct sigaction *nsa, struct sigaction *osa); }
- SYS_GETGID = 47 // { gid_t sys_getgid(void); }
- SYS_SIGPROCMASK = 48 // { int sys_sigprocmask(int how, sigset_t mask); }
-- SYS_GETLOGIN = 49 // { int sys_getlogin(char *namebuf, u_int namelen); }
- SYS_SETLOGIN = 50 // { int sys_setlogin(const char *namebuf); }
- SYS_ACCT = 51 // { int sys_acct(const char *path); }
- SYS_SIGPENDING = 52 // { int sys_sigpending(void); }
- SYS_FSTAT = 53 // { int sys_fstat(int fd, struct stat *sb); }
-- SYS_IOCTL = 54 // { int sys_ioctl(int fd, \
-+ SYS_IOCTL = 54 // { int sys_ioctl(int fd, u_long com, ... void *data); }
- SYS_REBOOT = 55 // { int sys_reboot(int opt); }
- SYS_REVOKE = 56 // { int sys_revoke(const char *path); }
-- SYS_SYMLINK = 57 // { int sys_symlink(const char *path, \
-- SYS_READLINK = 58 // { int sys_readlink(const char *path, char *buf, \
-- SYS_EXECVE = 59 // { int sys_execve(const char *path, \
-+ SYS_SYMLINK = 57 // { int sys_symlink(const char *path, const char *link); }
-+ SYS_READLINK = 58 // { ssize_t sys_readlink(const char *path, char *buf, size_t count); }
-+ SYS_EXECVE = 59 // { int sys_execve(const char *path, char * const *argp, char * const *envp); }
- SYS_UMASK = 60 // { mode_t sys_umask(mode_t newmask); }
- SYS_CHROOT = 61 // { int sys_chroot(const char *path); }
-- SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, \
-- SYS_STATFS = 63 // { int sys_statfs(const char *path, \
-+ SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, int flags); }
-+ SYS_STATFS = 63 // { int sys_statfs(const char *path, struct statfs *buf); }
- SYS_FSTATFS = 64 // { int sys_fstatfs(int fd, struct statfs *buf); }
-- SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, \
-+ SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, struct statfs *buf); }
- SYS_VFORK = 66 // { int sys_vfork(void); }
-- SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, \
-- SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, \
-- SYS_SETITIMER = 69 // { int sys_setitimer(int which, \
-- SYS_GETITIMER = 70 // { int sys_getitimer(int which, \
-- SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, \
-- SYS_KEVENT = 72 // { int sys_kevent(int fd, \
-+ SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, struct timezone *tzp); }
-+ SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, const struct timezone *tzp); }
-+ SYS_SETITIMER = 69 // { int sys_setitimer(int which, const struct itimerval *itv, struct itimerval *oitv); }
-+ SYS_GETITIMER = 70 // { int sys_getitimer(int which, struct itimerval *itv); }
-+ SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
-+ SYS_KEVENT = 72 // { int sys_kevent(int fd, const struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
- SYS_MUNMAP = 73 // { int sys_munmap(void *addr, size_t len); }
-- SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, \
-- SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, \
-- SYS_UTIMES = 76 // { int sys_utimes(const char *path, \
-- SYS_FUTIMES = 77 // { int sys_futimes(int fd, \
-- SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, \
-- SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, \
-- SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, \
-+ SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, int prot); }
-+ SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, int behav); }
-+ SYS_UTIMES = 76 // { int sys_utimes(const char *path, const struct timeval *tptr); }
-+ SYS_FUTIMES = 77 // { int sys_futimes(int fd, const struct timeval *tptr); }
-+ SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, char *vec); }
-+ SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, gid_t *gidset); }
-+ SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, const gid_t *gidset); }
- SYS_GETPGRP = 81 // { int sys_getpgrp(void); }
-- SYS_SETPGID = 82 // { int sys_setpgid(pid_t pid, int pgid); }
-- SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, \
-- SYS_FUTIMENS = 85 // { int sys_futimens(int fd, \
-- SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, \
-- SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, \
-- SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, \
-+ SYS_SETPGID = 82 // { int sys_setpgid(pid_t pid, pid_t pgid); }
-+ SYS_FUTEX = 83 // { int sys_futex(uint32_t *f, int op, int val, const struct timespec *timeout, uint32_t *g); }
-+ SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, const struct timespec *times, int flag); }
-+ SYS_FUTIMENS = 85 // { int sys_futimens(int fd, const struct timespec *times); }
-+ SYS_KBIND = 86 // { int sys_kbind(const struct __kbind *param, size_t psize, int64_t proc_cookie); }
-+ SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, struct timespec *tp); }
-+ SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, const struct timespec *tp); }
-+ SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, struct timespec *tp); }
- SYS_DUP2 = 90 // { int sys_dup2(int from, int to); }
-- SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, \
-+ SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
- SYS_FCNTL = 92 // { int sys_fcntl(int fd, int cmd, ... void *arg); }
-- SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, \
-+ SYS_ACCEPT4 = 93 // { int sys_accept4(int s, struct sockaddr *name, socklen_t *anamelen, int flags); }
-+ SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, clockid_t clock_id, const struct timespec *tp, void *lock, const int *abort); }
- SYS_FSYNC = 95 // { int sys_fsync(int fd); }
- SYS_SETPRIORITY = 96 // { int sys_setpriority(int which, id_t who, int prio); }
- SYS_SOCKET = 97 // { int sys_socket(int domain, int type, int protocol); }
-- SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, \
-+ SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, socklen_t namelen); }
- SYS_GETDENTS = 99 // { int sys_getdents(int fd, void *buf, size_t buflen); }
- SYS_GETPRIORITY = 100 // { int sys_getpriority(int which, id_t who); }
-+ SYS_PIPE2 = 101 // { int sys_pipe2(int *fdp, int flags); }
-+ SYS_DUP3 = 102 // { int sys_dup3(int from, int to, int flags); }
- SYS_SIGRETURN = 103 // { int sys_sigreturn(struct sigcontext *sigcntxp); }
-- SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, \
-- SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, \
-+ SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, socklen_t namelen); }
-+ SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, const void *val, socklen_t valsize); }
- SYS_LISTEN = 106 // { int sys_listen(int s, int backlog); }
-- SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, \
-- SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, \
-+ SYS_CHFLAGSAT = 107 // { int sys_chflagsat(int fd, const char *path, u_int flags, int atflags); }
-+ SYS_PLEDGE = 108 // { int sys_pledge(const char *promises, const char *execpromises); }
-+ SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *mask); }
-+ SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *mask); }
- SYS_SIGSUSPEND = 111 // { int sys_sigsuspend(int mask); }
-- SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, \
-- SYS_READV = 120 // { ssize_t sys_readv(int fd, \
-- SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, \
-+ SYS_SENDSYSLOG = 112 // { int sys_sendsyslog(const char *buf, size_t nbyte, int flags); }
-+ SYS_UNVEIL = 114 // { int sys_unveil(const char *path, const char *permissions); }
-+ SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, void *val, socklen_t *avalsize); }
-+ SYS_THRKILL = 119 // { int sys_thrkill(pid_t tid, int signum, void *tcb); }
-+ SYS_READV = 120 // { ssize_t sys_readv(int fd, const struct iovec *iovp, int iovcnt); }
-+ SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, const struct iovec *iovp, int iovcnt); }
-+ SYS_KILL = 122 // { int sys_kill(int pid, int signum); }
- SYS_FCHOWN = 123 // { int sys_fchown(int fd, uid_t uid, gid_t gid); }
- SYS_FCHMOD = 124 // { int sys_fchmod(int fd, mode_t mode); }
- SYS_SETREUID = 126 // { int sys_setreuid(uid_t ruid, uid_t euid); }
-@@ -119,89 +129,90 @@ const (
- SYS_RENAME = 128 // { int sys_rename(const char *from, const char *to); }
- SYS_FLOCK = 131 // { int sys_flock(int fd, int how); }
- SYS_MKFIFO = 132 // { int sys_mkfifo(const char *path, mode_t mode); }
-- SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, \
-+ SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, size_t len, int flags, const struct sockaddr *to, socklen_t tolen); }
- SYS_SHUTDOWN = 134 // { int sys_shutdown(int s, int how); }
-- SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, \
-+ SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, int protocol, int *rsv); }
- SYS_MKDIR = 136 // { int sys_mkdir(const char *path, mode_t mode); }
- SYS_RMDIR = 137 // { int sys_rmdir(const char *path); }
-- SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, \
-+ SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, struct timeval *olddelta); }
-+ SYS_GETLOGIN_R = 141 // { int sys_getlogin_r(char *namebuf, u_int namelen); }
- SYS_SETSID = 147 // { int sys_setsid(void); }
-- SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, \
-+ SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, int uid, char *arg); }
- SYS_NFSSVC = 155 // { int sys_nfssvc(int flag, void *argp); }
- SYS_GETFH = 161 // { int sys_getfh(const char *fname, fhandle_t *fhp); }
- SYS_SYSARCH = 165 // { int sys_sysarch(int op, void *parms); }
-- SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, \
-- SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, \
-+ SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, size_t nbyte, int pad, off_t offset); }
-+ SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, size_t nbyte, int pad, off_t offset); }
- SYS_SETGID = 181 // { int sys_setgid(gid_t gid); }
- SYS_SETEGID = 182 // { int sys_setegid(gid_t egid); }
- SYS_SETEUID = 183 // { int sys_seteuid(uid_t euid); }
- SYS_PATHCONF = 191 // { long sys_pathconf(const char *path, int name); }
- SYS_FPATHCONF = 192 // { long sys_fpathconf(int fd, int name); }
- SYS_SWAPCTL = 193 // { int sys_swapctl(int cmd, const void *arg, int misc); }
-- SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, \
-- SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, \
-- SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, \
-- SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, \
-- SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, \
-+ SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, struct rlimit *rlp); }
-+ SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, const struct rlimit *rlp); }
-+ SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
-+ SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, int whence); }
-+ SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, off_t length); }
- SYS_FTRUNCATE = 201 // { int sys_ftruncate(int fd, int pad, off_t length); }
-- SYS___SYSCTL = 202 // { int sys___sysctl(const int *name, u_int namelen, \
-+ SYS_SYSCTL = 202 // { int sys_sysctl(const int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); }
- SYS_MLOCK = 203 // { int sys_mlock(const void *addr, size_t len); }
- SYS_MUNLOCK = 204 // { int sys_munlock(const void *addr, size_t len); }
- SYS_GETPGID = 207 // { pid_t sys_getpgid(pid_t pid); }
-- SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, \
-+ SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, size_t len); }
- SYS_SEMGET = 221 // { int sys_semget(key_t key, int nsems, int semflg); }
- SYS_MSGGET = 225 // { int sys_msgget(key_t key, int msgflg); }
-- SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, \
-- SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \
-- SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, \
-+ SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
-+ SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
-+ SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, int shmflg); }
- SYS_SHMDT = 230 // { int sys_shmdt(const void *shmaddr); }
-- SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, \
-- SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, \
-+ SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, int inherit); }
-+ SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, u_int nfds, int timeout); }
- SYS_ISSETUGID = 253 // { int sys_issetugid(void); }
- SYS_LCHOWN = 254 // { int sys_lchown(const char *path, uid_t uid, gid_t gid); }
- SYS_GETSID = 255 // { pid_t sys_getsid(pid_t pid); }
- SYS_MSYNC = 256 // { int sys_msync(void *addr, size_t len, int flags); }
- SYS_PIPE = 263 // { int sys_pipe(int *fdp); }
- SYS_FHOPEN = 264 // { int sys_fhopen(const fhandle_t *fhp, int flags); }
-- SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, \
-- SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, \
-+ SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
-+ SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
- SYS_KQUEUE = 269 // { int sys_kqueue(void); }
- SYS_MLOCKALL = 271 // { int sys_mlockall(int flags); }
- SYS_MUNLOCKALL = 272 // { int sys_munlockall(void); }
-- SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, \
-- SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, \
-- SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, \
-- SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, \
-- SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, \
-+ SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
-+ SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, uid_t suid); }
-+ SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
-+ SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
-+ SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
- SYS_CLOSEFROM = 287 // { int sys_closefrom(int fd); }
-- SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, \
-+ SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, struct sigaltstack *oss); }
- SYS_SHMGET = 289 // { int sys_shmget(key_t key, size_t size, int shmflg); }
-- SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, \
-- SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, \
-- SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, \
-- SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, \
-- SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, \
-+ SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, size_t nsops); }
-+ SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, struct stat *sb); }
-+ SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, union semun *arg); }
-+ SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, struct shmid_ds *buf); }
-+ SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, struct msqid_ds *buf); }
- SYS_SCHED_YIELD = 298 // { int sys_sched_yield(void); }
- SYS_GETTHRID = 299 // { pid_t sys_getthrid(void); }
-- SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, \
-+ SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, int n); }
- SYS___THREXIT = 302 // { void sys___threxit(pid_t *notdead); }
-- SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, \
-+ SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, siginfo_t *info, const struct timespec *timeout); }
- SYS___GETCWD = 304 // { int sys___getcwd(char *buf, size_t len); }
-- SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, \
-+ SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, int64_t *oldfreq); }
- SYS_SETRTABLE = 310 // { int sys_setrtable(int rtableid); }
- SYS_GETRTABLE = 311 // { int sys_getrtable(void); }
-- SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, \
-- SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, \
-- SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, \
-- SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, \
-- SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, \
-- SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, \
-- SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, \
-- SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, \
-- SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, \
-- SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, \
-- SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, \
-- SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, \
-+ SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, int amode, int flag); }
-+ SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, mode_t mode, int flag); }
-+ SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, uid_t uid, gid_t gid, int flag); }
-+ SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, const char *path2, int flag); }
-+ SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, mode_t mode); }
-+ SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, mode_t mode); }
-+ SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, mode_t mode, dev_t dev); }
-+ SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, ... mode_t mode); }
-+ SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, char *buf, size_t count); }
-+ SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, int tofd, const char *to); }
-+ SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, const char *link); }
-+ SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, int flag); }
- SYS___SET_TCB = 329 // { void sys___set_tcb(void *tcb); }
- SYS___GET_TCB = 330 // { void *sys___get_tcb(void); }
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
-index bd28146d..f0dec6f0 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
-@@ -1,5 +1,5 @@
--// mksysnum_openbsd.pl
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build amd64,openbsd
-
-@@ -9,109 +9,119 @@ const (
- SYS_EXIT = 1 // { void sys_exit(int rval); }
- SYS_FORK = 2 // { int sys_fork(void); }
- SYS_READ = 3 // { ssize_t sys_read(int fd, void *buf, size_t nbyte); }
-- SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, \
-- SYS_OPEN = 5 // { int sys_open(const char *path, \
-+ SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, size_t nbyte); }
-+ SYS_OPEN = 5 // { int sys_open(const char *path, int flags, ... mode_t mode); }
- SYS_CLOSE = 6 // { int sys_close(int fd); }
-- SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, \
-+ SYS_GETENTROPY = 7 // { int sys_getentropy(void *buf, size_t nbyte); }
-+ SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, size_t psize); }
- SYS_LINK = 9 // { int sys_link(const char *path, const char *link); }
- SYS_UNLINK = 10 // { int sys_unlink(const char *path); }
-- SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, \
-+ SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, int options, struct rusage *rusage); }
- SYS_CHDIR = 12 // { int sys_chdir(const char *path); }
- SYS_FCHDIR = 13 // { int sys_fchdir(int fd); }
-- SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, \
-+ SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, dev_t dev); }
- SYS_CHMOD = 15 // { int sys_chmod(const char *path, mode_t mode); }
-- SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, \
-+ SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, gid_t gid); }
- SYS_OBREAK = 17 // { int sys_obreak(char *nsize); } break
- SYS_GETDTABLECOUNT = 18 // { int sys_getdtablecount(void); }
-- SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, \
-+ SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, struct rusage *rusage); }
- SYS_GETPID = 20 // { pid_t sys_getpid(void); }
-- SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, \
-+ SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, int flags, void *data); }
- SYS_UNMOUNT = 22 // { int sys_unmount(const char *path, int flags); }
- SYS_SETUID = 23 // { int sys_setuid(uid_t uid); }
- SYS_GETUID = 24 // { uid_t sys_getuid(void); }
- SYS_GETEUID = 25 // { uid_t sys_geteuid(void); }
-- SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, \
-- SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, \
-- SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, \
-- SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, \
-- SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, \
-- SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, \
-- SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, \
-- SYS_ACCESS = 33 // { int sys_access(const char *path, int flags); }
-+ SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, int data); }
-+ SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, int flags); }
-+ SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, const struct msghdr *msg, int flags); }
-+ SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, int flags, struct sockaddr *from, socklen_t *fromlenaddr); }
-+ SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, socklen_t *anamelen); }
-+ SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, socklen_t *alen); }
-+ SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, socklen_t *alen); }
-+ SYS_ACCESS = 33 // { int sys_access(const char *path, int amode); }
- SYS_CHFLAGS = 34 // { int sys_chflags(const char *path, u_int flags); }
- SYS_FCHFLAGS = 35 // { int sys_fchflags(int fd, u_int flags); }
- SYS_SYNC = 36 // { void sys_sync(void); }
-- SYS_KILL = 37 // { int sys_kill(int pid, int signum); }
- SYS_STAT = 38 // { int sys_stat(const char *path, struct stat *ub); }
- SYS_GETPPID = 39 // { pid_t sys_getppid(void); }
- SYS_LSTAT = 40 // { int sys_lstat(const char *path, struct stat *ub); }
- SYS_DUP = 41 // { int sys_dup(int fd); }
-- SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, \
-+ SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, struct stat *buf, int flag); }
- SYS_GETEGID = 43 // { gid_t sys_getegid(void); }
-- SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, \
-- SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, \
-- SYS_SIGACTION = 46 // { int sys_sigaction(int signum, \
-+ SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, u_long offset, u_int scale); }
-+ SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, int facs, pid_t pid); }
-+ SYS_SIGACTION = 46 // { int sys_sigaction(int signum, const struct sigaction *nsa, struct sigaction *osa); }
- SYS_GETGID = 47 // { gid_t sys_getgid(void); }
- SYS_SIGPROCMASK = 48 // { int sys_sigprocmask(int how, sigset_t mask); }
-- SYS_GETLOGIN = 49 // { int sys_getlogin(char *namebuf, u_int namelen); }
- SYS_SETLOGIN = 50 // { int sys_setlogin(const char *namebuf); }
- SYS_ACCT = 51 // { int sys_acct(const char *path); }
- SYS_SIGPENDING = 52 // { int sys_sigpending(void); }
- SYS_FSTAT = 53 // { int sys_fstat(int fd, struct stat *sb); }
-- SYS_IOCTL = 54 // { int sys_ioctl(int fd, \
-+ SYS_IOCTL = 54 // { int sys_ioctl(int fd, u_long com, ... void *data); }
- SYS_REBOOT = 55 // { int sys_reboot(int opt); }
- SYS_REVOKE = 56 // { int sys_revoke(const char *path); }
-- SYS_SYMLINK = 57 // { int sys_symlink(const char *path, \
-- SYS_READLINK = 58 // { int sys_readlink(const char *path, char *buf, \
-- SYS_EXECVE = 59 // { int sys_execve(const char *path, \
-+ SYS_SYMLINK = 57 // { int sys_symlink(const char *path, const char *link); }
-+ SYS_READLINK = 58 // { ssize_t sys_readlink(const char *path, char *buf, size_t count); }
-+ SYS_EXECVE = 59 // { int sys_execve(const char *path, char * const *argp, char * const *envp); }
- SYS_UMASK = 60 // { mode_t sys_umask(mode_t newmask); }
- SYS_CHROOT = 61 // { int sys_chroot(const char *path); }
-- SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, \
-- SYS_STATFS = 63 // { int sys_statfs(const char *path, \
-+ SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, int flags); }
-+ SYS_STATFS = 63 // { int sys_statfs(const char *path, struct statfs *buf); }
- SYS_FSTATFS = 64 // { int sys_fstatfs(int fd, struct statfs *buf); }
-- SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, \
-+ SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, struct statfs *buf); }
- SYS_VFORK = 66 // { int sys_vfork(void); }
-- SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, \
-- SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, \
-- SYS_SETITIMER = 69 // { int sys_setitimer(int which, \
-- SYS_GETITIMER = 70 // { int sys_getitimer(int which, \
-- SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, \
-- SYS_KEVENT = 72 // { int sys_kevent(int fd, \
-+ SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, struct timezone *tzp); }
-+ SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, const struct timezone *tzp); }
-+ SYS_SETITIMER = 69 // { int sys_setitimer(int which, const struct itimerval *itv, struct itimerval *oitv); }
-+ SYS_GETITIMER = 70 // { int sys_getitimer(int which, struct itimerval *itv); }
-+ SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
-+ SYS_KEVENT = 72 // { int sys_kevent(int fd, const struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
- SYS_MUNMAP = 73 // { int sys_munmap(void *addr, size_t len); }
-- SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, \
-- SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, \
-- SYS_UTIMES = 76 // { int sys_utimes(const char *path, \
-- SYS_FUTIMES = 77 // { int sys_futimes(int fd, \
-- SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, \
-- SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, \
-- SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, \
-+ SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, int prot); }
-+ SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, int behav); }
-+ SYS_UTIMES = 76 // { int sys_utimes(const char *path, const struct timeval *tptr); }
-+ SYS_FUTIMES = 77 // { int sys_futimes(int fd, const struct timeval *tptr); }
-+ SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, char *vec); }
-+ SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, gid_t *gidset); }
-+ SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, const gid_t *gidset); }
- SYS_GETPGRP = 81 // { int sys_getpgrp(void); }
-- SYS_SETPGID = 82 // { int sys_setpgid(pid_t pid, int pgid); }
-- SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, \
-- SYS_FUTIMENS = 85 // { int sys_futimens(int fd, \
-- SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, \
-- SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, \
-- SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, \
-+ SYS_SETPGID = 82 // { int sys_setpgid(pid_t pid, pid_t pgid); }
-+ SYS_FUTEX = 83 // { int sys_futex(uint32_t *f, int op, int val, const struct timespec *timeout, uint32_t *g); }
-+ SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, const struct timespec *times, int flag); }
-+ SYS_FUTIMENS = 85 // { int sys_futimens(int fd, const struct timespec *times); }
-+ SYS_KBIND = 86 // { int sys_kbind(const struct __kbind *param, size_t psize, int64_t proc_cookie); }
-+ SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, struct timespec *tp); }
-+ SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, const struct timespec *tp); }
-+ SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, struct timespec *tp); }
- SYS_DUP2 = 90 // { int sys_dup2(int from, int to); }
-- SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, \
-+ SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
- SYS_FCNTL = 92 // { int sys_fcntl(int fd, int cmd, ... void *arg); }
-- SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, \
-+ SYS_ACCEPT4 = 93 // { int sys_accept4(int s, struct sockaddr *name, socklen_t *anamelen, int flags); }
-+ SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, clockid_t clock_id, const struct timespec *tp, void *lock, const int *abort); }
- SYS_FSYNC = 95 // { int sys_fsync(int fd); }
- SYS_SETPRIORITY = 96 // { int sys_setpriority(int which, id_t who, int prio); }
- SYS_SOCKET = 97 // { int sys_socket(int domain, int type, int protocol); }
-- SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, \
-+ SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, socklen_t namelen); }
- SYS_GETDENTS = 99 // { int sys_getdents(int fd, void *buf, size_t buflen); }
- SYS_GETPRIORITY = 100 // { int sys_getpriority(int which, id_t who); }
-+ SYS_PIPE2 = 101 // { int sys_pipe2(int *fdp, int flags); }
-+ SYS_DUP3 = 102 // { int sys_dup3(int from, int to, int flags); }
- SYS_SIGRETURN = 103 // { int sys_sigreturn(struct sigcontext *sigcntxp); }
-- SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, \
-- SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, \
-+ SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, socklen_t namelen); }
-+ SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, const void *val, socklen_t valsize); }
- SYS_LISTEN = 106 // { int sys_listen(int s, int backlog); }
-- SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, \
-- SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, \
-+ SYS_CHFLAGSAT = 107 // { int sys_chflagsat(int fd, const char *path, u_int flags, int atflags); }
-+ SYS_PLEDGE = 108 // { int sys_pledge(const char *promises, const char *execpromises); }
-+ SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *mask); }
-+ SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *mask); }
- SYS_SIGSUSPEND = 111 // { int sys_sigsuspend(int mask); }
-- SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, \
-- SYS_READV = 120 // { ssize_t sys_readv(int fd, \
-- SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, \
-+ SYS_SENDSYSLOG = 112 // { int sys_sendsyslog(const char *buf, size_t nbyte, int flags); }
-+ SYS_UNVEIL = 114 // { int sys_unveil(const char *path, const char *permissions); }
-+ SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, void *val, socklen_t *avalsize); }
-+ SYS_THRKILL = 119 // { int sys_thrkill(pid_t tid, int signum, void *tcb); }
-+ SYS_READV = 120 // { ssize_t sys_readv(int fd, const struct iovec *iovp, int iovcnt); }
-+ SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, const struct iovec *iovp, int iovcnt); }
-+ SYS_KILL = 122 // { int sys_kill(int pid, int signum); }
- SYS_FCHOWN = 123 // { int sys_fchown(int fd, uid_t uid, gid_t gid); }
- SYS_FCHMOD = 124 // { int sys_fchmod(int fd, mode_t mode); }
- SYS_SETREUID = 126 // { int sys_setreuid(uid_t ruid, uid_t euid); }
-@@ -119,89 +129,90 @@ const (
- SYS_RENAME = 128 // { int sys_rename(const char *from, const char *to); }
- SYS_FLOCK = 131 // { int sys_flock(int fd, int how); }
- SYS_MKFIFO = 132 // { int sys_mkfifo(const char *path, mode_t mode); }
-- SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, \
-+ SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, size_t len, int flags, const struct sockaddr *to, socklen_t tolen); }
- SYS_SHUTDOWN = 134 // { int sys_shutdown(int s, int how); }
-- SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, \
-+ SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, int protocol, int *rsv); }
- SYS_MKDIR = 136 // { int sys_mkdir(const char *path, mode_t mode); }
- SYS_RMDIR = 137 // { int sys_rmdir(const char *path); }
-- SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, \
-+ SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, struct timeval *olddelta); }
-+ SYS_GETLOGIN_R = 141 // { int sys_getlogin_r(char *namebuf, u_int namelen); }
- SYS_SETSID = 147 // { int sys_setsid(void); }
-- SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, \
-+ SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, int uid, char *arg); }
- SYS_NFSSVC = 155 // { int sys_nfssvc(int flag, void *argp); }
- SYS_GETFH = 161 // { int sys_getfh(const char *fname, fhandle_t *fhp); }
- SYS_SYSARCH = 165 // { int sys_sysarch(int op, void *parms); }
-- SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, \
-- SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, \
-+ SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, size_t nbyte, int pad, off_t offset); }
-+ SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, size_t nbyte, int pad, off_t offset); }
- SYS_SETGID = 181 // { int sys_setgid(gid_t gid); }
- SYS_SETEGID = 182 // { int sys_setegid(gid_t egid); }
- SYS_SETEUID = 183 // { int sys_seteuid(uid_t euid); }
- SYS_PATHCONF = 191 // { long sys_pathconf(const char *path, int name); }
- SYS_FPATHCONF = 192 // { long sys_fpathconf(int fd, int name); }
- SYS_SWAPCTL = 193 // { int sys_swapctl(int cmd, const void *arg, int misc); }
-- SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, \
-- SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, \
-- SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, \
-- SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, \
-- SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, \
-+ SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, struct rlimit *rlp); }
-+ SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, const struct rlimit *rlp); }
-+ SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
-+ SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, int whence); }
-+ SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, off_t length); }
- SYS_FTRUNCATE = 201 // { int sys_ftruncate(int fd, int pad, off_t length); }
-- SYS___SYSCTL = 202 // { int sys___sysctl(const int *name, u_int namelen, \
-+ SYS_SYSCTL = 202 // { int sys_sysctl(const int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); }
- SYS_MLOCK = 203 // { int sys_mlock(const void *addr, size_t len); }
- SYS_MUNLOCK = 204 // { int sys_munlock(const void *addr, size_t len); }
- SYS_GETPGID = 207 // { pid_t sys_getpgid(pid_t pid); }
-- SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, \
-+ SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, size_t len); }
- SYS_SEMGET = 221 // { int sys_semget(key_t key, int nsems, int semflg); }
- SYS_MSGGET = 225 // { int sys_msgget(key_t key, int msgflg); }
-- SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, \
-- SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \
-- SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, \
-+ SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
-+ SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
-+ SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, int shmflg); }
- SYS_SHMDT = 230 // { int sys_shmdt(const void *shmaddr); }
-- SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, \
-- SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, \
-+ SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, int inherit); }
-+ SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, u_int nfds, int timeout); }
- SYS_ISSETUGID = 253 // { int sys_issetugid(void); }
- SYS_LCHOWN = 254 // { int sys_lchown(const char *path, uid_t uid, gid_t gid); }
- SYS_GETSID = 255 // { pid_t sys_getsid(pid_t pid); }
- SYS_MSYNC = 256 // { int sys_msync(void *addr, size_t len, int flags); }
- SYS_PIPE = 263 // { int sys_pipe(int *fdp); }
- SYS_FHOPEN = 264 // { int sys_fhopen(const fhandle_t *fhp, int flags); }
-- SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, \
-- SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, \
-+ SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
-+ SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
- SYS_KQUEUE = 269 // { int sys_kqueue(void); }
- SYS_MLOCKALL = 271 // { int sys_mlockall(int flags); }
- SYS_MUNLOCKALL = 272 // { int sys_munlockall(void); }
-- SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, \
-- SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, \
-- SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, \
-- SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, \
-- SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, \
-+ SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
-+ SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, uid_t suid); }
-+ SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
-+ SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
-+ SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
- SYS_CLOSEFROM = 287 // { int sys_closefrom(int fd); }
-- SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, \
-+ SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, struct sigaltstack *oss); }
- SYS_SHMGET = 289 // { int sys_shmget(key_t key, size_t size, int shmflg); }
-- SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, \
-- SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, \
-- SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, \
-- SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, \
-- SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, \
-+ SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, size_t nsops); }
-+ SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, struct stat *sb); }
-+ SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, union semun *arg); }
-+ SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, struct shmid_ds *buf); }
-+ SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, struct msqid_ds *buf); }
- SYS_SCHED_YIELD = 298 // { int sys_sched_yield(void); }
- SYS_GETTHRID = 299 // { pid_t sys_getthrid(void); }
-- SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, \
-+ SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, int n); }
- SYS___THREXIT = 302 // { void sys___threxit(pid_t *notdead); }
-- SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, \
-+ SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, siginfo_t *info, const struct timespec *timeout); }
- SYS___GETCWD = 304 // { int sys___getcwd(char *buf, size_t len); }
-- SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, \
-+ SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, int64_t *oldfreq); }
- SYS_SETRTABLE = 310 // { int sys_setrtable(int rtableid); }
- SYS_GETRTABLE = 311 // { int sys_getrtable(void); }
-- SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, \
-- SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, \
-- SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, \
-- SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, \
-- SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, \
-- SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, \
-- SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, \
-- SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, \
-- SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, \
-- SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, \
-- SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, \
-- SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, \
-+ SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, int amode, int flag); }
-+ SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, mode_t mode, int flag); }
-+ SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, uid_t uid, gid_t gid, int flag); }
-+ SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, const char *path2, int flag); }
-+ SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, mode_t mode); }
-+ SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, mode_t mode); }
-+ SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, mode_t mode, dev_t dev); }
-+ SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, ... mode_t mode); }
-+ SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, char *buf, size_t count); }
-+ SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, int tofd, const char *to); }
-+ SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, const char *link); }
-+ SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, int flag); }
- SYS___SET_TCB = 329 // { void sys___set_tcb(void *tcb); }
- SYS___GET_TCB = 330 // { void *sys___get_tcb(void); }
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
-index 32653e53..33d1dc54 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
-@@ -1,5 +1,5 @@
--// mksysnum_openbsd.pl
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build arm,openbsd
-
-@@ -9,35 +9,35 @@ const (
- SYS_EXIT = 1 // { void sys_exit(int rval); }
- SYS_FORK = 2 // { int sys_fork(void); }
- SYS_READ = 3 // { ssize_t sys_read(int fd, void *buf, size_t nbyte); }
-- SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, \
-- SYS_OPEN = 5 // { int sys_open(const char *path, \
-+ SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, size_t nbyte); }
-+ SYS_OPEN = 5 // { int sys_open(const char *path, int flags, ... mode_t mode); }
- SYS_CLOSE = 6 // { int sys_close(int fd); }
- SYS_GETENTROPY = 7 // { int sys_getentropy(void *buf, size_t nbyte); }
-- SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, \
-+ SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, size_t psize); }
- SYS_LINK = 9 // { int sys_link(const char *path, const char *link); }
- SYS_UNLINK = 10 // { int sys_unlink(const char *path); }
-- SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, \
-+ SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, int options, struct rusage *rusage); }
- SYS_CHDIR = 12 // { int sys_chdir(const char *path); }
- SYS_FCHDIR = 13 // { int sys_fchdir(int fd); }
-- SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, \
-+ SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, dev_t dev); }
- SYS_CHMOD = 15 // { int sys_chmod(const char *path, mode_t mode); }
-- SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, \
-+ SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, gid_t gid); }
- SYS_OBREAK = 17 // { int sys_obreak(char *nsize); } break
- SYS_GETDTABLECOUNT = 18 // { int sys_getdtablecount(void); }
-- SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, \
-+ SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, struct rusage *rusage); }
- SYS_GETPID = 20 // { pid_t sys_getpid(void); }
-- SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, \
-+ SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, int flags, void *data); }
- SYS_UNMOUNT = 22 // { int sys_unmount(const char *path, int flags); }
- SYS_SETUID = 23 // { int sys_setuid(uid_t uid); }
- SYS_GETUID = 24 // { uid_t sys_getuid(void); }
- SYS_GETEUID = 25 // { uid_t sys_geteuid(void); }
-- SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, \
-- SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, \
-- SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, \
-- SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, \
-- SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, \
-- SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, \
-- SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, \
-+ SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, int data); }
-+ SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, int flags); }
-+ SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, const struct msghdr *msg, int flags); }
-+ SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, int flags, struct sockaddr *from, socklen_t *fromlenaddr); }
-+ SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, socklen_t *anamelen); }
-+ SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, socklen_t *alen); }
-+ SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, socklen_t *alen); }
- SYS_ACCESS = 33 // { int sys_access(const char *path, int amode); }
- SYS_CHFLAGS = 34 // { int sys_chflags(const char *path, u_int flags); }
- SYS_FCHFLAGS = 35 // { int sys_fchflags(int fd, u_int flags); }
-@@ -46,77 +46,81 @@ const (
- SYS_GETPPID = 39 // { pid_t sys_getppid(void); }
- SYS_LSTAT = 40 // { int sys_lstat(const char *path, struct stat *ub); }
- SYS_DUP = 41 // { int sys_dup(int fd); }
-- SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, \
-+ SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, struct stat *buf, int flag); }
- SYS_GETEGID = 43 // { gid_t sys_getegid(void); }
-- SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, \
-- SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, \
-- SYS_SIGACTION = 46 // { int sys_sigaction(int signum, \
-+ SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, u_long offset, u_int scale); }
-+ SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, int facs, pid_t pid); }
-+ SYS_SIGACTION = 46 // { int sys_sigaction(int signum, const struct sigaction *nsa, struct sigaction *osa); }
- SYS_GETGID = 47 // { gid_t sys_getgid(void); }
- SYS_SIGPROCMASK = 48 // { int sys_sigprocmask(int how, sigset_t mask); }
-- SYS_GETLOGIN = 49 // { int sys_getlogin(char *namebuf, u_int namelen); }
- SYS_SETLOGIN = 50 // { int sys_setlogin(const char *namebuf); }
- SYS_ACCT = 51 // { int sys_acct(const char *path); }
- SYS_SIGPENDING = 52 // { int sys_sigpending(void); }
- SYS_FSTAT = 53 // { int sys_fstat(int fd, struct stat *sb); }
-- SYS_IOCTL = 54 // { int sys_ioctl(int fd, \
-+ SYS_IOCTL = 54 // { int sys_ioctl(int fd, u_long com, ... void *data); }
- SYS_REBOOT = 55 // { int sys_reboot(int opt); }
- SYS_REVOKE = 56 // { int sys_revoke(const char *path); }
-- SYS_SYMLINK = 57 // { int sys_symlink(const char *path, \
-- SYS_READLINK = 58 // { ssize_t sys_readlink(const char *path, \
-- SYS_EXECVE = 59 // { int sys_execve(const char *path, \
-+ SYS_SYMLINK = 57 // { int sys_symlink(const char *path, const char *link); }
-+ SYS_READLINK = 58 // { ssize_t sys_readlink(const char *path, char *buf, size_t count); }
-+ SYS_EXECVE = 59 // { int sys_execve(const char *path, char * const *argp, char * const *envp); }
- SYS_UMASK = 60 // { mode_t sys_umask(mode_t newmask); }
- SYS_CHROOT = 61 // { int sys_chroot(const char *path); }
-- SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, \
-- SYS_STATFS = 63 // { int sys_statfs(const char *path, \
-+ SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, int flags); }
-+ SYS_STATFS = 63 // { int sys_statfs(const char *path, struct statfs *buf); }
- SYS_FSTATFS = 64 // { int sys_fstatfs(int fd, struct statfs *buf); }
-- SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, \
-+ SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, struct statfs *buf); }
- SYS_VFORK = 66 // { int sys_vfork(void); }
-- SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, \
-- SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, \
-- SYS_SETITIMER = 69 // { int sys_setitimer(int which, \
-- SYS_GETITIMER = 70 // { int sys_getitimer(int which, \
-- SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, \
-- SYS_KEVENT = 72 // { int sys_kevent(int fd, \
-+ SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, struct timezone *tzp); }
-+ SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, const struct timezone *tzp); }
-+ SYS_SETITIMER = 69 // { int sys_setitimer(int which, const struct itimerval *itv, struct itimerval *oitv); }
-+ SYS_GETITIMER = 70 // { int sys_getitimer(int which, struct itimerval *itv); }
-+ SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
-+ SYS_KEVENT = 72 // { int sys_kevent(int fd, const struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
- SYS_MUNMAP = 73 // { int sys_munmap(void *addr, size_t len); }
-- SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, \
-- SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, \
-- SYS_UTIMES = 76 // { int sys_utimes(const char *path, \
-- SYS_FUTIMES = 77 // { int sys_futimes(int fd, \
-- SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, \
-- SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, \
-- SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, \
-+ SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, int prot); }
-+ SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, int behav); }
-+ SYS_UTIMES = 76 // { int sys_utimes(const char *path, const struct timeval *tptr); }
-+ SYS_FUTIMES = 77 // { int sys_futimes(int fd, const struct timeval *tptr); }
-+ SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, char *vec); }
-+ SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, gid_t *gidset); }
-+ SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, const gid_t *gidset); }
- SYS_GETPGRP = 81 // { int sys_getpgrp(void); }
- SYS_SETPGID = 82 // { int sys_setpgid(pid_t pid, pid_t pgid); }
-- SYS_SENDSYSLOG = 83 // { int sys_sendsyslog(const void *buf, size_t nbyte); }
-- SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, \
-- SYS_FUTIMENS = 85 // { int sys_futimens(int fd, \
-- SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, \
-- SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, \
-- SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, \
-+ SYS_FUTEX = 83 // { int sys_futex(uint32_t *f, int op, int val, const struct timespec *timeout, uint32_t *g); }
-+ SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, const struct timespec *times, int flag); }
-+ SYS_FUTIMENS = 85 // { int sys_futimens(int fd, const struct timespec *times); }
-+ SYS_KBIND = 86 // { int sys_kbind(const struct __kbind *param, size_t psize, int64_t proc_cookie); }
-+ SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, struct timespec *tp); }
-+ SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, const struct timespec *tp); }
-+ SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, struct timespec *tp); }
- SYS_DUP2 = 90 // { int sys_dup2(int from, int to); }
-- SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, \
-+ SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
- SYS_FCNTL = 92 // { int sys_fcntl(int fd, int cmd, ... void *arg); }
-- SYS_ACCEPT4 = 93 // { int sys_accept4(int s, struct sockaddr *name, \
-- SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, \
-+ SYS_ACCEPT4 = 93 // { int sys_accept4(int s, struct sockaddr *name, socklen_t *anamelen, int flags); }
-+ SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, clockid_t clock_id, const struct timespec *tp, void *lock, const int *abort); }
- SYS_FSYNC = 95 // { int sys_fsync(int fd); }
- SYS_SETPRIORITY = 96 // { int sys_setpriority(int which, id_t who, int prio); }
- SYS_SOCKET = 97 // { int sys_socket(int domain, int type, int protocol); }
-- SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, \
-+ SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, socklen_t namelen); }
- SYS_GETDENTS = 99 // { int sys_getdents(int fd, void *buf, size_t buflen); }
- SYS_GETPRIORITY = 100 // { int sys_getpriority(int which, id_t who); }
- SYS_PIPE2 = 101 // { int sys_pipe2(int *fdp, int flags); }
- SYS_DUP3 = 102 // { int sys_dup3(int from, int to, int flags); }
- SYS_SIGRETURN = 103 // { int sys_sigreturn(struct sigcontext *sigcntxp); }
-- SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, \
-- SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, \
-+ SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, socklen_t namelen); }
-+ SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, const void *val, socklen_t valsize); }
- SYS_LISTEN = 106 // { int sys_listen(int s, int backlog); }
-- SYS_CHFLAGSAT = 107 // { int sys_chflagsat(int fd, const char *path, \
-- SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, \
-- SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, \
-+ SYS_CHFLAGSAT = 107 // { int sys_chflagsat(int fd, const char *path, u_int flags, int atflags); }
-+ SYS_PLEDGE = 108 // { int sys_pledge(const char *promises, const char *execpromises); }
-+ SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *mask); }
-+ SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *mask); }
- SYS_SIGSUSPEND = 111 // { int sys_sigsuspend(int mask); }
-- SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, \
-- SYS_READV = 120 // { ssize_t sys_readv(int fd, \
-- SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, \
-+ SYS_SENDSYSLOG = 112 // { int sys_sendsyslog(const char *buf, size_t nbyte, int flags); }
-+ SYS_UNVEIL = 114 // { int sys_unveil(const char *path, const char *permissions); }
-+ SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, void *val, socklen_t *avalsize); }
-+ SYS_THRKILL = 119 // { int sys_thrkill(pid_t tid, int signum, void *tcb); }
-+ SYS_READV = 120 // { ssize_t sys_readv(int fd, const struct iovec *iovp, int iovcnt); }
-+ SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, const struct iovec *iovp, int iovcnt); }
- SYS_KILL = 122 // { int sys_kill(int pid, int signum); }
- SYS_FCHOWN = 123 // { int sys_fchown(int fd, uid_t uid, gid_t gid); }
- SYS_FCHMOD = 124 // { int sys_fchmod(int fd, mode_t mode); }
-@@ -125,89 +129,90 @@ const (
- SYS_RENAME = 128 // { int sys_rename(const char *from, const char *to); }
- SYS_FLOCK = 131 // { int sys_flock(int fd, int how); }
- SYS_MKFIFO = 132 // { int sys_mkfifo(const char *path, mode_t mode); }
-- SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, \
-+ SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, size_t len, int flags, const struct sockaddr *to, socklen_t tolen); }
- SYS_SHUTDOWN = 134 // { int sys_shutdown(int s, int how); }
-- SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, \
-+ SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, int protocol, int *rsv); }
- SYS_MKDIR = 136 // { int sys_mkdir(const char *path, mode_t mode); }
- SYS_RMDIR = 137 // { int sys_rmdir(const char *path); }
-- SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, \
-+ SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, struct timeval *olddelta); }
-+ SYS_GETLOGIN_R = 141 // { int sys_getlogin_r(char *namebuf, u_int namelen); }
- SYS_SETSID = 147 // { int sys_setsid(void); }
-- SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, \
-+ SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, int uid, char *arg); }
- SYS_NFSSVC = 155 // { int sys_nfssvc(int flag, void *argp); }
- SYS_GETFH = 161 // { int sys_getfh(const char *fname, fhandle_t *fhp); }
- SYS_SYSARCH = 165 // { int sys_sysarch(int op, void *parms); }
-- SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, \
-- SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, \
-+ SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, size_t nbyte, int pad, off_t offset); }
-+ SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, size_t nbyte, int pad, off_t offset); }
- SYS_SETGID = 181 // { int sys_setgid(gid_t gid); }
- SYS_SETEGID = 182 // { int sys_setegid(gid_t egid); }
- SYS_SETEUID = 183 // { int sys_seteuid(uid_t euid); }
- SYS_PATHCONF = 191 // { long sys_pathconf(const char *path, int name); }
- SYS_FPATHCONF = 192 // { long sys_fpathconf(int fd, int name); }
- SYS_SWAPCTL = 193 // { int sys_swapctl(int cmd, const void *arg, int misc); }
-- SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, \
-- SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, \
-- SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, \
-- SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, \
-- SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, \
-+ SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, struct rlimit *rlp); }
-+ SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, const struct rlimit *rlp); }
-+ SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
-+ SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, int whence); }
-+ SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, off_t length); }
- SYS_FTRUNCATE = 201 // { int sys_ftruncate(int fd, int pad, off_t length); }
-- SYS___SYSCTL = 202 // { int sys___sysctl(const int *name, u_int namelen, \
-+ SYS_SYSCTL = 202 // { int sys_sysctl(const int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); }
- SYS_MLOCK = 203 // { int sys_mlock(const void *addr, size_t len); }
- SYS_MUNLOCK = 204 // { int sys_munlock(const void *addr, size_t len); }
- SYS_GETPGID = 207 // { pid_t sys_getpgid(pid_t pid); }
-- SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, \
-+ SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, size_t len); }
- SYS_SEMGET = 221 // { int sys_semget(key_t key, int nsems, int semflg); }
- SYS_MSGGET = 225 // { int sys_msgget(key_t key, int msgflg); }
-- SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, \
-- SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \
-- SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, \
-+ SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
-+ SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
-+ SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, int shmflg); }
- SYS_SHMDT = 230 // { int sys_shmdt(const void *shmaddr); }
-- SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, \
-- SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, \
-+ SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, int inherit); }
-+ SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, u_int nfds, int timeout); }
- SYS_ISSETUGID = 253 // { int sys_issetugid(void); }
- SYS_LCHOWN = 254 // { int sys_lchown(const char *path, uid_t uid, gid_t gid); }
- SYS_GETSID = 255 // { pid_t sys_getsid(pid_t pid); }
- SYS_MSYNC = 256 // { int sys_msync(void *addr, size_t len, int flags); }
- SYS_PIPE = 263 // { int sys_pipe(int *fdp); }
- SYS_FHOPEN = 264 // { int sys_fhopen(const fhandle_t *fhp, int flags); }
-- SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, \
-- SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, \
-+ SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
-+ SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
- SYS_KQUEUE = 269 // { int sys_kqueue(void); }
- SYS_MLOCKALL = 271 // { int sys_mlockall(int flags); }
- SYS_MUNLOCKALL = 272 // { int sys_munlockall(void); }
-- SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, \
-- SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, \
-- SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, \
-- SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, \
-- SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, \
-+ SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
-+ SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, uid_t suid); }
-+ SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
-+ SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
-+ SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
- SYS_CLOSEFROM = 287 // { int sys_closefrom(int fd); }
-- SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, \
-+ SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, struct sigaltstack *oss); }
- SYS_SHMGET = 289 // { int sys_shmget(key_t key, size_t size, int shmflg); }
-- SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, \
-- SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, \
-- SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, \
-- SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, \
-- SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, \
-+ SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, size_t nsops); }
-+ SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, struct stat *sb); }
-+ SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, union semun *arg); }
-+ SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, struct shmid_ds *buf); }
-+ SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, struct msqid_ds *buf); }
- SYS_SCHED_YIELD = 298 // { int sys_sched_yield(void); }
- SYS_GETTHRID = 299 // { pid_t sys_getthrid(void); }
-- SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, \
-+ SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, int n); }
- SYS___THREXIT = 302 // { void sys___threxit(pid_t *notdead); }
-- SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, \
-+ SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, siginfo_t *info, const struct timespec *timeout); }
- SYS___GETCWD = 304 // { int sys___getcwd(char *buf, size_t len); }
-- SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, \
-+ SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, int64_t *oldfreq); }
- SYS_SETRTABLE = 310 // { int sys_setrtable(int rtableid); }
- SYS_GETRTABLE = 311 // { int sys_getrtable(void); }
-- SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, \
-- SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, \
-- SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, \
-- SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, \
-- SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, \
-- SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, \
-- SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, \
-- SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, \
-- SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, \
-- SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, \
-- SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, \
-- SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, \
-+ SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, int amode, int flag); }
-+ SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, mode_t mode, int flag); }
-+ SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, uid_t uid, gid_t gid, int flag); }
-+ SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, const char *path2, int flag); }
-+ SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, mode_t mode); }
-+ SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, mode_t mode); }
-+ SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, mode_t mode, dev_t dev); }
-+ SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, ... mode_t mode); }
-+ SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, char *buf, size_t count); }
-+ SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, int tofd, const char *to); }
-+ SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, const char *link); }
-+ SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, int flag); }
- SYS___SET_TCB = 329 // { void sys___set_tcb(void *tcb); }
- SYS___GET_TCB = 330 // { void *sys___get_tcb(void); }
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go
-similarity index 67%
-copy from vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
-copy to vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go
-index 32653e53..fe2b689b 100644
---- a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go
-@@ -1,7 +1,7 @@
--// mksysnum_openbsd.pl
--// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
-+// go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build arm,openbsd
-+// +build arm64,openbsd
-
- package unix
-
-@@ -9,35 +9,35 @@ const (
- SYS_EXIT = 1 // { void sys_exit(int rval); }
- SYS_FORK = 2 // { int sys_fork(void); }
- SYS_READ = 3 // { ssize_t sys_read(int fd, void *buf, size_t nbyte); }
-- SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, \
-- SYS_OPEN = 5 // { int sys_open(const char *path, \
-+ SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, size_t nbyte); }
-+ SYS_OPEN = 5 // { int sys_open(const char *path, int flags, ... mode_t mode); }
- SYS_CLOSE = 6 // { int sys_close(int fd); }
- SYS_GETENTROPY = 7 // { int sys_getentropy(void *buf, size_t nbyte); }
-- SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, \
-+ SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, size_t psize); }
- SYS_LINK = 9 // { int sys_link(const char *path, const char *link); }
- SYS_UNLINK = 10 // { int sys_unlink(const char *path); }
-- SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, \
-+ SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, int options, struct rusage *rusage); }
- SYS_CHDIR = 12 // { int sys_chdir(const char *path); }
- SYS_FCHDIR = 13 // { int sys_fchdir(int fd); }
-- SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, \
-+ SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, dev_t dev); }
- SYS_CHMOD = 15 // { int sys_chmod(const char *path, mode_t mode); }
-- SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, \
-+ SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, gid_t gid); }
- SYS_OBREAK = 17 // { int sys_obreak(char *nsize); } break
- SYS_GETDTABLECOUNT = 18 // { int sys_getdtablecount(void); }
-- SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, \
-+ SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, struct rusage *rusage); }
- SYS_GETPID = 20 // { pid_t sys_getpid(void); }
-- SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, \
-+ SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, int flags, void *data); }
- SYS_UNMOUNT = 22 // { int sys_unmount(const char *path, int flags); }
- SYS_SETUID = 23 // { int sys_setuid(uid_t uid); }
- SYS_GETUID = 24 // { uid_t sys_getuid(void); }
- SYS_GETEUID = 25 // { uid_t sys_geteuid(void); }
-- SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, \
-- SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, \
-- SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, \
-- SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, \
-- SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, \
-- SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, \
-- SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, \
-+ SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, int data); }
-+ SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, int flags); }
-+ SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, const struct msghdr *msg, int flags); }
-+ SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, int flags, struct sockaddr *from, socklen_t *fromlenaddr); }
-+ SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, socklen_t *anamelen); }
-+ SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, socklen_t *alen); }
-+ SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, socklen_t *alen); }
- SYS_ACCESS = 33 // { int sys_access(const char *path, int amode); }
- SYS_CHFLAGS = 34 // { int sys_chflags(const char *path, u_int flags); }
- SYS_FCHFLAGS = 35 // { int sys_fchflags(int fd, u_int flags); }
-@@ -46,77 +46,80 @@ const (
- SYS_GETPPID = 39 // { pid_t sys_getppid(void); }
- SYS_LSTAT = 40 // { int sys_lstat(const char *path, struct stat *ub); }
- SYS_DUP = 41 // { int sys_dup(int fd); }
-- SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, \
-+ SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, struct stat *buf, int flag); }
- SYS_GETEGID = 43 // { gid_t sys_getegid(void); }
-- SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, \
-- SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, \
-- SYS_SIGACTION = 46 // { int sys_sigaction(int signum, \
-+ SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, u_long offset, u_int scale); }
-+ SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, int facs, pid_t pid); }
-+ SYS_SIGACTION = 46 // { int sys_sigaction(int signum, const struct sigaction *nsa, struct sigaction *osa); }
- SYS_GETGID = 47 // { gid_t sys_getgid(void); }
- SYS_SIGPROCMASK = 48 // { int sys_sigprocmask(int how, sigset_t mask); }
-- SYS_GETLOGIN = 49 // { int sys_getlogin(char *namebuf, u_int namelen); }
- SYS_SETLOGIN = 50 // { int sys_setlogin(const char *namebuf); }
- SYS_ACCT = 51 // { int sys_acct(const char *path); }
- SYS_SIGPENDING = 52 // { int sys_sigpending(void); }
- SYS_FSTAT = 53 // { int sys_fstat(int fd, struct stat *sb); }
-- SYS_IOCTL = 54 // { int sys_ioctl(int fd, \
-+ SYS_IOCTL = 54 // { int sys_ioctl(int fd, u_long com, ... void *data); }
- SYS_REBOOT = 55 // { int sys_reboot(int opt); }
- SYS_REVOKE = 56 // { int sys_revoke(const char *path); }
-- SYS_SYMLINK = 57 // { int sys_symlink(const char *path, \
-- SYS_READLINK = 58 // { ssize_t sys_readlink(const char *path, \
-- SYS_EXECVE = 59 // { int sys_execve(const char *path, \
-+ SYS_SYMLINK = 57 // { int sys_symlink(const char *path, const char *link); }
-+ SYS_READLINK = 58 // { ssize_t sys_readlink(const char *path, char *buf, size_t count); }
-+ SYS_EXECVE = 59 // { int sys_execve(const char *path, char * const *argp, char * const *envp); }
- SYS_UMASK = 60 // { mode_t sys_umask(mode_t newmask); }
- SYS_CHROOT = 61 // { int sys_chroot(const char *path); }
-- SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, \
-- SYS_STATFS = 63 // { int sys_statfs(const char *path, \
-+ SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, int flags); }
-+ SYS_STATFS = 63 // { int sys_statfs(const char *path, struct statfs *buf); }
- SYS_FSTATFS = 64 // { int sys_fstatfs(int fd, struct statfs *buf); }
-- SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, \
-+ SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, struct statfs *buf); }
- SYS_VFORK = 66 // { int sys_vfork(void); }
-- SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, \
-- SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, \
-- SYS_SETITIMER = 69 // { int sys_setitimer(int which, \
-- SYS_GETITIMER = 70 // { int sys_getitimer(int which, \
-- SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, \
-- SYS_KEVENT = 72 // { int sys_kevent(int fd, \
-+ SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, struct timezone *tzp); }
-+ SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, const struct timezone *tzp); }
-+ SYS_SETITIMER = 69 // { int sys_setitimer(int which, const struct itimerval *itv, struct itimerval *oitv); }
-+ SYS_GETITIMER = 70 // { int sys_getitimer(int which, struct itimerval *itv); }
-+ SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
-+ SYS_KEVENT = 72 // { int sys_kevent(int fd, const struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
- SYS_MUNMAP = 73 // { int sys_munmap(void *addr, size_t len); }
-- SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, \
-- SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, \
-- SYS_UTIMES = 76 // { int sys_utimes(const char *path, \
-- SYS_FUTIMES = 77 // { int sys_futimes(int fd, \
-- SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, \
-- SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, \
-- SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, \
-+ SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, int prot); }
-+ SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, int behav); }
-+ SYS_UTIMES = 76 // { int sys_utimes(const char *path, const struct timeval *tptr); }
-+ SYS_FUTIMES = 77 // { int sys_futimes(int fd, const struct timeval *tptr); }
-+ SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, gid_t *gidset); }
-+ SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, const gid_t *gidset); }
- SYS_GETPGRP = 81 // { int sys_getpgrp(void); }
- SYS_SETPGID = 82 // { int sys_setpgid(pid_t pid, pid_t pgid); }
-- SYS_SENDSYSLOG = 83 // { int sys_sendsyslog(const void *buf, size_t nbyte); }
-- SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, \
-- SYS_FUTIMENS = 85 // { int sys_futimens(int fd, \
-- SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, \
-- SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, \
-- SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, \
-+ SYS_FUTEX = 83 // { int sys_futex(uint32_t *f, int op, int val, const struct timespec *timeout, uint32_t *g); }
-+ SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, const struct timespec *times, int flag); }
-+ SYS_FUTIMENS = 85 // { int sys_futimens(int fd, const struct timespec *times); }
-+ SYS_KBIND = 86 // { int sys_kbind(const struct __kbind *param, size_t psize, int64_t proc_cookie); }
-+ SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, struct timespec *tp); }
-+ SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, const struct timespec *tp); }
-+ SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, struct timespec *tp); }
- SYS_DUP2 = 90 // { int sys_dup2(int from, int to); }
-- SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, \
-+ SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
- SYS_FCNTL = 92 // { int sys_fcntl(int fd, int cmd, ... void *arg); }
-- SYS_ACCEPT4 = 93 // { int sys_accept4(int s, struct sockaddr *name, \
-- SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, \
-+ SYS_ACCEPT4 = 93 // { int sys_accept4(int s, struct sockaddr *name, socklen_t *anamelen, int flags); }
-+ SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, clockid_t clock_id, const struct timespec *tp, void *lock, const int *abort); }
- SYS_FSYNC = 95 // { int sys_fsync(int fd); }
- SYS_SETPRIORITY = 96 // { int sys_setpriority(int which, id_t who, int prio); }
- SYS_SOCKET = 97 // { int sys_socket(int domain, int type, int protocol); }
-- SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, \
-+ SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, socklen_t namelen); }
- SYS_GETDENTS = 99 // { int sys_getdents(int fd, void *buf, size_t buflen); }
- SYS_GETPRIORITY = 100 // { int sys_getpriority(int which, id_t who); }
- SYS_PIPE2 = 101 // { int sys_pipe2(int *fdp, int flags); }
- SYS_DUP3 = 102 // { int sys_dup3(int from, int to, int flags); }
- SYS_SIGRETURN = 103 // { int sys_sigreturn(struct sigcontext *sigcntxp); }
-- SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, \
-- SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, \
-+ SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, socklen_t namelen); }
-+ SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, const void *val, socklen_t valsize); }
- SYS_LISTEN = 106 // { int sys_listen(int s, int backlog); }
-- SYS_CHFLAGSAT = 107 // { int sys_chflagsat(int fd, const char *path, \
-- SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, \
-- SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, \
-+ SYS_CHFLAGSAT = 107 // { int sys_chflagsat(int fd, const char *path, u_int flags, int atflags); }
-+ SYS_PLEDGE = 108 // { int sys_pledge(const char *promises, const char *execpromises); }
-+ SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *mask); }
-+ SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *mask); }
- SYS_SIGSUSPEND = 111 // { int sys_sigsuspend(int mask); }
-- SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, \
-- SYS_READV = 120 // { ssize_t sys_readv(int fd, \
-- SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, \
-+ SYS_SENDSYSLOG = 112 // { int sys_sendsyslog(const char *buf, size_t nbyte, int flags); }
-+ SYS_UNVEIL = 114 // { int sys_unveil(const char *path, const char *permissions); }
-+ SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, void *val, socklen_t *avalsize); }
-+ SYS_THRKILL = 119 // { int sys_thrkill(pid_t tid, int signum, void *tcb); }
-+ SYS_READV = 120 // { ssize_t sys_readv(int fd, const struct iovec *iovp, int iovcnt); }
-+ SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, const struct iovec *iovp, int iovcnt); }
- SYS_KILL = 122 // { int sys_kill(int pid, int signum); }
- SYS_FCHOWN = 123 // { int sys_fchown(int fd, uid_t uid, gid_t gid); }
- SYS_FCHMOD = 124 // { int sys_fchmod(int fd, mode_t mode); }
-@@ -125,89 +128,90 @@ const (
- SYS_RENAME = 128 // { int sys_rename(const char *from, const char *to); }
- SYS_FLOCK = 131 // { int sys_flock(int fd, int how); }
- SYS_MKFIFO = 132 // { int sys_mkfifo(const char *path, mode_t mode); }
-- SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, \
-+ SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, size_t len, int flags, const struct sockaddr *to, socklen_t tolen); }
- SYS_SHUTDOWN = 134 // { int sys_shutdown(int s, int how); }
-- SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, \
-+ SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, int protocol, int *rsv); }
- SYS_MKDIR = 136 // { int sys_mkdir(const char *path, mode_t mode); }
- SYS_RMDIR = 137 // { int sys_rmdir(const char *path); }
-- SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, \
-+ SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, struct timeval *olddelta); }
-+ SYS_GETLOGIN_R = 141 // { int sys_getlogin_r(char *namebuf, u_int namelen); }
- SYS_SETSID = 147 // { int sys_setsid(void); }
-- SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, \
-+ SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, int uid, char *arg); }
- SYS_NFSSVC = 155 // { int sys_nfssvc(int flag, void *argp); }
- SYS_GETFH = 161 // { int sys_getfh(const char *fname, fhandle_t *fhp); }
- SYS_SYSARCH = 165 // { int sys_sysarch(int op, void *parms); }
-- SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, \
-- SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, \
-+ SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, size_t nbyte, int pad, off_t offset); }
-+ SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, size_t nbyte, int pad, off_t offset); }
- SYS_SETGID = 181 // { int sys_setgid(gid_t gid); }
- SYS_SETEGID = 182 // { int sys_setegid(gid_t egid); }
- SYS_SETEUID = 183 // { int sys_seteuid(uid_t euid); }
- SYS_PATHCONF = 191 // { long sys_pathconf(const char *path, int name); }
- SYS_FPATHCONF = 192 // { long sys_fpathconf(int fd, int name); }
- SYS_SWAPCTL = 193 // { int sys_swapctl(int cmd, const void *arg, int misc); }
-- SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, \
-- SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, \
-- SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, \
-- SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, \
-- SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, \
-+ SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, struct rlimit *rlp); }
-+ SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, const struct rlimit *rlp); }
-+ SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
-+ SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, int whence); }
-+ SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, off_t length); }
- SYS_FTRUNCATE = 201 // { int sys_ftruncate(int fd, int pad, off_t length); }
-- SYS___SYSCTL = 202 // { int sys___sysctl(const int *name, u_int namelen, \
-+ SYS_SYSCTL = 202 // { int sys_sysctl(const int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); }
- SYS_MLOCK = 203 // { int sys_mlock(const void *addr, size_t len); }
- SYS_MUNLOCK = 204 // { int sys_munlock(const void *addr, size_t len); }
- SYS_GETPGID = 207 // { pid_t sys_getpgid(pid_t pid); }
-- SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, \
-+ SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, size_t len); }
- SYS_SEMGET = 221 // { int sys_semget(key_t key, int nsems, int semflg); }
- SYS_MSGGET = 225 // { int sys_msgget(key_t key, int msgflg); }
-- SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, \
-- SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \
-- SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, \
-+ SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
-+ SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
-+ SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, int shmflg); }
- SYS_SHMDT = 230 // { int sys_shmdt(const void *shmaddr); }
-- SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, \
-- SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, \
-+ SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, int inherit); }
-+ SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, u_int nfds, int timeout); }
- SYS_ISSETUGID = 253 // { int sys_issetugid(void); }
- SYS_LCHOWN = 254 // { int sys_lchown(const char *path, uid_t uid, gid_t gid); }
- SYS_GETSID = 255 // { pid_t sys_getsid(pid_t pid); }
- SYS_MSYNC = 256 // { int sys_msync(void *addr, size_t len, int flags); }
- SYS_PIPE = 263 // { int sys_pipe(int *fdp); }
- SYS_FHOPEN = 264 // { int sys_fhopen(const fhandle_t *fhp, int flags); }
-- SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, \
-- SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, \
-+ SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
-+ SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
- SYS_KQUEUE = 269 // { int sys_kqueue(void); }
- SYS_MLOCKALL = 271 // { int sys_mlockall(int flags); }
- SYS_MUNLOCKALL = 272 // { int sys_munlockall(void); }
-- SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, \
-- SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, \
-- SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, \
-- SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, \
-- SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, \
-+ SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
-+ SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, uid_t suid); }
-+ SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
-+ SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
-+ SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
- SYS_CLOSEFROM = 287 // { int sys_closefrom(int fd); }
-- SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, \
-+ SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, struct sigaltstack *oss); }
- SYS_SHMGET = 289 // { int sys_shmget(key_t key, size_t size, int shmflg); }
-- SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, \
-- SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, \
-- SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, \
-- SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, \
-- SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, \
-+ SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, size_t nsops); }
-+ SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, struct stat *sb); }
-+ SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, union semun *arg); }
-+ SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, struct shmid_ds *buf); }
-+ SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, struct msqid_ds *buf); }
- SYS_SCHED_YIELD = 298 // { int sys_sched_yield(void); }
- SYS_GETTHRID = 299 // { pid_t sys_getthrid(void); }
-- SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, \
-+ SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, int n); }
- SYS___THREXIT = 302 // { void sys___threxit(pid_t *notdead); }
-- SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, \
-+ SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, siginfo_t *info, const struct timespec *timeout); }
- SYS___GETCWD = 304 // { int sys___getcwd(char *buf, size_t len); }
-- SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, \
-+ SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, int64_t *oldfreq); }
- SYS_SETRTABLE = 310 // { int sys_setrtable(int rtableid); }
- SYS_GETRTABLE = 311 // { int sys_getrtable(void); }
-- SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, \
-- SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, \
-- SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, \
-- SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, \
-- SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, \
-- SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, \
-- SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, \
-- SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, \
-- SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, \
-- SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, \
-- SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, \
-- SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, \
-+ SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, int amode, int flag); }
-+ SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, mode_t mode, int flag); }
-+ SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, uid_t uid, gid_t gid, int flag); }
-+ SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, const char *path2, int flag); }
-+ SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, mode_t mode); }
-+ SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, mode_t mode); }
-+ SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, mode_t mode, dev_t dev); }
-+ SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, ... mode_t mode); }
-+ SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, char *buf, size_t count); }
-+ SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, int tofd, const char *to); }
-+ SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, const char *link); }
-+ SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, int flag); }
- SYS___SET_TCB = 329 // { void sys___set_tcb(void *tcb); }
- SYS___GET_TCB = 330 // { void *sys___get_tcb(void); }
- )
-diff --git a/vendor/golang.org/x/sys/unix/zsysnum_solaris_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_solaris_amd64.go
-deleted file mode 100644
-index c7086598..00000000
---- a/vendor/golang.org/x/sys/unix/zsysnum_solaris_amd64.go
-+++ /dev/null
-@@ -1,13 +0,0 @@
--// Copyright 2014 The Go Authors. All rights reserved.
--// Use of this source code is governed by a BSD-style
--// license that can be found in the LICENSE file.
--
--// +build amd64,solaris
--
--package unix
--
--// TODO(aram): remove these before Go 1.3.
--const (
-- SYS_EXECVE = 59
-- SYS_FCNTL = 62
--)
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go
-new file mode 100644
-index 00000000..2c1f815e
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go
-@@ -0,0 +1,352 @@
-+// cgo -godefs types_aix.go | go run mkpost.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build ppc,aix
-+
-+package unix
-+
-+const (
-+ SizeofPtr = 0x4
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x4
-+ SizeofLongLong = 0x8
-+ PathMax = 0x3ff
-+)
-+
-+type (
-+ _C_short int16
-+ _C_int int32
-+ _C_long int32
-+ _C_long_long int64
-+)
-+
-+type off64 int64
-+type off int32
-+type Mode_t uint32
-+
-+type Timespec struct {
-+ Sec int32
-+ Nsec int32
-+}
-+
-+type Timeval struct {
-+ Sec int32
-+ Usec int32
-+}
-+
-+type Timeval32 struct {
-+ Sec int32
-+ Usec int32
-+}
-+
-+type Timex struct{}
-+
-+type Time_t int32
-+
-+type Tms struct{}
-+
-+type Utimbuf struct {
-+ Actime int32
-+ Modtime int32
-+}
-+
-+type Timezone struct {
-+ Minuteswest int32
-+ Dsttime int32
-+}
-+
-+type Rusage struct {
-+ Utime Timeval
-+ Stime Timeval
-+ Maxrss int32
-+ Ixrss int32
-+ Idrss int32
-+ Isrss int32
-+ Minflt int32
-+ Majflt int32
-+ Nswap int32
-+ Inblock int32
-+ Oublock int32
-+ Msgsnd int32
-+ Msgrcv int32
-+ Nsignals int32
-+ Nvcsw int32
-+ Nivcsw int32
-+}
-+
-+type Rlimit struct {
-+ Cur uint64
-+ Max uint64
-+}
-+
-+type Pid_t int32
-+
-+type _Gid_t uint32
-+
-+type dev_t uint32
-+
-+type Stat_t struct {
-+ Dev uint32
-+ Ino uint32
-+ Mode uint32
-+ Nlink int16
-+ Flag uint16
-+ Uid uint32
-+ Gid uint32
-+ Rdev uint32
-+ Size int32
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Blksize int32
-+ Blocks int32
-+ Vfstype int32
-+ Vfs uint32
-+ Type uint32
-+ Gen uint32
-+ Reserved [9]uint32
-+}
-+
-+type StatxTimestamp struct{}
-+
-+type Statx_t struct{}
-+
-+type Dirent struct {
-+ Offset uint32
-+ Ino uint32
-+ Reclen uint16
-+ Namlen uint16
-+ Name [256]uint8
-+}
-+
-+type RawSockaddrInet4 struct {
-+ Len uint8
-+ Family uint8
-+ Port uint16
-+ Addr [4]byte /* in_addr */
-+ Zero [8]uint8
-+}
-+
-+type RawSockaddrInet6 struct {
-+ Len uint8
-+ Family uint8
-+ Port uint16
-+ Flowinfo uint32
-+ Addr [16]byte /* in6_addr */
-+ Scope_id uint32
-+}
-+
-+type RawSockaddrUnix struct {
-+ Len uint8
-+ Family uint8
-+ Path [1023]uint8
-+}
-+
-+type RawSockaddrDatalink struct {
-+ Len uint8
-+ Family uint8
-+ Index uint16
-+ Type uint8
-+ Nlen uint8
-+ Alen uint8
-+ Slen uint8
-+ Data [120]uint8
-+}
-+
-+type RawSockaddr struct {
-+ Len uint8
-+ Family uint8
-+ Data [14]uint8
-+}
-+
-+type RawSockaddrAny struct {
-+ Addr RawSockaddr
-+ Pad [1012]uint8
-+}
-+
-+type _Socklen uint32
-+
-+type Cmsghdr struct {
-+ Len uint32
-+ Level int32
-+ Type int32
-+}
-+
-+type ICMPv6Filter struct {
-+ Filt [8]uint32
-+}
-+
-+type Iovec struct {
-+ Base *byte
-+ Len uint32
-+}
-+
-+type IPMreq struct {
-+ Multiaddr [4]byte /* in_addr */
-+ Interface [4]byte /* in_addr */
-+}
-+
-+type IPv6Mreq struct {
-+ Multiaddr [16]byte /* in6_addr */
-+ Interface uint32
-+}
-+
-+type IPv6MTUInfo struct {
-+ Addr RawSockaddrInet6
-+ Mtu uint32
-+}
-+
-+type Linger struct {
-+ Onoff int32
-+ Linger int32
-+}
-+
-+type Msghdr struct {
-+ Name *byte
-+ Namelen uint32
-+ Iov *Iovec
-+ Iovlen int32
-+ Control *byte
-+ Controllen uint32
-+ Flags int32
-+}
-+
-+const (
-+ SizeofSockaddrInet4 = 0x10
-+ SizeofSockaddrInet6 = 0x1c
-+ SizeofSockaddrAny = 0x404
-+ SizeofSockaddrUnix = 0x401
-+ SizeofSockaddrDatalink = 0x80
-+ SizeofLinger = 0x8
-+ SizeofIPMreq = 0x8
-+ SizeofIPv6Mreq = 0x14
-+ SizeofIPv6MTUInfo = 0x20
-+ SizeofMsghdr = 0x1c
-+ SizeofCmsghdr = 0xc
-+ SizeofICMPv6Filter = 0x20
-+)
-+
-+const (
-+ SizeofIfMsghdr = 0x10
-+)
-+
-+type IfMsgHdr struct {
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ Addrlen uint8
-+ _ [1]byte
-+}
-+
-+type FdSet struct {
-+ Bits [2048]int32
-+}
-+
-+type Utsname struct {
-+ Sysname [32]byte
-+ Nodename [32]byte
-+ Release [32]byte
-+ Version [32]byte
-+ Machine [32]byte
-+}
-+
-+type Ustat_t struct{}
-+
-+type Sigset_t struct {
-+ Losigs uint32
-+ Hisigs uint32
-+}
-+
-+const (
-+ AT_FDCWD = -0x2
-+ AT_REMOVEDIR = 0x1
-+ AT_SYMLINK_NOFOLLOW = 0x1
-+)
-+
-+type Termios struct {
-+ Iflag uint32
-+ Oflag uint32
-+ Cflag uint32
-+ Lflag uint32
-+ Cc [16]uint8
-+}
-+
-+type Termio struct {
-+ Iflag uint16
-+ Oflag uint16
-+ Cflag uint16
-+ Lflag uint16
-+ Line uint8
-+ Cc [8]uint8
-+ _ [1]byte
-+}
-+
-+type Winsize struct {
-+ Row uint16
-+ Col uint16
-+ Xpixel uint16
-+ Ypixel uint16
-+}
-+
-+type PollFd struct {
-+ Fd int32
-+ Events uint16
-+ Revents uint16
-+}
-+
-+const (
-+ POLLERR = 0x4000
-+ POLLHUP = 0x2000
-+ POLLIN = 0x1
-+ POLLNVAL = 0x8000
-+ POLLOUT = 0x2
-+ POLLPRI = 0x4
-+ POLLRDBAND = 0x20
-+ POLLRDNORM = 0x10
-+ POLLWRBAND = 0x40
-+ POLLWRNORM = 0x2
-+)
-+
-+type Flock_t struct {
-+ Type int16
-+ Whence int16
-+ Sysid uint32
-+ Pid int32
-+ Vfs int32
-+ Start int64
-+ Len int64
-+}
-+
-+type Fsid_t struct {
-+ Val [2]uint32
-+}
-+type Fsid64_t struct {
-+ Val [2]uint64
-+}
-+
-+type Statfs_t struct {
-+ Version int32
-+ Type int32
-+ Bsize uint32
-+ Blocks uint32
-+ Bfree uint32
-+ Bavail uint32
-+ Files uint32
-+ Ffree uint32
-+ Fsid Fsid_t
-+ Vfstype int32
-+ Fsize uint32
-+ Vfsnumber int32
-+ Vfsoff int32
-+ Vfslen int32
-+ Vfsvers int32
-+ Fname [32]uint8
-+ Fpack [32]uint8
-+ Name_max int32
-+}
-+
-+const RNDGETENTCNT = 0x80045200
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go
-new file mode 100644
-index 00000000..b4a069ec
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go
-@@ -0,0 +1,356 @@
-+// cgo -godefs types_aix.go | go run mkpost.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build ppc64,aix
-+
-+package unix
-+
-+const (
-+ SizeofPtr = 0x8
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x8
-+ SizeofLongLong = 0x8
-+ PathMax = 0x3ff
-+)
-+
-+type (
-+ _C_short int16
-+ _C_int int32
-+ _C_long int64
-+ _C_long_long int64
-+)
-+
-+type off64 int64
-+type off int64
-+type Mode_t uint32
-+
-+type Timespec struct {
-+ Sec int64
-+ Nsec int64
-+}
-+
-+type Timeval struct {
-+ Sec int64
-+ Usec int32
-+ _ [4]byte
-+}
-+
-+type Timeval32 struct {
-+ Sec int32
-+ Usec int32
-+}
-+
-+type Timex struct{}
-+
-+type Time_t int64
-+
-+type Tms struct{}
-+
-+type Utimbuf struct {
-+ Actime int64
-+ Modtime int64
-+}
-+
-+type Timezone struct {
-+ Minuteswest int32
-+ Dsttime int32
-+}
-+
-+type Rusage struct {
-+ Utime Timeval
-+ Stime Timeval
-+ Maxrss int64
-+ Ixrss int64
-+ Idrss int64
-+ Isrss int64
-+ Minflt int64
-+ Majflt int64
-+ Nswap int64
-+ Inblock int64
-+ Oublock int64
-+ Msgsnd int64
-+ Msgrcv int64
-+ Nsignals int64
-+ Nvcsw int64
-+ Nivcsw int64
-+}
-+
-+type Rlimit struct {
-+ Cur uint64
-+ Max uint64
-+}
-+
-+type Pid_t int32
-+
-+type _Gid_t uint32
-+
-+type dev_t uint64
-+
-+type Stat_t struct {
-+ Dev uint64
-+ Ino uint64
-+ Mode uint32
-+ Nlink int16
-+ Flag uint16
-+ Uid uint32
-+ Gid uint32
-+ Rdev uint64
-+ Ssize int32
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Blksize int64
-+ Blocks int64
-+ Vfstype int32
-+ Vfs uint32
-+ Type uint32
-+ Gen uint32
-+ Reserved [9]uint32
-+ Padto_ll uint32
-+ Size int64
-+}
-+
-+type StatxTimestamp struct{}
-+
-+type Statx_t struct{}
-+
-+type Dirent struct {
-+ Offset uint64
-+ Ino uint64
-+ Reclen uint16
-+ Namlen uint16
-+ Name [256]uint8
-+ _ [4]byte
-+}
-+
-+type RawSockaddrInet4 struct {
-+ Len uint8
-+ Family uint8
-+ Port uint16
-+ Addr [4]byte /* in_addr */
-+ Zero [8]uint8
-+}
-+
-+type RawSockaddrInet6 struct {
-+ Len uint8
-+ Family uint8
-+ Port uint16
-+ Flowinfo uint32
-+ Addr [16]byte /* in6_addr */
-+ Scope_id uint32
-+}
-+
-+type RawSockaddrUnix struct {
-+ Len uint8
-+ Family uint8
-+ Path [1023]uint8
-+}
-+
-+type RawSockaddrDatalink struct {
-+ Len uint8
-+ Family uint8
-+ Index uint16
-+ Type uint8
-+ Nlen uint8
-+ Alen uint8
-+ Slen uint8
-+ Data [120]uint8
-+}
-+
-+type RawSockaddr struct {
-+ Len uint8
-+ Family uint8
-+ Data [14]uint8
-+}
-+
-+type RawSockaddrAny struct {
-+ Addr RawSockaddr
-+ Pad [1012]uint8
-+}
-+
-+type _Socklen uint32
-+
-+type Cmsghdr struct {
-+ Len uint32
-+ Level int32
-+ Type int32
-+}
-+
-+type ICMPv6Filter struct {
-+ Filt [8]uint32
-+}
-+
-+type Iovec struct {
-+ Base *byte
-+ Len uint64
-+}
-+
-+type IPMreq struct {
-+ Multiaddr [4]byte /* in_addr */
-+ Interface [4]byte /* in_addr */
-+}
-+
-+type IPv6Mreq struct {
-+ Multiaddr [16]byte /* in6_addr */
-+ Interface uint32
-+}
-+
-+type IPv6MTUInfo struct {
-+ Addr RawSockaddrInet6
-+ Mtu uint32
-+}
-+
-+type Linger struct {
-+ Onoff int32
-+ Linger int32
-+}
-+
-+type Msghdr struct {
-+ Name *byte
-+ Namelen uint32
-+ Iov *Iovec
-+ Iovlen int32
-+ Control *byte
-+ Controllen uint32
-+ Flags int32
-+}
-+
-+const (
-+ SizeofSockaddrInet4 = 0x10
-+ SizeofSockaddrInet6 = 0x1c
-+ SizeofSockaddrAny = 0x404
-+ SizeofSockaddrUnix = 0x401
-+ SizeofSockaddrDatalink = 0x80
-+ SizeofLinger = 0x8
-+ SizeofIPMreq = 0x8
-+ SizeofIPv6Mreq = 0x14
-+ SizeofIPv6MTUInfo = 0x20
-+ SizeofMsghdr = 0x30
-+ SizeofCmsghdr = 0xc
-+ SizeofICMPv6Filter = 0x20
-+)
-+
-+const (
-+ SizeofIfMsghdr = 0x10
-+)
-+
-+type IfMsgHdr struct {
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ Addrlen uint8
-+ _ [1]byte
-+}
-+
-+type FdSet struct {
-+ Bits [1024]int64
-+}
-+
-+type Utsname struct {
-+ Sysname [32]byte
-+ Nodename [32]byte
-+ Release [32]byte
-+ Version [32]byte
-+ Machine [32]byte
-+}
-+
-+type Ustat_t struct{}
-+
-+type Sigset_t struct {
-+ Set [4]uint64
-+}
-+
-+const (
-+ AT_FDCWD = -0x2
-+ AT_REMOVEDIR = 0x1
-+ AT_SYMLINK_NOFOLLOW = 0x1
-+)
-+
-+type Termios struct {
-+ Iflag uint32
-+ Oflag uint32
-+ Cflag uint32
-+ Lflag uint32
-+ Cc [16]uint8
-+}
-+
-+type Termio struct {
-+ Iflag uint16
-+ Oflag uint16
-+ Cflag uint16
-+ Lflag uint16
-+ Line uint8
-+ Cc [8]uint8
-+ _ [1]byte
-+}
-+
-+type Winsize struct {
-+ Row uint16
-+ Col uint16
-+ Xpixel uint16
-+ Ypixel uint16
-+}
-+
-+type PollFd struct {
-+ Fd int32
-+ Events uint16
-+ Revents uint16
-+}
-+
-+const (
-+ POLLERR = 0x4000
-+ POLLHUP = 0x2000
-+ POLLIN = 0x1
-+ POLLNVAL = 0x8000
-+ POLLOUT = 0x2
-+ POLLPRI = 0x4
-+ POLLRDBAND = 0x20
-+ POLLRDNORM = 0x10
-+ POLLWRBAND = 0x40
-+ POLLWRNORM = 0x2
-+)
-+
-+type Flock_t struct {
-+ Type int16
-+ Whence int16
-+ Sysid uint32
-+ Pid int32
-+ Vfs int32
-+ Start int64
-+ Len int64
-+}
-+
-+type Fsid_t struct {
-+ Val [2]uint32
-+}
-+type Fsid64_t struct {
-+ Val [2]uint64
-+}
-+
-+type Statfs_t struct {
-+ Version int32
-+ Type int32
-+ Bsize uint64
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Files uint64
-+ Ffree uint64
-+ Fsid Fsid64_t
-+ Vfstype int32
-+ Fsize uint64
-+ Vfsnumber int32
-+ Vfsoff int32
-+ Vfslen int32
-+ Vfsvers int32
-+ Fname [32]uint8
-+ Fpack [32]uint8
-+ Name_max int32
-+ _ [4]byte
-+}
-+
-+const RNDGETENTCNT = 0x80045200
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go
-index e61d78a5..9f47b87c 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go
-@@ -6,11 +6,11 @@
- package unix
-
- const (
-- sizeofPtr = 0x4
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x4
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x4
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x4
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -59,24 +59,24 @@ type Rlimit struct {
- type _Gid_t uint32
-
- type Stat_t struct {
-- Dev int32
-- Mode uint16
-- Nlink uint16
-- Ino uint64
-- Uid uint32
-- Gid uint32
-- Rdev int32
-- Atimespec Timespec
-- Mtimespec Timespec
-- Ctimespec Timespec
-- Birthtimespec Timespec
-- Size int64
-- Blocks int64
-- Blksize int32
-- Flags uint32
-- Gen uint32
-- Lspare int32
-- Qspare [2]int64
-+ Dev int32
-+ Mode uint16
-+ Nlink uint16
-+ Ino uint64
-+ Uid uint32
-+ Gid uint32
-+ Rdev int32
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Btim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint32
-+ Lspare int32
-+ Qspare [2]int64
- }
-
- type Statfs_t struct {
-@@ -136,13 +136,13 @@ type Fsid struct {
- }
-
- type Dirent struct {
-- Ino uint64
-- Seekoff uint64
-- Reclen uint16
-- Namlen uint16
-- Type uint8
-- Name [1024]int8
-- Pad_cgo_0 [3]byte
-+ Ino uint64
-+ Seekoff uint64
-+ Reclen uint16
-+ Namlen uint16
-+ Type uint8
-+ Name [1024]int8
-+ _ [3]byte
- }
-
- type RawSockaddrInet4 struct {
-@@ -295,14 +295,14 @@ const (
- )
-
- type IfMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data IfData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Data IfData
- }
-
- type IfData struct {
-@@ -338,51 +338,51 @@ type IfData struct {
- }
-
- type IfaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Metric int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Metric int32
- }
-
- type IfmaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
- }
-
- type IfmaMsghdr2 struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Refcount int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Refcount int32
- }
-
- type RtMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Flags int32
-- Addrs int32
-- Pid int32
-- Seq int32
-- Errno int32
-- Use int32
-- Inits uint32
-- Rmx RtMetrics
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Index uint16
-+ _ [2]byte
-+ Flags int32
-+ Addrs int32
-+ Pid int32
-+ Seq int32
-+ Errno int32
-+ Use int32
-+ Inits uint32
-+ Rmx RtMetrics
- }
-
- type RtMetrics struct {
-@@ -430,11 +430,11 @@ type BpfInsn struct {
- }
-
- type BpfHdr struct {
-- Tstamp Timeval
-- Caplen uint32
-- Datalen uint32
-- Hdrlen uint16
-- Pad_cgo_0 [2]byte
-+ Tstamp Timeval
-+ Caplen uint32
-+ Datalen uint32
-+ Hdrlen uint16
-+ _ [2]byte
- }
-
- type Termios struct {
-@@ -460,3 +460,40 @@ const (
- AT_SYMLINK_FOLLOW = 0x40
- AT_SYMLINK_NOFOLLOW = 0x20
- )
-+
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Tickadj int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
-index 2619155f..966798a8 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
-@@ -6,11 +6,11 @@
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x8
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x8
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -26,9 +26,9 @@ type Timespec struct {
- }
-
- type Timeval struct {
-- Sec int64
-- Usec int32
-- Pad_cgo_0 [4]byte
-+ Sec int64
-+ Usec int32
-+ _ [4]byte
- }
-
- type Timeval32 struct {
-@@ -63,25 +63,25 @@ type Rlimit struct {
- type _Gid_t uint32
-
- type Stat_t struct {
-- Dev int32
-- Mode uint16
-- Nlink uint16
-- Ino uint64
-- Uid uint32
-- Gid uint32
-- Rdev int32
-- Pad_cgo_0 [4]byte
-- Atimespec Timespec
-- Mtimespec Timespec
-- Ctimespec Timespec
-- Birthtimespec Timespec
-- Size int64
-- Blocks int64
-- Blksize int32
-- Flags uint32
-- Gen uint32
-- Lspare int32
-- Qspare [2]int64
-+ Dev int32
-+ Mode uint16
-+ Nlink uint16
-+ Ino uint64
-+ Uid uint32
-+ Gid uint32
-+ Rdev int32
-+ _ [4]byte
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Btim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint32
-+ Lspare int32
-+ Qspare [2]int64
- }
-
- type Statfs_t struct {
-@@ -120,9 +120,9 @@ type Fstore_t struct {
- }
-
- type Radvisory_t struct {
-- Offset int64
-- Count int32
-- Pad_cgo_0 [4]byte
-+ Offset int64
-+ Count int32
-+ _ [4]byte
- }
-
- type Fbootstraptransfer_t struct {
-@@ -132,9 +132,9 @@ type Fbootstraptransfer_t struct {
- }
-
- type Log2phys_t struct {
-- Flags uint32
-- Pad_cgo_0 [8]byte
-- Pad_cgo_1 [8]byte
-+ Flags uint32
-+ _ [8]byte
-+ _ [8]byte
- }
-
- type Fsid struct {
-@@ -142,13 +142,13 @@ type Fsid struct {
- }
-
- type Dirent struct {
-- Ino uint64
-- Seekoff uint64
-- Reclen uint16
-- Namlen uint16
-- Type uint8
-- Name [1024]int8
-- Pad_cgo_0 [3]byte
-+ Ino uint64
-+ Seekoff uint64
-+ Reclen uint16
-+ Namlen uint16
-+ Type uint8
-+ Name [1024]int8
-+ _ [3]byte
- }
-
- type RawSockaddrInet4 struct {
-@@ -221,10 +221,10 @@ type IPv6Mreq struct {
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
-+ _ [4]byte
- Iov *Iovec
- Iovlen int32
-- Pad_cgo_1 [4]byte
-+ _ [4]byte
- Control *byte
- Controllen uint32
- Flags int32
-@@ -303,14 +303,14 @@ const (
- )
-
- type IfMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data IfData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Data IfData
- }
-
- type IfData struct {
-@@ -346,51 +346,51 @@ type IfData struct {
- }
-
- type IfaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Metric int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Metric int32
- }
-
- type IfmaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
- }
-
- type IfmaMsghdr2 struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Refcount int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Refcount int32
- }
-
- type RtMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Flags int32
-- Addrs int32
-- Pid int32
-- Seq int32
-- Errno int32
-- Use int32
-- Inits uint32
-- Rmx RtMetrics
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Index uint16
-+ _ [2]byte
-+ Flags int32
-+ Addrs int32
-+ Pid int32
-+ Seq int32
-+ Errno int32
-+ Use int32
-+ Inits uint32
-+ Rmx RtMetrics
- }
-
- type RtMetrics struct {
-@@ -426,9 +426,9 @@ type BpfStat struct {
- }
-
- type BpfProgram struct {
-- Len uint32
-- Pad_cgo_0 [4]byte
-- Insns *BpfInsn
-+ Len uint32
-+ _ [4]byte
-+ Insns *BpfInsn
- }
-
- type BpfInsn struct {
-@@ -439,22 +439,22 @@ type BpfInsn struct {
- }
-
- type BpfHdr struct {
-- Tstamp Timeval32
-- Caplen uint32
-- Datalen uint32
-- Hdrlen uint16
-- Pad_cgo_0 [2]byte
-+ Tstamp Timeval32
-+ Caplen uint32
-+ Datalen uint32
-+ Hdrlen uint16
-+ _ [2]byte
- }
-
- type Termios struct {
-- Iflag uint64
-- Oflag uint64
-- Cflag uint64
-- Lflag uint64
-- Cc [20]uint8
-- Pad_cgo_0 [4]byte
-- Ispeed uint64
-- Ospeed uint64
-+ Iflag uint64
-+ Oflag uint64
-+ Cflag uint64
-+ Lflag uint64
-+ Cc [20]uint8
-+ _ [4]byte
-+ Ispeed uint64
-+ Ospeed uint64
- }
-
- type Winsize struct {
-@@ -470,3 +470,40 @@ const (
- AT_SYMLINK_FOLLOW = 0x40
- AT_SYMLINK_NOFOLLOW = 0x20
- )
-+
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Tickadj int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go
-index 4dca0d4d..4fe4c9cd 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go
-@@ -7,11 +7,11 @@
- package unix
-
- const (
-- sizeofPtr = 0x4
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x4
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x4
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x4
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -60,24 +60,24 @@ type Rlimit struct {
- type _Gid_t uint32
-
- type Stat_t struct {
-- Dev int32
-- Mode uint16
-- Nlink uint16
-- Ino uint64
-- Uid uint32
-- Gid uint32
-- Rdev int32
-- Atimespec Timespec
-- Mtimespec Timespec
-- Ctimespec Timespec
-- Birthtimespec Timespec
-- Size int64
-- Blocks int64
-- Blksize int32
-- Flags uint32
-- Gen uint32
-- Lspare int32
-- Qspare [2]int64
-+ Dev int32
-+ Mode uint16
-+ Nlink uint16
-+ Ino uint64
-+ Uid uint32
-+ Gid uint32
-+ Rdev int32
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Btim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint32
-+ Lspare int32
-+ Qspare [2]int64
- }
-
- type Statfs_t struct {
-@@ -137,13 +137,13 @@ type Fsid struct {
- }
-
- type Dirent struct {
-- Ino uint64
-- Seekoff uint64
-- Reclen uint16
-- Namlen uint16
-- Type uint8
-- Name [1024]int8
-- Pad_cgo_0 [3]byte
-+ Ino uint64
-+ Seekoff uint64
-+ Reclen uint16
-+ Namlen uint16
-+ Type uint8
-+ Name [1024]int8
-+ _ [3]byte
- }
-
- type RawSockaddrInet4 struct {
-@@ -296,14 +296,14 @@ const (
- )
-
- type IfMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data IfData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Data IfData
- }
-
- type IfData struct {
-@@ -339,51 +339,51 @@ type IfData struct {
- }
-
- type IfaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Metric int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Metric int32
- }
-
- type IfmaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
- }
-
- type IfmaMsghdr2 struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Refcount int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Refcount int32
- }
-
- type RtMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Flags int32
-- Addrs int32
-- Pid int32
-- Seq int32
-- Errno int32
-- Use int32
-- Inits uint32
-- Rmx RtMetrics
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Index uint16
-+ _ [2]byte
-+ Flags int32
-+ Addrs int32
-+ Pid int32
-+ Seq int32
-+ Errno int32
-+ Use int32
-+ Inits uint32
-+ Rmx RtMetrics
- }
-
- type RtMetrics struct {
-@@ -431,11 +431,11 @@ type BpfInsn struct {
- }
-
- type BpfHdr struct {
-- Tstamp Timeval
-- Caplen uint32
-- Datalen uint32
-- Hdrlen uint16
-- Pad_cgo_0 [2]byte
-+ Tstamp Timeval
-+ Caplen uint32
-+ Datalen uint32
-+ Hdrlen uint16
-+ _ [2]byte
- }
-
- type Termios struct {
-@@ -461,3 +461,40 @@ const (
- AT_SYMLINK_FOLLOW = 0x40
- AT_SYMLINK_NOFOLLOW = 0x20
- )
-+
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Tickadj int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
-index f2881fd1..21999e4b 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
-@@ -1,15 +1,16 @@
-+// cgo -godefs types_darwin.go | go run mkpost.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
- // +build arm64,darwin
--// Created by cgo -godefs - DO NOT EDIT
--// cgo -godefs types_darwin.go
-
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x8
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x8
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -25,9 +26,9 @@ type Timespec struct {
- }
-
- type Timeval struct {
-- Sec int64
-- Usec int32
-- Pad_cgo_0 [4]byte
-+ Sec int64
-+ Usec int32
-+ _ [4]byte
- }
-
- type Timeval32 struct {
-@@ -62,25 +63,25 @@ type Rlimit struct {
- type _Gid_t uint32
-
- type Stat_t struct {
-- Dev int32
-- Mode uint16
-- Nlink uint16
-- Ino uint64
-- Uid uint32
-- Gid uint32
-- Rdev int32
-- Pad_cgo_0 [4]byte
-- Atimespec Timespec
-- Mtimespec Timespec
-- Ctimespec Timespec
-- Birthtimespec Timespec
-- Size int64
-- Blocks int64
-- Blksize int32
-- Flags uint32
-- Gen uint32
-- Lspare int32
-- Qspare [2]int64
-+ Dev int32
-+ Mode uint16
-+ Nlink uint16
-+ Ino uint64
-+ Uid uint32
-+ Gid uint32
-+ Rdev int32
-+ _ [4]byte
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Btim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint32
-+ Lspare int32
-+ Qspare [2]int64
- }
-
- type Statfs_t struct {
-@@ -119,9 +120,9 @@ type Fstore_t struct {
- }
-
- type Radvisory_t struct {
-- Offset int64
-- Count int32
-- Pad_cgo_0 [4]byte
-+ Offset int64
-+ Count int32
-+ _ [4]byte
- }
-
- type Fbootstraptransfer_t struct {
-@@ -131,9 +132,9 @@ type Fbootstraptransfer_t struct {
- }
-
- type Log2phys_t struct {
-- Flags uint32
-- Pad_cgo_0 [8]byte
-- Pad_cgo_1 [8]byte
-+ Flags uint32
-+ _ [8]byte
-+ _ [8]byte
- }
-
- type Fsid struct {
-@@ -141,13 +142,13 @@ type Fsid struct {
- }
-
- type Dirent struct {
-- Ino uint64
-- Seekoff uint64
-- Reclen uint16
-- Namlen uint16
-- Type uint8
-- Name [1024]int8
-- Pad_cgo_0 [3]byte
-+ Ino uint64
-+ Seekoff uint64
-+ Reclen uint16
-+ Namlen uint16
-+ Type uint8
-+ Name [1024]int8
-+ _ [3]byte
- }
-
- type RawSockaddrInet4 struct {
-@@ -220,10 +221,10 @@ type IPv6Mreq struct {
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
-+ _ [4]byte
- Iov *Iovec
- Iovlen int32
-- Pad_cgo_1 [4]byte
-+ _ [4]byte
- Control *byte
- Controllen uint32
- Flags int32
-@@ -302,14 +303,14 @@ const (
- )
-
- type IfMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data IfData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Data IfData
- }
-
- type IfData struct {
-@@ -345,51 +346,51 @@ type IfData struct {
- }
-
- type IfaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Metric int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Metric int32
- }
-
- type IfmaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
- }
-
- type IfmaMsghdr2 struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Refcount int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Refcount int32
- }
-
- type RtMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Flags int32
-- Addrs int32
-- Pid int32
-- Seq int32
-- Errno int32
-- Use int32
-- Inits uint32
-- Rmx RtMetrics
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Index uint16
-+ _ [2]byte
-+ Flags int32
-+ Addrs int32
-+ Pid int32
-+ Seq int32
-+ Errno int32
-+ Use int32
-+ Inits uint32
-+ Rmx RtMetrics
- }
-
- type RtMetrics struct {
-@@ -425,9 +426,9 @@ type BpfStat struct {
- }
-
- type BpfProgram struct {
-- Len uint32
-- Pad_cgo_0 [4]byte
-- Insns *BpfInsn
-+ Len uint32
-+ _ [4]byte
-+ Insns *BpfInsn
- }
-
- type BpfInsn struct {
-@@ -438,22 +439,22 @@ type BpfInsn struct {
- }
-
- type BpfHdr struct {
-- Tstamp Timeval32
-- Caplen uint32
-- Datalen uint32
-- Hdrlen uint16
-- Pad_cgo_0 [2]byte
-+ Tstamp Timeval32
-+ Caplen uint32
-+ Datalen uint32
-+ Hdrlen uint16
-+ _ [2]byte
- }
-
- type Termios struct {
-- Iflag uint64
-- Oflag uint64
-- Cflag uint64
-- Lflag uint64
-- Cc [20]uint8
-- Pad_cgo_0 [4]byte
-- Ispeed uint64
-- Ospeed uint64
-+ Iflag uint64
-+ Oflag uint64
-+ Cflag uint64
-+ Lflag uint64
-+ Cc [20]uint8
-+ _ [4]byte
-+ Ispeed uint64
-+ Ospeed uint64
- }
-
- type Winsize struct {
-@@ -469,3 +470,40 @@ const (
- AT_SYMLINK_FOLLOW = 0x40
- AT_SYMLINK_NOFOLLOW = 0x20
- )
-+
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Tickadj int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
-index 67c6bf88..71ea1d6d 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
-@@ -6,11 +6,11 @@
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x8
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x8
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -56,43 +56,26 @@ type Rlimit struct {
-
- type _Gid_t uint32
-
--const (
-- S_IFMT = 0xf000
-- S_IFIFO = 0x1000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFBLK = 0x6000
-- S_IFREG = 0x8000
-- S_IFLNK = 0xa000
-- S_IFSOCK = 0xc000
-- S_ISUID = 0x800
-- S_ISGID = 0x400
-- S_ISVTX = 0x200
-- S_IRUSR = 0x100
-- S_IWUSR = 0x80
-- S_IXUSR = 0x40
--)
--
- type Stat_t struct {
-- Ino uint64
-- Nlink uint32
-- Dev uint32
-- Mode uint16
-- Padding1 uint16
-- Uid uint32
-- Gid uint32
-- Rdev uint32
-- Atim Timespec
-- Mtim Timespec
-- Ctim Timespec
-- Size int64
-- Blocks int64
-- Blksize uint32
-- Flags uint32
-- Gen uint32
-- Lspare int32
-- Qspare1 int64
-- Qspare2 int64
-+ Ino uint64
-+ Nlink uint32
-+ Dev uint32
-+ Mode uint16
-+ _1 uint16
-+ Uid uint32
-+ Gid uint32
-+ Rdev uint32
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize uint32
-+ Flags uint32
-+ Gen uint32
-+ Lspare int32
-+ Qspare1 int64
-+ Qspare2 int64
- }
-
- type Statfs_t struct {
-@@ -108,7 +91,7 @@ type Statfs_t struct {
- Owner uint32
- Type int32
- Flags int32
-- Pad_cgo_0 [4]byte
-+ _ [4]byte
- Syncwrites int64
- Asyncwrites int64
- Fstypename [16]int8
-@@ -118,7 +101,7 @@ type Statfs_t struct {
- Spares1 int16
- Mntfromname [80]int8
- Spares2 int16
-- Pad_cgo_1 [4]byte
-+ _ [4]byte
- Spare [2]int64
- }
-
-@@ -143,6 +126,10 @@ type Fsid struct {
- Val [2]int32
- }
-
-+const (
-+ PathMax = 0x400
-+)
-+
- type RawSockaddrInet4 struct {
- Len uint8
- Family uint8
-@@ -215,10 +202,10 @@ type IPv6Mreq struct {
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
-+ _ [4]byte
- Iov *Iovec
- Iovlen int32
-- Pad_cgo_1 [4]byte
-+ _ [4]byte
- Control *byte
- Controllen uint32
- Flags int32
-@@ -290,14 +277,14 @@ const (
- )
-
- type IfMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data IfData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Data IfData
- }
-
- type IfData struct {
-@@ -307,7 +294,7 @@ type IfData struct {
- Hdrlen uint8
- Recvquota uint8
- Xmitquota uint8
-- Pad_cgo_0 [2]byte
-+ _ [2]byte
- Mtu uint64
- Metric uint64
- Link_state uint64
-@@ -329,24 +316,24 @@ type IfData struct {
- }
-
- type IfaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Metric int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Metric int32
- }
-
- type IfmaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
- }
-
- type IfAnnounceMsghdr struct {
-@@ -359,19 +346,19 @@ type IfAnnounceMsghdr struct {
- }
-
- type RtMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Flags int32
-- Addrs int32
-- Pid int32
-- Seq int32
-- Errno int32
-- Use int32
-- Inits uint64
-- Rmx RtMetrics
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Index uint16
-+ _ [2]byte
-+ Flags int32
-+ Addrs int32
-+ Pid int32
-+ Seq int32
-+ Errno int32
-+ Use int32
-+ Inits uint64
-+ Rmx RtMetrics
- }
-
- type RtMetrics struct {
-@@ -387,7 +374,7 @@ type RtMetrics struct {
- Hopcount uint64
- Mssopt uint16
- Pad uint16
-- Pad_cgo_0 [4]byte
-+ _ [4]byte
- Msl uint64
- Iwmaxsegs uint64
- Iwcapsegs uint64
-@@ -412,9 +399,9 @@ type BpfStat struct {
- }
-
- type BpfProgram struct {
-- Len uint32
-- Pad_cgo_0 [4]byte
-- Insns *BpfInsn
-+ Len uint32
-+ _ [4]byte
-+ Insns *BpfInsn
- }
-
- type BpfInsn struct {
-@@ -425,11 +412,11 @@ type BpfInsn struct {
- }
-
- type BpfHdr struct {
-- Tstamp Timeval
-- Caplen uint32
-- Datalen uint32
-- Hdrlen uint16
-- Pad_cgo_0 [6]byte
-+ Tstamp Timeval
-+ Caplen uint32
-+ Datalen uint32
-+ Hdrlen uint16
-+ _ [6]byte
- }
-
- type Termios struct {
-@@ -442,7 +429,51 @@ type Termios struct {
- Ospeed uint32
- }
-
-+type Winsize struct {
-+ Row uint16
-+ Col uint16
-+ Xpixel uint16
-+ Ypixel uint16
-+}
-+
- const (
- AT_FDCWD = 0xfffafdcd
- AT_SYMLINK_NOFOLLOW = 0x1
- )
-+
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
-+type Utsname struct {
-+ Sysname [32]byte
-+ Nodename [32]byte
-+ Release [32]byte
-+ Version [32]byte
-+ Machine [32]byte
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Tickadj int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go
-index 5b28bcbb..2a3ec615 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go
-@@ -6,11 +6,11 @@
- package unix
-
- const (
-- sizeofPtr = 0x4
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x4
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x4
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x4
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -57,41 +57,55 @@ type Rlimit struct {
- type _Gid_t uint32
-
- const (
-- S_IFMT = 0xf000
-- S_IFIFO = 0x1000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFBLK = 0x6000
-- S_IFREG = 0x8000
-- S_IFLNK = 0xa000
-- S_IFSOCK = 0xc000
-- S_ISUID = 0x800
-- S_ISGID = 0x400
-- S_ISVTX = 0x200
-- S_IRUSR = 0x100
-- S_IWUSR = 0x80
-- S_IXUSR = 0x40
-+ _statfsVersion = 0x20140518
-+ _dirblksiz = 0x400
- )
-
- type Stat_t struct {
-- Dev uint32
-- Ino uint32
-- Mode uint16
-- Nlink uint16
-- Uid uint32
-- Gid uint32
-- Rdev uint32
-- Atimespec Timespec
-- Mtimespec Timespec
-- Ctimespec Timespec
-- Size int64
-- Blocks int64
-- Blksize int32
-- Flags uint32
-- Gen uint32
-- Lspare int32
-- Birthtimespec Timespec
-- Pad_cgo_0 [8]byte
-+ Dev uint64
-+ Ino uint64
-+ Nlink uint64
-+ Mode uint16
-+ _0 int16
-+ Uid uint32
-+ Gid uint32
-+ _1 int32
-+ Rdev uint64
-+ _ int32
-+ Atim Timespec
-+ _ int32
-+ Mtim Timespec
-+ _ int32
-+ Ctim Timespec
-+ _ int32
-+ Btim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint64
-+ Spare [10]uint64
-+}
-+
-+type stat_freebsd11_t struct {
-+ Dev uint32
-+ Ino uint32
-+ Mode uint16
-+ Nlink uint16
-+ Uid uint32
-+ Gid uint32
-+ Rdev uint32
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint32
-+ Lspare int32
-+ Btim Timespec
-+ _ [8]byte
- }
-
- type Statfs_t struct {
-@@ -114,9 +128,34 @@ type Statfs_t struct {
- Owner uint32
- Fsid Fsid
- Charspare [80]int8
-- Fstypename [16]int8
-- Mntfromname [88]int8
-- Mntonname [88]int8
-+ Fstypename [16]byte
-+ Mntfromname [1024]byte
-+ Mntonname [1024]byte
-+}
-+
-+type statfs_freebsd11_t struct {
-+ Version uint32
-+ Type uint32
-+ Flags uint64
-+ Bsize uint64
-+ Iosize uint64
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail int64
-+ Files uint64
-+ Ffree int64
-+ Syncwrites uint64
-+ Asyncwrites uint64
-+ Syncreads uint64
-+ Asyncreads uint64
-+ Spare [10]uint64
-+ Namemax uint32
-+ Owner uint32
-+ Fsid Fsid
-+ Charspare [80]int8
-+ Fstypename [16]byte
-+ Mntfromname [88]byte
-+ Mntonname [88]byte
- }
-
- type Flock_t struct {
-@@ -129,6 +168,17 @@ type Flock_t struct {
- }
-
- type Dirent struct {
-+ Fileno uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Pad0 uint8
-+ Namlen uint16
-+ Pad1 uint16
-+ Name [256]int8
-+}
-+
-+type dirent_freebsd11 struct {
- Fileno uint32
- Reclen uint16
- Type uint8
-@@ -140,6 +190,10 @@ type Fsid struct {
- Val [2]int32
- }
-
-+const (
-+ PathMax = 0x400
-+)
-+
- const (
- FADV_NORMAL = 0x0
- FADV_RANDOM = 0x1
-@@ -270,11 +324,108 @@ const (
- )
-
- const (
-- PTRACE_TRACEME = 0x0
-- PTRACE_CONT = 0x7
-- PTRACE_KILL = 0x8
-+ PTRACE_ATTACH = 0xa
-+ PTRACE_CONT = 0x7
-+ PTRACE_DETACH = 0xb
-+ PTRACE_GETFPREGS = 0x23
-+ PTRACE_GETFSBASE = 0x47
-+ PTRACE_GETLWPLIST = 0xf
-+ PTRACE_GETNUMLWPS = 0xe
-+ PTRACE_GETREGS = 0x21
-+ PTRACE_GETXSTATE = 0x45
-+ PTRACE_IO = 0xc
-+ PTRACE_KILL = 0x8
-+ PTRACE_LWPEVENTS = 0x18
-+ PTRACE_LWPINFO = 0xd
-+ PTRACE_SETFPREGS = 0x24
-+ PTRACE_SETREGS = 0x22
-+ PTRACE_SINGLESTEP = 0x9
-+ PTRACE_TRACEME = 0x0
-+)
-+
-+const (
-+ PIOD_READ_D = 0x1
-+ PIOD_WRITE_D = 0x2
-+ PIOD_READ_I = 0x3
-+ PIOD_WRITE_I = 0x4
-+)
-+
-+const (
-+ PL_FLAG_BORN = 0x100
-+ PL_FLAG_EXITED = 0x200
-+ PL_FLAG_SI = 0x20
-+)
-+
-+const (
-+ TRAP_BRKPT = 0x1
-+ TRAP_TRACE = 0x2
- )
-
-+type PtraceLwpInfoStruct struct {
-+ Lwpid int32
-+ Event int32
-+ Flags int32
-+ Sigmask Sigset_t
-+ Siglist Sigset_t
-+ Siginfo __Siginfo
-+ Tdname [20]int8
-+ Child_pid int32
-+ Syscall_code uint32
-+ Syscall_narg uint32
-+}
-+
-+type __Siginfo struct {
-+ Signo int32
-+ Errno int32
-+ Code int32
-+ Pid int32
-+ Uid uint32
-+ Status int32
-+ Addr *byte
-+ Value [4]byte
-+ _ [32]byte
-+}
-+
-+type Sigset_t struct {
-+ Val [4]uint32
-+}
-+
-+type Reg struct {
-+ Fs uint32
-+ Es uint32
-+ Ds uint32
-+ Edi uint32
-+ Esi uint32
-+ Ebp uint32
-+ Isp uint32
-+ Ebx uint32
-+ Edx uint32
-+ Ecx uint32
-+ Eax uint32
-+ Trapno uint32
-+ Err uint32
-+ Eip uint32
-+ Cs uint32
-+ Eflags uint32
-+ Esp uint32
-+ Ss uint32
-+ Gs uint32
-+}
-+
-+type FpReg struct {
-+ Env [7]uint32
-+ Acc [8][10]uint8
-+ Ex_sw uint32
-+ Pad [64]uint8
-+}
-+
-+type PtraceIoDesc struct {
-+ Op int32
-+ Offs *byte
-+ Addr *byte
-+ Len uint32
-+}
-+
- type Kevent_t struct {
- Ident uint32
- Filter int16
-@@ -285,7 +436,7 @@ type Kevent_t struct {
- }
-
- type FdSet struct {
-- X__fds_bits [32]uint32
-+ Bits [32]uint32
- }
-
- const (
-@@ -301,53 +452,52 @@ const (
- )
-
- type ifMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data ifData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ uint16
-+ Data ifData
- }
-
- type IfMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data IfData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ Data IfData
- }
-
- type ifData struct {
-- Type uint8
-- Physical uint8
-- Addrlen uint8
-- Hdrlen uint8
-- Link_state uint8
-- Vhid uint8
-- Datalen uint16
-- Mtu uint32
-- Metric uint32
-- Baudrate uint64
-- Ipackets uint64
-- Ierrors uint64
-- Opackets uint64
-- Oerrors uint64
-- Collisions uint64
-- Ibytes uint64
-- Obytes uint64
-- Imcasts uint64
-- Omcasts uint64
-- Iqdrops uint64
-- Oqdrops uint64
-- Noproto uint64
-- Hwassist uint64
-- X__ifi_epoch [8]byte
-- X__ifi_lastchange [16]byte
-+ Type uint8
-+ Physical uint8
-+ Addrlen uint8
-+ Hdrlen uint8
-+ Link_state uint8
-+ Vhid uint8
-+ Datalen uint16
-+ Mtu uint32
-+ Metric uint32
-+ Baudrate uint64
-+ Ipackets uint64
-+ Ierrors uint64
-+ Opackets uint64
-+ Oerrors uint64
-+ Collisions uint64
-+ Ibytes uint64
-+ Obytes uint64
-+ Imcasts uint64
-+ Omcasts uint64
-+ Iqdrops uint64
-+ Oqdrops uint64
-+ Noproto uint64
-+ Hwassist uint64
-+ _ [8]byte
-+ _ [16]byte
- }
-
- type IfData struct {
-@@ -379,24 +529,24 @@ type IfData struct {
- }
-
- type IfaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Metric int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ uint16
-+ Metric int32
- }
-
- type IfmaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ uint16
- }
-
- type IfAnnounceMsghdr struct {
-@@ -409,19 +559,19 @@ type IfAnnounceMsghdr struct {
- }
-
- type RtMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Flags int32
-- Addrs int32
-- Pid int32
-- Seq int32
-- Errno int32
-- Fmask int32
-- Inits uint32
-- Rmx RtMetrics
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Index uint16
-+ _ uint16
-+ Flags int32
-+ Addrs int32
-+ Pid int32
-+ Seq int32
-+ Errno int32
-+ Fmask int32
-+ Inits uint32
-+ Rmx RtMetrics
- }
-
- type RtMetrics struct {
-@@ -478,18 +628,18 @@ type BpfInsn struct {
- }
-
- type BpfHdr struct {
-- Tstamp Timeval
-- Caplen uint32
-- Datalen uint32
-- Hdrlen uint16
-- Pad_cgo_0 [2]byte
-+ Tstamp Timeval
-+ Caplen uint32
-+ Datalen uint32
-+ Hdrlen uint16
-+ _ [2]byte
- }
-
- type BpfZbufHeader struct {
- Kernel_gen uint32
- Kernel_len uint32
- User_gen uint32
-- X_bzh_pad [5]uint32
-+ _ [5]uint32
- }
-
- type Termios struct {
-@@ -516,6 +666,44 @@ const (
- AT_SYMLINK_NOFOLLOW = 0x200
- )
-
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLINIGNEOF = 0x2000
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
- type CapRights struct {
- Rights [2]uint64
- }
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Spare int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
-index c65d89e4..e11e9549 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
-@@ -6,11 +6,11 @@
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x8
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x8
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -57,40 +57,50 @@ type Rlimit struct {
- type _Gid_t uint32
-
- const (
-- S_IFMT = 0xf000
-- S_IFIFO = 0x1000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFBLK = 0x6000
-- S_IFREG = 0x8000
-- S_IFLNK = 0xa000
-- S_IFSOCK = 0xc000
-- S_ISUID = 0x800
-- S_ISGID = 0x400
-- S_ISVTX = 0x200
-- S_IRUSR = 0x100
-- S_IWUSR = 0x80
-- S_IXUSR = 0x40
-+ _statfsVersion = 0x20140518
-+ _dirblksiz = 0x400
- )
-
- type Stat_t struct {
-- Dev uint32
-- Ino uint32
-- Mode uint16
-- Nlink uint16
-- Uid uint32
-- Gid uint32
-- Rdev uint32
-- Atimespec Timespec
-- Mtimespec Timespec
-- Ctimespec Timespec
-- Size int64
-- Blocks int64
-- Blksize int32
-- Flags uint32
-- Gen uint32
-- Lspare int32
-- Birthtimespec Timespec
-+ Dev uint64
-+ Ino uint64
-+ Nlink uint64
-+ Mode uint16
-+ _0 int16
-+ Uid uint32
-+ Gid uint32
-+ _1 int32
-+ Rdev uint64
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Btim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint64
-+ Spare [10]uint64
-+}
-+
-+type stat_freebsd11_t struct {
-+ Dev uint32
-+ Ino uint32
-+ Mode uint16
-+ Nlink uint16
-+ Uid uint32
-+ Gid uint32
-+ Rdev uint32
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint32
-+ Lspare int32
-+ Btim Timespec
- }
-
- type Statfs_t struct {
-@@ -113,22 +123,58 @@ type Statfs_t struct {
- Owner uint32
- Fsid Fsid
- Charspare [80]int8
-- Fstypename [16]int8
-- Mntfromname [88]int8
-- Mntonname [88]int8
-+ Fstypename [16]byte
-+ Mntfromname [1024]byte
-+ Mntonname [1024]byte
-+}
-+
-+type statfs_freebsd11_t struct {
-+ Version uint32
-+ Type uint32
-+ Flags uint64
-+ Bsize uint64
-+ Iosize uint64
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail int64
-+ Files uint64
-+ Ffree int64
-+ Syncwrites uint64
-+ Asyncwrites uint64
-+ Syncreads uint64
-+ Asyncreads uint64
-+ Spare [10]uint64
-+ Namemax uint32
-+ Owner uint32
-+ Fsid Fsid
-+ Charspare [80]int8
-+ Fstypename [16]byte
-+ Mntfromname [88]byte
-+ Mntonname [88]byte
- }
-
- type Flock_t struct {
-- Start int64
-- Len int64
-- Pid int32
-- Type int16
-- Whence int16
-- Sysid int32
-- Pad_cgo_0 [4]byte
-+ Start int64
-+ Len int64
-+ Pid int32
-+ Type int16
-+ Whence int16
-+ Sysid int32
-+ _ [4]byte
- }
-
- type Dirent struct {
-+ Fileno uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Pad0 uint8
-+ Namlen uint16
-+ Pad1 uint16
-+ Name [256]int8
-+}
-+
-+type dirent_freebsd11 struct {
- Fileno uint32
- Reclen uint16
- Type uint8
-@@ -140,6 +186,10 @@ type Fsid struct {
- Val [2]int32
- }
-
-+const (
-+ PathMax = 0x400
-+)
-+
- const (
- FADV_NORMAL = 0x0
- FADV_RANDOM = 0x1
-@@ -225,10 +275,8 @@ type IPv6Mreq struct {
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
- Iov *Iovec
- Iovlen int32
-- Pad_cgo_1 [4]byte
- Control *byte
- Controllen uint32
- Flags int32
-@@ -272,11 +320,115 @@ const (
- )
-
- const (
-- PTRACE_TRACEME = 0x0
-- PTRACE_CONT = 0x7
-- PTRACE_KILL = 0x8
-+ PTRACE_ATTACH = 0xa
-+ PTRACE_CONT = 0x7
-+ PTRACE_DETACH = 0xb
-+ PTRACE_GETFPREGS = 0x23
-+ PTRACE_GETFSBASE = 0x47
-+ PTRACE_GETLWPLIST = 0xf
-+ PTRACE_GETNUMLWPS = 0xe
-+ PTRACE_GETREGS = 0x21
-+ PTRACE_GETXSTATE = 0x45
-+ PTRACE_IO = 0xc
-+ PTRACE_KILL = 0x8
-+ PTRACE_LWPEVENTS = 0x18
-+ PTRACE_LWPINFO = 0xd
-+ PTRACE_SETFPREGS = 0x24
-+ PTRACE_SETREGS = 0x22
-+ PTRACE_SINGLESTEP = 0x9
-+ PTRACE_TRACEME = 0x0
-+)
-+
-+const (
-+ PIOD_READ_D = 0x1
-+ PIOD_WRITE_D = 0x2
-+ PIOD_READ_I = 0x3
-+ PIOD_WRITE_I = 0x4
-+)
-+
-+const (
-+ PL_FLAG_BORN = 0x100
-+ PL_FLAG_EXITED = 0x200
-+ PL_FLAG_SI = 0x20
-+)
-+
-+const (
-+ TRAP_BRKPT = 0x1
-+ TRAP_TRACE = 0x2
- )
-
-+type PtraceLwpInfoStruct struct {
-+ Lwpid int32
-+ Event int32
-+ Flags int32
-+ Sigmask Sigset_t
-+ Siglist Sigset_t
-+ Siginfo __Siginfo
-+ Tdname [20]int8
-+ Child_pid int32
-+ Syscall_code uint32
-+ Syscall_narg uint32
-+}
-+
-+type __Siginfo struct {
-+ Signo int32
-+ Errno int32
-+ Code int32
-+ Pid int32
-+ Uid uint32
-+ Status int32
-+ Addr *byte
-+ Value [8]byte
-+ _ [40]byte
-+}
-+
-+type Sigset_t struct {
-+ Val [4]uint32
-+}
-+
-+type Reg struct {
-+ R15 int64
-+ R14 int64
-+ R13 int64
-+ R12 int64
-+ R11 int64
-+ R10 int64
-+ R9 int64
-+ R8 int64
-+ Rdi int64
-+ Rsi int64
-+ Rbp int64
-+ Rbx int64
-+ Rdx int64
-+ Rcx int64
-+ Rax int64
-+ Trapno uint32
-+ Fs uint16
-+ Gs uint16
-+ Err uint32
-+ Es uint16
-+ Ds uint16
-+ Rip int64
-+ Cs int64
-+ Rflags int64
-+ Rsp int64
-+ Ss int64
-+}
-+
-+type FpReg struct {
-+ Env [4]uint64
-+ Acc [8][16]uint8
-+ Xacc [16][16]uint8
-+ Spare [12]uint64
-+}
-+
-+type PtraceIoDesc struct {
-+ Op int32
-+ Offs *byte
-+ Addr *byte
-+ Len uint64
-+}
-+
- type Kevent_t struct {
- Ident uint64
- Filter int16
-@@ -287,7 +439,7 @@ type Kevent_t struct {
- }
-
- type FdSet struct {
-- X__fds_bits [16]uint64
-+ Bits [16]uint64
- }
-
- const (
-@@ -303,53 +455,52 @@ const (
- )
-
- type ifMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data ifData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ uint16
-+ Data ifData
- }
-
- type IfMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data IfData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ Data IfData
- }
-
- type ifData struct {
-- Type uint8
-- Physical uint8
-- Addrlen uint8
-- Hdrlen uint8
-- Link_state uint8
-- Vhid uint8
-- Datalen uint16
-- Mtu uint32
-- Metric uint32
-- Baudrate uint64
-- Ipackets uint64
-- Ierrors uint64
-- Opackets uint64
-- Oerrors uint64
-- Collisions uint64
-- Ibytes uint64
-- Obytes uint64
-- Imcasts uint64
-- Omcasts uint64
-- Iqdrops uint64
-- Oqdrops uint64
-- Noproto uint64
-- Hwassist uint64
-- X__ifi_epoch [8]byte
-- X__ifi_lastchange [16]byte
-+ Type uint8
-+ Physical uint8
-+ Addrlen uint8
-+ Hdrlen uint8
-+ Link_state uint8
-+ Vhid uint8
-+ Datalen uint16
-+ Mtu uint32
-+ Metric uint32
-+ Baudrate uint64
-+ Ipackets uint64
-+ Ierrors uint64
-+ Opackets uint64
-+ Oerrors uint64
-+ Collisions uint64
-+ Ibytes uint64
-+ Obytes uint64
-+ Imcasts uint64
-+ Omcasts uint64
-+ Iqdrops uint64
-+ Oqdrops uint64
-+ Noproto uint64
-+ Hwassist uint64
-+ _ [8]byte
-+ _ [16]byte
- }
-
- type IfData struct {
-@@ -381,24 +532,24 @@ type IfData struct {
- }
-
- type IfaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Metric int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ uint16
-+ Metric int32
- }
-
- type IfmaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ uint16
- }
-
- type IfAnnounceMsghdr struct {
-@@ -411,19 +562,19 @@ type IfAnnounceMsghdr struct {
- }
-
- type RtMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Flags int32
-- Addrs int32
-- Pid int32
-- Seq int32
-- Errno int32
-- Fmask int32
-- Inits uint64
-- Rmx RtMetrics
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Index uint16
-+ _ uint16
-+ Flags int32
-+ Addrs int32
-+ Pid int32
-+ Seq int32
-+ Errno int32
-+ Fmask int32
-+ Inits uint64
-+ Rmx RtMetrics
- }
-
- type RtMetrics struct {
-@@ -468,9 +619,8 @@ type BpfZbuf struct {
- }
-
- type BpfProgram struct {
-- Len uint32
-- Pad_cgo_0 [4]byte
-- Insns *BpfInsn
-+ Len uint32
-+ Insns *BpfInsn
- }
-
- type BpfInsn struct {
-@@ -481,18 +631,18 @@ type BpfInsn struct {
- }
-
- type BpfHdr struct {
-- Tstamp Timeval
-- Caplen uint32
-- Datalen uint32
-- Hdrlen uint16
-- Pad_cgo_0 [6]byte
-+ Tstamp Timeval
-+ Caplen uint32
-+ Datalen uint32
-+ Hdrlen uint16
-+ _ [6]byte
- }
-
- type BpfZbufHeader struct {
- Kernel_gen uint32
- Kernel_len uint32
- User_gen uint32
-- X_bzh_pad [5]uint32
-+ _ [5]uint32
- }
-
- type Termios struct {
-@@ -519,6 +669,44 @@ const (
- AT_SYMLINK_NOFOLLOW = 0x200
- )
-
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLINIGNEOF = 0x2000
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
- type CapRights struct {
- Rights [2]uint64
- }
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Spare int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go
-index 42c0a502..6f79227d 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go
-@@ -6,11 +6,11 @@
- package unix
-
- const (
-- sizeofPtr = 0x4
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x4
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x4
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x4
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -21,15 +21,15 @@ type (
- )
-
- type Timespec struct {
-- Sec int64
-- Nsec int32
-- Pad_cgo_0 [4]byte
-+ Sec int64
-+ Nsec int32
-+ _ [4]byte
- }
-
- type Timeval struct {
-- Sec int64
-- Usec int32
-- Pad_cgo_0 [4]byte
-+ Sec int64
-+ Usec int32
-+ _ [4]byte
- }
-
- type Rusage struct {
-@@ -59,43 +59,78 @@ type Rlimit struct {
- type _Gid_t uint32
-
- const (
-- S_IFMT = 0xf000
-- S_IFIFO = 0x1000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFBLK = 0x6000
-- S_IFREG = 0x8000
-- S_IFLNK = 0xa000
-- S_IFSOCK = 0xc000
-- S_ISUID = 0x800
-- S_ISGID = 0x400
-- S_ISVTX = 0x200
-- S_IRUSR = 0x100
-- S_IWUSR = 0x80
-- S_IXUSR = 0x40
-+ _statfsVersion = 0x20140518
-+ _dirblksiz = 0x400
- )
-
- type Stat_t struct {
-- Dev uint32
-- Ino uint32
-- Mode uint16
-- Nlink uint16
-- Uid uint32
-- Gid uint32
-- Rdev uint32
-- Atimespec Timespec
-- Mtimespec Timespec
-- Ctimespec Timespec
-- Size int64
-- Blocks int64
-- Blksize int32
-- Flags uint32
-- Gen uint32
-- Lspare int32
-- Birthtimespec Timespec
-+ Dev uint64
-+ Ino uint64
-+ Nlink uint64
-+ Mode uint16
-+ _0 int16
-+ Uid uint32
-+ Gid uint32
-+ _1 int32
-+ Rdev uint64
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Btim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint64
-+ Spare [10]uint64
-+}
-+
-+type stat_freebsd11_t struct {
-+ Dev uint32
-+ Ino uint32
-+ Mode uint16
-+ Nlink uint16
-+ Uid uint32
-+ Gid uint32
-+ Rdev uint32
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint32
-+ Lspare int32
-+ Btim Timespec
- }
-
- type Statfs_t struct {
-+ Version uint32
-+ Type uint32
-+ Flags uint64
-+ Bsize uint64
-+ Iosize uint64
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail int64
-+ Files uint64
-+ Ffree int64
-+ Syncwrites uint64
-+ Asyncwrites uint64
-+ Syncreads uint64
-+ Asyncreads uint64
-+ Spare [10]uint64
-+ Namemax uint32
-+ Owner uint32
-+ Fsid Fsid
-+ Charspare [80]int8
-+ Fstypename [16]int8
-+ Mntfromname [1024]int8
-+ Mntonname [1024]int8
-+}
-+
-+type statfs_freebsd11_t struct {
- Version uint32
- Type uint32
- Flags uint64
-@@ -121,16 +156,27 @@ type Statfs_t struct {
- }
-
- type Flock_t struct {
-- Start int64
-- Len int64
-- Pid int32
-- Type int16
-- Whence int16
-- Sysid int32
-- Pad_cgo_0 [4]byte
-+ Start int64
-+ Len int64
-+ Pid int32
-+ Type int16
-+ Whence int16
-+ Sysid int32
-+ _ [4]byte
- }
-
- type Dirent struct {
-+ Fileno uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Pad0 uint8
-+ Namlen uint16
-+ Pad1 uint16
-+ Name [256]int8
-+}
-+
-+type dirent_freebsd11 struct {
- Fileno uint32
- Reclen uint16
- Type uint8
-@@ -142,6 +188,10 @@ type Fsid struct {
- Val [2]int32
- }
-
-+const (
-+ PathMax = 0x400
-+)
-+
- const (
- FADV_NORMAL = 0x0
- FADV_RANDOM = 0x1
-@@ -272,11 +322,92 @@ const (
- )
-
- const (
-- PTRACE_TRACEME = 0x0
-- PTRACE_CONT = 0x7
-- PTRACE_KILL = 0x8
-+ PTRACE_ATTACH = 0xa
-+ PTRACE_CONT = 0x7
-+ PTRACE_DETACH = 0xb
-+ PTRACE_GETFPREGS = 0x23
-+ PTRACE_GETFSBASE = 0x47
-+ PTRACE_GETLWPLIST = 0xf
-+ PTRACE_GETNUMLWPS = 0xe
-+ PTRACE_GETREGS = 0x21
-+ PTRACE_GETXSTATE = 0x45
-+ PTRACE_IO = 0xc
-+ PTRACE_KILL = 0x8
-+ PTRACE_LWPEVENTS = 0x18
-+ PTRACE_LWPINFO = 0xd
-+ PTRACE_SETFPREGS = 0x24
-+ PTRACE_SETREGS = 0x22
-+ PTRACE_SINGLESTEP = 0x9
-+ PTRACE_TRACEME = 0x0
-+)
-+
-+const (
-+ PIOD_READ_D = 0x1
-+ PIOD_WRITE_D = 0x2
-+ PIOD_READ_I = 0x3
-+ PIOD_WRITE_I = 0x4
-+)
-+
-+const (
-+ PL_FLAG_BORN = 0x100
-+ PL_FLAG_EXITED = 0x200
-+ PL_FLAG_SI = 0x20
- )
-
-+const (
-+ TRAP_BRKPT = 0x1
-+ TRAP_TRACE = 0x2
-+)
-+
-+type PtraceLwpInfoStruct struct {
-+ Lwpid int32
-+ Event int32
-+ Flags int32
-+ Sigmask Sigset_t
-+ Siglist Sigset_t
-+ Siginfo __Siginfo
-+ Tdname [20]int8
-+ Child_pid int32
-+ Syscall_code uint32
-+ Syscall_narg uint32
-+}
-+
-+type __Siginfo struct {
-+ Signo int32
-+ Errno int32
-+ Code int32
-+ Pid int32
-+ Uid uint32
-+ Status int32
-+ Addr *byte
-+ Value [4]byte
-+ X_reason [32]byte
-+}
-+
-+type Sigset_t struct {
-+ Val [4]uint32
-+}
-+
-+type Reg struct {
-+ R [13]uint32
-+ R_sp uint32
-+ R_lr uint32
-+ R_pc uint32
-+ R_cpsr uint32
-+}
-+
-+type FpReg struct {
-+ Fpr_fpsr uint32
-+ Fpr [8][3]uint32
-+}
-+
-+type PtraceIoDesc struct {
-+ Op int32
-+ Offs *byte
-+ Addr *byte
-+ Len uint32
-+}
-+
- type Kevent_t struct {
- Ident uint32
- Filter int16
-@@ -287,7 +418,7 @@ type Kevent_t struct {
- }
-
- type FdSet struct {
-- X__fds_bits [32]uint32
-+ Bits [32]uint32
- }
-
- const (
-@@ -303,53 +434,53 @@ const (
- )
-
- type ifMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data ifData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Data ifData
- }
-
- type IfMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data IfData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Data IfData
- }
-
- type ifData struct {
-- Type uint8
-- Physical uint8
-- Addrlen uint8
-- Hdrlen uint8
-- Link_state uint8
-- Vhid uint8
-- Datalen uint16
-- Mtu uint32
-- Metric uint32
-- Baudrate uint64
-- Ipackets uint64
-- Ierrors uint64
-- Opackets uint64
-- Oerrors uint64
-- Collisions uint64
-- Ibytes uint64
-- Obytes uint64
-- Imcasts uint64
-- Omcasts uint64
-- Iqdrops uint64
-- Oqdrops uint64
-- Noproto uint64
-- Hwassist uint64
-- X__ifi_epoch [8]byte
-- X__ifi_lastchange [16]byte
-+ Type uint8
-+ Physical uint8
-+ Addrlen uint8
-+ Hdrlen uint8
-+ Link_state uint8
-+ Vhid uint8
-+ Datalen uint16
-+ Mtu uint32
-+ Metric uint32
-+ Baudrate uint64
-+ Ipackets uint64
-+ Ierrors uint64
-+ Opackets uint64
-+ Oerrors uint64
-+ Collisions uint64
-+ Ibytes uint64
-+ Obytes uint64
-+ Imcasts uint64
-+ Omcasts uint64
-+ Iqdrops uint64
-+ Oqdrops uint64
-+ Noproto uint64
-+ Hwassist uint64
-+ _ [8]byte
-+ _ [16]byte
- }
-
- type IfData struct {
-@@ -376,30 +507,30 @@ type IfData struct {
- Iqdrops uint32
- Noproto uint32
- Hwassist uint32
-- Pad_cgo_0 [4]byte
-+ _ [4]byte
- Epoch int64
- Lastchange Timeval
- }
-
- type IfaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Metric int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Metric int32
- }
-
- type IfmaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
- }
-
- type IfAnnounceMsghdr struct {
-@@ -412,19 +543,19 @@ type IfAnnounceMsghdr struct {
- }
-
- type RtMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Flags int32
-- Addrs int32
-- Pid int32
-- Seq int32
-- Errno int32
-- Fmask int32
-- Inits uint32
-- Rmx RtMetrics
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Index uint16
-+ _ [2]byte
-+ Flags int32
-+ Addrs int32
-+ Pid int32
-+ Seq int32
-+ Errno int32
-+ Fmask int32
-+ Inits uint32
-+ Rmx RtMetrics
- }
-
- type RtMetrics struct {
-@@ -481,18 +612,18 @@ type BpfInsn struct {
- }
-
- type BpfHdr struct {
-- Tstamp Timeval
-- Caplen uint32
-- Datalen uint32
-- Hdrlen uint16
-- Pad_cgo_0 [6]byte
-+ Tstamp Timeval
-+ Caplen uint32
-+ Datalen uint32
-+ Hdrlen uint16
-+ _ [6]byte
- }
-
- type BpfZbufHeader struct {
- Kernel_gen uint32
- Kernel_len uint32
- User_gen uint32
-- X_bzh_pad [5]uint32
-+ _ [5]uint32
- }
-
- type Termios struct {
-@@ -519,6 +650,44 @@ const (
- AT_SYMLINK_NOFOLLOW = 0x200
- )
-
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLINIGNEOF = 0x2000
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
- type CapRights struct {
- Rights [2]uint64
- }
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Spare int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go
-similarity index 54%
-copy from vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
-copy to vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go
-index c65d89e4..c6fe1d09 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go
-@@ -1,16 +1,16 @@
--// cgo -godefs types_freebsd.go | go run mkpost.go
-+// cgo -godefs -- -fsigned-char types_freebsd.go | go run mkpost.go
- // Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build amd64,freebsd
-+// +build arm64,freebsd
-
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x8
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x8
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -57,40 +57,50 @@ type Rlimit struct {
- type _Gid_t uint32
-
- const (
-- S_IFMT = 0xf000
-- S_IFIFO = 0x1000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFBLK = 0x6000
-- S_IFREG = 0x8000
-- S_IFLNK = 0xa000
-- S_IFSOCK = 0xc000
-- S_ISUID = 0x800
-- S_ISGID = 0x400
-- S_ISVTX = 0x200
-- S_IRUSR = 0x100
-- S_IWUSR = 0x80
-- S_IXUSR = 0x40
-+ _statfsVersion = 0x20140518
-+ _dirblksiz = 0x400
- )
-
- type Stat_t struct {
-- Dev uint32
-- Ino uint32
-- Mode uint16
-- Nlink uint16
-- Uid uint32
-- Gid uint32
-- Rdev uint32
-- Atimespec Timespec
-- Mtimespec Timespec
-- Ctimespec Timespec
-- Size int64
-- Blocks int64
-- Blksize int32
-- Flags uint32
-- Gen uint32
-- Lspare int32
-- Birthtimespec Timespec
-+ Dev uint64
-+ Ino uint64
-+ Nlink uint64
-+ Mode uint16
-+ _0 int16
-+ Uid uint32
-+ Gid uint32
-+ _1 int32
-+ Rdev uint64
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Btim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint64
-+ Spare [10]uint64
-+}
-+
-+type stat_freebsd11_t struct {
-+ Dev uint32
-+ Ino uint32
-+ Mode uint16
-+ Nlink uint16
-+ Uid uint32
-+ Gid uint32
-+ Rdev uint32
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint32
-+ Lspare int32
-+ Btim Timespec
- }
-
- type Statfs_t struct {
-@@ -113,22 +123,58 @@ type Statfs_t struct {
- Owner uint32
- Fsid Fsid
- Charspare [80]int8
-- Fstypename [16]int8
-- Mntfromname [88]int8
-- Mntonname [88]int8
-+ Fstypename [16]byte
-+ Mntfromname [1024]byte
-+ Mntonname [1024]byte
-+}
-+
-+type statfs_freebsd11_t struct {
-+ Version uint32
-+ Type uint32
-+ Flags uint64
-+ Bsize uint64
-+ Iosize uint64
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail int64
-+ Files uint64
-+ Ffree int64
-+ Syncwrites uint64
-+ Asyncwrites uint64
-+ Syncreads uint64
-+ Asyncreads uint64
-+ Spare [10]uint64
-+ Namemax uint32
-+ Owner uint32
-+ Fsid Fsid
-+ Charspare [80]int8
-+ Fstypename [16]byte
-+ Mntfromname [88]byte
-+ Mntonname [88]byte
- }
-
- type Flock_t struct {
-- Start int64
-- Len int64
-- Pid int32
-- Type int16
-- Whence int16
-- Sysid int32
-- Pad_cgo_0 [4]byte
-+ Start int64
-+ Len int64
-+ Pid int32
-+ Type int16
-+ Whence int16
-+ Sysid int32
-+ _ [4]byte
- }
-
- type Dirent struct {
-+ Fileno uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Pad0 uint8
-+ Namlen uint16
-+ Pad1 uint16
-+ Name [256]int8
-+}
-+
-+type dirent_freebsd11 struct {
- Fileno uint32
- Reclen uint16
- Type uint8
-@@ -140,6 +186,10 @@ type Fsid struct {
- Val [2]int32
- }
-
-+const (
-+ PathMax = 0x400
-+)
-+
- const (
- FADV_NORMAL = 0x0
- FADV_RANDOM = 0x1
-@@ -225,10 +275,8 @@ type IPv6Mreq struct {
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
- Iov *Iovec
- Iovlen int32
-- Pad_cgo_1 [4]byte
- Control *byte
- Controllen uint32
- Flags int32
-@@ -272,11 +320,93 @@ const (
- )
-
- const (
-- PTRACE_TRACEME = 0x0
-- PTRACE_CONT = 0x7
-- PTRACE_KILL = 0x8
-+ PTRACE_ATTACH = 0xa
-+ PTRACE_CONT = 0x7
-+ PTRACE_DETACH = 0xb
-+ PTRACE_GETFPREGS = 0x23
-+ PTRACE_GETLWPLIST = 0xf
-+ PTRACE_GETNUMLWPS = 0xe
-+ PTRACE_GETREGS = 0x21
-+ PTRACE_IO = 0xc
-+ PTRACE_KILL = 0x8
-+ PTRACE_LWPEVENTS = 0x18
-+ PTRACE_LWPINFO = 0xd
-+ PTRACE_SETFPREGS = 0x24
-+ PTRACE_SETREGS = 0x22
-+ PTRACE_SINGLESTEP = 0x9
-+ PTRACE_TRACEME = 0x0
-+)
-+
-+const (
-+ PIOD_READ_D = 0x1
-+ PIOD_WRITE_D = 0x2
-+ PIOD_READ_I = 0x3
-+ PIOD_WRITE_I = 0x4
-+)
-+
-+const (
-+ PL_FLAG_BORN = 0x100
-+ PL_FLAG_EXITED = 0x200
-+ PL_FLAG_SI = 0x20
-+)
-+
-+const (
-+ TRAP_BRKPT = 0x1
-+ TRAP_TRACE = 0x2
- )
-
-+type PtraceLwpInfoStruct struct {
-+ Lwpid int32
-+ Event int32
-+ Flags int32
-+ Sigmask Sigset_t
-+ Siglist Sigset_t
-+ Siginfo __Siginfo
-+ Tdname [20]int8
-+ Child_pid int32
-+ Syscall_code uint32
-+ Syscall_narg uint32
-+}
-+
-+type __Siginfo struct {
-+ Signo int32
-+ Errno int32
-+ Code int32
-+ Pid int32
-+ Uid uint32
-+ Status int32
-+ Addr *byte
-+ Value [8]byte
-+ _ [40]byte
-+}
-+
-+type Sigset_t struct {
-+ Val [4]uint32
-+}
-+
-+type Reg struct {
-+ X [30]uint64
-+ Lr uint64
-+ Sp uint64
-+ Elr uint64
-+ Spsr uint32
-+ _ [4]byte
-+}
-+
-+type FpReg struct {
-+ Q [32][16]uint8
-+ Sr uint32
-+ Cr uint32
-+ _ [8]byte
-+}
-+
-+type PtraceIoDesc struct {
-+ Op int32
-+ Offs *byte
-+ Addr *byte
-+ Len uint64
-+}
-+
- type Kevent_t struct {
- Ident uint64
- Filter int16
-@@ -287,7 +417,7 @@ type Kevent_t struct {
- }
-
- type FdSet struct {
-- X__fds_bits [16]uint64
-+ Bits [16]uint64
- }
-
- const (
-@@ -303,53 +433,52 @@ const (
- )
-
- type ifMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data ifData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ uint16
-+ Data ifData
- }
-
- type IfMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data IfData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ Data IfData
- }
-
- type ifData struct {
-- Type uint8
-- Physical uint8
-- Addrlen uint8
-- Hdrlen uint8
-- Link_state uint8
-- Vhid uint8
-- Datalen uint16
-- Mtu uint32
-- Metric uint32
-- Baudrate uint64
-- Ipackets uint64
-- Ierrors uint64
-- Opackets uint64
-- Oerrors uint64
-- Collisions uint64
-- Ibytes uint64
-- Obytes uint64
-- Imcasts uint64
-- Omcasts uint64
-- Iqdrops uint64
-- Oqdrops uint64
-- Noproto uint64
-- Hwassist uint64
-- X__ifi_epoch [8]byte
-- X__ifi_lastchange [16]byte
-+ Type uint8
-+ Physical uint8
-+ Addrlen uint8
-+ Hdrlen uint8
-+ Link_state uint8
-+ Vhid uint8
-+ Datalen uint16
-+ Mtu uint32
-+ Metric uint32
-+ Baudrate uint64
-+ Ipackets uint64
-+ Ierrors uint64
-+ Opackets uint64
-+ Oerrors uint64
-+ Collisions uint64
-+ Ibytes uint64
-+ Obytes uint64
-+ Imcasts uint64
-+ Omcasts uint64
-+ Iqdrops uint64
-+ Oqdrops uint64
-+ Noproto uint64
-+ Hwassist uint64
-+ _ [8]byte
-+ _ [16]byte
- }
-
- type IfData struct {
-@@ -381,24 +510,24 @@ type IfData struct {
- }
-
- type IfaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Metric int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ uint16
-+ Metric int32
- }
-
- type IfmaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ uint16
- }
-
- type IfAnnounceMsghdr struct {
-@@ -411,19 +540,19 @@ type IfAnnounceMsghdr struct {
- }
-
- type RtMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Flags int32
-- Addrs int32
-- Pid int32
-- Seq int32
-- Errno int32
-- Fmask int32
-- Inits uint64
-- Rmx RtMetrics
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Index uint16
-+ _ uint16
-+ Flags int32
-+ Addrs int32
-+ Pid int32
-+ Seq int32
-+ Errno int32
-+ Fmask int32
-+ Inits uint64
-+ Rmx RtMetrics
- }
-
- type RtMetrics struct {
-@@ -468,9 +597,8 @@ type BpfZbuf struct {
- }
-
- type BpfProgram struct {
-- Len uint32
-- Pad_cgo_0 [4]byte
-- Insns *BpfInsn
-+ Len uint32
-+ Insns *BpfInsn
- }
-
- type BpfInsn struct {
-@@ -481,18 +609,18 @@ type BpfInsn struct {
- }
-
- type BpfHdr struct {
-- Tstamp Timeval
-- Caplen uint32
-- Datalen uint32
-- Hdrlen uint16
-- Pad_cgo_0 [6]byte
-+ Tstamp Timeval
-+ Caplen uint32
-+ Datalen uint32
-+ Hdrlen uint16
-+ _ [6]byte
- }
-
- type BpfZbufHeader struct {
- Kernel_gen uint32
- Kernel_len uint32
- User_gen uint32
-- X_bzh_pad [5]uint32
-+ _ [5]uint32
- }
-
- type Termios struct {
-@@ -519,6 +647,44 @@ const (
- AT_SYMLINK_NOFOLLOW = 0x200
- )
-
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLINIGNEOF = 0x2000
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
- type CapRights struct {
- Rights [2]uint64
- }
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Spare int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux.go b/vendor/golang.org/x/sys/unix/ztypes_linux.go
-new file mode 100644
-index 00000000..af5ab455
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux.go
-@@ -0,0 +1,2340 @@
-+// Code generated by mkmerge.go; DO NOT EDIT.
-+
-+// +build linux
-+
-+package unix
-+
-+const (
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLongLong = 0x8
-+ PathMax = 0x1000
-+)
-+
-+type (
-+ _C_short int16
-+ _C_int int32
-+
-+ _C_long_long int64
-+)
-+
-+const (
-+ TIME_OK = 0x0
-+ TIME_INS = 0x1
-+ TIME_DEL = 0x2
-+ TIME_OOP = 0x3
-+ TIME_WAIT = 0x4
-+ TIME_ERROR = 0x5
-+ TIME_BAD = 0x5
-+)
-+
-+type Rlimit struct {
-+ Cur uint64
-+ Max uint64
-+}
-+
-+type _Gid_t uint32
-+
-+type StatxTimestamp struct {
-+ Sec int64
-+ Nsec uint32
-+ _ int32
-+}
-+
-+type Statx_t struct {
-+ Mask uint32
-+ Blksize uint32
-+ Attributes uint64
-+ Nlink uint32
-+ Uid uint32
-+ Gid uint32
-+ Mode uint16
-+ _ [1]uint16
-+ Ino uint64
-+ Size uint64
-+ Blocks uint64
-+ Attributes_mask uint64
-+ Atime StatxTimestamp
-+ Btime StatxTimestamp
-+ Ctime StatxTimestamp
-+ Mtime StatxTimestamp
-+ Rdev_major uint32
-+ Rdev_minor uint32
-+ Dev_major uint32
-+ Dev_minor uint32
-+ _ [14]uint64
-+}
-+
-+type Fsid struct {
-+ Val [2]int32
-+}
-+
-+type FscryptPolicy struct {
-+ Version uint8
-+ Contents_encryption_mode uint8
-+ Filenames_encryption_mode uint8
-+ Flags uint8
-+ Master_key_descriptor [8]uint8
-+}
-+
-+type FscryptKey struct {
-+ Mode uint32
-+ Raw [64]uint8
-+ Size uint32
-+}
-+
-+type FscryptPolicyV1 struct {
-+ Version uint8
-+ Contents_encryption_mode uint8
-+ Filenames_encryption_mode uint8
-+ Flags uint8
-+ Master_key_descriptor [8]uint8
-+}
-+
-+type FscryptPolicyV2 struct {
-+ Version uint8
-+ Contents_encryption_mode uint8
-+ Filenames_encryption_mode uint8
-+ Flags uint8
-+ _ [4]uint8
-+ Master_key_identifier [16]uint8
-+}
-+
-+type FscryptGetPolicyExArg struct {
-+ Size uint64
-+ Policy [24]byte
-+}
-+
-+type FscryptKeySpecifier struct {
-+ Type uint32
-+ _ uint32
-+ U [32]byte
-+}
-+
-+type FscryptAddKeyArg struct {
-+ Key_spec FscryptKeySpecifier
-+ Raw_size uint32
-+ Key_id uint32
-+ _ [8]uint32
-+}
-+
-+type FscryptRemoveKeyArg struct {
-+ Key_spec FscryptKeySpecifier
-+ Removal_status_flags uint32
-+ _ [5]uint32
-+}
-+
-+type FscryptGetKeyStatusArg struct {
-+ Key_spec FscryptKeySpecifier
-+ _ [6]uint32
-+ Status uint32
-+ Status_flags uint32
-+ User_count uint32
-+ _ [13]uint32
-+}
-+
-+type KeyctlDHParams struct {
-+ Private int32
-+ Prime int32
-+ Base int32
-+}
-+
-+const (
-+ FADV_NORMAL = 0x0
-+ FADV_RANDOM = 0x1
-+ FADV_SEQUENTIAL = 0x2
-+ FADV_WILLNEED = 0x3
-+)
-+
-+type RawSockaddrInet4 struct {
-+ Family uint16
-+ Port uint16
-+ Addr [4]byte /* in_addr */
-+ Zero [8]uint8
-+}
-+
-+type RawSockaddrInet6 struct {
-+ Family uint16
-+ Port uint16
-+ Flowinfo uint32
-+ Addr [16]byte /* in6_addr */
-+ Scope_id uint32
-+}
-+
-+type RawSockaddrUnix struct {
-+ Family uint16
-+ Path [108]int8
-+}
-+
-+type RawSockaddrLinklayer struct {
-+ Family uint16
-+ Protocol uint16
-+ Ifindex int32
-+ Hatype uint16
-+ Pkttype uint8
-+ Halen uint8
-+ Addr [8]uint8
-+}
-+
-+type RawSockaddrNetlink struct {
-+ Family uint16
-+ Pad uint16
-+ Pid uint32
-+ Groups uint32
-+}
-+
-+type RawSockaddrHCI struct {
-+ Family uint16
-+ Dev uint16
-+ Channel uint16
-+}
-+
-+type RawSockaddrL2 struct {
-+ Family uint16
-+ Psm uint16
-+ Bdaddr [6]uint8
-+ Cid uint16
-+ Bdaddr_type uint8
-+ _ [1]byte
-+}
-+
-+type RawSockaddrRFCOMM struct {
-+ Family uint16
-+ Bdaddr [6]uint8
-+ Channel uint8
-+ _ [1]byte
-+}
-+
-+type RawSockaddrCAN struct {
-+ Family uint16
-+ Ifindex int32
-+ Addr [16]byte
-+}
-+
-+type RawSockaddrALG struct {
-+ Family uint16
-+ Type [14]uint8
-+ Feat uint32
-+ Mask uint32
-+ Name [64]uint8
-+}
-+
-+type RawSockaddrVM struct {
-+ Family uint16
-+ Reserved1 uint16
-+ Port uint32
-+ Cid uint32
-+ Zero [4]uint8
-+}
-+
-+type RawSockaddrXDP struct {
-+ Family uint16
-+ Flags uint16
-+ Ifindex uint32
-+ Queue_id uint32
-+ Shared_umem_fd uint32
-+}
-+
-+type RawSockaddrPPPoX [0x1e]byte
-+
-+type RawSockaddrTIPC struct {
-+ Family uint16
-+ Addrtype uint8
-+ Scope int8
-+ Addr [12]byte
-+}
-+
-+type RawSockaddrL2TPIP struct {
-+ Family uint16
-+ Unused uint16
-+ Addr [4]byte /* in_addr */
-+ Conn_id uint32
-+ _ [4]uint8
-+}
-+
-+type RawSockaddrL2TPIP6 struct {
-+ Family uint16
-+ Unused uint16
-+ Flowinfo uint32
-+ Addr [16]byte /* in6_addr */
-+ Scope_id uint32
-+ Conn_id uint32
-+}
-+
-+type _Socklen uint32
-+
-+type Linger struct {
-+ Onoff int32
-+ Linger int32
-+}
-+
-+type IPMreq struct {
-+ Multiaddr [4]byte /* in_addr */
-+ Interface [4]byte /* in_addr */
-+}
-+
-+type IPMreqn struct {
-+ Multiaddr [4]byte /* in_addr */
-+ Address [4]byte /* in_addr */
-+ Ifindex int32
-+}
-+
-+type IPv6Mreq struct {
-+ Multiaddr [16]byte /* in6_addr */
-+ Interface uint32
-+}
-+
-+type PacketMreq struct {
-+ Ifindex int32
-+ Type uint16
-+ Alen uint16
-+ Address [8]uint8
-+}
-+
-+type Inet4Pktinfo struct {
-+ Ifindex int32
-+ Spec_dst [4]byte /* in_addr */
-+ Addr [4]byte /* in_addr */
-+}
-+
-+type Inet6Pktinfo struct {
-+ Addr [16]byte /* in6_addr */
-+ Ifindex uint32
-+}
-+
-+type IPv6MTUInfo struct {
-+ Addr RawSockaddrInet6
-+ Mtu uint32
-+}
-+
-+type ICMPv6Filter struct {
-+ Data [8]uint32
-+}
-+
-+type Ucred struct {
-+ Pid int32
-+ Uid uint32
-+ Gid uint32
-+}
-+
-+type TCPInfo struct {
-+ State uint8
-+ Ca_state uint8
-+ Retransmits uint8
-+ Probes uint8
-+ Backoff uint8
-+ Options uint8
-+ Rto uint32
-+ Ato uint32
-+ Snd_mss uint32
-+ Rcv_mss uint32
-+ Unacked uint32
-+ Sacked uint32
-+ Lost uint32
-+ Retrans uint32
-+ Fackets uint32
-+ Last_data_sent uint32
-+ Last_ack_sent uint32
-+ Last_data_recv uint32
-+ Last_ack_recv uint32
-+ Pmtu uint32
-+ Rcv_ssthresh uint32
-+ Rtt uint32
-+ Rttvar uint32
-+ Snd_ssthresh uint32
-+ Snd_cwnd uint32
-+ Advmss uint32
-+ Reordering uint32
-+ Rcv_rtt uint32
-+ Rcv_space uint32
-+ Total_retrans uint32
-+}
-+
-+type CanFilter struct {
-+ Id uint32
-+ Mask uint32
-+}
-+
-+const (
-+ SizeofSockaddrInet4 = 0x10
-+ SizeofSockaddrInet6 = 0x1c
-+ SizeofSockaddrAny = 0x70
-+ SizeofSockaddrUnix = 0x6e
-+ SizeofSockaddrLinklayer = 0x14
-+ SizeofSockaddrNetlink = 0xc
-+ SizeofSockaddrHCI = 0x6
-+ SizeofSockaddrL2 = 0xe
-+ SizeofSockaddrRFCOMM = 0xa
-+ SizeofSockaddrCAN = 0x18
-+ SizeofSockaddrALG = 0x58
-+ SizeofSockaddrVM = 0x10
-+ SizeofSockaddrXDP = 0x10
-+ SizeofSockaddrPPPoX = 0x1e
-+ SizeofSockaddrTIPC = 0x10
-+ SizeofSockaddrL2TPIP = 0x10
-+ SizeofSockaddrL2TPIP6 = 0x20
-+ SizeofLinger = 0x8
-+ SizeofIPMreq = 0x8
-+ SizeofIPMreqn = 0xc
-+ SizeofIPv6Mreq = 0x14
-+ SizeofPacketMreq = 0x10
-+ SizeofInet4Pktinfo = 0xc
-+ SizeofInet6Pktinfo = 0x14
-+ SizeofIPv6MTUInfo = 0x20
-+ SizeofICMPv6Filter = 0x20
-+ SizeofUcred = 0xc
-+ SizeofTCPInfo = 0x68
-+ SizeofCanFilter = 0x8
-+)
-+
-+const (
-+ NDA_UNSPEC = 0x0
-+ NDA_DST = 0x1
-+ NDA_LLADDR = 0x2
-+ NDA_CACHEINFO = 0x3
-+ NDA_PROBES = 0x4
-+ NDA_VLAN = 0x5
-+ NDA_PORT = 0x6
-+ NDA_VNI = 0x7
-+ NDA_IFINDEX = 0x8
-+ NDA_MASTER = 0x9
-+ NDA_LINK_NETNSID = 0xa
-+ NDA_SRC_VNI = 0xb
-+ NTF_USE = 0x1
-+ NTF_SELF = 0x2
-+ NTF_MASTER = 0x4
-+ NTF_PROXY = 0x8
-+ NTF_EXT_LEARNED = 0x10
-+ NTF_OFFLOADED = 0x20
-+ NTF_ROUTER = 0x80
-+ NUD_INCOMPLETE = 0x1
-+ NUD_REACHABLE = 0x2
-+ NUD_STALE = 0x4
-+ NUD_DELAY = 0x8
-+ NUD_PROBE = 0x10
-+ NUD_FAILED = 0x20
-+ NUD_NOARP = 0x40
-+ NUD_PERMANENT = 0x80
-+ NUD_NONE = 0x0
-+ IFA_UNSPEC = 0x0
-+ IFA_ADDRESS = 0x1
-+ IFA_LOCAL = 0x2
-+ IFA_LABEL = 0x3
-+ IFA_BROADCAST = 0x4
-+ IFA_ANYCAST = 0x5
-+ IFA_CACHEINFO = 0x6
-+ IFA_MULTICAST = 0x7
-+ IFA_FLAGS = 0x8
-+ IFA_RT_PRIORITY = 0x9
-+ IFA_TARGET_NETNSID = 0xa
-+ IFLA_UNSPEC = 0x0
-+ IFLA_ADDRESS = 0x1
-+ IFLA_BROADCAST = 0x2
-+ IFLA_IFNAME = 0x3
-+ IFLA_MTU = 0x4
-+ IFLA_LINK = 0x5
-+ IFLA_QDISC = 0x6
-+ IFLA_STATS = 0x7
-+ IFLA_COST = 0x8
-+ IFLA_PRIORITY = 0x9
-+ IFLA_MASTER = 0xa
-+ IFLA_WIRELESS = 0xb
-+ IFLA_PROTINFO = 0xc
-+ IFLA_TXQLEN = 0xd
-+ IFLA_MAP = 0xe
-+ IFLA_WEIGHT = 0xf
-+ IFLA_OPERSTATE = 0x10
-+ IFLA_LINKMODE = 0x11
-+ IFLA_LINKINFO = 0x12
-+ IFLA_NET_NS_PID = 0x13
-+ IFLA_IFALIAS = 0x14
-+ IFLA_NUM_VF = 0x15
-+ IFLA_VFINFO_LIST = 0x16
-+ IFLA_STATS64 = 0x17
-+ IFLA_VF_PORTS = 0x18
-+ IFLA_PORT_SELF = 0x19
-+ IFLA_AF_SPEC = 0x1a
-+ IFLA_GROUP = 0x1b
-+ IFLA_NET_NS_FD = 0x1c
-+ IFLA_EXT_MASK = 0x1d
-+ IFLA_PROMISCUITY = 0x1e
-+ IFLA_NUM_TX_QUEUES = 0x1f
-+ IFLA_NUM_RX_QUEUES = 0x20
-+ IFLA_CARRIER = 0x21
-+ IFLA_PHYS_PORT_ID = 0x22
-+ IFLA_CARRIER_CHANGES = 0x23
-+ IFLA_PHYS_SWITCH_ID = 0x24
-+ IFLA_LINK_NETNSID = 0x25
-+ IFLA_PHYS_PORT_NAME = 0x26
-+ IFLA_PROTO_DOWN = 0x27
-+ IFLA_GSO_MAX_SEGS = 0x28
-+ IFLA_GSO_MAX_SIZE = 0x29
-+ IFLA_PAD = 0x2a
-+ IFLA_XDP = 0x2b
-+ IFLA_EVENT = 0x2c
-+ IFLA_NEW_NETNSID = 0x2d
-+ IFLA_IF_NETNSID = 0x2e
-+ IFLA_TARGET_NETNSID = 0x2e
-+ IFLA_CARRIER_UP_COUNT = 0x2f
-+ IFLA_CARRIER_DOWN_COUNT = 0x30
-+ IFLA_NEW_IFINDEX = 0x31
-+ IFLA_MIN_MTU = 0x32
-+ IFLA_MAX_MTU = 0x33
-+ IFLA_MAX = 0x36
-+ IFLA_INFO_KIND = 0x1
-+ IFLA_INFO_DATA = 0x2
-+ IFLA_INFO_XSTATS = 0x3
-+ IFLA_INFO_SLAVE_KIND = 0x4
-+ IFLA_INFO_SLAVE_DATA = 0x5
-+ RT_SCOPE_UNIVERSE = 0x0
-+ RT_SCOPE_SITE = 0xc8
-+ RT_SCOPE_LINK = 0xfd
-+ RT_SCOPE_HOST = 0xfe
-+ RT_SCOPE_NOWHERE = 0xff
-+ RT_TABLE_UNSPEC = 0x0
-+ RT_TABLE_COMPAT = 0xfc
-+ RT_TABLE_DEFAULT = 0xfd
-+ RT_TABLE_MAIN = 0xfe
-+ RT_TABLE_LOCAL = 0xff
-+ RT_TABLE_MAX = 0xffffffff
-+ RTA_UNSPEC = 0x0
-+ RTA_DST = 0x1
-+ RTA_SRC = 0x2
-+ RTA_IIF = 0x3
-+ RTA_OIF = 0x4
-+ RTA_GATEWAY = 0x5
-+ RTA_PRIORITY = 0x6
-+ RTA_PREFSRC = 0x7
-+ RTA_METRICS = 0x8
-+ RTA_MULTIPATH = 0x9
-+ RTA_FLOW = 0xb
-+ RTA_CACHEINFO = 0xc
-+ RTA_TABLE = 0xf
-+ RTA_MARK = 0x10
-+ RTA_MFC_STATS = 0x11
-+ RTA_VIA = 0x12
-+ RTA_NEWDST = 0x13
-+ RTA_PREF = 0x14
-+ RTA_ENCAP_TYPE = 0x15
-+ RTA_ENCAP = 0x16
-+ RTA_EXPIRES = 0x17
-+ RTA_PAD = 0x18
-+ RTA_UID = 0x19
-+ RTA_TTL_PROPAGATE = 0x1a
-+ RTA_IP_PROTO = 0x1b
-+ RTA_SPORT = 0x1c
-+ RTA_DPORT = 0x1d
-+ RTN_UNSPEC = 0x0
-+ RTN_UNICAST = 0x1
-+ RTN_LOCAL = 0x2
-+ RTN_BROADCAST = 0x3
-+ RTN_ANYCAST = 0x4
-+ RTN_MULTICAST = 0x5
-+ RTN_BLACKHOLE = 0x6
-+ RTN_UNREACHABLE = 0x7
-+ RTN_PROHIBIT = 0x8
-+ RTN_THROW = 0x9
-+ RTN_NAT = 0xa
-+ RTN_XRESOLVE = 0xb
-+ SizeofNlMsghdr = 0x10
-+ SizeofNlMsgerr = 0x14
-+ SizeofRtGenmsg = 0x1
-+ SizeofNlAttr = 0x4
-+ SizeofRtAttr = 0x4
-+ SizeofIfInfomsg = 0x10
-+ SizeofIfAddrmsg = 0x8
-+ SizeofIfaCacheinfo = 0x10
-+ SizeofRtMsg = 0xc
-+ SizeofRtNexthop = 0x8
-+ SizeofNdUseroptmsg = 0x10
-+ SizeofNdMsg = 0xc
-+)
-+
-+type NlMsghdr struct {
-+ Len uint32
-+ Type uint16
-+ Flags uint16
-+ Seq uint32
-+ Pid uint32
-+}
-+
-+type NlMsgerr struct {
-+ Error int32
-+ Msg NlMsghdr
-+}
-+
-+type RtGenmsg struct {
-+ Family uint8
-+}
-+
-+type NlAttr struct {
-+ Len uint16
-+ Type uint16
-+}
-+
-+type RtAttr struct {
-+ Len uint16
-+ Type uint16
-+}
-+
-+type IfInfomsg struct {
-+ Family uint8
-+ _ uint8
-+ Type uint16
-+ Index int32
-+ Flags uint32
-+ Change uint32
-+}
-+
-+type IfAddrmsg struct {
-+ Family uint8
-+ Prefixlen uint8
-+ Flags uint8
-+ Scope uint8
-+ Index uint32
-+}
-+
-+type IfaCacheinfo struct {
-+ Prefered uint32
-+ Valid uint32
-+ Cstamp uint32
-+ Tstamp uint32
-+}
-+
-+type RtMsg struct {
-+ Family uint8
-+ Dst_len uint8
-+ Src_len uint8
-+ Tos uint8
-+ Table uint8
-+ Protocol uint8
-+ Scope uint8
-+ Type uint8
-+ Flags uint32
-+}
-+
-+type RtNexthop struct {
-+ Len uint16
-+ Flags uint8
-+ Hops uint8
-+ Ifindex int32
-+}
-+
-+type NdUseroptmsg struct {
-+ Family uint8
-+ Pad1 uint8
-+ Opts_len uint16
-+ Ifindex int32
-+ Icmp_type uint8
-+ Icmp_code uint8
-+ Pad2 uint16
-+ Pad3 uint32
-+}
-+
-+type NdMsg struct {
-+ Family uint8
-+ Pad1 uint8
-+ Pad2 uint16
-+ Ifindex int32
-+ State uint16
-+ Flags uint8
-+ Type uint8
-+}
-+
-+const (
-+ SizeofSockFilter = 0x8
-+)
-+
-+type SockFilter struct {
-+ Code uint16
-+ Jt uint8
-+ Jf uint8
-+ K uint32
-+}
-+
-+type SockFprog struct {
-+ Len uint16
-+ Filter *SockFilter
-+}
-+
-+type InotifyEvent struct {
-+ Wd int32
-+ Mask uint32
-+ Cookie uint32
-+ Len uint32
-+}
-+
-+const SizeofInotifyEvent = 0x10
-+
-+type Utsname struct {
-+ Sysname [65]byte
-+ Nodename [65]byte
-+ Release [65]byte
-+ Version [65]byte
-+ Machine [65]byte
-+ Domainname [65]byte
-+}
-+
-+const (
-+ AT_EMPTY_PATH = 0x1000
-+ AT_FDCWD = -0x64
-+ AT_NO_AUTOMOUNT = 0x800
-+ AT_REMOVEDIR = 0x200
-+
-+ AT_STATX_SYNC_AS_STAT = 0x0
-+ AT_STATX_FORCE_SYNC = 0x2000
-+ AT_STATX_DONT_SYNC = 0x4000
-+
-+ AT_SYMLINK_FOLLOW = 0x400
-+ AT_SYMLINK_NOFOLLOW = 0x100
-+
-+ AT_EACCESS = 0x200
-+)
-+
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLIN = 0x1
-+ POLLPRI = 0x2
-+ POLLOUT = 0x4
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLNVAL = 0x20
-+)
-+
-+type SignalfdSiginfo struct {
-+ Signo uint32
-+ Errno int32
-+ Code int32
-+ Pid uint32
-+ Uid uint32
-+ Fd int32
-+ Tid uint32
-+ Band uint32
-+ Overrun uint32
-+ Trapno uint32
-+ Status int32
-+ Int int32
-+ Ptr uint64
-+ Utime uint64
-+ Stime uint64
-+ Addr uint64
-+ Addr_lsb uint16
-+ _ uint16
-+ Syscall int32
-+ Call_addr uint64
-+ Arch uint32
-+ _ [28]uint8
-+}
-+
-+const PERF_IOC_FLAG_GROUP = 0x1
-+
-+type Winsize struct {
-+ Row uint16
-+ Col uint16
-+ Xpixel uint16
-+ Ypixel uint16
-+}
-+
-+const (
-+ TASKSTATS_CMD_UNSPEC = 0x0
-+ TASKSTATS_CMD_GET = 0x1
-+ TASKSTATS_CMD_NEW = 0x2
-+ TASKSTATS_TYPE_UNSPEC = 0x0
-+ TASKSTATS_TYPE_PID = 0x1
-+ TASKSTATS_TYPE_TGID = 0x2
-+ TASKSTATS_TYPE_STATS = 0x3
-+ TASKSTATS_TYPE_AGGR_PID = 0x4
-+ TASKSTATS_TYPE_AGGR_TGID = 0x5
-+ TASKSTATS_TYPE_NULL = 0x6
-+ TASKSTATS_CMD_ATTR_UNSPEC = 0x0
-+ TASKSTATS_CMD_ATTR_PID = 0x1
-+ TASKSTATS_CMD_ATTR_TGID = 0x2
-+ TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
-+ TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-+)
-+
-+type CGroupStats struct {
-+ Sleeping uint64
-+ Running uint64
-+ Stopped uint64
-+ Uninterruptible uint64
-+ Io_wait uint64
-+}
-+
-+const (
-+ CGROUPSTATS_CMD_UNSPEC = 0x3
-+ CGROUPSTATS_CMD_GET = 0x4
-+ CGROUPSTATS_CMD_NEW = 0x5
-+ CGROUPSTATS_TYPE_UNSPEC = 0x0
-+ CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-+ CGROUPSTATS_CMD_ATTR_UNSPEC = 0x0
-+ CGROUPSTATS_CMD_ATTR_FD = 0x1
-+)
-+
-+type Genlmsghdr struct {
-+ Cmd uint8
-+ Version uint8
-+ Reserved uint16
-+}
-+
-+const (
-+ CTRL_CMD_UNSPEC = 0x0
-+ CTRL_CMD_NEWFAMILY = 0x1
-+ CTRL_CMD_DELFAMILY = 0x2
-+ CTRL_CMD_GETFAMILY = 0x3
-+ CTRL_CMD_NEWOPS = 0x4
-+ CTRL_CMD_DELOPS = 0x5
-+ CTRL_CMD_GETOPS = 0x6
-+ CTRL_CMD_NEWMCAST_GRP = 0x7
-+ CTRL_CMD_DELMCAST_GRP = 0x8
-+ CTRL_CMD_GETMCAST_GRP = 0x9
-+ CTRL_ATTR_UNSPEC = 0x0
-+ CTRL_ATTR_FAMILY_ID = 0x1
-+ CTRL_ATTR_FAMILY_NAME = 0x2
-+ CTRL_ATTR_VERSION = 0x3
-+ CTRL_ATTR_HDRSIZE = 0x4
-+ CTRL_ATTR_MAXATTR = 0x5
-+ CTRL_ATTR_OPS = 0x6
-+ CTRL_ATTR_MCAST_GROUPS = 0x7
-+ CTRL_ATTR_OP_UNSPEC = 0x0
-+ CTRL_ATTR_OP_ID = 0x1
-+ CTRL_ATTR_OP_FLAGS = 0x2
-+ CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
-+ CTRL_ATTR_MCAST_GRP_NAME = 0x1
-+ CTRL_ATTR_MCAST_GRP_ID = 0x2
-+)
-+
-+const (
-+ _CPU_SETSIZE = 0x400
-+)
-+
-+const (
-+ BDADDR_BREDR = 0x0
-+ BDADDR_LE_PUBLIC = 0x1
-+ BDADDR_LE_RANDOM = 0x2
-+)
-+
-+type PerfEventAttr struct {
-+ Type uint32
-+ Size uint32
-+ Config uint64
-+ Sample uint64
-+ Sample_type uint64
-+ Read_format uint64
-+ Bits uint64
-+ Wakeup uint32
-+ Bp_type uint32
-+ Ext1 uint64
-+ Ext2 uint64
-+ Branch_sample_type uint64
-+ Sample_regs_user uint64
-+ Sample_stack_user uint32
-+ Clockid int32
-+ Sample_regs_intr uint64
-+ Aux_watermark uint32
-+ Sample_max_stack uint16
-+ _ uint16
-+}
-+
-+type PerfEventMmapPage struct {
-+ Version uint32
-+ Compat_version uint32
-+ Lock uint32
-+ Index uint32
-+ Offset int64
-+ Time_enabled uint64
-+ Time_running uint64
-+ Capabilities uint64
-+ Pmc_width uint16
-+ Time_shift uint16
-+ Time_mult uint32
-+ Time_offset uint64
-+ Time_zero uint64
-+ Size uint32
-+ _ [948]uint8
-+ Data_head uint64
-+ Data_tail uint64
-+ Data_offset uint64
-+ Data_size uint64
-+ Aux_head uint64
-+ Aux_tail uint64
-+ Aux_offset uint64
-+ Aux_size uint64
-+}
-+
-+const (
-+ PerfBitDisabled uint64 = CBitFieldMaskBit0
-+ PerfBitInherit = CBitFieldMaskBit1
-+ PerfBitPinned = CBitFieldMaskBit2
-+ PerfBitExclusive = CBitFieldMaskBit3
-+ PerfBitExcludeUser = CBitFieldMaskBit4
-+ PerfBitExcludeKernel = CBitFieldMaskBit5
-+ PerfBitExcludeHv = CBitFieldMaskBit6
-+ PerfBitExcludeIdle = CBitFieldMaskBit7
-+ PerfBitMmap = CBitFieldMaskBit8
-+ PerfBitComm = CBitFieldMaskBit9
-+ PerfBitFreq = CBitFieldMaskBit10
-+ PerfBitInheritStat = CBitFieldMaskBit11
-+ PerfBitEnableOnExec = CBitFieldMaskBit12
-+ PerfBitTask = CBitFieldMaskBit13
-+ PerfBitWatermark = CBitFieldMaskBit14
-+ PerfBitPreciseIPBit1 = CBitFieldMaskBit15
-+ PerfBitPreciseIPBit2 = CBitFieldMaskBit16
-+ PerfBitMmapData = CBitFieldMaskBit17
-+ PerfBitSampleIDAll = CBitFieldMaskBit18
-+ PerfBitExcludeHost = CBitFieldMaskBit19
-+ PerfBitExcludeGuest = CBitFieldMaskBit20
-+ PerfBitExcludeCallchainKernel = CBitFieldMaskBit21
-+ PerfBitExcludeCallchainUser = CBitFieldMaskBit22
-+ PerfBitMmap2 = CBitFieldMaskBit23
-+ PerfBitCommExec = CBitFieldMaskBit24
-+ PerfBitUseClockID = CBitFieldMaskBit25
-+ PerfBitContextSwitch = CBitFieldMaskBit26
-+)
-+
-+const (
-+ PERF_TYPE_HARDWARE = 0x0
-+ PERF_TYPE_SOFTWARE = 0x1
-+ PERF_TYPE_TRACEPOINT = 0x2
-+ PERF_TYPE_HW_CACHE = 0x3
-+ PERF_TYPE_RAW = 0x4
-+ PERF_TYPE_BREAKPOINT = 0x5
-+
-+ PERF_COUNT_HW_CPU_CYCLES = 0x0
-+ PERF_COUNT_HW_INSTRUCTIONS = 0x1
-+ PERF_COUNT_HW_CACHE_REFERENCES = 0x2
-+ PERF_COUNT_HW_CACHE_MISSES = 0x3
-+ PERF_COUNT_HW_BRANCH_INSTRUCTIONS = 0x4
-+ PERF_COUNT_HW_BRANCH_MISSES = 0x5
-+ PERF_COUNT_HW_BUS_CYCLES = 0x6
-+ PERF_COUNT_HW_STALLED_CYCLES_FRONTEND = 0x7
-+ PERF_COUNT_HW_STALLED_CYCLES_BACKEND = 0x8
-+ PERF_COUNT_HW_REF_CPU_CYCLES = 0x9
-+
-+ PERF_COUNT_HW_CACHE_L1D = 0x0
-+ PERF_COUNT_HW_CACHE_L1I = 0x1
-+ PERF_COUNT_HW_CACHE_LL = 0x2
-+ PERF_COUNT_HW_CACHE_DTLB = 0x3
-+ PERF_COUNT_HW_CACHE_ITLB = 0x4
-+ PERF_COUNT_HW_CACHE_BPU = 0x5
-+ PERF_COUNT_HW_CACHE_NODE = 0x6
-+
-+ PERF_COUNT_HW_CACHE_OP_READ = 0x0
-+ PERF_COUNT_HW_CACHE_OP_WRITE = 0x1
-+ PERF_COUNT_HW_CACHE_OP_PREFETCH = 0x2
-+
-+ PERF_COUNT_HW_CACHE_RESULT_ACCESS = 0x0
-+ PERF_COUNT_HW_CACHE_RESULT_MISS = 0x1
-+
-+ PERF_COUNT_SW_CPU_CLOCK = 0x0
-+ PERF_COUNT_SW_TASK_CLOCK = 0x1
-+ PERF_COUNT_SW_PAGE_FAULTS = 0x2
-+ PERF_COUNT_SW_CONTEXT_SWITCHES = 0x3
-+ PERF_COUNT_SW_CPU_MIGRATIONS = 0x4
-+ PERF_COUNT_SW_PAGE_FAULTS_MIN = 0x5
-+ PERF_COUNT_SW_PAGE_FAULTS_MAJ = 0x6
-+ PERF_COUNT_SW_ALIGNMENT_FAULTS = 0x7
-+ PERF_COUNT_SW_EMULATION_FAULTS = 0x8
-+ PERF_COUNT_SW_DUMMY = 0x9
-+ PERF_COUNT_SW_BPF_OUTPUT = 0xa
-+
-+ PERF_SAMPLE_IP = 0x1
-+ PERF_SAMPLE_TID = 0x2
-+ PERF_SAMPLE_TIME = 0x4
-+ PERF_SAMPLE_ADDR = 0x8
-+ PERF_SAMPLE_READ = 0x10
-+ PERF_SAMPLE_CALLCHAIN = 0x20
-+ PERF_SAMPLE_ID = 0x40
-+ PERF_SAMPLE_CPU = 0x80
-+ PERF_SAMPLE_PERIOD = 0x100
-+ PERF_SAMPLE_STREAM_ID = 0x200
-+ PERF_SAMPLE_RAW = 0x400
-+ PERF_SAMPLE_BRANCH_STACK = 0x800
-+
-+ PERF_SAMPLE_BRANCH_USER = 0x1
-+ PERF_SAMPLE_BRANCH_KERNEL = 0x2
-+ PERF_SAMPLE_BRANCH_HV = 0x4
-+ PERF_SAMPLE_BRANCH_ANY = 0x8
-+ PERF_SAMPLE_BRANCH_ANY_CALL = 0x10
-+ PERF_SAMPLE_BRANCH_ANY_RETURN = 0x20
-+ PERF_SAMPLE_BRANCH_IND_CALL = 0x40
-+ PERF_SAMPLE_BRANCH_ABORT_TX = 0x80
-+ PERF_SAMPLE_BRANCH_IN_TX = 0x100
-+ PERF_SAMPLE_BRANCH_NO_TX = 0x200
-+ PERF_SAMPLE_BRANCH_COND = 0x400
-+ PERF_SAMPLE_BRANCH_CALL_STACK = 0x800
-+ PERF_SAMPLE_BRANCH_IND_JUMP = 0x1000
-+ PERF_SAMPLE_BRANCH_CALL = 0x2000
-+ PERF_SAMPLE_BRANCH_NO_FLAGS = 0x4000
-+ PERF_SAMPLE_BRANCH_NO_CYCLES = 0x8000
-+ PERF_SAMPLE_BRANCH_TYPE_SAVE = 0x10000
-+
-+ PERF_FORMAT_TOTAL_TIME_ENABLED = 0x1
-+ PERF_FORMAT_TOTAL_TIME_RUNNING = 0x2
-+ PERF_FORMAT_ID = 0x4
-+ PERF_FORMAT_GROUP = 0x8
-+
-+ PERF_RECORD_MMAP = 0x1
-+ PERF_RECORD_LOST = 0x2
-+ PERF_RECORD_COMM = 0x3
-+ PERF_RECORD_EXIT = 0x4
-+ PERF_RECORD_THROTTLE = 0x5
-+ PERF_RECORD_UNTHROTTLE = 0x6
-+ PERF_RECORD_FORK = 0x7
-+ PERF_RECORD_READ = 0x8
-+ PERF_RECORD_SAMPLE = 0x9
-+ PERF_RECORD_MMAP2 = 0xa
-+ PERF_RECORD_AUX = 0xb
-+ PERF_RECORD_ITRACE_START = 0xc
-+ PERF_RECORD_LOST_SAMPLES = 0xd
-+ PERF_RECORD_SWITCH = 0xe
-+ PERF_RECORD_SWITCH_CPU_WIDE = 0xf
-+ PERF_RECORD_NAMESPACES = 0x10
-+
-+ PERF_CONTEXT_HV = -0x20
-+ PERF_CONTEXT_KERNEL = -0x80
-+ PERF_CONTEXT_USER = -0x200
-+
-+ PERF_CONTEXT_GUEST = -0x800
-+ PERF_CONTEXT_GUEST_KERNEL = -0x880
-+ PERF_CONTEXT_GUEST_USER = -0xa00
-+
-+ PERF_FLAG_FD_NO_GROUP = 0x1
-+ PERF_FLAG_FD_OUTPUT = 0x2
-+ PERF_FLAG_PID_CGROUP = 0x4
-+ PERF_FLAG_FD_CLOEXEC = 0x8
-+)
-+
-+type TCPMD5Sig struct {
-+ Addr SockaddrStorage
-+ Flags uint8
-+ Prefixlen uint8
-+ Keylen uint16
-+ _ uint32
-+ Key [80]uint8
-+}
-+
-+type HDDriveCmdHdr struct {
-+ Command uint8
-+ Number uint8
-+ Feature uint8
-+ Count uint8
-+}
-+
-+type HDDriveID struct {
-+ Config uint16
-+ Cyls uint16
-+ Reserved2 uint16
-+ Heads uint16
-+ Track_bytes uint16
-+ Sector_bytes uint16
-+ Sectors uint16
-+ Vendor0 uint16
-+ Vendor1 uint16
-+ Vendor2 uint16
-+ Serial_no [20]uint8
-+ Buf_type uint16
-+ Buf_size uint16
-+ Ecc_bytes uint16
-+ Fw_rev [8]uint8
-+ Model [40]uint8
-+ Max_multsect uint8
-+ Vendor3 uint8
-+ Dword_io uint16
-+ Vendor4 uint8
-+ Capability uint8
-+ Reserved50 uint16
-+ Vendor5 uint8
-+ TPIO uint8
-+ Vendor6 uint8
-+ TDMA uint8
-+ Field_valid uint16
-+ Cur_cyls uint16
-+ Cur_heads uint16
-+ Cur_sectors uint16
-+ Cur_capacity0 uint16
-+ Cur_capacity1 uint16
-+ Multsect uint8
-+ Multsect_valid uint8
-+ Lba_capacity uint32
-+ Dma_1word uint16
-+ Dma_mword uint16
-+ Eide_pio_modes uint16
-+ Eide_dma_min uint16
-+ Eide_dma_time uint16
-+ Eide_pio uint16
-+ Eide_pio_iordy uint16
-+ Words69_70 [2]uint16
-+ Words71_74 [4]uint16
-+ Queue_depth uint16
-+ Words76_79 [4]uint16
-+ Major_rev_num uint16
-+ Minor_rev_num uint16
-+ Command_set_1 uint16
-+ Command_set_2 uint16
-+ Cfsse uint16
-+ Cfs_enable_1 uint16
-+ Cfs_enable_2 uint16
-+ Csf_default uint16
-+ Dma_ultra uint16
-+ Trseuc uint16
-+ TrsEuc uint16
-+ CurAPMvalues uint16
-+ Mprc uint16
-+ Hw_config uint16
-+ Acoustic uint16
-+ Msrqs uint16
-+ Sxfert uint16
-+ Sal uint16
-+ Spg uint32
-+ Lba_capacity_2 uint64
-+ Words104_125 [22]uint16
-+ Last_lun uint16
-+ Word127 uint16
-+ Dlf uint16
-+ Csfo uint16
-+ Words130_155 [26]uint16
-+ Word156 uint16
-+ Words157_159 [3]uint16
-+ Cfa_power uint16
-+ Words161_175 [15]uint16
-+ Words176_205 [30]uint16
-+ Words206_254 [49]uint16
-+ Integrity_word uint16
-+}
-+
-+const (
-+ ST_MANDLOCK = 0x40
-+ ST_NOATIME = 0x400
-+ ST_NODEV = 0x4
-+ ST_NODIRATIME = 0x800
-+ ST_NOEXEC = 0x8
-+ ST_NOSUID = 0x2
-+ ST_RDONLY = 0x1
-+ ST_RELATIME = 0x1000
-+ ST_SYNCHRONOUS = 0x10
-+)
-+
-+type Tpacket2Hdr struct {
-+ Status uint32
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Nsec uint32
-+ Vlan_tci uint16
-+ Vlan_tpid uint16
-+ _ [4]uint8
-+}
-+
-+type Tpacket3Hdr struct {
-+ Next_offset uint32
-+ Sec uint32
-+ Nsec uint32
-+ Snaplen uint32
-+ Len uint32
-+ Status uint32
-+ Mac uint16
-+ Net uint16
-+ Hv1 TpacketHdrVariant1
-+ _ [8]uint8
-+}
-+
-+type TpacketHdrVariant1 struct {
-+ Rxhash uint32
-+ Vlan_tci uint32
-+ Vlan_tpid uint16
-+ _ uint16
-+}
-+
-+type TpacketBlockDesc struct {
-+ Version uint32
-+ To_priv uint32
-+ Hdr [40]byte
-+}
-+
-+type TpacketBDTS struct {
-+ Sec uint32
-+ Usec uint32
-+}
-+
-+type TpacketHdrV1 struct {
-+ Block_status uint32
-+ Num_pkts uint32
-+ Offset_to_first_pkt uint32
-+ Blk_len uint32
-+ Seq_num uint64
-+ Ts_first_pkt TpacketBDTS
-+ Ts_last_pkt TpacketBDTS
-+}
-+
-+type TpacketReq struct {
-+ Block_size uint32
-+ Block_nr uint32
-+ Frame_size uint32
-+ Frame_nr uint32
-+}
-+
-+type TpacketReq3 struct {
-+ Block_size uint32
-+ Block_nr uint32
-+ Frame_size uint32
-+ Frame_nr uint32
-+ Retire_blk_tov uint32
-+ Sizeof_priv uint32
-+ Feature_req_word uint32
-+}
-+
-+type TpacketStats struct {
-+ Packets uint32
-+ Drops uint32
-+}
-+
-+type TpacketStatsV3 struct {
-+ Packets uint32
-+ Drops uint32
-+ Freeze_q_cnt uint32
-+}
-+
-+type TpacketAuxdata struct {
-+ Status uint32
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Vlan_tci uint16
-+ Vlan_tpid uint16
-+}
-+
-+const (
-+ TPACKET_V1 = 0x0
-+ TPACKET_V2 = 0x1
-+ TPACKET_V3 = 0x2
-+)
-+
-+const (
-+ SizeofTpacket2Hdr = 0x20
-+ SizeofTpacket3Hdr = 0x30
-+
-+ SizeofTpacketStats = 0x8
-+ SizeofTpacketStatsV3 = 0xc
-+)
-+
-+const (
-+ NF_INET_PRE_ROUTING = 0x0
-+ NF_INET_LOCAL_IN = 0x1
-+ NF_INET_FORWARD = 0x2
-+ NF_INET_LOCAL_OUT = 0x3
-+ NF_INET_POST_ROUTING = 0x4
-+ NF_INET_NUMHOOKS = 0x5
-+)
-+
-+const (
-+ NF_NETDEV_INGRESS = 0x0
-+ NF_NETDEV_NUMHOOKS = 0x1
-+)
-+
-+const (
-+ NFPROTO_UNSPEC = 0x0
-+ NFPROTO_INET = 0x1
-+ NFPROTO_IPV4 = 0x2
-+ NFPROTO_ARP = 0x3
-+ NFPROTO_NETDEV = 0x5
-+ NFPROTO_BRIDGE = 0x7
-+ NFPROTO_IPV6 = 0xa
-+ NFPROTO_DECNET = 0xc
-+ NFPROTO_NUMPROTO = 0xd
-+)
-+
-+type Nfgenmsg struct {
-+ Nfgen_family uint8
-+ Version uint8
-+ Res_id uint16
-+}
-+
-+const (
-+ NFNL_BATCH_UNSPEC = 0x0
-+ NFNL_BATCH_GENID = 0x1
-+)
-+
-+const (
-+ NFT_REG_VERDICT = 0x0
-+ NFT_REG_1 = 0x1
-+ NFT_REG_2 = 0x2
-+ NFT_REG_3 = 0x3
-+ NFT_REG_4 = 0x4
-+ NFT_REG32_00 = 0x8
-+ NFT_REG32_01 = 0x9
-+ NFT_REG32_02 = 0xa
-+ NFT_REG32_03 = 0xb
-+ NFT_REG32_04 = 0xc
-+ NFT_REG32_05 = 0xd
-+ NFT_REG32_06 = 0xe
-+ NFT_REG32_07 = 0xf
-+ NFT_REG32_08 = 0x10
-+ NFT_REG32_09 = 0x11
-+ NFT_REG32_10 = 0x12
-+ NFT_REG32_11 = 0x13
-+ NFT_REG32_12 = 0x14
-+ NFT_REG32_13 = 0x15
-+ NFT_REG32_14 = 0x16
-+ NFT_REG32_15 = 0x17
-+ NFT_CONTINUE = -0x1
-+ NFT_BREAK = -0x2
-+ NFT_JUMP = -0x3
-+ NFT_GOTO = -0x4
-+ NFT_RETURN = -0x5
-+ NFT_MSG_NEWTABLE = 0x0
-+ NFT_MSG_GETTABLE = 0x1
-+ NFT_MSG_DELTABLE = 0x2
-+ NFT_MSG_NEWCHAIN = 0x3
-+ NFT_MSG_GETCHAIN = 0x4
-+ NFT_MSG_DELCHAIN = 0x5
-+ NFT_MSG_NEWRULE = 0x6
-+ NFT_MSG_GETRULE = 0x7
-+ NFT_MSG_DELRULE = 0x8
-+ NFT_MSG_NEWSET = 0x9
-+ NFT_MSG_GETSET = 0xa
-+ NFT_MSG_DELSET = 0xb
-+ NFT_MSG_NEWSETELEM = 0xc
-+ NFT_MSG_GETSETELEM = 0xd
-+ NFT_MSG_DELSETELEM = 0xe
-+ NFT_MSG_NEWGEN = 0xf
-+ NFT_MSG_GETGEN = 0x10
-+ NFT_MSG_TRACE = 0x11
-+ NFT_MSG_NEWOBJ = 0x12
-+ NFT_MSG_GETOBJ = 0x13
-+ NFT_MSG_DELOBJ = 0x14
-+ NFT_MSG_GETOBJ_RESET = 0x15
-+ NFT_MSG_MAX = 0x19
-+ NFTA_LIST_UNPEC = 0x0
-+ NFTA_LIST_ELEM = 0x1
-+ NFTA_HOOK_UNSPEC = 0x0
-+ NFTA_HOOK_HOOKNUM = 0x1
-+ NFTA_HOOK_PRIORITY = 0x2
-+ NFTA_HOOK_DEV = 0x3
-+ NFT_TABLE_F_DORMANT = 0x1
-+ NFTA_TABLE_UNSPEC = 0x0
-+ NFTA_TABLE_NAME = 0x1
-+ NFTA_TABLE_FLAGS = 0x2
-+ NFTA_TABLE_USE = 0x3
-+ NFTA_CHAIN_UNSPEC = 0x0
-+ NFTA_CHAIN_TABLE = 0x1
-+ NFTA_CHAIN_HANDLE = 0x2
-+ NFTA_CHAIN_NAME = 0x3
-+ NFTA_CHAIN_HOOK = 0x4
-+ NFTA_CHAIN_POLICY = 0x5
-+ NFTA_CHAIN_USE = 0x6
-+ NFTA_CHAIN_TYPE = 0x7
-+ NFTA_CHAIN_COUNTERS = 0x8
-+ NFTA_CHAIN_PAD = 0x9
-+ NFTA_RULE_UNSPEC = 0x0
-+ NFTA_RULE_TABLE = 0x1
-+ NFTA_RULE_CHAIN = 0x2
-+ NFTA_RULE_HANDLE = 0x3
-+ NFTA_RULE_EXPRESSIONS = 0x4
-+ NFTA_RULE_COMPAT = 0x5
-+ NFTA_RULE_POSITION = 0x6
-+ NFTA_RULE_USERDATA = 0x7
-+ NFTA_RULE_PAD = 0x8
-+ NFTA_RULE_ID = 0x9
-+ NFT_RULE_COMPAT_F_INV = 0x2
-+ NFT_RULE_COMPAT_F_MASK = 0x2
-+ NFTA_RULE_COMPAT_UNSPEC = 0x0
-+ NFTA_RULE_COMPAT_PROTO = 0x1
-+ NFTA_RULE_COMPAT_FLAGS = 0x2
-+ NFT_SET_ANONYMOUS = 0x1
-+ NFT_SET_CONSTANT = 0x2
-+ NFT_SET_INTERVAL = 0x4
-+ NFT_SET_MAP = 0x8
-+ NFT_SET_TIMEOUT = 0x10
-+ NFT_SET_EVAL = 0x20
-+ NFT_SET_OBJECT = 0x40
-+ NFT_SET_POL_PERFORMANCE = 0x0
-+ NFT_SET_POL_MEMORY = 0x1
-+ NFTA_SET_DESC_UNSPEC = 0x0
-+ NFTA_SET_DESC_SIZE = 0x1
-+ NFTA_SET_UNSPEC = 0x0
-+ NFTA_SET_TABLE = 0x1
-+ NFTA_SET_NAME = 0x2
-+ NFTA_SET_FLAGS = 0x3
-+ NFTA_SET_KEY_TYPE = 0x4
-+ NFTA_SET_KEY_LEN = 0x5
-+ NFTA_SET_DATA_TYPE = 0x6
-+ NFTA_SET_DATA_LEN = 0x7
-+ NFTA_SET_POLICY = 0x8
-+ NFTA_SET_DESC = 0x9
-+ NFTA_SET_ID = 0xa
-+ NFTA_SET_TIMEOUT = 0xb
-+ NFTA_SET_GC_INTERVAL = 0xc
-+ NFTA_SET_USERDATA = 0xd
-+ NFTA_SET_PAD = 0xe
-+ NFTA_SET_OBJ_TYPE = 0xf
-+ NFT_SET_ELEM_INTERVAL_END = 0x1
-+ NFTA_SET_ELEM_UNSPEC = 0x0
-+ NFTA_SET_ELEM_KEY = 0x1
-+ NFTA_SET_ELEM_DATA = 0x2
-+ NFTA_SET_ELEM_FLAGS = 0x3
-+ NFTA_SET_ELEM_TIMEOUT = 0x4
-+ NFTA_SET_ELEM_EXPIRATION = 0x5
-+ NFTA_SET_ELEM_USERDATA = 0x6
-+ NFTA_SET_ELEM_EXPR = 0x7
-+ NFTA_SET_ELEM_PAD = 0x8
-+ NFTA_SET_ELEM_OBJREF = 0x9
-+ NFTA_SET_ELEM_LIST_UNSPEC = 0x0
-+ NFTA_SET_ELEM_LIST_TABLE = 0x1
-+ NFTA_SET_ELEM_LIST_SET = 0x2
-+ NFTA_SET_ELEM_LIST_ELEMENTS = 0x3
-+ NFTA_SET_ELEM_LIST_SET_ID = 0x4
-+ NFT_DATA_VALUE = 0x0
-+ NFT_DATA_VERDICT = 0xffffff00
-+ NFTA_DATA_UNSPEC = 0x0
-+ NFTA_DATA_VALUE = 0x1
-+ NFTA_DATA_VERDICT = 0x2
-+ NFTA_VERDICT_UNSPEC = 0x0
-+ NFTA_VERDICT_CODE = 0x1
-+ NFTA_VERDICT_CHAIN = 0x2
-+ NFTA_EXPR_UNSPEC = 0x0
-+ NFTA_EXPR_NAME = 0x1
-+ NFTA_EXPR_DATA = 0x2
-+ NFTA_IMMEDIATE_UNSPEC = 0x0
-+ NFTA_IMMEDIATE_DREG = 0x1
-+ NFTA_IMMEDIATE_DATA = 0x2
-+ NFTA_BITWISE_UNSPEC = 0x0
-+ NFTA_BITWISE_SREG = 0x1
-+ NFTA_BITWISE_DREG = 0x2
-+ NFTA_BITWISE_LEN = 0x3
-+ NFTA_BITWISE_MASK = 0x4
-+ NFTA_BITWISE_XOR = 0x5
-+ NFT_BYTEORDER_NTOH = 0x0
-+ NFT_BYTEORDER_HTON = 0x1
-+ NFTA_BYTEORDER_UNSPEC = 0x0
-+ NFTA_BYTEORDER_SREG = 0x1
-+ NFTA_BYTEORDER_DREG = 0x2
-+ NFTA_BYTEORDER_OP = 0x3
-+ NFTA_BYTEORDER_LEN = 0x4
-+ NFTA_BYTEORDER_SIZE = 0x5
-+ NFT_CMP_EQ = 0x0
-+ NFT_CMP_NEQ = 0x1
-+ NFT_CMP_LT = 0x2
-+ NFT_CMP_LTE = 0x3
-+ NFT_CMP_GT = 0x4
-+ NFT_CMP_GTE = 0x5
-+ NFTA_CMP_UNSPEC = 0x0
-+ NFTA_CMP_SREG = 0x1
-+ NFTA_CMP_OP = 0x2
-+ NFTA_CMP_DATA = 0x3
-+ NFT_RANGE_EQ = 0x0
-+ NFT_RANGE_NEQ = 0x1
-+ NFTA_RANGE_UNSPEC = 0x0
-+ NFTA_RANGE_SREG = 0x1
-+ NFTA_RANGE_OP = 0x2
-+ NFTA_RANGE_FROM_DATA = 0x3
-+ NFTA_RANGE_TO_DATA = 0x4
-+ NFT_LOOKUP_F_INV = 0x1
-+ NFTA_LOOKUP_UNSPEC = 0x0
-+ NFTA_LOOKUP_SET = 0x1
-+ NFTA_LOOKUP_SREG = 0x2
-+ NFTA_LOOKUP_DREG = 0x3
-+ NFTA_LOOKUP_SET_ID = 0x4
-+ NFTA_LOOKUP_FLAGS = 0x5
-+ NFT_DYNSET_OP_ADD = 0x0
-+ NFT_DYNSET_OP_UPDATE = 0x1
-+ NFT_DYNSET_F_INV = 0x1
-+ NFTA_DYNSET_UNSPEC = 0x0
-+ NFTA_DYNSET_SET_NAME = 0x1
-+ NFTA_DYNSET_SET_ID = 0x2
-+ NFTA_DYNSET_OP = 0x3
-+ NFTA_DYNSET_SREG_KEY = 0x4
-+ NFTA_DYNSET_SREG_DATA = 0x5
-+ NFTA_DYNSET_TIMEOUT = 0x6
-+ NFTA_DYNSET_EXPR = 0x7
-+ NFTA_DYNSET_PAD = 0x8
-+ NFTA_DYNSET_FLAGS = 0x9
-+ NFT_PAYLOAD_LL_HEADER = 0x0
-+ NFT_PAYLOAD_NETWORK_HEADER = 0x1
-+ NFT_PAYLOAD_TRANSPORT_HEADER = 0x2
-+ NFT_PAYLOAD_CSUM_NONE = 0x0
-+ NFT_PAYLOAD_CSUM_INET = 0x1
-+ NFT_PAYLOAD_L4CSUM_PSEUDOHDR = 0x1
-+ NFTA_PAYLOAD_UNSPEC = 0x0
-+ NFTA_PAYLOAD_DREG = 0x1
-+ NFTA_PAYLOAD_BASE = 0x2
-+ NFTA_PAYLOAD_OFFSET = 0x3
-+ NFTA_PAYLOAD_LEN = 0x4
-+ NFTA_PAYLOAD_SREG = 0x5
-+ NFTA_PAYLOAD_CSUM_TYPE = 0x6
-+ NFTA_PAYLOAD_CSUM_OFFSET = 0x7
-+ NFTA_PAYLOAD_CSUM_FLAGS = 0x8
-+ NFT_EXTHDR_F_PRESENT = 0x1
-+ NFT_EXTHDR_OP_IPV6 = 0x0
-+ NFT_EXTHDR_OP_TCPOPT = 0x1
-+ NFTA_EXTHDR_UNSPEC = 0x0
-+ NFTA_EXTHDR_DREG = 0x1
-+ NFTA_EXTHDR_TYPE = 0x2
-+ NFTA_EXTHDR_OFFSET = 0x3
-+ NFTA_EXTHDR_LEN = 0x4
-+ NFTA_EXTHDR_FLAGS = 0x5
-+ NFTA_EXTHDR_OP = 0x6
-+ NFTA_EXTHDR_SREG = 0x7
-+ NFT_META_LEN = 0x0
-+ NFT_META_PROTOCOL = 0x1
-+ NFT_META_PRIORITY = 0x2
-+ NFT_META_MARK = 0x3
-+ NFT_META_IIF = 0x4
-+ NFT_META_OIF = 0x5
-+ NFT_META_IIFNAME = 0x6
-+ NFT_META_OIFNAME = 0x7
-+ NFT_META_IIFTYPE = 0x8
-+ NFT_META_OIFTYPE = 0x9
-+ NFT_META_SKUID = 0xa
-+ NFT_META_SKGID = 0xb
-+ NFT_META_NFTRACE = 0xc
-+ NFT_META_RTCLASSID = 0xd
-+ NFT_META_SECMARK = 0xe
-+ NFT_META_NFPROTO = 0xf
-+ NFT_META_L4PROTO = 0x10
-+ NFT_META_BRI_IIFNAME = 0x11
-+ NFT_META_BRI_OIFNAME = 0x12
-+ NFT_META_PKTTYPE = 0x13
-+ NFT_META_CPU = 0x14
-+ NFT_META_IIFGROUP = 0x15
-+ NFT_META_OIFGROUP = 0x16
-+ NFT_META_CGROUP = 0x17
-+ NFT_META_PRANDOM = 0x18
-+ NFT_RT_CLASSID = 0x0
-+ NFT_RT_NEXTHOP4 = 0x1
-+ NFT_RT_NEXTHOP6 = 0x2
-+ NFT_RT_TCPMSS = 0x3
-+ NFT_HASH_JENKINS = 0x0
-+ NFT_HASH_SYM = 0x1
-+ NFTA_HASH_UNSPEC = 0x0
-+ NFTA_HASH_SREG = 0x1
-+ NFTA_HASH_DREG = 0x2
-+ NFTA_HASH_LEN = 0x3
-+ NFTA_HASH_MODULUS = 0x4
-+ NFTA_HASH_SEED = 0x5
-+ NFTA_HASH_OFFSET = 0x6
-+ NFTA_HASH_TYPE = 0x7
-+ NFTA_META_UNSPEC = 0x0
-+ NFTA_META_DREG = 0x1
-+ NFTA_META_KEY = 0x2
-+ NFTA_META_SREG = 0x3
-+ NFTA_RT_UNSPEC = 0x0
-+ NFTA_RT_DREG = 0x1
-+ NFTA_RT_KEY = 0x2
-+ NFT_CT_STATE = 0x0
-+ NFT_CT_DIRECTION = 0x1
-+ NFT_CT_STATUS = 0x2
-+ NFT_CT_MARK = 0x3
-+ NFT_CT_SECMARK = 0x4
-+ NFT_CT_EXPIRATION = 0x5
-+ NFT_CT_HELPER = 0x6
-+ NFT_CT_L3PROTOCOL = 0x7
-+ NFT_CT_SRC = 0x8
-+ NFT_CT_DST = 0x9
-+ NFT_CT_PROTOCOL = 0xa
-+ NFT_CT_PROTO_SRC = 0xb
-+ NFT_CT_PROTO_DST = 0xc
-+ NFT_CT_LABELS = 0xd
-+ NFT_CT_PKTS = 0xe
-+ NFT_CT_BYTES = 0xf
-+ NFT_CT_AVGPKT = 0x10
-+ NFT_CT_ZONE = 0x11
-+ NFT_CT_EVENTMASK = 0x12
-+ NFTA_CT_UNSPEC = 0x0
-+ NFTA_CT_DREG = 0x1
-+ NFTA_CT_KEY = 0x2
-+ NFTA_CT_DIRECTION = 0x3
-+ NFTA_CT_SREG = 0x4
-+ NFT_LIMIT_PKTS = 0x0
-+ NFT_LIMIT_PKT_BYTES = 0x1
-+ NFT_LIMIT_F_INV = 0x1
-+ NFTA_LIMIT_UNSPEC = 0x0
-+ NFTA_LIMIT_RATE = 0x1
-+ NFTA_LIMIT_UNIT = 0x2
-+ NFTA_LIMIT_BURST = 0x3
-+ NFTA_LIMIT_TYPE = 0x4
-+ NFTA_LIMIT_FLAGS = 0x5
-+ NFTA_LIMIT_PAD = 0x6
-+ NFTA_COUNTER_UNSPEC = 0x0
-+ NFTA_COUNTER_BYTES = 0x1
-+ NFTA_COUNTER_PACKETS = 0x2
-+ NFTA_COUNTER_PAD = 0x3
-+ NFTA_LOG_UNSPEC = 0x0
-+ NFTA_LOG_GROUP = 0x1
-+ NFTA_LOG_PREFIX = 0x2
-+ NFTA_LOG_SNAPLEN = 0x3
-+ NFTA_LOG_QTHRESHOLD = 0x4
-+ NFTA_LOG_LEVEL = 0x5
-+ NFTA_LOG_FLAGS = 0x6
-+ NFTA_QUEUE_UNSPEC = 0x0
-+ NFTA_QUEUE_NUM = 0x1
-+ NFTA_QUEUE_TOTAL = 0x2
-+ NFTA_QUEUE_FLAGS = 0x3
-+ NFTA_QUEUE_SREG_QNUM = 0x4
-+ NFT_QUOTA_F_INV = 0x1
-+ NFT_QUOTA_F_DEPLETED = 0x2
-+ NFTA_QUOTA_UNSPEC = 0x0
-+ NFTA_QUOTA_BYTES = 0x1
-+ NFTA_QUOTA_FLAGS = 0x2
-+ NFTA_QUOTA_PAD = 0x3
-+ NFTA_QUOTA_CONSUMED = 0x4
-+ NFT_REJECT_ICMP_UNREACH = 0x0
-+ NFT_REJECT_TCP_RST = 0x1
-+ NFT_REJECT_ICMPX_UNREACH = 0x2
-+ NFT_REJECT_ICMPX_NO_ROUTE = 0x0
-+ NFT_REJECT_ICMPX_PORT_UNREACH = 0x1
-+ NFT_REJECT_ICMPX_HOST_UNREACH = 0x2
-+ NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-+ NFTA_REJECT_UNSPEC = 0x0
-+ NFTA_REJECT_TYPE = 0x1
-+ NFTA_REJECT_ICMP_CODE = 0x2
-+ NFT_NAT_SNAT = 0x0
-+ NFT_NAT_DNAT = 0x1
-+ NFTA_NAT_UNSPEC = 0x0
-+ NFTA_NAT_TYPE = 0x1
-+ NFTA_NAT_FAMILY = 0x2
-+ NFTA_NAT_REG_ADDR_MIN = 0x3
-+ NFTA_NAT_REG_ADDR_MAX = 0x4
-+ NFTA_NAT_REG_PROTO_MIN = 0x5
-+ NFTA_NAT_REG_PROTO_MAX = 0x6
-+ NFTA_NAT_FLAGS = 0x7
-+ NFTA_MASQ_UNSPEC = 0x0
-+ NFTA_MASQ_FLAGS = 0x1
-+ NFTA_MASQ_REG_PROTO_MIN = 0x2
-+ NFTA_MASQ_REG_PROTO_MAX = 0x3
-+ NFTA_REDIR_UNSPEC = 0x0
-+ NFTA_REDIR_REG_PROTO_MIN = 0x1
-+ NFTA_REDIR_REG_PROTO_MAX = 0x2
-+ NFTA_REDIR_FLAGS = 0x3
-+ NFTA_DUP_UNSPEC = 0x0
-+ NFTA_DUP_SREG_ADDR = 0x1
-+ NFTA_DUP_SREG_DEV = 0x2
-+ NFTA_FWD_UNSPEC = 0x0
-+ NFTA_FWD_SREG_DEV = 0x1
-+ NFTA_OBJREF_UNSPEC = 0x0
-+ NFTA_OBJREF_IMM_TYPE = 0x1
-+ NFTA_OBJREF_IMM_NAME = 0x2
-+ NFTA_OBJREF_SET_SREG = 0x3
-+ NFTA_OBJREF_SET_NAME = 0x4
-+ NFTA_OBJREF_SET_ID = 0x5
-+ NFTA_GEN_UNSPEC = 0x0
-+ NFTA_GEN_ID = 0x1
-+ NFTA_GEN_PROC_PID = 0x2
-+ NFTA_GEN_PROC_NAME = 0x3
-+ NFTA_FIB_UNSPEC = 0x0
-+ NFTA_FIB_DREG = 0x1
-+ NFTA_FIB_RESULT = 0x2
-+ NFTA_FIB_FLAGS = 0x3
-+ NFT_FIB_RESULT_UNSPEC = 0x0
-+ NFT_FIB_RESULT_OIF = 0x1
-+ NFT_FIB_RESULT_OIFNAME = 0x2
-+ NFT_FIB_RESULT_ADDRTYPE = 0x3
-+ NFTA_FIB_F_SADDR = 0x1
-+ NFTA_FIB_F_DADDR = 0x2
-+ NFTA_FIB_F_MARK = 0x4
-+ NFTA_FIB_F_IIF = 0x8
-+ NFTA_FIB_F_OIF = 0x10
-+ NFTA_FIB_F_PRESENT = 0x20
-+ NFTA_CT_HELPER_UNSPEC = 0x0
-+ NFTA_CT_HELPER_NAME = 0x1
-+ NFTA_CT_HELPER_L3PROTO = 0x2
-+ NFTA_CT_HELPER_L4PROTO = 0x3
-+ NFTA_OBJ_UNSPEC = 0x0
-+ NFTA_OBJ_TABLE = 0x1
-+ NFTA_OBJ_NAME = 0x2
-+ NFTA_OBJ_TYPE = 0x3
-+ NFTA_OBJ_DATA = 0x4
-+ NFTA_OBJ_USE = 0x5
-+ NFTA_TRACE_UNSPEC = 0x0
-+ NFTA_TRACE_TABLE = 0x1
-+ NFTA_TRACE_CHAIN = 0x2
-+ NFTA_TRACE_RULE_HANDLE = 0x3
-+ NFTA_TRACE_TYPE = 0x4
-+ NFTA_TRACE_VERDICT = 0x5
-+ NFTA_TRACE_ID = 0x6
-+ NFTA_TRACE_LL_HEADER = 0x7
-+ NFTA_TRACE_NETWORK_HEADER = 0x8
-+ NFTA_TRACE_TRANSPORT_HEADER = 0x9
-+ NFTA_TRACE_IIF = 0xa
-+ NFTA_TRACE_IIFTYPE = 0xb
-+ NFTA_TRACE_OIF = 0xc
-+ NFTA_TRACE_OIFTYPE = 0xd
-+ NFTA_TRACE_MARK = 0xe
-+ NFTA_TRACE_NFPROTO = 0xf
-+ NFTA_TRACE_POLICY = 0x10
-+ NFTA_TRACE_PAD = 0x11
-+ NFT_TRACETYPE_UNSPEC = 0x0
-+ NFT_TRACETYPE_POLICY = 0x1
-+ NFT_TRACETYPE_RETURN = 0x2
-+ NFT_TRACETYPE_RULE = 0x3
-+ NFTA_NG_UNSPEC = 0x0
-+ NFTA_NG_DREG = 0x1
-+ NFTA_NG_MODULUS = 0x2
-+ NFTA_NG_TYPE = 0x3
-+ NFTA_NG_OFFSET = 0x4
-+ NFT_NG_INCREMENTAL = 0x0
-+ NFT_NG_RANDOM = 0x1
-+)
-+
-+type RTCTime struct {
-+ Sec int32
-+ Min int32
-+ Hour int32
-+ Mday int32
-+ Mon int32
-+ Year int32
-+ Wday int32
-+ Yday int32
-+ Isdst int32
-+}
-+
-+type RTCWkAlrm struct {
-+ Enabled uint8
-+ Pending uint8
-+ Time RTCTime
-+}
-+
-+type BlkpgIoctlArg struct {
-+ Op int32
-+ Flags int32
-+ Datalen int32
-+ Data *byte
-+}
-+
-+const (
-+ BLKPG_ADD_PARTITION = 0x1
-+ BLKPG_DEL_PARTITION = 0x2
-+ BLKPG_RESIZE_PARTITION = 0x3
-+)
-+
-+const (
-+ NETNSA_NONE = 0x0
-+ NETNSA_NSID = 0x1
-+ NETNSA_PID = 0x2
-+ NETNSA_FD = 0x3
-+)
-+
-+type XDPRingOffset struct {
-+ Producer uint64
-+ Consumer uint64
-+ Desc uint64
-+ Flags uint64
-+}
-+
-+type XDPMmapOffsets struct {
-+ Rx XDPRingOffset
-+ Tx XDPRingOffset
-+ Fr XDPRingOffset
-+ Cr XDPRingOffset
-+}
-+
-+type XDPStatistics struct {
-+ Rx_dropped uint64
-+ Rx_invalid_descs uint64
-+ Tx_invalid_descs uint64
-+}
-+
-+type XDPDesc struct {
-+ Addr uint64
-+ Len uint32
-+ Options uint32
-+}
-+
-+const (
-+ NCSI_CMD_UNSPEC = 0x0
-+ NCSI_CMD_PKG_INFO = 0x1
-+ NCSI_CMD_SET_INTERFACE = 0x2
-+ NCSI_CMD_CLEAR_INTERFACE = 0x3
-+ NCSI_ATTR_UNSPEC = 0x0
-+ NCSI_ATTR_IFINDEX = 0x1
-+ NCSI_ATTR_PACKAGE_LIST = 0x2
-+ NCSI_ATTR_PACKAGE_ID = 0x3
-+ NCSI_ATTR_CHANNEL_ID = 0x4
-+ NCSI_PKG_ATTR_UNSPEC = 0x0
-+ NCSI_PKG_ATTR = 0x1
-+ NCSI_PKG_ATTR_ID = 0x2
-+ NCSI_PKG_ATTR_FORCED = 0x3
-+ NCSI_PKG_ATTR_CHANNEL_LIST = 0x4
-+ NCSI_CHANNEL_ATTR_UNSPEC = 0x0
-+ NCSI_CHANNEL_ATTR = 0x1
-+ NCSI_CHANNEL_ATTR_ID = 0x2
-+ NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-+ NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-+ NCSI_CHANNEL_ATTR_VERSION_STR = 0x5
-+ NCSI_CHANNEL_ATTR_LINK_STATE = 0x6
-+ NCSI_CHANNEL_ATTR_ACTIVE = 0x7
-+ NCSI_CHANNEL_ATTR_FORCED = 0x8
-+ NCSI_CHANNEL_ATTR_VLAN_LIST = 0x9
-+ NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
-+)
-+
-+type ScmTimestamping struct {
-+ Ts [3]Timespec
-+}
-+
-+const (
-+ SOF_TIMESTAMPING_TX_HARDWARE = 0x1
-+ SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
-+ SOF_TIMESTAMPING_RX_HARDWARE = 0x4
-+ SOF_TIMESTAMPING_RX_SOFTWARE = 0x8
-+ SOF_TIMESTAMPING_SOFTWARE = 0x10
-+ SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-+ SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-+ SOF_TIMESTAMPING_OPT_ID = 0x80
-+ SOF_TIMESTAMPING_TX_SCHED = 0x100
-+ SOF_TIMESTAMPING_TX_ACK = 0x200
-+ SOF_TIMESTAMPING_OPT_CMSG = 0x400
-+ SOF_TIMESTAMPING_OPT_TSONLY = 0x800
-+ SOF_TIMESTAMPING_OPT_STATS = 0x1000
-+ SOF_TIMESTAMPING_OPT_PKTINFO = 0x2000
-+ SOF_TIMESTAMPING_OPT_TX_SWHW = 0x4000
-+
-+ SOF_TIMESTAMPING_LAST = 0x4000
-+ SOF_TIMESTAMPING_MASK = 0x7fff
-+
-+ SCM_TSTAMP_SND = 0x0
-+ SCM_TSTAMP_SCHED = 0x1
-+ SCM_TSTAMP_ACK = 0x2
-+)
-+
-+type SockExtendedErr struct {
-+ Errno uint32
-+ Origin uint8
-+ Type uint8
-+ Code uint8
-+ Pad uint8
-+ Info uint32
-+ Data uint32
-+}
-+
-+type FanotifyEventMetadata struct {
-+ Event_len uint32
-+ Vers uint8
-+ Reserved uint8
-+ Metadata_len uint16
-+ Mask uint64
-+ Fd int32
-+ Pid int32
-+}
-+
-+type FanotifyResponse struct {
-+ Fd int32
-+ Response uint32
-+}
-+
-+const (
-+ CRYPTO_MSG_BASE = 0x10
-+ CRYPTO_MSG_NEWALG = 0x10
-+ CRYPTO_MSG_DELALG = 0x11
-+ CRYPTO_MSG_UPDATEALG = 0x12
-+ CRYPTO_MSG_GETALG = 0x13
-+ CRYPTO_MSG_DELRNG = 0x14
-+ CRYPTO_MSG_GETSTAT = 0x15
-+)
-+
-+const (
-+ CRYPTOCFGA_UNSPEC = 0x0
-+ CRYPTOCFGA_PRIORITY_VAL = 0x1
-+ CRYPTOCFGA_REPORT_LARVAL = 0x2
-+ CRYPTOCFGA_REPORT_HASH = 0x3
-+ CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-+ CRYPTOCFGA_REPORT_AEAD = 0x5
-+ CRYPTOCFGA_REPORT_COMPRESS = 0x6
-+ CRYPTOCFGA_REPORT_RNG = 0x7
-+ CRYPTOCFGA_REPORT_CIPHER = 0x8
-+ CRYPTOCFGA_REPORT_AKCIPHER = 0x9
-+ CRYPTOCFGA_REPORT_KPP = 0xa
-+ CRYPTOCFGA_REPORT_ACOMP = 0xb
-+ CRYPTOCFGA_STAT_LARVAL = 0xc
-+ CRYPTOCFGA_STAT_HASH = 0xd
-+ CRYPTOCFGA_STAT_BLKCIPHER = 0xe
-+ CRYPTOCFGA_STAT_AEAD = 0xf
-+ CRYPTOCFGA_STAT_COMPRESS = 0x10
-+ CRYPTOCFGA_STAT_RNG = 0x11
-+ CRYPTOCFGA_STAT_CIPHER = 0x12
-+ CRYPTOCFGA_STAT_AKCIPHER = 0x13
-+ CRYPTOCFGA_STAT_KPP = 0x14
-+ CRYPTOCFGA_STAT_ACOMP = 0x15
-+)
-+
-+const (
-+ BPF_REG_0 = 0x0
-+ BPF_REG_1 = 0x1
-+ BPF_REG_2 = 0x2
-+ BPF_REG_3 = 0x3
-+ BPF_REG_4 = 0x4
-+ BPF_REG_5 = 0x5
-+ BPF_REG_6 = 0x6
-+ BPF_REG_7 = 0x7
-+ BPF_REG_8 = 0x8
-+ BPF_REG_9 = 0x9
-+ BPF_REG_10 = 0xa
-+ BPF_MAP_CREATE = 0x0
-+ BPF_MAP_LOOKUP_ELEM = 0x1
-+ BPF_MAP_UPDATE_ELEM = 0x2
-+ BPF_MAP_DELETE_ELEM = 0x3
-+ BPF_MAP_GET_NEXT_KEY = 0x4
-+ BPF_PROG_LOAD = 0x5
-+ BPF_OBJ_PIN = 0x6
-+ BPF_OBJ_GET = 0x7
-+ BPF_PROG_ATTACH = 0x8
-+ BPF_PROG_DETACH = 0x9
-+ BPF_PROG_TEST_RUN = 0xa
-+ BPF_PROG_GET_NEXT_ID = 0xb
-+ BPF_MAP_GET_NEXT_ID = 0xc
-+ BPF_PROG_GET_FD_BY_ID = 0xd
-+ BPF_MAP_GET_FD_BY_ID = 0xe
-+ BPF_OBJ_GET_INFO_BY_FD = 0xf
-+ BPF_PROG_QUERY = 0x10
-+ BPF_RAW_TRACEPOINT_OPEN = 0x11
-+ BPF_BTF_LOAD = 0x12
-+ BPF_BTF_GET_FD_BY_ID = 0x13
-+ BPF_TASK_FD_QUERY = 0x14
-+ BPF_MAP_LOOKUP_AND_DELETE_ELEM = 0x15
-+ BPF_MAP_FREEZE = 0x16
-+ BPF_BTF_GET_NEXT_ID = 0x17
-+ BPF_MAP_TYPE_UNSPEC = 0x0
-+ BPF_MAP_TYPE_HASH = 0x1
-+ BPF_MAP_TYPE_ARRAY = 0x2
-+ BPF_MAP_TYPE_PROG_ARRAY = 0x3
-+ BPF_MAP_TYPE_PERF_EVENT_ARRAY = 0x4
-+ BPF_MAP_TYPE_PERCPU_HASH = 0x5
-+ BPF_MAP_TYPE_PERCPU_ARRAY = 0x6
-+ BPF_MAP_TYPE_STACK_TRACE = 0x7
-+ BPF_MAP_TYPE_CGROUP_ARRAY = 0x8
-+ BPF_MAP_TYPE_LRU_HASH = 0x9
-+ BPF_MAP_TYPE_LRU_PERCPU_HASH = 0xa
-+ BPF_MAP_TYPE_LPM_TRIE = 0xb
-+ BPF_MAP_TYPE_ARRAY_OF_MAPS = 0xc
-+ BPF_MAP_TYPE_HASH_OF_MAPS = 0xd
-+ BPF_MAP_TYPE_DEVMAP = 0xe
-+ BPF_MAP_TYPE_SOCKMAP = 0xf
-+ BPF_MAP_TYPE_CPUMAP = 0x10
-+ BPF_MAP_TYPE_XSKMAP = 0x11
-+ BPF_MAP_TYPE_SOCKHASH = 0x12
-+ BPF_MAP_TYPE_CGROUP_STORAGE = 0x13
-+ BPF_MAP_TYPE_REUSEPORT_SOCKARRAY = 0x14
-+ BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE = 0x15
-+ BPF_MAP_TYPE_QUEUE = 0x16
-+ BPF_MAP_TYPE_STACK = 0x17
-+ BPF_MAP_TYPE_SK_STORAGE = 0x18
-+ BPF_MAP_TYPE_DEVMAP_HASH = 0x19
-+ BPF_PROG_TYPE_UNSPEC = 0x0
-+ BPF_PROG_TYPE_SOCKET_FILTER = 0x1
-+ BPF_PROG_TYPE_KPROBE = 0x2
-+ BPF_PROG_TYPE_SCHED_CLS = 0x3
-+ BPF_PROG_TYPE_SCHED_ACT = 0x4
-+ BPF_PROG_TYPE_TRACEPOINT = 0x5
-+ BPF_PROG_TYPE_XDP = 0x6
-+ BPF_PROG_TYPE_PERF_EVENT = 0x7
-+ BPF_PROG_TYPE_CGROUP_SKB = 0x8
-+ BPF_PROG_TYPE_CGROUP_SOCK = 0x9
-+ BPF_PROG_TYPE_LWT_IN = 0xa
-+ BPF_PROG_TYPE_LWT_OUT = 0xb
-+ BPF_PROG_TYPE_LWT_XMIT = 0xc
-+ BPF_PROG_TYPE_SOCK_OPS = 0xd
-+ BPF_PROG_TYPE_SK_SKB = 0xe
-+ BPF_PROG_TYPE_CGROUP_DEVICE = 0xf
-+ BPF_PROG_TYPE_SK_MSG = 0x10
-+ BPF_PROG_TYPE_RAW_TRACEPOINT = 0x11
-+ BPF_PROG_TYPE_CGROUP_SOCK_ADDR = 0x12
-+ BPF_PROG_TYPE_LWT_SEG6LOCAL = 0x13
-+ BPF_PROG_TYPE_LIRC_MODE2 = 0x14
-+ BPF_PROG_TYPE_SK_REUSEPORT = 0x15
-+ BPF_PROG_TYPE_FLOW_DISSECTOR = 0x16
-+ BPF_PROG_TYPE_CGROUP_SYSCTL = 0x17
-+ BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE = 0x18
-+ BPF_PROG_TYPE_CGROUP_SOCKOPT = 0x19
-+ BPF_PROG_TYPE_TRACING = 0x1a
-+ BPF_CGROUP_INET_INGRESS = 0x0
-+ BPF_CGROUP_INET_EGRESS = 0x1
-+ BPF_CGROUP_INET_SOCK_CREATE = 0x2
-+ BPF_CGROUP_SOCK_OPS = 0x3
-+ BPF_SK_SKB_STREAM_PARSER = 0x4
-+ BPF_SK_SKB_STREAM_VERDICT = 0x5
-+ BPF_CGROUP_DEVICE = 0x6
-+ BPF_SK_MSG_VERDICT = 0x7
-+ BPF_CGROUP_INET4_BIND = 0x8
-+ BPF_CGROUP_INET6_BIND = 0x9
-+ BPF_CGROUP_INET4_CONNECT = 0xa
-+ BPF_CGROUP_INET6_CONNECT = 0xb
-+ BPF_CGROUP_INET4_POST_BIND = 0xc
-+ BPF_CGROUP_INET6_POST_BIND = 0xd
-+ BPF_CGROUP_UDP4_SENDMSG = 0xe
-+ BPF_CGROUP_UDP6_SENDMSG = 0xf
-+ BPF_LIRC_MODE2 = 0x10
-+ BPF_FLOW_DISSECTOR = 0x11
-+ BPF_CGROUP_SYSCTL = 0x12
-+ BPF_CGROUP_UDP4_RECVMSG = 0x13
-+ BPF_CGROUP_UDP6_RECVMSG = 0x14
-+ BPF_CGROUP_GETSOCKOPT = 0x15
-+ BPF_CGROUP_SETSOCKOPT = 0x16
-+ BPF_TRACE_RAW_TP = 0x17
-+ BPF_TRACE_FENTRY = 0x18
-+ BPF_TRACE_FEXIT = 0x19
-+ BPF_STACK_BUILD_ID_EMPTY = 0x0
-+ BPF_STACK_BUILD_ID_VALID = 0x1
-+ BPF_STACK_BUILD_ID_IP = 0x2
-+ BPF_ADJ_ROOM_NET = 0x0
-+ BPF_ADJ_ROOM_MAC = 0x1
-+ BPF_HDR_START_MAC = 0x0
-+ BPF_HDR_START_NET = 0x1
-+ BPF_LWT_ENCAP_SEG6 = 0x0
-+ BPF_LWT_ENCAP_SEG6_INLINE = 0x1
-+ BPF_LWT_ENCAP_IP = 0x2
-+ BPF_OK = 0x0
-+ BPF_DROP = 0x2
-+ BPF_REDIRECT = 0x7
-+ BPF_LWT_REROUTE = 0x80
-+ BPF_SOCK_OPS_VOID = 0x0
-+ BPF_SOCK_OPS_TIMEOUT_INIT = 0x1
-+ BPF_SOCK_OPS_RWND_INIT = 0x2
-+ BPF_SOCK_OPS_TCP_CONNECT_CB = 0x3
-+ BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB = 0x4
-+ BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB = 0x5
-+ BPF_SOCK_OPS_NEEDS_ECN = 0x6
-+ BPF_SOCK_OPS_BASE_RTT = 0x7
-+ BPF_SOCK_OPS_RTO_CB = 0x8
-+ BPF_SOCK_OPS_RETRANS_CB = 0x9
-+ BPF_SOCK_OPS_STATE_CB = 0xa
-+ BPF_SOCK_OPS_TCP_LISTEN_CB = 0xb
-+ BPF_SOCK_OPS_RTT_CB = 0xc
-+ BPF_TCP_ESTABLISHED = 0x1
-+ BPF_TCP_SYN_SENT = 0x2
-+ BPF_TCP_SYN_RECV = 0x3
-+ BPF_TCP_FIN_WAIT1 = 0x4
-+ BPF_TCP_FIN_WAIT2 = 0x5
-+ BPF_TCP_TIME_WAIT = 0x6
-+ BPF_TCP_CLOSE = 0x7
-+ BPF_TCP_CLOSE_WAIT = 0x8
-+ BPF_TCP_LAST_ACK = 0x9
-+ BPF_TCP_LISTEN = 0xa
-+ BPF_TCP_CLOSING = 0xb
-+ BPF_TCP_NEW_SYN_RECV = 0xc
-+ BPF_TCP_MAX_STATES = 0xd
-+ BPF_FIB_LKUP_RET_SUCCESS = 0x0
-+ BPF_FIB_LKUP_RET_BLACKHOLE = 0x1
-+ BPF_FIB_LKUP_RET_UNREACHABLE = 0x2
-+ BPF_FIB_LKUP_RET_PROHIBIT = 0x3
-+ BPF_FIB_LKUP_RET_NOT_FWDED = 0x4
-+ BPF_FIB_LKUP_RET_FWD_DISABLED = 0x5
-+ BPF_FIB_LKUP_RET_UNSUPP_LWT = 0x6
-+ BPF_FIB_LKUP_RET_NO_NEIGH = 0x7
-+ BPF_FIB_LKUP_RET_FRAG_NEEDED = 0x8
-+ BPF_FD_TYPE_RAW_TRACEPOINT = 0x0
-+ BPF_FD_TYPE_TRACEPOINT = 0x1
-+ BPF_FD_TYPE_KPROBE = 0x2
-+ BPF_FD_TYPE_KRETPROBE = 0x3
-+ BPF_FD_TYPE_UPROBE = 0x4
-+ BPF_FD_TYPE_URETPROBE = 0x5
-+)
-+
-+const (
-+ RTNLGRP_NONE = 0x0
-+ RTNLGRP_LINK = 0x1
-+ RTNLGRP_NOTIFY = 0x2
-+ RTNLGRP_NEIGH = 0x3
-+ RTNLGRP_TC = 0x4
-+ RTNLGRP_IPV4_IFADDR = 0x5
-+ RTNLGRP_IPV4_MROUTE = 0x6
-+ RTNLGRP_IPV4_ROUTE = 0x7
-+ RTNLGRP_IPV4_RULE = 0x8
-+ RTNLGRP_IPV6_IFADDR = 0x9
-+ RTNLGRP_IPV6_MROUTE = 0xa
-+ RTNLGRP_IPV6_ROUTE = 0xb
-+ RTNLGRP_IPV6_IFINFO = 0xc
-+ RTNLGRP_DECnet_IFADDR = 0xd
-+ RTNLGRP_NOP2 = 0xe
-+ RTNLGRP_DECnet_ROUTE = 0xf
-+ RTNLGRP_DECnet_RULE = 0x10
-+ RTNLGRP_NOP4 = 0x11
-+ RTNLGRP_IPV6_PREFIX = 0x12
-+ RTNLGRP_IPV6_RULE = 0x13
-+ RTNLGRP_ND_USEROPT = 0x14
-+ RTNLGRP_PHONET_IFADDR = 0x15
-+ RTNLGRP_PHONET_ROUTE = 0x16
-+ RTNLGRP_DCB = 0x17
-+ RTNLGRP_IPV4_NETCONF = 0x18
-+ RTNLGRP_IPV6_NETCONF = 0x19
-+ RTNLGRP_MDB = 0x1a
-+ RTNLGRP_MPLS_ROUTE = 0x1b
-+ RTNLGRP_NSID = 0x1c
-+ RTNLGRP_MPLS_NETCONF = 0x1d
-+ RTNLGRP_IPV4_MROUTE_R = 0x1e
-+ RTNLGRP_IPV6_MROUTE_R = 0x1f
-+ RTNLGRP_NEXTHOP = 0x20
-+)
-+
-+type CapUserHeader struct {
-+ Version uint32
-+ Pid int32
-+}
-+
-+type CapUserData struct {
-+ Effective uint32
-+ Permitted uint32
-+ Inheritable uint32
-+}
-+
-+const (
-+ LINUX_CAPABILITY_VERSION_1 = 0x19980330
-+ LINUX_CAPABILITY_VERSION_2 = 0x20071026
-+ LINUX_CAPABILITY_VERSION_3 = 0x20080522
-+)
-+
-+const (
-+ LO_FLAGS_READ_ONLY = 0x1
-+ LO_FLAGS_AUTOCLEAR = 0x4
-+ LO_FLAGS_PARTSCAN = 0x8
-+ LO_FLAGS_DIRECT_IO = 0x10
-+)
-+
-+type LoopInfo64 struct {
-+ Device uint64
-+ Inode uint64
-+ Rdevice uint64
-+ Offset uint64
-+ Sizelimit uint64
-+ Number uint32
-+ Encrypt_type uint32
-+ Encrypt_key_size uint32
-+ Flags uint32
-+ File_name [64]uint8
-+ Crypt_name [64]uint8
-+ Encrypt_key [32]uint8
-+ Init [2]uint64
-+}
-+
-+type TIPCSocketAddr struct {
-+ Ref uint32
-+ Node uint32
-+}
-+
-+type TIPCServiceRange struct {
-+ Type uint32
-+ Lower uint32
-+ Upper uint32
-+}
-+
-+type TIPCServiceName struct {
-+ Type uint32
-+ Instance uint32
-+ Domain uint32
-+}
-+
-+type TIPCEvent struct {
-+ Event uint32
-+ Lower uint32
-+ Upper uint32
-+ Port TIPCSocketAddr
-+ S TIPCSubscr
-+}
-+
-+type TIPCGroupReq struct {
-+ Type uint32
-+ Instance uint32
-+ Scope uint32
-+ Flags uint32
-+}
-+
-+const (
-+ TIPC_CLUSTER_SCOPE = 0x2
-+ TIPC_NODE_SCOPE = 0x3
-+)
-+
-+const (
-+ SYSLOG_ACTION_CLOSE = 0
-+ SYSLOG_ACTION_OPEN = 1
-+ SYSLOG_ACTION_READ = 2
-+ SYSLOG_ACTION_READ_ALL = 3
-+ SYSLOG_ACTION_READ_CLEAR = 4
-+ SYSLOG_ACTION_CLEAR = 5
-+ SYSLOG_ACTION_CONSOLE_OFF = 6
-+ SYSLOG_ACTION_CONSOLE_ON = 7
-+ SYSLOG_ACTION_CONSOLE_LEVEL = 8
-+ SYSLOG_ACTION_SIZE_UNREAD = 9
-+ SYSLOG_ACTION_SIZE_BUFFER = 10
-+)
-+
-+const (
-+ DEVLINK_CMD_UNSPEC = 0x0
-+ DEVLINK_CMD_GET = 0x1
-+ DEVLINK_CMD_SET = 0x2
-+ DEVLINK_CMD_NEW = 0x3
-+ DEVLINK_CMD_DEL = 0x4
-+ DEVLINK_CMD_PORT_GET = 0x5
-+ DEVLINK_CMD_PORT_SET = 0x6
-+ DEVLINK_CMD_PORT_NEW = 0x7
-+ DEVLINK_CMD_PORT_DEL = 0x8
-+ DEVLINK_CMD_PORT_SPLIT = 0x9
-+ DEVLINK_CMD_PORT_UNSPLIT = 0xa
-+ DEVLINK_CMD_SB_GET = 0xb
-+ DEVLINK_CMD_SB_SET = 0xc
-+ DEVLINK_CMD_SB_NEW = 0xd
-+ DEVLINK_CMD_SB_DEL = 0xe
-+ DEVLINK_CMD_SB_POOL_GET = 0xf
-+ DEVLINK_CMD_SB_POOL_SET = 0x10
-+ DEVLINK_CMD_SB_POOL_NEW = 0x11
-+ DEVLINK_CMD_SB_POOL_DEL = 0x12
-+ DEVLINK_CMD_SB_PORT_POOL_GET = 0x13
-+ DEVLINK_CMD_SB_PORT_POOL_SET = 0x14
-+ DEVLINK_CMD_SB_PORT_POOL_NEW = 0x15
-+ DEVLINK_CMD_SB_PORT_POOL_DEL = 0x16
-+ DEVLINK_CMD_SB_TC_POOL_BIND_GET = 0x17
-+ DEVLINK_CMD_SB_TC_POOL_BIND_SET = 0x18
-+ DEVLINK_CMD_SB_TC_POOL_BIND_NEW = 0x19
-+ DEVLINK_CMD_SB_TC_POOL_BIND_DEL = 0x1a
-+ DEVLINK_CMD_SB_OCC_SNAPSHOT = 0x1b
-+ DEVLINK_CMD_SB_OCC_MAX_CLEAR = 0x1c
-+ DEVLINK_CMD_ESWITCH_GET = 0x1d
-+ DEVLINK_CMD_ESWITCH_SET = 0x1e
-+ DEVLINK_CMD_DPIPE_TABLE_GET = 0x1f
-+ DEVLINK_CMD_DPIPE_ENTRIES_GET = 0x20
-+ DEVLINK_CMD_DPIPE_HEADERS_GET = 0x21
-+ DEVLINK_CMD_DPIPE_TABLE_COUNTERS_SET = 0x22
-+ DEVLINK_CMD_MAX = 0x44
-+ DEVLINK_PORT_TYPE_NOTSET = 0x0
-+ DEVLINK_PORT_TYPE_AUTO = 0x1
-+ DEVLINK_PORT_TYPE_ETH = 0x2
-+ DEVLINK_PORT_TYPE_IB = 0x3
-+ DEVLINK_SB_POOL_TYPE_INGRESS = 0x0
-+ DEVLINK_SB_POOL_TYPE_EGRESS = 0x1
-+ DEVLINK_SB_THRESHOLD_TYPE_STATIC = 0x0
-+ DEVLINK_SB_THRESHOLD_TYPE_DYNAMIC = 0x1
-+ DEVLINK_ESWITCH_MODE_LEGACY = 0x0
-+ DEVLINK_ESWITCH_MODE_SWITCHDEV = 0x1
-+ DEVLINK_ESWITCH_INLINE_MODE_NONE = 0x0
-+ DEVLINK_ESWITCH_INLINE_MODE_LINK = 0x1
-+ DEVLINK_ESWITCH_INLINE_MODE_NETWORK = 0x2
-+ DEVLINK_ESWITCH_INLINE_MODE_TRANSPORT = 0x3
-+ DEVLINK_ESWITCH_ENCAP_MODE_NONE = 0x0
-+ DEVLINK_ESWITCH_ENCAP_MODE_BASIC = 0x1
-+ DEVLINK_ATTR_UNSPEC = 0x0
-+ DEVLINK_ATTR_BUS_NAME = 0x1
-+ DEVLINK_ATTR_DEV_NAME = 0x2
-+ DEVLINK_ATTR_PORT_INDEX = 0x3
-+ DEVLINK_ATTR_PORT_TYPE = 0x4
-+ DEVLINK_ATTR_PORT_DESIRED_TYPE = 0x5
-+ DEVLINK_ATTR_PORT_NETDEV_IFINDEX = 0x6
-+ DEVLINK_ATTR_PORT_NETDEV_NAME = 0x7
-+ DEVLINK_ATTR_PORT_IBDEV_NAME = 0x8
-+ DEVLINK_ATTR_PORT_SPLIT_COUNT = 0x9
-+ DEVLINK_ATTR_PORT_SPLIT_GROUP = 0xa
-+ DEVLINK_ATTR_SB_INDEX = 0xb
-+ DEVLINK_ATTR_SB_SIZE = 0xc
-+ DEVLINK_ATTR_SB_INGRESS_POOL_COUNT = 0xd
-+ DEVLINK_ATTR_SB_EGRESS_POOL_COUNT = 0xe
-+ DEVLINK_ATTR_SB_INGRESS_TC_COUNT = 0xf
-+ DEVLINK_ATTR_SB_EGRESS_TC_COUNT = 0x10
-+ DEVLINK_ATTR_SB_POOL_INDEX = 0x11
-+ DEVLINK_ATTR_SB_POOL_TYPE = 0x12
-+ DEVLINK_ATTR_SB_POOL_SIZE = 0x13
-+ DEVLINK_ATTR_SB_POOL_THRESHOLD_TYPE = 0x14
-+ DEVLINK_ATTR_SB_THRESHOLD = 0x15
-+ DEVLINK_ATTR_SB_TC_INDEX = 0x16
-+ DEVLINK_ATTR_SB_OCC_CUR = 0x17
-+ DEVLINK_ATTR_SB_OCC_MAX = 0x18
-+ DEVLINK_ATTR_ESWITCH_MODE = 0x19
-+ DEVLINK_ATTR_ESWITCH_INLINE_MODE = 0x1a
-+ DEVLINK_ATTR_DPIPE_TABLES = 0x1b
-+ DEVLINK_ATTR_DPIPE_TABLE = 0x1c
-+ DEVLINK_ATTR_DPIPE_TABLE_NAME = 0x1d
-+ DEVLINK_ATTR_DPIPE_TABLE_SIZE = 0x1e
-+ DEVLINK_ATTR_DPIPE_TABLE_MATCHES = 0x1f
-+ DEVLINK_ATTR_DPIPE_TABLE_ACTIONS = 0x20
-+ DEVLINK_ATTR_DPIPE_TABLE_COUNTERS_ENABLED = 0x21
-+ DEVLINK_ATTR_DPIPE_ENTRIES = 0x22
-+ DEVLINK_ATTR_DPIPE_ENTRY = 0x23
-+ DEVLINK_ATTR_DPIPE_ENTRY_INDEX = 0x24
-+ DEVLINK_ATTR_DPIPE_ENTRY_MATCH_VALUES = 0x25
-+ DEVLINK_ATTR_DPIPE_ENTRY_ACTION_VALUES = 0x26
-+ DEVLINK_ATTR_DPIPE_ENTRY_COUNTER = 0x27
-+ DEVLINK_ATTR_DPIPE_MATCH = 0x28
-+ DEVLINK_ATTR_DPIPE_MATCH_VALUE = 0x29
-+ DEVLINK_ATTR_DPIPE_MATCH_TYPE = 0x2a
-+ DEVLINK_ATTR_DPIPE_ACTION = 0x2b
-+ DEVLINK_ATTR_DPIPE_ACTION_VALUE = 0x2c
-+ DEVLINK_ATTR_DPIPE_ACTION_TYPE = 0x2d
-+ DEVLINK_ATTR_DPIPE_VALUE = 0x2e
-+ DEVLINK_ATTR_DPIPE_VALUE_MASK = 0x2f
-+ DEVLINK_ATTR_DPIPE_VALUE_MAPPING = 0x30
-+ DEVLINK_ATTR_DPIPE_HEADERS = 0x31
-+ DEVLINK_ATTR_DPIPE_HEADER = 0x32
-+ DEVLINK_ATTR_DPIPE_HEADER_NAME = 0x33
-+ DEVLINK_ATTR_DPIPE_HEADER_ID = 0x34
-+ DEVLINK_ATTR_DPIPE_HEADER_FIELDS = 0x35
-+ DEVLINK_ATTR_DPIPE_HEADER_GLOBAL = 0x36
-+ DEVLINK_ATTR_DPIPE_HEADER_INDEX = 0x37
-+ DEVLINK_ATTR_DPIPE_FIELD = 0x38
-+ DEVLINK_ATTR_DPIPE_FIELD_NAME = 0x39
-+ DEVLINK_ATTR_DPIPE_FIELD_ID = 0x3a
-+ DEVLINK_ATTR_DPIPE_FIELD_BITWIDTH = 0x3b
-+ DEVLINK_ATTR_DPIPE_FIELD_MAPPING_TYPE = 0x3c
-+ DEVLINK_ATTR_PAD = 0x3d
-+ DEVLINK_ATTR_ESWITCH_ENCAP_MODE = 0x3e
-+ DEVLINK_ATTR_MAX = 0x8c
-+ DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE = 0x0
-+ DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX = 0x1
-+ DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT = 0x0
-+ DEVLINK_DPIPE_ACTION_TYPE_FIELD_MODIFY = 0x0
-+ DEVLINK_DPIPE_FIELD_ETHERNET_DST_MAC = 0x0
-+ DEVLINK_DPIPE_FIELD_IPV4_DST_IP = 0x0
-+ DEVLINK_DPIPE_FIELD_IPV6_DST_IP = 0x0
-+ DEVLINK_DPIPE_HEADER_ETHERNET = 0x0
-+ DEVLINK_DPIPE_HEADER_IPV4 = 0x1
-+ DEVLINK_DPIPE_HEADER_IPV6 = 0x2
-+)
-+
-+type FsverityDigest struct {
-+ Algorithm uint16
-+ Size uint16
-+}
-+
-+type FsverityEnableArg struct {
-+ Version uint32
-+ Hash_algorithm uint32
-+ Block_size uint32
-+ Salt_size uint32
-+ Salt_ptr uint64
-+ Sig_size uint32
-+ _ uint32
-+ Sig_ptr uint64
-+ _ [11]uint64
-+}
-+
-+type Nhmsg struct {
-+ Family uint8
-+ Scope uint8
-+ Protocol uint8
-+ Resvd uint8
-+ Flags uint32
-+}
-+
-+type NexthopGrp struct {
-+ Id uint32
-+ Weight uint8
-+ Resvd1 uint8
-+ Resvd2 uint16
-+}
-+
-+const (
-+ NHA_UNSPEC = 0x0
-+ NHA_ID = 0x1
-+ NHA_GROUP = 0x2
-+ NHA_GROUP_TYPE = 0x3
-+ NHA_BLACKHOLE = 0x4
-+ NHA_OIF = 0x5
-+ NHA_GATEWAY = 0x6
-+ NHA_ENCAP_TYPE = 0x7
-+ NHA_ENCAP = 0x8
-+ NHA_GROUPS = 0x9
-+ NHA_MASTER = 0xa
-+)
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_386.go b/vendor/golang.org/x/sys/unix/ztypes_linux_386.go
-index 7b36896e..761b67c8 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_linux_386.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_386.go
-@@ -6,19 +6,12 @@
- package unix
-
- const (
-- sizeofPtr = 0x4
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x4
-- sizeofLongLong = 0x8
-- PathMax = 0x1000
-+ SizeofPtr = 0x4
-+ SizeofLong = 0x4
- )
-
- type (
-- _C_short int16
-- _C_int int32
-- _C_long int32
-- _C_long_long int64
-+ _C_long int32
- )
-
- type Timespec struct {
-@@ -52,7 +45,7 @@ type Timex struct {
- Errcnt int32
- Stbcnt int32
- Tai int32
-- Pad_cgo_0 [44]byte
-+ _ [44]byte
- }
-
- type Time_t int32
-@@ -88,60 +81,32 @@ type Rusage struct {
- Nivcsw int32
- }
-
--type Rlimit struct {
-- Cur uint64
-- Max uint64
--}
--
--type _Gid_t uint32
--
- type Stat_t struct {
-- Dev uint64
-- X__pad1 uint16
-- Pad_cgo_0 [2]byte
-- X__st_ino uint32
-- Mode uint32
-- Nlink uint32
-- Uid uint32
-- Gid uint32
-- Rdev uint64
-- X__pad2 uint16
-- Pad_cgo_1 [2]byte
-- Size int64
-- Blksize int32
-- Blocks int64
-- Atim Timespec
-- Mtim Timespec
-- Ctim Timespec
-- Ino uint64
--}
--
--type Statfs_t struct {
-- Type int32
-- Bsize int32
-- Blocks uint64
-- Bfree uint64
-- Bavail uint64
-- Files uint64
-- Ffree uint64
-- Fsid Fsid
-- Namelen int32
-- Frsize int32
-- Flags int32
-- Spare [4]int32
-+ Dev uint64
-+ _ uint16
-+ _ uint32
-+ Mode uint32
-+ Nlink uint32
-+ Uid uint32
-+ Gid uint32
-+ Rdev uint64
-+ _ uint16
-+ Size int64
-+ Blksize int32
-+ Blocks int64
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Ino uint64
- }
-
- type Dirent struct {
-- Ino uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Name [256]int8
-- Pad_cgo_0 [1]byte
--}
--
--type Fsid struct {
-- X__val [2]int32
-+ Ino uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Name [256]int8
-+ _ [1]byte
- }
-
- type Flock_t struct {
-@@ -152,101 +117,11 @@ type Flock_t struct {
- Pid int32
- }
-
--type FscryptPolicy struct {
-- Version uint8
-- Contents_encryption_mode uint8
-- Filenames_encryption_mode uint8
-- Flags uint8
-- Master_key_descriptor [8]uint8
--}
--
--type FscryptKey struct {
-- Mode uint32
-- Raw [64]uint8
-- Size uint32
--}
--
--type KeyctlDHParams struct {
-- Private int32
-- Prime int32
-- Base int32
--}
--
- const (
-- FADV_NORMAL = 0x0
-- FADV_RANDOM = 0x1
-- FADV_SEQUENTIAL = 0x2
-- FADV_WILLNEED = 0x3
-- FADV_DONTNEED = 0x4
-- FADV_NOREUSE = 0x5
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
- )
-
--type RawSockaddrInet4 struct {
-- Family uint16
-- Port uint16
-- Addr [4]byte /* in_addr */
-- Zero [8]uint8
--}
--
--type RawSockaddrInet6 struct {
-- Family uint16
-- Port uint16
-- Flowinfo uint32
-- Addr [16]byte /* in6_addr */
-- Scope_id uint32
--}
--
--type RawSockaddrUnix struct {
-- Family uint16
-- Path [108]int8
--}
--
--type RawSockaddrLinklayer struct {
-- Family uint16
-- Protocol uint16
-- Ifindex int32
-- Hatype uint16
-- Pkttype uint8
-- Halen uint8
-- Addr [8]uint8
--}
--
--type RawSockaddrNetlink struct {
-- Family uint16
-- Pad uint16
-- Pid uint32
-- Groups uint32
--}
--
--type RawSockaddrHCI struct {
-- Family uint16
-- Dev uint16
-- Channel uint16
--}
--
--type RawSockaddrCAN struct {
-- Family uint16
-- Pad_cgo_0 [2]byte
-- Ifindex int32
-- Addr [8]byte
--}
--
--type RawSockaddrALG struct {
-- Family uint16
-- Type [14]uint8
-- Feat uint32
-- Mask uint32
-- Name [64]uint8
--}
--
--type RawSockaddrVM struct {
-- Family uint16
-- Reserved1 uint16
-- Port uint32
-- Cid uint32
-- Zero [4]uint8
--}
--
- type RawSockaddr struct {
- Family uint16
- Data [14]int8
-@@ -257,41 +132,11 @@ type RawSockaddrAny struct {
- Pad [96]int8
- }
-
--type _Socklen uint32
--
--type Linger struct {
-- Onoff int32
-- Linger int32
--}
--
- type Iovec struct {
- Base *byte
- Len uint32
- }
-
--type IPMreq struct {
-- Multiaddr [4]byte /* in_addr */
-- Interface [4]byte /* in_addr */
--}
--
--type IPMreqn struct {
-- Multiaddr [4]byte /* in_addr */
-- Address [4]byte /* in_addr */
-- Ifindex int32
--}
--
--type IPv6Mreq struct {
-- Multiaddr [16]byte /* in6_addr */
-- Interface uint32
--}
--
--type PacketMreq struct {
-- Ifindex int32
-- Type uint16
-- Alen uint16
-- Address [8]uint8
--}
--
- type Msghdr struct {
- Name *byte
- Namelen uint32
-@@ -308,277 +153,16 @@ type Cmsghdr struct {
- Type int32
- }
-
--type Inet4Pktinfo struct {
-- Ifindex int32
-- Spec_dst [4]byte /* in_addr */
-- Addr [4]byte /* in_addr */
--}
--
--type Inet6Pktinfo struct {
-- Addr [16]byte /* in6_addr */
-- Ifindex uint32
--}
--
--type IPv6MTUInfo struct {
-- Addr RawSockaddrInet6
-- Mtu uint32
--}
--
--type ICMPv6Filter struct {
-- Data [8]uint32
--}
--
--type Ucred struct {
-- Pid int32
-- Uid uint32
-- Gid uint32
--}
--
--type TCPInfo struct {
-- State uint8
-- Ca_state uint8
-- Retransmits uint8
-- Probes uint8
-- Backoff uint8
-- Options uint8
-- Pad_cgo_0 [2]byte
-- Rto uint32
-- Ato uint32
-- Snd_mss uint32
-- Rcv_mss uint32
-- Unacked uint32
-- Sacked uint32
-- Lost uint32
-- Retrans uint32
-- Fackets uint32
-- Last_data_sent uint32
-- Last_ack_sent uint32
-- Last_data_recv uint32
-- Last_ack_recv uint32
-- Pmtu uint32
-- Rcv_ssthresh uint32
-- Rtt uint32
-- Rttvar uint32
-- Snd_ssthresh uint32
-- Snd_cwnd uint32
-- Advmss uint32
-- Reordering uint32
-- Rcv_rtt uint32
-- Rcv_space uint32
-- Total_retrans uint32
--}
--
- const (
-- SizeofSockaddrInet4 = 0x10
-- SizeofSockaddrInet6 = 0x1c
-- SizeofSockaddrAny = 0x70
-- SizeofSockaddrUnix = 0x6e
-- SizeofSockaddrLinklayer = 0x14
-- SizeofSockaddrNetlink = 0xc
-- SizeofSockaddrHCI = 0x6
-- SizeofSockaddrCAN = 0x10
-- SizeofSockaddrALG = 0x58
-- SizeofSockaddrVM = 0x10
-- SizeofLinger = 0x8
-- SizeofIovec = 0x8
-- SizeofIPMreq = 0x8
-- SizeofIPMreqn = 0xc
-- SizeofIPv6Mreq = 0x14
-- SizeofPacketMreq = 0x10
-- SizeofMsghdr = 0x1c
-- SizeofCmsghdr = 0xc
-- SizeofInet4Pktinfo = 0xc
-- SizeofInet6Pktinfo = 0x14
-- SizeofIPv6MTUInfo = 0x20
-- SizeofICMPv6Filter = 0x20
-- SizeofUcred = 0xc
-- SizeofTCPInfo = 0x68
-+ SizeofIovec = 0x8
-+ SizeofMsghdr = 0x1c
-+ SizeofCmsghdr = 0xc
- )
-
- const (
-- IFA_UNSPEC = 0x0
-- IFA_ADDRESS = 0x1
-- IFA_LOCAL = 0x2
-- IFA_LABEL = 0x3
-- IFA_BROADCAST = 0x4
-- IFA_ANYCAST = 0x5
-- IFA_CACHEINFO = 0x6
-- IFA_MULTICAST = 0x7
-- IFLA_UNSPEC = 0x0
-- IFLA_ADDRESS = 0x1
-- IFLA_BROADCAST = 0x2
-- IFLA_IFNAME = 0x3
-- IFLA_MTU = 0x4
-- IFLA_LINK = 0x5
-- IFLA_QDISC = 0x6
-- IFLA_STATS = 0x7
-- IFLA_COST = 0x8
-- IFLA_PRIORITY = 0x9
-- IFLA_MASTER = 0xa
-- IFLA_WIRELESS = 0xb
-- IFLA_PROTINFO = 0xc
-- IFLA_TXQLEN = 0xd
-- IFLA_MAP = 0xe
-- IFLA_WEIGHT = 0xf
-- IFLA_OPERSTATE = 0x10
-- IFLA_LINKMODE = 0x11
-- IFLA_LINKINFO = 0x12
-- IFLA_NET_NS_PID = 0x13
-- IFLA_IFALIAS = 0x14
-- IFLA_MAX = 0x2b
-- RT_SCOPE_UNIVERSE = 0x0
-- RT_SCOPE_SITE = 0xc8
-- RT_SCOPE_LINK = 0xfd
-- RT_SCOPE_HOST = 0xfe
-- RT_SCOPE_NOWHERE = 0xff
-- RT_TABLE_UNSPEC = 0x0
-- RT_TABLE_COMPAT = 0xfc
-- RT_TABLE_DEFAULT = 0xfd
-- RT_TABLE_MAIN = 0xfe
-- RT_TABLE_LOCAL = 0xff
-- RT_TABLE_MAX = 0xffffffff
-- RTA_UNSPEC = 0x0
-- RTA_DST = 0x1
-- RTA_SRC = 0x2
-- RTA_IIF = 0x3
-- RTA_OIF = 0x4
-- RTA_GATEWAY = 0x5
-- RTA_PRIORITY = 0x6
-- RTA_PREFSRC = 0x7
-- RTA_METRICS = 0x8
-- RTA_MULTIPATH = 0x9
-- RTA_FLOW = 0xb
-- RTA_CACHEINFO = 0xc
-- RTA_TABLE = 0xf
-- RTN_UNSPEC = 0x0
-- RTN_UNICAST = 0x1
-- RTN_LOCAL = 0x2
-- RTN_BROADCAST = 0x3
-- RTN_ANYCAST = 0x4
-- RTN_MULTICAST = 0x5
-- RTN_BLACKHOLE = 0x6
-- RTN_UNREACHABLE = 0x7
-- RTN_PROHIBIT = 0x8
-- RTN_THROW = 0x9
-- RTN_NAT = 0xa
-- RTN_XRESOLVE = 0xb
-- RTNLGRP_NONE = 0x0
-- RTNLGRP_LINK = 0x1
-- RTNLGRP_NOTIFY = 0x2
-- RTNLGRP_NEIGH = 0x3
-- RTNLGRP_TC = 0x4
-- RTNLGRP_IPV4_IFADDR = 0x5
-- RTNLGRP_IPV4_MROUTE = 0x6
-- RTNLGRP_IPV4_ROUTE = 0x7
-- RTNLGRP_IPV4_RULE = 0x8
-- RTNLGRP_IPV6_IFADDR = 0x9
-- RTNLGRP_IPV6_MROUTE = 0xa
-- RTNLGRP_IPV6_ROUTE = 0xb
-- RTNLGRP_IPV6_IFINFO = 0xc
-- RTNLGRP_IPV6_PREFIX = 0x12
-- RTNLGRP_IPV6_RULE = 0x13
-- RTNLGRP_ND_USEROPT = 0x14
-- SizeofNlMsghdr = 0x10
-- SizeofNlMsgerr = 0x14
-- SizeofRtGenmsg = 0x1
-- SizeofNlAttr = 0x4
-- SizeofRtAttr = 0x4
-- SizeofIfInfomsg = 0x10
-- SizeofIfAddrmsg = 0x8
-- SizeofRtMsg = 0xc
-- SizeofRtNexthop = 0x8
-+ SizeofSockFprog = 0x8
- )
-
--type NlMsghdr struct {
-- Len uint32
-- Type uint16
-- Flags uint16
-- Seq uint32
-- Pid uint32
--}
--
--type NlMsgerr struct {
-- Error int32
-- Msg NlMsghdr
--}
--
--type RtGenmsg struct {
-- Family uint8
--}
--
--type NlAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type RtAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type IfInfomsg struct {
-- Family uint8
-- X__ifi_pad uint8
-- Type uint16
-- Index int32
-- Flags uint32
-- Change uint32
--}
--
--type IfAddrmsg struct {
-- Family uint8
-- Prefixlen uint8
-- Flags uint8
-- Scope uint8
-- Index uint32
--}
--
--type RtMsg struct {
-- Family uint8
-- Dst_len uint8
-- Src_len uint8
-- Tos uint8
-- Table uint8
-- Protocol uint8
-- Scope uint8
-- Type uint8
-- Flags uint32
--}
--
--type RtNexthop struct {
-- Len uint16
-- Flags uint8
-- Hops uint8
-- Ifindex int32
--}
--
--const (
-- SizeofSockFilter = 0x8
-- SizeofSockFprog = 0x8
--)
--
--type SockFilter struct {
-- Code uint16
-- Jt uint8
-- Jf uint8
-- K uint32
--}
--
--type SockFprog struct {
-- Len uint16
-- Pad_cgo_0 [2]byte
-- Filter *SockFilter
--}
--
--type InotifyEvent struct {
-- Wd int32
-- Mask uint32
-- Cookie uint32
-- Len uint32
--}
--
--const SizeofInotifyEvent = 0x10
--
- type PtraceRegs struct {
- Ebx int32
- Ecx int32
-@@ -617,16 +201,7 @@ type Sysinfo_t struct {
- Totalhigh uint32
- Freehigh uint32
- Unit uint32
-- X_f [8]int8
--}
--
--type Utsname struct {
-- Sysname [65]int8
-- Nodename [65]int8
-- Release [65]int8
-- Version [65]int8
-- Machine [65]int8
-- Domainname [65]int8
-+ _ [8]int8
- }
-
- type Ustat_t struct {
-@@ -643,37 +218,14 @@ type EpollEvent struct {
- }
-
- const (
-- AT_FDCWD = -0x64
-- AT_REMOVEDIR = 0x200
-- AT_SYMLINK_FOLLOW = 0x400
-- AT_SYMLINK_NOFOLLOW = 0x100
--)
--
--type PollFd struct {
-- Fd int32
-- Events int16
-- Revents int16
--}
--
--const (
-- POLLIN = 0x1
-- POLLPRI = 0x2
-- POLLOUT = 0x4
- POLLRDHUP = 0x2000
-- POLLERR = 0x8
-- POLLHUP = 0x10
-- POLLNVAL = 0x20
- )
-
- type Sigset_t struct {
-- X__val [32]uint32
-+ Val [32]uint32
- }
-
--const RNDGETENTCNT = 0x80045200
--
--const PERF_IOC_FLAG_GROUP = 0x1
--
--const _SC_PAGESIZE = 0x1e
-+const _C__NSIG = 0x41
-
- type Termios struct {
- Iflag uint32
-@@ -686,20 +238,12 @@ type Termios struct {
- Ospeed uint32
- }
-
--type Winsize struct {
-- Row uint16
-- Col uint16
-- Xpixel uint16
-- Ypixel uint16
--}
--
- type Taskstats struct {
- Version uint16
-- Pad_cgo_0 [2]byte
- Ac_exitcode uint32
- Ac_flag uint8
- Ac_nice uint8
-- Pad_cgo_1 [6]byte
-+ _ [4]byte
- Cpu_count uint64
- Cpu_delay_total uint64
- Blkio_count uint64
-@@ -711,13 +255,13 @@ type Taskstats struct {
- Ac_comm [32]int8
- Ac_sched uint8
- Ac_pad [3]uint8
-- Pad_cgo_2 [4]byte
-+ _ [4]byte
- Ac_uid uint32
- Ac_gid uint32
- Ac_pid uint32
- Ac_ppid uint32
- Ac_btime uint32
-- Pad_cgo_3 [4]byte
-+ _ [4]byte
- Ac_etime uint64
- Ac_utime uint64
- Ac_stime uint64
-@@ -741,55 +285,315 @@ type Taskstats struct {
- Cpu_scaled_run_real_total uint64
- Freepages_count uint64
- Freepages_delay_total uint64
-+ Thrashing_count uint64
-+ Thrashing_delay_total uint64
-+ Ac_btime64 uint64
-+}
-+
-+type cpuMask uint32
-+
-+const (
-+ _NCPUBITS = 0x20
-+)
-+
-+const (
-+ CBitFieldMaskBit0 = 0x1
-+ CBitFieldMaskBit1 = 0x2
-+ CBitFieldMaskBit2 = 0x4
-+ CBitFieldMaskBit3 = 0x8
-+ CBitFieldMaskBit4 = 0x10
-+ CBitFieldMaskBit5 = 0x20
-+ CBitFieldMaskBit6 = 0x40
-+ CBitFieldMaskBit7 = 0x80
-+ CBitFieldMaskBit8 = 0x100
-+ CBitFieldMaskBit9 = 0x200
-+ CBitFieldMaskBit10 = 0x400
-+ CBitFieldMaskBit11 = 0x800
-+ CBitFieldMaskBit12 = 0x1000
-+ CBitFieldMaskBit13 = 0x2000
-+ CBitFieldMaskBit14 = 0x4000
-+ CBitFieldMaskBit15 = 0x8000
-+ CBitFieldMaskBit16 = 0x10000
-+ CBitFieldMaskBit17 = 0x20000
-+ CBitFieldMaskBit18 = 0x40000
-+ CBitFieldMaskBit19 = 0x80000
-+ CBitFieldMaskBit20 = 0x100000
-+ CBitFieldMaskBit21 = 0x200000
-+ CBitFieldMaskBit22 = 0x400000
-+ CBitFieldMaskBit23 = 0x800000
-+ CBitFieldMaskBit24 = 0x1000000
-+ CBitFieldMaskBit25 = 0x2000000
-+ CBitFieldMaskBit26 = 0x4000000
-+ CBitFieldMaskBit27 = 0x8000000
-+ CBitFieldMaskBit28 = 0x10000000
-+ CBitFieldMaskBit29 = 0x20000000
-+ CBitFieldMaskBit30 = 0x40000000
-+ CBitFieldMaskBit31 = 0x80000000
-+ CBitFieldMaskBit32 = 0x100000000
-+ CBitFieldMaskBit33 = 0x200000000
-+ CBitFieldMaskBit34 = 0x400000000
-+ CBitFieldMaskBit35 = 0x800000000
-+ CBitFieldMaskBit36 = 0x1000000000
-+ CBitFieldMaskBit37 = 0x2000000000
-+ CBitFieldMaskBit38 = 0x4000000000
-+ CBitFieldMaskBit39 = 0x8000000000
-+ CBitFieldMaskBit40 = 0x10000000000
-+ CBitFieldMaskBit41 = 0x20000000000
-+ CBitFieldMaskBit42 = 0x40000000000
-+ CBitFieldMaskBit43 = 0x80000000000
-+ CBitFieldMaskBit44 = 0x100000000000
-+ CBitFieldMaskBit45 = 0x200000000000
-+ CBitFieldMaskBit46 = 0x400000000000
-+ CBitFieldMaskBit47 = 0x800000000000
-+ CBitFieldMaskBit48 = 0x1000000000000
-+ CBitFieldMaskBit49 = 0x2000000000000
-+ CBitFieldMaskBit50 = 0x4000000000000
-+ CBitFieldMaskBit51 = 0x8000000000000
-+ CBitFieldMaskBit52 = 0x10000000000000
-+ CBitFieldMaskBit53 = 0x20000000000000
-+ CBitFieldMaskBit54 = 0x40000000000000
-+ CBitFieldMaskBit55 = 0x80000000000000
-+ CBitFieldMaskBit56 = 0x100000000000000
-+ CBitFieldMaskBit57 = 0x200000000000000
-+ CBitFieldMaskBit58 = 0x400000000000000
-+ CBitFieldMaskBit59 = 0x800000000000000
-+ CBitFieldMaskBit60 = 0x1000000000000000
-+ CBitFieldMaskBit61 = 0x2000000000000000
-+ CBitFieldMaskBit62 = 0x4000000000000000
-+ CBitFieldMaskBit63 = 0x8000000000000000
-+)
-+
-+type SockaddrStorage struct {
-+ Family uint16
-+ _ [122]int8
-+ _ uint32
-+}
-+
-+type HDGeometry struct {
-+ Heads uint8
-+ Sectors uint8
-+ Cylinders uint16
-+ Start uint32
-+}
-+
-+type Statfs_t struct {
-+ Type int32
-+ Bsize int32
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Files uint64
-+ Ffree uint64
-+ Fsid Fsid
-+ Namelen int32
-+ Frsize int32
-+ Flags int32
-+ Spare [4]int32
-+}
-+
-+type TpacketHdr struct {
-+ Status uint32
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Usec uint32
- }
-
- const (
-- TASKSTATS_CMD_UNSPEC = 0x0
-- TASKSTATS_CMD_GET = 0x1
-- TASKSTATS_CMD_NEW = 0x2
-- TASKSTATS_TYPE_UNSPEC = 0x0
-- TASKSTATS_TYPE_PID = 0x1
-- TASKSTATS_TYPE_TGID = 0x2
-- TASKSTATS_TYPE_STATS = 0x3
-- TASKSTATS_TYPE_AGGR_PID = 0x4
-- TASKSTATS_TYPE_AGGR_TGID = 0x5
-- TASKSTATS_TYPE_NULL = 0x6
-- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
-- TASKSTATS_CMD_ATTR_PID = 0x1
-- TASKSTATS_CMD_ATTR_TGID = 0x2
-- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
-- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-+ SizeofTpacketHdr = 0x18
- )
-
--type Genlmsghdr struct {
-- Cmd uint8
-- Version uint8
-- Reserved uint16
-+type RTCPLLInfo struct {
-+ Ctrl int32
-+ Value int32
-+ Max int32
-+ Min int32
-+ Posmult int32
-+ Negmult int32
-+ Clock int32
-+}
-+
-+type BlkpgPartition struct {
-+ Start int64
-+ Length int64
-+ Pno int32
-+ Devname [64]uint8
-+ Volname [64]uint8
- }
-
- const (
-- CTRL_CMD_UNSPEC = 0x0
-- CTRL_CMD_NEWFAMILY = 0x1
-- CTRL_CMD_DELFAMILY = 0x2
-- CTRL_CMD_GETFAMILY = 0x3
-- CTRL_CMD_NEWOPS = 0x4
-- CTRL_CMD_DELOPS = 0x5
-- CTRL_CMD_GETOPS = 0x6
-- CTRL_CMD_NEWMCAST_GRP = 0x7
-- CTRL_CMD_DELMCAST_GRP = 0x8
-- CTRL_CMD_GETMCAST_GRP = 0x9
-- CTRL_ATTR_UNSPEC = 0x0
-- CTRL_ATTR_FAMILY_ID = 0x1
-- CTRL_ATTR_FAMILY_NAME = 0x2
-- CTRL_ATTR_VERSION = 0x3
-- CTRL_ATTR_HDRSIZE = 0x4
-- CTRL_ATTR_MAXATTR = 0x5
-- CTRL_ATTR_OPS = 0x6
-- CTRL_ATTR_MCAST_GROUPS = 0x7
-- CTRL_ATTR_OP_UNSPEC = 0x0
-- CTRL_ATTR_OP_ID = 0x1
-- CTRL_ATTR_OP_FLAGS = 0x2
-- CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
-- CTRL_ATTR_MCAST_GRP_NAME = 0x1
-- CTRL_ATTR_MCAST_GRP_ID = 0x2
-+ BLKPG = 0x1269
- )
-+
-+type XDPUmemReg struct {
-+ Addr uint64
-+ Len uint64
-+ Size uint32
-+ Headroom uint32
-+ Flags uint32
-+}
-+
-+type CryptoUserAlg struct {
-+ Name [64]int8
-+ Driver_name [64]int8
-+ Module_name [64]int8
-+ Type uint32
-+ Mask uint32
-+ Refcnt uint32
-+ Flags uint32
-+}
-+
-+type CryptoStatAEAD struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatAKCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Verify_cnt uint64
-+ Sign_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCompress struct {
-+ Type [64]int8
-+ Compress_cnt uint64
-+ Compress_tlen uint64
-+ Decompress_cnt uint64
-+ Decompress_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatHash struct {
-+ Type [64]int8
-+ Hash_cnt uint64
-+ Hash_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatKPP struct {
-+ Type [64]int8
-+ Setsecret_cnt uint64
-+ Generate_public_key_cnt uint64
-+ Compute_shared_secret_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatRNG struct {
-+ Type [64]int8
-+ Generate_cnt uint64
-+ Generate_tlen uint64
-+ Seed_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportHash struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Digestsize uint32
-+}
-+
-+type CryptoReportCipher struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+}
-+
-+type CryptoReportBlkCipher struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportAEAD struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Maxauthsize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportComp struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportRNG struct {
-+ Type [64]int8
-+ Seedsize uint32
-+}
-+
-+type CryptoReportAKCipher struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportKPP struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportAcomp struct {
-+ Type [64]int8
-+}
-+
-+type LoopInfo struct {
-+ Number int32
-+ Device uint16
-+ Inode uint32
-+ Rdevice uint16
-+ Offset int32
-+ Encrypt_type int32
-+ Encrypt_key_size int32
-+ Flags int32
-+ Name [64]int8
-+ Encrypt_key [32]uint8
-+ Init [2]uint32
-+ Reserved [4]int8
-+}
-+
-+type TIPCSubscr struct {
-+ Seq TIPCServiceRange
-+ Timeout uint32
-+ Filter uint32
-+ Handle [8]int8
-+}
-+
-+type TIPCSIOCLNReq struct {
-+ Peer uint32
-+ Id uint32
-+ Linkname [68]int8
-+}
-+
-+type TIPCSIOCNodeIDReq struct {
-+ Peer uint32
-+ Id [16]int8
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
-index e54fa984..201fb348 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
-@@ -6,19 +6,12 @@
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-- PathMax = 0x1000
-+ SizeofPtr = 0x8
-+ SizeofLong = 0x8
- )
-
- type (
-- _C_short int16
-- _C_int int32
-- _C_long int64
-- _C_long_long int64
-+ _C_long int64
- )
-
- type Timespec struct {
-@@ -33,13 +26,11 @@ type Timeval struct {
-
- type Timex struct {
- Modes uint32
-- Pad_cgo_0 [4]byte
- Offset int64
- Freq int64
- Maxerror int64
- Esterror int64
- Status int32
-- Pad_cgo_1 [4]byte
- Constant int64
- Precision int64
- Tolerance int64
-@@ -48,14 +39,13 @@ type Timex struct {
- Ppsfreq int64
- Jitter int64
- Shift int32
-- Pad_cgo_2 [4]byte
- Stabil int64
- Jitcnt int64
- Calcnt int64
- Errcnt int64
- Stbcnt int64
- Tai int32
-- Pad_cgo_3 [44]byte
-+ _ [44]byte
- }
-
- type Time_t int64
-@@ -91,13 +81,6 @@ type Rusage struct {
- Nivcsw int64
- }
-
--type Rlimit struct {
-- Cur uint64
-- Max uint64
--}
--
--type _Gid_t uint32
--
- type Stat_t struct {
- Dev uint64
- Ino uint64
-@@ -105,7 +88,7 @@ type Stat_t struct {
- Mode uint32
- Uid uint32
- Gid uint32
-- X__pad0 int32
-+ _ int32
- Rdev uint64
- Size int64
- Blksize int64
-@@ -116,139 +99,29 @@ type Stat_t struct {
- _ [3]int64
- }
-
--type Statfs_t struct {
-- Type int64
-- Bsize int64
-- Blocks uint64
-- Bfree uint64
-- Bavail uint64
-- Files uint64
-- Ffree uint64
-- Fsid Fsid
-- Namelen int64
-- Frsize int64
-- Flags int64
-- Spare [4]int64
--}
--
- type Dirent struct {
-- Ino uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Name [256]int8
-- Pad_cgo_0 [5]byte
--}
--
--type Fsid struct {
-- X__val [2]int32
-+ Ino uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Name [256]int8
-+ _ [5]byte
- }
-
- type Flock_t struct {
-- Type int16
-- Whence int16
-- Pad_cgo_0 [4]byte
-- Start int64
-- Len int64
-- Pid int32
-- Pad_cgo_1 [4]byte
--}
--
--type FscryptPolicy struct {
-- Version uint8
-- Contents_encryption_mode uint8
-- Filenames_encryption_mode uint8
-- Flags uint8
-- Master_key_descriptor [8]uint8
--}
--
--type FscryptKey struct {
-- Mode uint32
-- Raw [64]uint8
-- Size uint32
--}
--
--type KeyctlDHParams struct {
-- Private int32
-- Prime int32
-- Base int32
-+ Type int16
-+ Whence int16
-+ Start int64
-+ Len int64
-+ Pid int32
-+ _ [4]byte
- }
-
- const (
-- FADV_NORMAL = 0x0
-- FADV_RANDOM = 0x1
-- FADV_SEQUENTIAL = 0x2
-- FADV_WILLNEED = 0x3
-- FADV_DONTNEED = 0x4
-- FADV_NOREUSE = 0x5
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
- )
-
--type RawSockaddrInet4 struct {
-- Family uint16
-- Port uint16
-- Addr [4]byte /* in_addr */
-- Zero [8]uint8
--}
--
--type RawSockaddrInet6 struct {
-- Family uint16
-- Port uint16
-- Flowinfo uint32
-- Addr [16]byte /* in6_addr */
-- Scope_id uint32
--}
--
--type RawSockaddrUnix struct {
-- Family uint16
-- Path [108]int8
--}
--
--type RawSockaddrLinklayer struct {
-- Family uint16
-- Protocol uint16
-- Ifindex int32
-- Hatype uint16
-- Pkttype uint8
-- Halen uint8
-- Addr [8]uint8
--}
--
--type RawSockaddrNetlink struct {
-- Family uint16
-- Pad uint16
-- Pid uint32
-- Groups uint32
--}
--
--type RawSockaddrHCI struct {
-- Family uint16
-- Dev uint16
-- Channel uint16
--}
--
--type RawSockaddrCAN struct {
-- Family uint16
-- Pad_cgo_0 [2]byte
-- Ifindex int32
-- Addr [8]byte
--}
--
--type RawSockaddrALG struct {
-- Family uint16
-- Type [14]uint8
-- Feat uint32
-- Mask uint32
-- Name [64]uint8
--}
--
--type RawSockaddrVM struct {
-- Family uint16
-- Reserved1 uint16
-- Port uint32
-- Cid uint32
-- Zero [4]uint8
--}
--
- type RawSockaddr struct {
- Family uint16
- Data [14]int8
-@@ -259,51 +132,20 @@ type RawSockaddrAny struct {
- Pad [96]int8
- }
-
--type _Socklen uint32
--
--type Linger struct {
-- Onoff int32
-- Linger int32
--}
--
- type Iovec struct {
- Base *byte
- Len uint64
- }
-
--type IPMreq struct {
-- Multiaddr [4]byte /* in_addr */
-- Interface [4]byte /* in_addr */
--}
--
--type IPMreqn struct {
-- Multiaddr [4]byte /* in_addr */
-- Address [4]byte /* in_addr */
-- Ifindex int32
--}
--
--type IPv6Mreq struct {
-- Multiaddr [16]byte /* in6_addr */
-- Interface uint32
--}
--
--type PacketMreq struct {
-- Ifindex int32
-- Type uint16
-- Alen uint16
-- Address [8]uint8
--}
--
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
- Iov *Iovec
- Iovlen uint64
- Control *byte
- Controllen uint64
- Flags int32
-- Pad_cgo_1 [4]byte
-+ _ [4]byte
- }
-
- type Cmsghdr struct {
-@@ -312,277 +154,16 @@ type Cmsghdr struct {
- Type int32
- }
-
--type Inet4Pktinfo struct {
-- Ifindex int32
-- Spec_dst [4]byte /* in_addr */
-- Addr [4]byte /* in_addr */
--}
--
--type Inet6Pktinfo struct {
-- Addr [16]byte /* in6_addr */
-- Ifindex uint32
--}
--
--type IPv6MTUInfo struct {
-- Addr RawSockaddrInet6
-- Mtu uint32
--}
--
--type ICMPv6Filter struct {
-- Data [8]uint32
--}
--
--type Ucred struct {
-- Pid int32
-- Uid uint32
-- Gid uint32
--}
--
--type TCPInfo struct {
-- State uint8
-- Ca_state uint8
-- Retransmits uint8
-- Probes uint8
-- Backoff uint8
-- Options uint8
-- Pad_cgo_0 [2]byte
-- Rto uint32
-- Ato uint32
-- Snd_mss uint32
-- Rcv_mss uint32
-- Unacked uint32
-- Sacked uint32
-- Lost uint32
-- Retrans uint32
-- Fackets uint32
-- Last_data_sent uint32
-- Last_ack_sent uint32
-- Last_data_recv uint32
-- Last_ack_recv uint32
-- Pmtu uint32
-- Rcv_ssthresh uint32
-- Rtt uint32
-- Rttvar uint32
-- Snd_ssthresh uint32
-- Snd_cwnd uint32
-- Advmss uint32
-- Reordering uint32
-- Rcv_rtt uint32
-- Rcv_space uint32
-- Total_retrans uint32
--}
--
- const (
-- SizeofSockaddrInet4 = 0x10
-- SizeofSockaddrInet6 = 0x1c
-- SizeofSockaddrAny = 0x70
-- SizeofSockaddrUnix = 0x6e
-- SizeofSockaddrLinklayer = 0x14
-- SizeofSockaddrNetlink = 0xc
-- SizeofSockaddrHCI = 0x6
-- SizeofSockaddrCAN = 0x10
-- SizeofSockaddrALG = 0x58
-- SizeofSockaddrVM = 0x10
-- SizeofLinger = 0x8
-- SizeofIovec = 0x10
-- SizeofIPMreq = 0x8
-- SizeofIPMreqn = 0xc
-- SizeofIPv6Mreq = 0x14
-- SizeofPacketMreq = 0x10
-- SizeofMsghdr = 0x38
-- SizeofCmsghdr = 0x10
-- SizeofInet4Pktinfo = 0xc
-- SizeofInet6Pktinfo = 0x14
-- SizeofIPv6MTUInfo = 0x20
-- SizeofICMPv6Filter = 0x20
-- SizeofUcred = 0xc
-- SizeofTCPInfo = 0x68
-+ SizeofIovec = 0x10
-+ SizeofMsghdr = 0x38
-+ SizeofCmsghdr = 0x10
- )
-
- const (
-- IFA_UNSPEC = 0x0
-- IFA_ADDRESS = 0x1
-- IFA_LOCAL = 0x2
-- IFA_LABEL = 0x3
-- IFA_BROADCAST = 0x4
-- IFA_ANYCAST = 0x5
-- IFA_CACHEINFO = 0x6
-- IFA_MULTICAST = 0x7
-- IFLA_UNSPEC = 0x0
-- IFLA_ADDRESS = 0x1
-- IFLA_BROADCAST = 0x2
-- IFLA_IFNAME = 0x3
-- IFLA_MTU = 0x4
-- IFLA_LINK = 0x5
-- IFLA_QDISC = 0x6
-- IFLA_STATS = 0x7
-- IFLA_COST = 0x8
-- IFLA_PRIORITY = 0x9
-- IFLA_MASTER = 0xa
-- IFLA_WIRELESS = 0xb
-- IFLA_PROTINFO = 0xc
-- IFLA_TXQLEN = 0xd
-- IFLA_MAP = 0xe
-- IFLA_WEIGHT = 0xf
-- IFLA_OPERSTATE = 0x10
-- IFLA_LINKMODE = 0x11
-- IFLA_LINKINFO = 0x12
-- IFLA_NET_NS_PID = 0x13
-- IFLA_IFALIAS = 0x14
-- IFLA_MAX = 0x2b
-- RT_SCOPE_UNIVERSE = 0x0
-- RT_SCOPE_SITE = 0xc8
-- RT_SCOPE_LINK = 0xfd
-- RT_SCOPE_HOST = 0xfe
-- RT_SCOPE_NOWHERE = 0xff
-- RT_TABLE_UNSPEC = 0x0
-- RT_TABLE_COMPAT = 0xfc
-- RT_TABLE_DEFAULT = 0xfd
-- RT_TABLE_MAIN = 0xfe
-- RT_TABLE_LOCAL = 0xff
-- RT_TABLE_MAX = 0xffffffff
-- RTA_UNSPEC = 0x0
-- RTA_DST = 0x1
-- RTA_SRC = 0x2
-- RTA_IIF = 0x3
-- RTA_OIF = 0x4
-- RTA_GATEWAY = 0x5
-- RTA_PRIORITY = 0x6
-- RTA_PREFSRC = 0x7
-- RTA_METRICS = 0x8
-- RTA_MULTIPATH = 0x9
-- RTA_FLOW = 0xb
-- RTA_CACHEINFO = 0xc
-- RTA_TABLE = 0xf
-- RTN_UNSPEC = 0x0
-- RTN_UNICAST = 0x1
-- RTN_LOCAL = 0x2
-- RTN_BROADCAST = 0x3
-- RTN_ANYCAST = 0x4
-- RTN_MULTICAST = 0x5
-- RTN_BLACKHOLE = 0x6
-- RTN_UNREACHABLE = 0x7
-- RTN_PROHIBIT = 0x8
-- RTN_THROW = 0x9
-- RTN_NAT = 0xa
-- RTN_XRESOLVE = 0xb
-- RTNLGRP_NONE = 0x0
-- RTNLGRP_LINK = 0x1
-- RTNLGRP_NOTIFY = 0x2
-- RTNLGRP_NEIGH = 0x3
-- RTNLGRP_TC = 0x4
-- RTNLGRP_IPV4_IFADDR = 0x5
-- RTNLGRP_IPV4_MROUTE = 0x6
-- RTNLGRP_IPV4_ROUTE = 0x7
-- RTNLGRP_IPV4_RULE = 0x8
-- RTNLGRP_IPV6_IFADDR = 0x9
-- RTNLGRP_IPV6_MROUTE = 0xa
-- RTNLGRP_IPV6_ROUTE = 0xb
-- RTNLGRP_IPV6_IFINFO = 0xc
-- RTNLGRP_IPV6_PREFIX = 0x12
-- RTNLGRP_IPV6_RULE = 0x13
-- RTNLGRP_ND_USEROPT = 0x14
-- SizeofNlMsghdr = 0x10
-- SizeofNlMsgerr = 0x14
-- SizeofRtGenmsg = 0x1
-- SizeofNlAttr = 0x4
-- SizeofRtAttr = 0x4
-- SizeofIfInfomsg = 0x10
-- SizeofIfAddrmsg = 0x8
-- SizeofRtMsg = 0xc
-- SizeofRtNexthop = 0x8
-+ SizeofSockFprog = 0x10
- )
-
--type NlMsghdr struct {
-- Len uint32
-- Type uint16
-- Flags uint16
-- Seq uint32
-- Pid uint32
--}
--
--type NlMsgerr struct {
-- Error int32
-- Msg NlMsghdr
--}
--
--type RtGenmsg struct {
-- Family uint8
--}
--
--type NlAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type RtAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type IfInfomsg struct {
-- Family uint8
-- X__ifi_pad uint8
-- Type uint16
-- Index int32
-- Flags uint32
-- Change uint32
--}
--
--type IfAddrmsg struct {
-- Family uint8
-- Prefixlen uint8
-- Flags uint8
-- Scope uint8
-- Index uint32
--}
--
--type RtMsg struct {
-- Family uint8
-- Dst_len uint8
-- Src_len uint8
-- Tos uint8
-- Table uint8
-- Protocol uint8
-- Scope uint8
-- Type uint8
-- Flags uint32
--}
--
--type RtNexthop struct {
-- Len uint16
-- Flags uint8
-- Hops uint8
-- Ifindex int32
--}
--
--const (
-- SizeofSockFilter = 0x8
-- SizeofSockFprog = 0x10
--)
--
--type SockFilter struct {
-- Code uint16
-- Jt uint8
-- Jf uint8
-- K uint32
--}
--
--type SockFprog struct {
-- Len uint16
-- Pad_cgo_0 [6]byte
-- Filter *SockFilter
--}
--
--type InotifyEvent struct {
-- Wd int32
-- Mask uint32
-- Cookie uint32
-- Len uint32
--}
--
--const SizeofInotifyEvent = 0x10
--
- type PtraceRegs struct {
- R15 uint64
- R14 uint64
-@@ -628,30 +209,19 @@ type Sysinfo_t struct {
- Freeswap uint64
- Procs uint16
- Pad uint16
-- Pad_cgo_0 [4]byte
- Totalhigh uint64
- Freehigh uint64
- Unit uint32
-- X_f [0]int8
-- Pad_cgo_1 [4]byte
--}
--
--type Utsname struct {
-- Sysname [65]int8
-- Nodename [65]int8
-- Release [65]int8
-- Version [65]int8
-- Machine [65]int8
-- Domainname [65]int8
-+ _ [0]int8
-+ _ [4]byte
- }
-
- type Ustat_t struct {
-- Tfree int32
-- Pad_cgo_0 [4]byte
-- Tinode uint64
-- Fname [6]int8
-- Fpack [6]int8
-- Pad_cgo_1 [4]byte
-+ Tfree int32
-+ Tinode uint64
-+ Fname [6]int8
-+ Fpack [6]int8
-+ _ [4]byte
- }
-
- type EpollEvent struct {
-@@ -661,37 +231,14 @@ type EpollEvent struct {
- }
-
- const (
-- AT_FDCWD = -0x64
-- AT_REMOVEDIR = 0x200
-- AT_SYMLINK_FOLLOW = 0x400
-- AT_SYMLINK_NOFOLLOW = 0x100
--)
--
--type PollFd struct {
-- Fd int32
-- Events int16
-- Revents int16
--}
--
--const (
-- POLLIN = 0x1
-- POLLPRI = 0x2
-- POLLOUT = 0x4
- POLLRDHUP = 0x2000
-- POLLERR = 0x8
-- POLLHUP = 0x10
-- POLLNVAL = 0x20
- )
-
- type Sigset_t struct {
-- X__val [16]uint64
-+ Val [16]uint64
- }
-
--const RNDGETENTCNT = 0x80045200
--
--const PERF_IOC_FLAG_GROUP = 0x1
--
--const _SC_PAGESIZE = 0x1e
-+const _C__NSIG = 0x41
-
- type Termios struct {
- Iflag uint32
-@@ -704,20 +251,11 @@ type Termios struct {
- Ospeed uint32
- }
-
--type Winsize struct {
-- Row uint16
-- Col uint16
-- Xpixel uint16
-- Ypixel uint16
--}
--
- type Taskstats struct {
- Version uint16
-- Pad_cgo_0 [2]byte
- Ac_exitcode uint32
- Ac_flag uint8
- Ac_nice uint8
-- Pad_cgo_1 [6]byte
- Cpu_count uint64
- Cpu_delay_total uint64
- Blkio_count uint64
-@@ -729,13 +267,12 @@ type Taskstats struct {
- Ac_comm [32]int8
- Ac_sched uint8
- Ac_pad [3]uint8
-- Pad_cgo_2 [4]byte
-+ _ [4]byte
- Ac_uid uint32
- Ac_gid uint32
- Ac_pid uint32
- Ac_ppid uint32
- Ac_btime uint32
-- Pad_cgo_3 [4]byte
- Ac_etime uint64
- Ac_utime uint64
- Ac_stime uint64
-@@ -759,55 +296,319 @@ type Taskstats struct {
- Cpu_scaled_run_real_total uint64
- Freepages_count uint64
- Freepages_delay_total uint64
-+ Thrashing_count uint64
-+ Thrashing_delay_total uint64
-+ Ac_btime64 uint64
- }
-
-+type cpuMask uint64
-+
- const (
-- TASKSTATS_CMD_UNSPEC = 0x0
-- TASKSTATS_CMD_GET = 0x1
-- TASKSTATS_CMD_NEW = 0x2
-- TASKSTATS_TYPE_UNSPEC = 0x0
-- TASKSTATS_TYPE_PID = 0x1
-- TASKSTATS_TYPE_TGID = 0x2
-- TASKSTATS_TYPE_STATS = 0x3
-- TASKSTATS_TYPE_AGGR_PID = 0x4
-- TASKSTATS_TYPE_AGGR_TGID = 0x5
-- TASKSTATS_TYPE_NULL = 0x6
-- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
-- TASKSTATS_CMD_ATTR_PID = 0x1
-- TASKSTATS_CMD_ATTR_TGID = 0x2
-- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
-- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-+ _NCPUBITS = 0x40
- )
-
--type Genlmsghdr struct {
-- Cmd uint8
-- Version uint8
-- Reserved uint16
-+const (
-+ CBitFieldMaskBit0 = 0x1
-+ CBitFieldMaskBit1 = 0x2
-+ CBitFieldMaskBit2 = 0x4
-+ CBitFieldMaskBit3 = 0x8
-+ CBitFieldMaskBit4 = 0x10
-+ CBitFieldMaskBit5 = 0x20
-+ CBitFieldMaskBit6 = 0x40
-+ CBitFieldMaskBit7 = 0x80
-+ CBitFieldMaskBit8 = 0x100
-+ CBitFieldMaskBit9 = 0x200
-+ CBitFieldMaskBit10 = 0x400
-+ CBitFieldMaskBit11 = 0x800
-+ CBitFieldMaskBit12 = 0x1000
-+ CBitFieldMaskBit13 = 0x2000
-+ CBitFieldMaskBit14 = 0x4000
-+ CBitFieldMaskBit15 = 0x8000
-+ CBitFieldMaskBit16 = 0x10000
-+ CBitFieldMaskBit17 = 0x20000
-+ CBitFieldMaskBit18 = 0x40000
-+ CBitFieldMaskBit19 = 0x80000
-+ CBitFieldMaskBit20 = 0x100000
-+ CBitFieldMaskBit21 = 0x200000
-+ CBitFieldMaskBit22 = 0x400000
-+ CBitFieldMaskBit23 = 0x800000
-+ CBitFieldMaskBit24 = 0x1000000
-+ CBitFieldMaskBit25 = 0x2000000
-+ CBitFieldMaskBit26 = 0x4000000
-+ CBitFieldMaskBit27 = 0x8000000
-+ CBitFieldMaskBit28 = 0x10000000
-+ CBitFieldMaskBit29 = 0x20000000
-+ CBitFieldMaskBit30 = 0x40000000
-+ CBitFieldMaskBit31 = 0x80000000
-+ CBitFieldMaskBit32 = 0x100000000
-+ CBitFieldMaskBit33 = 0x200000000
-+ CBitFieldMaskBit34 = 0x400000000
-+ CBitFieldMaskBit35 = 0x800000000
-+ CBitFieldMaskBit36 = 0x1000000000
-+ CBitFieldMaskBit37 = 0x2000000000
-+ CBitFieldMaskBit38 = 0x4000000000
-+ CBitFieldMaskBit39 = 0x8000000000
-+ CBitFieldMaskBit40 = 0x10000000000
-+ CBitFieldMaskBit41 = 0x20000000000
-+ CBitFieldMaskBit42 = 0x40000000000
-+ CBitFieldMaskBit43 = 0x80000000000
-+ CBitFieldMaskBit44 = 0x100000000000
-+ CBitFieldMaskBit45 = 0x200000000000
-+ CBitFieldMaskBit46 = 0x400000000000
-+ CBitFieldMaskBit47 = 0x800000000000
-+ CBitFieldMaskBit48 = 0x1000000000000
-+ CBitFieldMaskBit49 = 0x2000000000000
-+ CBitFieldMaskBit50 = 0x4000000000000
-+ CBitFieldMaskBit51 = 0x8000000000000
-+ CBitFieldMaskBit52 = 0x10000000000000
-+ CBitFieldMaskBit53 = 0x20000000000000
-+ CBitFieldMaskBit54 = 0x40000000000000
-+ CBitFieldMaskBit55 = 0x80000000000000
-+ CBitFieldMaskBit56 = 0x100000000000000
-+ CBitFieldMaskBit57 = 0x200000000000000
-+ CBitFieldMaskBit58 = 0x400000000000000
-+ CBitFieldMaskBit59 = 0x800000000000000
-+ CBitFieldMaskBit60 = 0x1000000000000000
-+ CBitFieldMaskBit61 = 0x2000000000000000
-+ CBitFieldMaskBit62 = 0x4000000000000000
-+ CBitFieldMaskBit63 = 0x8000000000000000
-+)
-+
-+type SockaddrStorage struct {
-+ Family uint16
-+ _ [118]int8
-+ _ uint64
-+}
-+
-+type HDGeometry struct {
-+ Heads uint8
-+ Sectors uint8
-+ Cylinders uint16
-+ Start uint64
-+}
-+
-+type Statfs_t struct {
-+ Type int64
-+ Bsize int64
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Files uint64
-+ Ffree uint64
-+ Fsid Fsid
-+ Namelen int64
-+ Frsize int64
-+ Flags int64
-+ Spare [4]int64
-+}
-+
-+type TpacketHdr struct {
-+ Status uint64
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Usec uint32
-+ _ [4]byte
- }
-
- const (
-- CTRL_CMD_UNSPEC = 0x0
-- CTRL_CMD_NEWFAMILY = 0x1
-- CTRL_CMD_DELFAMILY = 0x2
-- CTRL_CMD_GETFAMILY = 0x3
-- CTRL_CMD_NEWOPS = 0x4
-- CTRL_CMD_DELOPS = 0x5
-- CTRL_CMD_GETOPS = 0x6
-- CTRL_CMD_NEWMCAST_GRP = 0x7
-- CTRL_CMD_DELMCAST_GRP = 0x8
-- CTRL_CMD_GETMCAST_GRP = 0x9
-- CTRL_ATTR_UNSPEC = 0x0
-- CTRL_ATTR_FAMILY_ID = 0x1
-- CTRL_ATTR_FAMILY_NAME = 0x2
-- CTRL_ATTR_VERSION = 0x3
-- CTRL_ATTR_HDRSIZE = 0x4
-- CTRL_ATTR_MAXATTR = 0x5
-- CTRL_ATTR_OPS = 0x6
-- CTRL_ATTR_MCAST_GROUPS = 0x7
-- CTRL_ATTR_OP_UNSPEC = 0x0
-- CTRL_ATTR_OP_ID = 0x1
-- CTRL_ATTR_OP_FLAGS = 0x2
-- CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
-- CTRL_ATTR_MCAST_GRP_NAME = 0x1
-- CTRL_ATTR_MCAST_GRP_ID = 0x2
-+ SizeofTpacketHdr = 0x20
- )
-+
-+type RTCPLLInfo struct {
-+ Ctrl int32
-+ Value int32
-+ Max int32
-+ Min int32
-+ Posmult int32
-+ Negmult int32
-+ Clock int64
-+}
-+
-+type BlkpgPartition struct {
-+ Start int64
-+ Length int64
-+ Pno int32
-+ Devname [64]uint8
-+ Volname [64]uint8
-+ _ [4]byte
-+}
-+
-+const (
-+ BLKPG = 0x1269
-+)
-+
-+type XDPUmemReg struct {
-+ Addr uint64
-+ Len uint64
-+ Size uint32
-+ Headroom uint32
-+ Flags uint32
-+ _ [4]byte
-+}
-+
-+type CryptoUserAlg struct {
-+ Name [64]int8
-+ Driver_name [64]int8
-+ Module_name [64]int8
-+ Type uint32
-+ Mask uint32
-+ Refcnt uint32
-+ Flags uint32
-+}
-+
-+type CryptoStatAEAD struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatAKCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Verify_cnt uint64
-+ Sign_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCompress struct {
-+ Type [64]int8
-+ Compress_cnt uint64
-+ Compress_tlen uint64
-+ Decompress_cnt uint64
-+ Decompress_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatHash struct {
-+ Type [64]int8
-+ Hash_cnt uint64
-+ Hash_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatKPP struct {
-+ Type [64]int8
-+ Setsecret_cnt uint64
-+ Generate_public_key_cnt uint64
-+ Compute_shared_secret_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatRNG struct {
-+ Type [64]int8
-+ Generate_cnt uint64
-+ Generate_tlen uint64
-+ Seed_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportHash struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Digestsize uint32
-+}
-+
-+type CryptoReportCipher struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+}
-+
-+type CryptoReportBlkCipher struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportAEAD struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Maxauthsize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportComp struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportRNG struct {
-+ Type [64]int8
-+ Seedsize uint32
-+}
-+
-+type CryptoReportAKCipher struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportKPP struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportAcomp struct {
-+ Type [64]int8
-+}
-+
-+type LoopInfo struct {
-+ Number int32
-+ Device uint64
-+ Inode uint64
-+ Rdevice uint64
-+ Offset int32
-+ Encrypt_type int32
-+ Encrypt_key_size int32
-+ Flags int32
-+ Name [64]int8
-+ Encrypt_key [32]uint8
-+ Init [2]uint64
-+ Reserved [4]int8
-+ _ [4]byte
-+}
-+
-+type TIPCSubscr struct {
-+ Seq TIPCServiceRange
-+ Timeout uint32
-+ Filter uint32
-+ Handle [8]int8
-+}
-+
-+type TIPCSIOCLNReq struct {
-+ Peer uint32
-+ Id uint32
-+ Linkname [68]int8
-+}
-+
-+type TIPCSIOCNodeIDReq struct {
-+ Peer uint32
-+ Id [16]int8
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go b/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
-index bff6ce25..8051b561 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
-@@ -6,19 +6,12 @@
- package unix
-
- const (
-- sizeofPtr = 0x4
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x4
-- sizeofLongLong = 0x8
-- PathMax = 0x1000
-+ SizeofPtr = 0x4
-+ SizeofLong = 0x4
- )
-
- type (
-- _C_short int16
-- _C_int int32
-- _C_long int32
-- _C_long_long int64
-+ _C_long int32
- )
-
- type Timespec struct {
-@@ -52,7 +45,7 @@ type Timex struct {
- Errcnt int32
- Stbcnt int32
- Tai int32
-- Pad_cgo_0 [44]byte
-+ _ [44]byte
- }
-
- type Time_t int32
-@@ -88,169 +81,51 @@ type Rusage struct {
- Nivcsw int32
- }
-
--type Rlimit struct {
-- Cur uint64
-- Max uint64
--}
--
--type _Gid_t uint32
--
- type Stat_t struct {
-- Dev uint64
-- X__pad1 uint16
-- Pad_cgo_0 [2]byte
-- X__st_ino uint32
-- Mode uint32
-- Nlink uint32
-- Uid uint32
-- Gid uint32
-- Rdev uint64
-- X__pad2 uint16
-- Pad_cgo_1 [6]byte
-- Size int64
-- Blksize int32
-- Pad_cgo_2 [4]byte
-- Blocks int64
-- Atim Timespec
-- Mtim Timespec
-- Ctim Timespec
-- Ino uint64
--}
--
--type Statfs_t struct {
-- Type int32
-- Bsize int32
-- Blocks uint64
-- Bfree uint64
-- Bavail uint64
-- Files uint64
-- Ffree uint64
-- Fsid Fsid
-- Namelen int32
-- Frsize int32
-- Flags int32
-- Spare [4]int32
-- Pad_cgo_0 [4]byte
-+ Dev uint64
-+ _ uint16
-+ _ uint32
-+ Mode uint32
-+ Nlink uint32
-+ Uid uint32
-+ Gid uint32
-+ Rdev uint64
-+ _ uint16
-+ _ [4]byte
-+ Size int64
-+ Blksize int32
-+ _ [4]byte
-+ Blocks int64
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Ino uint64
- }
-
- type Dirent struct {
-- Ino uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Name [256]uint8
-- Pad_cgo_0 [5]byte
--}
--
--type Fsid struct {
-- X__val [2]int32
-+ Ino uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Name [256]uint8
-+ _ [5]byte
- }
-
- type Flock_t struct {
-- Type int16
-- Whence int16
-- Pad_cgo_0 [4]byte
-- Start int64
-- Len int64
-- Pid int32
-- Pad_cgo_1 [4]byte
--}
--
--type FscryptPolicy struct {
-- Version uint8
-- Contents_encryption_mode uint8
-- Filenames_encryption_mode uint8
-- Flags uint8
-- Master_key_descriptor [8]uint8
--}
--
--type FscryptKey struct {
-- Mode uint32
-- Raw [64]uint8
-- Size uint32
--}
--
--type KeyctlDHParams struct {
-- Private int32
-- Prime int32
-- Base int32
-+ Type int16
-+ Whence int16
-+ _ [4]byte
-+ Start int64
-+ Len int64
-+ Pid int32
-+ _ [4]byte
- }
-
- const (
-- FADV_NORMAL = 0x0
-- FADV_RANDOM = 0x1
-- FADV_SEQUENTIAL = 0x2
-- FADV_WILLNEED = 0x3
-- FADV_DONTNEED = 0x4
-- FADV_NOREUSE = 0x5
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
- )
-
--type RawSockaddrInet4 struct {
-- Family uint16
-- Port uint16
-- Addr [4]byte /* in_addr */
-- Zero [8]uint8
--}
--
--type RawSockaddrInet6 struct {
-- Family uint16
-- Port uint16
-- Flowinfo uint32
-- Addr [16]byte /* in6_addr */
-- Scope_id uint32
--}
--
--type RawSockaddrUnix struct {
-- Family uint16
-- Path [108]int8
--}
--
--type RawSockaddrLinklayer struct {
-- Family uint16
-- Protocol uint16
-- Ifindex int32
-- Hatype uint16
-- Pkttype uint8
-- Halen uint8
-- Addr [8]uint8
--}
--
--type RawSockaddrNetlink struct {
-- Family uint16
-- Pad uint16
-- Pid uint32
-- Groups uint32
--}
--
--type RawSockaddrHCI struct {
-- Family uint16
-- Dev uint16
-- Channel uint16
--}
--
--type RawSockaddrCAN struct {
-- Family uint16
-- Pad_cgo_0 [2]byte
-- Ifindex int32
-- Addr [8]byte
--}
--
--type RawSockaddrALG struct {
-- Family uint16
-- Type [14]uint8
-- Feat uint32
-- Mask uint32
-- Name [64]uint8
--}
--
--type RawSockaddrVM struct {
-- Family uint16
-- Reserved1 uint16
-- Port uint32
-- Cid uint32
-- Zero [4]uint8
--}
--
- type RawSockaddr struct {
- Family uint16
- Data [14]uint8
-@@ -261,41 +136,11 @@ type RawSockaddrAny struct {
- Pad [96]uint8
- }
-
--type _Socklen uint32
--
--type Linger struct {
-- Onoff int32
-- Linger int32
--}
--
- type Iovec struct {
- Base *byte
- Len uint32
- }
-
--type IPMreq struct {
-- Multiaddr [4]byte /* in_addr */
-- Interface [4]byte /* in_addr */
--}
--
--type IPMreqn struct {
-- Multiaddr [4]byte /* in_addr */
-- Address [4]byte /* in_addr */
-- Ifindex int32
--}
--
--type IPv6Mreq struct {
-- Multiaddr [16]byte /* in6_addr */
-- Interface uint32
--}
--
--type PacketMreq struct {
-- Ifindex int32
-- Type uint16
-- Alen uint16
-- Address [8]uint8
--}
--
- type Msghdr struct {
- Name *byte
- Namelen uint32
-@@ -312,277 +157,16 @@ type Cmsghdr struct {
- Type int32
- }
-
--type Inet4Pktinfo struct {
-- Ifindex int32
-- Spec_dst [4]byte /* in_addr */
-- Addr [4]byte /* in_addr */
--}
--
--type Inet6Pktinfo struct {
-- Addr [16]byte /* in6_addr */
-- Ifindex uint32
--}
--
--type IPv6MTUInfo struct {
-- Addr RawSockaddrInet6
-- Mtu uint32
--}
--
--type ICMPv6Filter struct {
-- Data [8]uint32
--}
--
--type Ucred struct {
-- Pid int32
-- Uid uint32
-- Gid uint32
--}
--
--type TCPInfo struct {
-- State uint8
-- Ca_state uint8
-- Retransmits uint8
-- Probes uint8
-- Backoff uint8
-- Options uint8
-- Pad_cgo_0 [2]byte
-- Rto uint32
-- Ato uint32
-- Snd_mss uint32
-- Rcv_mss uint32
-- Unacked uint32
-- Sacked uint32
-- Lost uint32
-- Retrans uint32
-- Fackets uint32
-- Last_data_sent uint32
-- Last_ack_sent uint32
-- Last_data_recv uint32
-- Last_ack_recv uint32
-- Pmtu uint32
-- Rcv_ssthresh uint32
-- Rtt uint32
-- Rttvar uint32
-- Snd_ssthresh uint32
-- Snd_cwnd uint32
-- Advmss uint32
-- Reordering uint32
-- Rcv_rtt uint32
-- Rcv_space uint32
-- Total_retrans uint32
--}
--
- const (
-- SizeofSockaddrInet4 = 0x10
-- SizeofSockaddrInet6 = 0x1c
-- SizeofSockaddrAny = 0x70
-- SizeofSockaddrUnix = 0x6e
-- SizeofSockaddrLinklayer = 0x14
-- SizeofSockaddrNetlink = 0xc
-- SizeofSockaddrHCI = 0x6
-- SizeofSockaddrCAN = 0x10
-- SizeofSockaddrALG = 0x58
-- SizeofSockaddrVM = 0x10
-- SizeofLinger = 0x8
-- SizeofIovec = 0x8
-- SizeofIPMreq = 0x8
-- SizeofIPMreqn = 0xc
-- SizeofIPv6Mreq = 0x14
-- SizeofPacketMreq = 0x10
-- SizeofMsghdr = 0x1c
-- SizeofCmsghdr = 0xc
-- SizeofInet4Pktinfo = 0xc
-- SizeofInet6Pktinfo = 0x14
-- SizeofIPv6MTUInfo = 0x20
-- SizeofICMPv6Filter = 0x20
-- SizeofUcred = 0xc
-- SizeofTCPInfo = 0x68
-+ SizeofIovec = 0x8
-+ SizeofMsghdr = 0x1c
-+ SizeofCmsghdr = 0xc
- )
-
- const (
-- IFA_UNSPEC = 0x0
-- IFA_ADDRESS = 0x1
-- IFA_LOCAL = 0x2
-- IFA_LABEL = 0x3
-- IFA_BROADCAST = 0x4
-- IFA_ANYCAST = 0x5
-- IFA_CACHEINFO = 0x6
-- IFA_MULTICAST = 0x7
-- IFLA_UNSPEC = 0x0
-- IFLA_ADDRESS = 0x1
-- IFLA_BROADCAST = 0x2
-- IFLA_IFNAME = 0x3
-- IFLA_MTU = 0x4
-- IFLA_LINK = 0x5
-- IFLA_QDISC = 0x6
-- IFLA_STATS = 0x7
-- IFLA_COST = 0x8
-- IFLA_PRIORITY = 0x9
-- IFLA_MASTER = 0xa
-- IFLA_WIRELESS = 0xb
-- IFLA_PROTINFO = 0xc
-- IFLA_TXQLEN = 0xd
-- IFLA_MAP = 0xe
-- IFLA_WEIGHT = 0xf
-- IFLA_OPERSTATE = 0x10
-- IFLA_LINKMODE = 0x11
-- IFLA_LINKINFO = 0x12
-- IFLA_NET_NS_PID = 0x13
-- IFLA_IFALIAS = 0x14
-- IFLA_MAX = 0x2b
-- RT_SCOPE_UNIVERSE = 0x0
-- RT_SCOPE_SITE = 0xc8
-- RT_SCOPE_LINK = 0xfd
-- RT_SCOPE_HOST = 0xfe
-- RT_SCOPE_NOWHERE = 0xff
-- RT_TABLE_UNSPEC = 0x0
-- RT_TABLE_COMPAT = 0xfc
-- RT_TABLE_DEFAULT = 0xfd
-- RT_TABLE_MAIN = 0xfe
-- RT_TABLE_LOCAL = 0xff
-- RT_TABLE_MAX = 0xffffffff
-- RTA_UNSPEC = 0x0
-- RTA_DST = 0x1
-- RTA_SRC = 0x2
-- RTA_IIF = 0x3
-- RTA_OIF = 0x4
-- RTA_GATEWAY = 0x5
-- RTA_PRIORITY = 0x6
-- RTA_PREFSRC = 0x7
-- RTA_METRICS = 0x8
-- RTA_MULTIPATH = 0x9
-- RTA_FLOW = 0xb
-- RTA_CACHEINFO = 0xc
-- RTA_TABLE = 0xf
-- RTN_UNSPEC = 0x0
-- RTN_UNICAST = 0x1
-- RTN_LOCAL = 0x2
-- RTN_BROADCAST = 0x3
-- RTN_ANYCAST = 0x4
-- RTN_MULTICAST = 0x5
-- RTN_BLACKHOLE = 0x6
-- RTN_UNREACHABLE = 0x7
-- RTN_PROHIBIT = 0x8
-- RTN_THROW = 0x9
-- RTN_NAT = 0xa
-- RTN_XRESOLVE = 0xb
-- RTNLGRP_NONE = 0x0
-- RTNLGRP_LINK = 0x1
-- RTNLGRP_NOTIFY = 0x2
-- RTNLGRP_NEIGH = 0x3
-- RTNLGRP_TC = 0x4
-- RTNLGRP_IPV4_IFADDR = 0x5
-- RTNLGRP_IPV4_MROUTE = 0x6
-- RTNLGRP_IPV4_ROUTE = 0x7
-- RTNLGRP_IPV4_RULE = 0x8
-- RTNLGRP_IPV6_IFADDR = 0x9
-- RTNLGRP_IPV6_MROUTE = 0xa
-- RTNLGRP_IPV6_ROUTE = 0xb
-- RTNLGRP_IPV6_IFINFO = 0xc
-- RTNLGRP_IPV6_PREFIX = 0x12
-- RTNLGRP_IPV6_RULE = 0x13
-- RTNLGRP_ND_USEROPT = 0x14
-- SizeofNlMsghdr = 0x10
-- SizeofNlMsgerr = 0x14
-- SizeofRtGenmsg = 0x1
-- SizeofNlAttr = 0x4
-- SizeofRtAttr = 0x4
-- SizeofIfInfomsg = 0x10
-- SizeofIfAddrmsg = 0x8
-- SizeofRtMsg = 0xc
-- SizeofRtNexthop = 0x8
-+ SizeofSockFprog = 0x8
- )
-
--type NlMsghdr struct {
-- Len uint32
-- Type uint16
-- Flags uint16
-- Seq uint32
-- Pid uint32
--}
--
--type NlMsgerr struct {
-- Error int32
-- Msg NlMsghdr
--}
--
--type RtGenmsg struct {
-- Family uint8
--}
--
--type NlAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type RtAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type IfInfomsg struct {
-- Family uint8
-- X__ifi_pad uint8
-- Type uint16
-- Index int32
-- Flags uint32
-- Change uint32
--}
--
--type IfAddrmsg struct {
-- Family uint8
-- Prefixlen uint8
-- Flags uint8
-- Scope uint8
-- Index uint32
--}
--
--type RtMsg struct {
-- Family uint8
-- Dst_len uint8
-- Src_len uint8
-- Tos uint8
-- Table uint8
-- Protocol uint8
-- Scope uint8
-- Type uint8
-- Flags uint32
--}
--
--type RtNexthop struct {
-- Len uint16
-- Flags uint8
-- Hops uint8
-- Ifindex int32
--}
--
--const (
-- SizeofSockFilter = 0x8
-- SizeofSockFprog = 0x8
--)
--
--type SockFilter struct {
-- Code uint16
-- Jt uint8
-- Jf uint8
-- K uint32
--}
--
--type SockFprog struct {
-- Len uint16
-- Pad_cgo_0 [2]byte
-- Filter *SockFilter
--}
--
--type InotifyEvent struct {
-- Wd int32
-- Mask uint32
-- Cookie uint32
-- Len uint32
--}
--
--const SizeofInotifyEvent = 0x10
--
- type PtraceRegs struct {
- Uregs [18]uint32
- }
-@@ -605,16 +189,7 @@ type Sysinfo_t struct {
- Totalhigh uint32
- Freehigh uint32
- Unit uint32
-- X_f [8]uint8
--}
--
--type Utsname struct {
-- Sysname [65]uint8
-- Nodename [65]uint8
-- Release [65]uint8
-- Version [65]uint8
-- Machine [65]uint8
-- Domainname [65]uint8
-+ _ [8]uint8
- }
-
- type Ustat_t struct {
-@@ -632,37 +207,14 @@ type EpollEvent struct {
- }
-
- const (
-- AT_FDCWD = -0x64
-- AT_REMOVEDIR = 0x200
-- AT_SYMLINK_FOLLOW = 0x400
-- AT_SYMLINK_NOFOLLOW = 0x100
--)
--
--type PollFd struct {
-- Fd int32
-- Events int16
-- Revents int16
--}
--
--const (
-- POLLIN = 0x1
-- POLLPRI = 0x2
-- POLLOUT = 0x4
- POLLRDHUP = 0x2000
-- POLLERR = 0x8
-- POLLHUP = 0x10
-- POLLNVAL = 0x20
- )
-
- type Sigset_t struct {
-- X__val [32]uint32
-+ Val [32]uint32
- }
-
--const RNDGETENTCNT = 0x80045200
--
--const PERF_IOC_FLAG_GROUP = 0x1
--
--const _SC_PAGESIZE = 0x1e
-+const _C__NSIG = 0x41
-
- type Termios struct {
- Iflag uint32
-@@ -675,20 +227,12 @@ type Termios struct {
- Ospeed uint32
- }
-
--type Winsize struct {
-- Row uint16
-- Col uint16
-- Xpixel uint16
-- Ypixel uint16
--}
--
- type Taskstats struct {
- Version uint16
-- Pad_cgo_0 [2]byte
- Ac_exitcode uint32
- Ac_flag uint8
- Ac_nice uint8
-- Pad_cgo_1 [6]byte
-+ _ [4]byte
- Cpu_count uint64
- Cpu_delay_total uint64
- Blkio_count uint64
-@@ -700,13 +244,13 @@ type Taskstats struct {
- Ac_comm [32]uint8
- Ac_sched uint8
- Ac_pad [3]uint8
-- Pad_cgo_2 [4]byte
-+ _ [4]byte
- Ac_uid uint32
- Ac_gid uint32
- Ac_pid uint32
- Ac_ppid uint32
- Ac_btime uint32
-- Pad_cgo_3 [4]byte
-+ _ [4]byte
- Ac_etime uint64
- Ac_utime uint64
- Ac_stime uint64
-@@ -730,55 +274,318 @@ type Taskstats struct {
- Cpu_scaled_run_real_total uint64
- Freepages_count uint64
- Freepages_delay_total uint64
-+ Thrashing_count uint64
-+ Thrashing_delay_total uint64
-+ Ac_btime64 uint64
- }
-
-+type cpuMask uint32
-+
-+const (
-+ _NCPUBITS = 0x20
-+)
-+
- const (
-- TASKSTATS_CMD_UNSPEC = 0x0
-- TASKSTATS_CMD_GET = 0x1
-- TASKSTATS_CMD_NEW = 0x2
-- TASKSTATS_TYPE_UNSPEC = 0x0
-- TASKSTATS_TYPE_PID = 0x1
-- TASKSTATS_TYPE_TGID = 0x2
-- TASKSTATS_TYPE_STATS = 0x3
-- TASKSTATS_TYPE_AGGR_PID = 0x4
-- TASKSTATS_TYPE_AGGR_TGID = 0x5
-- TASKSTATS_TYPE_NULL = 0x6
-- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
-- TASKSTATS_CMD_ATTR_PID = 0x1
-- TASKSTATS_CMD_ATTR_TGID = 0x2
-- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
-- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-+ CBitFieldMaskBit0 = 0x1
-+ CBitFieldMaskBit1 = 0x2
-+ CBitFieldMaskBit2 = 0x4
-+ CBitFieldMaskBit3 = 0x8
-+ CBitFieldMaskBit4 = 0x10
-+ CBitFieldMaskBit5 = 0x20
-+ CBitFieldMaskBit6 = 0x40
-+ CBitFieldMaskBit7 = 0x80
-+ CBitFieldMaskBit8 = 0x100
-+ CBitFieldMaskBit9 = 0x200
-+ CBitFieldMaskBit10 = 0x400
-+ CBitFieldMaskBit11 = 0x800
-+ CBitFieldMaskBit12 = 0x1000
-+ CBitFieldMaskBit13 = 0x2000
-+ CBitFieldMaskBit14 = 0x4000
-+ CBitFieldMaskBit15 = 0x8000
-+ CBitFieldMaskBit16 = 0x10000
-+ CBitFieldMaskBit17 = 0x20000
-+ CBitFieldMaskBit18 = 0x40000
-+ CBitFieldMaskBit19 = 0x80000
-+ CBitFieldMaskBit20 = 0x100000
-+ CBitFieldMaskBit21 = 0x200000
-+ CBitFieldMaskBit22 = 0x400000
-+ CBitFieldMaskBit23 = 0x800000
-+ CBitFieldMaskBit24 = 0x1000000
-+ CBitFieldMaskBit25 = 0x2000000
-+ CBitFieldMaskBit26 = 0x4000000
-+ CBitFieldMaskBit27 = 0x8000000
-+ CBitFieldMaskBit28 = 0x10000000
-+ CBitFieldMaskBit29 = 0x20000000
-+ CBitFieldMaskBit30 = 0x40000000
-+ CBitFieldMaskBit31 = 0x80000000
-+ CBitFieldMaskBit32 = 0x100000000
-+ CBitFieldMaskBit33 = 0x200000000
-+ CBitFieldMaskBit34 = 0x400000000
-+ CBitFieldMaskBit35 = 0x800000000
-+ CBitFieldMaskBit36 = 0x1000000000
-+ CBitFieldMaskBit37 = 0x2000000000
-+ CBitFieldMaskBit38 = 0x4000000000
-+ CBitFieldMaskBit39 = 0x8000000000
-+ CBitFieldMaskBit40 = 0x10000000000
-+ CBitFieldMaskBit41 = 0x20000000000
-+ CBitFieldMaskBit42 = 0x40000000000
-+ CBitFieldMaskBit43 = 0x80000000000
-+ CBitFieldMaskBit44 = 0x100000000000
-+ CBitFieldMaskBit45 = 0x200000000000
-+ CBitFieldMaskBit46 = 0x400000000000
-+ CBitFieldMaskBit47 = 0x800000000000
-+ CBitFieldMaskBit48 = 0x1000000000000
-+ CBitFieldMaskBit49 = 0x2000000000000
-+ CBitFieldMaskBit50 = 0x4000000000000
-+ CBitFieldMaskBit51 = 0x8000000000000
-+ CBitFieldMaskBit52 = 0x10000000000000
-+ CBitFieldMaskBit53 = 0x20000000000000
-+ CBitFieldMaskBit54 = 0x40000000000000
-+ CBitFieldMaskBit55 = 0x80000000000000
-+ CBitFieldMaskBit56 = 0x100000000000000
-+ CBitFieldMaskBit57 = 0x200000000000000
-+ CBitFieldMaskBit58 = 0x400000000000000
-+ CBitFieldMaskBit59 = 0x800000000000000
-+ CBitFieldMaskBit60 = 0x1000000000000000
-+ CBitFieldMaskBit61 = 0x2000000000000000
-+ CBitFieldMaskBit62 = 0x4000000000000000
-+ CBitFieldMaskBit63 = 0x8000000000000000
- )
-
--type Genlmsghdr struct {
-- Cmd uint8
-- Version uint8
-- Reserved uint16
-+type SockaddrStorage struct {
-+ Family uint16
-+ _ [122]uint8
-+ _ uint32
-+}
-+
-+type HDGeometry struct {
-+ Heads uint8
-+ Sectors uint8
-+ Cylinders uint16
-+ Start uint32
-+}
-+
-+type Statfs_t struct {
-+ Type int32
-+ Bsize int32
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Files uint64
-+ Ffree uint64
-+ Fsid Fsid
-+ Namelen int32
-+ Frsize int32
-+ Flags int32
-+ Spare [4]int32
-+ _ [4]byte
-+}
-+
-+type TpacketHdr struct {
-+ Status uint32
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Usec uint32
-+}
-+
-+const (
-+ SizeofTpacketHdr = 0x18
-+)
-+
-+type RTCPLLInfo struct {
-+ Ctrl int32
-+ Value int32
-+ Max int32
-+ Min int32
-+ Posmult int32
-+ Negmult int32
-+ Clock int32
-+}
-+
-+type BlkpgPartition struct {
-+ Start int64
-+ Length int64
-+ Pno int32
-+ Devname [64]uint8
-+ Volname [64]uint8
-+ _ [4]byte
- }
-
- const (
-- CTRL_CMD_UNSPEC = 0x0
-- CTRL_CMD_NEWFAMILY = 0x1
-- CTRL_CMD_DELFAMILY = 0x2
-- CTRL_CMD_GETFAMILY = 0x3
-- CTRL_CMD_NEWOPS = 0x4
-- CTRL_CMD_DELOPS = 0x5
-- CTRL_CMD_GETOPS = 0x6
-- CTRL_CMD_NEWMCAST_GRP = 0x7
-- CTRL_CMD_DELMCAST_GRP = 0x8
-- CTRL_CMD_GETMCAST_GRP = 0x9
-- CTRL_ATTR_UNSPEC = 0x0
-- CTRL_ATTR_FAMILY_ID = 0x1
-- CTRL_ATTR_FAMILY_NAME = 0x2
-- CTRL_ATTR_VERSION = 0x3
-- CTRL_ATTR_HDRSIZE = 0x4
-- CTRL_ATTR_MAXATTR = 0x5
-- CTRL_ATTR_OPS = 0x6
-- CTRL_ATTR_MCAST_GROUPS = 0x7
-- CTRL_ATTR_OP_UNSPEC = 0x0
-- CTRL_ATTR_OP_ID = 0x1
-- CTRL_ATTR_OP_FLAGS = 0x2
-- CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
-- CTRL_ATTR_MCAST_GRP_NAME = 0x1
-- CTRL_ATTR_MCAST_GRP_ID = 0x2
-+ BLKPG = 0x1269
- )
-+
-+type XDPUmemReg struct {
-+ Addr uint64
-+ Len uint64
-+ Size uint32
-+ Headroom uint32
-+ Flags uint32
-+ _ [4]byte
-+}
-+
-+type CryptoUserAlg struct {
-+ Name [64]uint8
-+ Driver_name [64]uint8
-+ Module_name [64]uint8
-+ Type uint32
-+ Mask uint32
-+ Refcnt uint32
-+ Flags uint32
-+}
-+
-+type CryptoStatAEAD struct {
-+ Type [64]uint8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatAKCipher struct {
-+ Type [64]uint8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Verify_cnt uint64
-+ Sign_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCipher struct {
-+ Type [64]uint8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCompress struct {
-+ Type [64]uint8
-+ Compress_cnt uint64
-+ Compress_tlen uint64
-+ Decompress_cnt uint64
-+ Decompress_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatHash struct {
-+ Type [64]uint8
-+ Hash_cnt uint64
-+ Hash_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatKPP struct {
-+ Type [64]uint8
-+ Setsecret_cnt uint64
-+ Generate_public_key_cnt uint64
-+ Compute_shared_secret_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatRNG struct {
-+ Type [64]uint8
-+ Generate_cnt uint64
-+ Generate_tlen uint64
-+ Seed_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatLarval struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportLarval struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportHash struct {
-+ Type [64]uint8
-+ Blocksize uint32
-+ Digestsize uint32
-+}
-+
-+type CryptoReportCipher struct {
-+ Type [64]uint8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+}
-+
-+type CryptoReportBlkCipher struct {
-+ Type [64]uint8
-+ Geniv [64]uint8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportAEAD struct {
-+ Type [64]uint8
-+ Geniv [64]uint8
-+ Blocksize uint32
-+ Maxauthsize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportComp struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportRNG struct {
-+ Type [64]uint8
-+ Seedsize uint32
-+}
-+
-+type CryptoReportAKCipher struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportKPP struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportAcomp struct {
-+ Type [64]uint8
-+}
-+
-+type LoopInfo struct {
-+ Number int32
-+ Device uint16
-+ Inode uint32
-+ Rdevice uint16
-+ Offset int32
-+ Encrypt_type int32
-+ Encrypt_key_size int32
-+ Flags int32
-+ Name [64]uint8
-+ Encrypt_key [32]uint8
-+ Init [2]uint32
-+ Reserved [4]uint8
-+}
-+
-+type TIPCSubscr struct {
-+ Seq TIPCServiceRange
-+ Timeout uint32
-+ Filter uint32
-+ Handle [8]uint8
-+}
-+
-+type TIPCSIOCLNReq struct {
-+ Peer uint32
-+ Id uint32
-+ Linkname [68]uint8
-+}
-+
-+type TIPCSIOCNodeIDReq struct {
-+ Peer uint32
-+ Id [16]uint8
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
-index a3d0cc4a..a936f216 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
-@@ -6,19 +6,12 @@
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-- PathMax = 0x1000
-+ SizeofPtr = 0x8
-+ SizeofLong = 0x8
- )
-
- type (
-- _C_short int16
-- _C_int int32
-- _C_long int64
-- _C_long_long int64
-+ _C_long int64
- )
-
- type Timespec struct {
-@@ -33,13 +26,11 @@ type Timeval struct {
-
- type Timex struct {
- Modes uint32
-- Pad_cgo_0 [4]byte
- Offset int64
- Freq int64
- Maxerror int64
- Esterror int64
- Status int32
-- Pad_cgo_1 [4]byte
- Constant int64
- Precision int64
- Tolerance int64
-@@ -48,14 +39,13 @@ type Timex struct {
- Ppsfreq int64
- Jitter int64
- Shift int32
-- Pad_cgo_2 [4]byte
- Stabil int64
- Jitcnt int64
- Calcnt int64
- Errcnt int64
- Stbcnt int64
- Tai int32
-- Pad_cgo_3 [44]byte
-+ _ [44]byte
- }
-
- type Time_t int64
-@@ -91,13 +81,6 @@ type Rusage struct {
- Nivcsw int64
- }
-
--type Rlimit struct {
-- Cur uint64
-- Max uint64
--}
--
--type _Gid_t uint32
--
- type Stat_t struct {
- Dev uint64
- Ino uint64
-@@ -106,10 +89,10 @@ type Stat_t struct {
- Uid uint32
- Gid uint32
- Rdev uint64
-- X__pad1 uint64
-+ _ uint64
- Size int64
- Blksize int32
-- X__pad2 int32
-+ _ int32
- Blocks int64
- Atim Timespec
- Mtim Timespec
-@@ -117,139 +100,29 @@ type Stat_t struct {
- _ [2]int32
- }
-
--type Statfs_t struct {
-- Type int64
-- Bsize int64
-- Blocks uint64
-- Bfree uint64
-- Bavail uint64
-- Files uint64
-- Ffree uint64
-- Fsid Fsid
-- Namelen int64
-- Frsize int64
-- Flags int64
-- Spare [4]int64
--}
--
- type Dirent struct {
-- Ino uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Name [256]int8
-- Pad_cgo_0 [5]byte
--}
--
--type Fsid struct {
-- X__val [2]int32
-+ Ino uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Name [256]int8
-+ _ [5]byte
- }
-
- type Flock_t struct {
-- Type int16
-- Whence int16
-- Pad_cgo_0 [4]byte
-- Start int64
-- Len int64
-- Pid int32
-- Pad_cgo_1 [4]byte
--}
--
--type FscryptPolicy struct {
-- Version uint8
-- Contents_encryption_mode uint8
-- Filenames_encryption_mode uint8
-- Flags uint8
-- Master_key_descriptor [8]uint8
--}
--
--type FscryptKey struct {
-- Mode uint32
-- Raw [64]uint8
-- Size uint32
--}
--
--type KeyctlDHParams struct {
-- Private int32
-- Prime int32
-- Base int32
-+ Type int16
-+ Whence int16
-+ Start int64
-+ Len int64
-+ Pid int32
-+ _ [4]byte
- }
-
- const (
-- FADV_NORMAL = 0x0
-- FADV_RANDOM = 0x1
-- FADV_SEQUENTIAL = 0x2
-- FADV_WILLNEED = 0x3
-- FADV_DONTNEED = 0x4
-- FADV_NOREUSE = 0x5
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
- )
-
--type RawSockaddrInet4 struct {
-- Family uint16
-- Port uint16
-- Addr [4]byte /* in_addr */
-- Zero [8]uint8
--}
--
--type RawSockaddrInet6 struct {
-- Family uint16
-- Port uint16
-- Flowinfo uint32
-- Addr [16]byte /* in6_addr */
-- Scope_id uint32
--}
--
--type RawSockaddrUnix struct {
-- Family uint16
-- Path [108]int8
--}
--
--type RawSockaddrLinklayer struct {
-- Family uint16
-- Protocol uint16
-- Ifindex int32
-- Hatype uint16
-- Pkttype uint8
-- Halen uint8
-- Addr [8]uint8
--}
--
--type RawSockaddrNetlink struct {
-- Family uint16
-- Pad uint16
-- Pid uint32
-- Groups uint32
--}
--
--type RawSockaddrHCI struct {
-- Family uint16
-- Dev uint16
-- Channel uint16
--}
--
--type RawSockaddrCAN struct {
-- Family uint16
-- Pad_cgo_0 [2]byte
-- Ifindex int32
-- Addr [8]byte
--}
--
--type RawSockaddrALG struct {
-- Family uint16
-- Type [14]uint8
-- Feat uint32
-- Mask uint32
-- Name [64]uint8
--}
--
--type RawSockaddrVM struct {
-- Family uint16
-- Reserved1 uint16
-- Port uint32
-- Cid uint32
-- Zero [4]uint8
--}
--
- type RawSockaddr struct {
- Family uint16
- Data [14]int8
-@@ -260,51 +133,20 @@ type RawSockaddrAny struct {
- Pad [96]int8
- }
-
--type _Socklen uint32
--
--type Linger struct {
-- Onoff int32
-- Linger int32
--}
--
- type Iovec struct {
- Base *byte
- Len uint64
- }
-
--type IPMreq struct {
-- Multiaddr [4]byte /* in_addr */
-- Interface [4]byte /* in_addr */
--}
--
--type IPMreqn struct {
-- Multiaddr [4]byte /* in_addr */
-- Address [4]byte /* in_addr */
-- Ifindex int32
--}
--
--type IPv6Mreq struct {
-- Multiaddr [16]byte /* in6_addr */
-- Interface uint32
--}
--
--type PacketMreq struct {
-- Ifindex int32
-- Type uint16
-- Alen uint16
-- Address [8]uint8
--}
--
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
- Iov *Iovec
- Iovlen uint64
- Control *byte
- Controllen uint64
- Flags int32
-- Pad_cgo_1 [4]byte
-+ _ [4]byte
- }
-
- type Cmsghdr struct {
-@@ -313,277 +155,16 @@ type Cmsghdr struct {
- Type int32
- }
-
--type Inet4Pktinfo struct {
-- Ifindex int32
-- Spec_dst [4]byte /* in_addr */
-- Addr [4]byte /* in_addr */
--}
--
--type Inet6Pktinfo struct {
-- Addr [16]byte /* in6_addr */
-- Ifindex uint32
--}
--
--type IPv6MTUInfo struct {
-- Addr RawSockaddrInet6
-- Mtu uint32
--}
--
--type ICMPv6Filter struct {
-- Data [8]uint32
--}
--
--type Ucred struct {
-- Pid int32
-- Uid uint32
-- Gid uint32
--}
--
--type TCPInfo struct {
-- State uint8
-- Ca_state uint8
-- Retransmits uint8
-- Probes uint8
-- Backoff uint8
-- Options uint8
-- Pad_cgo_0 [2]byte
-- Rto uint32
-- Ato uint32
-- Snd_mss uint32
-- Rcv_mss uint32
-- Unacked uint32
-- Sacked uint32
-- Lost uint32
-- Retrans uint32
-- Fackets uint32
-- Last_data_sent uint32
-- Last_ack_sent uint32
-- Last_data_recv uint32
-- Last_ack_recv uint32
-- Pmtu uint32
-- Rcv_ssthresh uint32
-- Rtt uint32
-- Rttvar uint32
-- Snd_ssthresh uint32
-- Snd_cwnd uint32
-- Advmss uint32
-- Reordering uint32
-- Rcv_rtt uint32
-- Rcv_space uint32
-- Total_retrans uint32
--}
--
- const (
-- SizeofSockaddrInet4 = 0x10
-- SizeofSockaddrInet6 = 0x1c
-- SizeofSockaddrAny = 0x70
-- SizeofSockaddrUnix = 0x6e
-- SizeofSockaddrLinklayer = 0x14
-- SizeofSockaddrNetlink = 0xc
-- SizeofSockaddrHCI = 0x6
-- SizeofSockaddrCAN = 0x10
-- SizeofSockaddrALG = 0x58
-- SizeofSockaddrVM = 0x10
-- SizeofLinger = 0x8
-- SizeofIovec = 0x10
-- SizeofIPMreq = 0x8
-- SizeofIPMreqn = 0xc
-- SizeofIPv6Mreq = 0x14
-- SizeofPacketMreq = 0x10
-- SizeofMsghdr = 0x38
-- SizeofCmsghdr = 0x10
-- SizeofInet4Pktinfo = 0xc
-- SizeofInet6Pktinfo = 0x14
-- SizeofIPv6MTUInfo = 0x20
-- SizeofICMPv6Filter = 0x20
-- SizeofUcred = 0xc
-- SizeofTCPInfo = 0x68
-+ SizeofIovec = 0x10
-+ SizeofMsghdr = 0x38
-+ SizeofCmsghdr = 0x10
- )
-
- const (
-- IFA_UNSPEC = 0x0
-- IFA_ADDRESS = 0x1
-- IFA_LOCAL = 0x2
-- IFA_LABEL = 0x3
-- IFA_BROADCAST = 0x4
-- IFA_ANYCAST = 0x5
-- IFA_CACHEINFO = 0x6
-- IFA_MULTICAST = 0x7
-- IFLA_UNSPEC = 0x0
-- IFLA_ADDRESS = 0x1
-- IFLA_BROADCAST = 0x2
-- IFLA_IFNAME = 0x3
-- IFLA_MTU = 0x4
-- IFLA_LINK = 0x5
-- IFLA_QDISC = 0x6
-- IFLA_STATS = 0x7
-- IFLA_COST = 0x8
-- IFLA_PRIORITY = 0x9
-- IFLA_MASTER = 0xa
-- IFLA_WIRELESS = 0xb
-- IFLA_PROTINFO = 0xc
-- IFLA_TXQLEN = 0xd
-- IFLA_MAP = 0xe
-- IFLA_WEIGHT = 0xf
-- IFLA_OPERSTATE = 0x10
-- IFLA_LINKMODE = 0x11
-- IFLA_LINKINFO = 0x12
-- IFLA_NET_NS_PID = 0x13
-- IFLA_IFALIAS = 0x14
-- IFLA_MAX = 0x2b
-- RT_SCOPE_UNIVERSE = 0x0
-- RT_SCOPE_SITE = 0xc8
-- RT_SCOPE_LINK = 0xfd
-- RT_SCOPE_HOST = 0xfe
-- RT_SCOPE_NOWHERE = 0xff
-- RT_TABLE_UNSPEC = 0x0
-- RT_TABLE_COMPAT = 0xfc
-- RT_TABLE_DEFAULT = 0xfd
-- RT_TABLE_MAIN = 0xfe
-- RT_TABLE_LOCAL = 0xff
-- RT_TABLE_MAX = 0xffffffff
-- RTA_UNSPEC = 0x0
-- RTA_DST = 0x1
-- RTA_SRC = 0x2
-- RTA_IIF = 0x3
-- RTA_OIF = 0x4
-- RTA_GATEWAY = 0x5
-- RTA_PRIORITY = 0x6
-- RTA_PREFSRC = 0x7
-- RTA_METRICS = 0x8
-- RTA_MULTIPATH = 0x9
-- RTA_FLOW = 0xb
-- RTA_CACHEINFO = 0xc
-- RTA_TABLE = 0xf
-- RTN_UNSPEC = 0x0
-- RTN_UNICAST = 0x1
-- RTN_LOCAL = 0x2
-- RTN_BROADCAST = 0x3
-- RTN_ANYCAST = 0x4
-- RTN_MULTICAST = 0x5
-- RTN_BLACKHOLE = 0x6
-- RTN_UNREACHABLE = 0x7
-- RTN_PROHIBIT = 0x8
-- RTN_THROW = 0x9
-- RTN_NAT = 0xa
-- RTN_XRESOLVE = 0xb
-- RTNLGRP_NONE = 0x0
-- RTNLGRP_LINK = 0x1
-- RTNLGRP_NOTIFY = 0x2
-- RTNLGRP_NEIGH = 0x3
-- RTNLGRP_TC = 0x4
-- RTNLGRP_IPV4_IFADDR = 0x5
-- RTNLGRP_IPV4_MROUTE = 0x6
-- RTNLGRP_IPV4_ROUTE = 0x7
-- RTNLGRP_IPV4_RULE = 0x8
-- RTNLGRP_IPV6_IFADDR = 0x9
-- RTNLGRP_IPV6_MROUTE = 0xa
-- RTNLGRP_IPV6_ROUTE = 0xb
-- RTNLGRP_IPV6_IFINFO = 0xc
-- RTNLGRP_IPV6_PREFIX = 0x12
-- RTNLGRP_IPV6_RULE = 0x13
-- RTNLGRP_ND_USEROPT = 0x14
-- SizeofNlMsghdr = 0x10
-- SizeofNlMsgerr = 0x14
-- SizeofRtGenmsg = 0x1
-- SizeofNlAttr = 0x4
-- SizeofRtAttr = 0x4
-- SizeofIfInfomsg = 0x10
-- SizeofIfAddrmsg = 0x8
-- SizeofRtMsg = 0xc
-- SizeofRtNexthop = 0x8
-+ SizeofSockFprog = 0x10
- )
-
--type NlMsghdr struct {
-- Len uint32
-- Type uint16
-- Flags uint16
-- Seq uint32
-- Pid uint32
--}
--
--type NlMsgerr struct {
-- Error int32
-- Msg NlMsghdr
--}
--
--type RtGenmsg struct {
-- Family uint8
--}
--
--type NlAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type RtAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type IfInfomsg struct {
-- Family uint8
-- X__ifi_pad uint8
-- Type uint16
-- Index int32
-- Flags uint32
-- Change uint32
--}
--
--type IfAddrmsg struct {
-- Family uint8
-- Prefixlen uint8
-- Flags uint8
-- Scope uint8
-- Index uint32
--}
--
--type RtMsg struct {
-- Family uint8
-- Dst_len uint8
-- Src_len uint8
-- Tos uint8
-- Table uint8
-- Protocol uint8
-- Scope uint8
-- Type uint8
-- Flags uint32
--}
--
--type RtNexthop struct {
-- Len uint16
-- Flags uint8
-- Hops uint8
-- Ifindex int32
--}
--
--const (
-- SizeofSockFilter = 0x8
-- SizeofSockFprog = 0x10
--)
--
--type SockFilter struct {
-- Code uint16
-- Jt uint8
-- Jf uint8
-- K uint32
--}
--
--type SockFprog struct {
-- Len uint16
-- Pad_cgo_0 [6]byte
-- Filter *SockFilter
--}
--
--type InotifyEvent struct {
-- Wd int32
-- Mask uint32
-- Cookie uint32
-- Len uint32
--}
--
--const SizeofInotifyEvent = 0x10
--
- type PtraceRegs struct {
- Regs [31]uint64
- Sp uint64
-@@ -606,30 +187,19 @@ type Sysinfo_t struct {
- Freeswap uint64
- Procs uint16
- Pad uint16
-- Pad_cgo_0 [4]byte
- Totalhigh uint64
- Freehigh uint64
- Unit uint32
-- X_f [0]int8
-- Pad_cgo_1 [4]byte
--}
--
--type Utsname struct {
-- Sysname [65]int8
-- Nodename [65]int8
-- Release [65]int8
-- Version [65]int8
-- Machine [65]int8
-- Domainname [65]int8
-+ _ [0]int8
-+ _ [4]byte
- }
-
- type Ustat_t struct {
-- Tfree int32
-- Pad_cgo_0 [4]byte
-- Tinode uint64
-- Fname [6]int8
-- Fpack [6]int8
-- Pad_cgo_1 [4]byte
-+ Tfree int32
-+ Tinode uint64
-+ Fname [6]int8
-+ Fpack [6]int8
-+ _ [4]byte
- }
-
- type EpollEvent struct {
-@@ -640,37 +210,14 @@ type EpollEvent struct {
- }
-
- const (
-- AT_FDCWD = -0x64
-- AT_REMOVEDIR = 0x200
-- AT_SYMLINK_FOLLOW = 0x400
-- AT_SYMLINK_NOFOLLOW = 0x100
--)
--
--type PollFd struct {
-- Fd int32
-- Events int16
-- Revents int16
--}
--
--const (
-- POLLIN = 0x1
-- POLLPRI = 0x2
-- POLLOUT = 0x4
- POLLRDHUP = 0x2000
-- POLLERR = 0x8
-- POLLHUP = 0x10
-- POLLNVAL = 0x20
- )
-
- type Sigset_t struct {
-- X__val [16]uint64
-+ Val [16]uint64
- }
-
--const RNDGETENTCNT = 0x80045200
--
--const PERF_IOC_FLAG_GROUP = 0x1
--
--const _SC_PAGESIZE = 0x1e
-+const _C__NSIG = 0x41
-
- type Termios struct {
- Iflag uint32
-@@ -683,20 +230,11 @@ type Termios struct {
- Ospeed uint32
- }
-
--type Winsize struct {
-- Row uint16
-- Col uint16
-- Xpixel uint16
-- Ypixel uint16
--}
--
- type Taskstats struct {
- Version uint16
-- Pad_cgo_0 [2]byte
- Ac_exitcode uint32
- Ac_flag uint8
- Ac_nice uint8
-- Pad_cgo_1 [6]byte
- Cpu_count uint64
- Cpu_delay_total uint64
- Blkio_count uint64
-@@ -708,13 +246,12 @@ type Taskstats struct {
- Ac_comm [32]int8
- Ac_sched uint8
- Ac_pad [3]uint8
-- Pad_cgo_2 [4]byte
-+ _ [4]byte
- Ac_uid uint32
- Ac_gid uint32
- Ac_pid uint32
- Ac_ppid uint32
- Ac_btime uint32
-- Pad_cgo_3 [4]byte
- Ac_etime uint64
- Ac_utime uint64
- Ac_stime uint64
-@@ -738,55 +275,319 @@ type Taskstats struct {
- Cpu_scaled_run_real_total uint64
- Freepages_count uint64
- Freepages_delay_total uint64
-+ Thrashing_count uint64
-+ Thrashing_delay_total uint64
-+ Ac_btime64 uint64
- }
-
-+type cpuMask uint64
-+
- const (
-- TASKSTATS_CMD_UNSPEC = 0x0
-- TASKSTATS_CMD_GET = 0x1
-- TASKSTATS_CMD_NEW = 0x2
-- TASKSTATS_TYPE_UNSPEC = 0x0
-- TASKSTATS_TYPE_PID = 0x1
-- TASKSTATS_TYPE_TGID = 0x2
-- TASKSTATS_TYPE_STATS = 0x3
-- TASKSTATS_TYPE_AGGR_PID = 0x4
-- TASKSTATS_TYPE_AGGR_TGID = 0x5
-- TASKSTATS_TYPE_NULL = 0x6
-- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
-- TASKSTATS_CMD_ATTR_PID = 0x1
-- TASKSTATS_CMD_ATTR_TGID = 0x2
-- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
-- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-+ _NCPUBITS = 0x40
- )
-
--type Genlmsghdr struct {
-- Cmd uint8
-- Version uint8
-- Reserved uint16
-+const (
-+ CBitFieldMaskBit0 = 0x1
-+ CBitFieldMaskBit1 = 0x2
-+ CBitFieldMaskBit2 = 0x4
-+ CBitFieldMaskBit3 = 0x8
-+ CBitFieldMaskBit4 = 0x10
-+ CBitFieldMaskBit5 = 0x20
-+ CBitFieldMaskBit6 = 0x40
-+ CBitFieldMaskBit7 = 0x80
-+ CBitFieldMaskBit8 = 0x100
-+ CBitFieldMaskBit9 = 0x200
-+ CBitFieldMaskBit10 = 0x400
-+ CBitFieldMaskBit11 = 0x800
-+ CBitFieldMaskBit12 = 0x1000
-+ CBitFieldMaskBit13 = 0x2000
-+ CBitFieldMaskBit14 = 0x4000
-+ CBitFieldMaskBit15 = 0x8000
-+ CBitFieldMaskBit16 = 0x10000
-+ CBitFieldMaskBit17 = 0x20000
-+ CBitFieldMaskBit18 = 0x40000
-+ CBitFieldMaskBit19 = 0x80000
-+ CBitFieldMaskBit20 = 0x100000
-+ CBitFieldMaskBit21 = 0x200000
-+ CBitFieldMaskBit22 = 0x400000
-+ CBitFieldMaskBit23 = 0x800000
-+ CBitFieldMaskBit24 = 0x1000000
-+ CBitFieldMaskBit25 = 0x2000000
-+ CBitFieldMaskBit26 = 0x4000000
-+ CBitFieldMaskBit27 = 0x8000000
-+ CBitFieldMaskBit28 = 0x10000000
-+ CBitFieldMaskBit29 = 0x20000000
-+ CBitFieldMaskBit30 = 0x40000000
-+ CBitFieldMaskBit31 = 0x80000000
-+ CBitFieldMaskBit32 = 0x100000000
-+ CBitFieldMaskBit33 = 0x200000000
-+ CBitFieldMaskBit34 = 0x400000000
-+ CBitFieldMaskBit35 = 0x800000000
-+ CBitFieldMaskBit36 = 0x1000000000
-+ CBitFieldMaskBit37 = 0x2000000000
-+ CBitFieldMaskBit38 = 0x4000000000
-+ CBitFieldMaskBit39 = 0x8000000000
-+ CBitFieldMaskBit40 = 0x10000000000
-+ CBitFieldMaskBit41 = 0x20000000000
-+ CBitFieldMaskBit42 = 0x40000000000
-+ CBitFieldMaskBit43 = 0x80000000000
-+ CBitFieldMaskBit44 = 0x100000000000
-+ CBitFieldMaskBit45 = 0x200000000000
-+ CBitFieldMaskBit46 = 0x400000000000
-+ CBitFieldMaskBit47 = 0x800000000000
-+ CBitFieldMaskBit48 = 0x1000000000000
-+ CBitFieldMaskBit49 = 0x2000000000000
-+ CBitFieldMaskBit50 = 0x4000000000000
-+ CBitFieldMaskBit51 = 0x8000000000000
-+ CBitFieldMaskBit52 = 0x10000000000000
-+ CBitFieldMaskBit53 = 0x20000000000000
-+ CBitFieldMaskBit54 = 0x40000000000000
-+ CBitFieldMaskBit55 = 0x80000000000000
-+ CBitFieldMaskBit56 = 0x100000000000000
-+ CBitFieldMaskBit57 = 0x200000000000000
-+ CBitFieldMaskBit58 = 0x400000000000000
-+ CBitFieldMaskBit59 = 0x800000000000000
-+ CBitFieldMaskBit60 = 0x1000000000000000
-+ CBitFieldMaskBit61 = 0x2000000000000000
-+ CBitFieldMaskBit62 = 0x4000000000000000
-+ CBitFieldMaskBit63 = 0x8000000000000000
-+)
-+
-+type SockaddrStorage struct {
-+ Family uint16
-+ _ [118]int8
-+ _ uint64
-+}
-+
-+type HDGeometry struct {
-+ Heads uint8
-+ Sectors uint8
-+ Cylinders uint16
-+ Start uint64
-+}
-+
-+type Statfs_t struct {
-+ Type int64
-+ Bsize int64
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Files uint64
-+ Ffree uint64
-+ Fsid Fsid
-+ Namelen int64
-+ Frsize int64
-+ Flags int64
-+ Spare [4]int64
-+}
-+
-+type TpacketHdr struct {
-+ Status uint64
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Usec uint32
-+ _ [4]byte
- }
-
- const (
-- CTRL_CMD_UNSPEC = 0x0
-- CTRL_CMD_NEWFAMILY = 0x1
-- CTRL_CMD_DELFAMILY = 0x2
-- CTRL_CMD_GETFAMILY = 0x3
-- CTRL_CMD_NEWOPS = 0x4
-- CTRL_CMD_DELOPS = 0x5
-- CTRL_CMD_GETOPS = 0x6
-- CTRL_CMD_NEWMCAST_GRP = 0x7
-- CTRL_CMD_DELMCAST_GRP = 0x8
-- CTRL_CMD_GETMCAST_GRP = 0x9
-- CTRL_ATTR_UNSPEC = 0x0
-- CTRL_ATTR_FAMILY_ID = 0x1
-- CTRL_ATTR_FAMILY_NAME = 0x2
-- CTRL_ATTR_VERSION = 0x3
-- CTRL_ATTR_HDRSIZE = 0x4
-- CTRL_ATTR_MAXATTR = 0x5
-- CTRL_ATTR_OPS = 0x6
-- CTRL_ATTR_MCAST_GROUPS = 0x7
-- CTRL_ATTR_OP_UNSPEC = 0x0
-- CTRL_ATTR_OP_ID = 0x1
-- CTRL_ATTR_OP_FLAGS = 0x2
-- CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
-- CTRL_ATTR_MCAST_GRP_NAME = 0x1
-- CTRL_ATTR_MCAST_GRP_ID = 0x2
-+ SizeofTpacketHdr = 0x20
- )
-+
-+type RTCPLLInfo struct {
-+ Ctrl int32
-+ Value int32
-+ Max int32
-+ Min int32
-+ Posmult int32
-+ Negmult int32
-+ Clock int64
-+}
-+
-+type BlkpgPartition struct {
-+ Start int64
-+ Length int64
-+ Pno int32
-+ Devname [64]uint8
-+ Volname [64]uint8
-+ _ [4]byte
-+}
-+
-+const (
-+ BLKPG = 0x1269
-+)
-+
-+type XDPUmemReg struct {
-+ Addr uint64
-+ Len uint64
-+ Size uint32
-+ Headroom uint32
-+ Flags uint32
-+ _ [4]byte
-+}
-+
-+type CryptoUserAlg struct {
-+ Name [64]int8
-+ Driver_name [64]int8
-+ Module_name [64]int8
-+ Type uint32
-+ Mask uint32
-+ Refcnt uint32
-+ Flags uint32
-+}
-+
-+type CryptoStatAEAD struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatAKCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Verify_cnt uint64
-+ Sign_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCompress struct {
-+ Type [64]int8
-+ Compress_cnt uint64
-+ Compress_tlen uint64
-+ Decompress_cnt uint64
-+ Decompress_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatHash struct {
-+ Type [64]int8
-+ Hash_cnt uint64
-+ Hash_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatKPP struct {
-+ Type [64]int8
-+ Setsecret_cnt uint64
-+ Generate_public_key_cnt uint64
-+ Compute_shared_secret_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatRNG struct {
-+ Type [64]int8
-+ Generate_cnt uint64
-+ Generate_tlen uint64
-+ Seed_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportHash struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Digestsize uint32
-+}
-+
-+type CryptoReportCipher struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+}
-+
-+type CryptoReportBlkCipher struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportAEAD struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Maxauthsize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportComp struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportRNG struct {
-+ Type [64]int8
-+ Seedsize uint32
-+}
-+
-+type CryptoReportAKCipher struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportKPP struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportAcomp struct {
-+ Type [64]int8
-+}
-+
-+type LoopInfo struct {
-+ Number int32
-+ Device uint32
-+ Inode uint64
-+ Rdevice uint32
-+ Offset int32
-+ Encrypt_type int32
-+ Encrypt_key_size int32
-+ Flags int32
-+ Name [64]int8
-+ Encrypt_key [32]uint8
-+ Init [2]uint64
-+ Reserved [4]int8
-+ _ [4]byte
-+}
-+
-+type TIPCSubscr struct {
-+ Seq TIPCServiceRange
-+ Timeout uint32
-+ Filter uint32
-+ Handle [8]int8
-+}
-+
-+type TIPCSIOCLNReq struct {
-+ Peer uint32
-+ Id uint32
-+ Linkname [68]int8
-+}
-+
-+type TIPCSIOCNodeIDReq struct {
-+ Peer uint32
-+ Id [16]int8
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
-index 8fa6603f..aaca03dd 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
-@@ -6,19 +6,12 @@
- package unix
-
- const (
-- sizeofPtr = 0x4
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x4
-- sizeofLongLong = 0x8
-- PathMax = 0x1000
-+ SizeofPtr = 0x4
-+ SizeofLong = 0x4
- )
-
- type (
-- _C_short int16
-- _C_int int32
-- _C_long int32
-- _C_long_long int64
-+ _C_long int32
- )
-
- type Timespec struct {
-@@ -52,7 +45,7 @@ type Timex struct {
- Errcnt int32
- Stbcnt int32
- Tai int32
-- Pad_cgo_0 [44]byte
-+ _ [44]byte
- }
-
- type Time_t int32
-@@ -88,13 +81,6 @@ type Rusage struct {
- Nivcsw int32
- }
-
--type Rlimit struct {
-- Cur uint64
-- Max uint64
--}
--
--type _Gid_t uint32
--
- type Stat_t struct {
- Dev uint32
- Pad1 [3]int32
-@@ -115,141 +101,30 @@ type Stat_t struct {
- Pad5 [14]int32
- }
-
--type Statfs_t struct {
-- Type int32
-- Bsize int32
-- Frsize int32
-- Pad_cgo_0 [4]byte
-- Blocks uint64
-- Bfree uint64
-- Files uint64
-- Ffree uint64
-- Bavail uint64
-- Fsid Fsid
-- Namelen int32
-- Flags int32
-- Spare [5]int32
-- Pad_cgo_1 [4]byte
--}
--
- type Dirent struct {
-- Ino uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Name [256]int8
-- Pad_cgo_0 [5]byte
--}
--
--type Fsid struct {
-- X__val [2]int32
-+ Ino uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Name [256]int8
-+ _ [5]byte
- }
-
- type Flock_t struct {
-- Type int16
-- Whence int16
-- Pad_cgo_0 [4]byte
-- Start int64
-- Len int64
-- Pid int32
-- Pad_cgo_1 [4]byte
--}
--
--type FscryptPolicy struct {
-- Version uint8
-- Contents_encryption_mode uint8
-- Filenames_encryption_mode uint8
-- Flags uint8
-- Master_key_descriptor [8]uint8
--}
--
--type FscryptKey struct {
-- Mode uint32
-- Raw [64]uint8
-- Size uint32
--}
--
--type KeyctlDHParams struct {
-- Private int32
-- Prime int32
-- Base int32
-+ Type int16
-+ Whence int16
-+ _ [4]byte
-+ Start int64
-+ Len int64
-+ Pid int32
-+ _ [4]byte
- }
-
- const (
-- FADV_NORMAL = 0x0
-- FADV_RANDOM = 0x1
-- FADV_SEQUENTIAL = 0x2
-- FADV_WILLNEED = 0x3
-- FADV_DONTNEED = 0x4
-- FADV_NOREUSE = 0x5
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
- )
-
--type RawSockaddrInet4 struct {
-- Family uint16
-- Port uint16
-- Addr [4]byte /* in_addr */
-- Zero [8]uint8
--}
--
--type RawSockaddrInet6 struct {
-- Family uint16
-- Port uint16
-- Flowinfo uint32
-- Addr [16]byte /* in6_addr */
-- Scope_id uint32
--}
--
--type RawSockaddrUnix struct {
-- Family uint16
-- Path [108]int8
--}
--
--type RawSockaddrLinklayer struct {
-- Family uint16
-- Protocol uint16
-- Ifindex int32
-- Hatype uint16
-- Pkttype uint8
-- Halen uint8
-- Addr [8]uint8
--}
--
--type RawSockaddrNetlink struct {
-- Family uint16
-- Pad uint16
-- Pid uint32
-- Groups uint32
--}
--
--type RawSockaddrHCI struct {
-- Family uint16
-- Dev uint16
-- Channel uint16
--}
--
--type RawSockaddrCAN struct {
-- Family uint16
-- Pad_cgo_0 [2]byte
-- Ifindex int32
-- Addr [8]byte
--}
--
--type RawSockaddrALG struct {
-- Family uint16
-- Type [14]uint8
-- Feat uint32
-- Mask uint32
-- Name [64]uint8
--}
--
--type RawSockaddrVM struct {
-- Family uint16
-- Reserved1 uint16
-- Port uint32
-- Cid uint32
-- Zero [4]uint8
--}
--
- type RawSockaddr struct {
- Family uint16
- Data [14]int8
-@@ -260,41 +135,11 @@ type RawSockaddrAny struct {
- Pad [96]int8
- }
-
--type _Socklen uint32
--
--type Linger struct {
-- Onoff int32
-- Linger int32
--}
--
- type Iovec struct {
- Base *byte
- Len uint32
- }
-
--type IPMreq struct {
-- Multiaddr [4]byte /* in_addr */
-- Interface [4]byte /* in_addr */
--}
--
--type IPMreqn struct {
-- Multiaddr [4]byte /* in_addr */
-- Address [4]byte /* in_addr */
-- Ifindex int32
--}
--
--type IPv6Mreq struct {
-- Multiaddr [16]byte /* in6_addr */
-- Interface uint32
--}
--
--type PacketMreq struct {
-- Ifindex int32
-- Type uint16
-- Alen uint16
-- Address [8]uint8
--}
--
- type Msghdr struct {
- Name *byte
- Namelen uint32
-@@ -311,277 +156,16 @@ type Cmsghdr struct {
- Type int32
- }
-
--type Inet4Pktinfo struct {
-- Ifindex int32
-- Spec_dst [4]byte /* in_addr */
-- Addr [4]byte /* in_addr */
--}
--
--type Inet6Pktinfo struct {
-- Addr [16]byte /* in6_addr */
-- Ifindex uint32
--}
--
--type IPv6MTUInfo struct {
-- Addr RawSockaddrInet6
-- Mtu uint32
--}
--
--type ICMPv6Filter struct {
-- Data [8]uint32
--}
--
--type Ucred struct {
-- Pid int32
-- Uid uint32
-- Gid uint32
--}
--
--type TCPInfo struct {
-- State uint8
-- Ca_state uint8
-- Retransmits uint8
-- Probes uint8
-- Backoff uint8
-- Options uint8
-- Pad_cgo_0 [2]byte
-- Rto uint32
-- Ato uint32
-- Snd_mss uint32
-- Rcv_mss uint32
-- Unacked uint32
-- Sacked uint32
-- Lost uint32
-- Retrans uint32
-- Fackets uint32
-- Last_data_sent uint32
-- Last_ack_sent uint32
-- Last_data_recv uint32
-- Last_ack_recv uint32
-- Pmtu uint32
-- Rcv_ssthresh uint32
-- Rtt uint32
-- Rttvar uint32
-- Snd_ssthresh uint32
-- Snd_cwnd uint32
-- Advmss uint32
-- Reordering uint32
-- Rcv_rtt uint32
-- Rcv_space uint32
-- Total_retrans uint32
--}
--
- const (
-- SizeofSockaddrInet4 = 0x10
-- SizeofSockaddrInet6 = 0x1c
-- SizeofSockaddrAny = 0x70
-- SizeofSockaddrUnix = 0x6e
-- SizeofSockaddrLinklayer = 0x14
-- SizeofSockaddrNetlink = 0xc
-- SizeofSockaddrHCI = 0x6
-- SizeofSockaddrCAN = 0x10
-- SizeofSockaddrALG = 0x58
-- SizeofSockaddrVM = 0x10
-- SizeofLinger = 0x8
-- SizeofIovec = 0x8
-- SizeofIPMreq = 0x8
-- SizeofIPMreqn = 0xc
-- SizeofIPv6Mreq = 0x14
-- SizeofPacketMreq = 0x10
-- SizeofMsghdr = 0x1c
-- SizeofCmsghdr = 0xc
-- SizeofInet4Pktinfo = 0xc
-- SizeofInet6Pktinfo = 0x14
-- SizeofIPv6MTUInfo = 0x20
-- SizeofICMPv6Filter = 0x20
-- SizeofUcred = 0xc
-- SizeofTCPInfo = 0x68
-+ SizeofIovec = 0x8
-+ SizeofMsghdr = 0x1c
-+ SizeofCmsghdr = 0xc
- )
-
- const (
-- IFA_UNSPEC = 0x0
-- IFA_ADDRESS = 0x1
-- IFA_LOCAL = 0x2
-- IFA_LABEL = 0x3
-- IFA_BROADCAST = 0x4
-- IFA_ANYCAST = 0x5
-- IFA_CACHEINFO = 0x6
-- IFA_MULTICAST = 0x7
-- IFLA_UNSPEC = 0x0
-- IFLA_ADDRESS = 0x1
-- IFLA_BROADCAST = 0x2
-- IFLA_IFNAME = 0x3
-- IFLA_MTU = 0x4
-- IFLA_LINK = 0x5
-- IFLA_QDISC = 0x6
-- IFLA_STATS = 0x7
-- IFLA_COST = 0x8
-- IFLA_PRIORITY = 0x9
-- IFLA_MASTER = 0xa
-- IFLA_WIRELESS = 0xb
-- IFLA_PROTINFO = 0xc
-- IFLA_TXQLEN = 0xd
-- IFLA_MAP = 0xe
-- IFLA_WEIGHT = 0xf
-- IFLA_OPERSTATE = 0x10
-- IFLA_LINKMODE = 0x11
-- IFLA_LINKINFO = 0x12
-- IFLA_NET_NS_PID = 0x13
-- IFLA_IFALIAS = 0x14
-- IFLA_MAX = 0x2b
-- RT_SCOPE_UNIVERSE = 0x0
-- RT_SCOPE_SITE = 0xc8
-- RT_SCOPE_LINK = 0xfd
-- RT_SCOPE_HOST = 0xfe
-- RT_SCOPE_NOWHERE = 0xff
-- RT_TABLE_UNSPEC = 0x0
-- RT_TABLE_COMPAT = 0xfc
-- RT_TABLE_DEFAULT = 0xfd
-- RT_TABLE_MAIN = 0xfe
-- RT_TABLE_LOCAL = 0xff
-- RT_TABLE_MAX = 0xffffffff
-- RTA_UNSPEC = 0x0
-- RTA_DST = 0x1
-- RTA_SRC = 0x2
-- RTA_IIF = 0x3
-- RTA_OIF = 0x4
-- RTA_GATEWAY = 0x5
-- RTA_PRIORITY = 0x6
-- RTA_PREFSRC = 0x7
-- RTA_METRICS = 0x8
-- RTA_MULTIPATH = 0x9
-- RTA_FLOW = 0xb
-- RTA_CACHEINFO = 0xc
-- RTA_TABLE = 0xf
-- RTN_UNSPEC = 0x0
-- RTN_UNICAST = 0x1
-- RTN_LOCAL = 0x2
-- RTN_BROADCAST = 0x3
-- RTN_ANYCAST = 0x4
-- RTN_MULTICAST = 0x5
-- RTN_BLACKHOLE = 0x6
-- RTN_UNREACHABLE = 0x7
-- RTN_PROHIBIT = 0x8
-- RTN_THROW = 0x9
-- RTN_NAT = 0xa
-- RTN_XRESOLVE = 0xb
-- RTNLGRP_NONE = 0x0
-- RTNLGRP_LINK = 0x1
-- RTNLGRP_NOTIFY = 0x2
-- RTNLGRP_NEIGH = 0x3
-- RTNLGRP_TC = 0x4
-- RTNLGRP_IPV4_IFADDR = 0x5
-- RTNLGRP_IPV4_MROUTE = 0x6
-- RTNLGRP_IPV4_ROUTE = 0x7
-- RTNLGRP_IPV4_RULE = 0x8
-- RTNLGRP_IPV6_IFADDR = 0x9
-- RTNLGRP_IPV6_MROUTE = 0xa
-- RTNLGRP_IPV6_ROUTE = 0xb
-- RTNLGRP_IPV6_IFINFO = 0xc
-- RTNLGRP_IPV6_PREFIX = 0x12
-- RTNLGRP_IPV6_RULE = 0x13
-- RTNLGRP_ND_USEROPT = 0x14
-- SizeofNlMsghdr = 0x10
-- SizeofNlMsgerr = 0x14
-- SizeofRtGenmsg = 0x1
-- SizeofNlAttr = 0x4
-- SizeofRtAttr = 0x4
-- SizeofIfInfomsg = 0x10
-- SizeofIfAddrmsg = 0x8
-- SizeofRtMsg = 0xc
-- SizeofRtNexthop = 0x8
-+ SizeofSockFprog = 0x8
- )
-
--type NlMsghdr struct {
-- Len uint32
-- Type uint16
-- Flags uint16
-- Seq uint32
-- Pid uint32
--}
--
--type NlMsgerr struct {
-- Error int32
-- Msg NlMsghdr
--}
--
--type RtGenmsg struct {
-- Family uint8
--}
--
--type NlAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type RtAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type IfInfomsg struct {
-- Family uint8
-- X__ifi_pad uint8
-- Type uint16
-- Index int32
-- Flags uint32
-- Change uint32
--}
--
--type IfAddrmsg struct {
-- Family uint8
-- Prefixlen uint8
-- Flags uint8
-- Scope uint8
-- Index uint32
--}
--
--type RtMsg struct {
-- Family uint8
-- Dst_len uint8
-- Src_len uint8
-- Tos uint8
-- Table uint8
-- Protocol uint8
-- Scope uint8
-- Type uint8
-- Flags uint32
--}
--
--type RtNexthop struct {
-- Len uint16
-- Flags uint8
-- Hops uint8
-- Ifindex int32
--}
--
--const (
-- SizeofSockFilter = 0x8
-- SizeofSockFprog = 0x8
--)
--
--type SockFilter struct {
-- Code uint16
-- Jt uint8
-- Jf uint8
-- K uint32
--}
--
--type SockFprog struct {
-- Len uint16
-- Pad_cgo_0 [2]byte
-- Filter *SockFilter
--}
--
--type InotifyEvent struct {
-- Wd int32
-- Mask uint32
-- Cookie uint32
-- Len uint32
--}
--
--const SizeofInotifyEvent = 0x10
--
- type PtraceRegs struct {
- Regs [32]uint64
- Lo uint64
-@@ -610,16 +194,7 @@ type Sysinfo_t struct {
- Totalhigh uint32
- Freehigh uint32
- Unit uint32
-- X_f [8]int8
--}
--
--type Utsname struct {
-- Sysname [65]int8
-- Nodename [65]int8
-- Release [65]int8
-- Version [65]int8
-- Machine [65]int8
-- Domainname [65]int8
-+ _ [8]int8
- }
-
- type Ustat_t struct {
-@@ -637,37 +212,14 @@ type EpollEvent struct {
- }
-
- const (
-- AT_FDCWD = -0x64
-- AT_REMOVEDIR = 0x200
-- AT_SYMLINK_FOLLOW = 0x400
-- AT_SYMLINK_NOFOLLOW = 0x100
--)
--
--type PollFd struct {
-- Fd int32
-- Events int16
-- Revents int16
--}
--
--const (
-- POLLIN = 0x1
-- POLLPRI = 0x2
-- POLLOUT = 0x4
- POLLRDHUP = 0x2000
-- POLLERR = 0x8
-- POLLHUP = 0x10
-- POLLNVAL = 0x20
- )
-
- type Sigset_t struct {
-- X__val [32]uint32
-+ Val [32]uint32
- }
-
--const RNDGETENTCNT = 0x40045200
--
--const PERF_IOC_FLAG_GROUP = 0x1
--
--const _SC_PAGESIZE = 0x1e
-+const _C__NSIG = 0x80
-
- type Termios struct {
- Iflag uint32
-@@ -680,20 +232,12 @@ type Termios struct {
- Ospeed uint32
- }
-
--type Winsize struct {
-- Row uint16
-- Col uint16
-- Xpixel uint16
-- Ypixel uint16
--}
--
- type Taskstats struct {
- Version uint16
-- Pad_cgo_0 [2]byte
- Ac_exitcode uint32
- Ac_flag uint8
- Ac_nice uint8
-- Pad_cgo_1 [6]byte
-+ _ [4]byte
- Cpu_count uint64
- Cpu_delay_total uint64
- Blkio_count uint64
-@@ -705,13 +249,13 @@ type Taskstats struct {
- Ac_comm [32]int8
- Ac_sched uint8
- Ac_pad [3]uint8
-- Pad_cgo_2 [4]byte
-+ _ [4]byte
- Ac_uid uint32
- Ac_gid uint32
- Ac_pid uint32
- Ac_ppid uint32
- Ac_btime uint32
-- Pad_cgo_3 [4]byte
-+ _ [4]byte
- Ac_etime uint64
- Ac_utime uint64
- Ac_stime uint64
-@@ -735,55 +279,319 @@ type Taskstats struct {
- Cpu_scaled_run_real_total uint64
- Freepages_count uint64
- Freepages_delay_total uint64
-+ Thrashing_count uint64
-+ Thrashing_delay_total uint64
-+ Ac_btime64 uint64
- }
-
-+type cpuMask uint32
-+
-+const (
-+ _NCPUBITS = 0x20
-+)
-+
- const (
-- TASKSTATS_CMD_UNSPEC = 0x0
-- TASKSTATS_CMD_GET = 0x1
-- TASKSTATS_CMD_NEW = 0x2
-- TASKSTATS_TYPE_UNSPEC = 0x0
-- TASKSTATS_TYPE_PID = 0x1
-- TASKSTATS_TYPE_TGID = 0x2
-- TASKSTATS_TYPE_STATS = 0x3
-- TASKSTATS_TYPE_AGGR_PID = 0x4
-- TASKSTATS_TYPE_AGGR_TGID = 0x5
-- TASKSTATS_TYPE_NULL = 0x6
-- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
-- TASKSTATS_CMD_ATTR_PID = 0x1
-- TASKSTATS_CMD_ATTR_TGID = 0x2
-- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
-- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-+ CBitFieldMaskBit0 = 0x8000000000000000
-+ CBitFieldMaskBit1 = 0x4000000000000000
-+ CBitFieldMaskBit2 = 0x2000000000000000
-+ CBitFieldMaskBit3 = 0x1000000000000000
-+ CBitFieldMaskBit4 = 0x800000000000000
-+ CBitFieldMaskBit5 = 0x400000000000000
-+ CBitFieldMaskBit6 = 0x200000000000000
-+ CBitFieldMaskBit7 = 0x100000000000000
-+ CBitFieldMaskBit8 = 0x80000000000000
-+ CBitFieldMaskBit9 = 0x40000000000000
-+ CBitFieldMaskBit10 = 0x20000000000000
-+ CBitFieldMaskBit11 = 0x10000000000000
-+ CBitFieldMaskBit12 = 0x8000000000000
-+ CBitFieldMaskBit13 = 0x4000000000000
-+ CBitFieldMaskBit14 = 0x2000000000000
-+ CBitFieldMaskBit15 = 0x1000000000000
-+ CBitFieldMaskBit16 = 0x800000000000
-+ CBitFieldMaskBit17 = 0x400000000000
-+ CBitFieldMaskBit18 = 0x200000000000
-+ CBitFieldMaskBit19 = 0x100000000000
-+ CBitFieldMaskBit20 = 0x80000000000
-+ CBitFieldMaskBit21 = 0x40000000000
-+ CBitFieldMaskBit22 = 0x20000000000
-+ CBitFieldMaskBit23 = 0x10000000000
-+ CBitFieldMaskBit24 = 0x8000000000
-+ CBitFieldMaskBit25 = 0x4000000000
-+ CBitFieldMaskBit26 = 0x2000000000
-+ CBitFieldMaskBit27 = 0x1000000000
-+ CBitFieldMaskBit28 = 0x800000000
-+ CBitFieldMaskBit29 = 0x400000000
-+ CBitFieldMaskBit30 = 0x200000000
-+ CBitFieldMaskBit31 = 0x100000000
-+ CBitFieldMaskBit32 = 0x80000000
-+ CBitFieldMaskBit33 = 0x40000000
-+ CBitFieldMaskBit34 = 0x20000000
-+ CBitFieldMaskBit35 = 0x10000000
-+ CBitFieldMaskBit36 = 0x8000000
-+ CBitFieldMaskBit37 = 0x4000000
-+ CBitFieldMaskBit38 = 0x2000000
-+ CBitFieldMaskBit39 = 0x1000000
-+ CBitFieldMaskBit40 = 0x800000
-+ CBitFieldMaskBit41 = 0x400000
-+ CBitFieldMaskBit42 = 0x200000
-+ CBitFieldMaskBit43 = 0x100000
-+ CBitFieldMaskBit44 = 0x80000
-+ CBitFieldMaskBit45 = 0x40000
-+ CBitFieldMaskBit46 = 0x20000
-+ CBitFieldMaskBit47 = 0x10000
-+ CBitFieldMaskBit48 = 0x8000
-+ CBitFieldMaskBit49 = 0x4000
-+ CBitFieldMaskBit50 = 0x2000
-+ CBitFieldMaskBit51 = 0x1000
-+ CBitFieldMaskBit52 = 0x800
-+ CBitFieldMaskBit53 = 0x400
-+ CBitFieldMaskBit54 = 0x200
-+ CBitFieldMaskBit55 = 0x100
-+ CBitFieldMaskBit56 = 0x80
-+ CBitFieldMaskBit57 = 0x40
-+ CBitFieldMaskBit58 = 0x20
-+ CBitFieldMaskBit59 = 0x10
-+ CBitFieldMaskBit60 = 0x8
-+ CBitFieldMaskBit61 = 0x4
-+ CBitFieldMaskBit62 = 0x2
-+ CBitFieldMaskBit63 = 0x1
- )
-
--type Genlmsghdr struct {
-- Cmd uint8
-- Version uint8
-- Reserved uint16
-+type SockaddrStorage struct {
-+ Family uint16
-+ _ [122]int8
-+ _ uint32
-+}
-+
-+type HDGeometry struct {
-+ Heads uint8
-+ Sectors uint8
-+ Cylinders uint16
-+ Start uint32
-+}
-+
-+type Statfs_t struct {
-+ Type int32
-+ Bsize int32
-+ Frsize int32
-+ _ [4]byte
-+ Blocks uint64
-+ Bfree uint64
-+ Files uint64
-+ Ffree uint64
-+ Bavail uint64
-+ Fsid Fsid
-+ Namelen int32
-+ Flags int32
-+ Spare [5]int32
-+ _ [4]byte
-+}
-+
-+type TpacketHdr struct {
-+ Status uint32
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Usec uint32
-+}
-+
-+const (
-+ SizeofTpacketHdr = 0x18
-+)
-+
-+type RTCPLLInfo struct {
-+ Ctrl int32
-+ Value int32
-+ Max int32
-+ Min int32
-+ Posmult int32
-+ Negmult int32
-+ Clock int32
-+}
-+
-+type BlkpgPartition struct {
-+ Start int64
-+ Length int64
-+ Pno int32
-+ Devname [64]uint8
-+ Volname [64]uint8
-+ _ [4]byte
- }
-
- const (
-- CTRL_CMD_UNSPEC = 0x0
-- CTRL_CMD_NEWFAMILY = 0x1
-- CTRL_CMD_DELFAMILY = 0x2
-- CTRL_CMD_GETFAMILY = 0x3
-- CTRL_CMD_NEWOPS = 0x4
-- CTRL_CMD_DELOPS = 0x5
-- CTRL_CMD_GETOPS = 0x6
-- CTRL_CMD_NEWMCAST_GRP = 0x7
-- CTRL_CMD_DELMCAST_GRP = 0x8
-- CTRL_CMD_GETMCAST_GRP = 0x9
-- CTRL_ATTR_UNSPEC = 0x0
-- CTRL_ATTR_FAMILY_ID = 0x1
-- CTRL_ATTR_FAMILY_NAME = 0x2
-- CTRL_ATTR_VERSION = 0x3
-- CTRL_ATTR_HDRSIZE = 0x4
-- CTRL_ATTR_MAXATTR = 0x5
-- CTRL_ATTR_OPS = 0x6
-- CTRL_ATTR_MCAST_GROUPS = 0x7
-- CTRL_ATTR_OP_UNSPEC = 0x0
-- CTRL_ATTR_OP_ID = 0x1
-- CTRL_ATTR_OP_FLAGS = 0x2
-- CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
-- CTRL_ATTR_MCAST_GRP_NAME = 0x1
-- CTRL_ATTR_MCAST_GRP_ID = 0x2
-+ BLKPG = 0x20001269
- )
-+
-+type XDPUmemReg struct {
-+ Addr uint64
-+ Len uint64
-+ Size uint32
-+ Headroom uint32
-+ Flags uint32
-+ _ [4]byte
-+}
-+
-+type CryptoUserAlg struct {
-+ Name [64]int8
-+ Driver_name [64]int8
-+ Module_name [64]int8
-+ Type uint32
-+ Mask uint32
-+ Refcnt uint32
-+ Flags uint32
-+}
-+
-+type CryptoStatAEAD struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatAKCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Verify_cnt uint64
-+ Sign_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCompress struct {
-+ Type [64]int8
-+ Compress_cnt uint64
-+ Compress_tlen uint64
-+ Decompress_cnt uint64
-+ Decompress_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatHash struct {
-+ Type [64]int8
-+ Hash_cnt uint64
-+ Hash_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatKPP struct {
-+ Type [64]int8
-+ Setsecret_cnt uint64
-+ Generate_public_key_cnt uint64
-+ Compute_shared_secret_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatRNG struct {
-+ Type [64]int8
-+ Generate_cnt uint64
-+ Generate_tlen uint64
-+ Seed_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportHash struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Digestsize uint32
-+}
-+
-+type CryptoReportCipher struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+}
-+
-+type CryptoReportBlkCipher struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportAEAD struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Maxauthsize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportComp struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportRNG struct {
-+ Type [64]int8
-+ Seedsize uint32
-+}
-+
-+type CryptoReportAKCipher struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportKPP struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportAcomp struct {
-+ Type [64]int8
-+}
-+
-+type LoopInfo struct {
-+ Number int32
-+ Device uint32
-+ Inode uint32
-+ Rdevice uint32
-+ Offset int32
-+ Encrypt_type int32
-+ Encrypt_key_size int32
-+ Flags int32
-+ Name [64]int8
-+ Encrypt_key [32]uint8
-+ Init [2]uint32
-+ Reserved [4]int8
-+}
-+
-+type TIPCSubscr struct {
-+ Seq TIPCServiceRange
-+ Timeout uint32
-+ Filter uint32
-+ Handle [8]int8
-+}
-+
-+type TIPCSIOCLNReq struct {
-+ Peer uint32
-+ Id uint32
-+ Linkname [68]int8
-+}
-+
-+type TIPCSIOCNodeIDReq struct {
-+ Peer uint32
-+ Id [16]int8
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
-index 3e5fc625..2e7f3b8c 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
-@@ -6,19 +6,12 @@
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-- PathMax = 0x1000
-+ SizeofPtr = 0x8
-+ SizeofLong = 0x8
- )
-
- type (
-- _C_short int16
-- _C_int int32
-- _C_long int64
-- _C_long_long int64
-+ _C_long int64
- )
-
- type Timespec struct {
-@@ -33,13 +26,11 @@ type Timeval struct {
-
- type Timex struct {
- Modes uint32
-- Pad_cgo_0 [4]byte
- Offset int64
- Freq int64
- Maxerror int64
- Esterror int64
- Status int32
-- Pad_cgo_1 [4]byte
- Constant int64
- Precision int64
- Tolerance int64
-@@ -48,14 +39,13 @@ type Timex struct {
- Ppsfreq int64
- Jitter int64
- Shift int32
-- Pad_cgo_2 [4]byte
- Stabil int64
- Jitcnt int64
- Calcnt int64
- Errcnt int64
- Stbcnt int64
- Tai int32
-- Pad_cgo_3 [44]byte
-+ _ [44]byte
- }
-
- type Time_t int64
-@@ -91,13 +81,6 @@ type Rusage struct {
- Nivcsw int64
- }
-
--type Rlimit struct {
-- Cur uint64
-- Max uint64
--}
--
--type _Gid_t uint32
--
- type Stat_t struct {
- Dev uint32
- Pad1 [3]uint32
-@@ -117,139 +100,29 @@ type Stat_t struct {
- Blocks int64
- }
-
--type Statfs_t struct {
-- Type int64
-- Bsize int64
-- Frsize int64
-- Blocks uint64
-- Bfree uint64
-- Files uint64
-- Ffree uint64
-- Bavail uint64
-- Fsid Fsid
-- Namelen int64
-- Flags int64
-- Spare [5]int64
--}
--
- type Dirent struct {
-- Ino uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Name [256]int8
-- Pad_cgo_0 [5]byte
--}
--
--type Fsid struct {
-- X__val [2]int32
-+ Ino uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Name [256]int8
-+ _ [5]byte
- }
-
- type Flock_t struct {
-- Type int16
-- Whence int16
-- Pad_cgo_0 [4]byte
-- Start int64
-- Len int64
-- Pid int32
-- Pad_cgo_1 [4]byte
--}
--
--type FscryptPolicy struct {
-- Version uint8
-- Contents_encryption_mode uint8
-- Filenames_encryption_mode uint8
-- Flags uint8
-- Master_key_descriptor [8]uint8
--}
--
--type FscryptKey struct {
-- Mode uint32
-- Raw [64]uint8
-- Size uint32
--}
--
--type KeyctlDHParams struct {
-- Private int32
-- Prime int32
-- Base int32
-+ Type int16
-+ Whence int16
-+ Start int64
-+ Len int64
-+ Pid int32
-+ _ [4]byte
- }
-
- const (
-- FADV_NORMAL = 0x0
-- FADV_RANDOM = 0x1
-- FADV_SEQUENTIAL = 0x2
-- FADV_WILLNEED = 0x3
-- FADV_DONTNEED = 0x4
-- FADV_NOREUSE = 0x5
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
- )
-
--type RawSockaddrInet4 struct {
-- Family uint16
-- Port uint16
-- Addr [4]byte /* in_addr */
-- Zero [8]uint8
--}
--
--type RawSockaddrInet6 struct {
-- Family uint16
-- Port uint16
-- Flowinfo uint32
-- Addr [16]byte /* in6_addr */
-- Scope_id uint32
--}
--
--type RawSockaddrUnix struct {
-- Family uint16
-- Path [108]int8
--}
--
--type RawSockaddrLinklayer struct {
-- Family uint16
-- Protocol uint16
-- Ifindex int32
-- Hatype uint16
-- Pkttype uint8
-- Halen uint8
-- Addr [8]uint8
--}
--
--type RawSockaddrNetlink struct {
-- Family uint16
-- Pad uint16
-- Pid uint32
-- Groups uint32
--}
--
--type RawSockaddrHCI struct {
-- Family uint16
-- Dev uint16
-- Channel uint16
--}
--
--type RawSockaddrCAN struct {
-- Family uint16
-- Pad_cgo_0 [2]byte
-- Ifindex int32
-- Addr [8]byte
--}
--
--type RawSockaddrALG struct {
-- Family uint16
-- Type [14]uint8
-- Feat uint32
-- Mask uint32
-- Name [64]uint8
--}
--
--type RawSockaddrVM struct {
-- Family uint16
-- Reserved1 uint16
-- Port uint32
-- Cid uint32
-- Zero [4]uint8
--}
--
- type RawSockaddr struct {
- Family uint16
- Data [14]int8
-@@ -260,51 +133,20 @@ type RawSockaddrAny struct {
- Pad [96]int8
- }
-
--type _Socklen uint32
--
--type Linger struct {
-- Onoff int32
-- Linger int32
--}
--
- type Iovec struct {
- Base *byte
- Len uint64
- }
-
--type IPMreq struct {
-- Multiaddr [4]byte /* in_addr */
-- Interface [4]byte /* in_addr */
--}
--
--type IPMreqn struct {
-- Multiaddr [4]byte /* in_addr */
-- Address [4]byte /* in_addr */
-- Ifindex int32
--}
--
--type IPv6Mreq struct {
-- Multiaddr [16]byte /* in6_addr */
-- Interface uint32
--}
--
--type PacketMreq struct {
-- Ifindex int32
-- Type uint16
-- Alen uint16
-- Address [8]uint8
--}
--
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
- Iov *Iovec
- Iovlen uint64
- Control *byte
- Controllen uint64
- Flags int32
-- Pad_cgo_1 [4]byte
-+ _ [4]byte
- }
-
- type Cmsghdr struct {
-@@ -313,277 +155,16 @@ type Cmsghdr struct {
- Type int32
- }
-
--type Inet4Pktinfo struct {
-- Ifindex int32
-- Spec_dst [4]byte /* in_addr */
-- Addr [4]byte /* in_addr */
--}
--
--type Inet6Pktinfo struct {
-- Addr [16]byte /* in6_addr */
-- Ifindex uint32
--}
--
--type IPv6MTUInfo struct {
-- Addr RawSockaddrInet6
-- Mtu uint32
--}
--
--type ICMPv6Filter struct {
-- Data [8]uint32
--}
--
--type Ucred struct {
-- Pid int32
-- Uid uint32
-- Gid uint32
--}
--
--type TCPInfo struct {
-- State uint8
-- Ca_state uint8
-- Retransmits uint8
-- Probes uint8
-- Backoff uint8
-- Options uint8
-- Pad_cgo_0 [2]byte
-- Rto uint32
-- Ato uint32
-- Snd_mss uint32
-- Rcv_mss uint32
-- Unacked uint32
-- Sacked uint32
-- Lost uint32
-- Retrans uint32
-- Fackets uint32
-- Last_data_sent uint32
-- Last_ack_sent uint32
-- Last_data_recv uint32
-- Last_ack_recv uint32
-- Pmtu uint32
-- Rcv_ssthresh uint32
-- Rtt uint32
-- Rttvar uint32
-- Snd_ssthresh uint32
-- Snd_cwnd uint32
-- Advmss uint32
-- Reordering uint32
-- Rcv_rtt uint32
-- Rcv_space uint32
-- Total_retrans uint32
--}
--
- const (
-- SizeofSockaddrInet4 = 0x10
-- SizeofSockaddrInet6 = 0x1c
-- SizeofSockaddrAny = 0x70
-- SizeofSockaddrUnix = 0x6e
-- SizeofSockaddrLinklayer = 0x14
-- SizeofSockaddrNetlink = 0xc
-- SizeofSockaddrHCI = 0x6
-- SizeofSockaddrCAN = 0x10
-- SizeofSockaddrALG = 0x58
-- SizeofSockaddrVM = 0x10
-- SizeofLinger = 0x8
-- SizeofIovec = 0x10
-- SizeofIPMreq = 0x8
-- SizeofIPMreqn = 0xc
-- SizeofIPv6Mreq = 0x14
-- SizeofPacketMreq = 0x10
-- SizeofMsghdr = 0x38
-- SizeofCmsghdr = 0x10
-- SizeofInet4Pktinfo = 0xc
-- SizeofInet6Pktinfo = 0x14
-- SizeofIPv6MTUInfo = 0x20
-- SizeofICMPv6Filter = 0x20
-- SizeofUcred = 0xc
-- SizeofTCPInfo = 0x68
-+ SizeofIovec = 0x10
-+ SizeofMsghdr = 0x38
-+ SizeofCmsghdr = 0x10
- )
-
- const (
-- IFA_UNSPEC = 0x0
-- IFA_ADDRESS = 0x1
-- IFA_LOCAL = 0x2
-- IFA_LABEL = 0x3
-- IFA_BROADCAST = 0x4
-- IFA_ANYCAST = 0x5
-- IFA_CACHEINFO = 0x6
-- IFA_MULTICAST = 0x7
-- IFLA_UNSPEC = 0x0
-- IFLA_ADDRESS = 0x1
-- IFLA_BROADCAST = 0x2
-- IFLA_IFNAME = 0x3
-- IFLA_MTU = 0x4
-- IFLA_LINK = 0x5
-- IFLA_QDISC = 0x6
-- IFLA_STATS = 0x7
-- IFLA_COST = 0x8
-- IFLA_PRIORITY = 0x9
-- IFLA_MASTER = 0xa
-- IFLA_WIRELESS = 0xb
-- IFLA_PROTINFO = 0xc
-- IFLA_TXQLEN = 0xd
-- IFLA_MAP = 0xe
-- IFLA_WEIGHT = 0xf
-- IFLA_OPERSTATE = 0x10
-- IFLA_LINKMODE = 0x11
-- IFLA_LINKINFO = 0x12
-- IFLA_NET_NS_PID = 0x13
-- IFLA_IFALIAS = 0x14
-- IFLA_MAX = 0x2b
-- RT_SCOPE_UNIVERSE = 0x0
-- RT_SCOPE_SITE = 0xc8
-- RT_SCOPE_LINK = 0xfd
-- RT_SCOPE_HOST = 0xfe
-- RT_SCOPE_NOWHERE = 0xff
-- RT_TABLE_UNSPEC = 0x0
-- RT_TABLE_COMPAT = 0xfc
-- RT_TABLE_DEFAULT = 0xfd
-- RT_TABLE_MAIN = 0xfe
-- RT_TABLE_LOCAL = 0xff
-- RT_TABLE_MAX = 0xffffffff
-- RTA_UNSPEC = 0x0
-- RTA_DST = 0x1
-- RTA_SRC = 0x2
-- RTA_IIF = 0x3
-- RTA_OIF = 0x4
-- RTA_GATEWAY = 0x5
-- RTA_PRIORITY = 0x6
-- RTA_PREFSRC = 0x7
-- RTA_METRICS = 0x8
-- RTA_MULTIPATH = 0x9
-- RTA_FLOW = 0xb
-- RTA_CACHEINFO = 0xc
-- RTA_TABLE = 0xf
-- RTN_UNSPEC = 0x0
-- RTN_UNICAST = 0x1
-- RTN_LOCAL = 0x2
-- RTN_BROADCAST = 0x3
-- RTN_ANYCAST = 0x4
-- RTN_MULTICAST = 0x5
-- RTN_BLACKHOLE = 0x6
-- RTN_UNREACHABLE = 0x7
-- RTN_PROHIBIT = 0x8
-- RTN_THROW = 0x9
-- RTN_NAT = 0xa
-- RTN_XRESOLVE = 0xb
-- RTNLGRP_NONE = 0x0
-- RTNLGRP_LINK = 0x1
-- RTNLGRP_NOTIFY = 0x2
-- RTNLGRP_NEIGH = 0x3
-- RTNLGRP_TC = 0x4
-- RTNLGRP_IPV4_IFADDR = 0x5
-- RTNLGRP_IPV4_MROUTE = 0x6
-- RTNLGRP_IPV4_ROUTE = 0x7
-- RTNLGRP_IPV4_RULE = 0x8
-- RTNLGRP_IPV6_IFADDR = 0x9
-- RTNLGRP_IPV6_MROUTE = 0xa
-- RTNLGRP_IPV6_ROUTE = 0xb
-- RTNLGRP_IPV6_IFINFO = 0xc
-- RTNLGRP_IPV6_PREFIX = 0x12
-- RTNLGRP_IPV6_RULE = 0x13
-- RTNLGRP_ND_USEROPT = 0x14
-- SizeofNlMsghdr = 0x10
-- SizeofNlMsgerr = 0x14
-- SizeofRtGenmsg = 0x1
-- SizeofNlAttr = 0x4
-- SizeofRtAttr = 0x4
-- SizeofIfInfomsg = 0x10
-- SizeofIfAddrmsg = 0x8
-- SizeofRtMsg = 0xc
-- SizeofRtNexthop = 0x8
-+ SizeofSockFprog = 0x10
- )
-
--type NlMsghdr struct {
-- Len uint32
-- Type uint16
-- Flags uint16
-- Seq uint32
-- Pid uint32
--}
--
--type NlMsgerr struct {
-- Error int32
-- Msg NlMsghdr
--}
--
--type RtGenmsg struct {
-- Family uint8
--}
--
--type NlAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type RtAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type IfInfomsg struct {
-- Family uint8
-- X__ifi_pad uint8
-- Type uint16
-- Index int32
-- Flags uint32
-- Change uint32
--}
--
--type IfAddrmsg struct {
-- Family uint8
-- Prefixlen uint8
-- Flags uint8
-- Scope uint8
-- Index uint32
--}
--
--type RtMsg struct {
-- Family uint8
-- Dst_len uint8
-- Src_len uint8
-- Tos uint8
-- Table uint8
-- Protocol uint8
-- Scope uint8
-- Type uint8
-- Flags uint32
--}
--
--type RtNexthop struct {
-- Len uint16
-- Flags uint8
-- Hops uint8
-- Ifindex int32
--}
--
--const (
-- SizeofSockFilter = 0x8
-- SizeofSockFprog = 0x10
--)
--
--type SockFilter struct {
-- Code uint16
-- Jt uint8
-- Jf uint8
-- K uint32
--}
--
--type SockFprog struct {
-- Len uint16
-- Pad_cgo_0 [6]byte
-- Filter *SockFilter
--}
--
--type InotifyEvent struct {
-- Wd int32
-- Mask uint32
-- Cookie uint32
-- Len uint32
--}
--
--const SizeofInotifyEvent = 0x10
--
- type PtraceRegs struct {
- Regs [32]uint64
- Lo uint64
-@@ -609,70 +190,37 @@ type Sysinfo_t struct {
- Freeswap uint64
- Procs uint16
- Pad uint16
-- Pad_cgo_0 [4]byte
- Totalhigh uint64
- Freehigh uint64
- Unit uint32
-- X_f [0]int8
-- Pad_cgo_1 [4]byte
--}
--
--type Utsname struct {
-- Sysname [65]int8
-- Nodename [65]int8
-- Release [65]int8
-- Version [65]int8
-- Machine [65]int8
-- Domainname [65]int8
-+ _ [0]int8
-+ _ [4]byte
- }
-
- type Ustat_t struct {
-- Tfree int32
-- Pad_cgo_0 [4]byte
-- Tinode uint64
-- Fname [6]int8
-- Fpack [6]int8
-- Pad_cgo_1 [4]byte
-+ Tfree int32
-+ Tinode uint64
-+ Fname [6]int8
-+ Fpack [6]int8
-+ _ [4]byte
- }
-
- type EpollEvent struct {
- Events uint32
-+ _ int32
- Fd int32
- Pad int32
- }
-
- const (
-- AT_FDCWD = -0x64
-- AT_REMOVEDIR = 0x200
-- AT_SYMLINK_FOLLOW = 0x400
-- AT_SYMLINK_NOFOLLOW = 0x100
--)
--
--type PollFd struct {
-- Fd int32
-- Events int16
-- Revents int16
--}
--
--const (
-- POLLIN = 0x1
-- POLLPRI = 0x2
-- POLLOUT = 0x4
- POLLRDHUP = 0x2000
-- POLLERR = 0x8
-- POLLHUP = 0x10
-- POLLNVAL = 0x20
- )
-
- type Sigset_t struct {
-- X__val [16]uint64
-+ Val [16]uint64
- }
-
--const RNDGETENTCNT = 0x40045200
--
--const PERF_IOC_FLAG_GROUP = 0x1
--
--const _SC_PAGESIZE = 0x1e
-+const _C__NSIG = 0x80
-
- type Termios struct {
- Iflag uint32
-@@ -685,20 +233,11 @@ type Termios struct {
- Ospeed uint32
- }
-
--type Winsize struct {
-- Row uint16
-- Col uint16
-- Xpixel uint16
-- Ypixel uint16
--}
--
- type Taskstats struct {
- Version uint16
-- Pad_cgo_0 [2]byte
- Ac_exitcode uint32
- Ac_flag uint8
- Ac_nice uint8
-- Pad_cgo_1 [6]byte
- Cpu_count uint64
- Cpu_delay_total uint64
- Blkio_count uint64
-@@ -710,13 +249,12 @@ type Taskstats struct {
- Ac_comm [32]int8
- Ac_sched uint8
- Ac_pad [3]uint8
-- Pad_cgo_2 [4]byte
-+ _ [4]byte
- Ac_uid uint32
- Ac_gid uint32
- Ac_pid uint32
- Ac_ppid uint32
- Ac_btime uint32
-- Pad_cgo_3 [4]byte
- Ac_etime uint64
- Ac_utime uint64
- Ac_stime uint64
-@@ -740,55 +278,319 @@ type Taskstats struct {
- Cpu_scaled_run_real_total uint64
- Freepages_count uint64
- Freepages_delay_total uint64
-+ Thrashing_count uint64
-+ Thrashing_delay_total uint64
-+ Ac_btime64 uint64
- }
-
-+type cpuMask uint64
-+
- const (
-- TASKSTATS_CMD_UNSPEC = 0x0
-- TASKSTATS_CMD_GET = 0x1
-- TASKSTATS_CMD_NEW = 0x2
-- TASKSTATS_TYPE_UNSPEC = 0x0
-- TASKSTATS_TYPE_PID = 0x1
-- TASKSTATS_TYPE_TGID = 0x2
-- TASKSTATS_TYPE_STATS = 0x3
-- TASKSTATS_TYPE_AGGR_PID = 0x4
-- TASKSTATS_TYPE_AGGR_TGID = 0x5
-- TASKSTATS_TYPE_NULL = 0x6
-- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
-- TASKSTATS_CMD_ATTR_PID = 0x1
-- TASKSTATS_CMD_ATTR_TGID = 0x2
-- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
-- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-+ _NCPUBITS = 0x40
- )
-
--type Genlmsghdr struct {
-- Cmd uint8
-- Version uint8
-- Reserved uint16
-+const (
-+ CBitFieldMaskBit0 = 0x8000000000000000
-+ CBitFieldMaskBit1 = 0x4000000000000000
-+ CBitFieldMaskBit2 = 0x2000000000000000
-+ CBitFieldMaskBit3 = 0x1000000000000000
-+ CBitFieldMaskBit4 = 0x800000000000000
-+ CBitFieldMaskBit5 = 0x400000000000000
-+ CBitFieldMaskBit6 = 0x200000000000000
-+ CBitFieldMaskBit7 = 0x100000000000000
-+ CBitFieldMaskBit8 = 0x80000000000000
-+ CBitFieldMaskBit9 = 0x40000000000000
-+ CBitFieldMaskBit10 = 0x20000000000000
-+ CBitFieldMaskBit11 = 0x10000000000000
-+ CBitFieldMaskBit12 = 0x8000000000000
-+ CBitFieldMaskBit13 = 0x4000000000000
-+ CBitFieldMaskBit14 = 0x2000000000000
-+ CBitFieldMaskBit15 = 0x1000000000000
-+ CBitFieldMaskBit16 = 0x800000000000
-+ CBitFieldMaskBit17 = 0x400000000000
-+ CBitFieldMaskBit18 = 0x200000000000
-+ CBitFieldMaskBit19 = 0x100000000000
-+ CBitFieldMaskBit20 = 0x80000000000
-+ CBitFieldMaskBit21 = 0x40000000000
-+ CBitFieldMaskBit22 = 0x20000000000
-+ CBitFieldMaskBit23 = 0x10000000000
-+ CBitFieldMaskBit24 = 0x8000000000
-+ CBitFieldMaskBit25 = 0x4000000000
-+ CBitFieldMaskBit26 = 0x2000000000
-+ CBitFieldMaskBit27 = 0x1000000000
-+ CBitFieldMaskBit28 = 0x800000000
-+ CBitFieldMaskBit29 = 0x400000000
-+ CBitFieldMaskBit30 = 0x200000000
-+ CBitFieldMaskBit31 = 0x100000000
-+ CBitFieldMaskBit32 = 0x80000000
-+ CBitFieldMaskBit33 = 0x40000000
-+ CBitFieldMaskBit34 = 0x20000000
-+ CBitFieldMaskBit35 = 0x10000000
-+ CBitFieldMaskBit36 = 0x8000000
-+ CBitFieldMaskBit37 = 0x4000000
-+ CBitFieldMaskBit38 = 0x2000000
-+ CBitFieldMaskBit39 = 0x1000000
-+ CBitFieldMaskBit40 = 0x800000
-+ CBitFieldMaskBit41 = 0x400000
-+ CBitFieldMaskBit42 = 0x200000
-+ CBitFieldMaskBit43 = 0x100000
-+ CBitFieldMaskBit44 = 0x80000
-+ CBitFieldMaskBit45 = 0x40000
-+ CBitFieldMaskBit46 = 0x20000
-+ CBitFieldMaskBit47 = 0x10000
-+ CBitFieldMaskBit48 = 0x8000
-+ CBitFieldMaskBit49 = 0x4000
-+ CBitFieldMaskBit50 = 0x2000
-+ CBitFieldMaskBit51 = 0x1000
-+ CBitFieldMaskBit52 = 0x800
-+ CBitFieldMaskBit53 = 0x400
-+ CBitFieldMaskBit54 = 0x200
-+ CBitFieldMaskBit55 = 0x100
-+ CBitFieldMaskBit56 = 0x80
-+ CBitFieldMaskBit57 = 0x40
-+ CBitFieldMaskBit58 = 0x20
-+ CBitFieldMaskBit59 = 0x10
-+ CBitFieldMaskBit60 = 0x8
-+ CBitFieldMaskBit61 = 0x4
-+ CBitFieldMaskBit62 = 0x2
-+ CBitFieldMaskBit63 = 0x1
-+)
-+
-+type SockaddrStorage struct {
-+ Family uint16
-+ _ [118]int8
-+ _ uint64
-+}
-+
-+type HDGeometry struct {
-+ Heads uint8
-+ Sectors uint8
-+ Cylinders uint16
-+ Start uint64
-+}
-+
-+type Statfs_t struct {
-+ Type int64
-+ Bsize int64
-+ Frsize int64
-+ Blocks uint64
-+ Bfree uint64
-+ Files uint64
-+ Ffree uint64
-+ Bavail uint64
-+ Fsid Fsid
-+ Namelen int64
-+ Flags int64
-+ Spare [5]int64
-+}
-+
-+type TpacketHdr struct {
-+ Status uint64
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Usec uint32
-+ _ [4]byte
- }
-
- const (
-- CTRL_CMD_UNSPEC = 0x0
-- CTRL_CMD_NEWFAMILY = 0x1
-- CTRL_CMD_DELFAMILY = 0x2
-- CTRL_CMD_GETFAMILY = 0x3
-- CTRL_CMD_NEWOPS = 0x4
-- CTRL_CMD_DELOPS = 0x5
-- CTRL_CMD_GETOPS = 0x6
-- CTRL_CMD_NEWMCAST_GRP = 0x7
-- CTRL_CMD_DELMCAST_GRP = 0x8
-- CTRL_CMD_GETMCAST_GRP = 0x9
-- CTRL_ATTR_UNSPEC = 0x0
-- CTRL_ATTR_FAMILY_ID = 0x1
-- CTRL_ATTR_FAMILY_NAME = 0x2
-- CTRL_ATTR_VERSION = 0x3
-- CTRL_ATTR_HDRSIZE = 0x4
-- CTRL_ATTR_MAXATTR = 0x5
-- CTRL_ATTR_OPS = 0x6
-- CTRL_ATTR_MCAST_GROUPS = 0x7
-- CTRL_ATTR_OP_UNSPEC = 0x0
-- CTRL_ATTR_OP_ID = 0x1
-- CTRL_ATTR_OP_FLAGS = 0x2
-- CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
-- CTRL_ATTR_MCAST_GRP_NAME = 0x1
-- CTRL_ATTR_MCAST_GRP_ID = 0x2
-+ SizeofTpacketHdr = 0x20
- )
-+
-+type RTCPLLInfo struct {
-+ Ctrl int32
-+ Value int32
-+ Max int32
-+ Min int32
-+ Posmult int32
-+ Negmult int32
-+ Clock int64
-+}
-+
-+type BlkpgPartition struct {
-+ Start int64
-+ Length int64
-+ Pno int32
-+ Devname [64]uint8
-+ Volname [64]uint8
-+ _ [4]byte
-+}
-+
-+const (
-+ BLKPG = 0x20001269
-+)
-+
-+type XDPUmemReg struct {
-+ Addr uint64
-+ Len uint64
-+ Size uint32
-+ Headroom uint32
-+ Flags uint32
-+ _ [4]byte
-+}
-+
-+type CryptoUserAlg struct {
-+ Name [64]int8
-+ Driver_name [64]int8
-+ Module_name [64]int8
-+ Type uint32
-+ Mask uint32
-+ Refcnt uint32
-+ Flags uint32
-+}
-+
-+type CryptoStatAEAD struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatAKCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Verify_cnt uint64
-+ Sign_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCompress struct {
-+ Type [64]int8
-+ Compress_cnt uint64
-+ Compress_tlen uint64
-+ Decompress_cnt uint64
-+ Decompress_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatHash struct {
-+ Type [64]int8
-+ Hash_cnt uint64
-+ Hash_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatKPP struct {
-+ Type [64]int8
-+ Setsecret_cnt uint64
-+ Generate_public_key_cnt uint64
-+ Compute_shared_secret_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatRNG struct {
-+ Type [64]int8
-+ Generate_cnt uint64
-+ Generate_tlen uint64
-+ Seed_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportHash struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Digestsize uint32
-+}
-+
-+type CryptoReportCipher struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+}
-+
-+type CryptoReportBlkCipher struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportAEAD struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Maxauthsize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportComp struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportRNG struct {
-+ Type [64]int8
-+ Seedsize uint32
-+}
-+
-+type CryptoReportAKCipher struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportKPP struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportAcomp struct {
-+ Type [64]int8
-+}
-+
-+type LoopInfo struct {
-+ Number int32
-+ Device uint32
-+ Inode uint64
-+ Rdevice uint32
-+ Offset int32
-+ Encrypt_type int32
-+ Encrypt_key_size int32
-+ Flags int32
-+ Name [64]int8
-+ Encrypt_key [32]uint8
-+ Init [2]uint64
-+ Reserved [4]int8
-+ _ [4]byte
-+}
-+
-+type TIPCSubscr struct {
-+ Seq TIPCServiceRange
-+ Timeout uint32
-+ Filter uint32
-+ Handle [8]int8
-+}
-+
-+type TIPCSIOCLNReq struct {
-+ Peer uint32
-+ Id uint32
-+ Linkname [68]int8
-+}
-+
-+type TIPCSIOCNodeIDReq struct {
-+ Peer uint32
-+ Id [16]int8
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
-index f9bd1ab0..16add5a2 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
-@@ -6,19 +6,12 @@
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-- PathMax = 0x1000
-+ SizeofPtr = 0x8
-+ SizeofLong = 0x8
- )
-
- type (
-- _C_short int16
-- _C_int int32
-- _C_long int64
-- _C_long_long int64
-+ _C_long int64
- )
-
- type Timespec struct {
-@@ -33,13 +26,11 @@ type Timeval struct {
-
- type Timex struct {
- Modes uint32
-- Pad_cgo_0 [4]byte
- Offset int64
- Freq int64
- Maxerror int64
- Esterror int64
- Status int32
-- Pad_cgo_1 [4]byte
- Constant int64
- Precision int64
- Tolerance int64
-@@ -48,14 +39,13 @@ type Timex struct {
- Ppsfreq int64
- Jitter int64
- Shift int32
-- Pad_cgo_2 [4]byte
- Stabil int64
- Jitcnt int64
- Calcnt int64
- Errcnt int64
- Stbcnt int64
- Tai int32
-- Pad_cgo_3 [44]byte
-+ _ [44]byte
- }
-
- type Time_t int64
-@@ -91,13 +81,6 @@ type Rusage struct {
- Nivcsw int64
- }
-
--type Rlimit struct {
-- Cur uint64
-- Max uint64
--}
--
--type _Gid_t uint32
--
- type Stat_t struct {
- Dev uint32
- Pad1 [3]uint32
-@@ -117,139 +100,29 @@ type Stat_t struct {
- Blocks int64
- }
-
--type Statfs_t struct {
-- Type int64
-- Bsize int64
-- Frsize int64
-- Blocks uint64
-- Bfree uint64
-- Files uint64
-- Ffree uint64
-- Bavail uint64
-- Fsid Fsid
-- Namelen int64
-- Flags int64
-- Spare [5]int64
--}
--
- type Dirent struct {
-- Ino uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Name [256]int8
-- Pad_cgo_0 [5]byte
--}
--
--type Fsid struct {
-- X__val [2]int32
-+ Ino uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Name [256]int8
-+ _ [5]byte
- }
-
- type Flock_t struct {
-- Type int16
-- Whence int16
-- Pad_cgo_0 [4]byte
-- Start int64
-- Len int64
-- Pid int32
-- Pad_cgo_1 [4]byte
--}
--
--type FscryptPolicy struct {
-- Version uint8
-- Contents_encryption_mode uint8
-- Filenames_encryption_mode uint8
-- Flags uint8
-- Master_key_descriptor [8]uint8
--}
--
--type FscryptKey struct {
-- Mode uint32
-- Raw [64]uint8
-- Size uint32
--}
--
--type KeyctlDHParams struct {
-- Private int32
-- Prime int32
-- Base int32
-+ Type int16
-+ Whence int16
-+ Start int64
-+ Len int64
-+ Pid int32
-+ _ [4]byte
- }
-
- const (
-- FADV_NORMAL = 0x0
-- FADV_RANDOM = 0x1
-- FADV_SEQUENTIAL = 0x2
-- FADV_WILLNEED = 0x3
-- FADV_DONTNEED = 0x4
-- FADV_NOREUSE = 0x5
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
- )
-
--type RawSockaddrInet4 struct {
-- Family uint16
-- Port uint16
-- Addr [4]byte /* in_addr */
-- Zero [8]uint8
--}
--
--type RawSockaddrInet6 struct {
-- Family uint16
-- Port uint16
-- Flowinfo uint32
-- Addr [16]byte /* in6_addr */
-- Scope_id uint32
--}
--
--type RawSockaddrUnix struct {
-- Family uint16
-- Path [108]int8
--}
--
--type RawSockaddrLinklayer struct {
-- Family uint16
-- Protocol uint16
-- Ifindex int32
-- Hatype uint16
-- Pkttype uint8
-- Halen uint8
-- Addr [8]uint8
--}
--
--type RawSockaddrNetlink struct {
-- Family uint16
-- Pad uint16
-- Pid uint32
-- Groups uint32
--}
--
--type RawSockaddrHCI struct {
-- Family uint16
-- Dev uint16
-- Channel uint16
--}
--
--type RawSockaddrCAN struct {
-- Family uint16
-- Pad_cgo_0 [2]byte
-- Ifindex int32
-- Addr [8]byte
--}
--
--type RawSockaddrALG struct {
-- Family uint16
-- Type [14]uint8
-- Feat uint32
-- Mask uint32
-- Name [64]uint8
--}
--
--type RawSockaddrVM struct {
-- Family uint16
-- Reserved1 uint16
-- Port uint32
-- Cid uint32
-- Zero [4]uint8
--}
--
- type RawSockaddr struct {
- Family uint16
- Data [14]int8
-@@ -260,51 +133,20 @@ type RawSockaddrAny struct {
- Pad [96]int8
- }
-
--type _Socklen uint32
--
--type Linger struct {
-- Onoff int32
-- Linger int32
--}
--
- type Iovec struct {
- Base *byte
- Len uint64
- }
-
--type IPMreq struct {
-- Multiaddr [4]byte /* in_addr */
-- Interface [4]byte /* in_addr */
--}
--
--type IPMreqn struct {
-- Multiaddr [4]byte /* in_addr */
-- Address [4]byte /* in_addr */
-- Ifindex int32
--}
--
--type IPv6Mreq struct {
-- Multiaddr [16]byte /* in6_addr */
-- Interface uint32
--}
--
--type PacketMreq struct {
-- Ifindex int32
-- Type uint16
-- Alen uint16
-- Address [8]uint8
--}
--
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
- Iov *Iovec
- Iovlen uint64
- Control *byte
- Controllen uint64
- Flags int32
-- Pad_cgo_1 [4]byte
-+ _ [4]byte
- }
-
- type Cmsghdr struct {
-@@ -313,277 +155,16 @@ type Cmsghdr struct {
- Type int32
- }
-
--type Inet4Pktinfo struct {
-- Ifindex int32
-- Spec_dst [4]byte /* in_addr */
-- Addr [4]byte /* in_addr */
--}
--
--type Inet6Pktinfo struct {
-- Addr [16]byte /* in6_addr */
-- Ifindex uint32
--}
--
--type IPv6MTUInfo struct {
-- Addr RawSockaddrInet6
-- Mtu uint32
--}
--
--type ICMPv6Filter struct {
-- Data [8]uint32
--}
--
--type Ucred struct {
-- Pid int32
-- Uid uint32
-- Gid uint32
--}
--
--type TCPInfo struct {
-- State uint8
-- Ca_state uint8
-- Retransmits uint8
-- Probes uint8
-- Backoff uint8
-- Options uint8
-- Pad_cgo_0 [2]byte
-- Rto uint32
-- Ato uint32
-- Snd_mss uint32
-- Rcv_mss uint32
-- Unacked uint32
-- Sacked uint32
-- Lost uint32
-- Retrans uint32
-- Fackets uint32
-- Last_data_sent uint32
-- Last_ack_sent uint32
-- Last_data_recv uint32
-- Last_ack_recv uint32
-- Pmtu uint32
-- Rcv_ssthresh uint32
-- Rtt uint32
-- Rttvar uint32
-- Snd_ssthresh uint32
-- Snd_cwnd uint32
-- Advmss uint32
-- Reordering uint32
-- Rcv_rtt uint32
-- Rcv_space uint32
-- Total_retrans uint32
--}
--
- const (
-- SizeofSockaddrInet4 = 0x10
-- SizeofSockaddrInet6 = 0x1c
-- SizeofSockaddrAny = 0x70
-- SizeofSockaddrUnix = 0x6e
-- SizeofSockaddrLinklayer = 0x14
-- SizeofSockaddrNetlink = 0xc
-- SizeofSockaddrHCI = 0x6
-- SizeofSockaddrCAN = 0x10
-- SizeofSockaddrALG = 0x58
-- SizeofSockaddrVM = 0x10
-- SizeofLinger = 0x8
-- SizeofIovec = 0x10
-- SizeofIPMreq = 0x8
-- SizeofIPMreqn = 0xc
-- SizeofIPv6Mreq = 0x14
-- SizeofPacketMreq = 0x10
-- SizeofMsghdr = 0x38
-- SizeofCmsghdr = 0x10
-- SizeofInet4Pktinfo = 0xc
-- SizeofInet6Pktinfo = 0x14
-- SizeofIPv6MTUInfo = 0x20
-- SizeofICMPv6Filter = 0x20
-- SizeofUcred = 0xc
-- SizeofTCPInfo = 0x68
-+ SizeofIovec = 0x10
-+ SizeofMsghdr = 0x38
-+ SizeofCmsghdr = 0x10
- )
-
- const (
-- IFA_UNSPEC = 0x0
-- IFA_ADDRESS = 0x1
-- IFA_LOCAL = 0x2
-- IFA_LABEL = 0x3
-- IFA_BROADCAST = 0x4
-- IFA_ANYCAST = 0x5
-- IFA_CACHEINFO = 0x6
-- IFA_MULTICAST = 0x7
-- IFLA_UNSPEC = 0x0
-- IFLA_ADDRESS = 0x1
-- IFLA_BROADCAST = 0x2
-- IFLA_IFNAME = 0x3
-- IFLA_MTU = 0x4
-- IFLA_LINK = 0x5
-- IFLA_QDISC = 0x6
-- IFLA_STATS = 0x7
-- IFLA_COST = 0x8
-- IFLA_PRIORITY = 0x9
-- IFLA_MASTER = 0xa
-- IFLA_WIRELESS = 0xb
-- IFLA_PROTINFO = 0xc
-- IFLA_TXQLEN = 0xd
-- IFLA_MAP = 0xe
-- IFLA_WEIGHT = 0xf
-- IFLA_OPERSTATE = 0x10
-- IFLA_LINKMODE = 0x11
-- IFLA_LINKINFO = 0x12
-- IFLA_NET_NS_PID = 0x13
-- IFLA_IFALIAS = 0x14
-- IFLA_MAX = 0x2b
-- RT_SCOPE_UNIVERSE = 0x0
-- RT_SCOPE_SITE = 0xc8
-- RT_SCOPE_LINK = 0xfd
-- RT_SCOPE_HOST = 0xfe
-- RT_SCOPE_NOWHERE = 0xff
-- RT_TABLE_UNSPEC = 0x0
-- RT_TABLE_COMPAT = 0xfc
-- RT_TABLE_DEFAULT = 0xfd
-- RT_TABLE_MAIN = 0xfe
-- RT_TABLE_LOCAL = 0xff
-- RT_TABLE_MAX = 0xffffffff
-- RTA_UNSPEC = 0x0
-- RTA_DST = 0x1
-- RTA_SRC = 0x2
-- RTA_IIF = 0x3
-- RTA_OIF = 0x4
-- RTA_GATEWAY = 0x5
-- RTA_PRIORITY = 0x6
-- RTA_PREFSRC = 0x7
-- RTA_METRICS = 0x8
-- RTA_MULTIPATH = 0x9
-- RTA_FLOW = 0xb
-- RTA_CACHEINFO = 0xc
-- RTA_TABLE = 0xf
-- RTN_UNSPEC = 0x0
-- RTN_UNICAST = 0x1
-- RTN_LOCAL = 0x2
-- RTN_BROADCAST = 0x3
-- RTN_ANYCAST = 0x4
-- RTN_MULTICAST = 0x5
-- RTN_BLACKHOLE = 0x6
-- RTN_UNREACHABLE = 0x7
-- RTN_PROHIBIT = 0x8
-- RTN_THROW = 0x9
-- RTN_NAT = 0xa
-- RTN_XRESOLVE = 0xb
-- RTNLGRP_NONE = 0x0
-- RTNLGRP_LINK = 0x1
-- RTNLGRP_NOTIFY = 0x2
-- RTNLGRP_NEIGH = 0x3
-- RTNLGRP_TC = 0x4
-- RTNLGRP_IPV4_IFADDR = 0x5
-- RTNLGRP_IPV4_MROUTE = 0x6
-- RTNLGRP_IPV4_ROUTE = 0x7
-- RTNLGRP_IPV4_RULE = 0x8
-- RTNLGRP_IPV6_IFADDR = 0x9
-- RTNLGRP_IPV6_MROUTE = 0xa
-- RTNLGRP_IPV6_ROUTE = 0xb
-- RTNLGRP_IPV6_IFINFO = 0xc
-- RTNLGRP_IPV6_PREFIX = 0x12
-- RTNLGRP_IPV6_RULE = 0x13
-- RTNLGRP_ND_USEROPT = 0x14
-- SizeofNlMsghdr = 0x10
-- SizeofNlMsgerr = 0x14
-- SizeofRtGenmsg = 0x1
-- SizeofNlAttr = 0x4
-- SizeofRtAttr = 0x4
-- SizeofIfInfomsg = 0x10
-- SizeofIfAddrmsg = 0x8
-- SizeofRtMsg = 0xc
-- SizeofRtNexthop = 0x8
-+ SizeofSockFprog = 0x10
- )
-
--type NlMsghdr struct {
-- Len uint32
-- Type uint16
-- Flags uint16
-- Seq uint32
-- Pid uint32
--}
--
--type NlMsgerr struct {
-- Error int32
-- Msg NlMsghdr
--}
--
--type RtGenmsg struct {
-- Family uint8
--}
--
--type NlAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type RtAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type IfInfomsg struct {
-- Family uint8
-- X__ifi_pad uint8
-- Type uint16
-- Index int32
-- Flags uint32
-- Change uint32
--}
--
--type IfAddrmsg struct {
-- Family uint8
-- Prefixlen uint8
-- Flags uint8
-- Scope uint8
-- Index uint32
--}
--
--type RtMsg struct {
-- Family uint8
-- Dst_len uint8
-- Src_len uint8
-- Tos uint8
-- Table uint8
-- Protocol uint8
-- Scope uint8
-- Type uint8
-- Flags uint32
--}
--
--type RtNexthop struct {
-- Len uint16
-- Flags uint8
-- Hops uint8
-- Ifindex int32
--}
--
--const (
-- SizeofSockFilter = 0x8
-- SizeofSockFprog = 0x10
--)
--
--type SockFilter struct {
-- Code uint16
-- Jt uint8
-- Jf uint8
-- K uint32
--}
--
--type SockFprog struct {
-- Len uint16
-- Pad_cgo_0 [6]byte
-- Filter *SockFilter
--}
--
--type InotifyEvent struct {
-- Wd int32
-- Mask uint32
-- Cookie uint32
-- Len uint32
--}
--
--const SizeofInotifyEvent = 0x10
--
- type PtraceRegs struct {
- Regs [32]uint64
- Lo uint64
-@@ -609,70 +190,37 @@ type Sysinfo_t struct {
- Freeswap uint64
- Procs uint16
- Pad uint16
-- Pad_cgo_0 [4]byte
- Totalhigh uint64
- Freehigh uint64
- Unit uint32
-- X_f [0]int8
-- Pad_cgo_1 [4]byte
--}
--
--type Utsname struct {
-- Sysname [65]int8
-- Nodename [65]int8
-- Release [65]int8
-- Version [65]int8
-- Machine [65]int8
-- Domainname [65]int8
-+ _ [0]int8
-+ _ [4]byte
- }
-
- type Ustat_t struct {
-- Tfree int32
-- Pad_cgo_0 [4]byte
-- Tinode uint64
-- Fname [6]int8
-- Fpack [6]int8
-- Pad_cgo_1 [4]byte
-+ Tfree int32
-+ Tinode uint64
-+ Fname [6]int8
-+ Fpack [6]int8
-+ _ [4]byte
- }
-
- type EpollEvent struct {
- Events uint32
-+ _ int32
- Fd int32
- Pad int32
- }
-
- const (
-- AT_FDCWD = -0x64
-- AT_REMOVEDIR = 0x200
-- AT_SYMLINK_FOLLOW = 0x400
-- AT_SYMLINK_NOFOLLOW = 0x100
--)
--
--type PollFd struct {
-- Fd int32
-- Events int16
-- Revents int16
--}
--
--const (
-- POLLIN = 0x1
-- POLLPRI = 0x2
-- POLLOUT = 0x4
- POLLRDHUP = 0x2000
-- POLLERR = 0x8
-- POLLHUP = 0x10
-- POLLNVAL = 0x20
- )
-
- type Sigset_t struct {
-- X__val [16]uint64
-+ Val [16]uint64
- }
-
--const RNDGETENTCNT = 0x40045200
--
--const PERF_IOC_FLAG_GROUP = 0x1
--
--const _SC_PAGESIZE = 0x1e
-+const _C__NSIG = 0x80
-
- type Termios struct {
- Iflag uint32
-@@ -685,20 +233,11 @@ type Termios struct {
- Ospeed uint32
- }
-
--type Winsize struct {
-- Row uint16
-- Col uint16
-- Xpixel uint16
-- Ypixel uint16
--}
--
- type Taskstats struct {
- Version uint16
-- Pad_cgo_0 [2]byte
- Ac_exitcode uint32
- Ac_flag uint8
- Ac_nice uint8
-- Pad_cgo_1 [6]byte
- Cpu_count uint64
- Cpu_delay_total uint64
- Blkio_count uint64
-@@ -710,13 +249,12 @@ type Taskstats struct {
- Ac_comm [32]int8
- Ac_sched uint8
- Ac_pad [3]uint8
-- Pad_cgo_2 [4]byte
-+ _ [4]byte
- Ac_uid uint32
- Ac_gid uint32
- Ac_pid uint32
- Ac_ppid uint32
- Ac_btime uint32
-- Pad_cgo_3 [4]byte
- Ac_etime uint64
- Ac_utime uint64
- Ac_stime uint64
-@@ -740,55 +278,319 @@ type Taskstats struct {
- Cpu_scaled_run_real_total uint64
- Freepages_count uint64
- Freepages_delay_total uint64
-+ Thrashing_count uint64
-+ Thrashing_delay_total uint64
-+ Ac_btime64 uint64
- }
-
-+type cpuMask uint64
-+
- const (
-- TASKSTATS_CMD_UNSPEC = 0x0
-- TASKSTATS_CMD_GET = 0x1
-- TASKSTATS_CMD_NEW = 0x2
-- TASKSTATS_TYPE_UNSPEC = 0x0
-- TASKSTATS_TYPE_PID = 0x1
-- TASKSTATS_TYPE_TGID = 0x2
-- TASKSTATS_TYPE_STATS = 0x3
-- TASKSTATS_TYPE_AGGR_PID = 0x4
-- TASKSTATS_TYPE_AGGR_TGID = 0x5
-- TASKSTATS_TYPE_NULL = 0x6
-- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
-- TASKSTATS_CMD_ATTR_PID = 0x1
-- TASKSTATS_CMD_ATTR_TGID = 0x2
-- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
-- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-+ _NCPUBITS = 0x40
- )
-
--type Genlmsghdr struct {
-- Cmd uint8
-- Version uint8
-- Reserved uint16
-+const (
-+ CBitFieldMaskBit0 = 0x1
-+ CBitFieldMaskBit1 = 0x2
-+ CBitFieldMaskBit2 = 0x4
-+ CBitFieldMaskBit3 = 0x8
-+ CBitFieldMaskBit4 = 0x10
-+ CBitFieldMaskBit5 = 0x20
-+ CBitFieldMaskBit6 = 0x40
-+ CBitFieldMaskBit7 = 0x80
-+ CBitFieldMaskBit8 = 0x100
-+ CBitFieldMaskBit9 = 0x200
-+ CBitFieldMaskBit10 = 0x400
-+ CBitFieldMaskBit11 = 0x800
-+ CBitFieldMaskBit12 = 0x1000
-+ CBitFieldMaskBit13 = 0x2000
-+ CBitFieldMaskBit14 = 0x4000
-+ CBitFieldMaskBit15 = 0x8000
-+ CBitFieldMaskBit16 = 0x10000
-+ CBitFieldMaskBit17 = 0x20000
-+ CBitFieldMaskBit18 = 0x40000
-+ CBitFieldMaskBit19 = 0x80000
-+ CBitFieldMaskBit20 = 0x100000
-+ CBitFieldMaskBit21 = 0x200000
-+ CBitFieldMaskBit22 = 0x400000
-+ CBitFieldMaskBit23 = 0x800000
-+ CBitFieldMaskBit24 = 0x1000000
-+ CBitFieldMaskBit25 = 0x2000000
-+ CBitFieldMaskBit26 = 0x4000000
-+ CBitFieldMaskBit27 = 0x8000000
-+ CBitFieldMaskBit28 = 0x10000000
-+ CBitFieldMaskBit29 = 0x20000000
-+ CBitFieldMaskBit30 = 0x40000000
-+ CBitFieldMaskBit31 = 0x80000000
-+ CBitFieldMaskBit32 = 0x100000000
-+ CBitFieldMaskBit33 = 0x200000000
-+ CBitFieldMaskBit34 = 0x400000000
-+ CBitFieldMaskBit35 = 0x800000000
-+ CBitFieldMaskBit36 = 0x1000000000
-+ CBitFieldMaskBit37 = 0x2000000000
-+ CBitFieldMaskBit38 = 0x4000000000
-+ CBitFieldMaskBit39 = 0x8000000000
-+ CBitFieldMaskBit40 = 0x10000000000
-+ CBitFieldMaskBit41 = 0x20000000000
-+ CBitFieldMaskBit42 = 0x40000000000
-+ CBitFieldMaskBit43 = 0x80000000000
-+ CBitFieldMaskBit44 = 0x100000000000
-+ CBitFieldMaskBit45 = 0x200000000000
-+ CBitFieldMaskBit46 = 0x400000000000
-+ CBitFieldMaskBit47 = 0x800000000000
-+ CBitFieldMaskBit48 = 0x1000000000000
-+ CBitFieldMaskBit49 = 0x2000000000000
-+ CBitFieldMaskBit50 = 0x4000000000000
-+ CBitFieldMaskBit51 = 0x8000000000000
-+ CBitFieldMaskBit52 = 0x10000000000000
-+ CBitFieldMaskBit53 = 0x20000000000000
-+ CBitFieldMaskBit54 = 0x40000000000000
-+ CBitFieldMaskBit55 = 0x80000000000000
-+ CBitFieldMaskBit56 = 0x100000000000000
-+ CBitFieldMaskBit57 = 0x200000000000000
-+ CBitFieldMaskBit58 = 0x400000000000000
-+ CBitFieldMaskBit59 = 0x800000000000000
-+ CBitFieldMaskBit60 = 0x1000000000000000
-+ CBitFieldMaskBit61 = 0x2000000000000000
-+ CBitFieldMaskBit62 = 0x4000000000000000
-+ CBitFieldMaskBit63 = 0x8000000000000000
-+)
-+
-+type SockaddrStorage struct {
-+ Family uint16
-+ _ [118]int8
-+ _ uint64
-+}
-+
-+type HDGeometry struct {
-+ Heads uint8
-+ Sectors uint8
-+ Cylinders uint16
-+ Start uint64
-+}
-+
-+type Statfs_t struct {
-+ Type int64
-+ Bsize int64
-+ Frsize int64
-+ Blocks uint64
-+ Bfree uint64
-+ Files uint64
-+ Ffree uint64
-+ Bavail uint64
-+ Fsid Fsid
-+ Namelen int64
-+ Flags int64
-+ Spare [5]int64
-+}
-+
-+type TpacketHdr struct {
-+ Status uint64
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Usec uint32
-+ _ [4]byte
- }
-
- const (
-- CTRL_CMD_UNSPEC = 0x0
-- CTRL_CMD_NEWFAMILY = 0x1
-- CTRL_CMD_DELFAMILY = 0x2
-- CTRL_CMD_GETFAMILY = 0x3
-- CTRL_CMD_NEWOPS = 0x4
-- CTRL_CMD_DELOPS = 0x5
-- CTRL_CMD_GETOPS = 0x6
-- CTRL_CMD_NEWMCAST_GRP = 0x7
-- CTRL_CMD_DELMCAST_GRP = 0x8
-- CTRL_CMD_GETMCAST_GRP = 0x9
-- CTRL_ATTR_UNSPEC = 0x0
-- CTRL_ATTR_FAMILY_ID = 0x1
-- CTRL_ATTR_FAMILY_NAME = 0x2
-- CTRL_ATTR_VERSION = 0x3
-- CTRL_ATTR_HDRSIZE = 0x4
-- CTRL_ATTR_MAXATTR = 0x5
-- CTRL_ATTR_OPS = 0x6
-- CTRL_ATTR_MCAST_GROUPS = 0x7
-- CTRL_ATTR_OP_UNSPEC = 0x0
-- CTRL_ATTR_OP_ID = 0x1
-- CTRL_ATTR_OP_FLAGS = 0x2
-- CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
-- CTRL_ATTR_MCAST_GRP_NAME = 0x1
-- CTRL_ATTR_MCAST_GRP_ID = 0x2
-+ SizeofTpacketHdr = 0x20
- )
-+
-+type RTCPLLInfo struct {
-+ Ctrl int32
-+ Value int32
-+ Max int32
-+ Min int32
-+ Posmult int32
-+ Negmult int32
-+ Clock int64
-+}
-+
-+type BlkpgPartition struct {
-+ Start int64
-+ Length int64
-+ Pno int32
-+ Devname [64]uint8
-+ Volname [64]uint8
-+ _ [4]byte
-+}
-+
-+const (
-+ BLKPG = 0x20001269
-+)
-+
-+type XDPUmemReg struct {
-+ Addr uint64
-+ Len uint64
-+ Size uint32
-+ Headroom uint32
-+ Flags uint32
-+ _ [4]byte
-+}
-+
-+type CryptoUserAlg struct {
-+ Name [64]int8
-+ Driver_name [64]int8
-+ Module_name [64]int8
-+ Type uint32
-+ Mask uint32
-+ Refcnt uint32
-+ Flags uint32
-+}
-+
-+type CryptoStatAEAD struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatAKCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Verify_cnt uint64
-+ Sign_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCompress struct {
-+ Type [64]int8
-+ Compress_cnt uint64
-+ Compress_tlen uint64
-+ Decompress_cnt uint64
-+ Decompress_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatHash struct {
-+ Type [64]int8
-+ Hash_cnt uint64
-+ Hash_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatKPP struct {
-+ Type [64]int8
-+ Setsecret_cnt uint64
-+ Generate_public_key_cnt uint64
-+ Compute_shared_secret_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatRNG struct {
-+ Type [64]int8
-+ Generate_cnt uint64
-+ Generate_tlen uint64
-+ Seed_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportHash struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Digestsize uint32
-+}
-+
-+type CryptoReportCipher struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+}
-+
-+type CryptoReportBlkCipher struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportAEAD struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Maxauthsize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportComp struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportRNG struct {
-+ Type [64]int8
-+ Seedsize uint32
-+}
-+
-+type CryptoReportAKCipher struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportKPP struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportAcomp struct {
-+ Type [64]int8
-+}
-+
-+type LoopInfo struct {
-+ Number int32
-+ Device uint32
-+ Inode uint64
-+ Rdevice uint32
-+ Offset int32
-+ Encrypt_type int32
-+ Encrypt_key_size int32
-+ Flags int32
-+ Name [64]int8
-+ Encrypt_key [32]uint8
-+ Init [2]uint64
-+ Reserved [4]int8
-+ _ [4]byte
-+}
-+
-+type TIPCSubscr struct {
-+ Seq TIPCServiceRange
-+ Timeout uint32
-+ Filter uint32
-+ Handle [8]int8
-+}
-+
-+type TIPCSIOCLNReq struct {
-+ Peer uint32
-+ Id uint32
-+ Linkname [68]int8
-+}
-+
-+type TIPCSIOCNodeIDReq struct {
-+ Peer uint32
-+ Id [16]int8
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
-index 74c54213..4ed2c8e5 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
-@@ -6,19 +6,12 @@
- package unix
-
- const (
-- sizeofPtr = 0x4
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x4
-- sizeofLongLong = 0x8
-- PathMax = 0x1000
-+ SizeofPtr = 0x4
-+ SizeofLong = 0x4
- )
-
- type (
-- _C_short int16
-- _C_int int32
-- _C_long int32
-- _C_long_long int64
-+ _C_long int32
- )
-
- type Timespec struct {
-@@ -52,7 +45,7 @@ type Timex struct {
- Errcnt int32
- Stbcnt int32
- Tai int32
-- Pad_cgo_0 [44]byte
-+ _ [44]byte
- }
-
- type Time_t int32
-@@ -88,13 +81,6 @@ type Rusage struct {
- Nivcsw int32
- }
-
--type Rlimit struct {
-- Cur uint64
-- Max uint64
--}
--
--type _Gid_t uint32
--
- type Stat_t struct {
- Dev uint32
- Pad1 [3]int32
-@@ -115,141 +101,30 @@ type Stat_t struct {
- Pad5 [14]int32
- }
-
--type Statfs_t struct {
-- Type int32
-- Bsize int32
-- Frsize int32
-- Pad_cgo_0 [4]byte
-- Blocks uint64
-- Bfree uint64
-- Files uint64
-- Ffree uint64
-- Bavail uint64
-- Fsid Fsid
-- Namelen int32
-- Flags int32
-- Spare [5]int32
-- Pad_cgo_1 [4]byte
--}
--
- type Dirent struct {
-- Ino uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Name [256]int8
-- Pad_cgo_0 [5]byte
--}
--
--type Fsid struct {
-- X__val [2]int32
-+ Ino uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Name [256]int8
-+ _ [5]byte
- }
-
- type Flock_t struct {
-- Type int16
-- Whence int16
-- Pad_cgo_0 [4]byte
-- Start int64
-- Len int64
-- Pid int32
-- Pad_cgo_1 [4]byte
--}
--
--type FscryptPolicy struct {
-- Version uint8
-- Contents_encryption_mode uint8
-- Filenames_encryption_mode uint8
-- Flags uint8
-- Master_key_descriptor [8]uint8
--}
--
--type FscryptKey struct {
-- Mode uint32
-- Raw [64]uint8
-- Size uint32
--}
--
--type KeyctlDHParams struct {
-- Private int32
-- Prime int32
-- Base int32
-+ Type int16
-+ Whence int16
-+ _ [4]byte
-+ Start int64
-+ Len int64
-+ Pid int32
-+ _ [4]byte
- }
-
- const (
-- FADV_NORMAL = 0x0
-- FADV_RANDOM = 0x1
-- FADV_SEQUENTIAL = 0x2
-- FADV_WILLNEED = 0x3
-- FADV_DONTNEED = 0x4
-- FADV_NOREUSE = 0x5
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
- )
-
--type RawSockaddrInet4 struct {
-- Family uint16
-- Port uint16
-- Addr [4]byte /* in_addr */
-- Zero [8]uint8
--}
--
--type RawSockaddrInet6 struct {
-- Family uint16
-- Port uint16
-- Flowinfo uint32
-- Addr [16]byte /* in6_addr */
-- Scope_id uint32
--}
--
--type RawSockaddrUnix struct {
-- Family uint16
-- Path [108]int8
--}
--
--type RawSockaddrLinklayer struct {
-- Family uint16
-- Protocol uint16
-- Ifindex int32
-- Hatype uint16
-- Pkttype uint8
-- Halen uint8
-- Addr [8]uint8
--}
--
--type RawSockaddrNetlink struct {
-- Family uint16
-- Pad uint16
-- Pid uint32
-- Groups uint32
--}
--
--type RawSockaddrHCI struct {
-- Family uint16
-- Dev uint16
-- Channel uint16
--}
--
--type RawSockaddrCAN struct {
-- Family uint16
-- Pad_cgo_0 [2]byte
-- Ifindex int32
-- Addr [8]byte
--}
--
--type RawSockaddrALG struct {
-- Family uint16
-- Type [14]uint8
-- Feat uint32
-- Mask uint32
-- Name [64]uint8
--}
--
--type RawSockaddrVM struct {
-- Family uint16
-- Reserved1 uint16
-- Port uint32
-- Cid uint32
-- Zero [4]uint8
--}
--
- type RawSockaddr struct {
- Family uint16
- Data [14]int8
-@@ -260,41 +135,11 @@ type RawSockaddrAny struct {
- Pad [96]int8
- }
-
--type _Socklen uint32
--
--type Linger struct {
-- Onoff int32
-- Linger int32
--}
--
- type Iovec struct {
- Base *byte
- Len uint32
- }
-
--type IPMreq struct {
-- Multiaddr [4]byte /* in_addr */
-- Interface [4]byte /* in_addr */
--}
--
--type IPMreqn struct {
-- Multiaddr [4]byte /* in_addr */
-- Address [4]byte /* in_addr */
-- Ifindex int32
--}
--
--type IPv6Mreq struct {
-- Multiaddr [16]byte /* in6_addr */
-- Interface uint32
--}
--
--type PacketMreq struct {
-- Ifindex int32
-- Type uint16
-- Alen uint16
-- Address [8]uint8
--}
--
- type Msghdr struct {
- Name *byte
- Namelen uint32
-@@ -311,277 +156,16 @@ type Cmsghdr struct {
- Type int32
- }
-
--type Inet4Pktinfo struct {
-- Ifindex int32
-- Spec_dst [4]byte /* in_addr */
-- Addr [4]byte /* in_addr */
--}
--
--type Inet6Pktinfo struct {
-- Addr [16]byte /* in6_addr */
-- Ifindex uint32
--}
--
--type IPv6MTUInfo struct {
-- Addr RawSockaddrInet6
-- Mtu uint32
--}
--
--type ICMPv6Filter struct {
-- Data [8]uint32
--}
--
--type Ucred struct {
-- Pid int32
-- Uid uint32
-- Gid uint32
--}
--
--type TCPInfo struct {
-- State uint8
-- Ca_state uint8
-- Retransmits uint8
-- Probes uint8
-- Backoff uint8
-- Options uint8
-- Pad_cgo_0 [2]byte
-- Rto uint32
-- Ato uint32
-- Snd_mss uint32
-- Rcv_mss uint32
-- Unacked uint32
-- Sacked uint32
-- Lost uint32
-- Retrans uint32
-- Fackets uint32
-- Last_data_sent uint32
-- Last_ack_sent uint32
-- Last_data_recv uint32
-- Last_ack_recv uint32
-- Pmtu uint32
-- Rcv_ssthresh uint32
-- Rtt uint32
-- Rttvar uint32
-- Snd_ssthresh uint32
-- Snd_cwnd uint32
-- Advmss uint32
-- Reordering uint32
-- Rcv_rtt uint32
-- Rcv_space uint32
-- Total_retrans uint32
--}
--
- const (
-- SizeofSockaddrInet4 = 0x10
-- SizeofSockaddrInet6 = 0x1c
-- SizeofSockaddrAny = 0x70
-- SizeofSockaddrUnix = 0x6e
-- SizeofSockaddrLinklayer = 0x14
-- SizeofSockaddrNetlink = 0xc
-- SizeofSockaddrHCI = 0x6
-- SizeofSockaddrCAN = 0x10
-- SizeofSockaddrALG = 0x58
-- SizeofSockaddrVM = 0x10
-- SizeofLinger = 0x8
-- SizeofIovec = 0x8
-- SizeofIPMreq = 0x8
-- SizeofIPMreqn = 0xc
-- SizeofIPv6Mreq = 0x14
-- SizeofPacketMreq = 0x10
-- SizeofMsghdr = 0x1c
-- SizeofCmsghdr = 0xc
-- SizeofInet4Pktinfo = 0xc
-- SizeofInet6Pktinfo = 0x14
-- SizeofIPv6MTUInfo = 0x20
-- SizeofICMPv6Filter = 0x20
-- SizeofUcred = 0xc
-- SizeofTCPInfo = 0x68
-+ SizeofIovec = 0x8
-+ SizeofMsghdr = 0x1c
-+ SizeofCmsghdr = 0xc
- )
-
- const (
-- IFA_UNSPEC = 0x0
-- IFA_ADDRESS = 0x1
-- IFA_LOCAL = 0x2
-- IFA_LABEL = 0x3
-- IFA_BROADCAST = 0x4
-- IFA_ANYCAST = 0x5
-- IFA_CACHEINFO = 0x6
-- IFA_MULTICAST = 0x7
-- IFLA_UNSPEC = 0x0
-- IFLA_ADDRESS = 0x1
-- IFLA_BROADCAST = 0x2
-- IFLA_IFNAME = 0x3
-- IFLA_MTU = 0x4
-- IFLA_LINK = 0x5
-- IFLA_QDISC = 0x6
-- IFLA_STATS = 0x7
-- IFLA_COST = 0x8
-- IFLA_PRIORITY = 0x9
-- IFLA_MASTER = 0xa
-- IFLA_WIRELESS = 0xb
-- IFLA_PROTINFO = 0xc
-- IFLA_TXQLEN = 0xd
-- IFLA_MAP = 0xe
-- IFLA_WEIGHT = 0xf
-- IFLA_OPERSTATE = 0x10
-- IFLA_LINKMODE = 0x11
-- IFLA_LINKINFO = 0x12
-- IFLA_NET_NS_PID = 0x13
-- IFLA_IFALIAS = 0x14
-- IFLA_MAX = 0x2b
-- RT_SCOPE_UNIVERSE = 0x0
-- RT_SCOPE_SITE = 0xc8
-- RT_SCOPE_LINK = 0xfd
-- RT_SCOPE_HOST = 0xfe
-- RT_SCOPE_NOWHERE = 0xff
-- RT_TABLE_UNSPEC = 0x0
-- RT_TABLE_COMPAT = 0xfc
-- RT_TABLE_DEFAULT = 0xfd
-- RT_TABLE_MAIN = 0xfe
-- RT_TABLE_LOCAL = 0xff
-- RT_TABLE_MAX = 0xffffffff
-- RTA_UNSPEC = 0x0
-- RTA_DST = 0x1
-- RTA_SRC = 0x2
-- RTA_IIF = 0x3
-- RTA_OIF = 0x4
-- RTA_GATEWAY = 0x5
-- RTA_PRIORITY = 0x6
-- RTA_PREFSRC = 0x7
-- RTA_METRICS = 0x8
-- RTA_MULTIPATH = 0x9
-- RTA_FLOW = 0xb
-- RTA_CACHEINFO = 0xc
-- RTA_TABLE = 0xf
-- RTN_UNSPEC = 0x0
-- RTN_UNICAST = 0x1
-- RTN_LOCAL = 0x2
-- RTN_BROADCAST = 0x3
-- RTN_ANYCAST = 0x4
-- RTN_MULTICAST = 0x5
-- RTN_BLACKHOLE = 0x6
-- RTN_UNREACHABLE = 0x7
-- RTN_PROHIBIT = 0x8
-- RTN_THROW = 0x9
-- RTN_NAT = 0xa
-- RTN_XRESOLVE = 0xb
-- RTNLGRP_NONE = 0x0
-- RTNLGRP_LINK = 0x1
-- RTNLGRP_NOTIFY = 0x2
-- RTNLGRP_NEIGH = 0x3
-- RTNLGRP_TC = 0x4
-- RTNLGRP_IPV4_IFADDR = 0x5
-- RTNLGRP_IPV4_MROUTE = 0x6
-- RTNLGRP_IPV4_ROUTE = 0x7
-- RTNLGRP_IPV4_RULE = 0x8
-- RTNLGRP_IPV6_IFADDR = 0x9
-- RTNLGRP_IPV6_MROUTE = 0xa
-- RTNLGRP_IPV6_ROUTE = 0xb
-- RTNLGRP_IPV6_IFINFO = 0xc
-- RTNLGRP_IPV6_PREFIX = 0x12
-- RTNLGRP_IPV6_RULE = 0x13
-- RTNLGRP_ND_USEROPT = 0x14
-- SizeofNlMsghdr = 0x10
-- SizeofNlMsgerr = 0x14
-- SizeofRtGenmsg = 0x1
-- SizeofNlAttr = 0x4
-- SizeofRtAttr = 0x4
-- SizeofIfInfomsg = 0x10
-- SizeofIfAddrmsg = 0x8
-- SizeofRtMsg = 0xc
-- SizeofRtNexthop = 0x8
-+ SizeofSockFprog = 0x8
- )
-
--type NlMsghdr struct {
-- Len uint32
-- Type uint16
-- Flags uint16
-- Seq uint32
-- Pid uint32
--}
--
--type NlMsgerr struct {
-- Error int32
-- Msg NlMsghdr
--}
--
--type RtGenmsg struct {
-- Family uint8
--}
--
--type NlAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type RtAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type IfInfomsg struct {
-- Family uint8
-- X__ifi_pad uint8
-- Type uint16
-- Index int32
-- Flags uint32
-- Change uint32
--}
--
--type IfAddrmsg struct {
-- Family uint8
-- Prefixlen uint8
-- Flags uint8
-- Scope uint8
-- Index uint32
--}
--
--type RtMsg struct {
-- Family uint8
-- Dst_len uint8
-- Src_len uint8
-- Tos uint8
-- Table uint8
-- Protocol uint8
-- Scope uint8
-- Type uint8
-- Flags uint32
--}
--
--type RtNexthop struct {
-- Len uint16
-- Flags uint8
-- Hops uint8
-- Ifindex int32
--}
--
--const (
-- SizeofSockFilter = 0x8
-- SizeofSockFprog = 0x8
--)
--
--type SockFilter struct {
-- Code uint16
-- Jt uint8
-- Jf uint8
-- K uint32
--}
--
--type SockFprog struct {
-- Len uint16
-- Pad_cgo_0 [2]byte
-- Filter *SockFilter
--}
--
--type InotifyEvent struct {
-- Wd int32
-- Mask uint32
-- Cookie uint32
-- Len uint32
--}
--
--const SizeofInotifyEvent = 0x10
--
- type PtraceRegs struct {
- Regs [32]uint64
- Lo uint64
-@@ -610,16 +194,7 @@ type Sysinfo_t struct {
- Totalhigh uint32
- Freehigh uint32
- Unit uint32
-- X_f [8]int8
--}
--
--type Utsname struct {
-- Sysname [65]int8
-- Nodename [65]int8
-- Release [65]int8
-- Version [65]int8
-- Machine [65]int8
-- Domainname [65]int8
-+ _ [8]int8
- }
-
- type Ustat_t struct {
-@@ -637,37 +212,14 @@ type EpollEvent struct {
- }
-
- const (
-- AT_FDCWD = -0x64
-- AT_REMOVEDIR = 0x200
-- AT_SYMLINK_FOLLOW = 0x400
-- AT_SYMLINK_NOFOLLOW = 0x100
--)
--
--type PollFd struct {
-- Fd int32
-- Events int16
-- Revents int16
--}
--
--const (
-- POLLIN = 0x1
-- POLLPRI = 0x2
-- POLLOUT = 0x4
- POLLRDHUP = 0x2000
-- POLLERR = 0x8
-- POLLHUP = 0x10
-- POLLNVAL = 0x20
- )
-
- type Sigset_t struct {
-- X__val [32]uint32
-+ Val [32]uint32
- }
-
--const RNDGETENTCNT = 0x40045200
--
--const PERF_IOC_FLAG_GROUP = 0x1
--
--const _SC_PAGESIZE = 0x1e
-+const _C__NSIG = 0x80
-
- type Termios struct {
- Iflag uint32
-@@ -680,20 +232,12 @@ type Termios struct {
- Ospeed uint32
- }
-
--type Winsize struct {
-- Row uint16
-- Col uint16
-- Xpixel uint16
-- Ypixel uint16
--}
--
- type Taskstats struct {
- Version uint16
-- Pad_cgo_0 [2]byte
- Ac_exitcode uint32
- Ac_flag uint8
- Ac_nice uint8
-- Pad_cgo_1 [6]byte
-+ _ [4]byte
- Cpu_count uint64
- Cpu_delay_total uint64
- Blkio_count uint64
-@@ -705,13 +249,13 @@ type Taskstats struct {
- Ac_comm [32]int8
- Ac_sched uint8
- Ac_pad [3]uint8
-- Pad_cgo_2 [4]byte
-+ _ [4]byte
- Ac_uid uint32
- Ac_gid uint32
- Ac_pid uint32
- Ac_ppid uint32
- Ac_btime uint32
-- Pad_cgo_3 [4]byte
-+ _ [4]byte
- Ac_etime uint64
- Ac_utime uint64
- Ac_stime uint64
-@@ -735,55 +279,319 @@ type Taskstats struct {
- Cpu_scaled_run_real_total uint64
- Freepages_count uint64
- Freepages_delay_total uint64
-+ Thrashing_count uint64
-+ Thrashing_delay_total uint64
-+ Ac_btime64 uint64
- }
-
-+type cpuMask uint32
-+
-+const (
-+ _NCPUBITS = 0x20
-+)
-+
- const (
-- TASKSTATS_CMD_UNSPEC = 0x0
-- TASKSTATS_CMD_GET = 0x1
-- TASKSTATS_CMD_NEW = 0x2
-- TASKSTATS_TYPE_UNSPEC = 0x0
-- TASKSTATS_TYPE_PID = 0x1
-- TASKSTATS_TYPE_TGID = 0x2
-- TASKSTATS_TYPE_STATS = 0x3
-- TASKSTATS_TYPE_AGGR_PID = 0x4
-- TASKSTATS_TYPE_AGGR_TGID = 0x5
-- TASKSTATS_TYPE_NULL = 0x6
-- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
-- TASKSTATS_CMD_ATTR_PID = 0x1
-- TASKSTATS_CMD_ATTR_TGID = 0x2
-- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
-- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-+ CBitFieldMaskBit0 = 0x1
-+ CBitFieldMaskBit1 = 0x2
-+ CBitFieldMaskBit2 = 0x4
-+ CBitFieldMaskBit3 = 0x8
-+ CBitFieldMaskBit4 = 0x10
-+ CBitFieldMaskBit5 = 0x20
-+ CBitFieldMaskBit6 = 0x40
-+ CBitFieldMaskBit7 = 0x80
-+ CBitFieldMaskBit8 = 0x100
-+ CBitFieldMaskBit9 = 0x200
-+ CBitFieldMaskBit10 = 0x400
-+ CBitFieldMaskBit11 = 0x800
-+ CBitFieldMaskBit12 = 0x1000
-+ CBitFieldMaskBit13 = 0x2000
-+ CBitFieldMaskBit14 = 0x4000
-+ CBitFieldMaskBit15 = 0x8000
-+ CBitFieldMaskBit16 = 0x10000
-+ CBitFieldMaskBit17 = 0x20000
-+ CBitFieldMaskBit18 = 0x40000
-+ CBitFieldMaskBit19 = 0x80000
-+ CBitFieldMaskBit20 = 0x100000
-+ CBitFieldMaskBit21 = 0x200000
-+ CBitFieldMaskBit22 = 0x400000
-+ CBitFieldMaskBit23 = 0x800000
-+ CBitFieldMaskBit24 = 0x1000000
-+ CBitFieldMaskBit25 = 0x2000000
-+ CBitFieldMaskBit26 = 0x4000000
-+ CBitFieldMaskBit27 = 0x8000000
-+ CBitFieldMaskBit28 = 0x10000000
-+ CBitFieldMaskBit29 = 0x20000000
-+ CBitFieldMaskBit30 = 0x40000000
-+ CBitFieldMaskBit31 = 0x80000000
-+ CBitFieldMaskBit32 = 0x100000000
-+ CBitFieldMaskBit33 = 0x200000000
-+ CBitFieldMaskBit34 = 0x400000000
-+ CBitFieldMaskBit35 = 0x800000000
-+ CBitFieldMaskBit36 = 0x1000000000
-+ CBitFieldMaskBit37 = 0x2000000000
-+ CBitFieldMaskBit38 = 0x4000000000
-+ CBitFieldMaskBit39 = 0x8000000000
-+ CBitFieldMaskBit40 = 0x10000000000
-+ CBitFieldMaskBit41 = 0x20000000000
-+ CBitFieldMaskBit42 = 0x40000000000
-+ CBitFieldMaskBit43 = 0x80000000000
-+ CBitFieldMaskBit44 = 0x100000000000
-+ CBitFieldMaskBit45 = 0x200000000000
-+ CBitFieldMaskBit46 = 0x400000000000
-+ CBitFieldMaskBit47 = 0x800000000000
-+ CBitFieldMaskBit48 = 0x1000000000000
-+ CBitFieldMaskBit49 = 0x2000000000000
-+ CBitFieldMaskBit50 = 0x4000000000000
-+ CBitFieldMaskBit51 = 0x8000000000000
-+ CBitFieldMaskBit52 = 0x10000000000000
-+ CBitFieldMaskBit53 = 0x20000000000000
-+ CBitFieldMaskBit54 = 0x40000000000000
-+ CBitFieldMaskBit55 = 0x80000000000000
-+ CBitFieldMaskBit56 = 0x100000000000000
-+ CBitFieldMaskBit57 = 0x200000000000000
-+ CBitFieldMaskBit58 = 0x400000000000000
-+ CBitFieldMaskBit59 = 0x800000000000000
-+ CBitFieldMaskBit60 = 0x1000000000000000
-+ CBitFieldMaskBit61 = 0x2000000000000000
-+ CBitFieldMaskBit62 = 0x4000000000000000
-+ CBitFieldMaskBit63 = 0x8000000000000000
- )
-
--type Genlmsghdr struct {
-- Cmd uint8
-- Version uint8
-- Reserved uint16
-+type SockaddrStorage struct {
-+ Family uint16
-+ _ [122]int8
-+ _ uint32
-+}
-+
-+type HDGeometry struct {
-+ Heads uint8
-+ Sectors uint8
-+ Cylinders uint16
-+ Start uint32
-+}
-+
-+type Statfs_t struct {
-+ Type int32
-+ Bsize int32
-+ Frsize int32
-+ _ [4]byte
-+ Blocks uint64
-+ Bfree uint64
-+ Files uint64
-+ Ffree uint64
-+ Bavail uint64
-+ Fsid Fsid
-+ Namelen int32
-+ Flags int32
-+ Spare [5]int32
-+ _ [4]byte
-+}
-+
-+type TpacketHdr struct {
-+ Status uint32
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Usec uint32
-+}
-+
-+const (
-+ SizeofTpacketHdr = 0x18
-+)
-+
-+type RTCPLLInfo struct {
-+ Ctrl int32
-+ Value int32
-+ Max int32
-+ Min int32
-+ Posmult int32
-+ Negmult int32
-+ Clock int32
-+}
-+
-+type BlkpgPartition struct {
-+ Start int64
-+ Length int64
-+ Pno int32
-+ Devname [64]uint8
-+ Volname [64]uint8
-+ _ [4]byte
- }
-
- const (
-- CTRL_CMD_UNSPEC = 0x0
-- CTRL_CMD_NEWFAMILY = 0x1
-- CTRL_CMD_DELFAMILY = 0x2
-- CTRL_CMD_GETFAMILY = 0x3
-- CTRL_CMD_NEWOPS = 0x4
-- CTRL_CMD_DELOPS = 0x5
-- CTRL_CMD_GETOPS = 0x6
-- CTRL_CMD_NEWMCAST_GRP = 0x7
-- CTRL_CMD_DELMCAST_GRP = 0x8
-- CTRL_CMD_GETMCAST_GRP = 0x9
-- CTRL_ATTR_UNSPEC = 0x0
-- CTRL_ATTR_FAMILY_ID = 0x1
-- CTRL_ATTR_FAMILY_NAME = 0x2
-- CTRL_ATTR_VERSION = 0x3
-- CTRL_ATTR_HDRSIZE = 0x4
-- CTRL_ATTR_MAXATTR = 0x5
-- CTRL_ATTR_OPS = 0x6
-- CTRL_ATTR_MCAST_GROUPS = 0x7
-- CTRL_ATTR_OP_UNSPEC = 0x0
-- CTRL_ATTR_OP_ID = 0x1
-- CTRL_ATTR_OP_FLAGS = 0x2
-- CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
-- CTRL_ATTR_MCAST_GRP_NAME = 0x1
-- CTRL_ATTR_MCAST_GRP_ID = 0x2
-+ BLKPG = 0x20001269
- )
-+
-+type XDPUmemReg struct {
-+ Addr uint64
-+ Len uint64
-+ Size uint32
-+ Headroom uint32
-+ Flags uint32
-+ _ [4]byte
-+}
-+
-+type CryptoUserAlg struct {
-+ Name [64]int8
-+ Driver_name [64]int8
-+ Module_name [64]int8
-+ Type uint32
-+ Mask uint32
-+ Refcnt uint32
-+ Flags uint32
-+}
-+
-+type CryptoStatAEAD struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatAKCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Verify_cnt uint64
-+ Sign_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCompress struct {
-+ Type [64]int8
-+ Compress_cnt uint64
-+ Compress_tlen uint64
-+ Decompress_cnt uint64
-+ Decompress_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatHash struct {
-+ Type [64]int8
-+ Hash_cnt uint64
-+ Hash_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatKPP struct {
-+ Type [64]int8
-+ Setsecret_cnt uint64
-+ Generate_public_key_cnt uint64
-+ Compute_shared_secret_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatRNG struct {
-+ Type [64]int8
-+ Generate_cnt uint64
-+ Generate_tlen uint64
-+ Seed_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportHash struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Digestsize uint32
-+}
-+
-+type CryptoReportCipher struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+}
-+
-+type CryptoReportBlkCipher struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportAEAD struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Maxauthsize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportComp struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportRNG struct {
-+ Type [64]int8
-+ Seedsize uint32
-+}
-+
-+type CryptoReportAKCipher struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportKPP struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportAcomp struct {
-+ Type [64]int8
-+}
-+
-+type LoopInfo struct {
-+ Number int32
-+ Device uint32
-+ Inode uint32
-+ Rdevice uint32
-+ Offset int32
-+ Encrypt_type int32
-+ Encrypt_key_size int32
-+ Flags int32
-+ Name [64]int8
-+ Encrypt_key [32]uint8
-+ Init [2]uint32
-+ Reserved [4]int8
-+}
-+
-+type TIPCSubscr struct {
-+ Seq TIPCServiceRange
-+ Timeout uint32
-+ Filter uint32
-+ Handle [8]int8
-+}
-+
-+type TIPCSIOCLNReq struct {
-+ Peer uint32
-+ Id uint32
-+ Linkname [68]int8
-+}
-+
-+type TIPCSIOCNodeIDReq struct {
-+ Peer uint32
-+ Id [16]int8
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
-index 2b0b18e9..74151909 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
-@@ -6,19 +6,12 @@
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-- PathMax = 0x1000
-+ SizeofPtr = 0x8
-+ SizeofLong = 0x8
- )
-
- type (
-- _C_short int16
-- _C_int int32
-- _C_long int64
-- _C_long_long int64
-+ _C_long int64
- )
-
- type Timespec struct {
-@@ -33,13 +26,11 @@ type Timeval struct {
-
- type Timex struct {
- Modes uint32
-- Pad_cgo_0 [4]byte
- Offset int64
- Freq int64
- Maxerror int64
- Esterror int64
- Status int32
-- Pad_cgo_1 [4]byte
- Constant int64
- Precision int64
- Tolerance int64
-@@ -48,14 +39,13 @@ type Timex struct {
- Ppsfreq int64
- Jitter int64
- Shift int32
-- Pad_cgo_2 [4]byte
- Stabil int64
- Jitcnt int64
- Calcnt int64
- Errcnt int64
- Stbcnt int64
- Tai int32
-- Pad_cgo_3 [44]byte
-+ _ [44]byte
- }
-
- type Time_t int64
-@@ -91,13 +81,6 @@ type Rusage struct {
- Nivcsw int64
- }
-
--type Rlimit struct {
-- Cur uint64
-- Max uint64
--}
--
--type _Gid_t uint32
--
- type Stat_t struct {
- Dev uint64
- Ino uint64
-@@ -105,7 +88,7 @@ type Stat_t struct {
- Mode uint32
- Uid uint32
- Gid uint32
-- X__pad2 int32
-+ _ int32
- Rdev uint64
- Size int64
- Blksize int64
-@@ -118,139 +101,29 @@ type Stat_t struct {
- _ uint64
- }
-
--type Statfs_t struct {
-- Type int64
-- Bsize int64
-- Blocks uint64
-- Bfree uint64
-- Bavail uint64
-- Files uint64
-- Ffree uint64
-- Fsid Fsid
-- Namelen int64
-- Frsize int64
-- Flags int64
-- Spare [4]int64
--}
--
- type Dirent struct {
-- Ino uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Name [256]uint8
-- Pad_cgo_0 [5]byte
--}
--
--type Fsid struct {
-- X__val [2]int32
-+ Ino uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Name [256]uint8
-+ _ [5]byte
- }
-
- type Flock_t struct {
-- Type int16
-- Whence int16
-- Pad_cgo_0 [4]byte
-- Start int64
-- Len int64
-- Pid int32
-- Pad_cgo_1 [4]byte
--}
--
--type FscryptPolicy struct {
-- Version uint8
-- Contents_encryption_mode uint8
-- Filenames_encryption_mode uint8
-- Flags uint8
-- Master_key_descriptor [8]uint8
--}
--
--type FscryptKey struct {
-- Mode uint32
-- Raw [64]uint8
-- Size uint32
--}
--
--type KeyctlDHParams struct {
-- Private int32
-- Prime int32
-- Base int32
-+ Type int16
-+ Whence int16
-+ Start int64
-+ Len int64
-+ Pid int32
-+ _ [4]byte
- }
-
- const (
-- FADV_NORMAL = 0x0
-- FADV_RANDOM = 0x1
-- FADV_SEQUENTIAL = 0x2
-- FADV_WILLNEED = 0x3
-- FADV_DONTNEED = 0x4
-- FADV_NOREUSE = 0x5
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
- )
-
--type RawSockaddrInet4 struct {
-- Family uint16
-- Port uint16
-- Addr [4]byte /* in_addr */
-- Zero [8]uint8
--}
--
--type RawSockaddrInet6 struct {
-- Family uint16
-- Port uint16
-- Flowinfo uint32
-- Addr [16]byte /* in6_addr */
-- Scope_id uint32
--}
--
--type RawSockaddrUnix struct {
-- Family uint16
-- Path [108]int8
--}
--
--type RawSockaddrLinklayer struct {
-- Family uint16
-- Protocol uint16
-- Ifindex int32
-- Hatype uint16
-- Pkttype uint8
-- Halen uint8
-- Addr [8]uint8
--}
--
--type RawSockaddrNetlink struct {
-- Family uint16
-- Pad uint16
-- Pid uint32
-- Groups uint32
--}
--
--type RawSockaddrHCI struct {
-- Family uint16
-- Dev uint16
-- Channel uint16
--}
--
--type RawSockaddrCAN struct {
-- Family uint16
-- Pad_cgo_0 [2]byte
-- Ifindex int32
-- Addr [8]byte
--}
--
--type RawSockaddrALG struct {
-- Family uint16
-- Type [14]uint8
-- Feat uint32
-- Mask uint32
-- Name [64]uint8
--}
--
--type RawSockaddrVM struct {
-- Family uint16
-- Reserved1 uint16
-- Port uint32
-- Cid uint32
-- Zero [4]uint8
--}
--
- type RawSockaddr struct {
- Family uint16
- Data [14]uint8
-@@ -261,51 +134,20 @@ type RawSockaddrAny struct {
- Pad [96]uint8
- }
-
--type _Socklen uint32
--
--type Linger struct {
-- Onoff int32
-- Linger int32
--}
--
- type Iovec struct {
- Base *byte
- Len uint64
- }
-
--type IPMreq struct {
-- Multiaddr [4]byte /* in_addr */
-- Interface [4]byte /* in_addr */
--}
--
--type IPMreqn struct {
-- Multiaddr [4]byte /* in_addr */
-- Address [4]byte /* in_addr */
-- Ifindex int32
--}
--
--type IPv6Mreq struct {
-- Multiaddr [16]byte /* in6_addr */
-- Interface uint32
--}
--
--type PacketMreq struct {
-- Ifindex int32
-- Type uint16
-- Alen uint16
-- Address [8]uint8
--}
--
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
- Iov *Iovec
- Iovlen uint64
- Control *byte
- Controllen uint64
- Flags int32
-- Pad_cgo_1 [4]byte
-+ _ [4]byte
- }
-
- type Cmsghdr struct {
-@@ -314,277 +156,16 @@ type Cmsghdr struct {
- Type int32
- }
-
--type Inet4Pktinfo struct {
-- Ifindex int32
-- Spec_dst [4]byte /* in_addr */
-- Addr [4]byte /* in_addr */
--}
--
--type Inet6Pktinfo struct {
-- Addr [16]byte /* in6_addr */
-- Ifindex uint32
--}
--
--type IPv6MTUInfo struct {
-- Addr RawSockaddrInet6
-- Mtu uint32
--}
--
--type ICMPv6Filter struct {
-- Data [8]uint32
--}
--
--type Ucred struct {
-- Pid int32
-- Uid uint32
-- Gid uint32
--}
--
--type TCPInfo struct {
-- State uint8
-- Ca_state uint8
-- Retransmits uint8
-- Probes uint8
-- Backoff uint8
-- Options uint8
-- Pad_cgo_0 [2]byte
-- Rto uint32
-- Ato uint32
-- Snd_mss uint32
-- Rcv_mss uint32
-- Unacked uint32
-- Sacked uint32
-- Lost uint32
-- Retrans uint32
-- Fackets uint32
-- Last_data_sent uint32
-- Last_ack_sent uint32
-- Last_data_recv uint32
-- Last_ack_recv uint32
-- Pmtu uint32
-- Rcv_ssthresh uint32
-- Rtt uint32
-- Rttvar uint32
-- Snd_ssthresh uint32
-- Snd_cwnd uint32
-- Advmss uint32
-- Reordering uint32
-- Rcv_rtt uint32
-- Rcv_space uint32
-- Total_retrans uint32
--}
--
- const (
-- SizeofSockaddrInet4 = 0x10
-- SizeofSockaddrInet6 = 0x1c
-- SizeofSockaddrAny = 0x70
-- SizeofSockaddrUnix = 0x6e
-- SizeofSockaddrLinklayer = 0x14
-- SizeofSockaddrNetlink = 0xc
-- SizeofSockaddrHCI = 0x6
-- SizeofSockaddrCAN = 0x10
-- SizeofSockaddrALG = 0x58
-- SizeofSockaddrVM = 0x10
-- SizeofLinger = 0x8
-- SizeofIovec = 0x10
-- SizeofIPMreq = 0x8
-- SizeofIPMreqn = 0xc
-- SizeofIPv6Mreq = 0x14
-- SizeofPacketMreq = 0x10
-- SizeofMsghdr = 0x38
-- SizeofCmsghdr = 0x10
-- SizeofInet4Pktinfo = 0xc
-- SizeofInet6Pktinfo = 0x14
-- SizeofIPv6MTUInfo = 0x20
-- SizeofICMPv6Filter = 0x20
-- SizeofUcred = 0xc
-- SizeofTCPInfo = 0x68
-+ SizeofIovec = 0x10
-+ SizeofMsghdr = 0x38
-+ SizeofCmsghdr = 0x10
- )
-
- const (
-- IFA_UNSPEC = 0x0
-- IFA_ADDRESS = 0x1
-- IFA_LOCAL = 0x2
-- IFA_LABEL = 0x3
-- IFA_BROADCAST = 0x4
-- IFA_ANYCAST = 0x5
-- IFA_CACHEINFO = 0x6
-- IFA_MULTICAST = 0x7
-- IFLA_UNSPEC = 0x0
-- IFLA_ADDRESS = 0x1
-- IFLA_BROADCAST = 0x2
-- IFLA_IFNAME = 0x3
-- IFLA_MTU = 0x4
-- IFLA_LINK = 0x5
-- IFLA_QDISC = 0x6
-- IFLA_STATS = 0x7
-- IFLA_COST = 0x8
-- IFLA_PRIORITY = 0x9
-- IFLA_MASTER = 0xa
-- IFLA_WIRELESS = 0xb
-- IFLA_PROTINFO = 0xc
-- IFLA_TXQLEN = 0xd
-- IFLA_MAP = 0xe
-- IFLA_WEIGHT = 0xf
-- IFLA_OPERSTATE = 0x10
-- IFLA_LINKMODE = 0x11
-- IFLA_LINKINFO = 0x12
-- IFLA_NET_NS_PID = 0x13
-- IFLA_IFALIAS = 0x14
-- IFLA_MAX = 0x2b
-- RT_SCOPE_UNIVERSE = 0x0
-- RT_SCOPE_SITE = 0xc8
-- RT_SCOPE_LINK = 0xfd
-- RT_SCOPE_HOST = 0xfe
-- RT_SCOPE_NOWHERE = 0xff
-- RT_TABLE_UNSPEC = 0x0
-- RT_TABLE_COMPAT = 0xfc
-- RT_TABLE_DEFAULT = 0xfd
-- RT_TABLE_MAIN = 0xfe
-- RT_TABLE_LOCAL = 0xff
-- RT_TABLE_MAX = 0xffffffff
-- RTA_UNSPEC = 0x0
-- RTA_DST = 0x1
-- RTA_SRC = 0x2
-- RTA_IIF = 0x3
-- RTA_OIF = 0x4
-- RTA_GATEWAY = 0x5
-- RTA_PRIORITY = 0x6
-- RTA_PREFSRC = 0x7
-- RTA_METRICS = 0x8
-- RTA_MULTIPATH = 0x9
-- RTA_FLOW = 0xb
-- RTA_CACHEINFO = 0xc
-- RTA_TABLE = 0xf
-- RTN_UNSPEC = 0x0
-- RTN_UNICAST = 0x1
-- RTN_LOCAL = 0x2
-- RTN_BROADCAST = 0x3
-- RTN_ANYCAST = 0x4
-- RTN_MULTICAST = 0x5
-- RTN_BLACKHOLE = 0x6
-- RTN_UNREACHABLE = 0x7
-- RTN_PROHIBIT = 0x8
-- RTN_THROW = 0x9
-- RTN_NAT = 0xa
-- RTN_XRESOLVE = 0xb
-- RTNLGRP_NONE = 0x0
-- RTNLGRP_LINK = 0x1
-- RTNLGRP_NOTIFY = 0x2
-- RTNLGRP_NEIGH = 0x3
-- RTNLGRP_TC = 0x4
-- RTNLGRP_IPV4_IFADDR = 0x5
-- RTNLGRP_IPV4_MROUTE = 0x6
-- RTNLGRP_IPV4_ROUTE = 0x7
-- RTNLGRP_IPV4_RULE = 0x8
-- RTNLGRP_IPV6_IFADDR = 0x9
-- RTNLGRP_IPV6_MROUTE = 0xa
-- RTNLGRP_IPV6_ROUTE = 0xb
-- RTNLGRP_IPV6_IFINFO = 0xc
-- RTNLGRP_IPV6_PREFIX = 0x12
-- RTNLGRP_IPV6_RULE = 0x13
-- RTNLGRP_ND_USEROPT = 0x14
-- SizeofNlMsghdr = 0x10
-- SizeofNlMsgerr = 0x14
-- SizeofRtGenmsg = 0x1
-- SizeofNlAttr = 0x4
-- SizeofRtAttr = 0x4
-- SizeofIfInfomsg = 0x10
-- SizeofIfAddrmsg = 0x8
-- SizeofRtMsg = 0xc
-- SizeofRtNexthop = 0x8
-+ SizeofSockFprog = 0x10
- )
-
--type NlMsghdr struct {
-- Len uint32
-- Type uint16
-- Flags uint16
-- Seq uint32
-- Pid uint32
--}
--
--type NlMsgerr struct {
-- Error int32
-- Msg NlMsghdr
--}
--
--type RtGenmsg struct {
-- Family uint8
--}
--
--type NlAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type RtAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type IfInfomsg struct {
-- Family uint8
-- X__ifi_pad uint8
-- Type uint16
-- Index int32
-- Flags uint32
-- Change uint32
--}
--
--type IfAddrmsg struct {
-- Family uint8
-- Prefixlen uint8
-- Flags uint8
-- Scope uint8
-- Index uint32
--}
--
--type RtMsg struct {
-- Family uint8
-- Dst_len uint8
-- Src_len uint8
-- Tos uint8
-- Table uint8
-- Protocol uint8
-- Scope uint8
-- Type uint8
-- Flags uint32
--}
--
--type RtNexthop struct {
-- Len uint16
-- Flags uint8
-- Hops uint8
-- Ifindex int32
--}
--
--const (
-- SizeofSockFilter = 0x8
-- SizeofSockFprog = 0x10
--)
--
--type SockFilter struct {
-- Code uint16
-- Jt uint8
-- Jf uint8
-- K uint32
--}
--
--type SockFprog struct {
-- Len uint16
-- Pad_cgo_0 [6]byte
-- Filter *SockFilter
--}
--
--type InotifyEvent struct {
-- Wd int32
-- Mask uint32
-- Cookie uint32
-- Len uint32
--}
--
--const SizeofInotifyEvent = 0x10
--
- type PtraceRegs struct {
- Gpr [32]uint64
- Nip uint64
-@@ -616,71 +197,37 @@ type Sysinfo_t struct {
- Freeswap uint64
- Procs uint16
- Pad uint16
-- Pad_cgo_0 [4]byte
- Totalhigh uint64
- Freehigh uint64
- Unit uint32
-- X_f [0]uint8
-- Pad_cgo_1 [4]byte
--}
--
--type Utsname struct {
-- Sysname [65]uint8
-- Nodename [65]uint8
-- Release [65]uint8
-- Version [65]uint8
-- Machine [65]uint8
-- Domainname [65]uint8
-+ _ [0]uint8
-+ _ [4]byte
- }
-
- type Ustat_t struct {
-- Tfree int32
-- Pad_cgo_0 [4]byte
-- Tinode uint64
-- Fname [6]uint8
-- Fpack [6]uint8
-- Pad_cgo_1 [4]byte
-+ Tfree int32
-+ Tinode uint64
-+ Fname [6]uint8
-+ Fpack [6]uint8
-+ _ [4]byte
- }
-
- type EpollEvent struct {
-- Events uint32
-- X_padFd int32
-- Fd int32
-- Pad int32
--}
--
--const (
-- AT_FDCWD = -0x64
-- AT_REMOVEDIR = 0x200
-- AT_SYMLINK_FOLLOW = 0x400
-- AT_SYMLINK_NOFOLLOW = 0x100
--)
--
--type PollFd struct {
-- Fd int32
-- Events int16
-- Revents int16
-+ Events uint32
-+ _ int32
-+ Fd int32
-+ Pad int32
- }
-
- const (
-- POLLIN = 0x1
-- POLLPRI = 0x2
-- POLLOUT = 0x4
- POLLRDHUP = 0x2000
-- POLLERR = 0x8
-- POLLHUP = 0x10
-- POLLNVAL = 0x20
- )
-
- type Sigset_t struct {
-- X__val [16]uint64
-+ Val [16]uint64
- }
-
--const RNDGETENTCNT = 0x40045200
--
--const PERF_IOC_FLAG_GROUP = 0x1
--
--const _SC_PAGESIZE = 0x1e
-+const _C__NSIG = 0x41
-
- type Termios struct {
- Iflag uint32
-@@ -693,20 +240,11 @@ type Termios struct {
- Ospeed uint32
- }
-
--type Winsize struct {
-- Row uint16
-- Col uint16
-- Xpixel uint16
-- Ypixel uint16
--}
--
- type Taskstats struct {
- Version uint16
-- Pad_cgo_0 [2]byte
- Ac_exitcode uint32
- Ac_flag uint8
- Ac_nice uint8
-- Pad_cgo_1 [6]byte
- Cpu_count uint64
- Cpu_delay_total uint64
- Blkio_count uint64
-@@ -718,13 +256,12 @@ type Taskstats struct {
- Ac_comm [32]uint8
- Ac_sched uint8
- Ac_pad [3]uint8
-- Pad_cgo_2 [4]byte
-+ _ [4]byte
- Ac_uid uint32
- Ac_gid uint32
- Ac_pid uint32
- Ac_ppid uint32
- Ac_btime uint32
-- Pad_cgo_3 [4]byte
- Ac_etime uint64
- Ac_utime uint64
- Ac_stime uint64
-@@ -748,55 +285,319 @@ type Taskstats struct {
- Cpu_scaled_run_real_total uint64
- Freepages_count uint64
- Freepages_delay_total uint64
-+ Thrashing_count uint64
-+ Thrashing_delay_total uint64
-+ Ac_btime64 uint64
- }
-
-+type cpuMask uint64
-+
- const (
-- TASKSTATS_CMD_UNSPEC = 0x0
-- TASKSTATS_CMD_GET = 0x1
-- TASKSTATS_CMD_NEW = 0x2
-- TASKSTATS_TYPE_UNSPEC = 0x0
-- TASKSTATS_TYPE_PID = 0x1
-- TASKSTATS_TYPE_TGID = 0x2
-- TASKSTATS_TYPE_STATS = 0x3
-- TASKSTATS_TYPE_AGGR_PID = 0x4
-- TASKSTATS_TYPE_AGGR_TGID = 0x5
-- TASKSTATS_TYPE_NULL = 0x6
-- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
-- TASKSTATS_CMD_ATTR_PID = 0x1
-- TASKSTATS_CMD_ATTR_TGID = 0x2
-- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
-- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-+ _NCPUBITS = 0x40
- )
-
--type Genlmsghdr struct {
-- Cmd uint8
-- Version uint8
-- Reserved uint16
-+const (
-+ CBitFieldMaskBit0 = 0x8000000000000000
-+ CBitFieldMaskBit1 = 0x4000000000000000
-+ CBitFieldMaskBit2 = 0x2000000000000000
-+ CBitFieldMaskBit3 = 0x1000000000000000
-+ CBitFieldMaskBit4 = 0x800000000000000
-+ CBitFieldMaskBit5 = 0x400000000000000
-+ CBitFieldMaskBit6 = 0x200000000000000
-+ CBitFieldMaskBit7 = 0x100000000000000
-+ CBitFieldMaskBit8 = 0x80000000000000
-+ CBitFieldMaskBit9 = 0x40000000000000
-+ CBitFieldMaskBit10 = 0x20000000000000
-+ CBitFieldMaskBit11 = 0x10000000000000
-+ CBitFieldMaskBit12 = 0x8000000000000
-+ CBitFieldMaskBit13 = 0x4000000000000
-+ CBitFieldMaskBit14 = 0x2000000000000
-+ CBitFieldMaskBit15 = 0x1000000000000
-+ CBitFieldMaskBit16 = 0x800000000000
-+ CBitFieldMaskBit17 = 0x400000000000
-+ CBitFieldMaskBit18 = 0x200000000000
-+ CBitFieldMaskBit19 = 0x100000000000
-+ CBitFieldMaskBit20 = 0x80000000000
-+ CBitFieldMaskBit21 = 0x40000000000
-+ CBitFieldMaskBit22 = 0x20000000000
-+ CBitFieldMaskBit23 = 0x10000000000
-+ CBitFieldMaskBit24 = 0x8000000000
-+ CBitFieldMaskBit25 = 0x4000000000
-+ CBitFieldMaskBit26 = 0x2000000000
-+ CBitFieldMaskBit27 = 0x1000000000
-+ CBitFieldMaskBit28 = 0x800000000
-+ CBitFieldMaskBit29 = 0x400000000
-+ CBitFieldMaskBit30 = 0x200000000
-+ CBitFieldMaskBit31 = 0x100000000
-+ CBitFieldMaskBit32 = 0x80000000
-+ CBitFieldMaskBit33 = 0x40000000
-+ CBitFieldMaskBit34 = 0x20000000
-+ CBitFieldMaskBit35 = 0x10000000
-+ CBitFieldMaskBit36 = 0x8000000
-+ CBitFieldMaskBit37 = 0x4000000
-+ CBitFieldMaskBit38 = 0x2000000
-+ CBitFieldMaskBit39 = 0x1000000
-+ CBitFieldMaskBit40 = 0x800000
-+ CBitFieldMaskBit41 = 0x400000
-+ CBitFieldMaskBit42 = 0x200000
-+ CBitFieldMaskBit43 = 0x100000
-+ CBitFieldMaskBit44 = 0x80000
-+ CBitFieldMaskBit45 = 0x40000
-+ CBitFieldMaskBit46 = 0x20000
-+ CBitFieldMaskBit47 = 0x10000
-+ CBitFieldMaskBit48 = 0x8000
-+ CBitFieldMaskBit49 = 0x4000
-+ CBitFieldMaskBit50 = 0x2000
-+ CBitFieldMaskBit51 = 0x1000
-+ CBitFieldMaskBit52 = 0x800
-+ CBitFieldMaskBit53 = 0x400
-+ CBitFieldMaskBit54 = 0x200
-+ CBitFieldMaskBit55 = 0x100
-+ CBitFieldMaskBit56 = 0x80
-+ CBitFieldMaskBit57 = 0x40
-+ CBitFieldMaskBit58 = 0x20
-+ CBitFieldMaskBit59 = 0x10
-+ CBitFieldMaskBit60 = 0x8
-+ CBitFieldMaskBit61 = 0x4
-+ CBitFieldMaskBit62 = 0x2
-+ CBitFieldMaskBit63 = 0x1
-+)
-+
-+type SockaddrStorage struct {
-+ Family uint16
-+ _ [118]uint8
-+ _ uint64
-+}
-+
-+type HDGeometry struct {
-+ Heads uint8
-+ Sectors uint8
-+ Cylinders uint16
-+ Start uint64
-+}
-+
-+type Statfs_t struct {
-+ Type int64
-+ Bsize int64
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Files uint64
-+ Ffree uint64
-+ Fsid Fsid
-+ Namelen int64
-+ Frsize int64
-+ Flags int64
-+ Spare [4]int64
-+}
-+
-+type TpacketHdr struct {
-+ Status uint64
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Usec uint32
-+ _ [4]byte
- }
-
- const (
-- CTRL_CMD_UNSPEC = 0x0
-- CTRL_CMD_NEWFAMILY = 0x1
-- CTRL_CMD_DELFAMILY = 0x2
-- CTRL_CMD_GETFAMILY = 0x3
-- CTRL_CMD_NEWOPS = 0x4
-- CTRL_CMD_DELOPS = 0x5
-- CTRL_CMD_GETOPS = 0x6
-- CTRL_CMD_NEWMCAST_GRP = 0x7
-- CTRL_CMD_DELMCAST_GRP = 0x8
-- CTRL_CMD_GETMCAST_GRP = 0x9
-- CTRL_ATTR_UNSPEC = 0x0
-- CTRL_ATTR_FAMILY_ID = 0x1
-- CTRL_ATTR_FAMILY_NAME = 0x2
-- CTRL_ATTR_VERSION = 0x3
-- CTRL_ATTR_HDRSIZE = 0x4
-- CTRL_ATTR_MAXATTR = 0x5
-- CTRL_ATTR_OPS = 0x6
-- CTRL_ATTR_MCAST_GROUPS = 0x7
-- CTRL_ATTR_OP_UNSPEC = 0x0
-- CTRL_ATTR_OP_ID = 0x1
-- CTRL_ATTR_OP_FLAGS = 0x2
-- CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
-- CTRL_ATTR_MCAST_GRP_NAME = 0x1
-- CTRL_ATTR_MCAST_GRP_ID = 0x2
-+ SizeofTpacketHdr = 0x20
- )
-+
-+type RTCPLLInfo struct {
-+ Ctrl int32
-+ Value int32
-+ Max int32
-+ Min int32
-+ Posmult int32
-+ Negmult int32
-+ Clock int64
-+}
-+
-+type BlkpgPartition struct {
-+ Start int64
-+ Length int64
-+ Pno int32
-+ Devname [64]uint8
-+ Volname [64]uint8
-+ _ [4]byte
-+}
-+
-+const (
-+ BLKPG = 0x20001269
-+)
-+
-+type XDPUmemReg struct {
-+ Addr uint64
-+ Len uint64
-+ Size uint32
-+ Headroom uint32
-+ Flags uint32
-+ _ [4]byte
-+}
-+
-+type CryptoUserAlg struct {
-+ Name [64]uint8
-+ Driver_name [64]uint8
-+ Module_name [64]uint8
-+ Type uint32
-+ Mask uint32
-+ Refcnt uint32
-+ Flags uint32
-+}
-+
-+type CryptoStatAEAD struct {
-+ Type [64]uint8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatAKCipher struct {
-+ Type [64]uint8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Verify_cnt uint64
-+ Sign_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCipher struct {
-+ Type [64]uint8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCompress struct {
-+ Type [64]uint8
-+ Compress_cnt uint64
-+ Compress_tlen uint64
-+ Decompress_cnt uint64
-+ Decompress_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatHash struct {
-+ Type [64]uint8
-+ Hash_cnt uint64
-+ Hash_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatKPP struct {
-+ Type [64]uint8
-+ Setsecret_cnt uint64
-+ Generate_public_key_cnt uint64
-+ Compute_shared_secret_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatRNG struct {
-+ Type [64]uint8
-+ Generate_cnt uint64
-+ Generate_tlen uint64
-+ Seed_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatLarval struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportLarval struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportHash struct {
-+ Type [64]uint8
-+ Blocksize uint32
-+ Digestsize uint32
-+}
-+
-+type CryptoReportCipher struct {
-+ Type [64]uint8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+}
-+
-+type CryptoReportBlkCipher struct {
-+ Type [64]uint8
-+ Geniv [64]uint8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportAEAD struct {
-+ Type [64]uint8
-+ Geniv [64]uint8
-+ Blocksize uint32
-+ Maxauthsize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportComp struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportRNG struct {
-+ Type [64]uint8
-+ Seedsize uint32
-+}
-+
-+type CryptoReportAKCipher struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportKPP struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportAcomp struct {
-+ Type [64]uint8
-+}
-+
-+type LoopInfo struct {
-+ Number int32
-+ Device uint64
-+ Inode uint64
-+ Rdevice uint64
-+ Offset int32
-+ Encrypt_type int32
-+ Encrypt_key_size int32
-+ Flags int32
-+ Name [64]uint8
-+ Encrypt_key [32]uint8
-+ Init [2]uint64
-+ Reserved [4]uint8
-+ _ [4]byte
-+}
-+
-+type TIPCSubscr struct {
-+ Seq TIPCServiceRange
-+ Timeout uint32
-+ Filter uint32
-+ Handle [8]uint8
-+}
-+
-+type TIPCSIOCLNReq struct {
-+ Peer uint32
-+ Id uint32
-+ Linkname [68]uint8
-+}
-+
-+type TIPCSIOCNodeIDReq struct {
-+ Peer uint32
-+ Id [16]uint8
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
-index b2b59992..046c2deb 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
-@@ -6,19 +6,12 @@
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-- PathMax = 0x1000
-+ SizeofPtr = 0x8
-+ SizeofLong = 0x8
- )
-
- type (
-- _C_short int16
-- _C_int int32
-- _C_long int64
-- _C_long_long int64
-+ _C_long int64
- )
-
- type Timespec struct {
-@@ -33,13 +26,11 @@ type Timeval struct {
-
- type Timex struct {
- Modes uint32
-- Pad_cgo_0 [4]byte
- Offset int64
- Freq int64
- Maxerror int64
- Esterror int64
- Status int32
-- Pad_cgo_1 [4]byte
- Constant int64
- Precision int64
- Tolerance int64
-@@ -48,14 +39,13 @@ type Timex struct {
- Ppsfreq int64
- Jitter int64
- Shift int32
-- Pad_cgo_2 [4]byte
- Stabil int64
- Jitcnt int64
- Calcnt int64
- Errcnt int64
- Stbcnt int64
- Tai int32
-- Pad_cgo_3 [44]byte
-+ _ [44]byte
- }
-
- type Time_t int64
-@@ -91,13 +81,6 @@ type Rusage struct {
- Nivcsw int64
- }
-
--type Rlimit struct {
-- Cur uint64
-- Max uint64
--}
--
--type _Gid_t uint32
--
- type Stat_t struct {
- Dev uint64
- Ino uint64
-@@ -105,7 +88,7 @@ type Stat_t struct {
- Mode uint32
- Uid uint32
- Gid uint32
-- X__pad2 int32
-+ _ int32
- Rdev uint64
- Size int64
- Blksize int64
-@@ -118,139 +101,29 @@ type Stat_t struct {
- _ uint64
- }
-
--type Statfs_t struct {
-- Type int64
-- Bsize int64
-- Blocks uint64
-- Bfree uint64
-- Bavail uint64
-- Files uint64
-- Ffree uint64
-- Fsid Fsid
-- Namelen int64
-- Frsize int64
-- Flags int64
-- Spare [4]int64
--}
--
- type Dirent struct {
-- Ino uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Name [256]uint8
-- Pad_cgo_0 [5]byte
--}
--
--type Fsid struct {
-- X__val [2]int32
-+ Ino uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Name [256]uint8
-+ _ [5]byte
- }
-
- type Flock_t struct {
-- Type int16
-- Whence int16
-- Pad_cgo_0 [4]byte
-- Start int64
-- Len int64
-- Pid int32
-- Pad_cgo_1 [4]byte
--}
--
--type FscryptPolicy struct {
-- Version uint8
-- Contents_encryption_mode uint8
-- Filenames_encryption_mode uint8
-- Flags uint8
-- Master_key_descriptor [8]uint8
--}
--
--type FscryptKey struct {
-- Mode uint32
-- Raw [64]uint8
-- Size uint32
--}
--
--type KeyctlDHParams struct {
-- Private int32
-- Prime int32
-- Base int32
-+ Type int16
-+ Whence int16
-+ Start int64
-+ Len int64
-+ Pid int32
-+ _ [4]byte
- }
-
- const (
-- FADV_NORMAL = 0x0
-- FADV_RANDOM = 0x1
-- FADV_SEQUENTIAL = 0x2
-- FADV_WILLNEED = 0x3
-- FADV_DONTNEED = 0x4
-- FADV_NOREUSE = 0x5
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
- )
-
--type RawSockaddrInet4 struct {
-- Family uint16
-- Port uint16
-- Addr [4]byte /* in_addr */
-- Zero [8]uint8
--}
--
--type RawSockaddrInet6 struct {
-- Family uint16
-- Port uint16
-- Flowinfo uint32
-- Addr [16]byte /* in6_addr */
-- Scope_id uint32
--}
--
--type RawSockaddrUnix struct {
-- Family uint16
-- Path [108]int8
--}
--
--type RawSockaddrLinklayer struct {
-- Family uint16
-- Protocol uint16
-- Ifindex int32
-- Hatype uint16
-- Pkttype uint8
-- Halen uint8
-- Addr [8]uint8
--}
--
--type RawSockaddrNetlink struct {
-- Family uint16
-- Pad uint16
-- Pid uint32
-- Groups uint32
--}
--
--type RawSockaddrHCI struct {
-- Family uint16
-- Dev uint16
-- Channel uint16
--}
--
--type RawSockaddrCAN struct {
-- Family uint16
-- Pad_cgo_0 [2]byte
-- Ifindex int32
-- Addr [8]byte
--}
--
--type RawSockaddrALG struct {
-- Family uint16
-- Type [14]uint8
-- Feat uint32
-- Mask uint32
-- Name [64]uint8
--}
--
--type RawSockaddrVM struct {
-- Family uint16
-- Reserved1 uint16
-- Port uint32
-- Cid uint32
-- Zero [4]uint8
--}
--
- type RawSockaddr struct {
- Family uint16
- Data [14]uint8
-@@ -261,51 +134,20 @@ type RawSockaddrAny struct {
- Pad [96]uint8
- }
-
--type _Socklen uint32
--
--type Linger struct {
-- Onoff int32
-- Linger int32
--}
--
- type Iovec struct {
- Base *byte
- Len uint64
- }
-
--type IPMreq struct {
-- Multiaddr [4]byte /* in_addr */
-- Interface [4]byte /* in_addr */
--}
--
--type IPMreqn struct {
-- Multiaddr [4]byte /* in_addr */
-- Address [4]byte /* in_addr */
-- Ifindex int32
--}
--
--type IPv6Mreq struct {
-- Multiaddr [16]byte /* in6_addr */
-- Interface uint32
--}
--
--type PacketMreq struct {
-- Ifindex int32
-- Type uint16
-- Alen uint16
-- Address [8]uint8
--}
--
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
- Iov *Iovec
- Iovlen uint64
- Control *byte
- Controllen uint64
- Flags int32
-- Pad_cgo_1 [4]byte
-+ _ [4]byte
- }
-
- type Cmsghdr struct {
-@@ -314,277 +156,16 @@ type Cmsghdr struct {
- Type int32
- }
-
--type Inet4Pktinfo struct {
-- Ifindex int32
-- Spec_dst [4]byte /* in_addr */
-- Addr [4]byte /* in_addr */
--}
--
--type Inet6Pktinfo struct {
-- Addr [16]byte /* in6_addr */
-- Ifindex uint32
--}
--
--type IPv6MTUInfo struct {
-- Addr RawSockaddrInet6
-- Mtu uint32
--}
--
--type ICMPv6Filter struct {
-- Data [8]uint32
--}
--
--type Ucred struct {
-- Pid int32
-- Uid uint32
-- Gid uint32
--}
--
--type TCPInfo struct {
-- State uint8
-- Ca_state uint8
-- Retransmits uint8
-- Probes uint8
-- Backoff uint8
-- Options uint8
-- Pad_cgo_0 [2]byte
-- Rto uint32
-- Ato uint32
-- Snd_mss uint32
-- Rcv_mss uint32
-- Unacked uint32
-- Sacked uint32
-- Lost uint32
-- Retrans uint32
-- Fackets uint32
-- Last_data_sent uint32
-- Last_ack_sent uint32
-- Last_data_recv uint32
-- Last_ack_recv uint32
-- Pmtu uint32
-- Rcv_ssthresh uint32
-- Rtt uint32
-- Rttvar uint32
-- Snd_ssthresh uint32
-- Snd_cwnd uint32
-- Advmss uint32
-- Reordering uint32
-- Rcv_rtt uint32
-- Rcv_space uint32
-- Total_retrans uint32
--}
--
- const (
-- SizeofSockaddrInet4 = 0x10
-- SizeofSockaddrInet6 = 0x1c
-- SizeofSockaddrAny = 0x70
-- SizeofSockaddrUnix = 0x6e
-- SizeofSockaddrLinklayer = 0x14
-- SizeofSockaddrNetlink = 0xc
-- SizeofSockaddrHCI = 0x6
-- SizeofSockaddrCAN = 0x10
-- SizeofSockaddrALG = 0x58
-- SizeofSockaddrVM = 0x10
-- SizeofLinger = 0x8
-- SizeofIovec = 0x10
-- SizeofIPMreq = 0x8
-- SizeofIPMreqn = 0xc
-- SizeofIPv6Mreq = 0x14
-- SizeofPacketMreq = 0x10
-- SizeofMsghdr = 0x38
-- SizeofCmsghdr = 0x10
-- SizeofInet4Pktinfo = 0xc
-- SizeofInet6Pktinfo = 0x14
-- SizeofIPv6MTUInfo = 0x20
-- SizeofICMPv6Filter = 0x20
-- SizeofUcred = 0xc
-- SizeofTCPInfo = 0x68
-+ SizeofIovec = 0x10
-+ SizeofMsghdr = 0x38
-+ SizeofCmsghdr = 0x10
- )
-
- const (
-- IFA_UNSPEC = 0x0
-- IFA_ADDRESS = 0x1
-- IFA_LOCAL = 0x2
-- IFA_LABEL = 0x3
-- IFA_BROADCAST = 0x4
-- IFA_ANYCAST = 0x5
-- IFA_CACHEINFO = 0x6
-- IFA_MULTICAST = 0x7
-- IFLA_UNSPEC = 0x0
-- IFLA_ADDRESS = 0x1
-- IFLA_BROADCAST = 0x2
-- IFLA_IFNAME = 0x3
-- IFLA_MTU = 0x4
-- IFLA_LINK = 0x5
-- IFLA_QDISC = 0x6
-- IFLA_STATS = 0x7
-- IFLA_COST = 0x8
-- IFLA_PRIORITY = 0x9
-- IFLA_MASTER = 0xa
-- IFLA_WIRELESS = 0xb
-- IFLA_PROTINFO = 0xc
-- IFLA_TXQLEN = 0xd
-- IFLA_MAP = 0xe
-- IFLA_WEIGHT = 0xf
-- IFLA_OPERSTATE = 0x10
-- IFLA_LINKMODE = 0x11
-- IFLA_LINKINFO = 0x12
-- IFLA_NET_NS_PID = 0x13
-- IFLA_IFALIAS = 0x14
-- IFLA_MAX = 0x2b
-- RT_SCOPE_UNIVERSE = 0x0
-- RT_SCOPE_SITE = 0xc8
-- RT_SCOPE_LINK = 0xfd
-- RT_SCOPE_HOST = 0xfe
-- RT_SCOPE_NOWHERE = 0xff
-- RT_TABLE_UNSPEC = 0x0
-- RT_TABLE_COMPAT = 0xfc
-- RT_TABLE_DEFAULT = 0xfd
-- RT_TABLE_MAIN = 0xfe
-- RT_TABLE_LOCAL = 0xff
-- RT_TABLE_MAX = 0xffffffff
-- RTA_UNSPEC = 0x0
-- RTA_DST = 0x1
-- RTA_SRC = 0x2
-- RTA_IIF = 0x3
-- RTA_OIF = 0x4
-- RTA_GATEWAY = 0x5
-- RTA_PRIORITY = 0x6
-- RTA_PREFSRC = 0x7
-- RTA_METRICS = 0x8
-- RTA_MULTIPATH = 0x9
-- RTA_FLOW = 0xb
-- RTA_CACHEINFO = 0xc
-- RTA_TABLE = 0xf
-- RTN_UNSPEC = 0x0
-- RTN_UNICAST = 0x1
-- RTN_LOCAL = 0x2
-- RTN_BROADCAST = 0x3
-- RTN_ANYCAST = 0x4
-- RTN_MULTICAST = 0x5
-- RTN_BLACKHOLE = 0x6
-- RTN_UNREACHABLE = 0x7
-- RTN_PROHIBIT = 0x8
-- RTN_THROW = 0x9
-- RTN_NAT = 0xa
-- RTN_XRESOLVE = 0xb
-- RTNLGRP_NONE = 0x0
-- RTNLGRP_LINK = 0x1
-- RTNLGRP_NOTIFY = 0x2
-- RTNLGRP_NEIGH = 0x3
-- RTNLGRP_TC = 0x4
-- RTNLGRP_IPV4_IFADDR = 0x5
-- RTNLGRP_IPV4_MROUTE = 0x6
-- RTNLGRP_IPV4_ROUTE = 0x7
-- RTNLGRP_IPV4_RULE = 0x8
-- RTNLGRP_IPV6_IFADDR = 0x9
-- RTNLGRP_IPV6_MROUTE = 0xa
-- RTNLGRP_IPV6_ROUTE = 0xb
-- RTNLGRP_IPV6_IFINFO = 0xc
-- RTNLGRP_IPV6_PREFIX = 0x12
-- RTNLGRP_IPV6_RULE = 0x13
-- RTNLGRP_ND_USEROPT = 0x14
-- SizeofNlMsghdr = 0x10
-- SizeofNlMsgerr = 0x14
-- SizeofRtGenmsg = 0x1
-- SizeofNlAttr = 0x4
-- SizeofRtAttr = 0x4
-- SizeofIfInfomsg = 0x10
-- SizeofIfAddrmsg = 0x8
-- SizeofRtMsg = 0xc
-- SizeofRtNexthop = 0x8
-+ SizeofSockFprog = 0x10
- )
-
--type NlMsghdr struct {
-- Len uint32
-- Type uint16
-- Flags uint16
-- Seq uint32
-- Pid uint32
--}
--
--type NlMsgerr struct {
-- Error int32
-- Msg NlMsghdr
--}
--
--type RtGenmsg struct {
-- Family uint8
--}
--
--type NlAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type RtAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type IfInfomsg struct {
-- Family uint8
-- X__ifi_pad uint8
-- Type uint16
-- Index int32
-- Flags uint32
-- Change uint32
--}
--
--type IfAddrmsg struct {
-- Family uint8
-- Prefixlen uint8
-- Flags uint8
-- Scope uint8
-- Index uint32
--}
--
--type RtMsg struct {
-- Family uint8
-- Dst_len uint8
-- Src_len uint8
-- Tos uint8
-- Table uint8
-- Protocol uint8
-- Scope uint8
-- Type uint8
-- Flags uint32
--}
--
--type RtNexthop struct {
-- Len uint16
-- Flags uint8
-- Hops uint8
-- Ifindex int32
--}
--
--const (
-- SizeofSockFilter = 0x8
-- SizeofSockFprog = 0x10
--)
--
--type SockFilter struct {
-- Code uint16
-- Jt uint8
-- Jf uint8
-- K uint32
--}
--
--type SockFprog struct {
-- Len uint16
-- Pad_cgo_0 [6]byte
-- Filter *SockFilter
--}
--
--type InotifyEvent struct {
-- Wd int32
-- Mask uint32
-- Cookie uint32
-- Len uint32
--}
--
--const SizeofInotifyEvent = 0x10
--
- type PtraceRegs struct {
- Gpr [32]uint64
- Nip uint64
-@@ -616,71 +197,37 @@ type Sysinfo_t struct {
- Freeswap uint64
- Procs uint16
- Pad uint16
-- Pad_cgo_0 [4]byte
- Totalhigh uint64
- Freehigh uint64
- Unit uint32
-- X_f [0]uint8
-- Pad_cgo_1 [4]byte
--}
--
--type Utsname struct {
-- Sysname [65]uint8
-- Nodename [65]uint8
-- Release [65]uint8
-- Version [65]uint8
-- Machine [65]uint8
-- Domainname [65]uint8
-+ _ [0]uint8
-+ _ [4]byte
- }
-
- type Ustat_t struct {
-- Tfree int32
-- Pad_cgo_0 [4]byte
-- Tinode uint64
-- Fname [6]uint8
-- Fpack [6]uint8
-- Pad_cgo_1 [4]byte
-+ Tfree int32
-+ Tinode uint64
-+ Fname [6]uint8
-+ Fpack [6]uint8
-+ _ [4]byte
- }
-
- type EpollEvent struct {
-- Events uint32
-- X_padFd int32
-- Fd int32
-- Pad int32
--}
--
--const (
-- AT_FDCWD = -0x64
-- AT_REMOVEDIR = 0x200
-- AT_SYMLINK_FOLLOW = 0x400
-- AT_SYMLINK_NOFOLLOW = 0x100
--)
--
--type PollFd struct {
-- Fd int32
-- Events int16
-- Revents int16
-+ Events uint32
-+ _ int32
-+ Fd int32
-+ Pad int32
- }
-
- const (
-- POLLIN = 0x1
-- POLLPRI = 0x2
-- POLLOUT = 0x4
- POLLRDHUP = 0x2000
-- POLLERR = 0x8
-- POLLHUP = 0x10
-- POLLNVAL = 0x20
- )
-
- type Sigset_t struct {
-- X__val [16]uint64
-+ Val [16]uint64
- }
-
--const RNDGETENTCNT = 0x40045200
--
--const PERF_IOC_FLAG_GROUP = 0x1
--
--const _SC_PAGESIZE = 0x1e
-+const _C__NSIG = 0x41
-
- type Termios struct {
- Iflag uint32
-@@ -693,20 +240,11 @@ type Termios struct {
- Ospeed uint32
- }
-
--type Winsize struct {
-- Row uint16
-- Col uint16
-- Xpixel uint16
-- Ypixel uint16
--}
--
- type Taskstats struct {
- Version uint16
-- Pad_cgo_0 [2]byte
- Ac_exitcode uint32
- Ac_flag uint8
- Ac_nice uint8
-- Pad_cgo_1 [6]byte
- Cpu_count uint64
- Cpu_delay_total uint64
- Blkio_count uint64
-@@ -718,13 +256,12 @@ type Taskstats struct {
- Ac_comm [32]uint8
- Ac_sched uint8
- Ac_pad [3]uint8
-- Pad_cgo_2 [4]byte
-+ _ [4]byte
- Ac_uid uint32
- Ac_gid uint32
- Ac_pid uint32
- Ac_ppid uint32
- Ac_btime uint32
-- Pad_cgo_3 [4]byte
- Ac_etime uint64
- Ac_utime uint64
- Ac_stime uint64
-@@ -748,55 +285,319 @@ type Taskstats struct {
- Cpu_scaled_run_real_total uint64
- Freepages_count uint64
- Freepages_delay_total uint64
-+ Thrashing_count uint64
-+ Thrashing_delay_total uint64
-+ Ac_btime64 uint64
- }
-
-+type cpuMask uint64
-+
- const (
-- TASKSTATS_CMD_UNSPEC = 0x0
-- TASKSTATS_CMD_GET = 0x1
-- TASKSTATS_CMD_NEW = 0x2
-- TASKSTATS_TYPE_UNSPEC = 0x0
-- TASKSTATS_TYPE_PID = 0x1
-- TASKSTATS_TYPE_TGID = 0x2
-- TASKSTATS_TYPE_STATS = 0x3
-- TASKSTATS_TYPE_AGGR_PID = 0x4
-- TASKSTATS_TYPE_AGGR_TGID = 0x5
-- TASKSTATS_TYPE_NULL = 0x6
-- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
-- TASKSTATS_CMD_ATTR_PID = 0x1
-- TASKSTATS_CMD_ATTR_TGID = 0x2
-- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
-- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-+ _NCPUBITS = 0x40
- )
-
--type Genlmsghdr struct {
-- Cmd uint8
-- Version uint8
-- Reserved uint16
-+const (
-+ CBitFieldMaskBit0 = 0x1
-+ CBitFieldMaskBit1 = 0x2
-+ CBitFieldMaskBit2 = 0x4
-+ CBitFieldMaskBit3 = 0x8
-+ CBitFieldMaskBit4 = 0x10
-+ CBitFieldMaskBit5 = 0x20
-+ CBitFieldMaskBit6 = 0x40
-+ CBitFieldMaskBit7 = 0x80
-+ CBitFieldMaskBit8 = 0x100
-+ CBitFieldMaskBit9 = 0x200
-+ CBitFieldMaskBit10 = 0x400
-+ CBitFieldMaskBit11 = 0x800
-+ CBitFieldMaskBit12 = 0x1000
-+ CBitFieldMaskBit13 = 0x2000
-+ CBitFieldMaskBit14 = 0x4000
-+ CBitFieldMaskBit15 = 0x8000
-+ CBitFieldMaskBit16 = 0x10000
-+ CBitFieldMaskBit17 = 0x20000
-+ CBitFieldMaskBit18 = 0x40000
-+ CBitFieldMaskBit19 = 0x80000
-+ CBitFieldMaskBit20 = 0x100000
-+ CBitFieldMaskBit21 = 0x200000
-+ CBitFieldMaskBit22 = 0x400000
-+ CBitFieldMaskBit23 = 0x800000
-+ CBitFieldMaskBit24 = 0x1000000
-+ CBitFieldMaskBit25 = 0x2000000
-+ CBitFieldMaskBit26 = 0x4000000
-+ CBitFieldMaskBit27 = 0x8000000
-+ CBitFieldMaskBit28 = 0x10000000
-+ CBitFieldMaskBit29 = 0x20000000
-+ CBitFieldMaskBit30 = 0x40000000
-+ CBitFieldMaskBit31 = 0x80000000
-+ CBitFieldMaskBit32 = 0x100000000
-+ CBitFieldMaskBit33 = 0x200000000
-+ CBitFieldMaskBit34 = 0x400000000
-+ CBitFieldMaskBit35 = 0x800000000
-+ CBitFieldMaskBit36 = 0x1000000000
-+ CBitFieldMaskBit37 = 0x2000000000
-+ CBitFieldMaskBit38 = 0x4000000000
-+ CBitFieldMaskBit39 = 0x8000000000
-+ CBitFieldMaskBit40 = 0x10000000000
-+ CBitFieldMaskBit41 = 0x20000000000
-+ CBitFieldMaskBit42 = 0x40000000000
-+ CBitFieldMaskBit43 = 0x80000000000
-+ CBitFieldMaskBit44 = 0x100000000000
-+ CBitFieldMaskBit45 = 0x200000000000
-+ CBitFieldMaskBit46 = 0x400000000000
-+ CBitFieldMaskBit47 = 0x800000000000
-+ CBitFieldMaskBit48 = 0x1000000000000
-+ CBitFieldMaskBit49 = 0x2000000000000
-+ CBitFieldMaskBit50 = 0x4000000000000
-+ CBitFieldMaskBit51 = 0x8000000000000
-+ CBitFieldMaskBit52 = 0x10000000000000
-+ CBitFieldMaskBit53 = 0x20000000000000
-+ CBitFieldMaskBit54 = 0x40000000000000
-+ CBitFieldMaskBit55 = 0x80000000000000
-+ CBitFieldMaskBit56 = 0x100000000000000
-+ CBitFieldMaskBit57 = 0x200000000000000
-+ CBitFieldMaskBit58 = 0x400000000000000
-+ CBitFieldMaskBit59 = 0x800000000000000
-+ CBitFieldMaskBit60 = 0x1000000000000000
-+ CBitFieldMaskBit61 = 0x2000000000000000
-+ CBitFieldMaskBit62 = 0x4000000000000000
-+ CBitFieldMaskBit63 = 0x8000000000000000
-+)
-+
-+type SockaddrStorage struct {
-+ Family uint16
-+ _ [118]uint8
-+ _ uint64
-+}
-+
-+type HDGeometry struct {
-+ Heads uint8
-+ Sectors uint8
-+ Cylinders uint16
-+ Start uint64
-+}
-+
-+type Statfs_t struct {
-+ Type int64
-+ Bsize int64
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Files uint64
-+ Ffree uint64
-+ Fsid Fsid
-+ Namelen int64
-+ Frsize int64
-+ Flags int64
-+ Spare [4]int64
-+}
-+
-+type TpacketHdr struct {
-+ Status uint64
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Usec uint32
-+ _ [4]byte
- }
-
- const (
-- CTRL_CMD_UNSPEC = 0x0
-- CTRL_CMD_NEWFAMILY = 0x1
-- CTRL_CMD_DELFAMILY = 0x2
-- CTRL_CMD_GETFAMILY = 0x3
-- CTRL_CMD_NEWOPS = 0x4
-- CTRL_CMD_DELOPS = 0x5
-- CTRL_CMD_GETOPS = 0x6
-- CTRL_CMD_NEWMCAST_GRP = 0x7
-- CTRL_CMD_DELMCAST_GRP = 0x8
-- CTRL_CMD_GETMCAST_GRP = 0x9
-- CTRL_ATTR_UNSPEC = 0x0
-- CTRL_ATTR_FAMILY_ID = 0x1
-- CTRL_ATTR_FAMILY_NAME = 0x2
-- CTRL_ATTR_VERSION = 0x3
-- CTRL_ATTR_HDRSIZE = 0x4
-- CTRL_ATTR_MAXATTR = 0x5
-- CTRL_ATTR_OPS = 0x6
-- CTRL_ATTR_MCAST_GROUPS = 0x7
-- CTRL_ATTR_OP_UNSPEC = 0x0
-- CTRL_ATTR_OP_ID = 0x1
-- CTRL_ATTR_OP_FLAGS = 0x2
-- CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
-- CTRL_ATTR_MCAST_GRP_NAME = 0x1
-- CTRL_ATTR_MCAST_GRP_ID = 0x2
-+ SizeofTpacketHdr = 0x20
- )
-+
-+type RTCPLLInfo struct {
-+ Ctrl int32
-+ Value int32
-+ Max int32
-+ Min int32
-+ Posmult int32
-+ Negmult int32
-+ Clock int64
-+}
-+
-+type BlkpgPartition struct {
-+ Start int64
-+ Length int64
-+ Pno int32
-+ Devname [64]uint8
-+ Volname [64]uint8
-+ _ [4]byte
-+}
-+
-+const (
-+ BLKPG = 0x20001269
-+)
-+
-+type XDPUmemReg struct {
-+ Addr uint64
-+ Len uint64
-+ Size uint32
-+ Headroom uint32
-+ Flags uint32
-+ _ [4]byte
-+}
-+
-+type CryptoUserAlg struct {
-+ Name [64]uint8
-+ Driver_name [64]uint8
-+ Module_name [64]uint8
-+ Type uint32
-+ Mask uint32
-+ Refcnt uint32
-+ Flags uint32
-+}
-+
-+type CryptoStatAEAD struct {
-+ Type [64]uint8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatAKCipher struct {
-+ Type [64]uint8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Verify_cnt uint64
-+ Sign_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCipher struct {
-+ Type [64]uint8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCompress struct {
-+ Type [64]uint8
-+ Compress_cnt uint64
-+ Compress_tlen uint64
-+ Decompress_cnt uint64
-+ Decompress_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatHash struct {
-+ Type [64]uint8
-+ Hash_cnt uint64
-+ Hash_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatKPP struct {
-+ Type [64]uint8
-+ Setsecret_cnt uint64
-+ Generate_public_key_cnt uint64
-+ Compute_shared_secret_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatRNG struct {
-+ Type [64]uint8
-+ Generate_cnt uint64
-+ Generate_tlen uint64
-+ Seed_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatLarval struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportLarval struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportHash struct {
-+ Type [64]uint8
-+ Blocksize uint32
-+ Digestsize uint32
-+}
-+
-+type CryptoReportCipher struct {
-+ Type [64]uint8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+}
-+
-+type CryptoReportBlkCipher struct {
-+ Type [64]uint8
-+ Geniv [64]uint8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportAEAD struct {
-+ Type [64]uint8
-+ Geniv [64]uint8
-+ Blocksize uint32
-+ Maxauthsize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportComp struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportRNG struct {
-+ Type [64]uint8
-+ Seedsize uint32
-+}
-+
-+type CryptoReportAKCipher struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportKPP struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportAcomp struct {
-+ Type [64]uint8
-+}
-+
-+type LoopInfo struct {
-+ Number int32
-+ Device uint64
-+ Inode uint64
-+ Rdevice uint64
-+ Offset int32
-+ Encrypt_type int32
-+ Encrypt_key_size int32
-+ Flags int32
-+ Name [64]uint8
-+ Encrypt_key [32]uint8
-+ Init [2]uint64
-+ Reserved [4]uint8
-+ _ [4]byte
-+}
-+
-+type TIPCSubscr struct {
-+ Seq TIPCServiceRange
-+ Timeout uint32
-+ Filter uint32
-+ Handle [8]uint8
-+}
-+
-+type TIPCSIOCLNReq struct {
-+ Peer uint32
-+ Id uint32
-+ Linkname [68]uint8
-+}
-+
-+type TIPCSIOCNodeIDReq struct {
-+ Peer uint32
-+ Id [16]uint8
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
-new file mode 100644
-index 00000000..0f2f61a6
---- /dev/null
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
-@@ -0,0 +1,621 @@
-+// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
-+// +build riscv64,linux
-+
-+package unix
-+
-+const (
-+ SizeofPtr = 0x8
-+ SizeofLong = 0x8
-+)
-+
-+type (
-+ _C_long int64
-+)
-+
-+type Timespec struct {
-+ Sec int64
-+ Nsec int64
-+}
-+
-+type Timeval struct {
-+ Sec int64
-+ Usec int64
-+}
-+
-+type Timex struct {
-+ Modes uint32
-+ Offset int64
-+ Freq int64
-+ Maxerror int64
-+ Esterror int64
-+ Status int32
-+ Constant int64
-+ Precision int64
-+ Tolerance int64
-+ Time Timeval
-+ Tick int64
-+ Ppsfreq int64
-+ Jitter int64
-+ Shift int32
-+ Stabil int64
-+ Jitcnt int64
-+ Calcnt int64
-+ Errcnt int64
-+ Stbcnt int64
-+ Tai int32
-+ _ [44]byte
-+}
-+
-+type Time_t int64
-+
-+type Tms struct {
-+ Utime int64
-+ Stime int64
-+ Cutime int64
-+ Cstime int64
-+}
-+
-+type Utimbuf struct {
-+ Actime int64
-+ Modtime int64
-+}
-+
-+type Rusage struct {
-+ Utime Timeval
-+ Stime Timeval
-+ Maxrss int64
-+ Ixrss int64
-+ Idrss int64
-+ Isrss int64
-+ Minflt int64
-+ Majflt int64
-+ Nswap int64
-+ Inblock int64
-+ Oublock int64
-+ Msgsnd int64
-+ Msgrcv int64
-+ Nsignals int64
-+ Nvcsw int64
-+ Nivcsw int64
-+}
-+
-+type Stat_t struct {
-+ Dev uint64
-+ Ino uint64
-+ Mode uint32
-+ Nlink uint32
-+ Uid uint32
-+ Gid uint32
-+ Rdev uint64
-+ _ uint64
-+ Size int64
-+ Blksize int32
-+ _ int32
-+ Blocks int64
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ _ [2]int32
-+}
-+
-+type Dirent struct {
-+ Ino uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Name [256]uint8
-+ _ [5]byte
-+}
-+
-+type Flock_t struct {
-+ Type int16
-+ Whence int16
-+ Start int64
-+ Len int64
-+ Pid int32
-+ _ [4]byte
-+}
-+
-+const (
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
-+)
-+
-+type RawSockaddr struct {
-+ Family uint16
-+ Data [14]uint8
-+}
-+
-+type RawSockaddrAny struct {
-+ Addr RawSockaddr
-+ Pad [96]uint8
-+}
-+
-+type Iovec struct {
-+ Base *byte
-+ Len uint64
-+}
-+
-+type Msghdr struct {
-+ Name *byte
-+ Namelen uint32
-+ Iov *Iovec
-+ Iovlen uint64
-+ Control *byte
-+ Controllen uint64
-+ Flags int32
-+ _ [4]byte
-+}
-+
-+type Cmsghdr struct {
-+ Len uint64
-+ Level int32
-+ Type int32
-+}
-+
-+const (
-+ SizeofIovec = 0x10
-+ SizeofMsghdr = 0x38
-+ SizeofCmsghdr = 0x10
-+)
-+
-+const (
-+ SizeofSockFprog = 0x10
-+)
-+
-+type PtraceRegs struct {
-+ Pc uint64
-+ Ra uint64
-+ Sp uint64
-+ Gp uint64
-+ Tp uint64
-+ T0 uint64
-+ T1 uint64
-+ T2 uint64
-+ S0 uint64
-+ S1 uint64
-+ A0 uint64
-+ A1 uint64
-+ A2 uint64
-+ A3 uint64
-+ A4 uint64
-+ A5 uint64
-+ A6 uint64
-+ A7 uint64
-+ S2 uint64
-+ S3 uint64
-+ S4 uint64
-+ S5 uint64
-+ S6 uint64
-+ S7 uint64
-+ S8 uint64
-+ S9 uint64
-+ S10 uint64
-+ S11 uint64
-+ T3 uint64
-+ T4 uint64
-+ T5 uint64
-+ T6 uint64
-+}
-+
-+type FdSet struct {
-+ Bits [16]int64
-+}
-+
-+type Sysinfo_t struct {
-+ Uptime int64
-+ Loads [3]uint64
-+ Totalram uint64
-+ Freeram uint64
-+ Sharedram uint64
-+ Bufferram uint64
-+ Totalswap uint64
-+ Freeswap uint64
-+ Procs uint16
-+ Pad uint16
-+ Totalhigh uint64
-+ Freehigh uint64
-+ Unit uint32
-+ _ [0]uint8
-+ _ [4]byte
-+}
-+
-+type Ustat_t struct {
-+ Tfree int32
-+ Tinode uint64
-+ Fname [6]uint8
-+ Fpack [6]uint8
-+ _ [4]byte
-+}
-+
-+type EpollEvent struct {
-+ Events uint32
-+ _ int32
-+ Fd int32
-+ Pad int32
-+}
-+
-+const (
-+ POLLRDHUP = 0x2000
-+)
-+
-+type Sigset_t struct {
-+ Val [16]uint64
-+}
-+
-+const _C__NSIG = 0x41
-+
-+type Termios struct {
-+ Iflag uint32
-+ Oflag uint32
-+ Cflag uint32
-+ Lflag uint32
-+ Line uint8
-+ Cc [19]uint8
-+ Ispeed uint32
-+ Ospeed uint32
-+}
-+
-+type Taskstats struct {
-+ Version uint16
-+ Ac_exitcode uint32
-+ Ac_flag uint8
-+ Ac_nice uint8
-+ Cpu_count uint64
-+ Cpu_delay_total uint64
-+ Blkio_count uint64
-+ Blkio_delay_total uint64
-+ Swapin_count uint64
-+ Swapin_delay_total uint64
-+ Cpu_run_real_total uint64
-+ Cpu_run_virtual_total uint64
-+ Ac_comm [32]uint8
-+ Ac_sched uint8
-+ Ac_pad [3]uint8
-+ _ [4]byte
-+ Ac_uid uint32
-+ Ac_gid uint32
-+ Ac_pid uint32
-+ Ac_ppid uint32
-+ Ac_btime uint32
-+ Ac_etime uint64
-+ Ac_utime uint64
-+ Ac_stime uint64
-+ Ac_minflt uint64
-+ Ac_majflt uint64
-+ Coremem uint64
-+ Virtmem uint64
-+ Hiwater_rss uint64
-+ Hiwater_vm uint64
-+ Read_char uint64
-+ Write_char uint64
-+ Read_syscalls uint64
-+ Write_syscalls uint64
-+ Read_bytes uint64
-+ Write_bytes uint64
-+ Cancelled_write_bytes uint64
-+ Nvcsw uint64
-+ Nivcsw uint64
-+ Ac_utimescaled uint64
-+ Ac_stimescaled uint64
-+ Cpu_scaled_run_real_total uint64
-+ Freepages_count uint64
-+ Freepages_delay_total uint64
-+ Thrashing_count uint64
-+ Thrashing_delay_total uint64
-+ Ac_btime64 uint64
-+}
-+
-+type cpuMask uint64
-+
-+const (
-+ _NCPUBITS = 0x40
-+)
-+
-+const (
-+ CBitFieldMaskBit0 = 0x1
-+ CBitFieldMaskBit1 = 0x2
-+ CBitFieldMaskBit2 = 0x4
-+ CBitFieldMaskBit3 = 0x8
-+ CBitFieldMaskBit4 = 0x10
-+ CBitFieldMaskBit5 = 0x20
-+ CBitFieldMaskBit6 = 0x40
-+ CBitFieldMaskBit7 = 0x80
-+ CBitFieldMaskBit8 = 0x100
-+ CBitFieldMaskBit9 = 0x200
-+ CBitFieldMaskBit10 = 0x400
-+ CBitFieldMaskBit11 = 0x800
-+ CBitFieldMaskBit12 = 0x1000
-+ CBitFieldMaskBit13 = 0x2000
-+ CBitFieldMaskBit14 = 0x4000
-+ CBitFieldMaskBit15 = 0x8000
-+ CBitFieldMaskBit16 = 0x10000
-+ CBitFieldMaskBit17 = 0x20000
-+ CBitFieldMaskBit18 = 0x40000
-+ CBitFieldMaskBit19 = 0x80000
-+ CBitFieldMaskBit20 = 0x100000
-+ CBitFieldMaskBit21 = 0x200000
-+ CBitFieldMaskBit22 = 0x400000
-+ CBitFieldMaskBit23 = 0x800000
-+ CBitFieldMaskBit24 = 0x1000000
-+ CBitFieldMaskBit25 = 0x2000000
-+ CBitFieldMaskBit26 = 0x4000000
-+ CBitFieldMaskBit27 = 0x8000000
-+ CBitFieldMaskBit28 = 0x10000000
-+ CBitFieldMaskBit29 = 0x20000000
-+ CBitFieldMaskBit30 = 0x40000000
-+ CBitFieldMaskBit31 = 0x80000000
-+ CBitFieldMaskBit32 = 0x100000000
-+ CBitFieldMaskBit33 = 0x200000000
-+ CBitFieldMaskBit34 = 0x400000000
-+ CBitFieldMaskBit35 = 0x800000000
-+ CBitFieldMaskBit36 = 0x1000000000
-+ CBitFieldMaskBit37 = 0x2000000000
-+ CBitFieldMaskBit38 = 0x4000000000
-+ CBitFieldMaskBit39 = 0x8000000000
-+ CBitFieldMaskBit40 = 0x10000000000
-+ CBitFieldMaskBit41 = 0x20000000000
-+ CBitFieldMaskBit42 = 0x40000000000
-+ CBitFieldMaskBit43 = 0x80000000000
-+ CBitFieldMaskBit44 = 0x100000000000
-+ CBitFieldMaskBit45 = 0x200000000000
-+ CBitFieldMaskBit46 = 0x400000000000
-+ CBitFieldMaskBit47 = 0x800000000000
-+ CBitFieldMaskBit48 = 0x1000000000000
-+ CBitFieldMaskBit49 = 0x2000000000000
-+ CBitFieldMaskBit50 = 0x4000000000000
-+ CBitFieldMaskBit51 = 0x8000000000000
-+ CBitFieldMaskBit52 = 0x10000000000000
-+ CBitFieldMaskBit53 = 0x20000000000000
-+ CBitFieldMaskBit54 = 0x40000000000000
-+ CBitFieldMaskBit55 = 0x80000000000000
-+ CBitFieldMaskBit56 = 0x100000000000000
-+ CBitFieldMaskBit57 = 0x200000000000000
-+ CBitFieldMaskBit58 = 0x400000000000000
-+ CBitFieldMaskBit59 = 0x800000000000000
-+ CBitFieldMaskBit60 = 0x1000000000000000
-+ CBitFieldMaskBit61 = 0x2000000000000000
-+ CBitFieldMaskBit62 = 0x4000000000000000
-+ CBitFieldMaskBit63 = 0x8000000000000000
-+)
-+
-+type SockaddrStorage struct {
-+ Family uint16
-+ _ [118]uint8
-+ _ uint64
-+}
-+
-+type HDGeometry struct {
-+ Heads uint8
-+ Sectors uint8
-+ Cylinders uint16
-+ Start uint64
-+}
-+
-+type Statfs_t struct {
-+ Type int64
-+ Bsize int64
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Files uint64
-+ Ffree uint64
-+ Fsid Fsid
-+ Namelen int64
-+ Frsize int64
-+ Flags int64
-+ Spare [4]int64
-+}
-+
-+type TpacketHdr struct {
-+ Status uint64
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Usec uint32
-+ _ [4]byte
-+}
-+
-+const (
-+ SizeofTpacketHdr = 0x20
-+)
-+
-+type RTCPLLInfo struct {
-+ Ctrl int32
-+ Value int32
-+ Max int32
-+ Min int32
-+ Posmult int32
-+ Negmult int32
-+ Clock int64
-+}
-+
-+type BlkpgPartition struct {
-+ Start int64
-+ Length int64
-+ Pno int32
-+ Devname [64]uint8
-+ Volname [64]uint8
-+ _ [4]byte
-+}
-+
-+const (
-+ BLKPG = 0x1269
-+)
-+
-+type XDPUmemReg struct {
-+ Addr uint64
-+ Len uint64
-+ Size uint32
-+ Headroom uint32
-+ Flags uint32
-+ _ [4]byte
-+}
-+
-+type CryptoUserAlg struct {
-+ Name [64]uint8
-+ Driver_name [64]uint8
-+ Module_name [64]uint8
-+ Type uint32
-+ Mask uint32
-+ Refcnt uint32
-+ Flags uint32
-+}
-+
-+type CryptoStatAEAD struct {
-+ Type [64]uint8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatAKCipher struct {
-+ Type [64]uint8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Verify_cnt uint64
-+ Sign_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCipher struct {
-+ Type [64]uint8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCompress struct {
-+ Type [64]uint8
-+ Compress_cnt uint64
-+ Compress_tlen uint64
-+ Decompress_cnt uint64
-+ Decompress_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatHash struct {
-+ Type [64]uint8
-+ Hash_cnt uint64
-+ Hash_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatKPP struct {
-+ Type [64]uint8
-+ Setsecret_cnt uint64
-+ Generate_public_key_cnt uint64
-+ Compute_shared_secret_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatRNG struct {
-+ Type [64]uint8
-+ Generate_cnt uint64
-+ Generate_tlen uint64
-+ Seed_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatLarval struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportLarval struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportHash struct {
-+ Type [64]uint8
-+ Blocksize uint32
-+ Digestsize uint32
-+}
-+
-+type CryptoReportCipher struct {
-+ Type [64]uint8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+}
-+
-+type CryptoReportBlkCipher struct {
-+ Type [64]uint8
-+ Geniv [64]uint8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportAEAD struct {
-+ Type [64]uint8
-+ Geniv [64]uint8
-+ Blocksize uint32
-+ Maxauthsize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportComp struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportRNG struct {
-+ Type [64]uint8
-+ Seedsize uint32
-+}
-+
-+type CryptoReportAKCipher struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportKPP struct {
-+ Type [64]uint8
-+}
-+
-+type CryptoReportAcomp struct {
-+ Type [64]uint8
-+}
-+
-+type LoopInfo struct {
-+ Number int32
-+ Device uint32
-+ Inode uint64
-+ Rdevice uint32
-+ Offset int32
-+ Encrypt_type int32
-+ Encrypt_key_size int32
-+ Flags int32
-+ Name [64]uint8
-+ Encrypt_key [32]uint8
-+ Init [2]uint64
-+ Reserved [4]uint8
-+ _ [4]byte
-+}
-+
-+type TIPCSubscr struct {
-+ Seq TIPCServiceRange
-+ Timeout uint32
-+ Filter uint32
-+ Handle [8]uint8
-+}
-+
-+type TIPCSIOCLNReq struct {
-+ Peer uint32
-+ Id uint32
-+ Linkname [68]uint8
-+}
-+
-+type TIPCSIOCNodeIDReq struct {
-+ Peer uint32
-+ Id [16]uint8
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go b/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
-index 5e0aa663..cca1b6be 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
-@@ -6,19 +6,12 @@
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-- PathMax = 0x1000
-+ SizeofPtr = 0x8
-+ SizeofLong = 0x8
- )
-
- type (
-- _C_short int16
-- _C_int int32
-- _C_long int64
-- _C_long_long int64
-+ _C_long int64
- )
-
- type Timespec struct {
-@@ -33,13 +26,11 @@ type Timeval struct {
-
- type Timex struct {
- Modes uint32
-- _ [4]byte
- Offset int64
- Freq int64
- Maxerror int64
- Esterror int64
- Status int32
-- _ [4]byte
- Constant int64
- Precision int64
- Tolerance int64
-@@ -48,7 +39,6 @@ type Timex struct {
- Ppsfreq int64
- Jitter int64
- Shift int32
-- _ [4]byte
- Stabil int64
- Jitcnt int64
- Calcnt int64
-@@ -91,13 +81,6 @@ type Rusage struct {
- Nivcsw int64
- }
-
--type Rlimit struct {
-- Cur uint64
-- Max uint64
--}
--
--type _Gid_t uint32
--
- type Stat_t struct {
- Dev uint64
- Ino uint64
-@@ -116,22 +99,6 @@ type Stat_t struct {
- _ [3]int64
- }
-
--type Statfs_t struct {
-- Type uint32
-- Bsize uint32
-- Blocks uint64
-- Bfree uint64
-- Bavail uint64
-- Files uint64
-- Ffree uint64
-- Fsid Fsid
-- Namelen uint32
-- Frsize uint32
-- Flags uint32
-- Spare [4]uint32
-- _ [4]byte
--}
--
- type Dirent struct {
- Ino uint64
- Off int64
-@@ -141,115 +108,20 @@ type Dirent struct {
- _ [5]byte
- }
-
--type Fsid struct {
-- _ [2]int32
--}
--
- type Flock_t struct {
- Type int16
- Whence int16
-- _ [4]byte
- Start int64
- Len int64
- Pid int32
- _ [4]byte
- }
-
--type FscryptPolicy struct {
-- Version uint8
-- Contents_encryption_mode uint8
-- Filenames_encryption_mode uint8
-- Flags uint8
-- Master_key_descriptor [8]uint8
--}
--
--type FscryptKey struct {
-- Mode uint32
-- Raw [64]uint8
-- Size uint32
--}
--
--type KeyctlDHParams struct {
-- Private int32
-- Prime int32
-- Base int32
--}
--
- const (
-- FADV_NORMAL = 0x0
-- FADV_RANDOM = 0x1
-- FADV_SEQUENTIAL = 0x2
-- FADV_WILLNEED = 0x3
-- FADV_DONTNEED = 0x6
-- FADV_NOREUSE = 0x7
-+ FADV_DONTNEED = 0x6
-+ FADV_NOREUSE = 0x7
- )
-
--type RawSockaddrInet4 struct {
-- Family uint16
-- Port uint16
-- Addr [4]byte /* in_addr */
-- Zero [8]uint8
--}
--
--type RawSockaddrInet6 struct {
-- Family uint16
-- Port uint16
-- Flowinfo uint32
-- Addr [16]byte /* in6_addr */
-- Scope_id uint32
--}
--
--type RawSockaddrUnix struct {
-- Family uint16
-- Path [108]int8
--}
--
--type RawSockaddrLinklayer struct {
-- Family uint16
-- Protocol uint16
-- Ifindex int32
-- Hatype uint16
-- Pkttype uint8
-- Halen uint8
-- Addr [8]uint8
--}
--
--type RawSockaddrNetlink struct {
-- Family uint16
-- Pad uint16
-- Pid uint32
-- Groups uint32
--}
--
--type RawSockaddrHCI struct {
-- Family uint16
-- Dev uint16
-- Channel uint16
--}
--
--type RawSockaddrCAN struct {
-- Family uint16
-- _ [2]byte
-- Ifindex int32
-- Addr [8]byte
--}
--
--type RawSockaddrALG struct {
-- Family uint16
-- Type [14]uint8
-- Feat uint32
-- Mask uint32
-- Name [64]uint8
--}
--
--type RawSockaddrVM struct {
-- Family uint16
-- Reserved1 uint16
-- Port uint32
-- Cid uint32
-- Zero [4]uint8
--}
--
- type RawSockaddr struct {
- Family uint16
- Data [14]int8
-@@ -260,45 +132,14 @@ type RawSockaddrAny struct {
- Pad [96]int8
- }
-
--type _Socklen uint32
--
--type Linger struct {
-- Onoff int32
-- Linger int32
--}
--
- type Iovec struct {
- Base *byte
- Len uint64
- }
-
--type IPMreq struct {
-- Multiaddr [4]byte /* in_addr */
-- Interface [4]byte /* in_addr */
--}
--
--type IPMreqn struct {
-- Multiaddr [4]byte /* in_addr */
-- Address [4]byte /* in_addr */
-- Ifindex int32
--}
--
--type IPv6Mreq struct {
-- Multiaddr [16]byte /* in6_addr */
-- Interface uint32
--}
--
--type PacketMreq struct {
-- Ifindex int32
-- Type uint16
-- Alen uint16
-- Address [8]uint8
--}
--
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- _ [4]byte
- Iov *Iovec
- Iovlen uint64
- Control *byte
-@@ -313,277 +154,16 @@ type Cmsghdr struct {
- Type int32
- }
-
--type Inet4Pktinfo struct {
-- Ifindex int32
-- Spec_dst [4]byte /* in_addr */
-- Addr [4]byte /* in_addr */
--}
--
--type Inet6Pktinfo struct {
-- Addr [16]byte /* in6_addr */
-- Ifindex uint32
--}
--
--type IPv6MTUInfo struct {
-- Addr RawSockaddrInet6
-- Mtu uint32
--}
--
--type ICMPv6Filter struct {
-- Data [8]uint32
--}
--
--type Ucred struct {
-- Pid int32
-- Uid uint32
-- Gid uint32
--}
--
--type TCPInfo struct {
-- State uint8
-- Ca_state uint8
-- Retransmits uint8
-- Probes uint8
-- Backoff uint8
-- Options uint8
-- _ [2]byte
-- Rto uint32
-- Ato uint32
-- Snd_mss uint32
-- Rcv_mss uint32
-- Unacked uint32
-- Sacked uint32
-- Lost uint32
-- Retrans uint32
-- Fackets uint32
-- Last_data_sent uint32
-- Last_ack_sent uint32
-- Last_data_recv uint32
-- Last_ack_recv uint32
-- Pmtu uint32
-- Rcv_ssthresh uint32
-- Rtt uint32
-- Rttvar uint32
-- Snd_ssthresh uint32
-- Snd_cwnd uint32
-- Advmss uint32
-- Reordering uint32
-- Rcv_rtt uint32
-- Rcv_space uint32
-- Total_retrans uint32
--}
--
--const (
-- SizeofSockaddrInet4 = 0x10
-- SizeofSockaddrInet6 = 0x1c
-- SizeofSockaddrAny = 0x70
-- SizeofSockaddrUnix = 0x6e
-- SizeofSockaddrLinklayer = 0x14
-- SizeofSockaddrNetlink = 0xc
-- SizeofSockaddrHCI = 0x6
-- SizeofSockaddrCAN = 0x10
-- SizeofSockaddrALG = 0x58
-- SizeofSockaddrVM = 0x10
-- SizeofLinger = 0x8
-- SizeofIovec = 0x10
-- SizeofIPMreq = 0x8
-- SizeofIPMreqn = 0xc
-- SizeofIPv6Mreq = 0x14
-- SizeofPacketMreq = 0x10
-- SizeofMsghdr = 0x38
-- SizeofCmsghdr = 0x10
-- SizeofInet4Pktinfo = 0xc
-- SizeofInet6Pktinfo = 0x14
-- SizeofIPv6MTUInfo = 0x20
-- SizeofICMPv6Filter = 0x20
-- SizeofUcred = 0xc
-- SizeofTCPInfo = 0x68
--)
--
- const (
-- IFA_UNSPEC = 0x0
-- IFA_ADDRESS = 0x1
-- IFA_LOCAL = 0x2
-- IFA_LABEL = 0x3
-- IFA_BROADCAST = 0x4
-- IFA_ANYCAST = 0x5
-- IFA_CACHEINFO = 0x6
-- IFA_MULTICAST = 0x7
-- IFLA_UNSPEC = 0x0
-- IFLA_ADDRESS = 0x1
-- IFLA_BROADCAST = 0x2
-- IFLA_IFNAME = 0x3
-- IFLA_MTU = 0x4
-- IFLA_LINK = 0x5
-- IFLA_QDISC = 0x6
-- IFLA_STATS = 0x7
-- IFLA_COST = 0x8
-- IFLA_PRIORITY = 0x9
-- IFLA_MASTER = 0xa
-- IFLA_WIRELESS = 0xb
-- IFLA_PROTINFO = 0xc
-- IFLA_TXQLEN = 0xd
-- IFLA_MAP = 0xe
-- IFLA_WEIGHT = 0xf
-- IFLA_OPERSTATE = 0x10
-- IFLA_LINKMODE = 0x11
-- IFLA_LINKINFO = 0x12
-- IFLA_NET_NS_PID = 0x13
-- IFLA_IFALIAS = 0x14
-- IFLA_MAX = 0x2b
-- RT_SCOPE_UNIVERSE = 0x0
-- RT_SCOPE_SITE = 0xc8
-- RT_SCOPE_LINK = 0xfd
-- RT_SCOPE_HOST = 0xfe
-- RT_SCOPE_NOWHERE = 0xff
-- RT_TABLE_UNSPEC = 0x0
-- RT_TABLE_COMPAT = 0xfc
-- RT_TABLE_DEFAULT = 0xfd
-- RT_TABLE_MAIN = 0xfe
-- RT_TABLE_LOCAL = 0xff
-- RT_TABLE_MAX = 0xffffffff
-- RTA_UNSPEC = 0x0
-- RTA_DST = 0x1
-- RTA_SRC = 0x2
-- RTA_IIF = 0x3
-- RTA_OIF = 0x4
-- RTA_GATEWAY = 0x5
-- RTA_PRIORITY = 0x6
-- RTA_PREFSRC = 0x7
-- RTA_METRICS = 0x8
-- RTA_MULTIPATH = 0x9
-- RTA_FLOW = 0xb
-- RTA_CACHEINFO = 0xc
-- RTA_TABLE = 0xf
-- RTN_UNSPEC = 0x0
-- RTN_UNICAST = 0x1
-- RTN_LOCAL = 0x2
-- RTN_BROADCAST = 0x3
-- RTN_ANYCAST = 0x4
-- RTN_MULTICAST = 0x5
-- RTN_BLACKHOLE = 0x6
-- RTN_UNREACHABLE = 0x7
-- RTN_PROHIBIT = 0x8
-- RTN_THROW = 0x9
-- RTN_NAT = 0xa
-- RTN_XRESOLVE = 0xb
-- RTNLGRP_NONE = 0x0
-- RTNLGRP_LINK = 0x1
-- RTNLGRP_NOTIFY = 0x2
-- RTNLGRP_NEIGH = 0x3
-- RTNLGRP_TC = 0x4
-- RTNLGRP_IPV4_IFADDR = 0x5
-- RTNLGRP_IPV4_MROUTE = 0x6
-- RTNLGRP_IPV4_ROUTE = 0x7
-- RTNLGRP_IPV4_RULE = 0x8
-- RTNLGRP_IPV6_IFADDR = 0x9
-- RTNLGRP_IPV6_MROUTE = 0xa
-- RTNLGRP_IPV6_ROUTE = 0xb
-- RTNLGRP_IPV6_IFINFO = 0xc
-- RTNLGRP_IPV6_PREFIX = 0x12
-- RTNLGRP_IPV6_RULE = 0x13
-- RTNLGRP_ND_USEROPT = 0x14
-- SizeofNlMsghdr = 0x10
-- SizeofNlMsgerr = 0x14
-- SizeofRtGenmsg = 0x1
-- SizeofNlAttr = 0x4
-- SizeofRtAttr = 0x4
-- SizeofIfInfomsg = 0x10
-- SizeofIfAddrmsg = 0x8
-- SizeofRtMsg = 0xc
-- SizeofRtNexthop = 0x8
-+ SizeofIovec = 0x10
-+ SizeofMsghdr = 0x38
-+ SizeofCmsghdr = 0x10
- )
-
--type NlMsghdr struct {
-- Len uint32
-- Type uint16
-- Flags uint16
-- Seq uint32
-- Pid uint32
--}
--
--type NlMsgerr struct {
-- Error int32
-- Msg NlMsghdr
--}
--
--type RtGenmsg struct {
-- Family uint8
--}
--
--type NlAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type RtAttr struct {
-- Len uint16
-- Type uint16
--}
--
--type IfInfomsg struct {
-- Family uint8
-- _ uint8
-- Type uint16
-- Index int32
-- Flags uint32
-- Change uint32
--}
--
--type IfAddrmsg struct {
-- Family uint8
-- Prefixlen uint8
-- Flags uint8
-- Scope uint8
-- Index uint32
--}
--
--type RtMsg struct {
-- Family uint8
-- Dst_len uint8
-- Src_len uint8
-- Tos uint8
-- Table uint8
-- Protocol uint8
-- Scope uint8
-- Type uint8
-- Flags uint32
--}
--
--type RtNexthop struct {
-- Len uint16
-- Flags uint8
-- Hops uint8
-- Ifindex int32
--}
--
- const (
-- SizeofSockFilter = 0x8
-- SizeofSockFprog = 0x10
-+ SizeofSockFprog = 0x10
- )
-
--type SockFilter struct {
-- Code uint16
-- Jt uint8
-- Jf uint8
-- K uint32
--}
--
--type SockFprog struct {
-- Len uint16
-- _ [6]byte
-- Filter *SockFilter
--}
--
--type InotifyEvent struct {
-- Wd int32
-- Mask uint32
-- Cookie uint32
-- Len uint32
--}
--
--const SizeofInotifyEvent = 0x10
--
- type PtraceRegs struct {
- Psw PtracePsw
- Gprs [16]uint64
-@@ -601,18 +181,15 @@ type PtracePsw struct {
-
- type PtraceFpregs struct {
- Fpc uint32
-- _ [4]byte
- Fprs [16]float64
- }
-
- type PtracePer struct {
- _ [0]uint64
-- _ [24]byte
-- _ [8]byte
-+ _ [32]byte
- Starting_addr uint64
- Ending_addr uint64
- Perc_atmid uint16
-- _ [6]byte
- Address uint64
- Access_id uint8
- _ [7]byte
-@@ -633,7 +210,6 @@ type Sysinfo_t struct {
- Freeswap uint64
- Procs uint16
- Pad uint16
-- _ [4]byte
- Totalhigh uint64
- Freehigh uint64
- Unit uint32
-@@ -641,18 +217,8 @@ type Sysinfo_t struct {
- _ [4]byte
- }
-
--type Utsname struct {
-- Sysname [65]int8
-- Nodename [65]int8
-- Release [65]int8
-- Version [65]int8
-- Machine [65]int8
-- Domainname [65]int8
--}
--
- type Ustat_t struct {
- Tfree int32
-- _ [4]byte
- Tinode uint64
- Fname [6]int8
- Fpack [6]int8
-@@ -667,37 +233,14 @@ type EpollEvent struct {
- }
-
- const (
-- AT_FDCWD = -0x64
-- AT_REMOVEDIR = 0x200
-- AT_SYMLINK_FOLLOW = 0x400
-- AT_SYMLINK_NOFOLLOW = 0x100
--)
--
--type PollFd struct {
-- Fd int32
-- Events int16
-- Revents int16
--}
--
--const (
-- POLLIN = 0x1
-- POLLPRI = 0x2
-- POLLOUT = 0x4
- POLLRDHUP = 0x2000
-- POLLERR = 0x8
-- POLLHUP = 0x10
-- POLLNVAL = 0x20
- )
-
- type Sigset_t struct {
-- _ [16]uint64
-+ Val [16]uint64
- }
-
--const RNDGETENTCNT = 0x80045200
--
--const PERF_IOC_FLAG_GROUP = 0x1
--
--const _SC_PAGESIZE = 0x1e
-+const _C__NSIG = 0x41
-
- type Termios struct {
- Iflag uint32
-@@ -710,20 +253,11 @@ type Termios struct {
- Ospeed uint32
- }
-
--type Winsize struct {
-- Row uint16
-- Col uint16
-- Xpixel uint16
-- Ypixel uint16
--}
--
- type Taskstats struct {
- Version uint16
-- _ [2]byte
- Ac_exitcode uint32
- Ac_flag uint8
- Ac_nice uint8
-- _ [6]byte
- Cpu_count uint64
- Cpu_delay_total uint64
- Blkio_count uint64
-@@ -741,7 +275,6 @@ type Taskstats struct {
- Ac_pid uint32
- Ac_ppid uint32
- Ac_btime uint32
-- _ [4]byte
- Ac_etime uint64
- Ac_utime uint64
- Ac_stime uint64
-@@ -765,55 +298,320 @@ type Taskstats struct {
- Cpu_scaled_run_real_total uint64
- Freepages_count uint64
- Freepages_delay_total uint64
-+ Thrashing_count uint64
-+ Thrashing_delay_total uint64
-+ Ac_btime64 uint64
-+}
-+
-+type cpuMask uint64
-+
-+const (
-+ _NCPUBITS = 0x40
-+)
-+
-+const (
-+ CBitFieldMaskBit0 = 0x8000000000000000
-+ CBitFieldMaskBit1 = 0x4000000000000000
-+ CBitFieldMaskBit2 = 0x2000000000000000
-+ CBitFieldMaskBit3 = 0x1000000000000000
-+ CBitFieldMaskBit4 = 0x800000000000000
-+ CBitFieldMaskBit5 = 0x400000000000000
-+ CBitFieldMaskBit6 = 0x200000000000000
-+ CBitFieldMaskBit7 = 0x100000000000000
-+ CBitFieldMaskBit8 = 0x80000000000000
-+ CBitFieldMaskBit9 = 0x40000000000000
-+ CBitFieldMaskBit10 = 0x20000000000000
-+ CBitFieldMaskBit11 = 0x10000000000000
-+ CBitFieldMaskBit12 = 0x8000000000000
-+ CBitFieldMaskBit13 = 0x4000000000000
-+ CBitFieldMaskBit14 = 0x2000000000000
-+ CBitFieldMaskBit15 = 0x1000000000000
-+ CBitFieldMaskBit16 = 0x800000000000
-+ CBitFieldMaskBit17 = 0x400000000000
-+ CBitFieldMaskBit18 = 0x200000000000
-+ CBitFieldMaskBit19 = 0x100000000000
-+ CBitFieldMaskBit20 = 0x80000000000
-+ CBitFieldMaskBit21 = 0x40000000000
-+ CBitFieldMaskBit22 = 0x20000000000
-+ CBitFieldMaskBit23 = 0x10000000000
-+ CBitFieldMaskBit24 = 0x8000000000
-+ CBitFieldMaskBit25 = 0x4000000000
-+ CBitFieldMaskBit26 = 0x2000000000
-+ CBitFieldMaskBit27 = 0x1000000000
-+ CBitFieldMaskBit28 = 0x800000000
-+ CBitFieldMaskBit29 = 0x400000000
-+ CBitFieldMaskBit30 = 0x200000000
-+ CBitFieldMaskBit31 = 0x100000000
-+ CBitFieldMaskBit32 = 0x80000000
-+ CBitFieldMaskBit33 = 0x40000000
-+ CBitFieldMaskBit34 = 0x20000000
-+ CBitFieldMaskBit35 = 0x10000000
-+ CBitFieldMaskBit36 = 0x8000000
-+ CBitFieldMaskBit37 = 0x4000000
-+ CBitFieldMaskBit38 = 0x2000000
-+ CBitFieldMaskBit39 = 0x1000000
-+ CBitFieldMaskBit40 = 0x800000
-+ CBitFieldMaskBit41 = 0x400000
-+ CBitFieldMaskBit42 = 0x200000
-+ CBitFieldMaskBit43 = 0x100000
-+ CBitFieldMaskBit44 = 0x80000
-+ CBitFieldMaskBit45 = 0x40000
-+ CBitFieldMaskBit46 = 0x20000
-+ CBitFieldMaskBit47 = 0x10000
-+ CBitFieldMaskBit48 = 0x8000
-+ CBitFieldMaskBit49 = 0x4000
-+ CBitFieldMaskBit50 = 0x2000
-+ CBitFieldMaskBit51 = 0x1000
-+ CBitFieldMaskBit52 = 0x800
-+ CBitFieldMaskBit53 = 0x400
-+ CBitFieldMaskBit54 = 0x200
-+ CBitFieldMaskBit55 = 0x100
-+ CBitFieldMaskBit56 = 0x80
-+ CBitFieldMaskBit57 = 0x40
-+ CBitFieldMaskBit58 = 0x20
-+ CBitFieldMaskBit59 = 0x10
-+ CBitFieldMaskBit60 = 0x8
-+ CBitFieldMaskBit61 = 0x4
-+ CBitFieldMaskBit62 = 0x2
-+ CBitFieldMaskBit63 = 0x1
-+)
-+
-+type SockaddrStorage struct {
-+ Family uint16
-+ _ [118]int8
-+ _ uint64
-+}
-+
-+type HDGeometry struct {
-+ Heads uint8
-+ Sectors uint8
-+ Cylinders uint16
-+ Start uint64
-+}
-+
-+type Statfs_t struct {
-+ Type uint32
-+ Bsize uint32
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Files uint64
-+ Ffree uint64
-+ Fsid Fsid
-+ Namelen uint32
-+ Frsize uint32
-+ Flags uint32
-+ Spare [4]uint32
-+ _ [4]byte
-+}
-+
-+type TpacketHdr struct {
-+ Status uint64
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Usec uint32
-+ _ [4]byte
- }
-
- const (
-- TASKSTATS_CMD_UNSPEC = 0x0
-- TASKSTATS_CMD_GET = 0x1
-- TASKSTATS_CMD_NEW = 0x2
-- TASKSTATS_TYPE_UNSPEC = 0x0
-- TASKSTATS_TYPE_PID = 0x1
-- TASKSTATS_TYPE_TGID = 0x2
-- TASKSTATS_TYPE_STATS = 0x3
-- TASKSTATS_TYPE_AGGR_PID = 0x4
-- TASKSTATS_TYPE_AGGR_TGID = 0x5
-- TASKSTATS_TYPE_NULL = 0x6
-- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
-- TASKSTATS_CMD_ATTR_PID = 0x1
-- TASKSTATS_CMD_ATTR_TGID = 0x2
-- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
-- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-+ SizeofTpacketHdr = 0x20
- )
-
--type Genlmsghdr struct {
-- Cmd uint8
-- Version uint8
-- Reserved uint16
-+type RTCPLLInfo struct {
-+ Ctrl int32
-+ Value int32
-+ Max int32
-+ Min int32
-+ Posmult int32
-+ Negmult int32
-+ Clock int64
-+}
-+
-+type BlkpgPartition struct {
-+ Start int64
-+ Length int64
-+ Pno int32
-+ Devname [64]uint8
-+ Volname [64]uint8
-+ _ [4]byte
- }
-
- const (
-- CTRL_CMD_UNSPEC = 0x0
-- CTRL_CMD_NEWFAMILY = 0x1
-- CTRL_CMD_DELFAMILY = 0x2
-- CTRL_CMD_GETFAMILY = 0x3
-- CTRL_CMD_NEWOPS = 0x4
-- CTRL_CMD_DELOPS = 0x5
-- CTRL_CMD_GETOPS = 0x6
-- CTRL_CMD_NEWMCAST_GRP = 0x7
-- CTRL_CMD_DELMCAST_GRP = 0x8
-- CTRL_CMD_GETMCAST_GRP = 0x9
-- CTRL_ATTR_UNSPEC = 0x0
-- CTRL_ATTR_FAMILY_ID = 0x1
-- CTRL_ATTR_FAMILY_NAME = 0x2
-- CTRL_ATTR_VERSION = 0x3
-- CTRL_ATTR_HDRSIZE = 0x4
-- CTRL_ATTR_MAXATTR = 0x5
-- CTRL_ATTR_OPS = 0x6
-- CTRL_ATTR_MCAST_GROUPS = 0x7
-- CTRL_ATTR_OP_UNSPEC = 0x0
-- CTRL_ATTR_OP_ID = 0x1
-- CTRL_ATTR_OP_FLAGS = 0x2
-- CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
-- CTRL_ATTR_MCAST_GRP_NAME = 0x1
-- CTRL_ATTR_MCAST_GRP_ID = 0x2
-+ BLKPG = 0x1269
- )
-+
-+type XDPUmemReg struct {
-+ Addr uint64
-+ Len uint64
-+ Size uint32
-+ Headroom uint32
-+ Flags uint32
-+ _ [4]byte
-+}
-+
-+type CryptoUserAlg struct {
-+ Name [64]int8
-+ Driver_name [64]int8
-+ Module_name [64]int8
-+ Type uint32
-+ Mask uint32
-+ Refcnt uint32
-+ Flags uint32
-+}
-+
-+type CryptoStatAEAD struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatAKCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Verify_cnt uint64
-+ Sign_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatCompress struct {
-+ Type [64]int8
-+ Compress_cnt uint64
-+ Compress_tlen uint64
-+ Decompress_cnt uint64
-+ Decompress_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatHash struct {
-+ Type [64]int8
-+ Hash_cnt uint64
-+ Hash_tlen uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatKPP struct {
-+ Type [64]int8
-+ Setsecret_cnt uint64
-+ Generate_public_key_cnt uint64
-+ Compute_shared_secret_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatRNG struct {
-+ Type [64]int8
-+ Generate_cnt uint64
-+ Generate_tlen uint64
-+ Seed_cnt uint64
-+ Err_cnt uint64
-+}
-+
-+type CryptoStatLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportLarval struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportHash struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Digestsize uint32
-+}
-+
-+type CryptoReportCipher struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+}
-+
-+type CryptoReportBlkCipher struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportAEAD struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Maxauthsize uint32
-+ Ivsize uint32
-+}
-+
-+type CryptoReportComp struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportRNG struct {
-+ Type [64]int8
-+ Seedsize uint32
-+}
-+
-+type CryptoReportAKCipher struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportKPP struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportAcomp struct {
-+ Type [64]int8
-+}
-+
-+type LoopInfo struct {
-+ Number int32
-+ Device uint16
-+ Inode uint64
-+ Rdevice uint16
-+ Offset int32
-+ Encrypt_type int32
-+ Encrypt_key_size int32
-+ Flags int32
-+ Name [64]int8
-+ Encrypt_key [32]uint8
-+ Init [2]uint64
-+ Reserved [4]int8
-+ _ [4]byte
-+}
-+
-+type TIPCSubscr struct {
-+ Seq TIPCServiceRange
-+ Timeout uint32
-+ Filter uint32
-+ Handle [8]int8
-+}
-+
-+type TIPCSIOCLNReq struct {
-+ Peer uint32
-+ Id uint32
-+ Linkname [68]int8
-+}
-+
-+type TIPCSIOCNodeIDReq struct {
-+ Peer uint32
-+ Id [16]int8
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
-index 22bdab96..33a73bf1 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
-@@ -1,23 +1,17 @@
-+// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-+
- // +build sparc64,linux
--// Created by cgo -godefs - DO NOT EDIT
--// cgo -godefs types_linux.go | go run mkpost.go
-
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-- PathMax = 0x1000
-+ SizeofPtr = 0x8
-+ SizeofLong = 0x8
- )
-
- type (
-- _C_short int16
-- _C_int int32
-- _C_long int64
-- _C_long_long int64
-+ _C_long int64
- )
-
- type Timespec struct {
-@@ -26,20 +20,18 @@ type Timespec struct {
- }
-
- type Timeval struct {
-- Sec int64
-- Usec int32
-- Pad_cgo_0 [4]byte
-+ Sec int64
-+ Usec int32
-+ _ [4]byte
- }
-
- type Timex struct {
- Modes uint32
-- Pad_cgo_0 [4]byte
- Offset int64
- Freq int64
- Maxerror int64
- Esterror int64
- Status int32
-- Pad_cgo_1 [4]byte
- Constant int64
- Precision int64
- Tolerance int64
-@@ -48,14 +40,13 @@ type Timex struct {
- Ppsfreq int64
- Jitter int64
- Shift int32
-- Pad_cgo_2 [4]byte
- Stabil int64
- Jitcnt int64
- Calcnt int64
- Errcnt int64
- Stbcnt int64
- Tai int32
-- Pad_cgo_3 [44]byte
-+ _ [44]byte
- }
-
- type Time_t int64
-@@ -91,149 +82,50 @@ type Rusage struct {
- Nivcsw int64
- }
-
--type Rlimit struct {
-- Cur uint64
-- Max uint64
--}
--
--type _Gid_t uint32
--
- type Stat_t struct {
-- Dev uint64
-- X__pad1 uint16
-- Pad_cgo_0 [6]byte
-- Ino uint64
-- Mode uint32
-- Nlink uint32
-- Uid uint32
-- Gid uint32
-- Rdev uint64
-- X__pad2 uint16
-- Pad_cgo_1 [6]byte
-- Size int64
-- Blksize int64
-- Blocks int64
-- Atim Timespec
-- Mtim Timespec
-- Ctim Timespec
-- X__glibc_reserved4 uint64
-- X__glibc_reserved5 uint64
--}
--
--type Statfs_t struct {
-- Type int64
-- Bsize int64
-- Blocks uint64
-- Bfree uint64
-- Bavail uint64
-- Files uint64
-- Ffree uint64
-- Fsid Fsid
-- Namelen int64
-- Frsize int64
-- Flags int64
-- Spare [4]int64
-+ Dev uint64
-+ _ uint16
-+ Ino uint64
-+ Mode uint32
-+ Nlink uint32
-+ Uid uint32
-+ Gid uint32
-+ Rdev uint64
-+ _ uint16
-+ Size int64
-+ Blksize int64
-+ Blocks int64
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ _ uint64
-+ _ uint64
- }
-
- type Dirent struct {
-- Ino uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Name [256]int8
-- Pad_cgo_0 [5]byte
--}
--
--type Fsid struct {
-- X__val [2]int32
-+ Ino uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Name [256]int8
-+ _ [5]byte
- }
-
- type Flock_t struct {
-- Type int16
-- Whence int16
-- Pad_cgo_0 [4]byte
-- Start int64
-- Len int64
-- Pid int32
-- X__glibc_reserved int16
-- Pad_cgo_1 [2]byte
-+ Type int16
-+ Whence int16
-+ Start int64
-+ Len int64
-+ Pid int32
-+ _ int16
-+ _ [2]byte
- }
-
- const (
-- FADV_NORMAL = 0x0
-- FADV_RANDOM = 0x1
-- FADV_SEQUENTIAL = 0x2
-- FADV_WILLNEED = 0x3
-- FADV_DONTNEED = 0x4
-- FADV_NOREUSE = 0x5
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
- )
-
--type RawSockaddrInet4 struct {
-- Family uint16
-- Port uint16
-- Addr [4]byte /* in_addr */
-- Zero [8]uint8
--}
--
--type RawSockaddrInet6 struct {
-- Family uint16
-- Port uint16
-- Flowinfo uint32
-- Addr [16]byte /* in6_addr */
-- Scope_id uint32
--}
--
--type RawSockaddrUnix struct {
-- Family uint16
-- Path [108]int8
--}
--
--type RawSockaddrLinklayer struct {
-- Family uint16
-- Protocol uint16
-- Ifindex int32
-- Hatype uint16
-- Pkttype uint8
-- Halen uint8
-- Addr [8]uint8
--}
--
--type RawSockaddrNetlink struct {
-- Family uint16
-- Pad uint16
-- Pid uint32
-- Groups uint32
--}
--
--type RawSockaddrHCI struct {
-- Family uint16
-- Dev uint16
-- Channel uint16
--}
--
--type RawSockaddrCAN struct {
-- Family uint16
-- Pad_cgo_0 [2]byte
-- Ifindex int32
-- Addr [8]byte
--}
--
--type RawSockaddrALG struct {
-- Family uint16
-- Type [14]uint8
-- Feat uint32
-- Mask uint32
-- Name [64]uint8
--}
--
--type RawSockaddrVM struct {
-- Family uint16
-- Reserved1 uint16
-- Port uint32
-- Cid uint32
-- Zero [4]uint8
--}
--
- type RawSockaddr struct {
- Family uint16
- Data [14]int8
-@@ -244,44 +136,20 @@ type RawSockaddrAny struct {
- Pad [96]int8
- }
-
--type _Socklen uint32
--
--type Linger struct {
-- Onoff int32
-- Linger int32
--}
--
- type Iovec struct {
- Base *byte
- Len uint64
- }
-
--type IPMreq struct {
-- Multiaddr [4]byte /* in_addr */
-- Interface [4]byte /* in_addr */
--}
--
--type IPMreqn struct {
-- Multiaddr [4]byte /* in_addr */
-- Address [4]byte /* in_addr */
-- Ifindex int32
--}
--
--type IPv6Mreq struct {
-- Multiaddr [16]byte /* in6_addr */
-- Interface uint32
--}
--
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
- Iov *Iovec
- Iovlen uint64
- Control *byte
- Controllen uint64
- Flags int32
-- Pad_cgo_1 [4]byte
-+ _ [4]byte
- }
-
- type Cmsghdr struct {
-@@ -290,377 +158,441 @@ type Cmsghdr struct {
- Type int32
- }
-
--type Inet4Pktinfo struct {
-- Ifindex int32
-- Spec_dst [4]byte /* in_addr */
-- Addr [4]byte /* in_addr */
--}
--
--type Inet6Pktinfo struct {
-- Addr [16]byte /* in6_addr */
-- Ifindex uint32
--}
--
--type IPv6MTUInfo struct {
-- Addr RawSockaddrInet6
-- Mtu uint32
--}
--
--type ICMPv6Filter struct {
-- Data [8]uint32
--}
--
--type Ucred struct {
-- Pid int32
-- Uid uint32
-- Gid uint32
--}
--
--type TCPInfo struct {
-- State uint8
-- Ca_state uint8
-- Retransmits uint8
-- Probes uint8
-- Backoff uint8
-- Options uint8
-- Pad_cgo_0 [2]byte
-- Rto uint32
-- Ato uint32
-- Snd_mss uint32
-- Rcv_mss uint32
-- Unacked uint32
-- Sacked uint32
-- Lost uint32
-- Retrans uint32
-- Fackets uint32
-- Last_data_sent uint32
-- Last_ack_sent uint32
-- Last_data_recv uint32
-- Last_ack_recv uint32
-- Pmtu uint32
-- Rcv_ssthresh uint32
-- Rtt uint32
-- Rttvar uint32
-- Snd_ssthresh uint32
-- Snd_cwnd uint32
-- Advmss uint32
-- Reordering uint32
-- Rcv_rtt uint32
-- Rcv_space uint32
-- Total_retrans uint32
--}
--
- const (
-- SizeofSockaddrInet4 = 0x10
-- SizeofSockaddrInet6 = 0x1c
-- SizeofSockaddrAny = 0x70
-- SizeofSockaddrUnix = 0x6e
-- SizeofSockaddrLinklayer = 0x14
-- SizeofSockaddrNetlink = 0xc
-- SizeofSockaddrHCI = 0x6
-- SizeofSockaddrCAN = 0x10
-- SizeofSockaddrALG = 0x58
-- SizeofSockaddrVM = 0x10
-- SizeofLinger = 0x8
-- SizeofIPMreq = 0x8
-- SizeofIPMreqn = 0xc
-- SizeofIPv6Mreq = 0x14
-- SizeofMsghdr = 0x38
-- SizeofCmsghdr = 0x10
-- SizeofInet4Pktinfo = 0xc
-- SizeofInet6Pktinfo = 0x14
-- SizeofIPv6MTUInfo = 0x20
-- SizeofICMPv6Filter = 0x20
-- SizeofUcred = 0xc
-- SizeofTCPInfo = 0x68
-+ SizeofIovec = 0x10
-+ SizeofMsghdr = 0x38
-+ SizeofCmsghdr = 0x10
- )
-
- const (
-- IFA_UNSPEC = 0x0
-- IFA_ADDRESS = 0x1
-- IFA_LOCAL = 0x2
-- IFA_LABEL = 0x3
-- IFA_BROADCAST = 0x4
-- IFA_ANYCAST = 0x5
-- IFA_CACHEINFO = 0x6
-- IFA_MULTICAST = 0x7
-- IFLA_UNSPEC = 0x0
-- IFLA_ADDRESS = 0x1
-- IFLA_BROADCAST = 0x2
-- IFLA_IFNAME = 0x3
-- IFLA_MTU = 0x4
-- IFLA_LINK = 0x5
-- IFLA_QDISC = 0x6
-- IFLA_STATS = 0x7
-- IFLA_COST = 0x8
-- IFLA_PRIORITY = 0x9
-- IFLA_MASTER = 0xa
-- IFLA_WIRELESS = 0xb
-- IFLA_PROTINFO = 0xc
-- IFLA_TXQLEN = 0xd
-- IFLA_MAP = 0xe
-- IFLA_WEIGHT = 0xf
-- IFLA_OPERSTATE = 0x10
-- IFLA_LINKMODE = 0x11
-- IFLA_LINKINFO = 0x12
-- IFLA_NET_NS_PID = 0x13
-- IFLA_IFALIAS = 0x14
-- IFLA_MAX = 0x2a
-- RT_SCOPE_UNIVERSE = 0x0
-- RT_SCOPE_SITE = 0xc8
-- RT_SCOPE_LINK = 0xfd
-- RT_SCOPE_HOST = 0xfe
-- RT_SCOPE_NOWHERE = 0xff
-- RT_TABLE_UNSPEC = 0x0
-- RT_TABLE_COMPAT = 0xfc
-- RT_TABLE_DEFAULT = 0xfd
-- RT_TABLE_MAIN = 0xfe
-- RT_TABLE_LOCAL = 0xff
-- RT_TABLE_MAX = 0xffffffff
-- RTA_UNSPEC = 0x0
-- RTA_DST = 0x1
-- RTA_SRC = 0x2
-- RTA_IIF = 0x3
-- RTA_OIF = 0x4
-- RTA_GATEWAY = 0x5
-- RTA_PRIORITY = 0x6
-- RTA_PREFSRC = 0x7
-- RTA_METRICS = 0x8
-- RTA_MULTIPATH = 0x9
-- RTA_FLOW = 0xb
-- RTA_CACHEINFO = 0xc
-- RTA_TABLE = 0xf
-- RTN_UNSPEC = 0x0
-- RTN_UNICAST = 0x1
-- RTN_LOCAL = 0x2
-- RTN_BROADCAST = 0x3
-- RTN_ANYCAST = 0x4
-- RTN_MULTICAST = 0x5
-- RTN_BLACKHOLE = 0x6
-- RTN_UNREACHABLE = 0x7
-- RTN_PROHIBIT = 0x8
-- RTN_THROW = 0x9
-- RTN_NAT = 0xa
-- RTN_XRESOLVE = 0xb
-- RTNLGRP_NONE = 0x0
-- RTNLGRP_LINK = 0x1
-- RTNLGRP_NOTIFY = 0x2
-- RTNLGRP_NEIGH = 0x3
-- RTNLGRP_TC = 0x4
-- RTNLGRP_IPV4_IFADDR = 0x5
-- RTNLGRP_IPV4_MROUTE = 0x6
-- RTNLGRP_IPV4_ROUTE = 0x7
-- RTNLGRP_IPV4_RULE = 0x8
-- RTNLGRP_IPV6_IFADDR = 0x9
-- RTNLGRP_IPV6_MROUTE = 0xa
-- RTNLGRP_IPV6_ROUTE = 0xb
-- RTNLGRP_IPV6_IFINFO = 0xc
-- RTNLGRP_IPV6_PREFIX = 0x12
-- RTNLGRP_IPV6_RULE = 0x13
-- RTNLGRP_ND_USEROPT = 0x14
-- SizeofNlMsghdr = 0x10
-- SizeofNlMsgerr = 0x14
-- SizeofRtGenmsg = 0x1
-- SizeofNlAttr = 0x4
-- SizeofRtAttr = 0x4
-- SizeofIfInfomsg = 0x10
-- SizeofIfAddrmsg = 0x8
-- SizeofRtMsg = 0xc
-- SizeofRtNexthop = 0x8
-+ SizeofSockFprog = 0x10
- )
-
--type NlMsghdr struct {
-- Len uint32
-- Type uint16
-- Flags uint16
-- Seq uint32
-- Pid uint32
-+type PtraceRegs struct {
-+ Regs [16]uint64
-+ Tstate uint64
-+ Tpc uint64
-+ Tnpc uint64
-+ Y uint32
-+ Magic uint32
- }
-
--type NlMsgerr struct {
-- Error int32
-- Msg NlMsghdr
-+type FdSet struct {
-+ Bits [16]int64
- }
-
--type RtGenmsg struct {
-- Family uint8
-+type Sysinfo_t struct {
-+ Uptime int64
-+ Loads [3]uint64
-+ Totalram uint64
-+ Freeram uint64
-+ Sharedram uint64
-+ Bufferram uint64
-+ Totalswap uint64
-+ Freeswap uint64
-+ Procs uint16
-+ Pad uint16
-+ Totalhigh uint64
-+ Freehigh uint64
-+ Unit uint32
-+ _ [0]int8
-+ _ [4]byte
- }
-
--type NlAttr struct {
-- Len uint16
-- Type uint16
-+type Ustat_t struct {
-+ Tfree int32
-+ Tinode uint64
-+ Fname [6]int8
-+ Fpack [6]int8
-+ _ [4]byte
- }
-
--type RtAttr struct {
-- Len uint16
-- Type uint16
-+type EpollEvent struct {
-+ Events uint32
-+ _ int32
-+ Fd int32
-+ Pad int32
- }
-
--type IfInfomsg struct {
-- Family uint8
-- X__ifi_pad uint8
-- Type uint16
-- Index int32
-- Flags uint32
-- Change uint32
-+const (
-+ POLLRDHUP = 0x800
-+)
-+
-+type Sigset_t struct {
-+ Val [16]uint64
- }
-
--type IfAddrmsg struct {
-- Family uint8
-- Prefixlen uint8
-- Flags uint8
-- Scope uint8
-- Index uint32
-+const _C__NSIG = 0x41
-+
-+type Termios struct {
-+ Iflag uint32
-+ Oflag uint32
-+ Cflag uint32
-+ Lflag uint32
-+ Line uint8
-+ Cc [19]uint8
-+ Ispeed uint32
-+ Ospeed uint32
- }
-
--type RtMsg struct {
-- Family uint8
-- Dst_len uint8
-- Src_len uint8
-- Tos uint8
-- Table uint8
-- Protocol uint8
-- Scope uint8
-- Type uint8
-- Flags uint32
-+type Taskstats struct {
-+ Version uint16
-+ Ac_exitcode uint32
-+ Ac_flag uint8
-+ Ac_nice uint8
-+ Cpu_count uint64
-+ Cpu_delay_total uint64
-+ Blkio_count uint64
-+ Blkio_delay_total uint64
-+ Swapin_count uint64
-+ Swapin_delay_total uint64
-+ Cpu_run_real_total uint64
-+ Cpu_run_virtual_total uint64
-+ Ac_comm [32]int8
-+ Ac_sched uint8
-+ Ac_pad [3]uint8
-+ _ [4]byte
-+ Ac_uid uint32
-+ Ac_gid uint32
-+ Ac_pid uint32
-+ Ac_ppid uint32
-+ Ac_btime uint32
-+ Ac_etime uint64
-+ Ac_utime uint64
-+ Ac_stime uint64
-+ Ac_minflt uint64
-+ Ac_majflt uint64
-+ Coremem uint64
-+ Virtmem uint64
-+ Hiwater_rss uint64
-+ Hiwater_vm uint64
-+ Read_char uint64
-+ Write_char uint64
-+ Read_syscalls uint64
-+ Write_syscalls uint64
-+ Read_bytes uint64
-+ Write_bytes uint64
-+ Cancelled_write_bytes uint64
-+ Nvcsw uint64
-+ Nivcsw uint64
-+ Ac_utimescaled uint64
-+ Ac_stimescaled uint64
-+ Cpu_scaled_run_real_total uint64
-+ Freepages_count uint64
-+ Freepages_delay_total uint64
-+ Thrashing_count uint64
-+ Thrashing_delay_total uint64
-+ Ac_btime64 uint64
-+}
-+
-+type cpuMask uint64
-+
-+const (
-+ _NCPUBITS = 0x40
-+)
-+
-+const (
-+ CBitFieldMaskBit0 = 0x8000000000000000
-+ CBitFieldMaskBit1 = 0x4000000000000000
-+ CBitFieldMaskBit2 = 0x2000000000000000
-+ CBitFieldMaskBit3 = 0x1000000000000000
-+ CBitFieldMaskBit4 = 0x800000000000000
-+ CBitFieldMaskBit5 = 0x400000000000000
-+ CBitFieldMaskBit6 = 0x200000000000000
-+ CBitFieldMaskBit7 = 0x100000000000000
-+ CBitFieldMaskBit8 = 0x80000000000000
-+ CBitFieldMaskBit9 = 0x40000000000000
-+ CBitFieldMaskBit10 = 0x20000000000000
-+ CBitFieldMaskBit11 = 0x10000000000000
-+ CBitFieldMaskBit12 = 0x8000000000000
-+ CBitFieldMaskBit13 = 0x4000000000000
-+ CBitFieldMaskBit14 = 0x2000000000000
-+ CBitFieldMaskBit15 = 0x1000000000000
-+ CBitFieldMaskBit16 = 0x800000000000
-+ CBitFieldMaskBit17 = 0x400000000000
-+ CBitFieldMaskBit18 = 0x200000000000
-+ CBitFieldMaskBit19 = 0x100000000000
-+ CBitFieldMaskBit20 = 0x80000000000
-+ CBitFieldMaskBit21 = 0x40000000000
-+ CBitFieldMaskBit22 = 0x20000000000
-+ CBitFieldMaskBit23 = 0x10000000000
-+ CBitFieldMaskBit24 = 0x8000000000
-+ CBitFieldMaskBit25 = 0x4000000000
-+ CBitFieldMaskBit26 = 0x2000000000
-+ CBitFieldMaskBit27 = 0x1000000000
-+ CBitFieldMaskBit28 = 0x800000000
-+ CBitFieldMaskBit29 = 0x400000000
-+ CBitFieldMaskBit30 = 0x200000000
-+ CBitFieldMaskBit31 = 0x100000000
-+ CBitFieldMaskBit32 = 0x80000000
-+ CBitFieldMaskBit33 = 0x40000000
-+ CBitFieldMaskBit34 = 0x20000000
-+ CBitFieldMaskBit35 = 0x10000000
-+ CBitFieldMaskBit36 = 0x8000000
-+ CBitFieldMaskBit37 = 0x4000000
-+ CBitFieldMaskBit38 = 0x2000000
-+ CBitFieldMaskBit39 = 0x1000000
-+ CBitFieldMaskBit40 = 0x800000
-+ CBitFieldMaskBit41 = 0x400000
-+ CBitFieldMaskBit42 = 0x200000
-+ CBitFieldMaskBit43 = 0x100000
-+ CBitFieldMaskBit44 = 0x80000
-+ CBitFieldMaskBit45 = 0x40000
-+ CBitFieldMaskBit46 = 0x20000
-+ CBitFieldMaskBit47 = 0x10000
-+ CBitFieldMaskBit48 = 0x8000
-+ CBitFieldMaskBit49 = 0x4000
-+ CBitFieldMaskBit50 = 0x2000
-+ CBitFieldMaskBit51 = 0x1000
-+ CBitFieldMaskBit52 = 0x800
-+ CBitFieldMaskBit53 = 0x400
-+ CBitFieldMaskBit54 = 0x200
-+ CBitFieldMaskBit55 = 0x100
-+ CBitFieldMaskBit56 = 0x80
-+ CBitFieldMaskBit57 = 0x40
-+ CBitFieldMaskBit58 = 0x20
-+ CBitFieldMaskBit59 = 0x10
-+ CBitFieldMaskBit60 = 0x8
-+ CBitFieldMaskBit61 = 0x4
-+ CBitFieldMaskBit62 = 0x2
-+ CBitFieldMaskBit63 = 0x1
-+)
-+
-+type SockaddrStorage struct {
-+ Family uint16
-+ _ [118]int8
-+ _ uint64
-+}
-+
-+type HDGeometry struct {
-+ Heads uint8
-+ Sectors uint8
-+ Cylinders uint16
-+ Start uint64
-+}
-+
-+type Statfs_t struct {
-+ Type int64
-+ Bsize int64
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Files uint64
-+ Ffree uint64
-+ Fsid Fsid
-+ Namelen int64
-+ Frsize int64
-+ Flags int64
-+ Spare [4]int64
- }
-
--type RtNexthop struct {
-- Len uint16
-- Flags uint8
-- Hops uint8
-- Ifindex int32
-+type TpacketHdr struct {
-+ Status uint64
-+ Len uint32
-+ Snaplen uint32
-+ Mac uint16
-+ Net uint16
-+ Sec uint32
-+ Usec uint32
-+ _ [4]byte
- }
-
- const (
-- SizeofSockFilter = 0x8
-- SizeofSockFprog = 0x10
-+ SizeofTpacketHdr = 0x20
- )
-
--type SockFilter struct {
-- Code uint16
-- Jt uint8
-- Jf uint8
-- K uint32
-+type RTCPLLInfo struct {
-+ Ctrl int32
-+ Value int32
-+ Max int32
-+ Min int32
-+ Posmult int32
-+ Negmult int32
-+ Clock int64
- }
-
--type SockFprog struct {
-- Len uint16
-- Pad_cgo_0 [6]byte
-- Filter *SockFilter
-+type BlkpgPartition struct {
-+ Start int64
-+ Length int64
-+ Pno int32
-+ Devname [64]uint8
-+ Volname [64]uint8
-+ _ [4]byte
- }
-
--type InotifyEvent struct {
-- Wd int32
-- Mask uint32
-- Cookie uint32
-- Len uint32
-+const (
-+ BLKPG = 0x20001269
-+)
-+
-+type XDPUmemReg struct {
-+ Addr uint64
-+ Len uint64
-+ Size uint32
-+ Headroom uint32
-+ Flags uint32
-+ _ [4]byte
- }
-
--const SizeofInotifyEvent = 0x10
-+type CryptoUserAlg struct {
-+ Name [64]int8
-+ Driver_name [64]int8
-+ Module_name [64]int8
-+ Type uint32
-+ Mask uint32
-+ Refcnt uint32
-+ Flags uint32
-+}
-
--type PtraceRegs struct {
-- Regs [16]uint64
-- Tstate uint64
-- Tpc uint64
-- Tnpc uint64
-- Y uint32
-- Magic uint32
-+type CryptoStatAEAD struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
- }
-
--type ptracePsw struct {
-+type CryptoStatAKCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Verify_cnt uint64
-+ Sign_cnt uint64
-+ Err_cnt uint64
- }
-
--type ptraceFpregs struct {
-+type CryptoStatCipher struct {
-+ Type [64]int8
-+ Encrypt_cnt uint64
-+ Encrypt_tlen uint64
-+ Decrypt_cnt uint64
-+ Decrypt_tlen uint64
-+ Err_cnt uint64
- }
-
--type ptracePer struct {
-+type CryptoStatCompress struct {
-+ Type [64]int8
-+ Compress_cnt uint64
-+ Compress_tlen uint64
-+ Decompress_cnt uint64
-+ Decompress_tlen uint64
-+ Err_cnt uint64
- }
-
--type FdSet struct {
-- Bits [16]int64
-+type CryptoStatHash struct {
-+ Type [64]int8
-+ Hash_cnt uint64
-+ Hash_tlen uint64
-+ Err_cnt uint64
- }
-
--type Sysinfo_t struct {
-- Uptime int64
-- Loads [3]uint64
-- Totalram uint64
-- Freeram uint64
-- Sharedram uint64
-- Bufferram uint64
-- Totalswap uint64
-- Freeswap uint64
-- Procs uint16
-- Pad uint16
-- Pad_cgo_0 [4]byte
-- Totalhigh uint64
-- Freehigh uint64
-- Unit uint32
-- X_f [0]int8
-- Pad_cgo_1 [4]byte
-+type CryptoStatKPP struct {
-+ Type [64]int8
-+ Setsecret_cnt uint64
-+ Generate_public_key_cnt uint64
-+ Compute_shared_secret_cnt uint64
-+ Err_cnt uint64
- }
-
--type Utsname struct {
-- Sysname [65]int8
-- Nodename [65]int8
-- Release [65]int8
-- Version [65]int8
-- Machine [65]int8
-- Domainname [65]int8
-+type CryptoStatRNG struct {
-+ Type [64]int8
-+ Generate_cnt uint64
-+ Generate_tlen uint64
-+ Seed_cnt uint64
-+ Err_cnt uint64
- }
-
--type Ustat_t struct {
-- Tfree int32
-- Pad_cgo_0 [4]byte
-- Tinode uint64
-- Fname [6]int8
-- Fpack [6]int8
-- Pad_cgo_1 [4]byte
-+type CryptoStatLarval struct {
-+ Type [64]int8
- }
-
--type EpollEvent struct {
-- Events uint32
-- X_padFd int32
-- Fd int32
-- Pad int32
-+type CryptoReportLarval struct {
-+ Type [64]int8
- }
-
--const (
-- AT_FDCWD = -0x64
-- AT_REMOVEDIR = 0x200
-- AT_SYMLINK_FOLLOW = 0x400
-- AT_SYMLINK_NOFOLLOW = 0x100
--)
-+type CryptoReportHash struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Digestsize uint32
-+}
-
--type PollFd struct {
-- Fd int32
-- Events int16
-- Revents int16
-+type CryptoReportCipher struct {
-+ Type [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
- }
-
--const (
-- POLLIN = 0x1
-- POLLPRI = 0x2
-- POLLOUT = 0x4
-- POLLRDHUP = 0x800
-- POLLERR = 0x8
-- POLLHUP = 0x10
-- POLLNVAL = 0x20
--)
-+type CryptoReportBlkCipher struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Min_keysize uint32
-+ Max_keysize uint32
-+ Ivsize uint32
-+}
-
--type Sigset_t struct {
-- X__val [16]uint64
-+type CryptoReportAEAD struct {
-+ Type [64]int8
-+ Geniv [64]int8
-+ Blocksize uint32
-+ Maxauthsize uint32
-+ Ivsize uint32
- }
-
--const _SC_PAGESIZE = 0x1e
-+type CryptoReportComp struct {
-+ Type [64]int8
-+}
-
--type Termios struct {
-- Iflag uint32
-- Oflag uint32
-- Cflag uint32
-- Lflag uint32
-- Line uint8
-- Cc [19]uint8
-- Ispeed uint32
-- Ospeed uint32
-+type CryptoReportRNG struct {
-+ Type [64]int8
-+ Seedsize uint32
-+}
-+
-+type CryptoReportAKCipher struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportKPP struct {
-+ Type [64]int8
-+}
-+
-+type CryptoReportAcomp struct {
-+ Type [64]int8
-+}
-+
-+type LoopInfo struct {
-+ Number int32
-+ Device uint32
-+ Inode uint64
-+ Rdevice uint32
-+ Offset int32
-+ Encrypt_type int32
-+ Encrypt_key_size int32
-+ Flags int32
-+ Name [64]int8
-+ Encrypt_key [32]uint8
-+ Init [2]uint64
-+ Reserved [4]int8
-+ _ [4]byte
-+}
-+
-+type TIPCSubscr struct {
-+ Seq TIPCServiceRange
-+ Timeout uint32
-+ Filter uint32
-+ Handle [8]int8
-+}
-+
-+type TIPCSIOCLNReq struct {
-+ Peer uint32
-+ Id uint32
-+ Linkname [68]int8
-+}
-+
-+type TIPCSIOCNodeIDReq struct {
-+ Peer uint32
-+ Id [16]int8
- }
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go
-index 42f99c0a..a89100c0 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go
-@@ -1,16 +1,16 @@
--// Created by cgo -godefs - DO NOT EDIT
--// cgo -godefs types_netbsd.go
-+// cgo -godefs types_netbsd.go | go run mkpost.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build 386,netbsd
-
- package unix
-
- const (
-- sizeofPtr = 0x4
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x4
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x4
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x4
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -57,27 +57,54 @@ type Rlimit struct {
- type _Gid_t uint32
-
- type Stat_t struct {
-- Dev uint64
-- Mode uint32
-- Ino uint64
-- Nlink uint32
-- Uid uint32
-- Gid uint32
-- Rdev uint64
-- Atimespec Timespec
-- Mtimespec Timespec
-- Ctimespec Timespec
-- Birthtimespec Timespec
-- Size int64
-- Blocks int64
-- Blksize uint32
-- Flags uint32
-- Gen uint32
-- Spare [2]uint32
-+ Dev uint64
-+ Mode uint32
-+ Ino uint64
-+ Nlink uint32
-+ Uid uint32
-+ Gid uint32
-+ Rdev uint64
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Btim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize uint32
-+ Flags uint32
-+ Gen uint32
-+ Spare [2]uint32
- }
-
- type Statfs_t [0]byte
-
-+type Statvfs_t struct {
-+ Flag uint32
-+ Bsize uint32
-+ Frsize uint32
-+ Iosize uint32
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Bresvd uint64
-+ Files uint64
-+ Ffree uint64
-+ Favail uint64
-+ Fresvd uint64
-+ Syncreads uint64
-+ Syncwrites uint64
-+ Asyncreads uint64
-+ Asyncwrites uint64
-+ Fsidx Fsid
-+ Fsid uint32
-+ Namemax uint32
-+ Owner uint32
-+ Spare [4]uint32
-+ Fstypename [32]byte
-+ Mntonname [1024]byte
-+ Mntfromname [1024]byte
-+}
-+
- type Flock_t struct {
- Start int64
- Len int64
-@@ -99,6 +126,24 @@ type Fsid struct {
- X__fsid_val [2]int32
- }
-
-+const (
-+ PathMax = 0x400
-+)
-+
-+const (
-+ ST_WAIT = 0x1
-+ ST_NOWAIT = 0x2
-+)
-+
-+const (
-+ FADV_NORMAL = 0x0
-+ FADV_RANDOM = 0x1
-+ FADV_SEQUENTIAL = 0x2
-+ FADV_WILLNEED = 0x3
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
-+)
-+
- type RawSockaddrInet4 struct {
- Len uint8
- Family uint8
-@@ -382,11 +427,45 @@ type Termios struct {
- Ospeed int32
- }
-
-+type Winsize struct {
-+ Row uint16
-+ Col uint16
-+ Xpixel uint16
-+ Ypixel uint16
-+}
-+
-+type Ptmget struct {
-+ Cfd int32
-+ Sfd int32
-+ Cn [1024]byte
-+ Sn [1024]byte
-+}
-+
- const (
- AT_FDCWD = -0x64
-+ AT_SYMLINK_FOLLOW = 0x400
- AT_SYMLINK_NOFOLLOW = 0x200
- )
-
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
- type Sysctlnode struct {
- Flags uint32
- Num int32
-@@ -399,3 +478,21 @@ type Sysctlnode struct {
- X_sysctl_parent [8]byte
- X_sysctl_desc [8]byte
- }
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Tickadj int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
-index ff290ba0..289184e0 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
-@@ -1,16 +1,16 @@
--// Created by cgo -godefs - DO NOT EDIT
--// cgo -godefs types_netbsd.go
-+// cgo -godefs types_netbsd.go | go run mkpost.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build amd64,netbsd
-
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x8
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x8
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -58,30 +58,58 @@ type Rlimit struct {
- type _Gid_t uint32
-
- type Stat_t struct {
-- Dev uint64
-- Mode uint32
-- Pad_cgo_0 [4]byte
-- Ino uint64
-- Nlink uint32
-- Uid uint32
-- Gid uint32
-- Pad_cgo_1 [4]byte
-- Rdev uint64
-- Atimespec Timespec
-- Mtimespec Timespec
-- Ctimespec Timespec
-- Birthtimespec Timespec
-- Size int64
-- Blocks int64
-- Blksize uint32
-- Flags uint32
-- Gen uint32
-- Spare [2]uint32
-- Pad_cgo_2 [4]byte
-+ Dev uint64
-+ Mode uint32
-+ _ [4]byte
-+ Ino uint64
-+ Nlink uint32
-+ Uid uint32
-+ Gid uint32
-+ _ [4]byte
-+ Rdev uint64
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Btim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize uint32
-+ Flags uint32
-+ Gen uint32
-+ Spare [2]uint32
-+ _ [4]byte
- }
-
- type Statfs_t [0]byte
-
-+type Statvfs_t struct {
-+ Flag uint64
-+ Bsize uint64
-+ Frsize uint64
-+ Iosize uint64
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Bresvd uint64
-+ Files uint64
-+ Ffree uint64
-+ Favail uint64
-+ Fresvd uint64
-+ Syncreads uint64
-+ Syncwrites uint64
-+ Asyncreads uint64
-+ Asyncwrites uint64
-+ Fsidx Fsid
-+ Fsid uint64
-+ Namemax uint64
-+ Owner uint32
-+ Spare [4]uint32
-+ Fstypename [32]byte
-+ Mntonname [1024]byte
-+ Mntfromname [1024]byte
-+ _ [4]byte
-+}
-+
- type Flock_t struct {
- Start int64
- Len int64
-@@ -103,6 +131,24 @@ type Fsid struct {
- X__fsid_val [2]int32
- }
-
-+const (
-+ PathMax = 0x400
-+)
-+
-+const (
-+ ST_WAIT = 0x1
-+ ST_NOWAIT = 0x2
-+)
-+
-+const (
-+ FADV_NORMAL = 0x0
-+ FADV_RANDOM = 0x1
-+ FADV_SEQUENTIAL = 0x2
-+ FADV_WILLNEED = 0x3
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
-+)
-+
- type RawSockaddrInet4 struct {
- Len uint8
- Family uint8
-@@ -389,11 +435,45 @@ type Termios struct {
- Ospeed int32
- }
-
-+type Winsize struct {
-+ Row uint16
-+ Col uint16
-+ Xpixel uint16
-+ Ypixel uint16
-+}
-+
-+type Ptmget struct {
-+ Cfd int32
-+ Sfd int32
-+ Cn [1024]byte
-+ Sn [1024]byte
-+}
-+
- const (
- AT_FDCWD = -0x64
-+ AT_SYMLINK_FOLLOW = 0x400
- AT_SYMLINK_NOFOLLOW = 0x200
- )
-
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
- type Sysctlnode struct {
- Flags uint32
- Num int32
-@@ -406,3 +486,21 @@ type Sysctlnode struct {
- X_sysctl_parent [8]byte
- X_sysctl_desc [8]byte
- }
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Tickadj int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go
-index 66dbd7c0..428c450e 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go
-@@ -1,16 +1,16 @@
--// Created by cgo -godefs - DO NOT EDIT
--// cgo -godefs types_netbsd.go
-+// cgo -godefs types_netbsd.go | go run mkpost.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build arm,netbsd
-
- package unix
-
- const (
-- sizeofPtr = 0x4
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x4
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x4
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x4
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -59,30 +59,57 @@ type Rlimit struct {
- type _Gid_t uint32
-
- type Stat_t struct {
-- Dev uint64
-- Mode uint32
-- Pad_cgo_0 [4]byte
-- Ino uint64
-- Nlink uint32
-- Uid uint32
-- Gid uint32
-- Pad_cgo_1 [4]byte
-- Rdev uint64
-- Atimespec Timespec
-- Mtimespec Timespec
-- Ctimespec Timespec
-- Birthtimespec Timespec
-- Size int64
-- Blocks int64
-- Blksize uint32
-- Flags uint32
-- Gen uint32
-- Spare [2]uint32
-- Pad_cgo_2 [4]byte
-+ Dev uint64
-+ Mode uint32
-+ _ [4]byte
-+ Ino uint64
-+ Nlink uint32
-+ Uid uint32
-+ Gid uint32
-+ _ [4]byte
-+ Rdev uint64
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Btim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize uint32
-+ Flags uint32
-+ Gen uint32
-+ Spare [2]uint32
-+ _ [4]byte
- }
-
- type Statfs_t [0]byte
-
-+type Statvfs_t struct {
-+ Flag uint32
-+ Bsize uint32
-+ Frsize uint32
-+ Iosize uint32
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Bresvd uint64
-+ Files uint64
-+ Ffree uint64
-+ Favail uint64
-+ Fresvd uint64
-+ Syncreads uint64
-+ Syncwrites uint64
-+ Asyncreads uint64
-+ Asyncwrites uint64
-+ Fsidx Fsid
-+ Fsid uint32
-+ Namemax uint32
-+ Owner uint32
-+ Spare [4]uint32
-+ Fstypename [32]byte
-+ Mntonname [1024]byte
-+ Mntfromname [1024]byte
-+}
-+
- type Flock_t struct {
- Start int64
- Len int64
-@@ -104,6 +131,24 @@ type Fsid struct {
- X__fsid_val [2]int32
- }
-
-+const (
-+ PathMax = 0x400
-+)
-+
-+const (
-+ ST_WAIT = 0x1
-+ ST_NOWAIT = 0x2
-+)
-+
-+const (
-+ FADV_NORMAL = 0x0
-+ FADV_RANDOM = 0x1
-+ FADV_SEQUENTIAL = 0x2
-+ FADV_WILLNEED = 0x3
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
-+)
-+
- type RawSockaddrInet4 struct {
- Len uint8
- Family uint8
-@@ -387,11 +432,45 @@ type Termios struct {
- Ospeed int32
- }
-
-+type Winsize struct {
-+ Row uint16
-+ Col uint16
-+ Xpixel uint16
-+ Ypixel uint16
-+}
-+
-+type Ptmget struct {
-+ Cfd int32
-+ Sfd int32
-+ Cn [1024]byte
-+ Sn [1024]byte
-+}
-+
- const (
- AT_FDCWD = -0x64
-+ AT_SYMLINK_FOLLOW = 0x400
- AT_SYMLINK_NOFOLLOW = 0x200
- )
-
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
- type Sysctlnode struct {
- Flags uint32
- Num int32
-@@ -404,3 +483,21 @@ type Sysctlnode struct {
- X_sysctl_parent [8]byte
- X_sysctl_desc [8]byte
- }
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Tickadj int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go
-similarity index 73%
-copy from vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
-copy to vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go
-index ff290ba0..6f1f2842 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go
-@@ -1,16 +1,16 @@
--// Created by cgo -godefs - DO NOT EDIT
--// cgo -godefs types_netbsd.go
-+// cgo -godefs types_netbsd.go | go run mkpost.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build amd64,netbsd
-+// +build arm64,netbsd
-
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x8
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x8
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -58,30 +58,58 @@ type Rlimit struct {
- type _Gid_t uint32
-
- type Stat_t struct {
-- Dev uint64
-- Mode uint32
-- Pad_cgo_0 [4]byte
-- Ino uint64
-- Nlink uint32
-- Uid uint32
-- Gid uint32
-- Pad_cgo_1 [4]byte
-- Rdev uint64
-- Atimespec Timespec
-- Mtimespec Timespec
-- Ctimespec Timespec
-- Birthtimespec Timespec
-- Size int64
-- Blocks int64
-- Blksize uint32
-- Flags uint32
-- Gen uint32
-- Spare [2]uint32
-- Pad_cgo_2 [4]byte
-+ Dev uint64
-+ Mode uint32
-+ _ [4]byte
-+ Ino uint64
-+ Nlink uint32
-+ Uid uint32
-+ Gid uint32
-+ _ [4]byte
-+ Rdev uint64
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Btim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize uint32
-+ Flags uint32
-+ Gen uint32
-+ Spare [2]uint32
-+ _ [4]byte
- }
-
- type Statfs_t [0]byte
-
-+type Statvfs_t struct {
-+ Flag uint64
-+ Bsize uint64
-+ Frsize uint64
-+ Iosize uint64
-+ Blocks uint64
-+ Bfree uint64
-+ Bavail uint64
-+ Bresvd uint64
-+ Files uint64
-+ Ffree uint64
-+ Favail uint64
-+ Fresvd uint64
-+ Syncreads uint64
-+ Syncwrites uint64
-+ Asyncreads uint64
-+ Asyncwrites uint64
-+ Fsidx Fsid
-+ Fsid uint64
-+ Namemax uint64
-+ Owner uint32
-+ Spare [4]uint32
-+ Fstypename [32]byte
-+ Mntonname [1024]byte
-+ Mntfromname [1024]byte
-+ _ [4]byte
-+}
-+
- type Flock_t struct {
- Start int64
- Len int64
-@@ -103,6 +131,24 @@ type Fsid struct {
- X__fsid_val [2]int32
- }
-
-+const (
-+ PathMax = 0x400
-+)
-+
-+const (
-+ ST_WAIT = 0x1
-+ ST_NOWAIT = 0x2
-+)
-+
-+const (
-+ FADV_NORMAL = 0x0
-+ FADV_RANDOM = 0x1
-+ FADV_SEQUENTIAL = 0x2
-+ FADV_WILLNEED = 0x3
-+ FADV_DONTNEED = 0x4
-+ FADV_NOREUSE = 0x5
-+)
-+
- type RawSockaddrInet4 struct {
- Len uint8
- Family uint8
-@@ -389,11 +435,45 @@ type Termios struct {
- Ospeed int32
- }
-
-+type Winsize struct {
-+ Row uint16
-+ Col uint16
-+ Xpixel uint16
-+ Ypixel uint16
-+}
-+
-+type Ptmget struct {
-+ Cfd int32
-+ Sfd int32
-+ Cn [1024]byte
-+ Sn [1024]byte
-+}
-+
- const (
- AT_FDCWD = -0x64
-+ AT_SYMLINK_FOLLOW = 0x400
- AT_SYMLINK_NOFOLLOW = 0x200
- )
-
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
- type Sysctlnode struct {
- Flags uint32
- Num int32
-@@ -406,3 +486,21 @@ type Sysctlnode struct {
- X_sysctl_parent [8]byte
- X_sysctl_desc [8]byte
- }
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Tickadj int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go
-index 20fc9f45..61ea0019 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go
-@@ -1,16 +1,16 @@
--// Created by cgo -godefs - DO NOT EDIT
--// cgo -godefs types_openbsd.go
-+// cgo -godefs types_openbsd.go | go run mkpost.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build 386,openbsd
-
- package unix
-
- const (
-- sizeofPtr = 0x4
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x4
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x4
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x4
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -56,23 +56,6 @@ type Rlimit struct {
-
- type _Gid_t uint32
-
--const (
-- S_IFMT = 0xf000
-- S_IFIFO = 0x1000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFBLK = 0x6000
-- S_IFREG = 0x8000
-- S_IFLNK = 0xa000
-- S_IFSOCK = 0xc000
-- S_ISUID = 0x800
-- S_ISGID = 0x400
-- S_ISVTX = 0x200
-- S_IRUSR = 0x100
-- S_IWUSR = 0x80
-- S_IXUSR = 0x40
--)
--
- type Stat_t struct {
- Mode uint32
- Dev int32
-@@ -140,6 +123,10 @@ type Fsid struct {
- Val [2]int32
- }
-
-+const (
-+ PathMax = 0x400
-+)
-+
- type RawSockaddrInet4 struct {
- Len uint8
- Family uint8
-@@ -440,7 +427,145 @@ type Termios struct {
- Ospeed int32
- }
-
-+type Winsize struct {
-+ Row uint16
-+ Col uint16
-+ Xpixel uint16
-+ Ypixel uint16
-+}
-+
- const (
- AT_FDCWD = -0x64
-+ AT_SYMLINK_FOLLOW = 0x4
- AT_SYMLINK_NOFOLLOW = 0x2
- )
-+
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
-+type Sigset_t uint32
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofUvmexp = 0x158
-+
-+type Uvmexp struct {
-+ Pagesize int32
-+ Pagemask int32
-+ Pageshift int32
-+ Npages int32
-+ Free int32
-+ Active int32
-+ Inactive int32
-+ Paging int32
-+ Wired int32
-+ Zeropages int32
-+ Reserve_pagedaemon int32
-+ Reserve_kernel int32
-+ Anonpages int32
-+ Vnodepages int32
-+ Vtextpages int32
-+ Freemin int32
-+ Freetarg int32
-+ Inactarg int32
-+ Wiredmax int32
-+ Anonmin int32
-+ Vtextmin int32
-+ Vnodemin int32
-+ Anonminpct int32
-+ Vtextminpct int32
-+ Vnodeminpct int32
-+ Nswapdev int32
-+ Swpages int32
-+ Swpginuse int32
-+ Swpgonly int32
-+ Nswget int32
-+ Nanon int32
-+ Nanonneeded int32
-+ Nfreeanon int32
-+ Faults int32
-+ Traps int32
-+ Intrs int32
-+ Swtch int32
-+ Softs int32
-+ Syscalls int32
-+ Pageins int32
-+ Obsolete_swapins int32
-+ Obsolete_swapouts int32
-+ Pgswapin int32
-+ Pgswapout int32
-+ Forks int32
-+ Forks_ppwait int32
-+ Forks_sharevm int32
-+ Pga_zerohit int32
-+ Pga_zeromiss int32
-+ Zeroaborts int32
-+ Fltnoram int32
-+ Fltnoanon int32
-+ Fltnoamap int32
-+ Fltpgwait int32
-+ Fltpgrele int32
-+ Fltrelck int32
-+ Fltrelckok int32
-+ Fltanget int32
-+ Fltanretry int32
-+ Fltamcopy int32
-+ Fltnamap int32
-+ Fltnomap int32
-+ Fltlget int32
-+ Fltget int32
-+ Flt_anon int32
-+ Flt_acow int32
-+ Flt_obj int32
-+ Flt_prcopy int32
-+ Flt_przero int32
-+ Pdwoke int32
-+ Pdrevs int32
-+ Pdswout int32
-+ Pdfreed int32
-+ Pdscans int32
-+ Pdanscan int32
-+ Pdobscan int32
-+ Pdreact int32
-+ Pdbusy int32
-+ Pdpageouts int32
-+ Pdpending int32
-+ Pddeact int32
-+ Pdreanon int32
-+ Pdrevnode int32
-+ Pdrevtext int32
-+ Fpswtch int32
-+ Kmapent int32
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Tickadj int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
-index 46fe9490..87a493f6 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
-@@ -1,16 +1,16 @@
--// Created by cgo -godefs - DO NOT EDIT
--// cgo -godefs types_openbsd.go
-+// cgo -godefs types_openbsd.go | go run mkpost.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build amd64,openbsd
-
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x8
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x8
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -56,48 +56,31 @@ type Rlimit struct {
-
- type _Gid_t uint32
-
--const (
-- S_IFMT = 0xf000
-- S_IFIFO = 0x1000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFBLK = 0x6000
-- S_IFREG = 0x8000
-- S_IFLNK = 0xa000
-- S_IFSOCK = 0xc000
-- S_ISUID = 0x800
-- S_ISGID = 0x400
-- S_ISVTX = 0x200
-- S_IRUSR = 0x100
-- S_IWUSR = 0x80
-- S_IXUSR = 0x40
--)
--
- type Stat_t struct {
-- Mode uint32
-- Dev int32
-- Ino uint64
-- Nlink uint32
-- Uid uint32
-- Gid uint32
-- Rdev int32
-- Atim Timespec
-- Mtim Timespec
-- Ctim Timespec
-- Size int64
-- Blocks int64
-- Blksize uint32
-- Flags uint32
-- Gen uint32
-- Pad_cgo_0 [4]byte
-- X__st_birthtim Timespec
-+ Mode uint32
-+ Dev int32
-+ Ino uint64
-+ Nlink uint32
-+ Uid uint32
-+ Gid uint32
-+ Rdev int32
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint32
-+ _ [4]byte
-+ _ Timespec
- }
-
- type Statfs_t struct {
- F_flags uint32
- F_bsize uint32
- F_iosize uint32
-- Pad_cgo_0 [4]byte
-+ _ [4]byte
- F_blocks uint64
- F_bfree uint64
- F_bavail int64
-@@ -116,7 +99,7 @@ type Statfs_t struct {
- F_mntonname [90]int8
- F_mntfromname [90]int8
- F_mntfromspec [90]int8
-- Pad_cgo_1 [2]byte
-+ _ [2]byte
- Mount_info [160]byte
- }
-
-@@ -129,19 +112,23 @@ type Flock_t struct {
- }
-
- type Dirent struct {
-- Fileno uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Namlen uint8
-- X__d_padding [4]uint8
-- Name [256]int8
-+ Fileno uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Namlen uint8
-+ _ [4]uint8
-+ Name [256]int8
- }
-
- type Fsid struct {
- Val [2]int32
- }
-
-+const (
-+ PathMax = 0x400
-+)
-+
- type RawSockaddrInet4 struct {
- Len uint8
- Family uint8
-@@ -212,10 +199,10 @@ type IPv6Mreq struct {
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
-+ _ [4]byte
- Iov *Iovec
- Iovlen uint32
-- Pad_cgo_1 [4]byte
-+ _ [4]byte
- Control *byte
- Controllen uint32
- Flags int32
-@@ -277,8 +264,8 @@ type FdSet struct {
- }
-
- const (
-- SizeofIfMsghdr = 0xf8
-- SizeofIfData = 0xe0
-+ SizeofIfMsghdr = 0xa8
-+ SizeofIfData = 0x90
- SizeofIfaMsghdr = 0x18
- SizeofIfAnnounceMsghdr = 0x1a
- SizeofRtMsghdr = 0x60
-@@ -307,7 +294,7 @@ type IfData struct {
- Link_state uint8
- Mtu uint32
- Metric uint32
-- Pad uint32
-+ Rdomain uint32
- Baudrate uint64
- Ipackets uint64
- Ierrors uint64
-@@ -319,12 +306,11 @@ type IfData struct {
- Imcasts uint64
- Omcasts uint64
- Iqdrops uint64
-+ Oqdrops uint64
- Noproto uint64
- Capabilities uint32
-- Pad_cgo_0 [4]byte
-+ _ [4]byte
- Lastchange Timeval
-- Mclpool [7]Mclpool
-- Pad_cgo_1 [4]byte
- }
-
- type IfaMsghdr struct {
-@@ -385,13 +371,7 @@ type RtMetrics struct {
- Pad uint32
- }
-
--type Mclpool struct {
-- Grown int32
-- Alive uint16
-- Hwm uint16
-- Cwm uint16
-- Lwm uint16
--}
-+type Mclpool struct{}
-
- const (
- SizeofBpfVersion = 0x4
-@@ -412,9 +392,9 @@ type BpfStat struct {
- }
-
- type BpfProgram struct {
-- Len uint32
-- Pad_cgo_0 [4]byte
-- Insns *BpfInsn
-+ Len uint32
-+ _ [4]byte
-+ Insns *BpfInsn
- }
-
- type BpfInsn struct {
-@@ -425,11 +405,11 @@ type BpfInsn struct {
- }
-
- type BpfHdr struct {
-- Tstamp BpfTimeval
-- Caplen uint32
-- Datalen uint32
-- Hdrlen uint16
-- Pad_cgo_0 [2]byte
-+ Tstamp BpfTimeval
-+ Caplen uint32
-+ Datalen uint32
-+ Hdrlen uint16
-+ _ [2]byte
- }
-
- type BpfTimeval struct {
-@@ -447,7 +427,145 @@ type Termios struct {
- Ospeed int32
- }
-
-+type Winsize struct {
-+ Row uint16
-+ Col uint16
-+ Xpixel uint16
-+ Ypixel uint16
-+}
-+
- const (
- AT_FDCWD = -0x64
-+ AT_SYMLINK_FOLLOW = 0x4
- AT_SYMLINK_NOFOLLOW = 0x2
- )
-+
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
-+type Sigset_t uint32
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofUvmexp = 0x158
-+
-+type Uvmexp struct {
-+ Pagesize int32
-+ Pagemask int32
-+ Pageshift int32
-+ Npages int32
-+ Free int32
-+ Active int32
-+ Inactive int32
-+ Paging int32
-+ Wired int32
-+ Zeropages int32
-+ Reserve_pagedaemon int32
-+ Reserve_kernel int32
-+ Anonpages int32
-+ Vnodepages int32
-+ Vtextpages int32
-+ Freemin int32
-+ Freetarg int32
-+ Inactarg int32
-+ Wiredmax int32
-+ Anonmin int32
-+ Vtextmin int32
-+ Vnodemin int32
-+ Anonminpct int32
-+ Vtextminpct int32
-+ Vnodeminpct int32
-+ Nswapdev int32
-+ Swpages int32
-+ Swpginuse int32
-+ Swpgonly int32
-+ Nswget int32
-+ Nanon int32
-+ Nanonneeded int32
-+ Nfreeanon int32
-+ Faults int32
-+ Traps int32
-+ Intrs int32
-+ Swtch int32
-+ Softs int32
-+ Syscalls int32
-+ Pageins int32
-+ Obsolete_swapins int32
-+ Obsolete_swapouts int32
-+ Pgswapin int32
-+ Pgswapout int32
-+ Forks int32
-+ Forks_ppwait int32
-+ Forks_sharevm int32
-+ Pga_zerohit int32
-+ Pga_zeromiss int32
-+ Zeroaborts int32
-+ Fltnoram int32
-+ Fltnoanon int32
-+ Fltnoamap int32
-+ Fltpgwait int32
-+ Fltpgrele int32
-+ Fltrelck int32
-+ Fltrelckok int32
-+ Fltanget int32
-+ Fltanretry int32
-+ Fltamcopy int32
-+ Fltnamap int32
-+ Fltnomap int32
-+ Fltlget int32
-+ Fltget int32
-+ Flt_anon int32
-+ Flt_acow int32
-+ Flt_obj int32
-+ Flt_prcopy int32
-+ Flt_przero int32
-+ Pdwoke int32
-+ Pdrevs int32
-+ Pdswout int32
-+ Pdfreed int32
-+ Pdscans int32
-+ Pdanscan int32
-+ Pdobscan int32
-+ Pdreact int32
-+ Pdbusy int32
-+ Pdpageouts int32
-+ Pdpending int32
-+ Pddeact int32
-+ Pdreanon int32
-+ Pdrevnode int32
-+ Pdrevtext int32
-+ Fpswtch int32
-+ Kmapent int32
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Tickadj int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go
-index 62e1f7c0..d80836ef 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go
-@@ -1,16 +1,16 @@
--// Created by cgo -godefs - DO NOT EDIT
--// cgo -godefs types_openbsd.go
-+// cgo -godefs -- -fsigned-char types_openbsd.go | go run mkpost.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
- // +build arm,openbsd
-
- package unix
-
- const (
-- sizeofPtr = 0x4
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x4
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x4
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x4
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -23,11 +23,13 @@ type (
- type Timespec struct {
- Sec int64
- Nsec int32
-+ _ [4]byte
- }
-
- type Timeval struct {
- Sec int64
- Usec int32
-+ _ [4]byte
- }
-
- type Rusage struct {
-@@ -56,46 +58,31 @@ type Rlimit struct {
-
- type _Gid_t uint32
-
--const (
-- S_IFMT = 0xf000
-- S_IFIFO = 0x1000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFBLK = 0x6000
-- S_IFREG = 0x8000
-- S_IFLNK = 0xa000
-- S_IFSOCK = 0xc000
-- S_ISUID = 0x800
-- S_ISGID = 0x400
-- S_ISVTX = 0x200
-- S_IRUSR = 0x100
-- S_IWUSR = 0x80
-- S_IXUSR = 0x40
--)
--
- type Stat_t struct {
-- Mode uint32
-- Dev int32
-- Ino uint64
-- Nlink uint32
-- Uid uint32
-- Gid uint32
-- Rdev int32
-- Atim Timespec
-- Mtim Timespec
-- Ctim Timespec
-- Size int64
-- Blocks int64
-- Blksize int32
-- Flags uint32
-- Gen uint32
-- X__st_birthtim Timespec
-+ Mode uint32
-+ Dev int32
-+ Ino uint64
-+ Nlink uint32
-+ Uid uint32
-+ Gid uint32
-+ Rdev int32
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint32
-+ _ [4]byte
-+ _ Timespec
- }
-
- type Statfs_t struct {
- F_flags uint32
- F_bsize uint32
- F_iosize uint32
-+ _ [4]byte
- F_blocks uint64
- F_bfree uint64
- F_bavail int64
-@@ -110,11 +97,11 @@ type Statfs_t struct {
- F_namemax uint32
- F_owner uint32
- F_ctime uint64
-- F_fstypename [16]uint8
-- F_mntonname [90]uint8
-- F_mntfromname [90]uint8
-- F_mntfromspec [90]uint8
-- Pad_cgo_0 [2]byte
-+ F_fstypename [16]int8
-+ F_mntonname [90]int8
-+ F_mntfromname [90]int8
-+ F_mntfromspec [90]int8
-+ _ [2]byte
- Mount_info [160]byte
- }
-
-@@ -127,19 +114,23 @@ type Flock_t struct {
- }
-
- type Dirent struct {
-- Fileno uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Namlen uint8
-- X__d_padding [4]uint8
-- Name [256]uint8
-+ Fileno uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Namlen uint8
-+ _ [4]uint8
-+ Name [256]int8
- }
-
- type Fsid struct {
- Val [2]int32
- }
-
-+const (
-+ PathMax = 0x400
-+)
-+
- type RawSockaddrInet4 struct {
- Len uint8
- Family uint8
-@@ -264,8 +255,10 @@ type Kevent_t struct {
- Filter int16
- Flags uint16
- Fflags uint32
-+ _ [4]byte
- Data int64
- Udata *byte
-+ _ [4]byte
- }
-
- type FdSet struct {
-@@ -273,8 +266,8 @@ type FdSet struct {
- }
-
- const (
-- SizeofIfMsghdr = 0x98
-- SizeofIfData = 0x80
-+ SizeofIfMsghdr = 0xa8
-+ SizeofIfData = 0x90
- SizeofIfaMsghdr = 0x18
- SizeofIfAnnounceMsghdr = 0x1a
- SizeofRtMsghdr = 0x60
-@@ -303,7 +296,7 @@ type IfData struct {
- Link_state uint8
- Mtu uint32
- Metric uint32
-- Pad uint32
-+ Rdomain uint32
- Baudrate uint64
- Ipackets uint64
- Ierrors uint64
-@@ -315,8 +308,10 @@ type IfData struct {
- Imcasts uint64
- Omcasts uint64
- Iqdrops uint64
-+ Oqdrops uint64
- Noproto uint64
- Capabilities uint32
-+ _ [4]byte
- Lastchange Timeval
- }
-
-@@ -341,7 +336,7 @@ type IfAnnounceMsghdr struct {
- Hdrlen uint16
- Index uint16
- What uint16
-- Name [16]uint8
-+ Name [16]int8
- }
-
- type RtMsghdr struct {
-@@ -411,11 +406,11 @@ type BpfInsn struct {
- }
-
- type BpfHdr struct {
-- Tstamp BpfTimeval
-- Caplen uint32
-- Datalen uint32
-- Hdrlen uint16
-- Pad_cgo_0 [2]byte
-+ Tstamp BpfTimeval
-+ Caplen uint32
-+ Datalen uint32
-+ Hdrlen uint16
-+ _ [2]byte
- }
-
- type BpfTimeval struct {
-@@ -433,7 +428,145 @@ type Termios struct {
- Ospeed int32
- }
-
-+type Winsize struct {
-+ Row uint16
-+ Col uint16
-+ Xpixel uint16
-+ Ypixel uint16
-+}
-+
- const (
- AT_FDCWD = -0x64
-+ AT_SYMLINK_FOLLOW = 0x4
- AT_SYMLINK_NOFOLLOW = 0x2
- )
-+
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
-+type Sigset_t uint32
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofUvmexp = 0x158
-+
-+type Uvmexp struct {
-+ Pagesize int32
-+ Pagemask int32
-+ Pageshift int32
-+ Npages int32
-+ Free int32
-+ Active int32
-+ Inactive int32
-+ Paging int32
-+ Wired int32
-+ Zeropages int32
-+ Reserve_pagedaemon int32
-+ Reserve_kernel int32
-+ Unused01 int32
-+ Vnodepages int32
-+ Vtextpages int32
-+ Freemin int32
-+ Freetarg int32
-+ Inactarg int32
-+ Wiredmax int32
-+ Anonmin int32
-+ Vtextmin int32
-+ Vnodemin int32
-+ Anonminpct int32
-+ Vtextminpct int32
-+ Vnodeminpct int32
-+ Nswapdev int32
-+ Swpages int32
-+ Swpginuse int32
-+ Swpgonly int32
-+ Nswget int32
-+ Nanon int32
-+ Unused05 int32
-+ Unused06 int32
-+ Faults int32
-+ Traps int32
-+ Intrs int32
-+ Swtch int32
-+ Softs int32
-+ Syscalls int32
-+ Pageins int32
-+ Unused07 int32
-+ Unused08 int32
-+ Pgswapin int32
-+ Pgswapout int32
-+ Forks int32
-+ Forks_ppwait int32
-+ Forks_sharevm int32
-+ Pga_zerohit int32
-+ Pga_zeromiss int32
-+ Unused09 int32
-+ Fltnoram int32
-+ Fltnoanon int32
-+ Fltnoamap int32
-+ Fltpgwait int32
-+ Fltpgrele int32
-+ Fltrelck int32
-+ Fltrelckok int32
-+ Fltanget int32
-+ Fltanretry int32
-+ Fltamcopy int32
-+ Fltnamap int32
-+ Fltnomap int32
-+ Fltlget int32
-+ Fltget int32
-+ Flt_anon int32
-+ Flt_acow int32
-+ Flt_obj int32
-+ Flt_prcopy int32
-+ Flt_przero int32
-+ Pdwoke int32
-+ Pdrevs int32
-+ Pdswout int32
-+ Pdfreed int32
-+ Pdscans int32
-+ Pdanscan int32
-+ Pdobscan int32
-+ Pdreact int32
-+ Pdbusy int32
-+ Pdpageouts int32
-+ Pdpending int32
-+ Pddeact int32
-+ Unused11 int32
-+ Unused12 int32
-+ Unused13 int32
-+ Fpswtch int32
-+ Kmapent int32
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Tickadj int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go
-similarity index 58%
-copy from vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
-copy to vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go
-index 46fe9490..4e158746 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go
-@@ -1,16 +1,16 @@
--// Created by cgo -godefs - DO NOT EDIT
--// cgo -godefs types_openbsd.go
-+// cgo -godefs -- -fsigned-char types_openbsd.go | go run mkpost.go
-+// Code generated by the command above; see README.md. DO NOT EDIT.
-
--// +build amd64,openbsd
-+// +build arm64,openbsd
-
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x8
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x8
-+ SizeofLongLong = 0x8
- )
-
- type (
-@@ -56,48 +56,29 @@ type Rlimit struct {
-
- type _Gid_t uint32
-
--const (
-- S_IFMT = 0xf000
-- S_IFIFO = 0x1000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFBLK = 0x6000
-- S_IFREG = 0x8000
-- S_IFLNK = 0xa000
-- S_IFSOCK = 0xc000
-- S_ISUID = 0x800
-- S_ISGID = 0x400
-- S_ISVTX = 0x200
-- S_IRUSR = 0x100
-- S_IWUSR = 0x80
-- S_IXUSR = 0x40
--)
--
- type Stat_t struct {
-- Mode uint32
-- Dev int32
-- Ino uint64
-- Nlink uint32
-- Uid uint32
-- Gid uint32
-- Rdev int32
-- Atim Timespec
-- Mtim Timespec
-- Ctim Timespec
-- Size int64
-- Blocks int64
-- Blksize uint32
-- Flags uint32
-- Gen uint32
-- Pad_cgo_0 [4]byte
-- X__st_birthtim Timespec
-+ Mode uint32
-+ Dev int32
-+ Ino uint64
-+ Nlink uint32
-+ Uid uint32
-+ Gid uint32
-+ Rdev int32
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Size int64
-+ Blocks int64
-+ Blksize int32
-+ Flags uint32
-+ Gen uint32
-+ _ Timespec
- }
-
- type Statfs_t struct {
- F_flags uint32
- F_bsize uint32
- F_iosize uint32
-- Pad_cgo_0 [4]byte
- F_blocks uint64
- F_bfree uint64
- F_bavail int64
-@@ -116,7 +97,7 @@ type Statfs_t struct {
- F_mntonname [90]int8
- F_mntfromname [90]int8
- F_mntfromspec [90]int8
-- Pad_cgo_1 [2]byte
-+ _ [2]byte
- Mount_info [160]byte
- }
-
-@@ -129,19 +110,23 @@ type Flock_t struct {
- }
-
- type Dirent struct {
-- Fileno uint64
-- Off int64
-- Reclen uint16
-- Type uint8
-- Namlen uint8
-- X__d_padding [4]uint8
-- Name [256]int8
-+ Fileno uint64
-+ Off int64
-+ Reclen uint16
-+ Type uint8
-+ Namlen uint8
-+ _ [4]uint8
-+ Name [256]int8
- }
-
- type Fsid struct {
- Val [2]int32
- }
-
-+const (
-+ PathMax = 0x400
-+)
-+
- type RawSockaddrInet4 struct {
- Len uint8
- Family uint8
-@@ -212,10 +197,8 @@ type IPv6Mreq struct {
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
- Iov *Iovec
- Iovlen uint32
-- Pad_cgo_1 [4]byte
- Control *byte
- Controllen uint32
- Flags int32
-@@ -277,8 +260,8 @@ type FdSet struct {
- }
-
- const (
-- SizeofIfMsghdr = 0xf8
-- SizeofIfData = 0xe0
-+ SizeofIfMsghdr = 0xa8
-+ SizeofIfData = 0x90
- SizeofIfaMsghdr = 0x18
- SizeofIfAnnounceMsghdr = 0x1a
- SizeofRtMsghdr = 0x60
-@@ -307,7 +290,7 @@ type IfData struct {
- Link_state uint8
- Mtu uint32
- Metric uint32
-- Pad uint32
-+ Rdomain uint32
- Baudrate uint64
- Ipackets uint64
- Ierrors uint64
-@@ -319,12 +302,10 @@ type IfData struct {
- Imcasts uint64
- Omcasts uint64
- Iqdrops uint64
-+ Oqdrops uint64
- Noproto uint64
- Capabilities uint32
-- Pad_cgo_0 [4]byte
- Lastchange Timeval
-- Mclpool [7]Mclpool
-- Pad_cgo_1 [4]byte
- }
-
- type IfaMsghdr struct {
-@@ -385,13 +366,7 @@ type RtMetrics struct {
- Pad uint32
- }
-
--type Mclpool struct {
-- Grown int32
-- Alive uint16
-- Hwm uint16
-- Cwm uint16
-- Lwm uint16
--}
-+type Mclpool struct{}
-
- const (
- SizeofBpfVersion = 0x4
-@@ -412,9 +387,8 @@ type BpfStat struct {
- }
-
- type BpfProgram struct {
-- Len uint32
-- Pad_cgo_0 [4]byte
-- Insns *BpfInsn
-+ Len uint32
-+ Insns *BpfInsn
- }
-
- type BpfInsn struct {
-@@ -425,11 +399,11 @@ type BpfInsn struct {
- }
-
- type BpfHdr struct {
-- Tstamp BpfTimeval
-- Caplen uint32
-- Datalen uint32
-- Hdrlen uint16
-- Pad_cgo_0 [2]byte
-+ Tstamp BpfTimeval
-+ Caplen uint32
-+ Datalen uint32
-+ Hdrlen uint16
-+ _ [2]byte
- }
-
- type BpfTimeval struct {
-@@ -447,7 +421,145 @@ type Termios struct {
- Ospeed int32
- }
-
-+type Winsize struct {
-+ Row uint16
-+ Col uint16
-+ Xpixel uint16
-+ Ypixel uint16
-+}
-+
- const (
- AT_FDCWD = -0x64
-+ AT_SYMLINK_FOLLOW = 0x4
- AT_SYMLINK_NOFOLLOW = 0x2
- )
-+
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
-+
-+type Sigset_t uint32
-+
-+type Utsname struct {
-+ Sysname [256]byte
-+ Nodename [256]byte
-+ Release [256]byte
-+ Version [256]byte
-+ Machine [256]byte
-+}
-+
-+const SizeofUvmexp = 0x158
-+
-+type Uvmexp struct {
-+ Pagesize int32
-+ Pagemask int32
-+ Pageshift int32
-+ Npages int32
-+ Free int32
-+ Active int32
-+ Inactive int32
-+ Paging int32
-+ Wired int32
-+ Zeropages int32
-+ Reserve_pagedaemon int32
-+ Reserve_kernel int32
-+ Unused01 int32
-+ Vnodepages int32
-+ Vtextpages int32
-+ Freemin int32
-+ Freetarg int32
-+ Inactarg int32
-+ Wiredmax int32
-+ Anonmin int32
-+ Vtextmin int32
-+ Vnodemin int32
-+ Anonminpct int32
-+ Vtextminpct int32
-+ Vnodeminpct int32
-+ Nswapdev int32
-+ Swpages int32
-+ Swpginuse int32
-+ Swpgonly int32
-+ Nswget int32
-+ Nanon int32
-+ Unused05 int32
-+ Unused06 int32
-+ Faults int32
-+ Traps int32
-+ Intrs int32
-+ Swtch int32
-+ Softs int32
-+ Syscalls int32
-+ Pageins int32
-+ Unused07 int32
-+ Unused08 int32
-+ Pgswapin int32
-+ Pgswapout int32
-+ Forks int32
-+ Forks_ppwait int32
-+ Forks_sharevm int32
-+ Pga_zerohit int32
-+ Pga_zeromiss int32
-+ Unused09 int32
-+ Fltnoram int32
-+ Fltnoanon int32
-+ Fltnoamap int32
-+ Fltpgwait int32
-+ Fltpgrele int32
-+ Fltrelck int32
-+ Fltrelckok int32
-+ Fltanget int32
-+ Fltanretry int32
-+ Fltamcopy int32
-+ Fltnamap int32
-+ Fltnomap int32
-+ Fltlget int32
-+ Fltget int32
-+ Flt_anon int32
-+ Flt_acow int32
-+ Flt_obj int32
-+ Flt_prcopy int32
-+ Flt_przero int32
-+ Pdwoke int32
-+ Pdrevs int32
-+ Pdswout int32
-+ Pdfreed int32
-+ Pdscans int32
-+ Pdanscan int32
-+ Pdobscan int32
-+ Pdreact int32
-+ Pdbusy int32
-+ Pdpageouts int32
-+ Pdpending int32
-+ Pddeact int32
-+ Unused11 int32
-+ Unused12 int32
-+ Unused13 int32
-+ Fpswtch int32
-+ Kmapent int32
-+}
-+
-+const SizeofClockinfo = 0x14
-+
-+type Clockinfo struct {
-+ Hz int32
-+ Tick int32
-+ Tickadj int32
-+ Stathz int32
-+ Profhz int32
-+}
-diff --git a/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go
-index 92336f9f..23ed9fe5 100644
---- a/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go
-+++ b/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go
-@@ -6,11 +6,11 @@
- package unix
-
- const (
-- sizeofPtr = 0x8
-- sizeofShort = 0x2
-- sizeofInt = 0x4
-- sizeofLong = 0x8
-- sizeofLongLong = 0x8
-+ SizeofPtr = 0x8
-+ SizeofShort = 0x2
-+ SizeofInt = 0x4
-+ SizeofLong = 0x8
-+ SizeofLongLong = 0x8
- PathMax = 0x400
- MaxHostNameLen = 0x100
- )
-@@ -75,58 +75,41 @@ type Rlimit struct {
-
- type _Gid_t uint32
-
--const (
-- S_IFMT = 0xf000
-- S_IFIFO = 0x1000
-- S_IFCHR = 0x2000
-- S_IFDIR = 0x4000
-- S_IFBLK = 0x6000
-- S_IFREG = 0x8000
-- S_IFLNK = 0xa000
-- S_IFSOCK = 0xc000
-- S_ISUID = 0x800
-- S_ISGID = 0x400
-- S_ISVTX = 0x200
-- S_IRUSR = 0x100
-- S_IWUSR = 0x80
-- S_IXUSR = 0x40
--)
--
- type Stat_t struct {
-- Dev uint64
-- Ino uint64
-- Mode uint32
-- Nlink uint32
-- Uid uint32
-- Gid uint32
-- Rdev uint64
-- Size int64
-- Atim Timespec
-- Mtim Timespec
-- Ctim Timespec
-- Blksize int32
-- Pad_cgo_0 [4]byte
-- Blocks int64
-- Fstype [16]int8
-+ Dev uint64
-+ Ino uint64
-+ Mode uint32
-+ Nlink uint32
-+ Uid uint32
-+ Gid uint32
-+ Rdev uint64
-+ Size int64
-+ Atim Timespec
-+ Mtim Timespec
-+ Ctim Timespec
-+ Blksize int32
-+ _ [4]byte
-+ Blocks int64
-+ Fstype [16]int8
- }
-
- type Flock_t struct {
-- Type int16
-- Whence int16
-- Pad_cgo_0 [4]byte
-- Start int64
-- Len int64
-- Sysid int32
-- Pid int32
-- Pad [4]int64
-+ Type int16
-+ Whence int16
-+ _ [4]byte
-+ Start int64
-+ Len int64
-+ Sysid int32
-+ Pid int32
-+ Pad [4]int64
- }
-
- type Dirent struct {
-- Ino uint64
-- Off int64
-- Reclen uint16
-- Name [1]int8
-- Pad_cgo_0 [5]byte
-+ Ino uint64
-+ Off int64
-+ Reclen uint16
-+ Name [1]int8
-+ _ [5]byte
- }
-
- type _Fsblkcnt_t uint64
-@@ -213,13 +196,13 @@ type IPv6Mreq struct {
- type Msghdr struct {
- Name *byte
- Namelen uint32
-- Pad_cgo_0 [4]byte
-+ _ [4]byte
- Iov *Iovec
- Iovlen int32
-- Pad_cgo_1 [4]byte
-+ _ [4]byte
- Accrights *int8
- Accrightslen int32
-- Pad_cgo_2 [4]byte
-+ _ [4]byte
- }
-
- type Cmsghdr struct {
-@@ -228,6 +211,12 @@ type Cmsghdr struct {
- Type int32
- }
-
-+type Inet4Pktinfo struct {
-+ Ifindex uint32
-+ Spec_dst [4]byte /* in_addr */
-+ Addr [4]byte /* in_addr */
-+}
-+
- type Inet6Pktinfo struct {
- Addr [16]byte /* in6_addr */
- Ifindex uint32
-@@ -253,6 +242,7 @@ const (
- SizeofIPv6Mreq = 0x14
- SizeofMsghdr = 0x30
- SizeofCmsghdr = 0xc
-+ SizeofInet4Pktinfo = 0xc
- SizeofInet6Pktinfo = 0x14
- SizeofIPv6MTUInfo = 0x24
- SizeofICMPv6Filter = 0x20
-@@ -263,19 +253,19 @@ type FdSet struct {
- }
-
- type Utsname struct {
-- Sysname [257]int8
-- Nodename [257]int8
-- Release [257]int8
-- Version [257]int8
-- Machine [257]int8
-+ Sysname [257]byte
-+ Nodename [257]byte
-+ Release [257]byte
-+ Version [257]byte
-+ Machine [257]byte
- }
-
- type Ustat_t struct {
-- Tfree int64
-- Tinode uint64
-- Fname [6]int8
-- Fpack [6]int8
-- Pad_cgo_0 [4]byte
-+ Tfree int64
-+ Tinode uint64
-+ Fname [6]int8
-+ Fpack [6]int8
-+ _ [4]byte
- }
-
- const (
-@@ -295,21 +285,21 @@ const (
- )
-
- type IfMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Data IfData
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Data IfData
- }
-
- type IfData struct {
- Type uint8
- Addrlen uint8
- Hdrlen uint8
-- Pad_cgo_0 [1]byte
-+ _ [1]byte
- Mtu uint32
- Metric uint32
- Baudrate uint32
-@@ -328,30 +318,30 @@ type IfData struct {
- }
-
- type IfaMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Addrs int32
-- Flags int32
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Metric int32
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Addrs int32
-+ Flags int32
-+ Index uint16
-+ _ [2]byte
-+ Metric int32
- }
-
- type RtMsghdr struct {
-- Msglen uint16
-- Version uint8
-- Type uint8
-- Index uint16
-- Pad_cgo_0 [2]byte
-- Flags int32
-- Addrs int32
-- Pid int32
-- Seq int32
-- Errno int32
-- Use int32
-- Inits uint32
-- Rmx RtMetrics
-+ Msglen uint16
-+ Version uint8
-+ Type uint8
-+ Index uint16
-+ _ [2]byte
-+ Flags int32
-+ Addrs int32
-+ Pid int32
-+ Seq int32
-+ Errno int32
-+ Use int32
-+ Inits uint32
-+ Rmx RtMetrics
- }
-
- type RtMetrics struct {
-@@ -388,9 +378,9 @@ type BpfStat struct {
- }
-
- type BpfProgram struct {
-- Len uint32
-- Pad_cgo_0 [4]byte
-- Insns *BpfInsn
-+ Len uint32
-+ _ [4]byte
-+ Insns *BpfInsn
- }
-
- type BpfInsn struct {
-@@ -406,32 +396,30 @@ type BpfTimeval struct {
- }
-
- type BpfHdr struct {
-- Tstamp BpfTimeval
-- Caplen uint32
-- Datalen uint32
-- Hdrlen uint16
-- Pad_cgo_0 [2]byte
-+ Tstamp BpfTimeval
-+ Caplen uint32
-+ Datalen uint32
-+ Hdrlen uint16
-+ _ [2]byte
- }
-
--const _SC_PAGESIZE = 0xb
--
- type Termios struct {
-- Iflag uint32
-- Oflag uint32
-- Cflag uint32
-- Lflag uint32
-- Cc [19]uint8
-- Pad_cgo_0 [1]byte
-+ Iflag uint32
-+ Oflag uint32
-+ Cflag uint32
-+ Lflag uint32
-+ Cc [19]uint8
-+ _ [1]byte
- }
-
- type Termio struct {
-- Iflag uint16
-- Oflag uint16
-- Cflag uint16
-- Lflag uint16
-- Line int8
-- Cc [8]uint8
-- Pad_cgo_0 [1]byte
-+ Iflag uint16
-+ Oflag uint16
-+ Cflag uint16
-+ Lflag uint16
-+ Line int8
-+ Cc [8]uint8
-+ _ [1]byte
- }
-
- type Winsize struct {
-@@ -440,3 +428,22 @@ type Winsize struct {
- Xpixel uint16
- Ypixel uint16
- }
-+
-+type PollFd struct {
-+ Fd int32
-+ Events int16
-+ Revents int16
-+}
-+
-+const (
-+ POLLERR = 0x8
-+ POLLHUP = 0x10
-+ POLLIN = 0x1
-+ POLLNVAL = 0x20
-+ POLLOUT = 0x4
-+ POLLPRI = 0x2
-+ POLLRDBAND = 0x80
-+ POLLRDNORM = 0x40
-+ POLLWRBAND = 0x100
-+ POLLWRNORM = 0x4
-+)
---
-2.26.2
-
diff --git a/poky/meta/recipes-devtools/go/go-dep/0001-bolt_riscv64-Add-support-for-riscv64.patch b/poky/meta/recipes-devtools/go/go-dep/0001-bolt_riscv64-Add-support-for-riscv64.patch
deleted file mode 100644
index 4d97d4824..000000000
--- a/poky/meta/recipes-devtools/go/go-dep/0001-bolt_riscv64-Add-support-for-riscv64.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 5e051669d117d7cd9b24cea3494959eec396ec1e Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 25 Jan 2020 22:37:25 -0800
-Subject: [PATCH] /bolt_riscv64: Add support for riscv64
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- vendor/github.com/boltdb/bolt/bolt_riscv64.go | 12 ++++++++++++
- 1 file changed, 12 insertions(+)
- create mode 100644 vendor/github.com/boltdb/bolt/bolt_riscv64.go
-
-diff --git a/vendor/github.com/boltdb/bolt/bolt_riscv64.go b/vendor/github.com/boltdb/bolt/bolt_riscv64.go
-new file mode 100644
-index 00000000..3d6b88d4
---- /dev/null
-+++ b/vendor/github.com/boltdb/bolt/bolt_riscv64.go
-@@ -0,0 +1,12 @@
-+// +build riscv64
-+
-+package bolt
-+
-+// maxMapSize represents the largest mmap size supported by Bolt.
-+const maxMapSize = 0xFFFFFFFFFFFF // 256TB
-+
-+// maxAllocSize is the size used when creating array pointers.
-+const maxAllocSize = 0x7FFFFFFF
-+
-+// Are unaligned load/stores broken on this arch?
-+var brokenUnaligned = false
---
-2.25.0
-
diff --git a/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb b/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb
deleted file mode 100644
index 0da2c6607..000000000
--- a/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb
+++ /dev/null
@@ -1,30 +0,0 @@
-SUMMARY = "Dependency management tool for Golang"
-HOMEPAGE = "https://github.com/golang/dep"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://src/${GO_IMPORT}/LICENSE;md5=1bad315647751fab0007812f70d42c0d"
-
-GO_IMPORT = "github.com/golang/dep"
-SRC_URI = "git://${GO_IMPORT} \
- file://0001-Add-support-for-mips-mips64.patch;patchdir=src/github.com/golang/dep \
- file://0001-bolt_riscv64-Add-support-for-riscv64.patch;patchdir=src/github.com/golang/dep \
- "
-SRC_URI_append_riscv64 = " file://0001-Update-sys-module-to-latest.patch;patchdir=src/github.com/golang/dep "
-
-SRCREV = "1f7c19e5f52f49ffb9f956f64c010be14683468b"
-
-inherit go
-
-# New Go versions has Go modules support enabled by default and cause the Glide
-# tool build to fail.
-export GO111MODULE = "off"
-
-GO_INSTALL = "${GO_IMPORT}/cmd/dep"
-
-RDEPENDS_${PN}-dev += "bash"
-
-BBCLASSEXTEND = "native nativesdk"
-
-# For compiling ptest on mips and mips64, the current go-dep version fails with the go 1.11 toolchain.
-# error message: vet config not found
-PTEST_ENABLED_mips = "0"
-PTEST_ENABLED_mips64 = "0"
diff --git a/poky/meta/recipes-devtools/go/go-native_1.16.bb b/poky/meta/recipes-devtools/go/go-native_1.16.2.bb
index f14892cdb..f14892cdb 100644
--- a/poky/meta/recipes-devtools/go/go-native_1.16.bb
+++ b/poky/meta/recipes-devtools/go/go-native_1.16.2.bb
diff --git a/poky/meta/recipes-devtools/go/go-runtime_1.16.bb b/poky/meta/recipes-devtools/go/go-runtime_1.16.2.bb
index 63464a150..63464a150 100644
--- a/poky/meta/recipes-devtools/go/go-runtime_1.16.bb
+++ b/poky/meta/recipes-devtools/go/go-runtime_1.16.2.bb
diff --git a/poky/meta/recipes-devtools/go/go_1.16.bb b/poky/meta/recipes-devtools/go/go_1.16.2.bb
index 4e9e0ebec..4e9e0ebec 100644
--- a/poky/meta/recipes-devtools/go/go_1.16.bb
+++ b/poky/meta/recipes-devtools/go/go_1.16.2.bb
diff --git a/poky/meta/recipes-devtools/help2man/help2man_1.48.1.bb b/poky/meta/recipes-devtools/help2man/help2man_1.48.2.bb
index bdea59d96..3e9b509ed 100644
--- a/poky/meta/recipes-devtools/help2man/help2man_1.48.1.bb
+++ b/poky/meta/recipes-devtools/help2man/help2man_1.48.2.bb
@@ -6,7 +6,7 @@ LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464"
SRC_URI = "${GNU_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "de8a74740bd058646567b92ab4ecdeb9da9f1a07cc7c4f607a3c14dd38d10799"
+SRC_URI[sha256sum] = "20cb36111df91d61741a20680912ab0e4c59da479c3fb05837c6f0a8cb7cb467"
inherit autotools
diff --git a/poky/meta/recipes-devtools/jquery/jquery_3.5.1.bb b/poky/meta/recipes-devtools/jquery/jquery_3.6.0.bb
index cfc32952c..65905966c 100644
--- a/poky/meta/recipes-devtools/jquery/jquery_3.5.1.bb
+++ b/poky/meta/recipes-devtools/jquery/jquery_3.6.0.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://jquery.com/"
DESCRIPTION = "${SUMMARY}"
LICENSE = "MIT"
SECTION = "devel"
-LIC_FILES_CHKSUM = "file://${S}/${BP}.js;beginline=8;endline=10;md5=ebd7bc5d23ab165188e526a0c65d24bb"
+LIC_FILES_CHKSUM = "file://${S}/${BP}.js;beginline=8;endline=10;md5=9c7c6e9ab275fc1e0d99cb7180ecd14c"
# unpack items to ${S} so the archiver can see them
#
@@ -13,9 +13,9 @@ SRC_URI = "\
https://code.jquery.com/${BP}.min.map;name=map;subdir=${BP} \
"
-SRC_URI[js.sha256sum] = "416a3b2c3bf16d64f6b5b6d0f7b079df2267614dd6847fc2f3271b4409233c37"
-SRC_URI[min.sha256sum] = "f7f6a5894f1d19ddad6fa392b2ece2c5e578cbf7da4ea805b6885eb6985b6e3d"
-SRC_URI[map.sha256sum] = "511d6f6d3e7acec78cd2505f04282b6e01329b4c24931f39d91739d0d1ddeef8"
+SRC_URI[js.sha256sum] = "1fe2bb5390a75e5d61e72c107cab528fc3c29a837d69aab7d200e1dbb5dcd239"
+SRC_URI[min.sha256sum] = "ff1523fb7389539c84c65aba19260648793bb4f5e29329d2ee8804bc37a3fe6e"
+SRC_URI[map.sha256sum] = "399548fb0e7b146c12f5ba18099a47d594a970fee96212eee0ab4852f3e56782"
UPSTREAM_CHECK_REGEX = "jquery-(?P<pver>\d+(\.\d+)+)\.js"
diff --git a/poky/meta/recipes-devtools/libdnf/libdnf/0001-libdnf-config.h-avoid-the-use-of-non-portable-__WORD.patch b/poky/meta/recipes-devtools/libdnf/libdnf/0001-libdnf-config.h-avoid-the-use-of-non-portable-__WORD.patch
new file mode 100644
index 000000000..f8d256e01
--- /dev/null
+++ b/poky/meta/recipes-devtools/libdnf/libdnf/0001-libdnf-config.h-avoid-the-use-of-non-portable-__WORD.patch
@@ -0,0 +1,31 @@
+From 8aa5402393fabaf4fff51be3af4868e8dfab6da7 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Tue, 9 Mar 2021 19:30:42 +0000
+Subject: [PATCH] libdnf/config.h: avoid the use of non-portable __WORDSIZE
+
+Upstream-Status: Submitted [https://github.com/rpm-software-management/libdnf/pull/1159]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ libdnf/config.h | 8 +++-----
+ 1 file changed, 3 insertions(+), 5 deletions(-)
+
+diff --git a/libdnf/config.h b/libdnf/config.h
+index 16121f6f..2925923e 100644
+--- a/libdnf/config.h
++++ b/libdnf/config.h
+@@ -18,12 +18,10 @@
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+-#include <bits/wordsize.h>
++#include <limits.h>
+
+-#if __WORDSIZE == 32
+-#include "config-32.h"
+-#elif __WORDSIZE == 64
++#if (ULONG_MAX == 0xffffffffffffffff)
+ #include "config-64.h"
+ #else
+-#error "Unknown word size"
++#include "config-32.h"
+ #endif
diff --git a/poky/meta/recipes-devtools/libdnf/libdnf_0.55.2.bb b/poky/meta/recipes-devtools/libdnf/libdnf_0.58.0.bb
index b34bb5de0..dbe68d5a1 100644
--- a/poky/meta/recipes-devtools/libdnf/libdnf_0.55.2.bb
+++ b/poky/meta/recipes-devtools/libdnf/libdnf_0.58.0.bb
@@ -11,9 +11,10 @@ SRC_URI = "git://github.com/rpm-software-management/libdnf;branch=dnf-4-master \
file://0001-Add-WITH_TESTS-option.patch \
file://0001-Look-fo-sphinx-only-if-documentation-is-actually-ena.patch \
file://enable_test_data_dir_set.patch \
+ file://0001-libdnf-config.h-avoid-the-use-of-non-portable-__WORD.patch \
"
-SRCREV = "d2d0ec98fd2e0a2623123fb1ddf8fdd8936c6046"
+SRCREV = "85278894f21bc1957dc47a2a09ddacf59bc3cda8"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/libedit/libedit_20191231-3.1.bb b/poky/meta/recipes-devtools/libedit/libedit_20210216-3.1.bb
index 8d2d57a93..97aceaf71 100644
--- a/poky/meta/recipes-devtools/libedit/libedit_20191231-3.1.bb
+++ b/poky/meta/recipes-devtools/libedit/libedit_20210216-3.1.bb
@@ -13,8 +13,7 @@ inherit autotools
SRC_URI = "http://www.thrysoee.dk/editline/${BP}.tar.gz \
file://stdc-predef.patch \
"
-SRC_URI[md5sum] = "2e22a51131de94ff2df24901f7cfe416"
-SRC_URI[sha256sum] = "dbb82cb7e116a5f8025d35ef5b4f7d4a3cdd0a3909a146a39112095a2d229071"
+SRC_URI[sha256sum] = "2283f741d2aab935c8c52c04b57bf952d02c2c02e651172f8ac811f77b1fc77a"
BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/librepo/librepo/0002-Do-not-try-to-obtain-PYTHON_INSTALL_DIR-by-running-p.patch b/poky/meta/recipes-devtools/librepo/librepo/0002-Do-not-try-to-obtain-PYTHON_INSTALL_DIR-by-running-p.patch
index b61f0c932..46ab9a113 100644
--- a/poky/meta/recipes-devtools/librepo/librepo/0002-Do-not-try-to-obtain-PYTHON_INSTALL_DIR-by-running-p.patch
+++ b/poky/meta/recipes-devtools/librepo/librepo/0002-Do-not-try-to-obtain-PYTHON_INSTALL_DIR-by-running-p.patch
@@ -1,4 +1,4 @@
-From b08a3b71e716dd0485ef51036d32e4c304fb4e67 Mon Sep 17 00:00:00 2001
+From 82bd6d196a0453657cbacaaedd75b2d2fe0bf9ba Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 30 Dec 2016 18:05:36 +0200
Subject: [PATCH] Do not try to obtain PYTHON_INSTALL_DIR by running python.
@@ -7,35 +7,17 @@ Upstream-Status: Inappropriate [oe-core specific]
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
- librepo/python/python2/CMakeLists.txt | 12 ++++++------
- librepo/python/python3/CMakeLists.txt | 12 ++++++------
- 2 files changed, 12 insertions(+), 12 deletions(-)
+ librepo/python/CMakeLists.txt | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
-diff --git a/librepo/python/python2/CMakeLists.txt b/librepo/python/python2/CMakeLists.txt
-index a0f1f9a..1665079 100644
---- a/librepo/python/python2/CMakeLists.txt
-+++ b/librepo/python/python2/CMakeLists.txt
-@@ -1,9 +1,9 @@
--EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "
--from sys import stdout
--from distutils import sysconfig
--path=sysconfig.get_python_lib(True, prefix='${CMAKE_INSTALL_PREFIX}')
--stdout.write(path)"
--OUTPUT_VARIABLE PYTHON_INSTALL_DIR)
-+#EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "
-+#from sys import stdout
-+#from distutils import sysconfig
-+#path=sysconfig.get_python_lib(True, prefix='${CMAKE_INSTALL_PREFIX}')
-+#stdout.write(path)"
-+#OUTPUT_VARIABLE PYTHON_INSTALL_DIR)
- INCLUDE_DIRECTORIES (${PYTHON_INCLUDE_PATH})
+diff --git a/librepo/python/CMakeLists.txt b/librepo/python/CMakeLists.txt
+index 52fc39e..2024407 100644
+--- a/librepo/python/CMakeLists.txt
++++ b/librepo/python/CMakeLists.txt
+@@ -16,12 +16,12 @@ SET (librepomodule_SRCS
+
+ MESSAGE("Building python bindings")
- MESSAGE(STATUS "Python install dir is ${PYTHON_INSTALL_DIR}")
-diff --git a/librepo/python/python3/CMakeLists.txt b/librepo/python/python3/CMakeLists.txt
-index 52ba44e..da51e10 100644
---- a/librepo/python/python3/CMakeLists.txt
-+++ b/librepo/python/python3/CMakeLists.txt
-@@ -1,9 +1,9 @@
-EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "
-from sys import stdout
-from distutils import sysconfig
diff --git a/poky/meta/recipes-devtools/librepo/librepo/0004-Set-gpgme-variables-with-pkg-config-not-with-cmake-m.patch b/poky/meta/recipes-devtools/librepo/librepo/0004-Set-gpgme-variables-with-pkg-config-not-with-cmake-m.patch
index 73902e5f5..d61d8fbf8 100644
--- a/poky/meta/recipes-devtools/librepo/librepo/0004-Set-gpgme-variables-with-pkg-config-not-with-cmake-m.patch
+++ b/poky/meta/recipes-devtools/librepo/librepo/0004-Set-gpgme-variables-with-pkg-config-not-with-cmake-m.patch
@@ -1,4 +1,4 @@
-From f5a1dfe4c87c228165bc25e7fe464120d8139a3d Mon Sep 17 00:00:00 2001
+From 25113b34bc1aae377d7bf447e69528783e2c177e Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 30 Dec 2016 18:23:27 +0200
Subject: [PATCH] Set gpgme variables with pkg-config, not with cmake module
@@ -12,13 +12,13 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index e949dbe..c954b2e 100644
+index a45d5c4..40249e6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -31,7 +31,8 @@ PKG_CHECK_MODULES(GLIB2 glib-2.0 REQUIRED)
+@@ -32,7 +32,8 @@ PKG_CHECK_MODULES(GLIB2 glib-2.0 REQUIRED)
PKG_SEARCH_MODULE(LIBCRYPTO REQUIRED libcrypto openssl)
PKG_CHECK_MODULES(LIBXML2 libxml-2.0 REQUIRED)
- FIND_PACKAGE(CURL REQUIRED)
+ FIND_PACKAGE(CURL 7.52.0 REQUIRED)
-FIND_PACKAGE(Gpgme REQUIRED)
+PKG_CHECK_MODULES(GPGME gpgme REQUIRED)
+set(GPGME_VANILLA_LIBRARIES ${GPGME_LIBRARIES})
diff --git a/poky/meta/recipes-devtools/librepo/librepo_1.12.1.bb b/poky/meta/recipes-devtools/librepo/librepo_1.13.0.bb
index e90928d2e..0a68e0ac4 100644
--- a/poky/meta/recipes-devtools/librepo/librepo_1.12.1.bb
+++ b/poky/meta/recipes-devtools/librepo/librepo_1.13.0.bb
@@ -10,7 +10,7 @@ SRC_URI = "git://github.com/rpm-software-management/librepo.git \
file://0004-Set-gpgme-variables-with-pkg-config-not-with-cmake-m.patch \
"
-SRCREV = "d4ad350291f2937c0b6a3eea9e1d0c8e1051fc32"
+SRCREV = "a244d78bab11510408fb9413f1c78c2f56c69fa5"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/libtool/libtool-2.4.6.inc b/poky/meta/recipes-devtools/libtool/libtool-2.4.6.inc
index 8e17b56d4..19a03d473 100644
--- a/poky/meta/recipes-devtools/libtool/libtool-2.4.6.inc
+++ b/poky/meta/recipes-devtools/libtool/libtool-2.4.6.inc
@@ -21,6 +21,7 @@ SRC_URI = "${GNU_MIRROR}/libtool/libtool-${PV}.tar.gz \
file://unwind-opt-parsing.patch \
file://0001-libtool-Fix-support-for-NIOS2-processor.patch \
file://0001-libtool-Check-for-static-libs-for-internal-compiler-.patch \
+ file://0001-Makefile.am-make-sure-autoheader-run-before-autoconf.patch \
"
SRC_URI[md5sum] = "addf44b646ddb4e3919805aa88fa7c5e"
diff --git a/poky/meta/recipes-devtools/libtool/libtool/0001-Makefile.am-make-sure-autoheader-run-before-autoconf.patch b/poky/meta/recipes-devtools/libtool/libtool/0001-Makefile.am-make-sure-autoheader-run-before-autoconf.patch
new file mode 100644
index 000000000..2e9908725
--- /dev/null
+++ b/poky/meta/recipes-devtools/libtool/libtool/0001-Makefile.am-make-sure-autoheader-run-before-autoconf.patch
@@ -0,0 +1,35 @@
+From dfbbbd359e43e0a55fbea06f2647279ad8761cb9 Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Wed, 24 Mar 2021 03:04:13 +0000
+Subject: [PATCH] Makefile.am: make sure autoheader run before autoconf
+
+autoheader will update ../libtool-2.4.6/libltdl/config-h.in which
+autoconf needs, so there comes a race sometimes as below:
+ | configure.ac:45: error: required file 'config-h.in' not found
+ | touch '../libtool-2.4.6/libltdl/config-h.in'
+
+So make sure autoheader run before autoconf to avoid this race.
+
+Upstream-Status: Submitted [libtool-patches@gnu.org maillist]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 4142c90..fe1a9fc 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -365,7 +365,7 @@ lt_configure_deps = $(lt_aclocal_m4) $(lt_aclocal_m4_deps)
+ $(lt_aclocal_m4): $(lt_aclocal_m4_deps)
+ $(AM_V_GEN)cd '$(srcdir)/$(ltdl_dir)' && $(ACLOCAL) -I ../m4
+
+-$(lt_configure): $(lt_configure_deps)
++$(lt_configure): $(lt_configure_deps) $(lt_config_h_in)
+ $(AM_V_GEN)cd '$(srcdir)/$(ltdl_dir)' && $(AUTOCONF)
+
+ $(lt_config_h_in): $(lt_configure_deps)
+--
+2.29.2
+
diff --git a/poky/meta/recipes-devtools/meson/meson.inc b/poky/meta/recipes-devtools/meson/meson.inc
index 622c22aff..e186dede9 100644
--- a/poky/meta/recipes-devtools/meson/meson.inc
+++ b/poky/meta/recipes-devtools/meson/meson.inc
@@ -14,6 +14,8 @@ SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${P
file://disable-rpath-handling.patch \
file://cross-prop-default.patch \
file://0001-modules-python.py-do-not-substitute-python-s-install.patch \
+ file://0001-minstall-Correctly-set-uid-gid-of-installed-files.patch \
+ file://gi-target-dep.patch \
"
SRC_URI[sha256sum] = "72e1c782ba9bda204f4a1ed57f98d027d7b6eb9414c723eebbd6ec7f1955c8a6"
@@ -22,6 +24,10 @@ SRC_URI_append_class-native = " \
file://0002-Support-building-allarch-recipes-again.patch \
"
+# remove at next version upgrade or when output changes
+PR = "r1"
+HASHEQUIV_HASH_VERSION .= ".1"
+
UPSTREAM_CHECK_URI = "https://github.com/mesonbuild/meson/releases"
UPSTREAM_CHECK_REGEX = "meson-(?P<pver>\d+(\.\d+)+)\.tar"
@@ -30,3 +36,13 @@ inherit setuptools3
RDEPENDS_${PN} = "ninja python3-modules python3-pkg-resources"
FILES_${PN} += "${datadir}/polkit-1"
+
+do_install_append () {
+ # As per the same issue in the python recipe itself:
+ # Unfortunately the following pyc files are non-deterministc due to 'frozenset'
+ # being written without strict ordering, even with PYTHONHASHSEED = 0
+ # Upstream is discussing ways to solve the issue properly, until then let's
+ # just not install the problematic files.
+ # More info: http://benno.id.au/blog/2013/01/15/python-determinism
+ rm ${D}${libdir}/python*/site-packages/mesonbuild/dependencies/__pycache__/mpi.cpython*
+}
diff --git a/poky/meta/recipes-devtools/meson/meson/0001-minstall-Correctly-set-uid-gid-of-installed-files.patch b/poky/meta/recipes-devtools/meson/meson/0001-minstall-Correctly-set-uid-gid-of-installed-files.patch
new file mode 100644
index 000000000..d55b7cc7c
--- /dev/null
+++ b/poky/meta/recipes-devtools/meson/meson/0001-minstall-Correctly-set-uid-gid-of-installed-files.patch
@@ -0,0 +1,28 @@
+From 3f6f4964dc79ae986f44afe1687922381f237edd Mon Sep 17 00:00:00 2001
+From: Peter Kjellerstedt <pkj@axis.com>
+Date: Wed, 3 Mar 2021 12:47:28 +0100
+Subject: [PATCH] minstall: Correctly set uid/gid of installed files
+
+In commit caab4d3d, the uid and gid arguments passed to os.chown() by
+set_chown() were accidentally swapped, causing files to end up with
+incorrect owner/group if the owner and group are not the same.
+
+Upstream-Status: Backport [https://github.com/mesonbuild/meson/commit/6226ac26ef63335bfb817db02b3f295c78214a82]
+Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
+---
+ mesonbuild/minstall.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
+index 785ff5869..07da408aa 100644
+--- a/mesonbuild/minstall.py
++++ b/mesonbuild/minstall.py
+@@ -148,7 +148,7 @@ def set_chown(path: str, user: T.Optional[str] = None, group: T.Optional[str] =
+ Use a real function rather than a lambda to help mypy out. Also real
+ functions are faster.
+ """
+- real_os_chown(path, gid, uid, dir_fd=dir_fd, follow_symlinks=follow_symlinks)
++ real_os_chown(path, uid, gid, dir_fd=dir_fd, follow_symlinks=follow_symlinks)
+
+ try:
+ os.chown = chown
diff --git a/poky/meta/recipes-devtools/meson/meson/gi-target-dep.patch b/poky/meta/recipes-devtools/meson/meson/gi-target-dep.patch
new file mode 100644
index 000000000..25b30ca27
--- /dev/null
+++ b/poky/meta/recipes-devtools/meson/meson/gi-target-dep.patch
@@ -0,0 +1,41 @@
+When building gobject-introspection we want the *native* binaries (as they need
+to be executed) but *host* gobject-introspection libraries, as otherwise the
+native pkg-config can be used and the build will try to link native and host
+binaries together.
+
+Upstream-Status: Pending
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
+index f9660838e..2eefc3fc7 100644
+--- a/mesonbuild/modules/gnome.py
++++ b/mesonbuild/modules/gnome.py
+@@ -84,8 +84,8 @@ class GnomeModule(ExtensionModule):
+ mlog.bold('https://github.com/mesonbuild/meson/issues/1387'),
+ once=True)
+
+- def _get_native_dep(self, state, depname, required=True):
+- kwargs = {'native': True, 'required': required}
++ def _get_dep(self, state, depname, native=False, required=True):
++ kwargs = {'native': native, 'required': required}
+ holder = self.interpreter.func_dependency(state.current_node, [depname], kwargs)
+ return holder.held_object
+
+@@ -101,7 +101,7 @@ class GnomeModule(ExtensionModule):
+ return ExternalProgram.from_entry(name, prog)
+
+ # Check if pkgconfig has a variable
+- dep = self._get_native_dep(state, depname, required=False)
++ dep = self._get_dep(state, depname, native=True, required=False)
+ if dep.found() and dep.type_name == 'pkgconfig':
+ value = dep.get_pkgconfig_variable(varname, {})
+ if value:
+@@ -481,7 +481,7 @@ class GnomeModule(ExtensionModule):
+
+ def _get_gir_dep(self, state):
+ if not self.gir_dep:
+- self.gir_dep = self._get_native_dep(state, 'gobject-introspection-1.0')
++ self.gir_dep = self._get_dep(state, 'gobject-introspection-1.0')
+ self.giscanner = self._get_native_binary(state, 'g-ir-scanner', 'gobject-introspection-1.0', 'g_ir_scanner')
+ self.gicompiler = self._get_native_binary(state, 'g-ir-compiler', 'gobject-introspection-1.0', 'g_ir_compiler')
+ return self.gir_dep, self.giscanner, self.gicompiler
diff --git a/poky/meta/recipes-devtools/perl/files/perl-rdepends.txt b/poky/meta/recipes-devtools/perl/files/perl-rdepends.txt
index e7cd55198..f20fc44b5 100644
--- a/poky/meta/recipes-devtools/perl/files/perl-rdepends.txt
+++ b/poky/meta/recipes-devtools/perl/files/perl-rdepends.txt
@@ -1,3 +1,11 @@
+
+# Some additional dependencies that the above doesn't manage to figure out
+RDEPENDS_perl-module-file-spec += "perl-module-file-spec-unix"
+RDEPENDS_perl-module-math-bigint += "perl-module-math-bigint-calc"
+RDEPENDS_perl-module-thread-queue += "perl-module-attributes"
+RDEPENDS_perl-module-overload += "perl-module-overloading"
+
+# Generated depends list beyond this line
RDEPENDS_perl-module-anydbm-file += "perl-module-strict"
RDEPENDS_perl-module-anydbm-file += "perl-module-warnings"
RDEPENDS_perl-module-app-cpan += "perl-module-config"
diff --git a/poky/meta/recipes-devtools/perl/liburi-perl_1.74.bb b/poky/meta/recipes-devtools/perl/liburi-perl_5.08.bb
index c27765bcb..4d22b17e0 100644
--- a/poky/meta/recipes-devtools/perl/liburi-perl_1.74.bb
+++ b/poky/meta/recipes-devtools/perl/liburi-perl_5.08.bb
@@ -13,8 +13,8 @@ DEPENDS += "perl"
SRC_URI = "http://www.cpan.org/authors/id/E/ET/ETHER/URI-${PV}.tar.gz"
-SRC_URI[md5sum] = "892f7183b178af40f205ba37128225db"
-SRC_URI[sha256sum] = "a9c254f45f89cb1dd946b689dfe433095404532a4543bdaab0b71ce0fdcdd53d"
+SRC_URI[md5sum] = "cdbbf8f8ccdec5c162c8505077a35c2c"
+SRC_URI[sha256sum] = "7e2c6fe3b1d5947da334fa558a96e748aaa619213b85bcdce5b5347d4d26c46e"
S = "${WORKDIR}/URI-${PV}"
diff --git a/poky/meta/recipes-devtools/perl/perl_5.32.1.bb b/poky/meta/recipes-devtools/perl/perl_5.32.1.bb
index 1fafc0a8c..b28040c7f 100644
--- a/poky/meta/recipes-devtools/perl/perl_5.32.1.bb
+++ b/poky/meta/recipes-devtools/perl/perl_5.32.1.bb
@@ -320,6 +320,9 @@ python split_perl_packages () {
# Read the pre-generated dependency file, and use it to set module dependecies
for line in open(d.expand("${WORKDIR}") + '/perl-rdepends.txt').readlines():
splitline = line.split()
+ # Filter empty lines and comments
+ if len(splitline) == 0 or splitline[0].startswith("#"):
+ continue
if bb.data.inherits_class('native', d):
module = splitline[0] + '-native'
depends = "perl-native"
@@ -367,8 +370,8 @@ EOPREAMBLE
sort -u | \
sed 's/^/RDEPENDS_/;s/perl-module-/${PN}-module-/g;s/module-\(module-\)/\1/g;s/\(module-load\)-conditional/\1/g;s/encode-configlocal/&-pm/;' | \
egrep -wv '=>|module-a|module-apache.?|module-apr|module-authen-sasl|module-b-asmdata|module-convert-ebcdic|module-devel-size|module-digest-perl-md5|module-dumpvalue|module-extutils-constant-aaargh56hash|module-extutils-xssymset|module-file-bsdglob|module-for|module-it|module-io-socket-inet6|module-io-socket-ssl|module-io-string|module-ipc-system-simple|module-lexical|module-local-lib|metadata|module-modperl-util|module-pluggable-object|module-test-builder-io-scalar|module-test2|module-text-unidecode|module-unicore|module-win32|objects\sload|syscall.ph|systeminfo.ph|%s' | \
- egrep -wv '=>|module-algorithm-diff|module-carp|module-c<extutils-mm-unix>|module-encode-hanextra|module-extutils-makemaker-version-regex|module-file-spec|module-io-compress-lzma|module-locale-maketext-lexicon|module-log-agent|module-meta-notation|module-net-localcfg|module-net-ping-external|module-b-deparse|module-scalar-util|module-some-module|module-symbol|module-uri|module-win32api-file' >> ${WORKDIR}/perl-rdepends.generated
- cp ${WORKDIR}/perl-rdepends.generated ${THISDIR}/files/perl-rdepends.txt
+ egrep -wv '=>|module-algorithm-diff|module-carp|module-c<extutils-mm-unix>|module-l<extutils-mm-unix>|module-encode-hanextra|module-extutils-makemaker-version-regex|module-file-spec|module-io-compress-lzma|module-io-uncompress-unxz|module-locale-maketext-lexicon|module-log-agent|module-meta-notation|module-net-localcfg|module-net-ping-external|module-b-deparse|module-scalar-util|module-some-module|module-symbol|module-uri|module-win32api-file' > ${WORKDIR}/perl-rdepends.generated
+ cat ${WORKDIR}/perl-rdepends.inc ${WORKDIR}/perl-rdepends.generated > ${THISDIR}/files/perl-rdepends.txt
}
# bitbake perl -c create_rdepends_inc
diff --git a/poky/meta/recipes-devtools/python/python-cython.inc b/poky/meta/recipes-devtools/python/python-cython.inc
index da6eba254..0e6bac06a 100644
--- a/poky/meta/recipes-devtools/python/python-cython.inc
+++ b/poky/meta/recipes-devtools/python/python-cython.inc
@@ -1,3 +1,5 @@
+SUMMARY = "The Cython language"
+HOMEPAGE = "https://pypi.org/project/Cython/"
DESCRIPTION = "Cython is a language specially designed for writing Python extension modules. \
It's designed to bridge the gap between the nice, high-level, easy-to-use world of Python \
and the messy, low-level world of C."
diff --git a/poky/meta/recipes-devtools/python/python3-cython_0.29.22.bb b/poky/meta/recipes-devtools/python/python3-cython_0.29.22.bb
index 01f716c16..2ec4033fa 100644
--- a/poky/meta/recipes-devtools/python/python3-cython_0.29.22.bb
+++ b/poky/meta/recipes-devtools/python/python3-cython_0.29.22.bb
@@ -20,8 +20,7 @@ do_install_append() {
PACKAGEBUILDPKGD += "cython_fix_sources"
cython_fix_sources () {
- sed -i -e 's#${WORKDIR}#/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}#g' \
- ${PKGD}/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}/Cython-${PV}/Cython/Compiler/FlowControl.c \
+ for f in ${PKGD}/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}/Cython-${PV}/Cython/Compiler/FlowControl.c \
${PKGD}/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}/Cython-${PV}/Cython/Compiler/FusedNode.c \
${PKGD}/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}/Cython-${PV}/Cython/Compiler/Scanning.c \
${PKGD}/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}/Cython-${PV}/Cython/Compiler/Visitor.c \
@@ -29,5 +28,9 @@ cython_fix_sources () {
${PKGD}/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}/Cython-${PV}/Cython/Plex/Scanners.c \
${PKGD}/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}/Cython-${PV}/Cython/Runtime/refnanny.c \
${PKGD}/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}/Cython-${PV}/Cython/Tempita/_tempita.c \
- ${PKGD}${libdir}/${PYTHON_DIR}/site-packages/Cython*/SOURCES.txt
+ ${PKGD}${libdir}/${PYTHON_DIR}/site-packages/Cython*/SOURCES.txt; do
+ if [ -e $f ]; then
+ sed -i -e 's#${WORKDIR}#/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}#g' $f
+ fi
+ done
}
diff --git a/poky/meta/recipes-devtools/python/python3-dbusmock_0.22.0.bb b/poky/meta/recipes-devtools/python/python3-dbusmock_0.22.0.bb
index b1feee841..0b87ab038 100644
--- a/poky/meta/recipes-devtools/python/python3-dbusmock_0.22.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-dbusmock_0.22.0.bb
@@ -1,4 +1,5 @@
SUMMARY = "With this program/Python library you can easily create mock objects on D-Bus"
+HOMEPAGE = "https://pypi.org/project/python-dbusmock/"
LICENSE = "GPL-3.0"
LIC_FILES_CHKSUM = "file://COPYING;md5=e6a600fd5e1d9cbde2d983680233ad02"
diff --git a/poky/meta/recipes-devtools/python/python3-iniconfig_1.1.1.bb b/poky/meta/recipes-devtools/python/python3-iniconfig_1.1.1.bb
index af4291bbf..6b3359712 100644
--- a/poky/meta/recipes-devtools/python/python3-iniconfig_1.1.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-iniconfig_1.1.1.bb
@@ -1,4 +1,5 @@
SUMMARY = "A small and simple INI-file parser module"
+HOMEPAGE = "https://pypi.org/project/iniconfig/"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=a6bb0320b04a0a503f12f69fea479de9"
diff --git a/poky/meta/recipes-devtools/python/python3-jinja2_2.11.3.bb b/poky/meta/recipes-devtools/python/python3-jinja2_2.11.3.bb
index 19a4eee11..dbdf563f8 100644
--- a/poky/meta/recipes-devtools/python/python3-jinja2_2.11.3.bb
+++ b/poky/meta/recipes-devtools/python/python3-jinja2_2.11.3.bb
@@ -1,4 +1,5 @@
DESCRIPTION = "Python Jinja2: A small but fast and easy to use stand-alone template engine written in pure python."
+HOMEPAGE = "https://pypi.org/project/Jinja/"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=5dc88300786f1c214c1e9827a5229462"
@@ -7,6 +8,8 @@ SRC_URI[sha256sum] = "a6d58433de0ae800347cab1fa3043cebbabe8baa9d29e668f1c768cb87
PYPI_PACKAGE = "Jinja2"
+CVE_PRODUCT = "jinja2 jinja"
+
CLEANBROKEN = "1"
inherit pypi setuptools3
diff --git a/poky/meta/recipes-devtools/python/python3-pygments_2.8.0.bb b/poky/meta/recipes-devtools/python/python3-pygments_2.8.1.bb
index 6c8afc509..a2e008348 100644
--- a/poky/meta/recipes-devtools/python/python3-pygments_2.8.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-pygments_2.8.1.bb
@@ -5,7 +5,7 @@ LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=98419e351433ac106a24e3ad435930bc"
inherit setuptools3
-SRC_URI[sha256sum] = "37a13ba168a02ac54cc5891a42b1caec333e59b66addb7fa633ea8a6d73445c0"
+SRC_URI[sha256sum] = "2656e1a6edcdabf4275f9a3640db59fd5de107d88e8663c5d4e9a0fa62f77f94"
DEPENDS += "\
${PYTHON_PN} \
diff --git a/poky/meta/recipes-devtools/python/python3-pygobject_3.38.0.bb b/poky/meta/recipes-devtools/python/python3-pygobject_3.38.0.bb
index b4427050f..8df3150e3 100644
--- a/poky/meta/recipes-devtools/python/python3-pygobject_3.38.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-pygobject_3.38.0.bb
@@ -1,4 +1,6 @@
SUMMARY = "Python GObject bindings"
+HOMEPAGE = "https://gitlab.gnome.org/GNOME/pygobject"
+DESCRIPTION = "PyGObject is a Python package which provides bindings for GObject based libraries such as GTK, GStreamer, WebKitGTK, GLib, GIO and many more."
SECTION = "devel/python"
LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7"
diff --git a/poky/meta/recipes-devtools/python/python3-pytest_6.2.2.bb b/poky/meta/recipes-devtools/python/python3-pytest_6.2.2.bb
index 392c20d03..d221cbcd7 100644
--- a/poky/meta/recipes-devtools/python/python3-pytest_6.2.2.bb
+++ b/poky/meta/recipes-devtools/python/python3-pytest_6.2.2.bb
@@ -1,4 +1,6 @@
SUMMARY = "Simple powerful testing with python"
+HOMEPAGE = "https://pypi.org/project/pytest/"
+DESCRIPTION = "The pytest framework makes it easy to write small tests, yet scales to support complex functional testing for applications and libraries."
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=81eb9f71d006c6b268cf4388e3c98f7b"
diff --git a/poky/meta/recipes-devtools/python/python3-scons_3.1.2.bb b/poky/meta/recipes-devtools/python/python3-scons_3.1.2.bb
index ce117a92d..12122131a 100644
--- a/poky/meta/recipes-devtools/python/python3-scons_3.1.2.bb
+++ b/poky/meta/recipes-devtools/python/python3-scons_3.1.2.bb
@@ -1,4 +1,5 @@
SUMMARY = "Software Construction tool (make/autotools replacement)"
+HOMEPAGE = "https://github.com/SCons/scons"
SECTION = "devel/python"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE-python3-scons-${PV};md5=e14e1b33428df24a40a782ae142785d0"
diff --git a/poky/meta/recipes-devtools/python/python3-setuptools-scm_5.0.1.bb b/poky/meta/recipes-devtools/python/python3-setuptools-scm_5.0.1.bb
index 406404ec6..ead80da7b 100644
--- a/poky/meta/recipes-devtools/python/python3-setuptools-scm_5.0.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-setuptools-scm_5.0.1.bb
@@ -1,4 +1,6 @@
SUMMARY = "the blessed package to manage your versions by scm tags"
+HOMEPAGE = "https://pypi.org/project/setuptools-scm/"
+DESCRIPTION = "setuptools_scm handles managing your Python package versions in SCM metadata instead of declaring them as the version argument or in a SCM managed file."
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=8227180126797a0148f94f483f3e1489"
diff --git a/poky/meta/recipes-devtools/python/python3-setuptools_53.0.0.bb b/poky/meta/recipes-devtools/python/python3-setuptools_54.1.1.bb
index 811c8a590..74264a381 100644
--- a/poky/meta/recipes-devtools/python/python3-setuptools_53.0.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-setuptools_54.1.1.bb
@@ -10,7 +10,7 @@ SRC_URI_append_class-native = " file://0001-conditionally-do-not-fetch-code-by-e
SRC_URI += "file://0001-change-shebang-to-python3.patch"
-SRC_URI[sha256sum] = "1b18ef17d74ba97ac9c0e4b4265f123f07a8ae85d9cd093949fa056d3eeeead5"
+SRC_URI[sha256sum] = "1ce82798848a978696465866bb3aaab356003c42d6143e1111fcf069ac838274"
DEPENDS += "${PYTHON_PN}"
diff --git a/poky/meta/recipes-devtools/python/python3-zipp_3.4.0.bb b/poky/meta/recipes-devtools/python/python3-zipp_3.4.1.bb
index 97523e8e7..191d3b38a 100644
--- a/poky/meta/recipes-devtools/python/python3-zipp_3.4.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-zipp_3.4.1.bb
@@ -3,8 +3,8 @@ HOMEPAGE = "https://github.com/jaraco/zipp"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=7a7126e068206290f3fe9f8d6c713ea6"
-SRC_URI[md5sum] = "ae81f228995578b840d76d1b7d87fede"
-SRC_URI[sha256sum] = "ed5eee1974372595f9e416cc7bbeeb12335201d8081ca8a0743c954d4446e5cb"
+SRC_URI[md5sum] = "3d91c7ab73b62ac3674210df94df600a"
+SRC_URI[sha256sum] = "3607921face881ba3e026887d8150cca609d517579abe052ac81fc5aeffdbd76"
DEPENDS += "${PYTHON_PN}-setuptools-scm-native"
diff --git a/poky/meta/recipes-devtools/python/python3/0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch b/poky/meta/recipes-devtools/python/python3/0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch
new file mode 100644
index 000000000..a49d603d4
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3/0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch
@@ -0,0 +1,53 @@
+From 0b25b66d4f54bd74615c9ff10f3fae8f0d1c548d Mon Sep 17 00:00:00 2001
+From: Yi Fan Yu <yifan.yu@windriver.com>
+Date: Thu, 1 Apr 2021 13:08:37 -0700
+Subject: [PATCH] Skip failing tests due to load variability on YP AB
+
+
+Skip these tests until AB-INT is solved.
+
+[YOCTO #14296]
+
+Upstream-Status: Inappropriate [OE-Specific]
+
+Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
+---
+ Lib/test/_test_multiprocessing.py | 2 ++
+ Lib/test/test_time.py | 1 +
+ 2 files changed, 3 insertions(+)
+
+diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py
+index fd3b430..cda29f6 100644
+--- a/Lib/test/_test_multiprocessing.py
++++ b/Lib/test/_test_multiprocessing.py
+@@ -568,6 +568,7 @@ def test_close(self):
+
+ close_queue(q)
+
++ @unittest.skip('timing related test, dependent on load')
+ def test_many_processes(self):
+ if self.TYPE == 'threads':
+ self.skipTest('test not appropriate for {}'.format(self.TYPE))
+@@ -4715,6 +4716,7 @@ def signal_and_sleep(cls, sem, period):
+ sem.release()
+ time.sleep(period)
+
++ @unittest.skip('timing related test, dependent on load')
+ def test_wait_integer(self):
+ from multiprocessing.connection import wait
+
+diff --git a/Lib/test/test_time.py b/Lib/test/test_time.py
+index 3258298..adcf407 100644
+--- a/Lib/test/test_time.py
++++ b/Lib/test/test_time.py
+@@ -474,6 +474,7 @@ def test_monotonic(self):
+ def test_perf_counter(self):
+ time.perf_counter()
+
++ @unittest.skip('timing related test, dependent on load')
+ def test_process_time(self):
+ # process_time() should not include time spend during a sleep
+ start = time.process_time()
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python/python3/0017-setup.py-do-not-report-missing-dependencies-for-disa.patch b/poky/meta/recipes-devtools/python/python3/0017-setup.py-do-not-report-missing-dependencies-for-disa.patch
index 5c620361d..5823273af 100644
--- a/poky/meta/recipes-devtools/python/python3/0017-setup.py-do-not-report-missing-dependencies-for-disa.patch
+++ b/poky/meta/recipes-devtools/python/python3/0017-setup.py-do-not-report-missing-dependencies-for-disa.patch
@@ -10,6 +10,8 @@ build completeness checker which relies on the report.
Upstream-Status: Inappropriate [oe-core specific]
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+Signed-off-by: Alejandro Hernandez Samaniego <alejandro@enedino.org>
---
setup.py | 4 ++++
@@ -19,13 +21,17 @@ diff --git a/setup.py b/setup.py
index 7691258..ec3f2a4 100644
--- a/setup.py
+++ b/setup.py
-@@ -408,6 +408,10 @@ class PyBuildExt(build_ext):
+@@ -408,6 +408,14 @@ class PyBuildExt(build_ext):
print("%-*s %-*s %-*s" % (longest, e, longest, f,
longest, g))
+ # There is no need to report missing module dependencies,
+ # if the modules have been disabled in the first place.
-+ self.missing = list(set(self.missing) - set(mods_disabled))
++ # cannot use mods_disabled here, because remove_configured_extensions adds
++ # only disabled extensions into it (doesn't cover _dbm, _gdbm, readline
++ # we support disabling through PACKAGECONFIG)
++ sysconf_dis = sysconfig.get_config_var('MODDISABLED_NAMES').split()
++ self.missing = list(set(self.missing) - set(sysconf_dis))
+
if self.missing:
print()
diff --git a/poky/meta/recipes-devtools/python/python3_3.9.2.bb b/poky/meta/recipes-devtools/python/python3_3.9.2.bb
index af1843a18..fd1172335 100644
--- a/poky/meta/recipes-devtools/python/python3_3.9.2.bb
+++ b/poky/meta/recipes-devtools/python/python3_3.9.2.bb
@@ -30,6 +30,7 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
file://0001-Makefile-do-not-compile-.pyc-in-parallel.patch \
file://0020-configure.ac-setup.py-do-not-add-a-curses-include-pa.patch \
file://0001-Lib-sysconfig.py-use-libdir-values-from-configuratio.patch \
+ file://0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch \
"
SRC_URI_append_class-native = " \
@@ -371,6 +372,7 @@ RDEPENDS_${PN}-ptest_append_libc-glibc = " locale-base-tr-tr.iso-8859-9"
RDEPENDS_${PN}-tkinter += "${@bb.utils.contains('PACKAGECONFIG', 'tk', 'tk tk-lib', '', d)}"
RDEPENDS_${PN}-idle += "${@bb.utils.contains('PACKAGECONFIG', 'tk', '${PN}-tkinter tcl', '', d)}"
RDEPENDS_${PN}-dev = ""
+RDEPENDS_${PN}-pydoc += "${PN}-io"
RDEPENDS_${PN}-tests_append_class-target = " ${MLPREFIX}bash"
RDEPENDS_${PN}-tests_append_class-nativesdk = " ${MLPREFIX}bash"
diff --git a/poky/meta/recipes-devtools/qemu/qemu.inc b/poky/meta/recipes-devtools/qemu/qemu.inc
index a6dc94162..a62580959 100644
--- a/poky/meta/recipes-devtools/qemu/qemu.inc
+++ b/poky/meta/recipes-devtools/qemu/qemu.inc
@@ -30,6 +30,7 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \
file://mmap2.patch \
file://determinism.patch \
file://0001-tests-meson.build-use-relative-path-to-refer-to-file.patch \
+ file://CVE-2021-20203.patch \
"
UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar"
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2021-20203.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2021-20203.patch
new file mode 100644
index 000000000..269c6f129
--- /dev/null
+++ b/poky/meta/recipes-devtools/qemu/qemu/CVE-2021-20203.patch
@@ -0,0 +1,73 @@
+From: Prasad J Pandit <pjp@fedoraproject.org>
+
+While activating device in vmxnet3_acticate_device(), it does not
+validate guest supplied configuration values against predefined
+minimum - maximum limits. This may lead to integer overflow or
+OOB access issues. Add checks to avoid it.
+
+Fixes: CVE-2021-20203
+Buglink: https://bugs.launchpad.net/qemu/+bug/1913873
+Reported-by: Gaoning Pan <pgn@zju.edu.cn>
+Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
+
+Upstream-Status: Acepted [https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg07935.html]
+CVE: CVE-2021-20203
+Signed-off-by: Minjae Kim <flowergom@gmail.com>
+---
+ hw/net/vmxnet3.c | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+diff --git a/hw/net/vmxnet3.c b/hw/net/vmxnet3.c
+index eff299f629..4a910ca971 100644
+--- a/hw/net/vmxnet3.c
++++ b/hw/net/vmxnet3.c
+@@ -1420,6 +1420,7 @@ static void vmxnet3_activate_device(VMXNET3State *s)
+ vmxnet3_setup_rx_filtering(s);
+ /* Cache fields from shared memory */
+ s->mtu = VMXNET3_READ_DRV_SHARED32(d, s->drv_shmem, devRead.misc.mtu);
++ assert(VMXNET3_MIN_MTU <= s->mtu && s->mtu < VMXNET3_MAX_MTU);
+ VMW_CFPRN("MTU is %u", s->mtu);
+
+ s->max_rx_frags =
+@@ -1473,6 +1474,9 @@ static void vmxnet3_activate_device(VMXNET3State *s)
+ /* Read rings memory locations for TX queues */
+ pa = VMXNET3_READ_TX_QUEUE_DESCR64(d, qdescr_pa, conf.txRingBasePA);
+ size = VMXNET3_READ_TX_QUEUE_DESCR32(d, qdescr_pa, conf.txRingSize);
++ if (size > VMXNET3_TX_RING_MAX_SIZE) {
++ size = VMXNET3_TX_RING_MAX_SIZE;
++ }
+
+ vmxnet3_ring_init(d, &s->txq_descr[i].tx_ring, pa, size,
+ sizeof(struct Vmxnet3_TxDesc), false);
+@@ -1483,6 +1487,9 @@ static void vmxnet3_activate_device(VMXNET3State *s)
+ /* TXC ring */
+ pa = VMXNET3_READ_TX_QUEUE_DESCR64(d, qdescr_pa, conf.compRingBasePA);
+ size = VMXNET3_READ_TX_QUEUE_DESCR32(d, qdescr_pa, conf.compRingSize);
++ if (size > VMXNET3_TC_RING_MAX_SIZE) {
++ size = VMXNET3_TC_RING_MAX_SIZE;
++ }
+ vmxnet3_ring_init(d, &s->txq_descr[i].comp_ring, pa, size,
+ sizeof(struct Vmxnet3_TxCompDesc), true);
+ VMXNET3_RING_DUMP(VMW_CFPRN, "TXC", i, &s->txq_descr[i].comp_ring);
+@@ -1524,6 +1531,9 @@ static void vmxnet3_activate_device(VMXNET3State *s)
+ /* RX rings */
+ pa = VMXNET3_READ_RX_QUEUE_DESCR64(d, qd_pa, conf.rxRingBasePA[j]);
+ size = VMXNET3_READ_RX_QUEUE_DESCR32(d, qd_pa, conf.rxRingSize[j]);
++ if (size > VMXNET3_RX_RING_MAX_SIZE) {
++ size = VMXNET3_RX_RING_MAX_SIZE;
++ }
+ vmxnet3_ring_init(d, &s->rxq_descr[i].rx_ring[j], pa, size,
+ sizeof(struct Vmxnet3_RxDesc), false);
+ VMW_CFPRN("RX queue %d:%d: Base: %" PRIx64 ", Size: %d",
+@@ -1533,6 +1543,9 @@ static void vmxnet3_activate_device(VMXNET3State *s)
+ /* RXC ring */
+ pa = VMXNET3_READ_RX_QUEUE_DESCR64(d, qd_pa, conf.compRingBasePA);
+ size = VMXNET3_READ_RX_QUEUE_DESCR32(d, qd_pa, conf.compRingSize);
++ if (size > VMXNET3_RC_RING_MAX_SIZE) {
++ size = VMXNET3_RC_RING_MAX_SIZE;
++ }
+ vmxnet3_ring_init(d, &s->rxq_descr[i].comp_ring, pa, size,
+ sizeof(struct Vmxnet3_RxCompDesc), true);
+ VMW_CFPRN("RXC queue %d: Base: %" PRIx64 ", Size: %d", i, pa, size);
+--
+2.29.2
diff --git a/poky/meta/recipes-devtools/rpm/rpm_4.16.1.2.bb b/poky/meta/recipes-devtools/rpm/rpm_4.16.1.2.bb
index 9195d66dd..d369c706a 100644
--- a/poky/meta/recipes-devtools/rpm/rpm_4.16.1.2.bb
+++ b/poky/meta/recipes-devtools/rpm/rpm_4.16.1.2.bb
@@ -145,15 +145,46 @@ FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}/environment-setup.d/rpm.
FILES_${PN}-dev += "${libdir}/rpm-plugins/*.la \
"
+PACKAGE_BEFORE_PN += "${PN}-build ${PN}-sign ${PN}-archive"
+
+RRECOMMENDS_${PN} += "rpm-build rpm-sign rpm-archive"
+
+FILES_${PN}-build = "\
+ ${bindir}/rpmbuild \
+ ${bindir}/gendiff \
+ ${bindir}/rpmspec \
+ ${libdir}/librpmbuild.so.* \
+ ${libdir}/rpm/brp-* \
+ ${libdir}/rpm/check-* \
+ ${libdir}/rpm/debugedit \
+ ${libdir}/rpm/sepdebugcrcfix \
+ ${libdir}/rpm/find-debuginfo.sh \
+ ${libdir}/rpm/find-lang.sh \
+ ${libdir}/rpm/*provides* \
+ ${libdir}/rpm/*requires* \
+ ${libdir}/rpm/*deps* \
+ ${libdir}/rpm/*.prov \
+ ${libdir}/rpm/*.req \
+ ${libdir}/rpm/config.* \
+ ${libdir}/rpm/mkinstalldirs \
+ ${libdir}/rpm/macros.p* \
+ ${libdir}/rpm/fileattrs/* \
+"
+
+FILES_${PN}-sign = "\
+ ${bindir}/rpmsign \
+ ${libdir}/librpmsign.so.* \
+"
+
+FILES_${PN}-archive = "\
+ ${bindir}/rpm2archive \
+"
PACKAGES += "python3-rpm"
PROVIDES += "python3-rpm"
FILES_python3-rpm = "${PYTHON_SITEPACKAGES_DIR}/rpm/*"
-# rpm 5.x was packaging the rpm build tools separately
-RPROVIDES_${PN} += "rpm-build"
-
-RDEPENDS_${PN} = "bash perl python3-core"
+RDEPENDS_${PN}-build = "bash perl python3-core"
PACKAGE_PREPROCESS_FUNCS += "rpm_package_preprocess"
diff --git a/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts b/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts
index f84a7e18c..95dccb9ca 100755
--- a/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts
+++ b/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts
@@ -72,12 +72,12 @@ exec_postinst_scriptlets() {
else
echo "ERROR: postinst $i failed."
[ "$POSTINST_LOGGING" = "1" ] && eval echo "ERROR: postinst $i failed." $append_log
- remove_pi_dir=0
+ remove_rcsd_link=0
fi
done
}
-remove_pi_dir=1
+remove_rcsd_link=1
if $pm_installed; then
case $pm in
"ipk")
@@ -92,9 +92,7 @@ else
exec_postinst_scriptlets
fi
-# since all postinstalls executed successfully, remove the postinstalls directory
-# and the rcS.d link
-if [ $remove_pi_dir = 1 ]; then
- rm -rf $pi_dir
+# since all postinstalls executed successfully, remove the rcS.d link
+if [ $remove_rcsd_link = 1 ]; then
remove_rcsd_link
fi
diff --git a/poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch b/poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch
index 42c1893f3..4cef0c012 100644
--- a/poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch
+++ b/poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch
@@ -1,4 +1,4 @@
-From ee47e205255928679701a5b769bd7ae0f815119d Mon Sep 17 00:00:00 2001
+From 205e7661822987825c7149ada4eefdc5368828ce Mon Sep 17 00:00:00 2001
From: Gabriel Barbu <gabriel.barbu@enea.com>
Date: Thu, 25 Jul 2013 15:28:33 +0200
Subject: [PATCH] strace: Add ptest
@@ -10,14 +10,14 @@ Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
---
- tests/Makefile.am | 19 +++++++++++++++++++
- 1 file changed, 19 insertions(+)
+ tests/Makefile.am | 20 ++++++++++++++++++++
+ 1 file changed, 20 insertions(+)
diff --git a/tests/Makefile.am b/tests/Makefile.am
-index 8cf4c36..66162eb 100644
+index b8efce8..fa9a1af 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
-@@ -15,6 +15,7 @@ SIZEOF_LONG = @SIZEOF_LONG@
+@@ -16,6 +16,7 @@ SIZEOF_LONG = @SIZEOF_LONG@
MPERS_NAME =
MPERS_CC_FLAGS =
ARCH_MFLAGS =
@@ -25,16 +25,17 @@ index 8cf4c36..66162eb 100644
AM_CFLAGS = $(WARN_CFLAGS)
AM_CPPFLAGS = $(ARCH_MFLAGS) \
-I$(builddir) \
-@@ -538,3 +539,21 @@ BUILT_SOURCES = ksysent.h
+@@ -692,3 +693,22 @@ BUILT_SOURCES = ksysent.h
CLEANFILES = ksysent.h
- include ../scno.am
+ include ../src/scno.am
+
+buildtest-TESTS: $(check_PROGRAMS) $(TESTS)
+
+install-ptest:
-+ install $(BUILDDIR)/strace $(DESTDIR)
-+ install $(srcdir)/../strace-log-merge $(DESTDIR)
++ install -d $(DESTDIR)/src
++ install $(BUILDDIR)/src/strace $(DESTDIR)/src
++ install $(srcdir)/../src/strace-log-merge $(DESTDIR)/src
+ install -d $(DESTDIR)/$(TESTDIR)
+ cp $(BUILDDIR)/$(TESTDIR)/Makefile $(DESTDIR)/$(TESTDIR)
+ sed -i -e 's/^Makefile:/_Makefile:/' $(DESTDIR)/$(TESTDIR)/Makefile
diff --git a/poky/meta/recipes-devtools/strace/strace/disable-git-version-gen.patch b/poky/meta/recipes-devtools/strace/strace/disable-git-version-gen.patch
deleted file mode 100644
index e8dbd7f27..000000000
--- a/poky/meta/recipes-devtools/strace/strace/disable-git-version-gen.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From d87a7feb5ea75da7061afdd473faba044ec8eb0f Mon Sep 17 00:00:00 2001
-From: Andre McCurdy <armccurdy@gmail.com>
-Date: Mon, 18 Jan 2016 13:33:50 -0800
-Subject: [PATCH] strace: remove need for scripts
-
-git-version-gen copyright-year-gen file-date-gen are not included in
-tarball releases, so we need to avoid attempts to call them.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
-Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
-
----
- configure.ac | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index dd4f13f..65f000b 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -12,12 +12,12 @@
-
- AC_PREREQ(2.57)
- AC_INIT([strace],
-- st_esyscmd_s([./git-version-gen .tarball-version]),
-+ m4_esyscmd_s([cat .tarball-version]),
- [strace-devel@lists.strace.io],
- [strace],
- [https://strace.io])
--m4_define([copyright_year], st_esyscmd_s([./copyright-year-gen .year]))
--m4_define([manpage_date], st_esyscmd_s([./file-date-gen strace.1.in]))
-+m4_define([copyright_year], m4_esyscmd_s([cat .year]))
-+m4_define([manpage_date], m4_esyscmd_s([cat .strace.1.in.date]))
- AC_COPYRIGHT([Copyright (c) 1999-]copyright_year[ The strace developers.])
- AC_CONFIG_SRCDIR([strace.c])
- AC_CONFIG_AUX_DIR([.])
diff --git a/poky/meta/recipes-devtools/strace/strace/update-gawk-paths.patch b/poky/meta/recipes-devtools/strace/strace/update-gawk-paths.patch
index d46b147de..0c683496a 100644
--- a/poky/meta/recipes-devtools/strace/strace/update-gawk-paths.patch
+++ b/poky/meta/recipes-devtools/strace/strace/update-gawk-paths.patch
@@ -1,4 +1,4 @@
-From 12a726b280eca94883edcb4da1eaaf8e93d41739 Mon Sep 17 00:00:00 2001
+From 4cd26cfaec255ec87f22abe886e0be89312a9671 Mon Sep 17 00:00:00 2001
From: Andre McCurdy <armccurdy@gmail.com>
Date: Mon, 18 Jan 2016 11:01:00 -0800
Subject: [PATCH] update gawk paths, /bin/gawk -> /usr/bin/gawk
@@ -13,7 +13,7 @@ Upstream-Status: Inappropriate [configuration]
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
---
- mpers.awk | 2 +-
+ src/mpers.awk | 2 +-
tests-m32/caps.awk | 2 +-
tests-m32/match.awk | 2 +-
tests-m32/rt_sigaction.awk | 2 +-
@@ -25,18 +25,18 @@ Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
tests/rt_sigaction.awk | 2 +-
10 files changed, 10 insertions(+), 10 deletions(-)
-diff --git a/mpers.awk b/mpers.awk
-index 17f8f2b..d69dcd5 100644
---- a/mpers.awk
-+++ b/mpers.awk
+diff --git a/src/mpers.awk b/src/mpers.awk
+index 25a212f..b2ff53f 100644
+--- a/src/mpers.awk
++++ b/src/mpers.awk
@@ -1,4 +1,4 @@
-#!/bin/gawk
+#!/usr/bin/gawk
#
# Copyright (c) 2015 Elvira Khabirova <lineprinter0@gmail.com>
- # Copyright (c) 2015-2016 Dmitry V. Levin <ldv@altlinux.org>
+ # Copyright (c) 2015-2016 Dmitry V. Levin <ldv@strace.io>
diff --git a/tests-m32/caps.awk b/tests-m32/caps.awk
-index 941564a..0bcc3ff 100644
+index 69500ec..e5dfd87 100644
--- a/tests-m32/caps.awk
+++ b/tests-m32/caps.awk
@@ -1,4 +1,4 @@
@@ -46,27 +46,27 @@ index 941564a..0bcc3ff 100644
# This file is part of caps strace test.
#
diff --git a/tests-m32/match.awk b/tests-m32/match.awk
-index d91c518..ee5d908 100644
+index 1cde87c..df63f78 100644
--- a/tests-m32/match.awk
+++ b/tests-m32/match.awk
@@ -1,4 +1,4 @@
-#!/bin/gawk
+#!/usr/bin/gawk
#
- # Copyright (c) 2014-2018 Dmitry V. Levin <ldv@altlinux.org>
+ # Copyright (c) 2014-2021 Dmitry V. Levin <ldv@strace.io>
# All rights reserved.
diff --git a/tests-m32/rt_sigaction.awk b/tests-m32/rt_sigaction.awk
-index 81dd813..9cd9549 100644
+index dce78f5..573d9ea 100644
--- a/tests-m32/rt_sigaction.awk
+++ b/tests-m32/rt_sigaction.awk
@@ -1,4 +1,4 @@
-#!/bin/gawk
+#!/usr/bin/gawk
#
- # Copyright (c) 2014-2015 Dmitry V. Levin <ldv@altlinux.org>
+ # Copyright (c) 2014-2015 Dmitry V. Levin <ldv@strace.io>
# Copyright (c) 2016 Elvira Khabirova <lineprinter0@gmail.com>
diff --git a/tests-mx32/caps.awk b/tests-mx32/caps.awk
-index 941564a..0bcc3ff 100644
+index 69500ec..e5dfd87 100644
--- a/tests-mx32/caps.awk
+++ b/tests-mx32/caps.awk
@@ -1,4 +1,4 @@
@@ -76,27 +76,27 @@ index 941564a..0bcc3ff 100644
# This file is part of caps strace test.
#
diff --git a/tests-mx32/match.awk b/tests-mx32/match.awk
-index d91c518..ee5d908 100644
+index 1cde87c..df63f78 100644
--- a/tests-mx32/match.awk
+++ b/tests-mx32/match.awk
@@ -1,4 +1,4 @@
-#!/bin/gawk
+#!/usr/bin/gawk
#
- # Copyright (c) 2014-2018 Dmitry V. Levin <ldv@altlinux.org>
+ # Copyright (c) 2014-2021 Dmitry V. Levin <ldv@strace.io>
# All rights reserved.
diff --git a/tests-mx32/rt_sigaction.awk b/tests-mx32/rt_sigaction.awk
-index 81dd813..9cd9549 100644
+index dce78f5..573d9ea 100644
--- a/tests-mx32/rt_sigaction.awk
+++ b/tests-mx32/rt_sigaction.awk
@@ -1,4 +1,4 @@
-#!/bin/gawk
+#!/usr/bin/gawk
#
- # Copyright (c) 2014-2015 Dmitry V. Levin <ldv@altlinux.org>
+ # Copyright (c) 2014-2015 Dmitry V. Levin <ldv@strace.io>
# Copyright (c) 2016 Elvira Khabirova <lineprinter0@gmail.com>
diff --git a/tests/caps.awk b/tests/caps.awk
-index 941564a..0bcc3ff 100644
+index 69500ec..e5dfd87 100644
--- a/tests/caps.awk
+++ b/tests/caps.awk
@@ -1,4 +1,4 @@
@@ -106,22 +106,22 @@ index 941564a..0bcc3ff 100644
# This file is part of caps strace test.
#
diff --git a/tests/match.awk b/tests/match.awk
-index d91c518..ee5d908 100644
+index 1cde87c..df63f78 100644
--- a/tests/match.awk
+++ b/tests/match.awk
@@ -1,4 +1,4 @@
-#!/bin/gawk
+#!/usr/bin/gawk
#
- # Copyright (c) 2014-2018 Dmitry V. Levin <ldv@altlinux.org>
+ # Copyright (c) 2014-2021 Dmitry V. Levin <ldv@strace.io>
# All rights reserved.
diff --git a/tests/rt_sigaction.awk b/tests/rt_sigaction.awk
-index 81dd813..9cd9549 100644
+index dce78f5..573d9ea 100644
--- a/tests/rt_sigaction.awk
+++ b/tests/rt_sigaction.awk
@@ -1,4 +1,4 @@
-#!/bin/gawk
+#!/usr/bin/gawk
#
- # Copyright (c) 2014-2015 Dmitry V. Levin <ldv@altlinux.org>
+ # Copyright (c) 2014-2015 Dmitry V. Levin <ldv@strace.io>
# Copyright (c) 2016 Elvira Khabirova <lineprinter0@gmail.com>
diff --git a/poky/meta/recipes-devtools/strace/strace_5.10.bb b/poky/meta/recipes-devtools/strace/strace_5.11.bb
index 17bde082a..f6a91df1d 100644
--- a/poky/meta/recipes-devtools/strace/strace_5.10.bb
+++ b/poky/meta/recipes-devtools/strace/strace_5.11.bb
@@ -3,10 +3,9 @@ HOMEPAGE = "http://strace.io"
DESCRIPTION = "strace is a diagnostic, debugging and instructional userspace utility for Linux. It is used to monitor and tamper with interactions between processes and the Linux kernel, which include system calls, signal deliveries, and changes of process state."
SECTION = "console/utils"
LICENSE = "LGPL-2.1+ & GPL-2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=c756d9d5dabc27663df64f0bf492166c"
+LIC_FILES_CHKSUM = "file://COPYING;md5=318cfc887fc8723f4e9d4709b55e065b"
SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \
- file://disable-git-version-gen.patch \
file://update-gawk-paths.patch \
file://Makefile-ptest.patch \
file://run-ptest \
@@ -16,7 +15,7 @@ SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \
file://uintptr_t.patch \
file://0001-strace-fix-reproducibilty-issues.patch \
"
-SRC_URI[sha256sum] = "fe3982ea4cd9aeb3b4ba35f6279f0b577a37175d3282be24b9a5537b56b8f01c"
+SRC_URI[sha256sum] = "ffe340b10c145a0f85734271e9cce56457d23f21a7ea5931ab32f8cf4e793879"
inherit autotools ptest
@@ -34,19 +33,16 @@ CFLAGS_append_libc-musl = " -Dsigcontext_struct=sigcontext"
TESTDIR = "tests"
PTEST_BUILD_HOST_PATTERN = "^(DEB_CHANGELOGTIME|RPM_CHANGELOGTIME|WARN_CFLAGS_FOR_BUILD|LDFLAGS_FOR_BUILD)"
-do_install_append() {
- # We don't ship strace-graph here because it needs perl
- rm ${D}${bindir}/strace-graph
-}
-
do_compile_ptest() {
- oe_runmake -C ${TESTDIR} buildtest-TESTS
+ oe_runmake ${PARALLEL_MAKE} -C ${TESTDIR} buildtest-TESTS
}
do_install_ptest() {
oe_runmake -C ${TESTDIR} install-ptest BUILDDIR=${B} DESTDIR=${D}${PTEST_PATH} TESTDIR=${TESTDIR}
- install -m 755 ${S}/test-driver ${D}${PTEST_PATH}
- install -m 644 ${B}/config.h ${D}${PTEST_PATH}
+ mkdir -p ${D}${PTEST_PATH}/build-aux
+ mkdir -p ${D}${PTEST_PATH}/src
+ install -m 755 ${S}/build-aux/test-driver ${D}${PTEST_PATH}/build-aux/
+ install -m 644 ${B}/src/config.h ${D}${PTEST_PATH}/src/
sed -i -e '/^src/s/strace.*[0-9]/ptest/' ${D}/${PTEST_PATH}/${TESTDIR}/Makefile
}
diff --git a/poky/meta/recipes-devtools/vala/vala_0.50.3.bb b/poky/meta/recipes-devtools/vala/vala_0.50.4.bb
index 302f56254..438163551 100644
--- a/poky/meta/recipes-devtools/vala/vala_0.50.3.bb
+++ b/poky/meta/recipes-devtools/vala/vala_0.50.4.bb
@@ -2,4 +2,4 @@ require ${BPN}.inc
SRC_URI += " file://0001-vapigen.m4-use-PKG_CONFIG_SYSROOT_DIR.patch"
-SRC_URI[sha256sum] = "6165c1b42beca4856e2fb9a31c5e81949d76fa670e2f0cfc8389ce9b95eca5db"
+SRC_URI[sha256sum] = "58fc31fa8bf492035b11d1a7d514801710afc65bd458b24c0f8d00280a92a38c"
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-Fix-nlcontrolc.vgtest-hanging-on-newer-glibc-and-or-.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-Fix-nlcontrolc.vgtest-hanging-on-newer-glibc-and-or-.patch
new file mode 100644
index 000000000..98cbcd132
--- /dev/null
+++ b/poky/meta/recipes-devtools/valgrind/valgrind/0001-Fix-nlcontrolc.vgtest-hanging-on-newer-glibc-and-or-.patch
@@ -0,0 +1,200 @@
+From 83c24e31df6932a6d4fced179050c6d8d8c6f3b5 Mon Sep 17 00:00:00 2001
+From: Philippe Waroquiers <philippe.waroquiers@skynet.be>
+Date: Sun, 7 Mar 2021 22:29:27 +0100
+Subject: [PATCH] Fix nlcontrolc.vgtest hanging on newer glibc and/or arm64
+
+This test verifies that GDB can interrupt a process with all threads
+blocked in a long select syscall.
+The test used to terminate by having GDB modifying the select argument.
+However, modifying the select argument works only for specific arch
+and/or specific versions of glibc.
+The test then blocks on other architectures/glibc versions.
+
+The previous version of the test was:
+ * first launching sleepers so as to have all threads blocked in long select
+ * interrupting these threads
+ * changing the select time arg so that the threads burn cpu
+ * and then change variables to have the program exit.
+
+The new version does:
+ * first launches sleepers so that all threads are burning cpu.
+ * interrupting these threads
+ * change the local variables of sleepers so that the threads will
+ block in a long select syscall
+ * interrupt these threads
+ * kill the program.
+
+With this new version, we still check the behaviour of gdb+vgdbserver
+for both burning and sleep threads, but without having the termination
+depending on modifying select syscall argument.
+
+Tested on debian amd64 and on ubuntu arm64 (to check the test does not hang
+on an arm64 platform).
+
+Upstream-Status: Backport
+
+From commit on master:
+c79180a3afcf65902e578646c3b716cc749db406
+
+Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
+---
+ gdbserver_tests/nlcontrolc.stderr.exp | 4 +-
+ gdbserver_tests/nlcontrolc.stdinB.gdb | 57 +++++++++++++++-----------
+ gdbserver_tests/nlcontrolc.stdoutB.exp | 25 ++++++-----
+ gdbserver_tests/nlcontrolc.vgtest | 12 +++---
+ 4 files changed, 56 insertions(+), 42 deletions(-)
+
+diff --git a/gdbserver_tests/nlcontrolc.stderr.exp b/gdbserver_tests/nlcontrolc.stderr.exp
+index ac75bb3da..b63a9a988 100644
+--- a/gdbserver_tests/nlcontrolc.stderr.exp
++++ b/gdbserver_tests/nlcontrolc.stderr.exp
+@@ -3,9 +3,9 @@ Nulgrind, the minimal Valgrind tool
+ (action at startup) vgdb me ...
+
+
+-loops/sleep_ms/burn/threads_spec/affinity: 1000000000 1000000000 1000000000 BSBSBSBS 1
++loops/sleep_ms/burn/threads_spec/affinity: 1000000000 0 100000 BSBSBSBS 1
+ Brussels ready to sleep and/or burn
+ London ready to sleep and/or burn
+ Petaouchnok ready to sleep and/or burn
+ main ready to sleep and/or burn
+-
++Gdb request to kill this process
+diff --git a/gdbserver_tests/nlcontrolc.stdinB.gdb b/gdbserver_tests/nlcontrolc.stdinB.gdb
+index 667ece18d..ea4fcd530 100644
+--- a/gdbserver_tests/nlcontrolc.stdinB.gdb
++++ b/gdbserver_tests/nlcontrolc.stdinB.gdb
+@@ -9,32 +9,43 @@ shell ./simulate_control_c --vgdb-prefix=./vgdb-prefix-nlcontrolc 1 grep main nl
+ #
+ continue
+ #
+-# Here, all tasks should be blocked in a loooonnnng select, all in WaitSys
+-info threads
+-# We will unblock them by changing their timeout argument
+-# To avoid going into the frame where the timeval arg is,
+-# it has been defined as global variables, as the nr
+-# of calls on the stack differs between 32bits and 64bits,
+-# and/or between OS.
+-# ensure select finishes in a few milliseconds max:
+-p t[0].tv_sec = 0
+-p t[1].tv_sec = 0
+-p t[2].tv_sec = 0
+-p t[3].tv_sec = 0
+-#
+-# We will change the burning parameters in a few seconds
++# Threads are burning cpu now
++# We would like to fully test info threads here, but which thread are Runnable
++# or Yielding is unpredictable. With a recent enough gdb, check the nr of
++# threads by state using pipe commands and grep/wc.
++init-if-undefined $_gdb_major = 0
++init-if-undefined $_gdb_minor = 0
++if $_gdb_major >= 9
++ | info threads | grep VgTs_Runnable | wc -l
++ | info threads | grep VgTs_Yielding | wc -l
++else
++ echo 1\n
++ echo 3\n
++end
++# We change the variables so that all the threads are blocked in a syscall
++p burn = 0
++p sleepms = 1000000
++#
++#
+ shell ./simulate_control_c --vgdb-prefix=./vgdb-prefix-nlcontrolc 1 grep changed nlcontrolc.stdoutB.out
+ #
+-echo changed burning parameters\n
++echo changed burning parameters to sleeping parameters\n
+ continue
++# Here, all tasks should be blocked in a loooonnnng select, all in WaitSys
++info threads
++# We reset the sleepms to 0. The threads should still be blocked in the syscall
++p sleepms = 0
++shell ./simulate_control_c --vgdb-prefix=./vgdb-prefix-nlcontrolc 1 grep reset nlcontrolc.stdoutB.out
+ #
+-# Threads are burning cpu now
+-# We would like to test info threads here, but which thread are Runnable or Yielding
+-# is unpredictable.
+-# info threads
+-p burn = 0
+-p loops = 0
+-p report_finished = 0
++echo reset to sleeping parameters\n
+ continue
+-# and the process should stop very quickly now
++# threads should still be blocked in a loooonnnng select, all in WaitSys
++info threads
++if $_gdb_major >= 9
++ | info threads | grep VgTs_WaitSys | wc -l
++else
++ echo 4\n
++end
++# Make the process die.
++kill
+ quit
+diff --git a/gdbserver_tests/nlcontrolc.stdoutB.exp b/gdbserver_tests/nlcontrolc.stdoutB.exp
+index e8a5ff8ba..2e8dc8498 100644
+--- a/gdbserver_tests/nlcontrolc.stdoutB.exp
++++ b/gdbserver_tests/nlcontrolc.stdoutB.exp
+@@ -1,18 +1,21 @@
+ Continuing.
+ Program received signal SIGTRAP, Trace/breakpoint trap.
++do_burn () at sleepers.c:41
++41 for (i = 0; i < burn; i++) loopnr++;
++ > > > > > >1
++3
++$1 = 0
++$2 = 1000000
++changed burning parameters to sleeping parameters
++Continuing.
++Program received signal SIGTRAP, Trace/breakpoint trap.
+ 0x........ in syscall ...
+ * 1 Thread .... (tid 1 VgTs_WaitSys) 0x........ in syscall ...
+-$1 = 0
+-$2 = 0
+ $3 = 0
+-$4 = 0
+-changed burning parameters
++reset to sleeping parameters
+ Continuing.
+ Program received signal SIGTRAP, Trace/breakpoint trap.
+-do_burn () at sleepers.c:41
+-41 for (i = 0; i < burn; i++) loopnr++;
+-$5 = 0
+-$6 = 0
+-$7 = 0
+-Continuing.
+-Program exited normally.
++0x........ in syscall ...
++* 1 Thread .... (tid 1 VgTs_WaitSys) 0x........ in syscall ...
++ > > > >4
++Kill the program being debugged? (y or n) [answered Y; input not from terminal]
+diff --git a/gdbserver_tests/nlcontrolc.vgtest b/gdbserver_tests/nlcontrolc.vgtest
+index bb5308403..09edfcaba 100644
+--- a/gdbserver_tests/nlcontrolc.vgtest
++++ b/gdbserver_tests/nlcontrolc.vgtest
+@@ -4,16 +4,16 @@
+ # and modify some variables
+ # the user can control-c an process with all threads in Running/Yielding
+ # and modify some variables
+-# sleepers is started with argument so that it will compute during ages.
+-# The variable modifications means it will exit in a reasonable time.
+-# This test is disabled on Solaris because modifying select/poll/ppoll timeout
+-# has no effect if a thread is already blocked in that syscall.
++# sleepers is started so that it burns CPU.
++# We then interrupt the process.
++# We modify variables so that instead of burning cpu, sleepers blocks
++# all threads in a select syscall.
+ prog: sleepers
+-args: 1000000000 1000000000 1000000000 BSBSBSBS 1
++args: 1000000000 0 100000 BSBSBSBS 1
+ vgopts: --tool=none --vgdb=yes --vgdb-error=0 --vgdb-prefix=./vgdb-prefix-nlcontrolc
+ stderr_filter: filter_stderr
+ # Bug 338633 nlcontrol hangs on arm64 currently.
+-prereq: test -e gdb -a -f vgdb.invoker && ! ../tests/arch_test arm64 && ! ../tests/os_test solaris
++prereq: test -e gdb -a -f vgdb.invoker && ! ../tests/os_test solaris
+ progB: gdb
+ argsB: --quiet -l 60 --nx ./sleepers
+ stdinB: nlcontrolc.stdinB.gdb
+--
+2.29.2
+
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-gdbserver_tests-Disable-nlcontrolc.vgtest-for-x86-64.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-gdbserver_tests-Disable-nlcontrolc.vgtest-for-x86-64.patch
deleted file mode 100644
index 0bd8273cd..000000000
--- a/poky/meta/recipes-devtools/valgrind/valgrind/0001-gdbserver_tests-Disable-nlcontrolc.vgtest-for-x86-64.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From d8c19e0bb9ca2fd48f223e1fdeffcafeb0aa1745 Mon Sep 17 00:00:00 2001
-From: Yi Fan Yu <yifan.yu@windriver.com>
-Date: Wed, 17 Feb 2021 14:53:44 -0500
-Subject: [PATCH] gdbserver_tests: Disable nlcontrolc.vgtest for x86-64
-
-Test hangs after glibc 2.33 uprev
-
-Using gdb to modify the timeout argument no longer
-affects how long `select` wait.
-
-https://bugs.kde.org/show_bug.cgi?id=432870
-Upstream-Status: Pending
-Waiting for upstream to take action.
-
-Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
----
- gdbserver_tests/nlcontrolc.vgtest | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/gdbserver_tests/nlcontrolc.vgtest b/gdbserver_tests/nlcontrolc.vgtest
-index bb5308403..96d2b52bb 100644
---- a/gdbserver_tests/nlcontrolc.vgtest
-+++ b/gdbserver_tests/nlcontrolc.vgtest
-@@ -13,7 +13,8 @@ args: 1000000000 1000000000 1000000000 BSBSBSBS 1
- vgopts: --tool=none --vgdb=yes --vgdb-error=0 --vgdb-prefix=./vgdb-prefix-nlcontrolc
- stderr_filter: filter_stderr
- # Bug 338633 nlcontrol hangs on arm64 currently.
--prereq: test -e gdb -a -f vgdb.invoker && ! ../tests/arch_test arm64 && ! ../tests/os_test solaris
-+# Bug 432870 nlcontrolc hangs on x86-64 starting with glibc 2.33
-+prereq: test -e gdb -a -f vgdb.invoker && ! ../tests/arch_test arm64 && ! ../tests/os_test solaris && ! ../tests/arch_test amd64
- progB: gdb
- argsB: --quiet -l 60 --nx ./sleepers
- stdinB: nlcontrolc.stdinB.gdb
---
-2.29.2
-
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-lmw-lswi-and-related-PowerPC-insns-aren-t-allowed-on.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-lmw-lswi-and-related-PowerPC-insns-aren-t-allowed-on.patch
new file mode 100644
index 000000000..7c6214497
--- /dev/null
+++ b/poky/meta/recipes-devtools/valgrind/valgrind/0001-lmw-lswi-and-related-PowerPC-insns-aren-t-allowed-on.patch
@@ -0,0 +1,62 @@
+From 0748ed5403a75c12ad9137b3fabf9d8397206ed8 Mon Sep 17 00:00:00 2001
+From: Mark Wielaard <mark@klomp.org>
+Date: Tue, 1 Dec 2020 13:57:39 +0100
+Subject: [PATCH] lmw, lswi and related PowerPC insns aren't allowed on ppc64le
+
+lmw, lswi and related PowerPC insns aren't allowed on ppc64le
+
+Newer binutils produce an error when the assembly contains lmw, stmw,
+lswi, lswx, stswi, or stswx instructions in little-endian mode.
+
+Only build and run the lsw and ldst_multiple testcases on ppc64[be].
+
+https://bugs.kde.org/show_bug.cgi?id=427870
+Upstream-Status: Backport [https://sourceware.org/git/?p=valgrind.git;a=commit;h=74b74174d572fee4015b8f4e326db3cd949bcdc3]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ none/tests/ppc64/Makefile.am | 9 ++++++---
+ none/tests/ppc64/ldst_multiple.vgtest | 1 +
+ 2 files changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/none/tests/ppc64/Makefile.am b/none/tests/ppc64/Makefile.am
+index 9bc0d0a..9d1e8b7 100644
+--- a/none/tests/ppc64/Makefile.am
++++ b/none/tests/ppc64/Makefile.am
+@@ -54,16 +54,20 @@ EXTRA_DIST = \
+
+ check_PROGRAMS = \
+ allexec \
+- lsw jm-insns round \
++ jm-insns round \
+ test_isa_2_06_part1 test_isa_2_06_part2 test_isa_2_06_part3 \
+ test_dfp1 test_dfp2 test_dfp3 test_dfp4 test_dfp5 \
+ test_isa_2_07_part1 test_isa_2_07_part2 \
+ test_isa_3_0 \
+ subnormal_test \
+- test_tm test_touch_tm ldst_multiple data-cache-instructions \
++ test_tm test_touch_tm data-cache-instructions \
+ power6_mf_gpr std_reg_imm \
+ twi_tdi tw_td power6_bcmp
+
++# lmw, stmw, lswi, lswx, stswi, stswx compile (and run) only on big endian.
++if VGCONF_PLATFORMS_INCLUDE_PPC64BE_LINUX
++check_PROGRAMS += lsw ldst_multiple
++endif
+
+ AM_CFLAGS += @FLAG_M64@
+ AM_CXXFLAGS += @FLAG_M64@
+@@ -175,4 +179,3 @@ test_isa_2_07_part2_LDADD = -lm
+ test_tm_LDADD = -lm
+ test_touch_tm_LDADD = -lm
+ test_isa_3_0_LDADD = -lm
+-
+diff --git a/none/tests/ppc64/ldst_multiple.vgtest b/none/tests/ppc64/ldst_multiple.vgtest
+index 87e668e..22dd46c 100644
+--- a/none/tests/ppc64/ldst_multiple.vgtest
++++ b/none/tests/ppc64/ldst_multiple.vgtest
+@@ -1 +1,2 @@
++prereq: ../../../tests/is_ppc64_BE
+ prog: ldst_multiple
+--
+2.31.0
+
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/run-ptest b/poky/meta/recipes-devtools/valgrind/valgrind/run-ptest
index e8a1a668f..f37780ef6 100755
--- a/poky/meta/recipes-devtools/valgrind/valgrind/run-ptest
+++ b/poky/meta/recipes-devtools/valgrind/valgrind/run-ptest
@@ -55,6 +55,16 @@ for i in `cat remove-for-all`; do
mv $i.IGNORE $i.vgtest;
done
+echo "Failed test details..."
+failed_tests=`grep FAIL: ${LOG} | awk '{print $2}'`
+for test in $failed_tests; do
+ for diff_results in `ls $test*.diff`; do
+ echo $diff_results
+ echo '************'
+ cat $diff_results
+ done
+done
+
passed=`grep PASS: ${LOG}|wc -l`
failed=`grep FAIL: ${LOG}|wc -l`
skipped=`grep SKIP: ${LOG}|wc -l`
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind_3.16.1.bb b/poky/meta/recipes-devtools/valgrind/valgrind_3.16.1.bb
index d0aefdf39..2b1d18557 100644
--- a/poky/meta/recipes-devtools/valgrind/valgrind_3.16.1.bb
+++ b/poky/meta/recipes-devtools/valgrind/valgrind_3.16.1.bb
@@ -45,7 +45,8 @@ SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \
file://0001-drd-Port-to-Fedora-33.patch \
file://0001-drd-musl-fix.patch \
file://0001-helgrind-Intercept-libc-functions.patch \
- file://0001-gdbserver_tests-Disable-nlcontrolc.vgtest-for-x86-64.patch \
+ file://0001-Fix-nlcontrolc.vgtest-hanging-on-newer-glibc-and-or-.patch \
+ file://0001-lmw-lswi-and-related-PowerPC-insns-aren-t-allowed-on.patch \
"
SRC_URI[md5sum] = "d1b153f1ab17cf1f311705e7a83ef589"
SRC_URI[sha256sum] = "c91f3a2f7b02db0f3bc99479861656154d241d2fdb265614ba918cc6720a33ca"
diff --git a/poky/meta/recipes-extended/asciidoc/asciidoc/auto-catalogs.patch b/poky/meta/recipes-extended/asciidoc/asciidoc/auto-catalogs.patch
deleted file mode 100644
index ca170db00..000000000
--- a/poky/meta/recipes-extended/asciidoc/asciidoc/auto-catalogs.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-If SGML_CATALOG_FILES is in the environment, pass --catalogs to xmllint and
-xsltproc. Also pass --nonet to xsltproc to detect future missing stylesheet
-problems.
-
-An earlier version of this patch was filed upstream at
-https://github.com/asciidoc/asciidoc-py3/issues/61 so depending on how that goes
-this could get merged.
-
-Upstream-Status: Inappropriate
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-diff --git a/a2x.py b/a2x.py
-index 2d7699a..582d809 100755
---- a/a2x.py
-+++ b/a2x.py
-@@ -57,6 +57,10 @@ LYNX_OPTS = '-dump'
- W3M_OPTS = '-dump -cols 70 -T text/html -no-graph'
- XSLTPROC_OPTS = ''
-
-+if "SGML_CATALOG_FILES" in os.environ:
-+ XMLLINT += " --catalogs"
-+ XSLTPROC += " --catalogs"
-+
- ######################################################################
- # End of configuration file parameters.
- ######################################################################
-@@ -298,7 +302,7 @@ def exec_xsltproc(xsl_file, xml_file, dst_dir, opts = ''):
- cwd = os.getcwd()
- shell_cd(dst_dir)
- try:
-- shell('"%s" %s "%s" "%s"' % (XSLTPROC, opts, xsl_file, xml_file))
-+ shell('%s %s "%s" "%s"' % (XSLTPROC, opts, xsl_file, xml_file))
- finally:
- shell_cd(cwd)
-
-@@ -483,7 +487,7 @@ class A2X(AttrDict):
- self.asciidoc_opts += ' --doctype %s' % self.doctype
- for attr in self.attributes:
- self.asciidoc_opts += ' --attribute "%s"' % attr
--# self.xsltproc_opts += ' --nonet'
-+ self.xsltproc_opts += ' --nonet'
- if self.verbose:
- self.asciidoc_opts += ' --verbose'
- self.dblatex_opts += ' -V'
-@@ -634,7 +638,7 @@ class A2X(AttrDict):
- shell('"%s" --backend docbook -a "a2x-format=%s" %s --out-file "%s" "%s"' %
- (self.asciidoc, self.format, self.asciidoc_opts, docbook_file, self.asciidoc_file))
- if not self.no_xmllint and XMLLINT:
-- shell('"%s" --nonet --noout --valid "%s"' % (XMLLINT, docbook_file))
-+ shell('%s --nonet --noout --valid "%s"' % (XMLLINT, docbook_file))
-
- def to_xhtml(self):
- self.to_docbook()
diff --git a/poky/meta/recipes-extended/asciidoc/asciidoc_9.0.4.bb b/poky/meta/recipes-extended/asciidoc/asciidoc_9.1.0.bb
index bb4248a5e..523bf33f4 100644
--- a/poky/meta/recipes-extended/asciidoc/asciidoc_9.0.4.bb
+++ b/poky/meta/recipes-extended/asciidoc/asciidoc_9.1.0.bb
@@ -8,9 +8,8 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=4e5d1baf6f20559e3bec172226a47e4e \
file://LICENSE;md5=b234ee4d69f5fce4486a80fdaf4a4263 "
-SRC_URI = "git://github.com/asciidoc/asciidoc-py3;protocol=https;branch=main \
- file://auto-catalogs.patch"
-SRCREV = "8de61a75572b5b8f90c1f87634aa3767472be7a7"
+SRC_URI = "git://github.com/asciidoc/asciidoc-py3;protocol=https;branch=9.x"
+SRCREV = "9705d428439530104ce55d0ba12e8ef9d1b57ad1"
DEPENDS = "libxml2-native libxslt-native docbook-xml-dtd4-native docbook-xsl-stylesheets-native"
diff --git a/poky/meta/recipes-extended/bash/bash.inc b/poky/meta/recipes-extended/bash/bash.inc
index db326660e..d3e1dfdb3 100644
--- a/poky/meta/recipes-extended/bash/bash.inc
+++ b/poky/meta/recipes-extended/bash/bash.inc
@@ -1,5 +1,6 @@
SUMMARY = "An sh-compatible command language interpreter"
HOMEPAGE = "http://tiswww.case.edu/php/chet/bash/bashtop.html"
+DESCRIPTION = "Bash is the GNU Project's Bourne Again SHell, a complete implementation of the IEEE POSIX and Open Group shell specification with interactive command line editing, job control on architectures that support it, csh-like features such as history substitution and brace expansion, and a slew of other features."
SECTION = "base/shell"
DEPENDS = "ncurses bison-native virtual/libiconv"
diff --git a/poky/meta/recipes-extended/bc/bc_1.07.1.bb b/poky/meta/recipes-extended/bc/bc_1.07.1.bb
index 4a5130249..ff3e8f440 100644
--- a/poky/meta/recipes-extended/bc/bc_1.07.1.bb
+++ b/poky/meta/recipes-extended/bc/bc_1.07.1.bb
@@ -1,5 +1,6 @@
SUMMARY = "Arbitrary precision calculator language"
HOMEPAGE = "http://www.gnu.org/software/bc/bc.html"
+DESCRIPTION = "bc is an arbitrary precision numeric processing language. Syntax is similar to C, but differs in many substantial areas. It supports interactive execution of statements."
LICENSE = "GPLv3+"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
diff --git a/poky/meta/recipes-extended/cracklib/cracklib_2.9.5.bb b/poky/meta/recipes-extended/cracklib/cracklib_2.9.5.bb
index 82995219d..9cdb71f1a 100644
--- a/poky/meta/recipes-extended/cracklib/cracklib_2.9.5.bb
+++ b/poky/meta/recipes-extended/cracklib/cracklib_2.9.5.bb
@@ -1,5 +1,6 @@
SUMMARY = "Password strength checker library"
-HOMEPAGE = "http://sourceforge.net/projects/cracklib"
+HOMEPAGE = "https://github.com/cracklib/cracklib"
+DESCRIPTION = "${SUMMARY}"
LICENSE = "LGPLv2.1+"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=e3eda01d9815f8d24aae2dbd89b68b06"
diff --git a/poky/meta/recipes-extended/cwautomacros/cwautomacros_20110201.bb b/poky/meta/recipes-extended/cwautomacros/cwautomacros_20110201.bb
index 02b016fdf..e726899c5 100644
--- a/poky/meta/recipes-extended/cwautomacros/cwautomacros_20110201.bb
+++ b/poky/meta/recipes-extended/cwautomacros/cwautomacros_20110201.bb
@@ -1,6 +1,7 @@
SUMMARY = "Collection of autoconf m4 macros"
SECTION = "base"
HOMEPAGE = "http://sourceforge.net/projects/cwautomacros.berlios/"
+DESCRIPTION = "A collection of autoconf macros, plus an autogen.sh script that can be used with them."
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://LICENSE;md5=eb723b61539feef013de476e68b5c50a"
diff --git a/poky/meta/recipes-extended/ed/ed_1.17.bb b/poky/meta/recipes-extended/ed/ed_1.17.bb
index e905eed3c..addf652d5 100644
--- a/poky/meta/recipes-extended/ed/ed_1.17.bb
+++ b/poky/meta/recipes-extended/ed/ed_1.17.bb
@@ -1,5 +1,6 @@
SUMMARY = "Line-oriented text editor"
HOMEPAGE = "http://www.gnu.org/software/ed/"
+DESCRIPTION = "GNU ed is a line-oriented text editor. It is used to create, display, modify and otherwise manipulate text files, both interactively and via shell scripts. A restricted version of ed, red, can only edit files in the current directory and cannot execute shell commands."
LICENSE = "GPLv3+"
LIC_FILES_CHKSUM = "file://COPYING;md5=0c7051aef9219dc7237f206c5c4179a7 \
diff --git a/poky/meta/recipes-extended/go-examples/go-helloworld_0.1.bb b/poky/meta/recipes-extended/go-examples/go-helloworld_0.1.bb
index d3f7525dc..c51f163e9 100644
--- a/poky/meta/recipes-extended/go-examples/go-helloworld_0.1.bb
+++ b/poky/meta/recipes-extended/go-examples/go-helloworld_0.1.bb
@@ -6,14 +6,15 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
SRC_URI = "git://${GO_IMPORT}"
-SRCREV = "bcf50bfd7dcd8020c90965747d857ae42802e0c5"
+SRCREV = "46695d81d1fae905a270fb7db8a4d11a334562fe"
UPSTREAM_CHECK_COMMITS = "1"
GO_IMPORT = "github.com/golang/example"
GO_INSTALL = "${GO_IMPORT}/hello"
GO_WORKDIR = "${GO_INSTALL}"
+export GO111MODULE="off"
-inherit go-mod
+inherit go
# This is just to make clear where this example is
do_install_append() {
diff --git a/poky/meta/recipes-extended/grep/grep_3.6.bb b/poky/meta/recipes-extended/grep/grep_3.6.bb
index cb009b913..c17b96d7b 100644
--- a/poky/meta/recipes-extended/grep/grep_3.6.bb
+++ b/poky/meta/recipes-extended/grep/grep_3.6.bb
@@ -1,5 +1,6 @@
SUMMARY = "GNU grep utility"
HOMEPAGE = "http://savannah.gnu.org/projects/grep/"
+DESCRIPTION = "Grep searches one or more input files for lines containing a match to a specified pattern. By default, grep prints the matching lines."
BUGTRACKER = "http://savannah.gnu.org/bugs/?group=grep"
SECTION = "console/utils"
LICENSE = "GPLv3"
diff --git a/poky/meta/recipes-extended/libsolv/libsolv_0.7.17.bb b/poky/meta/recipes-extended/libsolv/libsolv_0.7.17.bb
index 8597ea3ed..fa6e8a3c4 100644
--- a/poky/meta/recipes-extended/libsolv/libsolv_0.7.17.bb
+++ b/poky/meta/recipes-extended/libsolv/libsolv_0.7.17.bb
@@ -1,4 +1,5 @@
SUMMARY = "Library for solving packages and reading repositories"
+DESCRIPTION = "This is libsolv, a free package dependency solver using a satisfiability algorithm for solving packages and reading repositories"
HOMEPAGE = "https://github.com/openSUSE/libsolv"
BUGTRACKER = "https://github.com/openSUSE/libsolv/issues"
SECTION = "devel"
diff --git a/poky/meta/recipes-extended/lighttpd/lighttpd_1.4.59.bb b/poky/meta/recipes-extended/lighttpd/lighttpd_1.4.59.bb
index 705ece8e1..cf7f47891 100644
--- a/poky/meta/recipes-extended/lighttpd/lighttpd_1.4.59.bb
+++ b/poky/meta/recipes-extended/lighttpd/lighttpd_1.4.59.bb
@@ -1,5 +1,6 @@
SUMMARY = "Lightweight high-performance web server"
HOMEPAGE = "http://www.lighttpd.net/"
+DESCRIPTION = "Lightweight high-performance web server is designed and optimized for high performance environments. With a small memory footprint compared to other web-servers, effective management of the cpu-load, and advanced feature set (FastCGI, SCGI, Auth, Output-Compression, URL-Rewriting and many more)"
BUGTRACKER = "http://redmine.lighttpd.net/projects/lighttpd/issues"
LICENSE = "BSD-3-Clause"
diff --git a/poky/meta/recipes-extended/logrotate/logrotate_3.18.0.bb b/poky/meta/recipes-extended/logrotate/logrotate_3.18.0.bb
index 270052f46..55684ac9f 100644
--- a/poky/meta/recipes-extended/logrotate/logrotate_3.18.0.bb
+++ b/poky/meta/recipes-extended/logrotate/logrotate_3.18.0.bb
@@ -1,6 +1,7 @@
SUMMARY = "Rotates, compresses, removes and mails system log files"
SECTION = "console/utils"
-HOMEPAGE = "https://github.com/logrotate/logrotate/issues"
+HOMEPAGE = "https://github.com/logrotate/logrotate/"
+DESCRIPTION = "The logrotate utility is designed to simplify the administration of log files on a system which generates a lot of log files."
LICENSE = "GPLv2"
# TODO: Document coreutils dependency. Why not RDEPENDS? Why not busybox?
diff --git a/poky/meta/recipes-extended/ltp/ltp/0001-open_posix_testsuite-generate-makefiles.sh-Avoid-inc.patch b/poky/meta/recipes-extended/ltp/ltp/0001-open_posix_testsuite-generate-makefiles.sh-Avoid-inc.patch
new file mode 100644
index 000000000..c2a70dcb6
--- /dev/null
+++ b/poky/meta/recipes-extended/ltp/ltp/0001-open_posix_testsuite-generate-makefiles.sh-Avoid-inc.patch
@@ -0,0 +1,40 @@
+From 2d1d6350af1db28ec520e26d0069a0518950b0a1 Mon Sep 17 00:00:00 2001
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Date: Tue, 9 Mar 2021 15:21:11 +0000
+Subject: [PATCH 1/3] open_posix_testsuite/generate-makefiles.sh: Avoid
+ inconsistencies with make version
+
+With make 4.1, INSTALL_TARGETS+=<tab> will add a space to the variable whereas
+with make 4.3, it will not. This leads to differing run.sh files in installed
+in packages which is undesireable. If tests is empty we don't have to add
+the line to the makefiles at all which seems like the easiest way to
+avoid the differences in make behaviour.
+
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+Upstream-Status: Submitted [http://lists.linux.it/pipermail/ltp/2021-March/021386.html]
+
+---
+ .../open_posix_testsuite/scripts/generate-makefiles.sh | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/testcases/open_posix_testsuite/scripts/generate-makefiles.sh b/testcases/open_posix_testsuite/scripts/generate-makefiles.sh
+index 200a631db..4b3aaa4a0 100755
+--- a/testcases/open_posix_testsuite/scripts/generate-makefiles.sh
++++ b/testcases/open_posix_testsuite/scripts/generate-makefiles.sh
+@@ -148,8 +148,12 @@ EOF
+
+ fi
+
+- cat >> "$makefile.2" <<EOF
++ if [ ! -z "${tests}" ]; then
++ cat >> "$makefile.2" <<EOF
+ INSTALL_TARGETS+= ${tests}
++EOF
++ fi
++ cat >> "$makefile.2" <<EOF
+ MAKE_TARGETS+= ${targets}
+
+ EOF
+--
+2.27.0
+
diff --git a/poky/meta/recipes-extended/ltp/ltp/0002-Makefile-Avoid-wildcard-determinism-issues.patch b/poky/meta/recipes-extended/ltp/ltp/0002-Makefile-Avoid-wildcard-determinism-issues.patch
new file mode 100644
index 000000000..4859c3eae
--- /dev/null
+++ b/poky/meta/recipes-extended/ltp/ltp/0002-Makefile-Avoid-wildcard-determinism-issues.patch
@@ -0,0 +1,310 @@
+From 4030e28f2c2296ba138cb5e2495202f8aec7ba32 Mon Sep 17 00:00:00 2001
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Date: Tue, 9 Mar 2021 15:21:36 +0000
+Subject: [PATCH 2/3] Makefile: Avoid wildcard determinism issues
+
+wildcard used in Makefiles preserves the order of the files on disk
+which leads to differences in the order the binaries are linked.
+
+This patch tweaks the usage of wildcard to also have a sort, making
+the binaries reproducible. A previous patch massively improved
+the situation but wider testing showed that these other changes can
+have an effect on some binaries, this patch avoids those issues as
+exposed by our wider testing.
+
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+Upstream-Status: Submitted [http://lists.linux.it/pipermail/ltp/2021-March/021388.html]
+
+---
+ include/mk/env_post.mk | 2 +-
+ include/mk/module.mk | 2 +-
+ runtest/Makefile | 2 +-
+ scenario_groups/Makefile | 2 +-
+ testcases/commands/ldd/datafiles/Makefile | 2 +-
+ testcases/kernel/hotplug/memory_hotplug/Makefile | 3 ++-
+ testcases/kernel/io/disktest/Makefile | 2 +-
+ testcases/kernel/io/disktest/Makefile.linux | 4 ++--
+ testcases/kernel/sched/hyperthreading/ht_affinity/Makefile | 2 +-
+ testcases/kernel/sched/hyperthreading/ht_enabled/Makefile | 2 +-
+ testcases/kernel/sched/sched_stress/Makefile | 2 +-
+ testcases/kernel/syscalls/lchown/Makefile | 2 +-
+ testcases/kernel/syscalls/migrate_pages/Makefile | 2 +-
+ testcases/kernel/syscalls/move_pages/Makefile | 2 +-
+ testcases/kernel/syscalls/utils/compat_16.mk | 2 +-
+ testcases/kernel/syscalls/utils/newer_64.mk | 2 +-
+ testcases/misc/math/float/Makefile | 2 +-
+ testcases/network/nfs/nfs_stress/nfs05_make_tree.c | 4 ++--
+ testcases/network/nfsv4/locks/Makefile | 2 +-
+ utils/sctp/func_tests/Makefile | 2 +-
+ 20 files changed, 23 insertions(+), 22 deletions(-)
+
+diff --git a/include/mk/env_post.mk b/include/mk/env_post.mk
+index d52ad9f0b..1d22f9c53 100644
+--- a/include/mk/env_post.mk
++++ b/include/mk/env_post.mk
+@@ -47,7 +47,7 @@ LDFLAGS += -L$(top_builddir)/lib/android_libpthread
+ LDFLAGS += -L$(top_builddir)/lib/android_librt
+ endif
+
+-MAKE_TARGETS ?= $(notdir $(patsubst %.c,%,$(wildcard $(abs_srcdir)/*.c)))
++MAKE_TARGETS ?= $(notdir $(patsubst %.c,%,$(sort $(wildcard $(abs_srcdir)/*.c))))
+ MAKE_TARGETS := $(filter-out $(FILTER_OUT_MAKE_TARGETS),$(MAKE_TARGETS))
+
+ # with only *.dwo, .[0-9]+.dwo can not be cleaned
+diff --git a/include/mk/module.mk b/include/mk/module.mk
+index 95fb8336a..6c8814b96 100644
+--- a/include/mk/module.mk
++++ b/include/mk/module.mk
+@@ -42,7 +42,7 @@ endif
+
+ ifneq ($(filter install clean,$(MAKECMDGOALS)),)
+ MAKE_TARGETS := $(filter-out %.ko, $(MAKE_TARGETS))
+-MAKE_TARGETS += $(wildcard *.ko)
++MAKE_TARGETS += $(sort $(wildcard *.ko))
+ endif
+
+ CLEAN_TARGETS += .dep_modules *.mod built-in.a
+diff --git a/runtest/Makefile b/runtest/Makefile
+index b7caaee06..6a1565b6a 100644
+--- a/runtest/Makefile
++++ b/runtest/Makefile
+@@ -36,7 +36,7 @@ ifneq ($(WITH_POWER_MANAGEMENT_TESTSUITE),yes)
+ UNWANTED_FILES += power_management_tests
+ endif
+
+-INSTALL_TARGETS := $(filter-out $(UNWANTED_FILES),$(notdir $(patsubst $(abs_srcdir)/%,%,$(wildcard $(abs_srcdir)/*))))
++INSTALL_TARGETS := $(filter-out $(UNWANTED_FILES),$(notdir $(patsubst $(abs_srcdir)/%,%,$(sort $(wildcard $(abs_srcdir)/*)))))
+
+ MAKE_TARGETS :=
+
+diff --git a/scenario_groups/Makefile b/scenario_groups/Makefile
+index 2978675d9..fcbc92708 100644
+--- a/scenario_groups/Makefile
++++ b/scenario_groups/Makefile
+@@ -31,7 +31,7 @@ UNWANTED_FILES := Makefile
+
+ INSTALL_MODE := 00644
+
+-INSTALL_TARGETS := $(filter-out $(UNWANTED_FILES),$(notdir $(patsubst $(abs_srcdir)/%,%,$(wildcard $(abs_srcdir)/*))))
++INSTALL_TARGETS := $(filter-out $(UNWANTED_FILES),$(notdir $(patsubst $(abs_srcdir)/%,%,$(sort $(wildcard $(abs_srcdir)/*)))))
+
+ MAKE_TARGETS :=
+
+diff --git a/testcases/commands/ldd/datafiles/Makefile b/testcases/commands/ldd/datafiles/Makefile
+index d8bcf5c06..01c352052 100644
+--- a/testcases/commands/ldd/datafiles/Makefile
++++ b/testcases/commands/ldd/datafiles/Makefile
+@@ -21,7 +21,7 @@ CPPFLAGS += -fpic
+
+ INSTALL_TARGETS := ldd*.so lddfile.out
+
+-LDD_C_FILES := $(wildcard $(abs_srcdir)/lddfile*.c)
++LDD_C_FILES := $(sort $(wildcard $(abs_srcdir)/lddfile*.c))
+ LDD_SO_FILES := $(patsubst $(abs_srcdir)/%.c,%.obj.so,$(LDD_C_FILES))
+ MAKE_TARGETS := lddfile.out
+ CLEAN_TARGETS += *.obj $(LDD_SO_FILES)
+diff --git a/testcases/kernel/hotplug/memory_hotplug/Makefile b/testcases/kernel/hotplug/memory_hotplug/Makefile
+index d1ba65e65..38a77a2ba 100644
+--- a/testcases/kernel/hotplug/memory_hotplug/Makefile
++++ b/testcases/kernel/hotplug/memory_hotplug/Makefile
+@@ -31,6 +31,7 @@ LDLIBS := $(filter-out -lltp,$(LDLIBS))
+
+ MAKE_TARGETS := memtoy
+
+-memtoy: $(patsubst $(abs_srcdir)/%.c,%.o,$(wildcard $(abs_srcdir)/*.c))
++memtoy: $(patsubst $(abs_srcdir)/%.c,%.o,$(sort $(wildcard $(abs_srcdir)/*.c)))
++
+
+ include $(top_srcdir)/include/mk/generic_leaf_target.mk
+diff --git a/testcases/kernel/io/disktest/Makefile b/testcases/kernel/io/disktest/Makefile
+index d10d98434..3a3a9cbf0 100644
+--- a/testcases/kernel/io/disktest/Makefile
++++ b/testcases/kernel/io/disktest/Makefile
+@@ -209,7 +209,7 @@ LDLIBS += -lpthread
+
+ MAKE_TARGETS := disktest
+
+-OBJS := $(patsubst $(abs_srcdir)/%.c,%.o,$(wildcard $(abs_srcdir)/*.c))
++OBJS := $(patsubst $(abs_srcdir)/%.c,%.o,$(sort $(wildcard $(abs_srcdir)/*.c)))
+
+ disktest-$(VER):
+ mkdir -p "$@"
+diff --git a/testcases/kernel/io/disktest/Makefile.linux b/testcases/kernel/io/disktest/Makefile.linux
+index ea45b5a57..0f3aab622 100644
+--- a/testcases/kernel/io/disktest/Makefile.linux
++++ b/testcases/kernel/io/disktest/Makefile.linux
+@@ -167,8 +167,8 @@ mandir=/usr/share/man
+
+ VER=`grep VER_STR main.h | awk -F\" '{print $$2}'`
+ GBLHDRS=main.h globals.h defs.h
+-ALLHDRS=$(wildcard *.h)
+-SRCS=$(wildcard *.c)
++ALLHDRS=$(sort $(wildcard *.h))
++SRCS=$(sort $(wildcard *.c))
+ OBJS=$(SRCS:.c=.o)
+
+ CFLAGS += -g -Wall -O -D"LINUX" -D"_THREAD_SAFE" -D"_GNU_SOURCE" -D"_LARGE_FILES" -D"_LARGEFILE64_SOURCE" -D"_FILE_OFFSET_BITS=64" $(RPM_OPT_FLAGS)
+diff --git a/testcases/kernel/sched/hyperthreading/ht_affinity/Makefile b/testcases/kernel/sched/hyperthreading/ht_affinity/Makefile
+index 10fec96dc..6b64bd261 100644
+--- a/testcases/kernel/sched/hyperthreading/ht_affinity/Makefile
++++ b/testcases/kernel/sched/hyperthreading/ht_affinity/Makefile
+@@ -28,6 +28,6 @@ INSTALL_TARGETS := smt_smp_affinity.sh
+
+ MAKE_TARGETS := ht_affinity
+
+-$(MAKE_TARGETS): $(patsubst $(abs_srcdir)/%.c,%.o,$(wildcard $(abs_srcdir)/*.c))
++$(MAKE_TARGETS): $(patsubst $(abs_srcdir)/%.c,%.o,$(sort $(wildcard $(abs_srcdir)/*.c)))
+
+ include $(top_srcdir)/include/mk/generic_leaf_target.mk
+diff --git a/testcases/kernel/sched/hyperthreading/ht_enabled/Makefile b/testcases/kernel/sched/hyperthreading/ht_enabled/Makefile
+index 9c1e139d6..585ff1383 100644
+--- a/testcases/kernel/sched/hyperthreading/ht_enabled/Makefile
++++ b/testcases/kernel/sched/hyperthreading/ht_enabled/Makefile
+@@ -28,6 +28,6 @@ INSTALL_TARGETS := smt_smp_enabled.sh
+
+ MAKE_TARGETS := ht_enabled
+
+-$(MAKE_TARGETS): $(patsubst $(abs_srcdir)/%.c,%.o,$(wildcard $(abs_srcdir)/*.c))
++$(MAKE_TARGETS): $(patsubst $(abs_srcdir)/%.c,%.o,$(sort $(wildcard $(abs_srcdir)/*.c)))
+
+ include $(top_srcdir)/include/mk/generic_leaf_target.mk
+diff --git a/testcases/kernel/sched/sched_stress/Makefile b/testcases/kernel/sched/sched_stress/Makefile
+index b76126c73..4dbbf3477 100644
+--- a/testcases/kernel/sched/sched_stress/Makefile
++++ b/testcases/kernel/sched/sched_stress/Makefile
+@@ -10,7 +10,7 @@ INSTALL_TARGETS := sched_stress.sh
+
+ LDLIBS += -lpthread
+
+-MAKE_TARGETS := $(filter-out sched,$(patsubst $(abs_srcdir)/%.c,%,$(wildcard $(abs_srcdir)/*.c)))
++MAKE_TARGETS := $(filter-out sched,$(patsubst $(abs_srcdir)/%.c,%,$(sort $(wildcard $(abs_srcdir)/*.c))))
+
+ RM += -r
+
+diff --git a/testcases/kernel/syscalls/lchown/Makefile b/testcases/kernel/syscalls/lchown/Makefile
+index 13d39cb81..305fee281 100644
+--- a/testcases/kernel/syscalls/lchown/Makefile
++++ b/testcases/kernel/syscalls/lchown/Makefile
+@@ -5,7 +5,7 @@ top_srcdir ?= ../../../..
+
+ include $(top_srcdir)/include/mk/testcases.mk
+
+-SRCS := $(wildcard $(abs_srcdir)/lchown*.c)
++SRCS := $(sort $(wildcard $(abs_srcdir)/lchown*.c))
+
+ include $(abs_srcdir)/../utils/compat_16.mk
+
+diff --git a/testcases/kernel/syscalls/migrate_pages/Makefile b/testcases/kernel/syscalls/migrate_pages/Makefile
+index 46912b025..9cf3ce526 100644
+--- a/testcases/kernel/syscalls/migrate_pages/Makefile
++++ b/testcases/kernel/syscalls/migrate_pages/Makefile
+@@ -5,7 +5,7 @@ top_srcdir ?= ../../../..
+
+ include $(top_srcdir)/include/mk/testcases.mk
+
+-MAKE_TARGETS := $(patsubst $(abs_srcdir)/%.c,%,$(wildcard $(abs_srcdir)/*[0-9].c))
++MAKE_TARGETS := $(patsubst $(abs_srcdir)/%.c,%,$(sort $(wildcard $(abs_srcdir)/*[0-9].c)))
+ $(MAKE_TARGETS): %: migrate_pages_common.o
+
+ CPPFLAGS += -I$(abs_srcdir)/../utils/
+diff --git a/testcases/kernel/syscalls/move_pages/Makefile b/testcases/kernel/syscalls/move_pages/Makefile
+index cd7ff6349..4b22160ed 100644
+--- a/testcases/kernel/syscalls/move_pages/Makefile
++++ b/testcases/kernel/syscalls/move_pages/Makefile
+@@ -7,7 +7,7 @@ include $(top_srcdir)/include/mk/testcases.mk
+
+ CPPFLAGS += -I$(abs_srcdir)/../utils
+
+-MAKE_TARGETS := $(patsubst $(abs_srcdir)/%.c,%,$(wildcard $(abs_srcdir)/*[0-9].c))
++MAKE_TARGETS := $(patsubst $(abs_srcdir)/%.c,%,$(sort $(wildcard $(abs_srcdir)/*[0-9].c)))
+
+ $(MAKE_TARGETS): %: move_pages_support.o
+
+diff --git a/testcases/kernel/syscalls/utils/compat_16.mk b/testcases/kernel/syscalls/utils/compat_16.mk
+index a0ff8f558..e81a00c40 100644
+--- a/testcases/kernel/syscalls/utils/compat_16.mk
++++ b/testcases/kernel/syscalls/utils/compat_16.mk
+@@ -50,7 +50,7 @@
+
+ CPPFLAGS += -I$(abs_srcdir) -I$(abs_srcdir)/../utils
+
+-SRCS ?= $(wildcard $(abs_srcdir)/*.c)
++SRCS ?= $(sort $(wildcard $(abs_srcdir)/*.c))
+
+ MAKE_TARGETS := $(notdir $(patsubst %.c,%,$(SRCS)))
+ MAKE_TARGETS_OBJS_WO_COMPAT_16 := $(addsuffix .o,$(MAKE_TARGETS))
+diff --git a/testcases/kernel/syscalls/utils/newer_64.mk b/testcases/kernel/syscalls/utils/newer_64.mk
+index 8cd7e03c8..5e798057a 100644
+--- a/testcases/kernel/syscalls/utils/newer_64.mk
++++ b/testcases/kernel/syscalls/utils/newer_64.mk
+@@ -25,7 +25,7 @@
+
+ CPPFLAGS += -I$(abs_srcdir) -I$(abs_srcdir)/../utils
+
+-SRCS ?= $(wildcard $(abs_srcdir)/*.c)
++SRCS ?= $(sort $(wildcard $(abs_srcdir)/*.c))
+
+ MAKE_TARGETS := $(notdir $(patsubst %.c,%,$(SRCS)))
+
+diff --git a/testcases/misc/math/float/Makefile b/testcases/misc/math/float/Makefile
+index 79dda35d6..5f4cb0f6c 100644
+--- a/testcases/misc/math/float/Makefile
++++ b/testcases/misc/math/float/Makefile
+@@ -27,6 +27,6 @@ include $(top_srcdir)/include/mk/testcases.mk
+ LDLIBS += -lpthread -lm
+
+ # main.c doesn't compile...
+-MAKE_TARGETS := $(patsubst $(abs_srcdir)/%.c,%,$(wildcard $(abs_srcdir)/float*.c))
++MAKE_TARGETS := $(patsubst $(abs_srcdir)/%.c,%,$(sort $(wildcard $(abs_srcdir)/float*.c)))
+
+ include $(top_srcdir)/include/mk/generic_trunk_target.mk
+diff --git a/testcases/network/nfs/nfs_stress/nfs05_make_tree.c b/testcases/network/nfs/nfs_stress/nfs05_make_tree.c
+index 12c86799d..23c520d9d 100644
+--- a/testcases/network/nfs/nfs_stress/nfs05_make_tree.c
++++ b/testcases/network/nfs/nfs_stress/nfs05_make_tree.c
+@@ -104,7 +104,7 @@ static void *thread_fn(LTP_ATTRIBUTE_UNUSED void *args)
+ "\treturn 0;\n}\n";
+
+ const char make_buf_n[] = "CFLAGS := -O -w -g\n"
+- "SRCS=$(wildcard *.c)\n"
++ "SRCS=$(sort $(wildcard *.c))\n"
+ "TARGETS=$(SRCS:.c=)\n"
+ "all: $(TARGETS)\n"
+ "$(TARGETS): %: %.c\n"
+@@ -114,7 +114,7 @@ static void *thread_fn(LTP_ATTRIBUTE_UNUSED void *args)
+
+ const char make_buf[] = "CFLAGS := -O -w -g\n"
+ "SUBDIR = dir\n"
+- "SRCS=$(wildcard *.c)\n"
++ "SRCS=$(sort $(wildcard *.c))\n"
+ "TARGETS=$(SRCS:.c=)\n"
+ "all: $(SUBDIR) $(TARGETS)\n"
+ "$(TARGETS): %: %.c\n"
+diff --git a/testcases/network/nfsv4/locks/Makefile b/testcases/network/nfsv4/locks/Makefile
+index 5812dea3a..05941c892 100644
+--- a/testcases/network/nfsv4/locks/Makefile
++++ b/testcases/network/nfsv4/locks/Makefile
+@@ -28,6 +28,6 @@ MAKE_TARGETS := locktests
+
+ LDLIBS += -lpthread
+
+-$(MAKE_TARGETS): $(patsubst $(abs_srcdir)/%.c,%.o,$(wildcard $(abs_srcdir)/*.c))
++$(MAKE_TARGETS): $(patsubst $(abs_srcdir)/%.c,%.o,$(sort $(wildcard $(abs_srcdir)/*.c)))
+
+ include $(top_srcdir)/include/mk/generic_leaf_target.mk
+diff --git a/utils/sctp/func_tests/Makefile b/utils/sctp/func_tests/Makefile
+index d296c652a..a17107853 100644
+--- a/utils/sctp/func_tests/Makefile
++++ b/utils/sctp/func_tests/Makefile
+@@ -30,7 +30,7 @@ LDFLAGS += $(addprefix -L$(abs_builddir)/../,lib testlib)
+
+ LDLIBS += -lsctputil -lsctp -lpthread
+
+-V4_TARGETS := $(patsubst $(abs_srcdir)/%.c,%,$(wildcard $(abs_srcdir)/*.c))
++V4_TARGETS := $(patsubst $(abs_srcdir)/%.c,%,$(sort $(wildcard $(abs_srcdir)/*.c)))
+
+ V6_TARGETS := test_basic_v6 test_fragments_v6 test_getname_v6 \
+ test_inaddr_any_v6 test_peeloff_v6 \
+--
+2.27.0
+
diff --git a/poky/meta/recipes-extended/ltp/ltp/0003-syscalls-swapon-swapoff-Move-common-library-to-libs.patch b/poky/meta/recipes-extended/ltp/ltp/0003-syscalls-swapon-swapoff-Move-common-library-to-libs.patch
new file mode 100644
index 000000000..5ace82dba
--- /dev/null
+++ b/poky/meta/recipes-extended/ltp/ltp/0003-syscalls-swapon-swapoff-Move-common-library-to-libs.patch
@@ -0,0 +1,133 @@
+From 0653f1d809d0cc13f84facb9d2d82d984ac4d0ac Mon Sep 17 00:00:00 2001
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Date: Tue, 9 Mar 2021 15:25:16 +0000
+Subject: [PATCH 3/3] syscalls/swapon/swapoff: Move common library to libs/
+
+There is a race/determinism issue with libswapon currently as depending on
+which makefile path builds it, the debug paths may be "../swapon/libswapon.c"
+or "libswapon.c". To avoid the determinism issue, move libswapon to libs/
+and use it from the shared location.
+
+The header is moved to the common includes directory to match and
+the Makefile.inc fragment can be dropped.
+
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+Upstream-Status: Submitted [http://lists.linux.it/pipermail/ltp/2021-March/021387.html]
+
+---
+ .../kernel/syscalls/swapon => include}/libswapon.h | 0
+ libs/libltpswapon/Makefile | 12 ++++++++++++
+ .../swapon => libs/libltpswapon}/libswapon.c | 0
+ testcases/kernel/syscalls/swapoff/Makefile | 7 +++++--
+ testcases/kernel/syscalls/swapoff/Makefile.inc | 6 ------
+ testcases/kernel/syscalls/swapoff/swapoff01.c | 2 +-
+ testcases/kernel/syscalls/swapoff/swapoff02.c | 2 +-
+ testcases/kernel/syscalls/swapon/Makefile | 6 +++---
+ 8 files changed, 22 insertions(+), 13 deletions(-)
+ rename {testcases/kernel/syscalls/swapon => include}/libswapon.h (100%)
+ create mode 100644 libs/libltpswapon/Makefile
+ rename {testcases/kernel/syscalls/swapon => libs/libltpswapon}/libswapon.c (100%)
+ delete mode 100644 testcases/kernel/syscalls/swapoff/Makefile.inc
+
+diff --git a/testcases/kernel/syscalls/swapon/libswapon.h b/include/libswapon.h
+similarity index 100%
+rename from testcases/kernel/syscalls/swapon/libswapon.h
+rename to include/libswapon.h
+diff --git a/libs/libltpswapon/Makefile b/libs/libltpswapon/Makefile
+new file mode 100644
+index 000000000..8f738338b
+--- /dev/null
++++ b/libs/libltpswapon/Makefile
+@@ -0,0 +1,12 @@
++# SPDX-License-Identifier: GPL-2.0-or-later
++#
++# Copyright (C) Richard Purdie <richard.purdie@linuxfoundation.org>
++
++top_srcdir ?= ../..
++
++include $(top_srcdir)/include/mk/env_pre.mk
++
++INTERNAL_LIB := libltpswapon.a
++
++include $(top_srcdir)/include/mk/lib.mk
++include $(top_srcdir)/include/mk/generic_leaf_target.mk
+diff --git a/testcases/kernel/syscalls/swapon/libswapon.c b/libs/libltpswapon/libswapon.c
+similarity index 100%
+rename from testcases/kernel/syscalls/swapon/libswapon.c
+rename to libs/libltpswapon/libswapon.c
+diff --git a/testcases/kernel/syscalls/swapoff/Makefile b/testcases/kernel/syscalls/swapoff/Makefile
+index fbfbe0441..a74374605 100644
+--- a/testcases/kernel/syscalls/swapoff/Makefile
++++ b/testcases/kernel/syscalls/swapoff/Makefile
+@@ -3,7 +3,10 @@
+
+ top_srcdir ?= ../../../..
+
++LTPLIBS = ltpswapon
++
+ include $(top_srcdir)/include/mk/testcases.mk
+-include $(abs_srcdir)/./Makefile.inc
++
++LTPLDLIBS = -lltpswapon
++
+ include $(top_srcdir)/include/mk/generic_leaf_target.mk
+-$(MAKE_TARGETS): %: ../swapon/libswapon.o
+diff --git a/testcases/kernel/syscalls/swapoff/Makefile.inc b/testcases/kernel/syscalls/swapoff/Makefile.inc
+deleted file mode 100644
+index 65350cbeb..000000000
+--- a/testcases/kernel/syscalls/swapoff/Makefile.inc
++++ /dev/null
+@@ -1,6 +0,0 @@
+-LIBDIR += ../swapon/
+-LIBSWAPON := $(LIBDIR)/libswapon.o
+-$(LIBSWAPON):
+- $(MAKE) -C $(LIBDIR)
+-CPPFLAGS += -I$(abs_srcdir)/$(LIBDIR)
+-LDFLAGS += -L$(abs_builddir)/$(LIBDIR)
+diff --git a/testcases/kernel/syscalls/swapoff/swapoff01.c b/testcases/kernel/syscalls/swapoff/swapoff01.c
+index e115269c0..87a217a89 100644
+--- a/testcases/kernel/syscalls/swapoff/swapoff01.c
++++ b/testcases/kernel/syscalls/swapoff/swapoff01.c
+@@ -25,7 +25,7 @@
+ #include <stdlib.h>
+ #include "config.h"
+ #include "lapi/syscalls.h"
+-#include "../swapon/libswapon.h"
++#include "libswapon.h"
+
+ static void setup(void);
+ static void cleanup(void);
+diff --git a/testcases/kernel/syscalls/swapoff/swapoff02.c b/testcases/kernel/syscalls/swapoff/swapoff02.c
+index 8954f975f..60cd66c26 100644
+--- a/testcases/kernel/syscalls/swapoff/swapoff02.c
++++ b/testcases/kernel/syscalls/swapoff/swapoff02.c
+@@ -33,7 +33,7 @@
+ #include "test.h"
+ #include "lapi/syscalls.h"
+ #include "safe_macros.h"
+-#include "../swapon/libswapon.h"
++#include "libswapon.h"
+
+ static void setup(void);
+ static void cleanup(void);
+diff --git a/testcases/kernel/syscalls/swapon/Makefile b/testcases/kernel/syscalls/swapon/Makefile
+index 97113a447..57ec45d48 100644
+--- a/testcases/kernel/syscalls/swapon/Makefile
++++ b/testcases/kernel/syscalls/swapon/Makefile
+@@ -8,10 +8,10 @@ endif
+
+ top_srcdir ?= ../../../..
+
++LTPLIBS = ltpswapon
++
+ include $(top_srcdir)/include/mk/testcases.mk
+
+-FILTER_OUT_MAKE_TARGETS := libswapon
++LTPLDLIBS = -lltpswapon
+
+ include $(top_srcdir)/include/mk/generic_leaf_target.mk
+-
+-$(MAKE_TARGETS): %: libswapon.o
+--
+2.27.0
+
diff --git a/poky/meta/recipes-extended/ltp/ltp/libswapon.patch b/poky/meta/recipes-extended/ltp/ltp/libswapon.patch
new file mode 100644
index 000000000..07b0dcefc
--- /dev/null
+++ b/poky/meta/recipes-extended/ltp/ltp/libswapon.patch
@@ -0,0 +1,368 @@
+Index: git/libs/libltpswapon/Makefile
+===================================================================
+--- /dev/null
++++ git/libs/libltpswapon/Makefile
+@@ -0,0 +1,12 @@
++# SPDX-License-Identifier: GPL-2.0-or-later
++#
++# Copyright (C) Richard Purdie <richard.purdie@linuxfoundation.org>
++
++top_srcdir ?= ../..
++
++include $(top_srcdir)/include/mk/env_pre.mk
++
++INTERNAL_LIB := libltpswapon.a
++
++include $(top_srcdir)/include/mk/lib.mk
++include $(top_srcdir)/include/mk/generic_leaf_target.mk
+Index: git/libs/libltpswapon/libswapon.c
+===================================================================
+--- /dev/null
++++ git/libs/libltpswapon/libswapon.c
+@@ -0,0 +1,90 @@
++/*
++ * Copyright (c) 2013 Oracle and/or its affiliates. All Rights Reserved.
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License as
++ * published by the Free Software Foundation; either version 2 of
++ * the License, or (at your option) any later version.
++ *
++ * This program is distributed in the hope that it would be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write the Free Software Foundation,
++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
++ *
++ * Author: Stanislav Kholmanskikh <stanislav.kholmanskikh@oracle.com>
++ *
++ */
++
++#include <errno.h>
++#include "lapi/syscalls.h"
++#include "test.h"
++#include "libswapon.h"
++
++/*
++ * Make a swap file
++ */
++int make_swapfile(void (cleanup)(void), const char *swapfile, int safe)
++{
++ if (!tst_fs_has_free(NULL, ".", sysconf(_SC_PAGESIZE) * 10,
++ TST_BYTES)) {
++ tst_brkm(TBROK, cleanup,
++ "Insufficient disk space to create swap file");
++ }
++
++ /* create file */
++ if (tst_fill_file(swapfile, 0,
++ sysconf(_SC_PAGESIZE), 10) != 0) {
++ tst_brkm(TBROK, cleanup, "Failed to create swapfile");
++ }
++
++ /* make the file swapfile */
++ const char *argv[2 + 1];
++ argv[0] = "mkswap";
++ argv[1] = swapfile;
++ argv[2] = NULL;
++
++ return tst_cmd(cleanup, argv, "/dev/null", "/dev/null", safe);
++}
++
++/*
++ * Check swapon/swapoff support status of filesystems or files
++ * we are testing on.
++ */
++void is_swap_supported(void (cleanup)(void), const char *filename)
++{
++ int fibmap = tst_fibmap(filename);
++ long fs_type = tst_fs_type(cleanup, filename);
++ const char *fstype = tst_fs_type_name(fs_type);
++
++ int ret = make_swapfile(NULL, filename, 1);
++ if (ret != 0) {
++ if (fibmap == 1) {
++ tst_brkm(TCONF, cleanup,
++ "mkswap on %s not supported", fstype);
++ } else {
++ tst_brkm(TFAIL, cleanup,
++ "mkswap on %s failed", fstype);
++ }
++ }
++
++ TEST(ltp_syscall(__NR_swapon, filename, 0));
++ if (TEST_RETURN == -1) {
++ if (fibmap == 1 && errno == EINVAL) {
++ tst_brkm(TCONF, cleanup,
++ "Swapfile on %s not implemented", fstype);
++ } else {
++ tst_brkm(TFAIL | TERRNO, cleanup,
++ "swapon on %s failed", fstype);
++ }
++ }
++
++ TEST(ltp_syscall(__NR_swapoff, filename, 0));
++ if (TEST_RETURN == -1) {
++ tst_brkm(TFAIL | TERRNO, cleanup,
++ "swapoff on %s failed", fstype);
++ }
++}
+Index: git/testcases/kernel/syscalls/swapoff/Makefile
+===================================================================
+--- git.orig/testcases/kernel/syscalls/swapoff/Makefile
++++ git/testcases/kernel/syscalls/swapoff/Makefile
+@@ -3,7 +3,11 @@
+
+ top_srcdir ?= ../../../..
+
++LTPLIBS = ltpswapon
++
+ include $(top_srcdir)/include/mk/testcases.mk
+-include $(abs_srcdir)/./Makefile.inc
++
++LTPLDLIBS = -lltpswapon
++
+ include $(top_srcdir)/include/mk/generic_leaf_target.mk
+-$(MAKE_TARGETS): %: ../swapon/libswapon.o
++
+Index: git/testcases/kernel/syscalls/swapoff/Makefile.inc
+===================================================================
+--- git.orig/testcases/kernel/syscalls/swapoff/Makefile.inc
++++ /dev/null
+@@ -1,6 +0,0 @@
+-LIBDIR += ../swapon/
+-LIBSWAPON := $(LIBDIR)/libswapon.o
+-$(LIBSWAPON):
+- $(MAKE) -C $(LIBDIR)
+-CPPFLAGS += -I$(abs_srcdir)/$(LIBDIR)
+-LDFLAGS += -L$(abs_builddir)/$(LIBDIR)
+Index: git/testcases/kernel/syscalls/swapon/Makefile
+===================================================================
+--- git.orig/testcases/kernel/syscalls/swapon/Makefile
++++ git/testcases/kernel/syscalls/swapon/Makefile
+@@ -8,10 +8,10 @@ endif
+
+ top_srcdir ?= ../../../..
+
++LTPLIBS = ltpswapon
++
+ include $(top_srcdir)/include/mk/testcases.mk
+
+-FILTER_OUT_MAKE_TARGETS := libswapon
++LTPLDLIBS = -lltpswapon
+
+ include $(top_srcdir)/include/mk/generic_leaf_target.mk
+-
+-$(MAKE_TARGETS): %: libswapon.o
+Index: git/testcases/kernel/syscalls/swapon/libswapon.c
+===================================================================
+--- git.orig/testcases/kernel/syscalls/swapon/libswapon.c
++++ /dev/null
+@@ -1,90 +0,0 @@
+-/*
+- * Copyright (c) 2013 Oracle and/or its affiliates. All Rights Reserved.
+- *
+- * This program is free software; you can redistribute it and/or
+- * modify it under the terms of the GNU General Public License as
+- * published by the Free Software Foundation; either version 2 of
+- * the License, or (at your option) any later version.
+- *
+- * This program is distributed in the hope that it would be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write the Free Software Foundation,
+- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+- *
+- * Author: Stanislav Kholmanskikh <stanislav.kholmanskikh@oracle.com>
+- *
+- */
+-
+-#include <errno.h>
+-#include "lapi/syscalls.h"
+-#include "test.h"
+-#include "libswapon.h"
+-
+-/*
+- * Make a swap file
+- */
+-int make_swapfile(void (cleanup)(void), const char *swapfile, int safe)
+-{
+- if (!tst_fs_has_free(NULL, ".", sysconf(_SC_PAGESIZE) * 10,
+- TST_BYTES)) {
+- tst_brkm(TBROK, cleanup,
+- "Insufficient disk space to create swap file");
+- }
+-
+- /* create file */
+- if (tst_fill_file(swapfile, 0,
+- sysconf(_SC_PAGESIZE), 10) != 0) {
+- tst_brkm(TBROK, cleanup, "Failed to create swapfile");
+- }
+-
+- /* make the file swapfile */
+- const char *argv[2 + 1];
+- argv[0] = "mkswap";
+- argv[1] = swapfile;
+- argv[2] = NULL;
+-
+- return tst_cmd(cleanup, argv, "/dev/null", "/dev/null", safe);
+-}
+-
+-/*
+- * Check swapon/swapoff support status of filesystems or files
+- * we are testing on.
+- */
+-void is_swap_supported(void (cleanup)(void), const char *filename)
+-{
+- int fibmap = tst_fibmap(filename);
+- long fs_type = tst_fs_type(cleanup, filename);
+- const char *fstype = tst_fs_type_name(fs_type);
+-
+- int ret = make_swapfile(NULL, filename, 1);
+- if (ret != 0) {
+- if (fibmap == 1) {
+- tst_brkm(TCONF, cleanup,
+- "mkswap on %s not supported", fstype);
+- } else {
+- tst_brkm(TFAIL, cleanup,
+- "mkswap on %s failed", fstype);
+- }
+- }
+-
+- TEST(ltp_syscall(__NR_swapon, filename, 0));
+- if (TEST_RETURN == -1) {
+- if (fibmap == 1 && errno == EINVAL) {
+- tst_brkm(TCONF, cleanup,
+- "Swapfile on %s not implemented", fstype);
+- } else {
+- tst_brkm(TFAIL | TERRNO, cleanup,
+- "swapon on %s failed", fstype);
+- }
+- }
+-
+- TEST(ltp_syscall(__NR_swapoff, filename, 0));
+- if (TEST_RETURN == -1) {
+- tst_brkm(TFAIL | TERRNO, cleanup,
+- "swapoff on %s failed", fstype);
+- }
+-}
+Index: git/testcases/kernel/syscalls/swapon/libswapon.h
+===================================================================
+--- git.orig/testcases/kernel/syscalls/swapon/libswapon.h
++++ /dev/null
+@@ -1,39 +0,0 @@
+-/*
+- * Copyright (c) 2013 Oracle and/or its affiliates. All Rights Reserved.
+- *
+- * This program is free software; you can redistribute it and/or
+- * modify it under the terms of the GNU General Public License as
+- * published by the Free Software Foundation; either version 2 of
+- * the License, or (at your option) any later version.
+- *
+- * This program is distributed in the hope that it would be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write the Free Software Foundation,
+- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+- *
+- * Author: Stanislav Kholmanskikh <stanislav.kholmanskikh@oracle.com>
+- *
+- */
+-
+-/*
+- * Contains common content for all swapon tests
+- */
+-
+-#ifndef __LIBSWAPON_H__
+-#define __LIBSWAPON_H__
+-
+-/*
+- * Make a swap file
+- */
+-int make_swapfile(void (cleanup)(void), const char *swapfile, int safe);
+-
+-/*
+- * Check swapon/swapoff support status of filesystems or files
+- * we are testing on.
+- */
+-void is_swap_supported(void (cleanup)(void), const char *filename);
+-#endif /* __LIBSWAPON_H__ */
+Index: git/testcases/kernel/syscalls/swapoff/swapoff01.c
+===================================================================
+--- git.orig/testcases/kernel/syscalls/swapoff/swapoff01.c
++++ git/testcases/kernel/syscalls/swapoff/swapoff01.c
+@@ -25,7 +25,7 @@
+ #include <stdlib.h>
+ #include "config.h"
+ #include "lapi/syscalls.h"
+-#include "../swapon/libswapon.h"
++#include "libswapon.h"
+
+ static void setup(void);
+ static void cleanup(void);
+Index: git/testcases/kernel/syscalls/swapoff/swapoff02.c
+===================================================================
+--- git.orig/testcases/kernel/syscalls/swapoff/swapoff02.c
++++ git/testcases/kernel/syscalls/swapoff/swapoff02.c
+@@ -33,7 +33,7 @@
+ #include "test.h"
+ #include "lapi/syscalls.h"
+ #include "safe_macros.h"
+-#include "../swapon/libswapon.h"
++#include "libswapon.h"
+
+ static void setup(void);
+ static void cleanup(void);
+Index: git/include/libswapon.h
+===================================================================
+--- /dev/null
++++ git/include/libswapon.h
+@@ -0,0 +1,39 @@
++/*
++ * Copyright (c) 2013 Oracle and/or its affiliates. All Rights Reserved.
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License as
++ * published by the Free Software Foundation; either version 2 of
++ * the License, or (at your option) any later version.
++ *
++ * This program is distributed in the hope that it would be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write the Free Software Foundation,
++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
++ *
++ * Author: Stanislav Kholmanskikh <stanislav.kholmanskikh@oracle.com>
++ *
++ */
++
++/*
++ * Contains common content for all swapon tests
++ */
++
++#ifndef __LIBSWAPON_H__
++#define __LIBSWAPON_H__
++
++/*
++ * Make a swap file
++ */
++int make_swapfile(void (cleanup)(void), const char *swapfile, int safe);
++
++/*
++ * Check swapon/swapoff support status of filesystems or files
++ * we are testing on.
++ */
++void is_swap_supported(void (cleanup)(void), const char *filename);
++#endif /* __LIBSWAPON_H__ */
diff --git a/poky/meta/recipes-extended/ltp/ltp_20210121.bb b/poky/meta/recipes-extended/ltp/ltp_20210121.bb
index 593f07087..f58ca2eb2 100644
--- a/poky/meta/recipes-extended/ltp/ltp_20210121.bb
+++ b/poky/meta/recipes-extended/ltp/ltp_20210121.bb
@@ -30,8 +30,8 @@ CFLAGS_append_mipsarchn64 = " -D__SANE_USERSPACE_TYPES__"
SRCREV = "4d005621edd109d119627eb9210b224a63bf22cb"
# remove at next version upgrade or when output changes
-PR = "r1"
-HASHEQUIV_HASH_VERSION .= ".1"
+PR = "r4"
+HASHEQUIV_HASH_VERSION .= ".4"
SRC_URI = "git://github.com/linux-test-project/ltp.git \
file://0001-build-Add-option-to-select-libc-implementation.patch \
@@ -39,6 +39,9 @@ SRC_URI = "git://github.com/linux-test-project/ltp.git \
file://0001-Add-more-musl-exclusions.patch \
file://0001-Remove-OOM-tests-from-runtest-mm.patch \
file://determinism.patch \
+ file://0001-open_posix_testsuite-generate-makefiles.sh-Avoid-inc.patch \
+ file://0002-Makefile-Avoid-wildcard-determinism-issues.patch \
+ file://0003-syscalls-swapon-swapoff-Move-common-library-to-libs.patch \
"
S = "${WORKDIR}/git"
@@ -56,14 +59,6 @@ EXTRA_OECONF = " --with-realtime-testsuite --with-open-posix-testsuite "
# ltp network/rpc test cases ftbfs when libtirpc is found
EXTRA_OECONF += " --without-tirpc "
-do_compile_prepend() {
- # Reported at http://lists.linux.it/pipermail/ltp/2021-March/021274.html
- # Avoid a race over construction of libswapon.o which is built by swapon and swapoff
- # but the object differs depending upon which one built it
- # ("../swapon/libswapon.c" vs "libswapon.c" references)
- make -C ${B}/testcases/kernel/syscalls/swapon/
-}
-
do_install(){
install -d ${D}${prefix}/
oe_runmake DESTDIR=${D} SKIP_IDCHECK=1 install
diff --git a/poky/meta/recipes-extended/lzip/lzip_1.22.bb b/poky/meta/recipes-extended/lzip/lzip_1.22.bb
index d21c36a3f..336026945 100644
--- a/poky/meta/recipes-extended/lzip/lzip_1.22.bb
+++ b/poky/meta/recipes-extended/lzip/lzip_1.22.bb
@@ -1,5 +1,6 @@
SUMMARY = "Lossless data compressor based on the LZMA algorithm"
HOMEPAGE = "http://lzip.nongnu.org/lzip.html"
+DESCRIPTION = "Lzip is a lossless data compressor with a user interface similar to the one of gzip or bzip2. Lzip uses a simplified form of the Lempel-Ziv-Markov chain-Algorithm (LZMA) stream format, chosen to maximize safety and interoperability."
SECTION = "console/utils"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=76d6e300ffd8fb9d18bd9b136a9bba13 \
diff --git a/poky/meta/recipes-extended/man-db/man-db_2.9.4.bb b/poky/meta/recipes-extended/man-db/man-db_2.9.4.bb
index 432953a1b..cfa656176 100644
--- a/poky/meta/recipes-extended/man-db/man-db_2.9.4.bb
+++ b/poky/meta/recipes-extended/man-db/man-db_2.9.4.bb
@@ -1,5 +1,6 @@
SUMMARY = "An implementation of the standard Unix documentation system accessed using the man command"
HOMEPAGE = "http://man-db.nongnu.org/"
+DESCRIPTION = "man-db is an implementation of the standard Unix documentation system accessed using the man command. It uses a Berkeley DB database in place of the traditional flat-text whatis databases."
LICENSE = "LGPLv2.1 & GPLv2"
LIC_FILES_CHKSUM = "file://docs/COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \
file://docs/COPYING;md5=eb723b61539feef013de476e68b5c50a"
diff --git a/poky/meta/recipes-extended/mc/mc_4.8.26.bb b/poky/meta/recipes-extended/mc/mc_4.8.26.bb
index 3eb19309b..5c5e6790d 100644
--- a/poky/meta/recipes-extended/mc/mc_4.8.26.bb
+++ b/poky/meta/recipes-extended/mc/mc_4.8.26.bb
@@ -1,5 +1,6 @@
SUMMARY = "Midnight Commander is an ncurses based file manager"
HOMEPAGE = "http://www.midnight-commander.org/"
+DESCRIPTION = "GNU Midnight Commander is a visual file manager, licensed under GNU General Public License and therefore qualifies as Free Software. It's a feature rich full-screen text mode application that allows you to copy, move and delete files and whole directory trees, search for files and run commands in the subshell. Internal viewer and editor are included."
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=270bbafe360e73f9840bd7981621f9c2"
SECTION = "console/utils"
diff --git a/poky/meta/recipes-extended/mdadm/mdadm_4.1.bb b/poky/meta/recipes-extended/mdadm/mdadm_4.1.bb
index 001d3331a..bb77759cf 100644
--- a/poky/meta/recipes-extended/mdadm/mdadm_4.1.bb
+++ b/poky/meta/recipes-extended/mdadm/mdadm_4.1.bb
@@ -1,5 +1,6 @@
SUMMARY = "Tool for managing software RAID under Linux"
HOMEPAGE = "http://www.kernel.org/pub/linux/utils/raid/mdadm/"
+DESCRIPTION = "mdadm is a Linux utility used to manage and monitor software RAID devices."
# Some files are GPLv2+ while others are GPLv2.
LICENSE = "GPLv2 & GPLv2+"
diff --git a/poky/meta/recipes-extended/mingetty/mingetty_1.08.bb b/poky/meta/recipes-extended/mingetty/mingetty_1.08.bb
index 491b89209..9822e86b0 100644
--- a/poky/meta/recipes-extended/mingetty/mingetty_1.08.bb
+++ b/poky/meta/recipes-extended/mingetty/mingetty_1.08.bb
@@ -1,6 +1,7 @@
SUMMARY = "Compact getty terminal handler for virtual consoles only"
SECTION = "console/utils"
HOMEPAGE = "http://sourceforge.net/projects/mingetty/"
+DESCRIPTION = "This is a small Linux console getty that is started on the Linux text console, asks for a login name and then tranfers over to login directory. Is extended to allow automatic login and starting any app."
LICENSE = "GPLv2"
PR = "r3"
diff --git a/poky/meta/recipes-extended/msmtp/msmtp_1.8.14.bb b/poky/meta/recipes-extended/msmtp/msmtp_1.8.15.bb
index 3bd5f9ede..e85873e90 100644
--- a/poky/meta/recipes-extended/msmtp/msmtp_1.8.14.bb
+++ b/poky/meta/recipes-extended/msmtp/msmtp_1.8.15.bb
@@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
UPSTREAM_CHECK_URI = "https://marlam.de/msmtp/download/"
SRC_URI = "https://marlam.de/${BPN}/releases/${BP}.tar.xz"
-SRC_URI[sha256sum] = "d56f065d711486e9c234618515a02a48a48dab4051b34f3e108fbecb6fb773b4"
+SRC_URI[sha256sum] = "2265dc639ebf2edf3069fffe0a3bd76749f8b58f4001d5cdeae19873949099ce"
inherit gettext autotools update-alternatives pkgconfig
diff --git a/poky/meta/recipes-extended/parted/parted_3.4.bb b/poky/meta/recipes-extended/parted/parted_3.4.bb
index 79dad5468..c15f5aeb0 100644
--- a/poky/meta/recipes-extended/parted/parted_3.4.bb
+++ b/poky/meta/recipes-extended/parted/parted_3.4.bb
@@ -1,5 +1,6 @@
SUMMARY = "Disk partition editing/resizing utility"
HOMEPAGE = "http://www.gnu.org/software/parted/parted.html"
+DESCRIPTION = "GNU Parted manipulates partition tables. This is useful for creating space for new operating systems, reorganizing disk usage, copying data on hard disks and disk imaging."
LICENSE = "GPLv3+"
LIC_FILES_CHKSUM = "file://COPYING;md5=2f31b266d3440dd7ee50f92cf67d8e6c"
SECTION = "console/tools"
diff --git a/poky/meta/recipes-extended/perl/libconvert-asn1-perl_0.27.bb b/poky/meta/recipes-extended/perl/libconvert-asn1-perl_0.27.bb
index 9f992d3e8..409a8f389 100644
--- a/poky/meta/recipes-extended/perl/libconvert-asn1-perl_0.27.bb
+++ b/poky/meta/recipes-extended/perl/libconvert-asn1-perl_0.27.bb
@@ -1,5 +1,7 @@
SUMMARY = "Convert::ASN1 - Perl ASN.1 Encode/Decode library"
SECTION = "libs"
+HOMEPAGE = "https://metacpan.org/source/GBARR/Convert-ASN1-0.27"
+DESCRIPTION = "Convert::ASN1 is a perl library for encoding/decoding data using ASN.1 definitions."
LICENSE = "Artistic-1.0 | GPL-1.0+"
LIC_FILES_CHKSUM = "file://README.md;beginline=91;endline=97;md5=ceff7fd286eb6d8e8e0d3d23e096a63f"
diff --git a/poky/meta/recipes-extended/perl/libtimedate-perl_2.30.bb b/poky/meta/recipes-extended/perl/libtimedate-perl_2.30.bb
index d42eadb58..46843bfc8 100644
--- a/poky/meta/recipes-extended/perl/libtimedate-perl_2.30.bb
+++ b/poky/meta/recipes-extended/perl/libtimedate-perl_2.30.bb
@@ -1,5 +1,6 @@
SUMMARY = "Perl modules useful for manipulating date and time information"
HOMEPAGE = "https://metacpan.org/release/TimeDate"
+DESCRIPTION = "This is the perl5 TimeDate distribution. It requires perl version 5.003 or later."
SECTION = "libs"
# You can redistribute it and/or modify it under the same terms as Perl itself.
LICENSE = "Artistic-1.0 | GPL-1.0+"
diff --git a/poky/meta/recipes-extended/procps/procps/0001-w.c-correct-musl-builds.patch b/poky/meta/recipes-extended/procps/procps/0001-w.c-correct-musl-builds.patch
new file mode 100644
index 000000000..c92ad28e4
--- /dev/null
+++ b/poky/meta/recipes-extended/procps/procps/0001-w.c-correct-musl-builds.patch
@@ -0,0 +1,44 @@
+From 22f8d25567b8d64bdbab0fb0b4915b4362561d9b Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Wed, 24 Feb 2021 21:14:31 +0000
+Subject: [PATCH] w.c: correct musl builds
+
+No need to redefine UT_ stuff to something that does not exist.
+
+UT_ is already provided in musl but via utmp.h header, so include
+it always.
+
+Upstream-Status: Submitted [https://gitlab.com/procps-ng/procps/-/merge_requests/126]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ w.c | 9 +--------
+ 1 file changed, 1 insertion(+), 8 deletions(-)
+
+diff --git a/w.c b/w.c
+index 9d07ac9..d10639b 100644
+--- a/w.c
++++ b/w.c
+@@ -57,9 +57,8 @@
+ #include <unistd.h>
+ #ifdef HAVE_UTMPX_H
+ # include <utmpx.h>
+-#else
+-# include <utmp.h>
+ #endif
++#include <utmp.h>
+ #include <arpa/inet.h>
+
+ static int ignoreuser = 0; /* for '-u' */
+@@ -72,12 +71,6 @@ typedef struct utmpx utmp_t;
+ typedef struct utmp utmp_t;
+ #endif
+
+-#if !defined(UT_HOSTSIZE) || defined(__UT_HOSTSIZE)
+-# define UT_HOSTSIZE __UT_HOSTSIZE
+-# define UT_LINESIZE __UT_LINESIZE
+-# define UT_NAMESIZE __UT_NAMESIZE
+-#endif
+-
+ #ifdef W_SHOWFROM
+ # define FROM_STRING "on"
+ #else
diff --git a/poky/meta/recipes-extended/procps/procps/0002-proc-escape.c-add-missing-include.patch b/poky/meta/recipes-extended/procps/procps/0002-proc-escape.c-add-missing-include.patch
new file mode 100644
index 000000000..5fa1ac9d7
--- /dev/null
+++ b/poky/meta/recipes-extended/procps/procps/0002-proc-escape.c-add-missing-include.patch
@@ -0,0 +1,23 @@
+From 4f964821398dff7ab21fec63da15e1e00b2e9277 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Wed, 24 Feb 2021 21:16:14 +0000
+Subject: [PATCH] proc/escape.c: add missing include
+
+Upstream-Status: Submitted [https://gitlab.com/procps-ng/procps/-/merge_requests/126]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ proc/escape.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/proc/escape.c b/proc/escape.c
+index 2e8fb7d..e1f4612 100644
+--- a/proc/escape.c
++++ b/proc/escape.c
+@@ -21,6 +21,7 @@
+ #include <sys/types.h>
+ #include <string.h>
+ #include <limits.h>
++#include <langinfo.h>
+ #include "procps.h"
+ #include "escape.h"
+ #include "readproc.h"
diff --git a/poky/meta/recipes-extended/procps/procps_3.3.16.bb b/poky/meta/recipes-extended/procps/procps_3.3.17.bb
index ef3ac86e9..c74a901d9 100644
--- a/poky/meta/recipes-extended/procps/procps_3.3.16.bb
+++ b/poky/meta/recipes-extended/procps/procps_3.3.17.bb
@@ -14,8 +14,10 @@ inherit autotools gettext pkgconfig update-alternatives
SRC_URI = "git://gitlab.com/procps-ng/procps.git;protocol=https \
file://sysctl.conf \
+ file://0001-w.c-correct-musl-builds.patch \
+ file://0002-proc-escape.c-add-missing-include.patch \
"
-SRCREV = "59c88e18f29000ceaf7e5f98181b07be443cf12f"
+SRCREV = "19a508ea121c0c4ac6d0224575a036de745eaaf8"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-extended/quota/quota_4.06.bb b/poky/meta/recipes-extended/quota/quota_4.06.bb
index 19ccbd588..027b0811f 100644
--- a/poky/meta/recipes-extended/quota/quota_4.06.bb
+++ b/poky/meta/recipes-extended/quota/quota_4.06.bb
@@ -1,6 +1,7 @@
SUMMARY = "Tools for monitoring & limiting user disk usage per filesystem"
SECTION = "base"
HOMEPAGE = "http://sourceforge.net/projects/linuxquota/"
+DESCRIPTION = "Tools and patches for the Linux Diskquota system as part of the Linux kernel"
BUGTRACKER = "http://sourceforge.net/tracker/?group_id=18136&atid=118136"
LICENSE = "BSD & GPLv2+ & LGPLv2.1+"
LIC_FILES_CHKSUM = "file://rquota_server.c;beginline=1;endline=20;md5=fe7e0d7e11c6f820f8fa62a5af71230f \
diff --git a/poky/meta/recipes-extended/sed/sed_4.8.bb b/poky/meta/recipes-extended/sed/sed_4.8.bb
index 048db47e1..57a769e8c 100644
--- a/poky/meta/recipes-extended/sed/sed_4.8.bb
+++ b/poky/meta/recipes-extended/sed/sed_4.8.bb
@@ -1,5 +1,6 @@
SUMMARY = "Stream EDitor (text filtering utility)"
HOMEPAGE = "http://www.gnu.org/software/sed/"
+DESCRIPTION = "sed (stream editor) is a non-interactive command-line text editor."
LICENSE = "GPLv3+"
LIC_FILES_CHKSUM = "file://COPYING;md5=c678957b0c8e964aa6c70fd77641a71e \
file://sed/sed.h;beginline=1;endline=15;md5=fb3c7e6fbca6f66943859153d4be8efe \
diff --git a/poky/meta/recipes-extended/shadow/shadow.inc b/poky/meta/recipes-extended/shadow/shadow.inc
index 4ae7a78c5..2278541f6 100644
--- a/poky/meta/recipes-extended/shadow/shadow.inc
+++ b/poky/meta/recipes-extended/shadow/shadow.inc
@@ -1,5 +1,6 @@
SUMMARY = "Tools to change and administer password and group data"
HOMEPAGE = "http://github.com/shadow-maint/shadow"
+DESCRIPTION = "${SUMMARY}"
BUGTRACKER = "http://github.com/shadow-maint/shadow/issues"
SECTION = "base/utils"
LICENSE = "BSD | Artistic-1.0"
diff --git a/poky/meta/recipes-extended/shadow/shadow_4.8.1.bb b/poky/meta/recipes-extended/shadow/shadow_4.8.1.bb
index c975395ff..ff4aad926 100644
--- a/poky/meta/recipes-extended/shadow/shadow_4.8.1.bb
+++ b/poky/meta/recipes-extended/shadow/shadow_4.8.1.bb
@@ -6,5 +6,6 @@ BUILD_LDFLAGS_append_class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'p
BBCLASSEXTEND = "native nativesdk"
-
-
+# Severity is low and marked as closed and won't fix.
+# https://bugzilla.redhat.com/show_bug.cgi?id=884658
+CVE_CHECK_WHITELIST += "CVE-2013-4235"
diff --git a/poky/meta/recipes-extended/stress-ng/stress-ng_0.12.03.bb b/poky/meta/recipes-extended/stress-ng/stress-ng_0.12.05.bb
index 73539c926..eb6bdb4a8 100644
--- a/poky/meta/recipes-extended/stress-ng/stress-ng_0.12.03.bb
+++ b/poky/meta/recipes-extended/stress-ng/stress-ng_0.12.05.bb
@@ -9,7 +9,7 @@ SRC_URI = "https://kernel.ubuntu.com/~cking/tarballs/${BPN}/${BP}.tar.xz \
file://0001-Do-not-preserve-ownership-when-installing-example-jo.patch \
file://no_daddr_t.patch \
"
-SRC_URI[sha256sum] = "f27ff439b76a17641291d4234c73655cddcb0a5a588441d6ade290b06ca4b805"
+SRC_URI[sha256sum] = "af7779aee38e6d94726ed7d5cf36384a64d50c86e42fff89c141d8609913f425"
DEPENDS = "coreutils-native"
diff --git a/poky/meta/recipes-extended/sudo/sudo.inc b/poky/meta/recipes-extended/sudo/sudo.inc
index 97ecabe0f..0bea35a0a 100644
--- a/poky/meta/recipes-extended/sudo/sudo.inc
+++ b/poky/meta/recipes-extended/sudo/sudo.inc
@@ -49,3 +49,5 @@ do_compile_prepend () {
do_install_prepend (){
mkdir -p ${D}/${localstatedir}/lib
}
+
+CVE_VERSION_SUFFIX = "patch"
diff --git a/poky/meta/recipes-extended/sudo/sudo_1.9.5p2.bb b/poky/meta/recipes-extended/sudo/sudo_1.9.6p1.bb
index ca23e94ac..b33345913 100644
--- a/poky/meta/recipes-extended/sudo/sudo_1.9.5p2.bb
+++ b/poky/meta/recipes-extended/sudo/sudo_1.9.6p1.bb
@@ -7,7 +7,7 @@ SRC_URI = "https://www.sudo.ws/dist/sudo-${PV}.tar.gz \
PAM_SRC_URI = "file://sudo.pam"
-SRC_URI[sha256sum] = "539e2ef43c8a55026697fb0474ab6a925a11206b5aa58710cb42a0e1c81f0978"
+SRC_URI[sha256sum] = "a9e9cdc058fafeb9cd3ebfb864c81755e524d98aa022152763f25bce8ca3ca90"
DEPENDS += " virtual/crypt ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
RDEPENDS_${PN} += " ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-limits pam-plugin-keyinit', '', d)}"
diff --git a/poky/meta/recipes-extended/sysklogd/sysklogd_2.2.1.bb b/poky/meta/recipes-extended/sysklogd/sysklogd_2.2.2.bb
index aa3f126fb..5dfeca532 100644
--- a/poky/meta/recipes-extended/sysklogd/sysklogd_2.2.1.bb
+++ b/poky/meta/recipes-extended/sysklogd/sysklogd_2.2.2.bb
@@ -14,7 +14,7 @@ SRC_URI = "git://github.com/troglobit/sysklogd.git;nobranch=1 \
file://sysklogd \
"
-SRCREV = "b115c7ec4e6d9f3587ac8d212bfc454bfbfe7023"
+SRCREV = "f507ed8ff3f1e9d71bb6f85acbf5d14b2fa4e5f7"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb b/poky/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb
index ec04bfe39..a942ac299 100644
--- a/poky/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb
+++ b/poky/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb
@@ -1,5 +1,6 @@
SUMMARY = "Fake version of the texinfo utility suite"
SECTION = "console/utils"
+DESCRIPTION = "${SUMMARY}"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=d6bb62e73ca8b901d3f2e9d71542f4bb"
DEPENDS = ""
diff --git a/poky/meta/recipes-extended/unzip/unzip_6.0.bb b/poky/meta/recipes-extended/unzip/unzip_6.0.bb
index c1ea0a9a2..0c56a39d9 100644
--- a/poky/meta/recipes-extended/unzip/unzip_6.0.bb
+++ b/poky/meta/recipes-extended/unzip/unzip_6.0.bb
@@ -1,5 +1,6 @@
SUMMARY = "Utilities for extracting and viewing files in .zip archives"
HOMEPAGE = "http://www.info-zip.org"
+DESCRIPTION = "Info-ZIP's purpose is to provide free, portable, high-quality versions of the Zip and UnZip compressor-archiver utilities that are compatible with the DOS-based PKZIP by PKWARE, Inc."
SECTION = "console/utils"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=94caec5a51ef55ef711ee4e8b1c69e29"
diff --git a/poky/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb b/poky/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb
index 4f0f9531a..2787b270f 100644
--- a/poky/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb
+++ b/poky/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb
@@ -1,5 +1,6 @@
SUMMARY = "Socket-based service activation daemon"
HOMEPAGE = "https://github.com/xinetd-org/xinetd"
+DESCRIPTION = "xinetd is a powerful replacement for inetd, xinetd has access control mechanisms, extensive logging capabilities, the ability to make services available based on time, can place limits on the number of servers that can be started, and has deployable defence mechanisms to protect against port scanners, among other things."
# xinetd is a BSD-like license
# Apple and Gentoo say BSD here.
diff --git a/poky/meta/recipes-extended/xz/xz_5.2.5.bb b/poky/meta/recipes-extended/xz/xz_5.2.5.bb
index af21b6056..f5f5c318f 100644
--- a/poky/meta/recipes-extended/xz/xz_5.2.5.bb
+++ b/poky/meta/recipes-extended/xz/xz_5.2.5.bb
@@ -1,5 +1,6 @@
SUMMARY = "Utilities for managing LZMA compressed files"
HOMEPAGE = "https://tukaani.org/xz/"
+DESCRIPTION = "XZ Utils is free general-purpose data compression software with a high compression ratio. XZ Utils were written for POSIX-like systems, but also work on some not-so-POSIX systems. XZ Utils are the successor to LZMA Utils."
SECTION = "base"
# The source includes bits of PD, GPLv2, GPLv3, LGPLv2.1+, but the only file
diff --git a/poky/meta/recipes-extended/zip/zip_3.0.bb b/poky/meta/recipes-extended/zip/zip_3.0.bb
index 97e5e5753..18b5d8648 100644
--- a/poky/meta/recipes-extended/zip/zip_3.0.bb
+++ b/poky/meta/recipes-extended/zip/zip_3.0.bb
@@ -1,5 +1,6 @@
SUMMARY = "Compressor/archiver for creating and modifying .zip files"
HOMEPAGE = "http://www.info-zip.org"
+DESCRIPTION = "Info-ZIP's purpose is to provide free, portable, high-quality versions of the Zip and UnZip compressor-archiver utilities that are compatible with the DOS-based PKZIP by PKWARE, Inc."
SECTION = "console/utils"
LICENSE = "BSD-3-Clause"
diff --git a/poky/meta/recipes-extended/zstd/zstd/0001-Makefile-sort-all-wildcard-file-list-expansions.patch b/poky/meta/recipes-extended/zstd/zstd/0001-Makefile-sort-all-wildcard-file-list-expansions.patch
index 178124a2e..b5ffb95b7 100644
--- a/poky/meta/recipes-extended/zstd/zstd/0001-Makefile-sort-all-wildcard-file-list-expansions.patch
+++ b/poky/meta/recipes-extended/zstd/zstd/0001-Makefile-sort-all-wildcard-file-list-expansions.patch
@@ -1,4 +1,4 @@
-From 8d01b0753162681dcdbb7cf56f1e393c261e3eb0 Mon Sep 17 00:00:00 2001
+From 986c7917aef632745cb3388a86a2f62347d5a0a5 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Wed, 23 Dec 2020 19:14:32 +0100
Subject: [PATCH] Makefile: sort all wildcard file list expansions
@@ -8,6 +8,7 @@ reproducible builds.
Upstream-Status: Pending
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
---
programs/Makefile | 10 +++++-----
tests/Makefile | 4 ++--
@@ -15,10 +16,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
3 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/programs/Makefile b/programs/Makefile
-index 8641d0ee..26fee45f 100644
+index 936f3c80..b8200fae 100644
--- a/programs/Makefile
+++ b/programs/Makefile
-@@ -72,11 +72,11 @@ ZSTDLEGACY_DIR := $(ZSTDDIR)/legacy
+@@ -74,11 +74,11 @@ ZSTDLEGACY_DIR := $(ZSTDDIR)/legacy
vpath %.c $(ZSTDLIB_COMMON) $(ZSTDLIB_COMPRESS) $(ZSTDLIB_DECOMPRESS) $(ZDICT_DIR) $(ZSTDLEGACY_DIR)
@@ -34,17 +35,17 @@ index 8641d0ee..26fee45f 100644
ZSTD_LEGACY_SUPPORT ?= 5
ZSTDLEGACY_SRC :=
-@@ -91,7 +91,7 @@ ZSTDLIB_FULL_SRC = $(sort $(ZSTDLIB_CORE_SRC) $(ZSTDLEGACY_SRC) $(ZDICT_SRC))
- ZSTDLIB_LOCAL_SRC := $(notdir $(ZSTDLIB_FULL_SRC))
+@@ -93,7 +93,7 @@ ZSTDLIB_FULL_SRC = $(sort $(ZSTDLIB_CORE_SRC) $(ZSTDLEGACY_SRC) $(ZDICT_SRC))
+ ZSTDLIB_LOCAL_SRC = $(notdir $(ZSTDLIB_FULL_SRC))
ZSTDLIB_LOCAL_OBJ := $(ZSTDLIB_LOCAL_SRC:.c=.o)
-ZSTD_CLI_SRC := $(wildcard *.c)
+ZSTD_CLI_SRC := $(sort $(wildcard *.c))
ZSTD_CLI_OBJ := $(ZSTD_CLI_SRC:.c=.o)
- ZSTD_ALL_SRC := $(ZSTDLIB_LOCAL_SRC) $(ZSTD_CLI_SRC)
+ ZSTD_ALL_SRC = $(ZSTDLIB_LOCAL_SRC) $(ZSTD_CLI_SRC)
diff --git a/tests/Makefile b/tests/Makefile
-index 42bc353c..5f5654f0 100644
+index f0605057..74a90b0f 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -49,7 +49,7 @@ ZSTD_FILES := $(ZSTDDECOMP_FILES) $(ZSTDCOMMON_FILES) $(ZSTDCOMP_FILES)
@@ -56,7 +57,7 @@ index 42bc353c..5f5654f0 100644
ZSTD_OBJ1 := $(subst $(ZSTDDIR)/common/,zstdm_,$(ZSTD_F1))
ZSTD_OBJ2 := $(subst $(ZSTDDIR)/compress/,zstdc_,$(ZSTD_OBJ1))
ZSTD_OBJ3 := $(subst $(ZSTDDIR)/decompress/,zstdd_,$(ZSTD_OBJ2))
-@@ -212,7 +212,7 @@ bigdict: $(ZSTDMT_OBJECTS) $(PRGDIR)/datagen.c bigdict.c
+@@ -211,7 +211,7 @@ bigdict: $(ZSTDMT_OBJECTS) $(PRGDIR)/datagen.c bigdict.c
invalidDictionaries : $(ZSTD_OBJECTS) invalidDictionaries.c
legacy : CPPFLAGS += -I$(ZSTDDIR)/legacy -DZSTD_LEGACY_SUPPORT=4
@@ -66,7 +67,7 @@ index 42bc353c..5f5654f0 100644
decodecorpus : LDLIBS += -lm
decodecorpus : $(filter-out zstdc_zstd_compress.o, $(ZSTD_OBJECTS)) $(ZDICT_FILES) $(PRGDIR)/util.c $(PRGDIR)/timefn.c decodecorpus.c
diff --git a/tests/fuzz/Makefile b/tests/fuzz/Makefile
-index 36232a8c..574fe877 100644
+index f3a561de..68a29ef0 100644
--- a/tests/fuzz/Makefile
+++ b/tests/fuzz/Makefile
@@ -58,7 +58,7 @@ FUZZ_SRC := \
diff --git a/poky/meta/recipes-extended/zstd/zstd_1.4.8.bb b/poky/meta/recipes-extended/zstd/zstd_1.4.9.bb
index 10a6334cb..b86fdf8b2 100644
--- a/poky/meta/recipes-extended/zstd/zstd_1.4.8.bb
+++ b/poky/meta/recipes-extended/zstd/zstd_1.4.9.bb
@@ -13,7 +13,7 @@ SRC_URI = "git://github.com/facebook/zstd.git;branch=release \
file://0001-Makefile-sort-all-wildcard-file-list-expansions.patch \
"
-SRCREV = "97a3da1df009d4dc67251de0c4b1c9d7fe286fc1"
+SRCREV = "e4558ffd1dc49399faf4ee5d85abed4386b4dcf5"
UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-gnome/epiphany/epiphany_3.38.2.bb b/poky/meta/recipes-gnome/epiphany/epiphany_3.38.2.bb
index 7fedc43a9..04f340f13 100644
--- a/poky/meta/recipes-gnome/epiphany/epiphany_3.38.2.bb
+++ b/poky/meta/recipes-gnome/epiphany/epiphany_3.38.2.bb
@@ -21,5 +21,8 @@ SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}
"
SRC_URI[archive.sha256sum] = "8b05f2bcc1e80ecf4a10f6f01b3285087eb4cbdf5741dffb8c0355715ef5116d"
+# Developer mode enables debugging
+PACKAGECONFIG[developer-mode] = "-Ddeveloper_mode=true,-Ddeveloper_mode=false"
+
FILES_${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers ${datadir}/metainfo"
RDEPENDS_${PN} = "iso-codes adwaita-icon-theme gsettings-desktop-schemas"
diff --git a/poky/meta/recipes-gnome/gcr/gcr_3.38.1.bb b/poky/meta/recipes-gnome/gcr/gcr_3.38.1.bb
index fe80439b0..563087a36 100644
--- a/poky/meta/recipes-gnome/gcr/gcr_3.38.1.bb
+++ b/poky/meta/recipes-gnome/gcr/gcr_3.38.1.bb
@@ -8,7 +8,7 @@ BUGTRACKER = "https://gitlab.gnome.org/GNOME/gcr/issues"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605"
-DEPENDS = "gtk+3 p11-kit glib-2.0 libgcrypt gnupg-native \
+DEPENDS = "p11-kit glib-2.0 libgcrypt gnupg-native \
${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'libxslt-native', '', d)}"
CACHED_CONFIGUREVARS += "ac_cv_path_GPG='gpg2'"
@@ -16,11 +16,12 @@ CACHED_CONFIGUREVARS += "ac_cv_path_GPG='gpg2'"
GNOMEBASEBUILDCLASS = "meson"
GTKDOC_MESON_OPTION = "gtk_doc"
inherit gnomebase gtk-icon-cache gtk-doc features_check upstream-version-is-even vala gobject-introspection gettext mime mime-xdg
-# depends on gtk+3, but also x11 through gtk+-x11
-REQUIRED_DISTRO_FEATURES = "x11"
SRC_URI[archive.sha256sum] = "17fcaf9c4a93a65fb1c72b82643bb102c13344084687d5886ea66313868d9ec9"
+PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk', '', d)}"
+PACKAGECONFIG[gtk] = "-Dgtk=true,-Dgtk=false,gtk+3"
+
FILES_${PN} += " \
${datadir}/dbus-1 \
${datadir}/gcr-3 \
diff --git a/poky/meta/recipes-gnome/libhandy/libhandy/determinism.patch b/poky/meta/recipes-gnome/libhandy/libhandy/determinism.patch
deleted file mode 100644
index 7c4177f5f..000000000
--- a/poky/meta/recipes-gnome/libhandy/libhandy/determinism.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-hdy-enums*.c.in: Fix reproducibility issue
-
-When full filenames are used in generated sources it makes the resulting
-debug packages non-reproducible. Best practise is to use basename in
-comments instead.
-
-Signed-off-by: Richard Purdie richard.purdie@linuxfoundation.org
-Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/libhandy/-/merge_requests/734]
-
-Index: a/src/hdy-enums-private.c.in
-===================================================================
---- a/src/hdy-enums-private.c.in
-+++ b/src/hdy-enums-private.c.in
-@@ -7,7 +7,7 @@
- /*** END file-header ***/
-
- /*** BEGIN file-production ***/
--/* enumerations from "@filename@" */
-+/* enumerations from "@basename@" */
- /*** END file-production ***/
-
- /*** BEGIN value-header ***/
-Index: a/src/hdy-enums.c.in
-===================================================================
---- a/src/hdy-enums.c.in
-+++ b/src/hdy-enums.c.in
-@@ -13,7 +13,7 @@
- /*** END file-header ***/
-
- /*** BEGIN file-production ***/
--/* enumerations from "@filename@" */
-+/* enumerations from "@basename@" */
- /*** END file-production ***/
-
- /*** BEGIN value-header ***/
diff --git a/poky/meta/recipes-gnome/libhandy/libhandy_1.0.3.bb b/poky/meta/recipes-gnome/libhandy/libhandy_1.2.0.bb
index a53a1388f..1e37feb20 100644
--- a/poky/meta/recipes-gnome/libhandy/libhandy_1.0.3.bb
+++ b/poky/meta/recipes-gnome/libhandy/libhandy_1.2.0.bb
@@ -9,9 +9,8 @@ BUGTRACKER = "https://gitlab.gnome.org/GNOME/libhandy/-/issues"
LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
-SRC_URI = "git://gitlab.gnome.org/GNOME/libhandy.git;protocol=https;branch=libhandy-1-0 \
- file://determinism.patch"
-SRCREV = "7126d2e8da9dcdeb5751e60ff6a74930804f9637"
+SRC_URI = "git://gitlab.gnome.org/GNOME/libhandy.git;protocol=https"
+SRCREV = "7b38a860ffcec6c2ad28153358cc3d037ddb618f"
S = "${WORKDIR}/git"
GIR_MESON_ENABLE_FLAG = 'enabled'
diff --git a/poky/meta/recipes-graphics/images/core-image-weston.bb b/poky/meta/recipes-graphics/images/core-image-weston.bb
index 8d88e3bc0..e82e4fbb3 100644
--- a/poky/meta/recipes-graphics/images/core-image-weston.bb
+++ b/poky/meta/recipes-graphics/images/core-image-weston.bb
@@ -1,14 +1,12 @@
SUMMARY = "A very basic Wayland image with a terminal"
-IMAGE_FEATURES += "splash package-management ssh-server-dropbear hwcodecs"
+IMAGE_FEATURES += "splash package-management ssh-server-dropbear hwcodecs weston"
LICENSE = "MIT"
-inherit core-image features_check
+inherit core-image
-REQUIRED_DISTRO_FEATURES = "wayland"
-
-CORE_IMAGE_BASE_INSTALL += "weston weston-init weston-examples wayland-utils gtk+3-demo clutter-1.0-examples"
+CORE_IMAGE_BASE_INSTALL += "gtk+3-demo clutter-1.0-examples"
CORE_IMAGE_BASE_INSTALL += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'weston-xwayland matchbox-terminal', '', d)}"
QB_MEM = "-m 512"
diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb
index 872592fda..54556abb2 100644
--- a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb
+++ b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb
@@ -65,6 +65,7 @@ PACKAGECONFIG[wayland] = "--enable-video-wayland,--disable-video-wayland,wayl
PACKAGECONFIG[x11] = "--enable-video-x11,--disable-video-x11,virtual/libx11 libxext libxrandr libxrender"
EXTRA_AUTORECONF += "--include=acinclude --exclude=autoheader"
+CFLAGS_append_class-native = " -DNO_SHARED_MEMORY"
do_configure_prepend() {
# Remove old libtool macros.
diff --git a/poky/meta/recipes-graphics/mesa/files/0001-anv-fix-a-build-race-between-generating-a-header-and.patch b/poky/meta/recipes-graphics/mesa/files/0001-anv-fix-a-build-race-between-generating-a-header-and.patch
deleted file mode 100644
index a61e7b216..000000000
--- a/poky/meta/recipes-graphics/mesa/files/0001-anv-fix-a-build-race-between-generating-a-header-and.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From f148d4f1b5b13288b254ead07f1d008d997e2342 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Mon, 2 Nov 2020 23:23:53 +0100
-Subject: [PATCH] anv: fix a build race between generating a header and using
- it
-
-anv_batch_chain.c includes genX_bits.h but doesn't ensure it gets
-generated first. This causes build failures, as observed here:
-https://autobuilder.yoctoproject.org/typhoon/#/builders/86/builds/1501/steps/8/logs/step2d
-
-Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7412]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- src/intel/vulkan/meson.build | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/intel/vulkan/meson.build b/src/intel/vulkan/meson.build
-index 36e1689314e..b713d8eade3 100644
---- a/src/intel/vulkan/meson.build
-+++ b/src/intel/vulkan/meson.build
-@@ -131,6 +131,7 @@ libanv_files = files(
- anv_deps = [
- dep_libdrm,
- dep_valgrind,
-+ idep_genxml,
- idep_nir_headers,
- idep_vulkan_util_headers,
- ]
---
-2.29.0
-
diff --git a/poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch b/poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch
index 085254323..b6f86743e 100644
--- a/poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch
+++ b/poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch
@@ -1,4 +1,4 @@
-From 0d9ed002eff176b902da266d89829a9b0cb10946 Mon Sep 17 00:00:00 2001
+From 38e984073e4c23b6278d1a2ff21e894fda7b93c5 Mon Sep 17 00:00:00 2001
From: Alistair Francis <alistair@alistair23.me>
Date: Thu, 14 Nov 2019 13:04:49 -0800
Subject: [PATCH] meson.build: check for all linux host_os combinations
@@ -20,10 +20,10 @@ Signed-off-by: Alistair Francis <alistair@alistair23.me>
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/meson.build b/meson.build
-index 898d025..09e3759 100644
+index 932eb13..efc6171 100644
--- a/meson.build
+++ b/meson.build
-@@ -124,7 +124,7 @@ with_any_opengl = with_opengl or with_gles1 or with_gles2
+@@ -153,7 +153,7 @@ with_any_opengl = with_opengl or with_gles1 or with_gles2
# Only build shared_glapi if at least one OpenGL API is enabled
with_shared_glapi = with_shared_glapi and with_any_opengl
@@ -32,12 +32,12 @@ index 898d025..09e3759 100644
dri_drivers = get_option('dri-drivers')
if dri_drivers.contains('auto')
-@@ -884,7 +884,7 @@ if cc.compiles('__uint128_t foo(void) { return 0; }',
+@@ -970,7 +970,7 @@ if cc.compiles('__uint128_t foo(void) { return 0; }',
endif
# TODO: this is very incomplete
--if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd'].contains(host_machine.system())
-+if ['cygwin', 'gnu', 'gnu/kfreebsd'].contains(host_machine.system()) or host_machine.system().startswith('linux')
+-if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku'].contains(host_machine.system())
++if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku'].contains(host_machine.system()) or host_machine.system().startswith('linux')
pre_args += '-D_GNU_SOURCE'
elif host_machine.system() == 'sunos'
pre_args += '-D__EXTENSIONS__'
diff --git a/poky/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch b/poky/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch
index 89c0d150f..df2346d33 100644
--- a/poky/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch
+++ b/poky/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch
@@ -1,4 +1,4 @@
-From ce57ce220d9c377beabf4914f33c43118f672ffe Mon Sep 17 00:00:00 2001
+From 624f430dd0a91344146a2b8d49a69f23560c2fa2 Mon Sep 17 00:00:00 2001
From: Alistair Francis <alistair@alistair23.me>
Date: Thu, 14 Nov 2019 13:08:31 -0800
Subject: [PATCH] meson.build: make TLS ELF optional
@@ -30,23 +30,23 @@ Signed-off-by: Alistair Francis <alistair@alistair23.me>
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
-index c5136ea..185270d 100644
+index efc6171..8450968 100644
--- a/meson.build
+++ b/meson.build
-@@ -424,7 +424,7 @@ endif
+@@ -448,7 +448,7 @@ endif
# Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS.
use_elf_tls = false
--if not ['windows', 'freebsd', 'openbsd'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29)
-+if not ['windows', 'freebsd', 'openbsd'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29) and get_option('elf-tls')
+-if not ['windows', 'freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29)
++if not ['windows', 'freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29) and get_option('elf-tls')
pre_args += '-DUSE_ELF_TLS'
use_elf_tls = true
endif
diff --git a/meson_options.txt b/meson_options.txt
-index 2d39d13..72006eb 100644
+index fc73f6e..d7482c0 100644
--- a/meson_options.txt
+++ b/meson_options.txt
-@@ -368,6 +368,12 @@ option(
+@@ -420,6 +420,12 @@ option(
value : true,
description : 'Enable direct rendering in GLX and EGL for DRI',
)
diff --git a/poky/meta/recipes-graphics/mesa/mesa-gl_20.3.4.bb b/poky/meta/recipes-graphics/mesa/mesa-gl_21.0.1.bb
index e50782be1..dff79f0be 100644
--- a/poky/meta/recipes-graphics/mesa/mesa-gl_20.3.4.bb
+++ b/poky/meta/recipes-graphics/mesa/mesa-gl_21.0.1.bb
@@ -8,8 +8,9 @@ S = "${WORKDIR}/mesa-${PV}"
# At least one DRI rendering engine is required to build mesa.
# When no X11 is available, use osmesa for the rendering engine.
-PACKAGECONFIG ??= "opengl dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa', d)}"
-PACKAGECONFIG_class-target = "opengl dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa', d)}"
+PACKAGECONFIG ??= "opengl dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa gallium', d)}"
+PACKAGECONFIG_class-target = "opengl dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa gallium', d)}"
-# When NOT using X11, we need to make sure we have swrast available.
-DRIDRIVERS_append = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', ',swrast', d)}"
+# 21.0.0 version fails to build when any driver is enabled in DRIDRIVERS
+# ./mesa-21.0.0/meson.build:519:4: ERROR: Problem encountered: building dri drivers require at least one windowing system
+DRIDRIVERS ?= ""
diff --git a/poky/meta/recipes-graphics/mesa/mesa.inc b/poky/meta/recipes-graphics/mesa/mesa.inc
index 9f8ec112c..caf3c62ad 100644
--- a/poky/meta/recipes-graphics/mesa/mesa.inc
+++ b/poky/meta/recipes-graphics/mesa/mesa.inc
@@ -19,10 +19,9 @@ SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \
file://0002-meson.build-make-TLS-ELF-optional.patch \
file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \
file://0001-futex.h-Define-__NR_futex-if-it-does-not-exist.patch \
- file://0001-anv-fix-a-build-race-between-generating-a-header-and.patch \
"
-SRC_URI[sha256sum] = "dc21a987ec1ff45b278fe4b1419b1719f1968debbb80221480e44180849b4084"
+SRC_URI[sha256sum] = "379fc984459394f2ab2d84049efdc3a659869dc1328ce72ef0598506611712bb"
UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)"
@@ -88,8 +87,8 @@ PACKAGECONFIG_class-target ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland v
${@bb.utils.contains('DISTRO_FEATURES', 'x11 vulkan', 'dri3', '', d)} \
elf-tls \
"
-PACKAGECONFIG_class-native ?= "gbm dri egl opengl elf-tls x11"
-PACKAGECONFIG_class-nativesdk ?= "gbm dri egl opengl elf-tls x11"
+PACKAGECONFIG_class-native ?= "gbm gallium egl opengl elf-tls x11"
+PACKAGECONFIG_class-nativesdk ?= "gbm gallium egl opengl elf-tls x11"
PACKAGECONFIG_remove_libc-musl = "elf-tls"
@@ -103,10 +102,6 @@ PACKAGECONFIG[elf-tls] = "-Delf-tls=true, -Delf-tls=false"
PACKAGECONFIG[xvmc] = "-Dgallium-xvmc=enabled,-Dgallium-xvmc=disabled,libxvmc"
PACKAGECONFIG[wayland] = ",,wayland-native wayland libdrm wayland-protocols"
-DRIDRIVERS_class-native = "swrast"
-DRIDRIVERS_class-nativesdk = "swrast"
-DRIDRIVERS_append_x86_class-target = ",r100,r200,nouveau,i965,i915"
-DRIDRIVERS_append_x86-64_class-target = ",r100,r200,nouveau,i965,i915"
# "dri" requires "opengl"
PACKAGECONFIG[dri] = "-Ddri-drivers=${@strip_comma('${DRIDRIVERS}')}, -Ddri-drivers='', xorgproto libdrm"
PACKAGECONFIG[dri3] = "-Ddri3=enabled, -Ddri3=disabled, xorgproto libxshmfence"
@@ -154,7 +149,7 @@ GALLIUMDRIVERS_append = "${@bb.utils.contains('PACKAGECONFIG', 'gallium-llvm', '
GALLIUMDRIVERS_append = "${@bb.utils.contains('PACKAGECONFIG', 'r600', ',r600', '', d)}"
GALLIUMDRIVERS_append = "${@bb.utils.contains('PACKAGECONFIG', 'virgl', ',virgl', '', d)}"
-PACKAGECONFIG[gallium] = "-Dgallium-drivers=${@strip_comma('${GALLIUMDRIVERS}')}, -Dgallium-drivers=''"
+PACKAGECONFIG[gallium] = "-Dgallium-drivers=${@strip_comma('${GALLIUMDRIVERS}')}, -Dgallium-drivers='', libdrm"
PACKAGECONFIG[gallium-llvm] = "-Dllvm=enabled -Dshared-llvm=enabled, -Dllvm=disabled, llvm${MESA_LLVM_RELEASE} llvm-native \
elfutils"
PACKAGECONFIG[xa] = "-Dgallium-xa=enabled, -Dgallium-xa=disabled"
@@ -168,8 +163,7 @@ GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'lima', ',lima', '
PACKAGECONFIG[panfrost] = ""
GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'panfrost', ',panfrost', '', d)}"
-OSMESA = "${@bb.utils.contains('PACKAGECONFIG', 'gallium', 'gallium', 'classic', d)}"
-PACKAGECONFIG[osmesa] = "-Dosmesa=${OSMESA},-Dosmesa=none"
+PACKAGECONFIG[osmesa] = "-Dosmesa=true,-Dosmesa=false"
PACKAGECONFIG[unwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind"
diff --git a/poky/meta/recipes-graphics/mesa/mesa_20.3.4.bb b/poky/meta/recipes-graphics/mesa/mesa_20.3.4.bb
deleted file mode 100644
index 96e8aa38d..000000000
--- a/poky/meta/recipes-graphics/mesa/mesa_20.3.4.bb
+++ /dev/null
@@ -1,2 +0,0 @@
-require ${BPN}.inc
-
diff --git a/poky/meta/recipes-graphics/mesa/mesa_21.0.1.bb b/poky/meta/recipes-graphics/mesa/mesa_21.0.1.bb
new file mode 100644
index 000000000..8c584d8e9
--- /dev/null
+++ b/poky/meta/recipes-graphics/mesa/mesa_21.0.1.bb
@@ -0,0 +1,4 @@
+require ${BPN}.inc
+
+DRIDRIVERS_append_x86_class-target = ",r100,r200,nouveau,i965,i915"
+DRIDRIVERS_append_x86-64_class-target = ",r100,r200,nouveau,i965,i915"
diff --git a/poky/meta/recipes-graphics/packagegroups/packagegroup-core-weston.bb b/poky/meta/recipes-graphics/packagegroups/packagegroup-core-weston.bb
new file mode 100644
index 000000000..7dcfd6733
--- /dev/null
+++ b/poky/meta/recipes-graphics/packagegroups/packagegroup-core-weston.bb
@@ -0,0 +1,15 @@
+SUMMARY = "Basic Weston compositor setup"
+DESCRIPTION = "Packages required to set up a basic working Weston session"
+PR = "r1"
+
+inherit packagegroup features_check
+
+# weston-init requires pam enabled if started via systemd
+REQUIRED_DISTRO_FEATURES = "wayland ${@oe.utils.conditional('VIRTUAL-RUNTIME_init_manager', 'systemd', 'pam', '', d)}"
+
+RDEPENDS_${PN} = "\
+ weston \
+ weston-init \
+ weston-examples \
+ wayland-utils \
+ "
diff --git a/poky/meta/recipes-graphics/shaderc/files/0003-cmake-add-option-to-skip-build-the-examples.patch b/poky/meta/recipes-graphics/shaderc/files/0003-cmake-add-option-to-skip-build-the-examples.patch
deleted file mode 100644
index 43f9edc03..000000000
--- a/poky/meta/recipes-graphics/shaderc/files/0003-cmake-add-option-to-skip-build-the-examples.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From f1064e4b6cfc5955bc7e2b036f2d05540da9f09b Mon Sep 17 00:00:00 2001
-From: Jose Quaresma <quaresma.jose@gmail.com>
-Date: Sat, 13 Feb 2021 00:45:56 +0000
-Subject: [PATCH 3/3] cmake: add option to skip build the examples
-
-Upstream-Status: Backport [https://github.com/google/shaderc/commit/8d081127ee28ff5df8123c994c00bc66a57e9e9c]
-
-Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
----
- CMakeLists.txt | 14 +++++++++++++-
- 1 file changed, 13 insertions(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index b358f6b..d8a5405 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -40,6 +40,16 @@ else()
- message(STATUS "Configuring Shaderc to avoid building tests.")
- endif()
-
-+option(SHADERC_SKIP_EXAMPLES "Skip building examples" ${SHADERC_SKIP_EXAMPLES})
-+if(NOT ${SHADERC_SKIP_EXAMPLES})
-+ set(SHADERC_ENABLE_EXAMPLES ON)
-+endif()
-+if(${SHADERC_ENABLE_EXAMPLES})
-+ message(STATUS "Configuring Shaderc to build examples.")
-+else()
-+ message(STATUS "Configuring Shaderc to avoid building examples.")
-+endif()
-+
- option(SHADERC_ENABLE_WERROR_COMPILE "Enable passing -Werror to compiler, if available" ON)
- option(BUILD_EXTERNAL "Build external dependencies in /third_party" ON)
-
-@@ -114,7 +124,9 @@ endif()
- add_subdirectory(libshaderc_util)
- add_subdirectory(libshaderc)
- add_subdirectory(glslc)
--add_subdirectory(examples)
-+if(${SHADERC_ENABLE_EXAMPLES})
-+ add_subdirectory(examples)
-+endif()
-
- add_custom_target(build-version
- ${PYTHON_EXECUTABLE}
---
-2.30.1
-
diff --git a/poky/meta/recipes-graphics/shaderc/shaderc_2020.4.bb b/poky/meta/recipes-graphics/shaderc/shaderc_2020.5.bb
index 73aa0ee96..ce51aab03 100644
--- a/poky/meta/recipes-graphics/shaderc/shaderc_2020.4.bb
+++ b/poky/meta/recipes-graphics/shaderc/shaderc_2020.5.bb
@@ -6,11 +6,10 @@ HOMEPAGE = "https://github.com/google/shaderc"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
-SRCREV = "0dbd899941a43ffd55df527d65128b3b66e75c9c"
+SRCREV = "f3e39a7eed682faececb73f0b85717f2f44ee9ba"
SRC_URI = "git://github.com/google/shaderc.git;protocol=https;branch=main \
file://0001-cmake-disable-building-external-dependencies.patch \
file://0002-libshaderc_util-fix-glslang-header-file-location.patch \
- file://0003-cmake-add-option-to-skip-build-the-examples.patch \
"
UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>\d+(\.\d+)+)$"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-graphics/spir/files/0001-Respect-CMAKE_INSTALL_LIBDIR-in-installed-CMake-file.patch b/poky/meta/recipes-graphics/spir/files/0001-Respect-CMAKE_INSTALL_LIBDIR-in-installed-CMake-file.patch
deleted file mode 100644
index 5d37da8fe..000000000
--- a/poky/meta/recipes-graphics/spir/files/0001-Respect-CMAKE_INSTALL_LIBDIR-in-installed-CMake-file.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From caf59c46ea5dc49e4dbf756c642b03e52c1b5468 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 20 Dec 2019 07:02:24 -0800
-Subject: [PATCH] Respect CMAKE_INSTALL_LIBDIR in installed CMake files
-
-Upstream-Status: Submitted [https://github.com/google/effcee/pull/36]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- CMakeLists.txt | 1 +
- effcee/CMakeLists.txt | 4 ++--
- 2 files changed, 3 insertions(+), 2 deletions(-)
-
---- a/external/effcee/CMakeLists.txt
-+++ b/external/effcee/CMakeLists.txt
-@@ -27,6 +27,7 @@ endif()
-
- include(cmake/setup_build.cmake)
- include(cmake/utils.cmake)
-+include(GNUInstallDirs)
-
- add_subdirectory(third_party)
- add_subdirectory(effcee)
---- a/external/effcee/effcee/CMakeLists.txt
-+++ b/external/effcee/effcee/CMakeLists.txt
-@@ -14,8 +14,8 @@ install(
- DESTINATION
- include/effcee)
- install(TARGETS effcee
-- LIBRARY DESTINATION lib
-- ARCHIVE DESTINATION lib)
-+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
-
- if(EFFCEE_BUILD_TESTING)
- add_executable(effcee-test
diff --git a/poky/meta/recipes-graphics/spir/files/0001-fix-strncpy-bound-error.patch b/poky/meta/recipes-graphics/spir/files/0001-fix-strncpy-bound-error.patch
new file mode 100644
index 000000000..bc59faa37
--- /dev/null
+++ b/poky/meta/recipes-graphics/spir/files/0001-fix-strncpy-bound-error.patch
@@ -0,0 +1,30 @@
+From 1ba007583b83468494c4146bcb7267d863de6a7b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 26 Feb 2021 23:54:10 -0800
+Subject: [PATCH] fix strncpy bound error
+
+This patch fixes the following error while using gcc 11
+error: 'char* __builtin_strncpy(char*, const char*, long unsigned int)' specified bound depends on the length of the source argument [-Werror=stringop-overflow=]
+
+Upstream-Status: Submitted [https://github.com/KhronosGroup/SPIRV-Tools/pull/4151]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ source/diagnostic.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/source/diagnostic.cpp b/source/diagnostic.cpp
+index edc27c8fd..77c29d70c 100644
+--- a/source/diagnostic.cpp
++++ b/source/diagnostic.cpp
+@@ -37,7 +37,7 @@ spv_diagnostic spvDiagnosticCreate(const spv_position position,
+ diagnostic->position = *position;
+ diagnostic->isTextSource = false;
+ memset(diagnostic->error, 0, length);
+- strncpy(diagnostic->error, message, length);
++ memcpy(diagnostic->error, message, length);
+ return diagnostic;
+ }
+
+--
+2.30.1
+
diff --git a/poky/meta/recipes-graphics/spir/spirv-headers_1.5.4.bb b/poky/meta/recipes-graphics/spir/spirv-headers_1.5.4.bb
index 14723f951..7a43af5e6 100644
--- a/poky/meta/recipes-graphics/spir/spirv-headers_1.5.4.bb
+++ b/poky/meta/recipes-graphics/spir/spirv-headers_1.5.4.bb
@@ -7,10 +7,11 @@ HOMEPAGE = "https://www.khronos.org/registry/spir-v"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=c938b85bceb8fb26c1a807f28a52ae2d"
-SRCREV = "f027d53ded7e230e008d37c8b47ede7cd308e19d"
+SRCREV = "bcf55210f13a4fa3c3d0963b509ff1070e434c79"
SRC_URI = "git://github.com/KhronosGroup/SPIRV-Headers;protocol=https"
UPSTREAM_CHECK_GITTAGREGEX = "^(?P<pver>\d+(\.\d+)+)$"
S = "${WORKDIR}/git"
+PV .= "+git${SRCPV}"
inherit cmake
diff --git a/poky/meta/recipes-graphics/spir/spirv-tools_2020.6.bb b/poky/meta/recipes-graphics/spir/spirv-tools_2020.7.bb
index f1fe40096..8be698533 100644
--- a/poky/meta/recipes-graphics/spir/spirv-tools_2020.6.bb
+++ b/poky/meta/recipes-graphics/spir/spirv-tools_2020.7.bb
@@ -7,12 +7,14 @@ SECTION = "graphics"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
-SRCREV = "b27b1afd12d05bf238ac7368bb49de73cd620a8e"
-SRC_URI = "git://github.com/KhronosGroup/SPIRV-Tools.git"
+SRCREV = "2573fd781b5408cd7fe5755a78b60d767a748ff9"
+SRC_URI = "git://github.com/KhronosGroup/SPIRV-Tools.git \
+ file://0001-fix-strncpy-bound-error.patch \
+ "
UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>\d+(\.\d+)+)$"
S = "${WORKDIR}/git"
-inherit cmake
+inherit cmake python3native
DEPENDS = "spirv-headers"
diff --git a/poky/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb b/poky/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb
index 50c79b3bf..5226e8426 100644
--- a/poky/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb
+++ b/poky/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb
@@ -1,4 +1,5 @@
SUMMARY = "The Bitstream Vera fonts - TTF Edition"
+HOMEPAGE = "https://www.gnome.org/fonts/"
DESCRIPTION = "The Bitstream Vera fonts include four monospace and sans \
faces (normal, oblique, bold, bold oblique) and two serif faces (normal \
and bold). In addition Fontconfig/Xft2 can artificially oblique the \
diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.162.0.bb b/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.170.0.bb
index 19ae67cdd..4c9c94f3d 100644
--- a/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.162.0.bb
+++ b/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.170.0.bb
@@ -11,7 +11,7 @@ LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRC_URI = "git://github.com/KhronosGroup/Vulkan-Headers.git;branch=master"
-SRCREV = "87aaa16d4c8e1ac70f8f04acdcd46eed4bd77209"
+SRCREV = "1d99b835ec3cd5a7fb2f2a2dd9a615ee2d1f0101"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-loader/0001-Rename-LIB_SUFFIX-to-VULKAN_LIB_SUFFIX.patch b/poky/meta/recipes-graphics/vulkan/vulkan-loader/0001-Rename-LIB_SUFFIX-to-VULKAN_LIB_SUFFIX.patch
deleted file mode 100644
index 26b1a40f2..000000000
--- a/poky/meta/recipes-graphics/vulkan/vulkan-loader/0001-Rename-LIB_SUFFIX-to-VULKAN_LIB_SUFFIX.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 5ae24ece75f2caa69216da7075334711642f5588 Mon Sep 17 00:00:00 2001
-From: Michel Zou <xantares09@hotmail.com>
-Date: Wed, 16 Dec 2020 15:03:23 +0100
-Subject: [PATCH] Rename LIB_SUFFIX to VULKAN_LIB_SUFFIX
-
-Closes #527
-
-Upstream-Status: Backport [https://github.com/KhronosGroup/Vulkan-Loader/commit/66a23ac8c566299343668f094de50798a5f4a0e4]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- loader/CMakeLists.txt | 2 +-
- loader/vulkan.pc.in | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/loader/CMakeLists.txt b/loader/CMakeLists.txt
-index 659511855..ba9f460f1 100644
---- a/loader/CMakeLists.txt
-+++ b/loader/CMakeLists.txt
-@@ -327,7 +327,7 @@ if(PKG_CONFIG_FOUND)
- set(PRIVATE_LIBS "${PRIVATE_LIBS} -l${LIB}")
- endforeach()
- if(WIN32)
-- set(LIB_SUFFIX "-1")
-+ set(VULKAN_LIB_SUFFIX "-1")
- endif ()
- configure_file("vulkan.pc.in" "vulkan.pc" @ONLY)
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/vulkan.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
-diff --git a/loader/vulkan.pc.in b/loader/vulkan.pc.in
-index fc17cb1f3..44049ee34 100644
---- a/loader/vulkan.pc.in
-+++ b/loader/vulkan.pc.in
-@@ -6,7 +6,7 @@ includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
- Name: @CMAKE_PROJECT_NAME@
- Description: Vulkan Loader
- Version: @VK_API_VERSION@
--Libs: -L${libdir} -lvulkan@LIB_SUFFIX@
-+Libs: -L${libdir} -lvulkan@VULKAN_LIB_SUFFIX@
- Libs.private: @PRIVATE_LIBS@
- Cflags: -I${includedir}
-
diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.162.0.bb b/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.170.0.bb
index d39e7af97..6b6ed06db 100644
--- a/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.162.0.bb
+++ b/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.170.0.bb
@@ -10,9 +10,8 @@ SECTION = "libs"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7dbefed23242760aa3475ee42801c5ac"
SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git \
- file://0001-Rename-LIB_SUFFIX-to-VULKAN_LIB_SUFFIX.patch \
"
-SRCREV = "7a313093b5c4af964d50a5a64e73d7df6152ea3f"
+SRCREV = "c5678a03db383fd0dc5bfb8e9a383043bdbcb57b"
S = "${WORKDIR}/git"
@@ -27,6 +26,8 @@ EXTRA_OECMAKE = "\
-DBUILD_TESTS=OFF \
-DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \
-DASSEMBLER_WORKS=FALSE \
+ -DVulkanHeaders_INCLUDE_DIR=${STAGING_INCDIR} \
+ -DVulkanRegistry_DIR=${RECIPE_SYSROOT}/${datadir} \
"
# must choose x11 or wayland or both
diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.2.162.1.bb b/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.2.170.0.bb
index a5c3bbcb1..0c8bcaa08 100644
--- a/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.2.162.1.bb
+++ b/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.2.170.0.bb
@@ -6,8 +6,8 @@ SECTION = "libs"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
-SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;branch=sdk-1.2.162"
-SRCREV = "8f0c2e40d4134f53f82ce48de72c7be92baa6b3d"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;branch=sdk-1.2.170"
+SRCREV = "88ea55de928a08ba5c5f65a93d1e7c8f666fc43f"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-graphics/wayland/libinput/run-ptest b/poky/meta/recipes-graphics/wayland/libinput/run-ptest
index 5a84c568b..d11e6eb25 100644
--- a/poky/meta/recipes-graphics/wayland/libinput/run-ptest
+++ b/poky/meta/recipes-graphics/wayland/libinput/run-ptest
@@ -1,6 +1,6 @@
#!/bin/sh
-/usr/libexec/libinput/libinput-test-suite
+/usr/libexec/libinput/libinput-test-suite -j1
if [ $? -eq 0 ]; then
echo 'PASS: libinput-test-suite'
else
diff --git a/poky/meta/recipes-graphics/wayland/weston-init.bb b/poky/meta/recipes-graphics/wayland/weston-init.bb
index 65d7b81dc..6b78e6722 100644
--- a/poky/meta/recipes-graphics/wayland/weston-init.bb
+++ b/poky/meta/recipes-graphics/wayland/weston-init.bb
@@ -30,6 +30,7 @@ DEFAULTBACKEND_x86-x32 = "fbdev"
do_install() {
if [ "${VIRTUAL-RUNTIME_init_manager}" != "systemd" ]; then
install -Dm755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/weston
+ sed -i 's#ROOTHOME#${ROOT_HOME}#' ${D}/${sysconfdir}/init.d/weston
fi
install -D -p -m0644 ${WORKDIR}/weston.ini ${D}${sysconfdir}/xdg/weston/weston.ini
install -Dm644 ${WORKDIR}/weston.env ${D}${sysconfdir}/default/weston
diff --git a/poky/meta/recipes-graphics/wayland/weston-init/init b/poky/meta/recipes-graphics/wayland/weston-init/init
index d3e87c6ce..a849f29bc 100644
--- a/poky/meta/recipes-graphics/wayland/weston-init/init
+++ b/poky/meta/recipes-graphics/wayland/weston-init/init
@@ -30,6 +30,7 @@ done
case "$1" in
start)
. /etc/profile
+ export HOME=ROOTHOME
weston-start -- $OPTARGS
;;
diff --git a/poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb b/poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb
index e9f6051b6..f0a223a19 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb
@@ -19,7 +19,7 @@ BBCLASSEXTEND = "native nativesdk"
DEPENDS = "xcb-proto xorgproto libxau libpthread-stubs libxdmcp"
-PACKAGES_DYNAMIC = "^libxcb-.*"
+PACKAGES_DYNAMIC = "^${PN}-.*"
FILES_${PN} = "${libdir}/libxcb.so.*"
@@ -35,5 +35,5 @@ do_install_append () {
}
python populate_packages_prepend () {
- do_split_packages(d, '${libdir}', r'^libxcb-(.*)\.so\..*$', 'libxcb-%s', 'XCB library module for %s', allow_links=True)
+ do_split_packages(d, '${libdir}', r'^libxcb-(.*)\.so\..*$', '${PN}-%s', 'XCB library module for %s', allow_links=True)
}
diff --git a/poky/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb b/poky/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
index 70b2908fd..1d900d85f 100644
--- a/poky/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
+++ b/poky/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
@@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://tools/kgit;beginline=5;endline=9;md5=9c30e971d435e249
DEPENDS = "git-native"
-SRCREV = "73f813024d33432116a122524fd2ae48afc910c7"
+SRCREV = "8f6aaab7f64c6de30d267e31a73f7c3bb30125a9"
PR = "r12"
PV = "0.2+git${SRCPV}"
diff --git a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20210208.bb b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20210208.bb
index 0013e2458..78856cbf6 100644
--- a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20210208.bb
+++ b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20210208.bb
@@ -1,4 +1,5 @@
SUMMARY = "Firmware files for use with Linux kernel"
+HOMEPAGE = "https://www.kernel.org/"
DESCRIPTION = "Linux firmware is a package distributed alongside the Linux kernel \
that contains firmware binary blobs necessary for partial or full functionality \
of certain hardware devices."
@@ -495,6 +496,13 @@ FILES_${PN}-netronome = " \
${nonarch_base_libdir}/firmware/netronome/nic_AMDA0096*.nffw \
${nonarch_base_libdir}/firmware/netronome/nic_AMDA0097*.nffw \
${nonarch_base_libdir}/firmware/netronome/nic_AMDA0099*.nffw \
+ ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0058-0011_2x40.nffw \
+ ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0058-0012_2x40.nffw \
+ ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0078-0011_1x100.nffw \
+ ${nonarch_base_libdir}/firmware/netronome/bpf \
+ ${nonarch_base_libdir}/firmware/netronome/flower \
+ ${nonarch_base_libdir}/firmware/netronome/nic \
+ ${nonarch_base_libdir}/firmware/netronome/nic-sriov \
"
RDEPENDS_${PN}-netronome += "${PN}-netronome-license"
@@ -621,7 +629,9 @@ FILES_${PN}-bcm4329 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4329-sdio.bi
FILES_${PN}-bcm4330 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4330-sdio.*"
FILES_${PN}-bcm4334 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4334-sdio.bin"
FILES_${PN}-bcm4335 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4335-sdio.bin"
-FILES_${PN}-bcm4339 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4339-sdio.bin"
+FILES_${PN}-bcm4339 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4339-sdio.bin \
+ ${nonarch_base_libdir}/firmware/cypress/cyfmac4339-sdio.bin \
+"
FILES_${PN}-bcm43241b0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b0-sdio.bin"
FILES_${PN}-bcm43241b4 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b4-sdio.bin"
FILES_${PN}-bcm43241b5 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b5-sdio.bin"
@@ -630,12 +640,18 @@ FILES_${PN}-bcm43143 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43143.bin \
${nonarch_base_libdir}/firmware/brcm/brcmfmac43143-sdio.bin \
"
FILES_${PN}-bcm43430a0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430a0-sdio.*"
-FILES_${PN}-bcm43455 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43455-sdio.*"
+FILES_${PN}-bcm43455 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43455-sdio.* \
+ ${nonarch_base_libdir}/firmware/cypress/cyfmac43455-sdio.* \
+"
FILES_${PN}-bcm4350c2 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350c2-pcie.bin"
FILES_${PN}-bcm4350 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350-pcie.bin"
-FILES_${PN}-bcm4356 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-sdio.bin"
+FILES_${PN}-bcm4356 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-sdio.bin \
+ ${nonarch_base_libdir}/firmware/cypress/cyfmac4356-sdio.bin \
+"
FILES_${PN}-bcm43569 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43569.bin"
-FILES_${PN}-bcm43570 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43570-pcie.bin"
+FILES_${PN}-bcm43570 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43570-pcie.bin \
+ ${nonarch_base_libdir}/firmware/cypress/cyfmac43570-pcie.bin \
+"
FILES_${PN}-bcm4358 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4358-pcie.bin"
FILES_${PN}-bcm43602 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.bin \
${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.ap.bin \
@@ -706,13 +722,21 @@ LICENSE_${PN}-cypress-license = "Firmware-cypress"
FILES_${PN}-cypress-license = "${nonarch_base_libdir}/firmware/LICENCE.cypress"
FILES_${PN}-bcm-0bb4-0306 = "${nonarch_base_libdir}/firmware/brcm/BCM-0bb4-0306.hcd"
-FILES_${PN}-bcm43340 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43340-sdio.*"
-FILES_${PN}-bcm43362 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43362-sdio.*"
-FILES_${PN}-bcm43430 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.*"
-FILES_${PN}-bcm4354 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4354-sdio.bin"
-FILES_${PN}-bcm4356-pcie = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-pcie.*"
+FILES_${PN}-bcm43340 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43340-sdio.* \
+ ${nonarch_base_libdir}/firmware/cypress/cyfmac43340-sdio.*"
+FILES_${PN}-bcm43362 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43362-sdio.* \
+ ${nonarch_base_libdir}/firmware/cypress/cyfmac43362-sdio.*"
+FILES_${PN}-bcm43430 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.* \
+ ${nonarch_base_libdir}/firmware/cypress/cyfmac43430-sdio.*"
+FILES_${PN}-bcm4354 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4354-sdio.bin \
+ ${nonarch_base_libdir}/firmware/cypress/cyfmac4354-sdio.bin \
+"
+FILES_${PN}-bcm4356-pcie = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-pcie.* \
+ ${nonarch_base_libdir}/firmware/cypress/cyfmac4356-pcie.* \
+"
FILES_${PN}-bcm4373 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4373-sdio.bin \
${nonarch_base_libdir}/firmware/brcm/brcmfmac4373.bin \
+ ${nonarch_base_libdir}/firmware/cypress/cyfmac4373-sdio.bin \
"
LICENSE_${PN}-bcm-0bb4-0306 = "Firmware-cypress"
diff --git a/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc b/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc
index 7ec94024c..175b2d181 100644
--- a/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc
+++ b/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc
@@ -1,4 +1,5 @@
SUMMARY = "Sanitized set of kernel headers for the C library's use"
+HOMEPAGE = "https://www.kernel.org/"
DESCRIPTION = "Designed to maintain an Application Programming Interface (API) stable version of the Linux headers"
SECTION = "devel"
LICENSE = "GPLv2"
diff --git a/poky/meta/recipes-kernel/linux/kernel-devsrc.bb b/poky/meta/recipes-kernel/linux/kernel-devsrc.bb
index dadeade3a..455c83652 100644
--- a/poky/meta/recipes-kernel/linux/kernel-devsrc.bb
+++ b/poky/meta/recipes-kernel/linux/kernel-devsrc.bb
@@ -271,6 +271,7 @@ do_install() {
if [ -e "$kerneldir/build/include/config/auto.conf.cmd" ]; then
sed -i 's/ifneq "$(CC)" ".*-linux-.*gcc.*$/ifneq "$(CC)" "gcc"/' "$kerneldir/build/include/config/auto.conf.cmd"
sed -i 's/ifneq "$(LD)" ".*-linux-.*ld.bfd.*$/ifneq "$(LD)" "ld"/' "$kerneldir/build/include/config/auto.conf.cmd"
+ sed -i 's/ifneq "$(AR)" ".*-linux-.*ar.*$/ifneq "$(AR)" "ar"/' "$kerneldir/build/include/config/auto.conf.cmd"
sed -i 's/ifneq "$(HOSTCXX)" ".*$/ifneq "$(HOSTCXX)" "g++"/' "$kerneldir/build/include/config/auto.conf.cmd"
sed -i 's/ifneq "$(HOSTCC)" ".*$/ifneq "$(HOSTCC)" "gcc"/' "$kerneldir/build/include/config/auto.conf.cmd"
sed -i 's/ifneq "$(CC_VERSION_TEXT)".*\(gcc.*\)"/ifneq "$(CC_VERSION_TEXT)" "\1"/' "$kerneldir/build/include/config/auto.conf.cmd"
diff --git a/poky/meta/recipes-kernel/linux/linux-dummy.bb b/poky/meta/recipes-kernel/linux/linux-dummy.bb
index 95dc85ff2..c56f8990d 100644
--- a/poky/meta/recipes-kernel/linux/linux-dummy.bb
+++ b/poky/meta/recipes-kernel/linux/linux-dummy.bb
@@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=751419260aa954499f7abaabaa882bbe"
PROVIDES += "virtual/kernel"
-inherit deploy
+inherit deploy linux-dummy
PACKAGES_DYNAMIC += "^kernel-module-.*"
PACKAGES_DYNAMIC += "^kernel-image-.*"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb b/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb
index 2ccc0ee87..8725473d1 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb
@@ -30,7 +30,7 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto-dev.git;branch=${KBRANCH};name
SRCREV_machine ?= '${@oe.utils.conditional("PREFERRED_PROVIDER_virtual/kernel", "linux-yocto-dev", "${AUTOREV}", "29594404d7fe73cd80eaa4ee8c43dcc53970c60e", d)}'
SRCREV_meta ?= '${@oe.utils.conditional("PREFERRED_PROVIDER_virtual/kernel", "linux-yocto-dev", "${AUTOREV}", "29594404d7fe73cd80eaa4ee8c43dcc53970c60e", d)}'
-LINUX_VERSION ?= "5.11+"
+LINUX_VERSION ?= "5.12+"
LINUX_VERSION_EXTENSION ?= "-yoctodev-${LINUX_KERNEL_TYPE}"
PV = "${LINUX_VERSION}+git${SRCPV}"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb
index 54996a8ae..cb34887cd 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb
@@ -11,13 +11,13 @@ python () {
raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
}
-SRCREV_machine ?= "142456428adbf16db56572889232220afb201974"
-SRCREV_meta ?= "8f72218572b1d4a5f053ced2bbf0558d0557072d"
+SRCREV_machine ?= "be2935bce35f9adb6d0e735d42651e81a5094adf"
+SRCREV_meta ?= "031f6c76e488a3563f35258c72ff1de3e25a512e"
SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \
git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.10;destsuffix=${KMETA}"
-LINUX_VERSION ?= "5.10.16"
+LINUX_VERSION ?= "5.10.25"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb
index 2508b9ba0..2ffc8ed54 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb
@@ -11,13 +11,13 @@ python () {
raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
}
-SRCREV_machine ?= "0406e600800a40015d02b16ee6a4a46c6673c66f"
-SRCREV_meta ?= "4f6d6c23cc8ca5d9c39b1efc2619b1dfec1ef2bc"
+SRCREV_machine ?= "65bbe689d98a007848008be2c8edeb5fa8066829"
+SRCREV_meta ?= "19738ca97b999a3b150e2d34232bb44b6537348f"
SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \
git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.4;destsuffix=${KMETA}"
-LINUX_VERSION ?= "5.4.98"
+LINUX_VERSION ?= "5.4.107"
LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb
index 8ecd10716..83e59b0eb 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb
@@ -6,7 +6,7 @@ KCONFIG_MODE = "--allnoconfig"
require recipes-kernel/linux/linux-yocto.inc
-LINUX_VERSION ?= "5.10.16"
+LINUX_VERSION ?= "5.10.25"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
@@ -15,9 +15,9 @@ DEPENDS += "openssl-native util-linux-native"
KMETA = "kernel-meta"
KCONF_BSP_AUDIT_LEVEL = "2"
-SRCREV_machine_qemuarm ?= "be720c1ce6d1cba2bb3815ad04773355339380ab"
-SRCREV_machine ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953"
-SRCREV_meta ?= "8f72218572b1d4a5f053ced2bbf0558d0557072d"
+SRCREV_machine_qemuarm ?= "0f87ec9fea7a5695cd063d9d11d89751efa53ddd"
+SRCREV_machine ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651"
+SRCREV_meta ?= "031f6c76e488a3563f35258c72ff1de3e25a512e"
PV = "${LINUX_VERSION}+git${SRCPV}"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb
index ff03fd419..2b6e35a69 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb
@@ -6,7 +6,7 @@ KCONFIG_MODE = "--allnoconfig"
require recipes-kernel/linux/linux-yocto.inc
-LINUX_VERSION ?= "5.4.98"
+LINUX_VERSION ?= "5.4.107"
LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
@@ -15,9 +15,9 @@ DEPENDS += "openssl-native util-linux-native"
KMETA = "kernel-meta"
KCONF_BSP_AUDIT_LEVEL = "2"
-SRCREV_machine_qemuarm ?= "fc95a485415d22eb772359b8d350c03b85c0cd1b"
-SRCREV_machine ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d"
-SRCREV_meta ?= "4f6d6c23cc8ca5d9c39b1efc2619b1dfec1ef2bc"
+SRCREV_machine_qemuarm ?= "ac3cbab1d6692d4a032dfffe0a604f39a634d18a"
+SRCREV_machine ?= "cf76c5c0dc0edd51ae4a75a1f8701a2675e87c72"
+SRCREV_meta ?= "19738ca97b999a3b150e2d34232bb44b6537348f"
PV = "${LINUX_VERSION}+git${SRCPV}"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb
index 38b56c17b..026e69511 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb
@@ -8,20 +8,22 @@ KBRANCH_qemuarm64 ?= "v5.10/standard/qemuarm64"
KBRANCH_qemumips ?= "v5.10/standard/mti-malta32"
KBRANCH_qemuppc ?= "v5.10/standard/qemuppc"
KBRANCH_qemuriscv64 ?= "v5.10/standard/base"
+KBRANCH_qemuriscv32 ?= "v5.10/standard/base"
KBRANCH_qemux86 ?= "v5.10/standard/base"
KBRANCH_qemux86-64 ?= "v5.10/standard/base"
KBRANCH_qemumips64 ?= "v5.10/standard/mti-malta64"
-SRCREV_machine_qemuarm ?= "57a6fbd33df5c7f057f301387b03a70cdc582282"
-SRCREV_machine_qemuarm64 ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953"
-SRCREV_machine_qemumips ?= "79bd439bff3c9f95cac6fb81c76b559a404a32dc"
-SRCREV_machine_qemuppc ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953"
-SRCREV_machine_qemuriscv64 ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953"
-SRCREV_machine_qemux86 ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953"
-SRCREV_machine_qemux86-64 ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953"
-SRCREV_machine_qemumips64 ?= "07bda345fe202b1d2ce233ffc20b7570f78c9c7f"
-SRCREV_machine ?= "98eda36c9616b598b3586c7cc532e8e0ba8b3953"
-SRCREV_meta ?= "8f72218572b1d4a5f053ced2bbf0558d0557072d"
+SRCREV_machine_qemuarm ?= "d8551cae1ccdbe062a5c6068ce39ea8f4e1c72db"
+SRCREV_machine_qemuarm64 ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651"
+SRCREV_machine_qemumips ?= "7f1f1ad2f2d90b1b070c6b0a82f0add9aa492e37"
+SRCREV_machine_qemuppc ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651"
+SRCREV_machine_qemuriscv64 ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651"
+SRCREV_machine_qemuriscv32 ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651"
+SRCREV_machine_qemux86 ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651"
+SRCREV_machine_qemux86-64 ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651"
+SRCREV_machine_qemumips64 ?= "fd5ac097b891642eea13659bea536f3ec5910d6d"
+SRCREV_machine ?= "cf5b0320cf4544d3db9ce3ddd6ddb7553a610651"
+SRCREV_meta ?= "031f6c76e488a3563f35258c72ff1de3e25a512e"
# remap qemuarm to qemuarma15 for the 5.8 kernel
# KMACHINE_qemuarm ?= "qemuarma15"
@@ -30,7 +32,7 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRA
git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.10;destsuffix=${KMETA}"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
-LINUX_VERSION ?= "5.10.16"
+LINUX_VERSION ?= "5.10.25"
DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
DEPENDS += "openssl-native util-linux-native"
@@ -43,7 +45,7 @@ KCONF_BSP_AUDIT_LEVEL = "1"
KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
-COMPATIBLE_MACHINE = "qemuarm|qemuarmv5|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemux86-64|qemuriscv64"
+COMPATIBLE_MACHINE = "qemuarm|qemuarmv5|qemuarm64|qemux86|qemuppc|qemuppc64|qemumips|qemumips64|qemux86-64|qemuriscv64|qemuriscv32"
# Functionality flags
KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb
index 8d0f4b82c..245c3d574 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb
@@ -12,16 +12,16 @@ KBRANCH_qemux86 ?= "v5.4/standard/base"
KBRANCH_qemux86-64 ?= "v5.4/standard/base"
KBRANCH_qemumips64 ?= "v5.4/standard/mti-malta64"
-SRCREV_machine_qemuarm ?= "28bc6b294bb1e49da671b2848234f9011efcad88"
-SRCREV_machine_qemuarm64 ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d"
-SRCREV_machine_qemumips ?= "105568d1696f86625cf7bc30d8c5c921732de2f4"
-SRCREV_machine_qemuppc ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d"
-SRCREV_machine_qemuriscv64 ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d"
-SRCREV_machine_qemux86 ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d"
-SRCREV_machine_qemux86-64 ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d"
-SRCREV_machine_qemumips64 ?= "c76ba20ee1b1de859736f85f0210459c2104b8df"
-SRCREV_machine ?= "2d0a4ea86fe97f13a4bc2a92a097e4edb51d737d"
-SRCREV_meta ?= "4f6d6c23cc8ca5d9c39b1efc2619b1dfec1ef2bc"
+SRCREV_machine_qemuarm ?= "ea4097dbff5a148265018e1a998e02b5a05e3d27"
+SRCREV_machine_qemuarm64 ?= "cf76c5c0dc0edd51ae4a75a1f8701a2675e87c72"
+SRCREV_machine_qemumips ?= "230ca33504faef6f40c5d3b24901aaacb901c9a6"
+SRCREV_machine_qemuppc ?= "cf76c5c0dc0edd51ae4a75a1f8701a2675e87c72"
+SRCREV_machine_qemuriscv64 ?= "cf76c5c0dc0edd51ae4a75a1f8701a2675e87c72"
+SRCREV_machine_qemux86 ?= "cf76c5c0dc0edd51ae4a75a1f8701a2675e87c72"
+SRCREV_machine_qemux86-64 ?= "cf76c5c0dc0edd51ae4a75a1f8701a2675e87c72"
+SRCREV_machine_qemumips64 ?= "84e071a893ef9cea8a8ffbcd233b47a2bc9056b5"
+SRCREV_machine ?= "cf76c5c0dc0edd51ae4a75a1f8701a2675e87c72"
+SRCREV_meta ?= "19738ca97b999a3b150e2d34232bb44b6537348f"
# remap qemuarm to qemuarma15 for the 5.4 kernel
# KMACHINE_qemuarm ?= "qemuarma15"
@@ -30,7 +30,7 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRA
git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.4;destsuffix=${KMETA}"
LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
-LINUX_VERSION ?= "5.4.98"
+LINUX_VERSION ?= "5.4.107"
DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
DEPENDS += "openssl-native util-linux-native"
diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-memory-leaks-on-event-destroy.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-memory-leaks-on-event-destroy.patch
new file mode 100644
index 000000000..21da932a7
--- /dev/null
+++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-memory-leaks-on-event-destroy.patch
@@ -0,0 +1,58 @@
+From b3fdf78b15beb940918da1e41eb68e24ba31bb87 Mon Sep 17 00:00:00 2001
+From: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+Date: Wed, 3 Mar 2021 10:10:16 -0500
+Subject: [PATCH 1/4] Fix: memory leaks on event destroy
+
+Both filter runtime and event enabler ref objects are owned by the
+event, but are not freed upon destruction of the event object, thus
+leaking memory.
+
+Upstream-status: backport
+
+Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+Change-Id: Ice9b1c18b47584838aea2b965494d3c8391f4c84
+---
+ lttng-events.c | 7 +++++++
+ lttng-events.h | 1 +
+ 2 files changed, 8 insertions(+)
+
+diff --git a/lttng-events.c b/lttng-events.c
+index f3398adc..984bd341 100644
+--- a/lttng-events.c
++++ b/lttng-events.c
+@@ -919,6 +919,8 @@ int _lttng_event_unregister(struct lttng_event *event)
+ static
+ void _lttng_event_destroy(struct lttng_event *event)
+ {
++ struct lttng_enabler_ref *enabler_ref, *tmp_enabler_ref;
++
+ switch (event->instrumentation) {
+ case LTTNG_KERNEL_TRACEPOINT:
+ lttng_event_put(event->desc);
+@@ -944,6 +946,11 @@ void _lttng_event_destroy(struct lttng_event *event)
+ }
+ list_del(&event->list);
+ lttng_destroy_context(event->ctx);
++ lttng_free_event_filter_runtime(event);
++ /* Free event enabler refs */
++ list_for_each_entry_safe(enabler_ref, tmp_enabler_ref,
++ &event->enablers_ref_head, node)
++ kfree(enabler_ref);
+ kmem_cache_free(event_cache, event);
+ }
+
+diff --git a/lttng-events.h b/lttng-events.h
+index 1b9ab167..13b6abf5 100644
+--- a/lttng-events.h
++++ b/lttng-events.h
+@@ -716,6 +716,7 @@ int lttng_enabler_attach_bytecode(struct lttng_enabler *enabler,
+ struct lttng_kernel_filter_bytecode __user *bytecode);
+ void lttng_enabler_event_link_bytecode(struct lttng_event *event,
+ struct lttng_enabler *enabler);
++void lttng_free_event_filter_runtime(struct lttng_event *event);
+
+ int lttng_probes_init(void);
+
+--
+2.19.1
+
diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-filter-interpreter-early-exits-on-uninitialized-.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-filter-interpreter-early-exits-on-uninitialized-.patch
new file mode 100644
index 000000000..609690f05
--- /dev/null
+++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-filter-interpreter-early-exits-on-uninitialized-.patch
@@ -0,0 +1,159 @@
+From 23a2f61ffc6a656f136fa2044c0c3b8f79766779 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=A9r=C3=A9mie=20Galarneau?=
+ <jeremie.galarneau@efficios.com>
+Date: Wed, 3 Mar 2021 18:52:19 -0500
+Subject: [PATCH 2/4] Fix: filter interpreter early-exits on uninitialized
+ value
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+I observed that syscall filtering on string arguments wouldn't work on
+my development machines, both running 5.11.2-arch1-1 (Arch Linux).
+
+For instance, enabling the tracing of the `openat()` syscall with the
+'filename == "/proc/cpuinfo"' filter would not produce events even
+though matching events were present in another session that had no
+filtering active. The same problem occurred with `execve()`.
+
+I tried a couple of kernel versions before (5.11.1 and 5.10.13, if
+memory serves me well) and I had the same problem. Meanwhile, I couldn't
+reproduce the problem on various Debian machines (the LTTng CI) nor on a
+fresh Ubuntu 20.04 with both the stock kernel and with an updated 5.11.2
+kernel.
+
+I built the lttng-modules with the interpreter debugging printout and
+saw the following warning:
+ LTTng: [debug bytecode in /home/jgalar/EfficiOS/src/lttng-modules/src/lttng-bytecode-interpreter.c:bytecode_interpret@1508] Bytecode warning: loading a NULL string.
+
+After a shedload (yes, a _shed_load) of digging, I figured that the
+problem was hidden in plain sight near that logging statement.
+
+In the `BYTECODE_OP_LOAD_FIELD_REF_USER_STRING` operation, the 'ax'
+register's 'user_str' is initialized with the stack value (the user
+space string's address in our case). However, a NULL check is performed
+against the register's 'str' member.
+
+I initialy suspected that both members would be part of the same union
+and alias each-other, but they are actually contiguous in a structure.
+
+On the unaffected machines, I could confirm that the `str` member was
+uninitialized to a non-zero value causing the condition to evaluate to
+false.
+
+Francis Deslauriers reproduced the problem by initializing the
+interpreter stack to zero.
+
+I am unsure of the exact kernel configuration option that reveals this
+issue on Arch Linux, but my kernel has the following option enabled:
+
+CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL:
+ Zero-initialize any stack variables that may be passed by reference
+ and had not already been explicitly initialized. This is intended to
+ eliminate all classes of uninitialized stack variable exploits and
+ information exposures.
+
+I have not tried to build without this enabled as, anyhow, this seems
+to be a legitimate issue.
+
+I have spotted what appears to be an identical problem in
+`BYTECODE_OP_LOAD_FIELD_REF_USER_SEQUENCE` and corrected it. However,
+I have not exercised that code path.
+
+The commit that introduced this problem is 5b4ad89.
+
+The debug print-out of the `BYTECODE_OP_LOAD_FIELD_REF_USER_STRING`
+operation is modified to print the user string (truncated to 31 chars).
+
+Upstream-status: backport
+
+Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
+Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+Change-Id: I2da3c31b9e3ce0e1b164cf3d2711c0893cbec273
+---
+ lttng-filter-interpreter.c | 41 ++++++++++++++++++++++++++++++++++----
+ 1 file changed, 37 insertions(+), 4 deletions(-)
+
+diff --git a/lttng-filter-interpreter.c b/lttng-filter-interpreter.c
+index 5d572437..6e5a5139 100644
+--- a/lttng-filter-interpreter.c
++++ b/lttng-filter-interpreter.c
+@@ -22,7 +22,7 @@ LTTNG_STACK_FRAME_NON_STANDARD(lttng_filter_interpret_bytecode);
+ * to handle user-space read.
+ */
+ static
+-char get_char(struct estack_entry *reg, size_t offset)
++char get_char(const struct estack_entry *reg, size_t offset)
+ {
+ if (unlikely(offset >= reg->u.s.seq_len))
+ return '\0';
+@@ -593,6 +593,39 @@ end:
+ return ret;
+ }
+
++#ifdef DEBUG
++
++#define DBG_USER_STR_CUTOFF 32
++
++/*
++ * In debug mode, print user string (truncated, if necessary).
++ */
++static inline
++void dbg_load_ref_user_str_printk(const struct estack_entry *user_str_reg)
++{
++ size_t pos = 0;
++ char last_char;
++ char user_str[DBG_USER_STR_CUTOFF];
++
++ pagefault_disable();
++ do {
++ last_char = get_char(user_str_reg, pos);
++ user_str[pos] = last_char;
++ pos++;
++ } while (last_char != '\0' && pos < sizeof(user_str));
++ pagefault_enable();
++
++ user_str[sizeof(user_str) - 1] = '\0';
++ dbg_printk("load field ref user string: '%s%s'\n", user_str,
++ last_char != '\0' ? "[...]" : "");
++}
++#else
++static inline
++void dbg_load_ref_user_str_printk(const struct estack_entry *user_str_reg)
++{
++}
++#endif
++
+ /*
+ * Return 0 (discard), or raise the 0x1 flag (log event).
+ * Currently, other flags are kept for future extensions and have no
+@@ -1313,7 +1346,7 @@ uint64_t lttng_filter_interpret_bytecode(void *filter_data,
+ estack_push(stack, top, ax, bx);
+ estack_ax(stack, top)->u.s.user_str =
+ *(const char * const *) &filter_stack_data[ref->offset];
+- if (unlikely(!estack_ax(stack, top)->u.s.str)) {
++ if (unlikely(!estack_ax(stack, top)->u.s.user_str)) {
+ dbg_printk("Filter warning: loading a NULL string.\n");
+ ret = -EINVAL;
+ goto end;
+@@ -1322,7 +1355,7 @@ uint64_t lttng_filter_interpret_bytecode(void *filter_data,
+ estack_ax(stack, top)->u.s.literal_type =
+ ESTACK_STRING_LITERAL_TYPE_NONE;
+ estack_ax(stack, top)->u.s.user = 1;
+- dbg_printk("ref load string %s\n", estack_ax(stack, top)->u.s.str);
++ dbg_load_ref_user_str_printk(estack_ax(stack, top));
+ next_pc += sizeof(struct load_op) + sizeof(struct field_ref);
+ PO;
+ }
+@@ -1340,7 +1373,7 @@ uint64_t lttng_filter_interpret_bytecode(void *filter_data,
+ estack_ax(stack, top)->u.s.user_str =
+ *(const char **) (&filter_stack_data[ref->offset
+ + sizeof(unsigned long)]);
+- if (unlikely(!estack_ax(stack, top)->u.s.str)) {
++ if (unlikely(!estack_ax(stack, top)->u.s.user_str)) {
+ dbg_printk("Filter warning: loading a NULL sequence.\n");
+ ret = -EINVAL;
+ goto end;
+--
+2.19.1
+
diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0003-fix-mm-tracing-record-slab-name-for-kmem_cache_free-.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0003-fix-mm-tracing-record-slab-name-for-kmem_cache_free-.patch
new file mode 100644
index 000000000..71f99b80a
--- /dev/null
+++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0003-fix-mm-tracing-record-slab-name-for-kmem_cache_free-.patch
@@ -0,0 +1,91 @@
+From 49c603ef2dc6969f4454f0d849af00ee24bb7f04 Mon Sep 17 00:00:00 2001
+From: Michael Jeanson <mjeanson@efficios.com>
+Date: Thu, 4 Mar 2021 16:50:12 -0500
+Subject: [PATCH 3/4] fix: mm, tracing: record slab name for kmem_cache_free()
+ (v5.12)
+
+See upstream commit:
+
+ commit 3544de8ee6e4817278b15fe08658de49abf58954
+ Author: Jacob Wen <jian.w.wen@oracle.com>
+ Date: Wed Feb 24 12:00:55 2021 -0800
+
+ mm, tracing: record slab name for kmem_cache_free()
+
+ Currently, a trace record generated by the RCU core is as below.
+
+ ... kmem_cache_free: call_site=rcu_core+0x1fd/0x610 ptr=00000000f3b49a66
+
+ It doesn't tell us what the RCU core has freed.
+
+ This patch adds the slab name to trace_kmem_cache_free().
+ The new format is as follows.
+
+ ... kmem_cache_free: call_site=rcu_core+0x1fd/0x610 ptr=0000000037f79c8d name=dentry
+ ... kmem_cache_free: call_site=rcu_core+0x1fd/0x610 ptr=00000000f78cb7b5 name=sock_inode_cache
+ ... kmem_cache_free: call_site=rcu_core+0x1fd/0x610 ptr=0000000018768985 name=pool_workqueue
+ ... kmem_cache_free: call_site=rcu_core+0x1fd/0x610 ptr=000000006a6cb484 name=radix_tree_node
+
+ We can use it to understand what the RCU core is going to free. For
+ example, some users maybe interested in when the RCU core starts
+ freeing reclaimable slabs like dentry to reduce memory pressure.
+
+ Link: https://lkml.kernel.org/r/20201216072804.8838-1-jian.w.wen@oracle.com
+
+Upstream-status: backport
+
+Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
+Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+Change-Id: I1ee2fc476614cadcc8d3ac5d8feddc7910e1aa3a
+---
+ instrumentation/events/lttng-module/kmem.h | 27 ++++++++++++++++++++++
+ 1 file changed, 27 insertions(+)
+
+diff --git a/instrumentation/events/lttng-module/kmem.h b/instrumentation/events/lttng-module/kmem.h
+index b134620a..d787ea54 100644
+--- a/instrumentation/events/lttng-module/kmem.h
++++ b/instrumentation/events/lttng-module/kmem.h
+@@ -87,6 +87,32 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE(kmem_alloc_node, kmem_cache_alloc_node,
+ TP_ARGS(call_site, ptr, bytes_req, bytes_alloc, gfp_flags, node)
+ )
+
++#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,12,0))
++LTTNG_TRACEPOINT_EVENT(kfree,
++
++ TP_PROTO(unsigned long call_site, const void *ptr),
++
++ TP_ARGS(call_site, ptr),
++
++ TP_FIELDS(
++ ctf_integer_hex(unsigned long, call_site, call_site)
++ ctf_integer_hex(const void *, ptr, ptr)
++ )
++)
++
++LTTNG_TRACEPOINT_EVENT(kmem_cache_free,
++
++ TP_PROTO(unsigned long call_site, const void *ptr, const char *name),
++
++ TP_ARGS(call_site, ptr, name),
++
++ TP_FIELDS(
++ ctf_integer_hex(unsigned long, call_site, call_site)
++ ctf_integer_hex(const void *, ptr, ptr)
++ ctf_string(name, name)
++ )
++)
++#else
+ LTTNG_TRACEPOINT_EVENT_CLASS(kmem_free,
+
+ TP_PROTO(unsigned long call_site, const void *ptr),
+@@ -114,6 +140,7 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE(kmem_free, kmem_cache_free,
+
+ TP_ARGS(call_site, ptr)
+ )
++#endif
+
+ #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,3,0))
+ LTTNG_TRACEPOINT_EVENT_MAP(mm_page_free, kmem_mm_page_free,
+--
+2.19.1
+
diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-kretprobe-null-ptr-deref-on-session-destroy.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-kretprobe-null-ptr-deref-on-session-destroy.patch
new file mode 100644
index 000000000..8a839c2b4
--- /dev/null
+++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-kretprobe-null-ptr-deref-on-session-destroy.patch
@@ -0,0 +1,41 @@
+From 92cc3e7f76a545a2cd4828576971f1eea83f4e68 Mon Sep 17 00:00:00 2001
+From: Francis Deslauriers <francis.deslauriers@efficios.com>
+Date: Wed, 17 Mar 2021 10:40:56 -0400
+Subject: [PATCH 4/4] Fix: kretprobe: null ptr deref on session destroy
+
+The `filter_bytecode_runtime_head` list is currently not initialized for
+the return event of the kretprobe. This caused a kernel null ptr
+dereference when destroying a session. It can reproduced with the
+following commands:
+
+ lttng create
+ lttng enable-event -k --function=lttng_test_filter_event_write my_event
+ lttng start
+ lttng stop
+ lttng destroy
+
+Upstream-status: backport
+
+Signed-off-by: Francis Deslauriers <francis.deslauriers@efficios.com>
+Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+Change-Id: I1162ce8b10dd7237a26331531f048346b984eee7
+---
+ lttng-events.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/lttng-events.c b/lttng-events.c
+index 984bd341..3450fa40 100644
+--- a/lttng-events.c
++++ b/lttng-events.c
+@@ -704,6 +704,8 @@ struct lttng_event *_lttng_event_create(struct lttng_channel *chan,
+ event_return->enabled = 0;
+ event_return->registered = 1;
+ event_return->instrumentation = itype;
++ INIT_LIST_HEAD(&event_return->bytecode_runtime_head);
++ INIT_LIST_HEAD(&event_return->enablers_ref_head);
+ /*
+ * Populate lttng_event structure before kretprobe registration.
+ */
+--
+2.19.1
+
diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.4.bb b/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.5.bb
index 3ca59f789..5b05c644a 100644
--- a/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.4.bb
+++ b/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.5.bb
@@ -11,9 +11,13 @@ include lttng-platforms.inc
SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \
file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \
+ file://0001-Fix-memory-leaks-on-event-destroy.patch \
+ file://0002-Fix-filter-interpreter-early-exits-on-uninitialized-.patch \
+ file://0003-fix-mm-tracing-record-slab-name-for-kmem_cache_free-.patch \
+ file://0004-Fix-kretprobe-null-ptr-deref-on-session-destroy.patch \
"
-SRC_URI[sha256sum] = "fe66400fa1b85bff1b9ae24419c74e3bb7d358d643eade0594d81b48bd190688"
+SRC_URI[sha256sum] = "c4d1a1b42c728e37b6b7947ae16563a011c4b297311aa04d56f9a1791fb5a30a"
export INSTALL_MOD_DIR="kernel/lttng-modules"
@@ -35,7 +39,8 @@ DEFAULT_PREFERENCE_class-devupstream = "-1"
SRC_URI_class-devupstream = "git://git.lttng.org/lttng-modules;branch=stable-2.12 \
file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \
"
-SRCREV_class-devupstream = "be71b60a327d7ad2588abc5cad2861177119972b"
-PV_class-devupstream = "2.12.3+git${SRCPV}"
+
+SRCREV_class-devupstream = "92cc3e7f76a545a2cd4828576971f1eea83f4e68"
+PV_class-devupstream = "2.12.5+git${SRCPV}"
S_class-devupstream = "${WORKDIR}/git"
SRCREV_FORMAT ?= "lttng_git"
diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.2.bb b/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.3.bb
index 52bfd3637..7074096ee 100644
--- a/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.2.bb
+++ b/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.3.bb
@@ -39,7 +39,7 @@ SRC_URI = "https://lttng.org/files/lttng-tools/lttng-tools-${PV}.tar.bz2 \
file://determinism.patch \
"
-SRC_URI[sha256sum] = "9ed9161795ff023b076f9f95afaa4f1f822ec42495c0fa04c586ab8fa74e84f1"
+SRC_URI[sha256sum] = "2890da230edd523fcf497e9eb28133b7606d64fa01bcbffadbfcba42104db153"
inherit autotools ptest pkgconfig useradd python3-dir manpages systemd
diff --git a/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb b/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb
index 92ffa4720..b2b50b9bc 100644
--- a/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb
+++ b/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb
@@ -19,7 +19,7 @@ DEPENDS += "bc-native bison-native"
DEPENDS += "gmp-native"
EXTRA_OEMAKE = " HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" HOSTCPP="${BUILD_CPP}""
-EXTRA_OEMAKE += " HOSTCXX="${BUILD_CXX} ${BUILD_CXXFLAGS} ${BUILD_LDFLAGS}""
+EXTRA_OEMAKE += " HOSTCXX="${BUILD_CXX} ${BUILD_CXXFLAGS} ${BUILD_LDFLAGS}" CROSS_COMPILE=${TARGET_PREFIX}"
# Build some host tools under work-shared. CC, LD, and AR are probably
# not used, but this is the historical way of invoking "make scripts".
diff --git a/poky/meta/recipes-kernel/perf/perf.bb b/poky/meta/recipes-kernel/perf/perf.bb
index 5faf22a26..b4683720a 100644
--- a/poky/meta/recipes-kernel/perf/perf.bb
+++ b/poky/meta/recipes-kernel/perf/perf.bb
@@ -32,6 +32,7 @@ PACKAGECONFIG[coresight] = "CORESIGHT=1,,opencsd"
# libunwind is not yet ported for some architectures
PACKAGECONFIG_remove_arc = "libunwind"
PACKAGECONFIG_remove_riscv64 = "libunwind"
+PACKAGECONFIG_remove_riscv32 = "libunwind"
DEPENDS = " \
virtual/${MLPREFIX}libc \
@@ -81,6 +82,7 @@ EXTRA_OEMAKE = '\
AR="${AR}" \
LD="${LD}" \
EXTRA_CFLAGS="-ldw" \
+ YFLAGS='-y --file-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}' \
EXTRA_LDFLAGS="${PERF_EXTRA_LDFLAGS}" \
perfexecdir=${libexecdir} \
NO_GTK2=1 \
@@ -214,6 +216,51 @@ do_configure_prepend () {
${S}/tools/build/Makefile.build
fi
+ # start reproducibility substitutions
+ if [ -e "${S}/tools/perf/Makefile.config" ]; then
+ # The following line in the Makefle:
+ # override PYTHON := $(call get-executable-or-default,PYTHON,$(PYTHON_AUTO))
+ # "PYTHON" / "PYTHON_AUTO" have the full path as part of the variable. We've
+ # ensure that the environment is setup and we do not need the full path to be
+ # captured, since the symbol gets built into the executable, making it not
+ # reproducible.
+ sed -i -e 's,$(call get-executable-or-default\,PYTHON\,$(PYTHON_AUTO)),$(notdir $(call get-executable-or-default\,PYTHON\,$(PYTHON_AUTO))),g' \
+ ${S}/tools/perf/Makefile.config
+
+ # The following line:
+ # srcdir_SQ = $(patsubst %tools/perf,tools/perf,$(subst ','\'',$(srcdir))),
+ # Captures the full src path of perf, which of course makes it not
+ # reproducible. We really only need the relative location 'tools/perf', so we
+ # change the Makefile line to remove everything before 'tools/perf'
+ sed -i -e "s%srcdir_SQ = \$(subst ','\\\'',\$(srcdir))%srcdir_SQ = \$(patsubst \%tools/perf,tools/perf,\$(subst ','\\\'',\$(srcdir)))%g" \
+ ${S}/tools/perf/Makefile.config
+ fi
+ if [ -e "${S}/tools/perf/tests/Build" ]; then
+ # OUTPUT is the full path, we have python on the path so we remove it from the
+ # definition. This is captured in the perf binary, so breaks reproducibility
+ sed -i -e 's,PYTHONPATH="BUILD_STR($(OUTPUT)python)",PYTHONPATH="BUILD_STR(python)",g' \
+ ${S}/tools/perf/tests/Build
+ fi
+ if [ -e "${S}/tools/perf/util/Build" ]; then
+ # To avoid bison generating #ifdefs that have captured paths, we make sure
+ # all the calls have YFLAGS, which contains prefix mapping information.
+ sed -i -e 's,$(BISON),$(BISON) $(YFLAGS),g' ${S}/tools/perf/util/Build
+ fi
+ if [ -e "${S}/scripts/Makefile.host" ]; then
+ # To avoid yacc (bison) generating #ifdefs that have captured paths, we make sure
+ # all the calls have YFLAGS, which contains prefix mapping information.
+ sed -i -e 's,$(YACC),$(YACC) $(YFLAGS),g' ${S}/scripts/Makefile.host
+ fi
+ if [ -e "${S}/tools/perf/pmu-events/Build" ]; then
+ target='$(OUTPUT)pmu-events/pmu-events.c $(V)'
+ replacement1='$(OUTPUT)pmu-events/pmu-events.c $(V)\n'
+ replacement2='\t$(srctree)/sort-pmuevents.py $(OUTPUT)pmu-events/pmu-events.c $(OUTPUT)pmu-events/pmu-events.c.new\n'
+ replacement3='\tcp $(OUTPUT)pmu-events/pmu-events.c.new $(OUTPUT)pmu-events/pmu-events.c'
+ sed -i -e "s,$target,$replacement1$replacement2$replacement3,g" \
+ "${S}/tools/perf/pmu-events/Build"
+ fi
+ # end reproducibility substitutions
+
# We need to ensure the --sysroot option in CC is preserved
if [ -e "${S}/tools/perf/Makefile.perf" ]; then
sed -i 's,CC = $(CROSS_COMPILE)gcc,#CC,' ${S}/tools/perf/Makefile.perf
@@ -254,6 +301,14 @@ do_configure_prepend () {
# so we copy it from the sysroot unistd.h to the perf unistd.h
install -D -m0644 ${STAGING_INCDIR}/asm-generic/unistd.h ${S}/tools/include/uapi/asm-generic/unistd.h
install -D -m0644 ${STAGING_INCDIR}/asm-generic/unistd.h ${S}/include/uapi/asm-generic/unistd.h
+
+ # the fetcher is inhibited by the 'inherit kernelsrc', so we do a quick check and
+ # copy for a helper script we need
+ for p in $(echo ${FILESPATH} | tr ':' '\n'); do
+ if [ -e $p/sort-pmuevents.py ]; then
+ cp $p/sort-pmuevents.py ${S}
+ fi
+ done
}
python do_package_prepend() {
@@ -269,7 +324,7 @@ RDEPENDS_${PN} += "elfutils bash"
RDEPENDS_${PN}-archive =+ "bash"
RDEPENDS_${PN}-python =+ "bash python3 python3-modules ${@bb.utils.contains('PACKAGECONFIG', 'audit', 'audit-python3', '', d)}"
RDEPENDS_${PN}-perl =+ "bash perl perl-modules"
-RDEPENDS_${PN}-tests =+ "python3"
+RDEPENDS_${PN}-tests =+ "python3 bash"
RSUGGESTS_SCRIPTING = "${@bb.utils.contains('PACKAGECONFIG', 'scripting', '${PN}-perl ${PN}-python', '',d)}"
RSUGGESTS_${PN} += "${PN}-archive ${PN}-tests ${RSUGGESTS_SCRIPTING}"
diff --git a/poky/meta/recipes-kernel/perf/perf/sort-pmuevents.py b/poky/meta/recipes-kernel/perf/perf/sort-pmuevents.py
new file mode 100755
index 000000000..5ddf0f144
--- /dev/null
+++ b/poky/meta/recipes-kernel/perf/perf/sort-pmuevents.py
@@ -0,0 +1,93 @@
+#!/usr/bin/env python3
+
+# perf pmu-events sorting tool
+#
+# Copyright (C) 2021 Bruce Ashfield
+#
+# SPDX-License-Identifier: MIT
+#
+
+import sys
+import os
+import re
+from collections import OrderedDict
+
+if len(sys.argv) < 2:
+ print( "[ERROR]: input and output pmu files missing" )
+ sys.exit(1)
+
+if len(sys.argv) < 3:
+ print( "[ERROR]: output pmu file missing" )
+ sys.exit(1)
+
+infile = sys.argv[1]
+outfile = sys.argv[2]
+
+if not os.path.exists(infile):
+ print( "ERROR. input file does not exist: %s" % infile )
+ sys.exit(1)
+
+if os.path.exists(outfile):
+ print( "WARNING. output file will be overwritten: %s" % infile )
+
+with open(infile, 'r') as file:
+ data = file.read()
+
+preamble_regex = re.compile( '^(.*?)^struct', re.MULTILINE | re.DOTALL )
+
+preamble = re.search( preamble_regex, data )
+struct_block_regex = re.compile( '^struct.*?(\w+) (.*?)\[\] = {(.*?)^};', re.MULTILINE | re.DOTALL )
+field_regex = re.compile( '{.*?},', re.MULTILINE | re.DOTALL )
+cpuid_regex = re.compile( '\.cpuid = (.*?),', re.MULTILINE | re.DOTALL )
+name_regex = re.compile( '\.name = (.*?),', re.MULTILINE | re.DOTALL )
+
+# create a dictionary structure to store all the structs, their
+# types and then their fields.
+entry_dict = {}
+for struct in re.findall( struct_block_regex, data ):
+ # print( "struct: %s %s" % (struct[0],struct[1]) )
+ entry_dict[struct[1]] = {}
+ entry_dict[struct[1]]['type'] = struct[0]
+ entry_dict[struct[1]]['fields'] = {}
+ for entry in re.findall( field_regex, struct[2] ):
+ #print( " entry: %s" % entry )
+ cpuid = re.search( cpuid_regex, entry )
+ if cpuid:
+ #print( " cpuid found: %s" % cpuid.group(1) )
+ entry_dict[struct[1]]['fields'][cpuid.group(1)] = entry
+
+ name = re.search( name_regex, entry )
+ if name:
+ #print( " name found: %s" % name.group(1) )
+ entry_dict[struct[1]]['fields'][name.group(1)] = entry
+
+
+# created ordered dictionaries from the captured values. These are ordered by
+# a sorted() iteration of the keys. We don't care about the order we read
+# things, just the sorted order. Hency why we couldn't create these during
+# reading.
+#
+# yes, there's a more concise way to do this, but our nested dictionaries of
+# fields make it complex enough that it becomes unreadable.
+entry_dict_sorted = OrderedDict()
+for i in sorted(entry_dict.keys()):
+ entry_dict_sorted[i] = {}
+ entry_dict_sorted[i]['type'] = entry_dict[i]['type']
+ entry_dict_sorted[i]['fields'] = {}
+ for f in sorted(entry_dict[i]['fields'].keys()):
+ entry_dict_sorted[i]['fields'][f] = entry_dict[i]['fields'][f]
+
+# dump the sorted elements to the outfile
+outf = open( outfile, 'w' )
+
+print( preamble.group(1) )
+outf.write( preamble.group(1) )
+for d in entry_dict_sorted:
+ outf.write( "struct %s %s[] = {\n" % (entry_dict_sorted[d]['type'],d) )
+ for f in entry_dict_sorted[d]['fields']:
+ outf.write( entry_dict_sorted[d]['fields'][f] + '\n' )
+
+ outf.write( "};\n" )
+
+outf.close()
+
diff --git a/poky/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb b/poky/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb
index 46820ef48..6ee0be5e3 100644
--- a/poky/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb
+++ b/poky/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb
@@ -1,5 +1,5 @@
SUMMARY = "UProbes kernel module for SystemTap"
-
+HOMEPAGE = "https://sourceware.org/systemtap/"
require systemtap_git.inc
DEPENDS = "systemtap virtual/kernel"
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/0001-lavf-srt-fix-build-fail-when-used-the-libsrt-1.4.1.patch b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/0001-lavf-srt-fix-build-fail-when-used-the-libsrt-1.4.1.patch
deleted file mode 100644
index 7635c9196..000000000
--- a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/0001-lavf-srt-fix-build-fail-when-used-the-libsrt-1.4.1.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From aebb72e025cbfbd4a6765354f6f565ad4ac89789 Mon Sep 17 00:00:00 2001
-From: Jun Zhao <barryjzhao@tencent.com>
-Date: Sun, 12 Jul 2020 05:48:48 +0800
-Subject: [PATCH] lavf/srt: fix build fail when used the libsrt 1.4.1
-
-lavf/srt: fix build fail when used the libsrt 1.4.1
-
-libsrt changed the:
-SRTO_SMOOTHER -> SRTO_CONGESTION
-SRTO_STRICTENC -> SRTO_ENFORCEDENCRYPTION
-and removed the front of deprecated options (SRTO_SMOOTHER/SRTO_STRICTENC)
-in the header, it's lead to build fail
-
-fix #8760
-
-Upstream-Status: Backport [https://github.com/FFmpeg/FFmpeg/commit/7c59e1b0f285cd7c7b35fcd71f49c5fd52cf9315]
-
-Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
-Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
----
- libavformat/libsrt.c | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/libavformat/libsrt.c b/libavformat/libsrt.c
-index 4de575b..4719ce0 100644
---- a/libavformat/libsrt.c
-+++ b/libavformat/libsrt.c
-@@ -313,8 +313,12 @@ static int libsrt_set_options_pre(URLContext *h, int fd)
- (s->pbkeylen >= 0 && libsrt_setsockopt(h, fd, SRTO_PBKEYLEN, "SRTO_PBKEYLEN", &s->pbkeylen, sizeof(s->pbkeylen)) < 0) ||
- (s->passphrase && libsrt_setsockopt(h, fd, SRTO_PASSPHRASE, "SRTO_PASSPHRASE", s->passphrase, strlen(s->passphrase)) < 0) ||
- #if SRT_VERSION_VALUE >= 0x010302
-+#if SRT_VERSION_VALUE >= 0x010401
-+ (s->enforced_encryption >= 0 && libsrt_setsockopt(h, fd, SRTO_ENFORCEDENCRYPTION, "SRTO_ENFORCEDENCRYPTION", &s->enforced_encryption, sizeof(s->enforced_encryption)) < 0) ||
-+#else
- /* SRTO_STRICTENC == SRTO_ENFORCEDENCRYPTION (53), but for compatibility, we used SRTO_STRICTENC */
- (s->enforced_encryption >= 0 && libsrt_setsockopt(h, fd, SRTO_STRICTENC, "SRTO_STRICTENC", &s->enforced_encryption, sizeof(s->enforced_encryption)) < 0) ||
-+#endif
- (s->kmrefreshrate >= 0 && libsrt_setsockopt(h, fd, SRTO_KMREFRESHRATE, "SRTO_KMREFRESHRATE", &s->kmrefreshrate, sizeof(s->kmrefreshrate)) < 0) ||
- (s->kmpreannounce >= 0 && libsrt_setsockopt(h, fd, SRTO_KMPREANNOUNCE, "SRTO_KMPREANNOUNCE", &s->kmpreannounce, sizeof(s->kmpreannounce)) < 0) ||
- #endif
-@@ -333,7 +337,11 @@ static int libsrt_set_options_pre(URLContext *h, int fd)
- (s->lossmaxttl >= 0 && libsrt_setsockopt(h, fd, SRTO_LOSSMAXTTL, "SRTO_LOSSMAXTTL", &s->lossmaxttl, sizeof(s->lossmaxttl)) < 0) ||
- (s->minversion >= 0 && libsrt_setsockopt(h, fd, SRTO_MINVERSION, "SRTO_MINVERSION", &s->minversion, sizeof(s->minversion)) < 0) ||
- (s->streamid && libsrt_setsockopt(h, fd, SRTO_STREAMID, "SRTO_STREAMID", s->streamid, strlen(s->streamid)) < 0) ||
-+#if SRT_VERSION_VALUE >= 0x010401
-+ (s->smoother && libsrt_setsockopt(h, fd, SRTO_CONGESTION, "SRTO_CONGESTION", s->smoother, strlen(s->smoother)) < 0) ||
-+#else
- (s->smoother && libsrt_setsockopt(h, fd, SRTO_SMOOTHER, "SRTO_SMOOTHER", s->smoother, strlen(s->smoother)) < 0) ||
-+#endif
- (s->messageapi >= 0 && libsrt_setsockopt(h, fd, SRTO_MESSAGEAPI, "SRTO_MESSAGEAPI", &s->messageapi, sizeof(s->messageapi)) < 0) ||
- (s->payload_size >= 0 && libsrt_setsockopt(h, fd, SRTO_PAYLOADSIZE, "SRTO_PAYLOADSIZE", &s->payload_size, sizeof(s->payload_size)) < 0) ||
- ((h->flags & AVIO_FLAG_WRITE) && libsrt_setsockopt(h, fd, SRTO_SENDER, "SRTO_SENDER", &yes, sizeof(yes)) < 0)) {
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2020-35964.patch b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2020-35964.patch
deleted file mode 100644
index 6b96bd674..000000000
--- a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2020-35964.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From 27a99e2c7d450fef15594671eef4465c8a166bd7 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michael@niedermayer.cc>
-Date: Wed, 28 Oct 2020 20:11:54 +0100
-Subject: [PATCH] avformat/vividas: improve extradata packing checks in
- track_header()
-
-Fixes: out of array accesses
-Fixes: 26622/clusterfuzz-testcase-minimized-ffmpeg_dem_VIVIDAS_fuzzer-6581200338288640
-
-Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
-Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-
-Upstream-Status: Backport [https://github.com/FFmpeg/FFmpeg/commit/27a99e2c7d450fef15594671eef4465c8a166bd7]
-
-CVE: CVE-2020-35964
-
-Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-Signed-off-by: Khairul Rohaizzat Jamaluddin <khairul.rohaizzat.jamaluddin@intel.com>
----
- libavformat/vividas.c | 12 ++++++------
- 1 file changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/libavformat/vividas.c b/libavformat/vividas.c
-index 83d0ed116787..46c66bf9a0ae 100644
---- a/libavformat/vividas.c
-+++ b/libavformat/vividas.c
-@@ -28,6 +28,7 @@
- * @sa http://wiki.multimedia.cx/index.php?title=Vividas_VIV
- */
-
-+#include "libavutil/avassert.h"
- #include "libavutil/intreadwrite.h"
- #include "avio_internal.h"
- #include "avformat.h"
-@@ -379,7 +380,7 @@ static int track_header(VividasDemuxContext *viv, AVFormatContext *s, uint8_t *
-
- if (avio_tell(pb) < off) {
- int num_data;
-- int xd_size = 0;
-+ int xd_size = 1;
- int data_len[256];
- int offset = 1;
- uint8_t *p;
-@@ -393,10 +394,10 @@ static int track_header(VividasDemuxContext *viv, AVFormatContext *s, uint8_t *
- return AVERROR_INVALIDDATA;
- }
- data_len[j] = len;
-- xd_size += len;
-+ xd_size += len + 1 + len/255;
- }
-
-- ret = ff_alloc_extradata(st->codecpar, 64 + xd_size + xd_size / 255);
-+ ret = ff_alloc_extradata(st->codecpar, xd_size);
- if (ret < 0)
- return ret;
-
-@@ -405,9 +406,7 @@ static int track_header(VividasDemuxContext *viv, AVFormatContext *s, uint8_t *
-
- for (j = 0; j < num_data - 1; j++) {
- unsigned delta = av_xiphlacing(&p[offset], data_len[j]);
-- if (delta > data_len[j]) {
-- return AVERROR_INVALIDDATA;
-- }
-+ av_assert0(delta <= xd_size - offset);
- offset += delta;
- }
-
-@@ -418,6 +417,7 @@ static int track_header(VividasDemuxContext *viv, AVFormatContext *s, uint8_t *
- av_freep(&st->codecpar->extradata);
- break;
- }
-+ av_assert0(data_len[j] <= xd_size - offset);
- offset += data_len[j];
- }
-
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2020-35965.patch b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2020-35965.patch
deleted file mode 100644
index ddab8e9ac..000000000
--- a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2020-35965.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 3e5959b3457f7f1856d997261e6ac672bba49e8b Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michael@niedermayer.cc>
-Date: Sat, 24 Oct 2020 22:21:48 +0200
-Subject: [PATCH] avcodec/exr: Check ymin vs. h
-
-Fixes: out of array access
-Fixes: 26532/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_EXR_fuzzer-5613925708857344
-Fixes: 27443/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_EXR_fuzzer-5631239813595136
-
-Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
-Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-
-Upstream-Status: Backport [https://github.com/FFmpeg/FFmpeg/commit/3e5959b3457f7f1856d997261e6ac672bba49e8b]
-
-CVE: CVE-2020-35965
-
-Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-Signed-off-by: Khairul Rohaizzat Jamaluddin <khairul.rohaizzat.jamaluddin@intel.com>
----
- libavcodec/exr.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libavcodec/exr.c b/libavcodec/exr.c
-index e907c5c46401..8b701d1cd298 100644
---- a/libavcodec/exr.c
-+++ b/libavcodec/exr.c
-@@ -1830,7 +1830,7 @@ static int decode_frame(AVCodecContext *avctx, void *data,
- // Zero out the start if ymin is not 0
- for (i = 0; i < planes; i++) {
- ptr = picture->data[i];
-- for (y = 0; y < s->ymin; y++) {
-+ for (y = 0; y < FFMIN(s->ymin, s->h); y++) {
- memset(ptr, 0, out_line_size);
- ptr += picture->linesize[i];
- }
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.3.1.bb b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.3.2.bb
index bd2155233..08be38ca5 100644
--- a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.3.1.bb
+++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.3.2.bb
@@ -25,12 +25,9 @@ LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz \
file://mips64_cpu_detection.patch \
- file://0001-lavf-srt-fix-build-fail-when-used-the-libsrt-1.4.1.patch \
file://0001-libavutil-include-assembly-with-full-path-from-sourc.patch \
- file://CVE-2020-35964.patch \
- file://CVE-2020-35965.patch \
"
-SRC_URI[sha256sum] = "ad009240d46e307b4e03a213a0f49c11b650e445b1f8be0dda2a9212b34d2ffb"
+SRC_URI[sha256sum] = "46e4e64f1dd0233cbc0934b9f1c0da676008cad34725113fb7f802cfa84ccddb"
# Build fails when thumb is enabled: https://bugzilla.yoctoproject.org/show_bug.cgi?id=7717
ARM_INSTRUCTION_SET_armv4 = "arm"
@@ -46,7 +43,7 @@ DEPENDS = "nasm-native"
inherit autotools pkgconfig
PACKAGECONFIG ??= "avdevice avfilter avcodec avformat swresample swscale postproc avresample \
- alsa bzlib gpl lzma pic pthreads shared theora x264 zlib \
+ alsa bzlib lzma pic pthreads shared theora zlib \
${@bb.utils.contains('AVAILTUNES', 'mips32r2', 'mips32r2', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xv xcb', '', d)}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.3.bb b/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.4.bb
index bad992175..2a56967f7 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.3.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.4.bb
@@ -12,7 +12,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-devtools/gst-devtools-${PV}
file://0001-connect-has-a-different-signature-on-musl.patch \
"
-SRC_URI[sha256sum] = "3025fee3607caf5069154c099533785675916e044ee92c936bbeacdda3750f26"
+SRC_URI[sha256sum] = "ffbd194c40912cb5e7fca2863648bf9dd8257b7af97d3a60c4fcd4efd8526ccf"
DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base"
RRECOMMENDS_${PN} = "git"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.3.bb b/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.4.bb
index b49201fb0..4670ab34d 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.3.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.4.bb
@@ -12,7 +12,7 @@ SRC_URI = "git://gitlab.freedesktop.org/gstreamer/gst-examples.git;protocol=http
file://gst-player.desktop \
"
-SRCREV = "06599904baa5d0e47b5cb9501372156567760f8e"
+SRCREV = "959bb246a5b1f5f9c78557da11c3f22b42ff89c0"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.3.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.4.bb
index baf87fd87..6a84f92f3 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.3.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.4.bb
@@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \
"
SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz"
-SRC_URI[sha256sum] = "ad20546bcd78ac1e7cf194666d73c4f33efeb62647d2b6af22993b540699e91c"
+SRC_URI[sha256sum] = "344a463badca216c2cef6ee36f9510c190862bdee48dc4591c0a430df7e8c396"
S = "${WORKDIR}/gst-libav-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.3.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.4.bb
index d55f45ac6..d38be035f 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.3.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.4.bb
@@ -10,7 +10,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
SRC_URI = "https://gstreamer.freedesktop.org/src/gst-omx/gst-omx-${PV}.tar.xz"
-SRC_URI[sha256sum] = "ed0f26504e9a60e15055134410f156e40952336410f2a59bdbbda45e61e8b93f"
+SRC_URI[sha256sum] = "e35051cf891eb2f31d6fcf176ff37d985f97f33874ac31b0b3ad3b5b95035043"
S = "${WORKDIR}/gst-omx-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.3.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.4.bb
index b1e3664cb..ce2082ee3 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.3.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.4.bb
@@ -11,7 +11,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad
file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \
file://0005-msdk-fix-includedir-path.patch \
"
-SRC_URI[sha256sum] = "b7e34b6b86272588fbd8b314dadfa6ceff895198cfb59e2950378e9e31ff22e0"
+SRC_URI[sha256sum] = "74e806bc5595b18c70e9ca93571e27e79dfb808e5d2e7967afa952b52e99c85f"
S = "${WORKDIR}/gst-plugins-bad-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.3.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.4.bb
index 86b0f2790..728a99e08 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.3.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.4.bb
@@ -12,7 +12,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-ba
file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch \
file://0004-glimagesink-Downrank-to-marginal.patch \
"
-SRC_URI[sha256sum] = "dbfa20283848f0347a223dd8523dfb62e09e5220b21b1d157a8b0c8b67ba9f52"
+SRC_URI[sha256sum] = "29e53229a84d01d722f6f6db13087231cdf6113dd85c25746b9b58c3d68e8323"
S = "${WORKDIR}/gst-plugins-base-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0002-rtpjitterbuffer-Fix-parsing-of-the-mediaclk-direct-f.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0002-rtpjitterbuffer-Fix-parsing-of-the-mediaclk-direct-f.patch
new file mode 100644
index 000000000..14a9fe23a
--- /dev/null
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0002-rtpjitterbuffer-Fix-parsing-of-the-mediaclk-direct-f.patch
@@ -0,0 +1,33 @@
+From ec1949dffd931d0ec7e4f67108a08ab1e2af0cfe Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
+Date: Tue, 16 Mar 2021 19:25:36 +0200
+Subject: [PATCH] rtpjitterbuffer: Fix parsing of the mediaclk:direct= field
+
+Due to an off-by-one when parsing the string, the most significant digit
+or the clock offset was skipped when parsing the offset.
+
+Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/910>
+
+Upstream-Status: Backport [b5bb4ede3a42273fafc1054f9cf106ca527e3c26]
+
+Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
+---
+ gst/rtpmanager/gstrtpjitterbuffer.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gst/rtpmanager/gstrtpjitterbuffer.c b/gst/rtpmanager/gstrtpjitterbuffer.c
+index 60d8ad875..02fe15adc 100644
+--- a/gst/rtpmanager/gstrtpjitterbuffer.c
++++ b/gst/rtpmanager/gstrtpjitterbuffer.c
+@@ -1534,7 +1534,7 @@ gst_jitter_buffer_sink_parse_caps (GstRtpJitterBuffer * jitterbuffer,
+ GST_DEBUG_OBJECT (jitterbuffer, "Got media clock %s", mediaclk);
+
+ if (!g_str_has_prefix (mediaclk, "direct=") ||
+- !g_ascii_string_to_unsigned (&mediaclk[8], 10, 0, G_MAXUINT64,
++ !g_ascii_string_to_unsigned (&mediaclk[7], 10, 0, G_MAXUINT64,
+ &clock_offset, NULL))
+ GST_FIXME_OBJECT (jitterbuffer, "Unsupported media clock");
+ if (strstr (mediaclk, "rate=") != NULL) {
+--
+2.31.0
+
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.3.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.4.bb
index 93c6616c3..07cacdc68 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.3.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.4.bb
@@ -6,9 +6,10 @@ BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues
SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz \
file://0001-qt-include-ext-qt-gstqtgl.h-instead-of-gst-gl-gstglf.patch \
+ file://0002-rtpjitterbuffer-Fix-parsing-of-the-mediaclk-direct-f.patch \
"
-SRC_URI[sha256sum] = "9b3b8e05d4d6073bf929fb33e2d8f74dd81ff21fa5b50c3273c78dfa2ab9c5cb"
+SRC_URI[sha256sum] = "b6e50e3a9bbcd56ee6ec71c33aa8332cc9c926b0c1fae995aac8b3040ebe39b0"
S = "${WORKDIR}/gst-plugins-good-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.3.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.4.bb
index 876a9268a..932fa7f6f 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.3.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.4.bb
@@ -13,7 +13,7 @@ LICENSE_FLAGS = "commercial"
SRC_URI = " \
https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \
"
-SRC_URI[sha256sum] = "70f7429b25dd2f714eb18e80af61b1363b1f63019e16cd28e086e3a619eaa992"
+SRC_URI[sha256sum] = "218df0ce0d31e8ca9cdeb01a3b0c573172cc9c21bb3d41811c7820145623d13c"
S = "${WORKDIR}/gst-plugins-ugly-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.3.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.4.bb
index 90b6fc38d..49de3dac8 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.3.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.4.bb
@@ -8,7 +8,7 @@ LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740"
SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "4e630735276e08ff4d70337aa5d91fd008e5f1ed3dc0993674cd5820e264259a"
+SRC_URI[sha256sum] = "cb68e08a7e825e08b83a12a22dcd6e4f1b328a7b02a7ac84f42f68f4ddc7098e"
DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
RDEPENDS_${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.3.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.4.bb
index d6aaa5df7..f7bfe9898 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.3.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.4.bb
@@ -10,7 +10,7 @@ PNREAL = "gst-rtsp-server"
SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "4f7757293b3d73dc49768b7392791668c4d0c21d41824624ffbd75c7f9ee0168"
+SRC_URI[sha256sum] = "a46bb8de40b971a048580279d2660e616796f871ad3ed00c8a95fe4d273a6c94"
S = "${WORKDIR}/${PNREAL}-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.3.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.4.bb
index 23040ad73..a268d7954 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.3.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.4.bb
@@ -1,4 +1,5 @@
SUMMARY = "VA-API support to GStreamer"
+HOMEPAGE = "https://gstreamer.freedesktop.org/"
DESCRIPTION = "gstreamer-vaapi consists of a collection of VA-API \
based plugins for GStreamer and helper libraries: `vaapidecode', \
`vaapiconvert', and `vaapisink'."
@@ -10,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "ae9877f15757a661d4dfe6a09755a2faa959ab60752f14ca26b7ff10765e1f12"
+SRC_URI[sha256sum] = "92db98af86f3150d429c9ab17e88d2364f9c07a140c8f445ed739e8f10252aea"
S = "${WORKDIR}/${REALPN}-${PV}"
DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.3.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.4.bb
index 9cb07726e..856207096 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.3.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.4.bb
@@ -21,7 +21,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.x
file://0003-meson-Add-option-for-installed-tests.patch \
file://0001-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch \
"
-SRC_URI[sha256sum] = "0c2e09e18f2df69a99b5cb3bd53c597b3cc2e35cf6c98043bb86a66f3d312100"
+SRC_URI[sha256sum] = "9aeec99b38e310817012aa2d1d76573b787af47f8a725a65b833880a094dfbc5"
PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
check \
@@ -30,6 +30,7 @@ PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
PACKAGECONFIG[debug] = "-Dgst_debug=true,-Dgst_debug=false"
PACKAGECONFIG[tracer-hooks] = "-Dtracer_hooks=true,-Dtracer_hooks=false"
+PACKAGECONFIG[coretracers] = "-Dcoretracers=enabled,-Dcoretracers=disabled"
PACKAGECONFIG[check] = "-Dcheck=enabled,-Dcheck=disabled"
PACKAGECONFIG[tests] = "-Dtests=enabled -Dinstalled-tests=true,-Dtests=disabled -Dinstalled-tests=false"
PACKAGECONFIG[unwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind"
diff --git a/poky/meta/recipes-rt/rt-tests/rt-tests_1.10.bb b/poky/meta/recipes-rt/rt-tests/rt-tests_1.10.bb
index 2834cabcd..89e3323b6 100644
--- a/poky/meta/recipes-rt/rt-tests/rt-tests_1.10.bb
+++ b/poky/meta/recipes-rt/rt-tests/rt-tests_1.10.bb
@@ -1,5 +1,6 @@
SUMMARY = "Real-Time preemption testcases"
-HOMEPAGE = "https://rt.wiki.kernel.org/index.php/Cyclictest"
+HOMEPAGE = "https://wiki.linuxfoundation.org/realtime/documentation/start"
+DESCRIPTION = "The main aim of the PREEMPT_RT patch is to minimize the amount of kernel code that is non-preemptible Therefore several substitution mechanisms and new mechanisms are implemented."
SECTION = "tests"
DEPENDS = "linux-libc-headers virtual/libc numactl"
LICENSE = "GPLv2 & GPLv2+"
diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/0001-Extend-atomics-check-to-include-1-byte-CAS-test.patch b/poky/meta/recipes-sato/webkit/webkitgtk/0001-Extend-atomics-check-to-include-1-byte-CAS-test.patch
new file mode 100644
index 000000000..93bda4d75
--- /dev/null
+++ b/poky/meta/recipes-sato/webkit/webkitgtk/0001-Extend-atomics-check-to-include-1-byte-CAS-test.patch
@@ -0,0 +1,77 @@
+From 40520b0de69d8ca8e659248f5ffe641f33cc6dee Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 9 Mar 2021 14:16:58 -0800
+Subject: [PATCH] Extend atomics check to include 1-byte CAS test
+
+Rename ATOMIC_INT64_REQUIRES_LIBATOMIC to ATOMICS_REQUIRE_LIBATOMIC so
+it can reflect broader range which is now checked
+
+Rename ATOMIC_INT64_IS_BUILTIN to ATOMICS_ARE_BUILTIN
+
+Upstream-Status: Submitted [https://bugs.webkit.org/attachment.cgi?bugid=222959]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Source/JavaScriptCore/CMakeLists.txt | 2 +-
+ Source/WebKit/CMakeLists.txt | 2 +-
+ Source/cmake/WebKitCompilerFlags.cmake | 15 ++++++++++-----
+ 3 files changed, 12 insertions(+), 7 deletions(-)
+
+--- a/Source/JavaScriptCore/CMakeLists.txt
++++ b/Source/JavaScriptCore/CMakeLists.txt
+@@ -129,7 +129,7 @@ if (USE_CAPSTONE)
+ list(APPEND JavaScriptCore_LIBRARIES capstone)
+ endif ()
+
+-if (ATOMIC_INT64_REQUIRES_LIBATOMIC)
++if (ATOMICS_REQUIRE_LIBATOMIC)
+ list(APPEND JavaScriptCore_LIBRARIES atomic)
+ endif ()
+
+--- a/Source/WebKit/CMakeLists.txt
++++ b/Source/WebKit/CMakeLists.txt
+@@ -337,7 +337,7 @@ if (USE_LIBWEBRTC)
+ list(APPEND WebKit_LIBRARIES webrtc)
+ endif ()
+
+-if (ATOMIC_INT64_REQUIRES_LIBATOMIC)
++if (ATOMICS_REQUIRE_LIBATOMIC)
+ list(APPEND WebKit_PRIVATE_LIBRARIES atomic)
+ endif ()
+
+--- a/Source/cmake/WebKitCompilerFlags.cmake
++++ b/Source/cmake/WebKitCompilerFlags.cmake
+@@ -280,12 +280,17 @@ endif ()
+ if (COMPILER_IS_GCC_OR_CLANG)
+ set(ATOMIC_TEST_SOURCE "
+ #include <atomic>
+- int main() { std::atomic<int64_t> i(0); i++; return 0; }
++ int main() {
++ std::atomic<int64_t> i(0);
++ std::atomic<int8_t> j(0);
++ i++; j++;
++ return 0;
++ }
+ ")
+- check_cxx_source_compiles("${ATOMIC_TEST_SOURCE}" ATOMIC_INT64_IS_BUILTIN)
+- if (NOT ATOMIC_INT64_IS_BUILTIN)
++ check_cxx_source_compiles("${ATOMIC_TEST_SOURCE}" ATOMICS_ARE_BUILTIN)
++ if (NOT ATOMICS_ARE_BUILTIN)
+ set(CMAKE_REQUIRED_LIBRARIES atomic)
+- check_cxx_source_compiles("${ATOMIC_TEST_SOURCE}" ATOMIC_INT64_REQUIRES_LIBATOMIC)
++ check_cxx_source_compiles("${ATOMIC_TEST_SOURCE}" ATOMICS_REQUIRE_LIBATOMIC)
+ unset(CMAKE_REQUIRED_LIBRARIES)
+ endif ()
+ endif ()
+--- a/Source/WTF/wtf/CMakeLists.txt
++++ b/Source/WTF/wtf/CMakeLists.txt
+@@ -529,6 +529,10 @@ list(APPEND WTF_LIBRARIES
+ ICU::uc
+ )
+
++if (ATOMICS_REQUIRE_LIBATOMIC)
++ list(APPEND WTF_LIBRARIES atomic)
++endif ()
++
+ set(WTF_INTERFACE_LIBRARIES WTF)
+ set(WTF_INTERFACE_INCLUDE_DIRECTORIES ${WTF_FRAMEWORK_HEADERS_DIR})
+ set(WTF_INTERFACE_DEPENDENCIES WTF_CopyHeaders)
diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch b/poky/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch
index 6dcb52956..a13b394fd 100644
--- a/poky/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch
+++ b/poky/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch
@@ -11,11 +11,9 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Source/WTF/wtf/PlatformHave.h | 2 +-
2 files changed, 6 insertions(+), 6 deletions(-)
-diff --git a/Source/JavaScriptCore/runtime/MachineContext.h b/Source/JavaScriptCore/runtime/MachineContext.h
-index c5052527..95ef98b5 100644
--- a/Source/JavaScriptCore/runtime/MachineContext.h
+++ b/Source/JavaScriptCore/runtime/MachineContext.h
-@@ -196,7 +196,7 @@ static inline void*& stackPointerImpl(mcontext_t& machineContext)
+@@ -196,7 +196,7 @@ static inline void*& stackPointerImpl(mc
#error Unknown Architecture
#endif
@@ -24,7 +22,7 @@ index c5052527..95ef98b5 100644
#if CPU(X86)
return reinterpret_cast<void*&>((uintptr_t&) machineContext.gregs[REG_ESP]);
-@@ -347,7 +347,7 @@ static inline void*& framePointerImpl(mcontext_t& machineContext)
+@@ -347,7 +347,7 @@ static inline void*& framePointerImpl(mc
#error Unknown Architecture
#endif
@@ -33,7 +31,7 @@ index c5052527..95ef98b5 100644
// The following sequence depends on glibc's sys/ucontext.h.
#if CPU(X86)
-@@ -498,7 +498,7 @@ static inline void*& instructionPointerImpl(mcontext_t& machineContext)
+@@ -498,7 +498,7 @@ static inline void*& instructionPointerI
#error Unknown Architecture
#endif
@@ -42,7 +40,7 @@ index c5052527..95ef98b5 100644
// The following sequence depends on glibc's sys/ucontext.h.
#if CPU(X86)
-@@ -656,7 +656,7 @@ inline void*& argumentPointer<1>(mcontext_t& machineContext)
+@@ -656,7 +656,7 @@ inline void*& argumentPointer<1>(mcontex
#error Unknown Architecture
#endif
@@ -51,7 +49,7 @@ index c5052527..95ef98b5 100644
// The following sequence depends on glibc's sys/ucontext.h.
#if CPU(X86)
-@@ -773,7 +773,7 @@ inline void*& llintInstructionPointer(mcontext_t& machineContext)
+@@ -773,7 +773,7 @@ inline void*& llintInstructionPointer(mc
#error Unknown Architecture
#endif
@@ -60,11 +58,9 @@ index c5052527..95ef98b5 100644
// The following sequence depends on glibc's sys/ucontext.h.
#if CPU(X86)
-diff --git a/Source/WTF/wtf/PlatformHave.h b/Source/WTF/wtf/PlatformHave.h
-index daca20fe..53eae6ba 100644
--- a/Source/WTF/wtf/PlatformHave.h
+++ b/Source/WTF/wtf/PlatformHave.h
-@@ -222,7 +222,7 @@
+@@ -202,7 +202,7 @@
#define HAVE_HOSTED_CORE_ANIMATION 1
#endif
@@ -73,3 +69,23 @@ index daca20fe..53eae6ba 100644
#define HAVE_MACHINE_CONTEXT 1
#endif
+--- a/Source/WebCore/xml/XPathGrammar.cpp
++++ b/Source/WebCore/xml/XPathGrammar.cpp
+@@ -966,7 +966,7 @@ int yydebug;
+ #if YYERROR_VERBOSE
+
+ # ifndef yystrlen
+-# if defined __GLIBC__ && defined _STRING_H
++# if defined __linux__ && defined _STRING_H
+ # define yystrlen strlen
+ # else
+ /* Return the length of YYSTR. */
+@@ -989,7 +989,7 @@ yystrlen (yystr)
+ # endif
+
+ # ifndef yystpcpy
+-# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
++# if defined __linux__ && defined _STRING_H && defined _GNU_SOURCE
+ # define yystpcpy stpcpy
+ # else
+ /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/include_array.patch b/poky/meta/recipes-sato/webkit/webkitgtk/include_array.patch
deleted file mode 100644
index 7268b04bf..000000000
--- a/poky/meta/recipes-sato/webkit/webkitgtk/include_array.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Added missing include for std::array
-
-Upstream-Status: Submitted [https://bugs.webkit.org/show_bug.cgi?id=197085]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
---- webkitgtk-2.24.0/Source/JavaScriptCore/assembler/PerfLog.cpp.org 2019-04-18 18:03:50.226231691 -0700
-+++ webkitgtk-2.24.0/Source/JavaScriptCore/assembler/PerfLog.cpp 2019-04-18 18:07:28.569153989 -0700
-@@ -31,6 +31,7 @@
- #include <elf.h>
- #include <fcntl.h>
- #include <mutex>
-+#include <array>
- #include <sys/mman.h>
- #include <sys/stat.h>
- #include <sys/syscall.h>
diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/musl-lower-stack-usage.patch b/poky/meta/recipes-sato/webkit/webkitgtk/musl-lower-stack-usage.patch
new file mode 100644
index 000000000..dc3a71d93
--- /dev/null
+++ b/poky/meta/recipes-sato/webkit/webkitgtk/musl-lower-stack-usage.patch
@@ -0,0 +1,74 @@
+reduce thread stack and heap usage for javascriptcore on musl
+
+default sizes for musl are smaller compared to glibc, this matches
+to musl defaults, avoid stack overflow crashes in jscore
+
+This is based on Alpine Linux's patch based on suggestion from
+https://bugs.webkit.org/show_bug.cgi?id=187485
+
+Real solution would entail more as the suggestions to increase
+stack size via -Wl,-z,stack-size=N does not work fully and also
+setting DEFAULT_THREAD_STACK_SIZE_IN_KB alone is not enough either
+
+This patch only changes behavior when using musl, the defaults for
+glibc in OE remains same
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/Source/JavaScriptCore/runtime/OptionsList.h
++++ b/Source/JavaScriptCore/runtime/OptionsList.h
+@@ -75,6 +75,18 @@ constexpr bool enableWebAssemblyStreamin
+ // On instantiation of the first VM instance, the Options will be write protected
+ // and cannot be modified thereafter.
+
++#if OS(LINUX) && !defined(__GLIBC__)
++// non-glibc options on linux ( musl )
++constexpr unsigned jscMaxPerThreadStack = 128 * KB;
++constexpr unsigned jscSoftReservedZoneSize = 32 * KB;
++constexpr unsigned jscReservedZoneSize = 16 * KB;
++#else
++//default
++constexpr unsigned jscMaxPerThreadStack = 4 * MB;
++constexpr unsigned jscSoftReservedZoneSize = 128 * KB;
++constexpr unsigned jscReservedZoneSize = 64 * KB;
++#endif
++
+ #define FOR_EACH_JSC_OPTION(v) \
+ v(Bool, useKernTCSM, defaultTCSMValue(), Normal, "Note: this needs to go before other options since they depend on this value.") \
+ v(Bool, validateOptions, false, Normal, "crashes if mis-typed JSC options were passed to the VM") \
+@@ -90,9 +102,9 @@ constexpr bool enableWebAssemblyStreamin
+ \
+ v(Bool, reportMustSucceedExecutableAllocations, false, Normal, nullptr) \
+ \
+- v(Unsigned, maxPerThreadStackUsage, 5 * MB, Normal, "Max allowed stack usage by the VM") \
+- v(Unsigned, softReservedZoneSize, 128 * KB, Normal, "A buffer greater than reservedZoneSize that reserves space for stringifying exceptions.") \
+- v(Unsigned, reservedZoneSize, 64 * KB, Normal, "The amount of stack space we guarantee to our clients (and to interal VM code that does not call out to clients).") \
++ v(Unsigned, maxPerThreadStackUsage, jscMaxPerThreadStack, Normal, "Max allowed stack usage by the VM") \
++ v(Unsigned, softReservedZoneSize, jscSoftReservedZoneSize, Normal, "A buffer greater than reservedZoneSize that reserves space for stringifying exceptions.") \
++ v(Unsigned, reservedZoneSize, jscReservedZoneSize, Normal, "The amount of stack space we guarantee to our clients (and to interal VM code that does not call out to clients).") \
+ \
+ v(Bool, crashOnDisallowedVMEntry, ASSERT_ENABLED, Normal, "Forces a crash if we attempt to enter the VM when disallowed") \
+ v(Bool, crashIfCantAllocateJITMemory, false, Normal, nullptr) \
+@@ -601,7 +613,7 @@ public:
+ bool init(const char*);
+ bool isInRange(unsigned);
+ const char* rangeString() const { return (m_state > InitError) ? m_rangeString : s_nullRangeStr; }
+-
++
+ void dump(PrintStream& out) const;
+
+ private:
+--- a/Source/WTF/wtf/Threading.h
++++ b/Source/WTF/wtf/Threading.h
+@@ -56,6 +56,10 @@
+ #include <array>
+ #endif
+
++#if OS(LINUX) && !defined(__GLIBC__)
++#define DEFAULT_THREAD_STACK_SIZE_IN_KB 128
++#endif
++
+ namespace WTF {
+
+ class AbstractLocker;
diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/reduce-memory-overheads.patch b/poky/meta/recipes-sato/webkit/webkitgtk/reduce-memory-overheads.patch
new file mode 100644
index 000000000..0493150a9
--- /dev/null
+++ b/poky/meta/recipes-sato/webkit/webkitgtk/reduce-memory-overheads.patch
@@ -0,0 +1,22 @@
+From: Alberto Garcia <berto@igalia.com>
+Subject: Reduce memory usage when not using the Gold linker
+Bug-Debian: https://bugs.debian.org/949621
+Forwarded: no
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/Source/cmake/OptionsCommon.cmake
++++ b/Source/cmake/OptionsCommon.cmake
+@@ -95,6 +95,12 @@ option(GCC_OFFLINEASM_SOURCE_MAP
+ "Produce debug line information for offlineasm-generated code"
+ ${GCC_OFFLINEASM_SOURCE_MAP_DEFAULT})
+
++# Pass --reduce-memory-overheads to the bfd linker in order to save memory
++if (NOT USE_LD_GOLD)
++ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--reduce-memory-overheads")
++ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--reduce-memory-overheads")
++endif ()
++
+ # Enable the usage of OpenMP.
+ # - At this moment, OpenMP is only used as an alternative implementation
+ # to native threads for the parallelization of the SVG filters.
diff --git a/poky/meta/recipes-sato/webkit/webkitgtk_2.30.5.bb b/poky/meta/recipes-sato/webkit/webkitgtk_2.30.5.bb
index 2928b8e55..cdc3f9b58 100644
--- a/poky/meta/recipes-sato/webkit/webkitgtk_2.30.5.bb
+++ b/poky/meta/recipes-sato/webkit/webkitgtk_2.30.5.bb
@@ -16,9 +16,12 @@ SRC_URI = "https://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \
file://0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch \
file://0001-Enable-THREADS_PREFER_PTHREAD_FLAG.patch \
file://0001-Fix-build-with-musl.patch \
- file://include_array.patch \
file://include_xutil.patch \
+ file://reduce-memory-overheads.patch \
+ file://0001-Extend-atomics-check-to-include-1-byte-CAS-test.patch \
+ file://musl-lower-stack-usage.patch \
"
+
SRC_URI[sha256sum] = "7d0dab08e3c5ae07bec80b2822ef42e952765d5724cac86eb23999bfed5a7f1f"
inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gtk-doc
@@ -55,6 +58,7 @@ PACKAGECONFIG[libhyphen] = "-DUSE_LIBHYPHEN=ON,-DUSE_LIBHYPHEN=OFF,libhyphen"
PACKAGECONFIG[woff2] = "-DUSE_WOFF2=ON,-DUSE_WOFF2=OFF,woff2"
PACKAGECONFIG[openjpeg] = "-DUSE_OPENJPEG=ON,-DUSE_OPENJPEG=OFF,openjpeg"
PACKAGECONFIG[systemd] = "-DUSE_SYSTEMD=ON,-DUSE_SYSTEMD=off,systemd"
+PACKAGECONFIG[reduce-size] = "-DCMAKE_BUILD_TYPE=MinSizeRel,-DCMAKE_BUILD_TYPE=Release,,"
# webkitgtk is full of /usr/bin/env python, particular for generating docs
do_configure[postfuncs] += "setup_python_link"
@@ -66,7 +70,6 @@ setup_python_link() {
EXTRA_OECMAKE = " \
-DPORT=GTK \
- -DCMAKE_BUILD_TYPE=Release \
${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \
${@bb.utils.contains('GTKDOC_ENABLED', 'True', '-DENABLE_GTKDOC=ON', '-DENABLE_GTKDOC=OFF', d)} \
-DENABLE_MINIBROWSER=ON \
diff --git a/poky/meta/recipes-support/attr/attr_2.4.48.bb b/poky/meta/recipes-support/attr/attr_2.4.48.bb
deleted file mode 100644
index 530d4e488..000000000
--- a/poky/meta/recipes-support/attr/attr_2.4.48.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require attr.inc
-
-SRC_URI[md5sum] = "bc1e5cb5c96d99b24886f1f527d3bb3d"
-SRC_URI[sha256sum] = "5ead72b358ec709ed00bbf7a9eaef1654baad937c001c044fe8b74c57f5324e7"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/attr/attr_2.5.1.bb b/poky/meta/recipes-support/attr/attr_2.5.1.bb
new file mode 100644
index 000000000..5c5f7bcff
--- /dev/null
+++ b/poky/meta/recipes-support/attr/attr_2.5.1.bb
@@ -0,0 +1,5 @@
+require attr.inc
+
+SRC_URI[sha256sum] = "bae1c6949b258a0d68001367ce0c741cebdacdd3b62965d17e5eb23cd78adaf8"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb b/poky/meta/recipes-support/bmap-tools/bmap-tools_3.6.bb
index fd57f8f7f..611c0fb68 100644
--- a/poky/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb
+++ b/poky/meta/recipes-support/bmap-tools/bmap-tools_3.6.bb
@@ -11,13 +11,14 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = "git://github.com/intel/${BPN}"
-SRCREV = "a17f0e3ff8669dd3b1c44a741ae4f8162155faed"
+SRCREV = "c0673962a8ec1624b5189dc1d24f33fe4f06785a"
S = "${WORKDIR}/git"
PV .= "+git${SRCPV}"
UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
-RDEPENDS_${PN} = "python3-core python3-compression python3-mmap python3-setuptools python3-fcntl python3-six"
+# Need df from coreutils
+RDEPENDS_${PN} = "python3-core python3-compression python3-mmap python3-setuptools python3-fcntl python3-six coreutils"
inherit python3native
inherit setuptools3
diff --git a/poky/meta/recipes-support/boost/boost-build-native_4.3.0.bb b/poky/meta/recipes-support/boost/boost-build-native_4.3.0.bb
index 258f8c9cd..19e991e65 100644
--- a/poky/meta/recipes-support/boost/boost-build-native_4.3.0.bb
+++ b/poky/meta/recipes-support/boost/boost-build-native_4.3.0.bb
@@ -1,4 +1,6 @@
SUMMARY = "Boost.Build"
+DESCRIPTION = "B2 makes it easy to build C++ projects, everywhere."
+HOMEPAGE = "https://github.com/boostorg/build"
SECTION = "devel"
LICENSE = "BSL-1.0"
diff --git a/poky/meta/recipes-support/diffoscope/diffoscope_168.bb b/poky/meta/recipes-support/diffoscope/diffoscope_172.bb
index a7cfdf9ff..bf4726e77 100644
--- a/poky/meta/recipes-support/diffoscope/diffoscope_168.bb
+++ b/poky/meta/recipes-support/diffoscope/diffoscope_172.bb
@@ -12,7 +12,7 @@ PYPI_PACKAGE = "diffoscope"
inherit pypi setuptools3
-SRC_URI[sha256sum] = "c6f1dc3e75b7e2e5ceac4f857fbd2ee0ddb3f0169c2b39ea9187af34208e98de"
+SRC_URI[sha256sum] = "5ffe7f38555c6409bc7e7edc277ed77dd78641fe1306fc38d153dbbe445ddea4"
RDEPENDS_${PN} += "binutils vim squashfs-tools python3-libarchive-c python3-magic python3-rpm"
diff --git a/poky/meta/recipes-support/gnutls/gnutls_3.7.0.bb b/poky/meta/recipes-support/gnutls/gnutls_3.7.1.bb
index 1aa94ece3..51d472c82 100644
--- a/poky/meta/recipes-support/gnutls/gnutls_3.7.0.bb
+++ b/poky/meta/recipes-support/gnutls/gnutls_3.7.1.bb
@@ -23,7 +23,7 @@ SRC_URI = "https://www.gnupg.org/ftp/gcrypt/gnutls/v${SHRT_VER}/gnutls-${PV}.tar
file://arm_eabi.patch \
"
-SRC_URI[sha256sum] = "49e2a22691d252c9f24a9829b293a8f359095bc5a818351f05f1c0a5188a1df8"
+SRC_URI[sha256sum] = "3777d7963eca5e06eb315686163b7b3f5045e2baac5e54e038ace9835e5cac6f"
inherit autotools texinfo pkgconfig gettext lib_package gtk-doc
diff --git a/poky/meta/recipes-support/iso-codes/iso-codes_4.5.0.bb b/poky/meta/recipes-support/iso-codes/iso-codes_4.6.0.bb
index 9e02a0fa1..f915716ce 100644
--- a/poky/meta/recipes-support/iso-codes/iso-codes_4.5.0.bb
+++ b/poky/meta/recipes-support/iso-codes/iso-codes_4.6.0.bb
@@ -8,8 +8,8 @@ BUGTRACKER = "https://salsa.debian.org/iso-codes-team/iso-codes/issues"
LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
-SRC_URI = "git://salsa.debian.org/iso-codes-team/iso-codes.git;protocol=http;branch=main;"
-SRCREV = "a36019e5014bff251f83d522ddcfebaecf52afd3"
+SRC_URI = "git://salsa.debian.org/iso-codes-team/iso-codes.git;protocol=https;branch=main;"
+SRCREV = "3c012d266acaeda93d3e61ec11b8c18c1964fce1"
# inherit gettext cannot be used, because it adds gettext-native to BASEDEPENDS which
# are inhibited by allarch
diff --git a/poky/meta/recipes-support/libical/libical/0001-Fix-build-with-icu-68.1.patch b/poky/meta/recipes-support/libical/libical/0001-Fix-build-with-icu-68.1.patch
deleted file mode 100644
index 79e1475c6..000000000
--- a/poky/meta/recipes-support/libical/libical/0001-Fix-build-with-icu-68.1.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From 52d603212173d4502800bf746436a93f806a8898 Mon Sep 17 00:00:00 2001
-From: Allen Winter <allen.winter@kdab.com>
-Date: Sat, 31 Oct 2020 17:38:01 -0400
-Subject: [PATCH] Fix build with icu-68.1
-
-Use stdbool.h to define true and false when possible
-
-Issue#448
----
- ConfigureChecks.cmake | 1 +
- config.h.cmake | 3 +++
- src/libical/icalrecur.c | 10 ++++++++--
- 3 files changed, 12 insertions(+), 2 deletions(-)
-
-diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake
-index e4d0e2ec..bba33fa9 100644
---- a/ConfigureChecks.cmake
-+++ b/ConfigureChecks.cmake
-@@ -10,6 +10,7 @@ check_include_files(sys/utsname.h HAVE_SYS_UTSNAME_H)
- check_include_files(fcntl.h HAVE_FCNTL_H)
- check_include_files(unistd.h HAVE_UNISTD_H)
- check_include_files(wctype.h HAVE_WCTYPE_H)
-+check_include_files(stdbool.h HAVE_STDBOOL_H)
-
- include(CheckFunctionExists)
- if(WIN32 AND MSVC)
-diff --git a/config.h.cmake b/config.h.cmake
-index 8fd3421b..c8008692 100644
---- a/config.h.cmake
-+++ b/config.h.cmake
-@@ -39,6 +39,9 @@
- /* Define to 1 if you have the <dirent.h> header file. */
- #cmakedefine HAVE_DIRENT_H 1
-
-+/* Define to 1 if you have the <stdbool.h> header file. */
-+#cmakedefine HAVE_STDBOOL_H 1
-+
- /* Define if we have pthread. */
- #cmakedefine HAVE_PTHREAD_ATTR_GET_NP 1
- #cmakedefine HAVE_PTHREAD_GETATTR_NP 1
-diff --git a/src/libical/icalrecur.c b/src/libical/icalrecur.c
-index 73178450..b3f054b8 100644
---- a/src/libical/icalrecur.c
-+++ b/src/libical/icalrecur.c
-@@ -145,6 +145,12 @@
- #if defined(HAVE_LIBICU)
- #include <unicode/ucal.h>
- #include <unicode/ustring.h>
-+#if defined(HAVE_STDBOOL_H)
-+#include <stdbool.h>
-+#else
-+#define false 0
-+#define true 1
-+#endif
- #define RSCALE_IS_SUPPORTED 1
- #else
- #define RSCALE_IS_SUPPORTED 0
-@@ -1018,7 +1024,7 @@ icalarray *icalrecurrencetype_rscale_supported_calendars(void)
-
- calendars = icalarray_new(sizeof(const char **), 20);
-
-- en = ucal_getKeywordValuesForLocale("calendar", NULL, FALSE, &status);
-+ en = ucal_getKeywordValuesForLocale("calendar", NULL, false, &status);
- while ((cal = uenum_next(en, NULL, &status))) {
- cal = icalmemory_tmp_copy(cal);
- icalarray_append(calendars, &cal);
-@@ -1411,7 +1417,7 @@ static int initialize_rscale(icalrecur_iterator *impl)
- }
-
- /* Check if specified calendar is supported */
-- en = ucal_getKeywordValuesForLocale("calendar", NULL, FALSE, &status);
-+ en = ucal_getKeywordValuesForLocale("calendar", NULL, false, &status);
- while ((cal = uenum_next(en, NULL, &status))) {
- if (!strcmp(cal, rule.rscale)) {
- is_hebrew = !strcmp(rule.rscale, "hebrew");
---
-2.25.1
-
diff --git a/poky/meta/recipes-support/libical/libical/0001-Use-our-hand-build-native-src-generator.patch b/poky/meta/recipes-support/libical/libical/0001-Use-our-hand-build-native-src-generator.patch
deleted file mode 100644
index b7b757d74..000000000
--- a/poky/meta/recipes-support/libical/libical/0001-Use-our-hand-build-native-src-generator.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From e33bc310238bba1690f2c71ad333e10b9e422ea9 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Sat, 19 Oct 2019 14:23:06 +0200
-Subject: [PATCH] Use our hand-build native src-generator
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-Status: Inappropriate [oe-core specific]
-
-Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
----
- src/libical-glib/CMakeLists.txt | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/libical-glib/CMakeLists.txt b/src/libical-glib/CMakeLists.txt
-index f3704e6..ce9db16 100644
---- a/src/libical-glib/CMakeLists.txt
-+++ b/src/libical-glib/CMakeLists.txt
-@@ -63,8 +63,8 @@ endforeach()
-
- add_custom_command (
- OUTPUT ${LIBICAL_GLIB_SOURCES} ${CMAKE_CURRENT_BINARY_DIR}/libical-glib-private.h ${CMAKE_CURRENT_BINARY_DIR}/i-cal-forward-declarations.h
-- COMMAND ${EXECUTABLE_OUTPUT_PATH}/src-generator "${CMAKE_CURRENT_SOURCE_DIR}/tools" "${CMAKE_CURRENT_SOURCE_DIR}/api"
-- DEPENDS ${EXECUTABLE_OUTPUT_PATH}/src-generator ${xml_files}
-+ COMMAND ${CMAKE_BINARY_DIR}/src-generator "${CMAKE_CURRENT_SOURCE_DIR}/tools" "${CMAKE_CURRENT_SOURCE_DIR}/api"
-+ DEPENDS ${CMAKE_BINARY_DIR}/src-generator ${xml_files}
- )
-
- configure_file(
---
-2.21.0
-
diff --git a/poky/meta/recipes-support/libical/libical_3.0.8.bb b/poky/meta/recipes-support/libical/libical_3.0.9.bb
index ffc117d43..4c7027d14 100644
--- a/poky/meta/recipes-support/libical/libical_3.0.8.bb
+++ b/poky/meta/recipes-support/libical/libical_3.0.9.bb
@@ -12,23 +12,14 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=1910a2a76ddf6a9ba369182494170d87 \
"
SECTION = "libs"
-SRC_URI = " \
- https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.gz \
- file://0001-Use-our-hand-build-native-src-generator.patch \
- file://0001-Fix-build-with-icu-68.1.patch \
+SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.gz \
"
-SRC_URI[md5sum] = "41bd1f1fcdcb4779cea478bb55cf07bf"
-SRC_URI[sha256sum] = "09fecacaf75ba5a242159e3a9758a5446b5ce4d0ab684f98a7040864e1d1286f"
+SRC_URI[sha256sum] = "bd26d98b7fcb2eb0cd5461747bbb02024ebe38e293ca53a7dfdcb2505265a728"
UPSTREAM_CHECK_URI = "https://github.com/libical/libical/releases"
inherit cmake pkgconfig
-do_compile_prepend() {
- # As long as https://github.com/libical/libical/issues/394 is open build native src-generator manually
- NATIVE_CFLAGS="${BUILD_CFLAGS} `pkg-config-native --cflags glib-2.0` `pkg-config-native --cflags libxml-2.0`"
- NATIVE_LDFLAGS="${BUILD_LDFLAGS} `pkg-config-native --libs glib-2.0` `pkg-config-native --libs libxml-2.0`"
- ${BUILD_CC} $NATIVE_CFLAGS ${S}/src/libical-glib/tools/generator.c ${S}/src/libical-glib/tools/xml-parser.c -o ${B}/src-generator $NATIVE_LDFLAGS
-}
+DEPENDS_append_class-target = "libical-native"
PACKAGECONFIG ??= "icu glib"
PACKAGECONFIG[bdb] = ",-DCMAKE_DISABLE_FIND_PACKAGE_BDB=True,db"
@@ -41,10 +32,15 @@ EXTRA_OECMAKE += "-DPERL_EXECUTABLE=${HOSTTOOLS_DIR}/perl"
# doc build fails with linker error (??) for libical-glib so disable it
EXTRA_OECMAKE += "-DICAL_BUILD_DOCS=false"
+EXTRA_OECMAKE_append_class-target = " -DIMPORT_ICAL_GLIB_SRC_GENERATOR=${STAGING_LIBDIR_NATIVE}/cmake/LibIcal/IcalGlibSrcGenerator.cmake"
+
do_install_append () {
# Remove build host references
sed -i \
-e 's,${STAGING_LIBDIR},${libdir},g' \
-e 's,${STAGING_INCDIR},${includedir},g' \
- ${D}${libdir}/cmake/LibIcal/LibIcal*.cmake
+ ${D}${libdir}/cmake/LibIcal/LibIcal*.cmake \
+ ${D}${libdir}/cmake/LibIcal/Ical*.cmake
}
+
+BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-support/libunistring/libunistring/iconv-m4-remove-the-test-to-convert-euc-jp.patch b/poky/meta/recipes-support/libunistring/libunistring/iconv-m4-remove-the-test-to-convert-euc-jp.patch
deleted file mode 100644
index 9e8ce2270..000000000
--- a/poky/meta/recipes-support/libunistring/libunistring/iconv-m4-remove-the-test-to-convert-euc-jp.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From 30562065ba9e4c238e76100b5f9f0c5add0e635b Mon Sep 17 00:00:00 2001
-From: Jackie Huang <jackie.huang@windriver.com>
-Date: Tue, 5 Dec 2017 09:30:36 +0200
-Subject: [PATCH] remove the test to convert euc-jp
-
-Remove the test "Test against HP-UX 11.11 bug:
-No converter from EUC-JP to UTF-8 is provided"
-since we don't support HP-UX and if the euc-jp is not
-installed on the host, libunistring will be built without
-iconv support and will cause guild-native configure fail.
-
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
----
----
- gnulib-m4/iconv.m4 | 23 -----------------------
- 1 file changed, 23 deletions(-)
-
-diff --git a/gnulib-m4/iconv.m4 b/gnulib-m4/iconv.m4
-index b33ecd0..73b6aa1 100644
---- a/gnulib-m4/iconv.m4
-+++ b/gnulib-m4/iconv.m4
-@@ -165,29 +165,6 @@ AC_DEFUN([AM_ICONV_LINK],
- }
- }
- #endif
-- /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
-- provided. */
-- {
-- /* Try standardized names. */
-- iconv_t cd1 = iconv_open ("UTF-8", "EUC-JP");
-- /* Try IRIX, OSF/1 names. */
-- iconv_t cd2 = iconv_open ("UTF-8", "eucJP");
-- /* Try AIX names. */
-- iconv_t cd3 = iconv_open ("UTF-8", "IBM-eucJP");
-- /* Try HP-UX names. */
-- iconv_t cd4 = iconv_open ("utf8", "eucJP");
-- if (cd1 == (iconv_t)(-1) && cd2 == (iconv_t)(-1)
-- && cd3 == (iconv_t)(-1) && cd4 == (iconv_t)(-1))
-- result |= 16;
-- if (cd1 != (iconv_t)(-1))
-- iconv_close (cd1);
-- if (cd2 != (iconv_t)(-1))
-- iconv_close (cd2);
-- if (cd3 != (iconv_t)(-1))
-- iconv_close (cd3);
-- if (cd4 != (iconv_t)(-1))
-- iconv_close (cd4);
-- }
- return result;
- ]])],
- [am_cv_func_iconv_works=yes], ,
---
-2.4.0
-
diff --git a/poky/meta/recipes-support/libunistring/libunistring_0.9.10.bb b/poky/meta/recipes-support/libunistring/libunistring_0.9.10.bb
index 97fac4ecf..0a7b18ed0 100644
--- a/poky/meta/recipes-support/libunistring/libunistring_0.9.10.bb
+++ b/poky/meta/recipes-support/libunistring/libunistring_0.9.10.bb
@@ -20,7 +20,6 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=6a6a8e020838b23406c81b19c1d46df6 \
"
SRC_URI = "${GNU_MIRROR}/libunistring/libunistring-${PV}.tar.gz \
- file://iconv-m4-remove-the-test-to-convert-euc-jp.patch \
file://0001-Unset-need_charset_alias-when-building-for-musl.patch \
"
SRC_URI[md5sum] = "0d3274e9838396b12200f8b54ddaf43b"
diff --git a/poky/meta/recipes-support/libunwind/libunwind.inc b/poky/meta/recipes-support/libunwind/libunwind.inc
index 76a1bf624..17ba15193 100644
--- a/poky/meta/recipes-support/libunwind/libunwind.inc
+++ b/poky/meta/recipes-support/libunwind/libunwind.inc
@@ -4,6 +4,7 @@ HOMEPAGE = "http://www.nongnu.org/libunwind"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=2d80c8ed4062b8339b715f90fa68cc9f"
DEPENDS += "libatomic-ops"
+DEPENDS_append_libc-musl = " libucontext"
inherit autotools multilib_header
diff --git a/poky/meta/recipes-support/libunwind/libunwind/0001-configure-Do-not-enforce-libdir-for-ppc64.patch b/poky/meta/recipes-support/libunwind/libunwind/0001-configure-Do-not-enforce-libdir-for-ppc64.patch
new file mode 100644
index 000000000..751f1b340
--- /dev/null
+++ b/poky/meta/recipes-support/libunwind/libunwind/0001-configure-Do-not-enforce-libdir-for-ppc64.patch
@@ -0,0 +1,35 @@
+From 154c7465de2aeb9a8ba3416bbed6e6e07f58c583 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 11 Mar 2021 21:52:28 -0800
+Subject: [PATCH] configure: Do not enforce libdir for ppc64
+
+OE has its own multilib configuration, therefore hardcoding libdir
+breaks that, instead respect the settings coming from build environment
+via configure options.
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index c8d68f7..254440f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -206,12 +206,6 @@ fi
+ AM_CONDITIONAL(USE_DWARF, [test x$use_dwarf = xyes])
+ AC_MSG_RESULT([$use_dwarf])
+
+-if test x$target_arch = xppc64; then
+- libdir='${exec_prefix}/lib64'
+- AC_MSG_NOTICE([PowerPC64 detected, lib will be installed ${libdir}]);
+- AC_SUBST([libdir])
+-fi
+-
+ AC_MSG_CHECKING([whether to restrict build to remote support])
+ if test x$target_arch != x$host_arch; then
+ CPPFLAGS="${CPPFLAGS} -DUNW_REMOTE_ONLY"
+--
+2.30.2
+
diff --git a/poky/meta/recipes-support/libunwind/libunwind_1.5.0.bb b/poky/meta/recipes-support/libunwind/libunwind_1.5.0.bb
index 5e4693e20..6392cac5c 100644
--- a/poky/meta/recipes-support/libunwind/libunwind_1.5.0.bb
+++ b/poky/meta/recipes-support/libunwind/libunwind_1.5.0.bb
@@ -6,6 +6,7 @@ SRC_URI = "http://download.savannah.nongnu.org/releases/libunwind/libunwind-${PV
file://0004-Fix-build-on-mips-musl.patch \
file://0005-ppc32-Consider-ucontext-mismatches-between-glibc-and.patch \
file://0006-Fix-for-X32.patch \
+ file://0001-configure-Do-not-enforce-libdir-for-ppc64.patch \
"
SRC_URI_append_libc-musl = " file://musl-header-conflict.patch"
@@ -24,3 +25,4 @@ COMPATIBLE_HOST_riscv32 = "null"
LDFLAGS += "-Wl,-z,relro,-z,now ${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
SECURITY_LDFLAGS_append_libc-musl = " -lssp_nonshared"
+CACHED_CONFIGUREVARS_append_libc-musl = " LDFLAGS='${LDFLAGS} -lucontext'"
diff --git a/poky/meta/recipes-support/lz4/lz4_1.9.3.bb b/poky/meta/recipes-support/lz4/lz4_1.9.3.bb
index 00f2dd32f..effc530b9 100644
--- a/poky/meta/recipes-support/lz4/lz4_1.9.3.bb
+++ b/poky/meta/recipes-support/lz4/lz4_1.9.3.bb
@@ -1,5 +1,6 @@
SUMMARY = "Extremely Fast Compression algorithm"
DESCRIPTION = "LZ4 is a very fast lossless compression algorithm, providing compression speed at 400 MB/s per core, scalable with multi-cores CPU. It also features an extremely fast decoder, with speed in multiple GB/s per core, typically reaching RAM speed limits on multi-core systems."
+HOMEPAGE = "https://github.com/lz4/lz4"
LICENSE = "BSD | BSD-2-Clause | GPL-2.0"
LIC_FILES_CHKSUM = "file://lib/LICENSE;md5=ebc2ea4814a64de7708f1571904b32cc \
diff --git a/poky/meta/recipes-support/lzop/lzop_1.04.bb b/poky/meta/recipes-support/lzop/lzop_1.04.bb
index b50c23043..59c2003b7 100644
--- a/poky/meta/recipes-support/lzop/lzop_1.04.bb
+++ b/poky/meta/recipes-support/lzop/lzop_1.04.bb
@@ -5,6 +5,7 @@ gzip are much higher compression and decompression speed at the cost of some \n\
compression ratio. The lzop compression utility was designed with the goals \n\
of reliability, speed, portability and with reasonable drop-in compatibility \n\
to gzip."
+HOMEPAGE = "http://www.lzop.org/"
DEPENDS += "lzo"
LICENSE = "GPLv2+"
diff --git a/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.0.bb b/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.1.bb
index 8b9938f57..57a3ae005 100644
--- a/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.0.bb
+++ b/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.1.bb
@@ -7,12 +7,11 @@ HOMEPAGE = "http://git.yoctoproject.org/cgit/cgit.cgi/ptest-runner2/about/"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe"
-SRCREV = "834670317bd3f6e427e1ac461c07ada6b8936dfd"
+SRCREV = "cce0edb4282ee081d043030bfdf29f3e4052f86c"
PV .= "+git${SRCPV}"
SRC_URI = "git://git.yoctoproject.org/ptest-runner2 \
"
-UPSTREAM_VERSION_UNKNOWN = "1"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-support/serf/serf_1.3.9.bb b/poky/meta/recipes-support/serf/serf_1.3.9.bb
index dc917fa16..3276d40df 100644
--- a/poky/meta/recipes-support/serf/serf_1.3.9.bb
+++ b/poky/meta/recipes-support/serf/serf_1.3.9.bb
@@ -3,6 +3,7 @@ DESCRIPTION = "The Apache Serf library is a C-based HTTP client library built up
Portable Runtime (APR) library. It multiplexes connections, running the \
read/write communication asynchronously. Memory copies and transformations are \
kept to a minimum to provide high performance operation."
+HOMEPAGE = "http://serf.apache.org/"
SRC_URI = "${APACHE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \
file://norpath.patch \
file://env.patch \
diff --git a/poky/meta/recipes-support/sqlite/sqlite3_3.34.1.bb b/poky/meta/recipes-support/sqlite/sqlite3_3.35.0.bb
index fe5adb221..127065bbc 100644
--- a/poky/meta/recipes-support/sqlite/sqlite3_3.34.1.bb
+++ b/poky/meta/recipes-support/sqlite/sqlite3_3.35.0.bb
@@ -4,7 +4,7 @@ LICENSE = "PD"
LIC_FILES_CHKSUM = "file://sqlite3.h;endline=11;md5=786d3dc581eff03f4fd9e4a77ed00c66"
SRC_URI = "http://www.sqlite.org/2021/sqlite-autoconf-${SQLITE_PV}.tar.gz"
-SRC_URI[sha256sum] = "2a3bca581117b3b88e5361d0ef3803ba6d8da604b1c1a47d902ef785c1b53e89"
+SRC_URI[sha256sum] = "3dfb3f143c83695a555c7dd9e06ed924f9d273c287989874e102656724baf2d0"
# -19242 is only an issue in specific development branch commits
CVE_CHECK_WHITELIST += "CVE-2019-19242"
diff --git a/poky/meta/recipes-support/taglib/taglib/CVE-2017-12678.patch b/poky/meta/recipes-support/taglib/taglib/CVE-2017-12678.patch
deleted file mode 100644
index 4bd9f2be1..000000000
--- a/poky/meta/recipes-support/taglib/taglib/CVE-2017-12678.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From eb9ded1206f18f2c319157337edea2533a40bea6 Mon Sep 17 00:00:00 2001
-From: "Stephen F. Booth" <me@sbooth.org>
-Date: Sun, 23 Jul 2017 10:11:09 -0400
-Subject: [PATCH] Don't assume TDRC is an instance of TextIdentificationFrame
-
-If TDRC is encrypted, FrameFactory::createFrame() returns UnknownFrame
-which causes problems in rebuildAggregateFrames() when it is assumed
-that TDRC is a TextIdentificationFrame
-
-Upstream-Status: Backport
-[https://github.com/taglib/taglib/pull/831/commits/eb9ded1206f18f2c319157337edea2533a40bea6]
-
-CVE: CVE-2017-12678
-
-Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
----
- taglib/mpeg/id3v2/id3v2framefactory.cpp | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/taglib/mpeg/id3v2/id3v2framefactory.cpp b/taglib/mpeg/id3v2/id3v2framefactory.cpp
-index 759a9b7b..9347ab86 100644
---- a/taglib/mpeg/id3v2/id3v2framefactory.cpp
-+++ b/taglib/mpeg/id3v2/id3v2framefactory.cpp
-@@ -334,10 +334,11 @@ void FrameFactory::rebuildAggregateFrames(ID3v2::Tag *tag) const
- tag->frameList("TDAT").size() == 1)
- {
- TextIdentificationFrame *tdrc =
-- static_cast<TextIdentificationFrame *>(tag->frameList("TDRC").front());
-+ dynamic_cast<TextIdentificationFrame *>(tag->frameList("TDRC").front());
- UnknownFrame *tdat = static_cast<UnknownFrame *>(tag->frameList("TDAT").front());
-
-- if(tdrc->fieldList().size() == 1 &&
-+ if(tdrc &&
-+ tdrc->fieldList().size() == 1 &&
- tdrc->fieldList().front().size() == 4 &&
- tdat->data().size() >= 5)
- {
---
-2.13.5
-
diff --git a/poky/meta/recipes-support/taglib/taglib/CVE-2018-11439.patch b/poky/meta/recipes-support/taglib/taglib/CVE-2018-11439.patch
deleted file mode 100644
index cdd66e67f..000000000
--- a/poky/meta/recipes-support/taglib/taglib/CVE-2018-11439.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 272648ccfcccae30e002ccf34a22e075dd477278 Mon Sep 17 00:00:00 2001
-From: Scott Gayou <github.scott@gmail.com>
-Date: Mon, 4 Jun 2018 11:34:36 -0400
-Subject: [PATCH] Fixed OOB read when loading invalid ogg flac file. (#868)
-
-This CVE is caused by a failure to check the minimum length
-of a ogg flac header. This header is detailed in full at:
-https://xiph.org/flac/ogg_mapping.html. Added more strict checking
-for entire header.
-
-Upstream-Status: Backport
-[https://github.com/taglib/taglib/pull/869/commits/272648ccfcccae30e002ccf34a22e075dd477278]
-
-CVE: CVE-2018-11439
-
-Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
----
- taglib/ogg/flac/oggflacfile.cpp | 14 ++++++++++++--
- 1 file changed, 12 insertions(+), 2 deletions(-)
-
-diff --git a/taglib/ogg/flac/oggflacfile.cpp b/taglib/ogg/flac/oggflacfile.cpp
-index 53d0450..07ea9dc 100644
---- a/taglib/ogg/flac/oggflacfile.cpp
-+++ b/taglib/ogg/flac/oggflacfile.cpp
-@@ -231,11 +231,21 @@ void Ogg::FLAC::File::scan()
-
- if(!metadataHeader.startsWith("fLaC")) {
- // FLAC 1.1.2+
-+ // See https://xiph.org/flac/ogg_mapping.html for the header specification.
-+ if(metadataHeader.size() < 13)
-+ return;
-+
-+ if(metadataHeader[0] != 0x7f)
-+ return;
-+
- if(metadataHeader.mid(1, 4) != "FLAC")
- return;
-
-- if(metadataHeader[5] != 1)
-- return; // not version 1
-+ if(metadataHeader[5] != 1 && metadataHeader[6] != 0)
-+ return; // not version 1.0
-+
-+ if(metadataHeader.mid(9, 4) != "fLaC")
-+ return;
-
- metadataHeader = metadataHeader.mid(13);
- }
---
-2.7.4
-
diff --git a/poky/meta/recipes-support/taglib/taglib_1.11.1.bb b/poky/meta/recipes-support/taglib/taglib_1.12.bb
index 165bccadc..efa56253b 100644
--- a/poky/meta/recipes-support/taglib/taglib_1.11.1.bb
+++ b/poky/meta/recipes-support/taglib/taglib_1.12.bb
@@ -9,13 +9,10 @@ LIC_FILES_CHKSUM = "file://COPYING.LGPL;md5=4fbd65380cdd255951079008b364516c \
DEPENDS = "zlib"
-SRC_URI = "http://taglib.github.io/releases/${BP}.tar.gz \
- file://CVE-2017-12678.patch \
- file://CVE-2018-11439.patch \
- "
+SRC_URI = "http://taglib.github.io/releases/${BP}.tar.gz"
-SRC_URI[md5sum] = "cee7be0ccfc892fa433d6c837df9522a"
-SRC_URI[sha256sum] = "b6d1a5a610aae6ff39d93de5efd0fdc787aa9e9dc1e7026fa4c961b26563526b"
+SRC_URI[md5sum] = "4313ed2671234e029b7af8f97c84e9af"
+SRC_URI[sha256sum] = "7fccd07669a523b07a15bd24c8da1bbb92206cb19e9366c3692af3d79253b703"
UPSTREAM_CHECK_URI = "http://github.com/taglib/taglib/releases/"
diff --git a/meta-openembedded/meta-oe/recipes-support/xxhash/xxhash_0.8.0.bb b/poky/meta/recipes-support/xxhash/xxhash_0.8.0.bb
index e437d4d15..9e3887236 100644
--- a/meta-openembedded/meta-oe/recipes-support/xxhash/xxhash_0.8.0.bb
+++ b/poky/meta/recipes-support/xxhash/xxhash_0.8.0.bb
@@ -19,3 +19,5 @@ do_compile () {
do_install () {
oe_runmake DESTDIR=${D} install
}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/site/common-linux b/poky/meta/site/common-linux
index 1c1fdafbb..8f23adeab 100644
--- a/poky/meta/site/common-linux
+++ b/poky/meta/site/common-linux
@@ -1,6 +1,9 @@
# gettext - these add sleep delays otherwise
gl_cv_func_sleep_works=${gl_cv_func_sleep_works=yes}
gl_cv_header_working_fcntl_h=${gl_cv_header_working_fcntl_h=yes}
+# the euc-jp tests in iconv.m4 break elfutils and libunistring depending on the
+# host locales installed. Avoid this by skipping the tests, we're not on HP-UX!
+am_cv_func_iconv_works=${am_cv_func_iconv_works=yes}
# apr
ac_cv_file__dev_zero=${ac_cv_file__dev_zero=yes}
diff --git a/poky/scripts/bitbake-whatchanged b/poky/scripts/bitbake-whatchanged
index 3095dafa4..6f4b26811 100755
--- a/poky/scripts/bitbake-whatchanged
+++ b/poky/scripts/bitbake-whatchanged
@@ -217,7 +217,7 @@ print what will be done between the current and last builds, for example:
# Edit the recipes
$ bitbake-whatchanged core-image-sato
-The changes will be printed"
+The changes will be printed.
Note:
The amount of tasks is not accurate when the task is "do_build" since
diff --git a/poky/scripts/contrib/documentation-audit.sh b/poky/scripts/contrib/documentation-audit.sh
index 1191f57a8..f436f9bae 100755
--- a/poky/scripts/contrib/documentation-audit.sh
+++ b/poky/scripts/contrib/documentation-audit.sh
@@ -27,7 +27,7 @@ fi
echo "REMINDER: you need to build for MACHINE=qemux86 or you won't get useful results"
echo "REMINDER: you need to set LICENSE_FLAGS_WHITELIST appropriately in local.conf or "
-echo " you'll get false positives. For example, LICENSE_FLAGS_WHITELIST = \"Commercial\""
+echo " you'll get false positives. For example, LICENSE_FLAGS_WHITELIST = \"commercial\""
for pkg in `bitbake -s | awk '{ print \$1 }'`; do
if [[ "$pkg" == "Loading" || "$pkg" == "Loaded" ||
diff --git a/poky/scripts/contrib/list-packageconfig-flags.py b/poky/scripts/contrib/list-packageconfig-flags.py
index d6de4dc84..bb288e909 100755
--- a/poky/scripts/contrib/list-packageconfig-flags.py
+++ b/poky/scripts/contrib/list-packageconfig-flags.py
@@ -33,7 +33,7 @@ import bb.tinfoil
def get_fnlist(bbhandler, pkg_pn, preferred):
''' Get all recipe file names '''
if preferred:
- (latest_versions, preferred_versions) = bb.providers.findProviders(bbhandler.config_data, bbhandler.cooker.recipecaches[''], pkg_pn)
+ (latest_versions, preferred_versions, required_versions) = bb.providers.findProviders(bbhandler.config_data, bbhandler.cooker.recipecaches[''], pkg_pn)
fn_list = []
for pn in sorted(pkg_pn):
diff --git a/poky/scripts/lib/devtool/standard.py b/poky/scripts/lib/devtool/standard.py
index 7b62b7e7b..f364a4528 100644
--- a/poky/scripts/lib/devtool/standard.py
+++ b/poky/scripts/lib/devtool/standard.py
@@ -953,12 +953,17 @@ def modify(args, config, basepath, workspace):
if bb.data.inherits_class('kernel', rd):
f.write('SRCTREECOVEREDTASKS = "do_validate_branches do_kernel_checkout '
- 'do_fetch do_unpack do_kernel_configme do_kernel_configcheck"\n')
+ 'do_fetch do_unpack do_kernel_configcheck"\n')
f.write('\ndo_patch[noexec] = "1"\n')
f.write('\ndo_configure_append() {\n'
' cp ${B}/.config ${S}/.config.baseline\n'
' ln -sfT ${B}/.config ${S}/.config.new\n'
'}\n')
+ f.write('\ndo_kernel_configme_prepend() {\n'
+ ' if [ -e ${S}/.config ]; then\n'
+ ' mv ${S}/.config ${S}/.config.old\n'
+ ' fi\n'
+ '}\n')
if rd.getVarFlag('do_menuconfig','task'):
f.write('\ndo_configure_append() {\n'
' if [ ! ${DEVTOOL_DISABLE_MENUCONFIG} ]; then\n'
diff --git a/poky/scripts/oe-time-dd-test.sh b/poky/scripts/oe-time-dd-test.sh
new file mode 100644
index 000000000..970a86dff
--- /dev/null
+++ b/poky/scripts/oe-time-dd-test.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+#
+# oe-time-dd-test records how much time it takes to
+# write <count> number of kilobytes to the filesystem.
+# It also records the number of processes that are in
+# running (R), uninterruptible sleep (D) and interruptible
+# sleep (S) state from the output of "top" command.
+# The purporse of this script is to find which part of
+# the build system puts stress on the filesystem io and
+# log all the processes.
+
+usage() {
+ echo "Usage: $0 <count>"
+}
+
+if [ $# -ne 1 ]; then
+ usage
+ exit 1
+fi
+
+uptime
+/usr/bin/time -f "%e" dd if=/dev/zero of=foo bs=1024 count=$1 conv=fsync
+top -b -n 1 | grep -v "0 0 0" | grep -E ' [RSD] ' | cut -c 46-47 | sort | uniq -c
diff --git a/poky/scripts/runqemu b/poky/scripts/runqemu
index 532f2e338..ba0b701af 100755
--- a/poky/scripts/runqemu
+++ b/poky/scripts/runqemu
@@ -139,6 +139,7 @@ class BaseConfig(object):
'OE_TMPDIR',
'OECORE_NATIVE_SYSROOT',
'MULTICONFIG',
+ 'SERIAL_CONSOLES',
)
self.qemu_opt = ''
@@ -173,6 +174,13 @@ class BaseConfig(object):
self.nfs_running = False
self.serialconsole = False
self.serialstdio = False
+ self.nographic = False
+ self.sdl = False
+ self.gtk = False
+ self.gl = False
+ self.gl_es = False
+ self.egl_headless = False
+ self.novga = False
self.cleantap = False
self.saved_stty = ''
self.audio_enabled = False
@@ -459,44 +467,22 @@ class BaseConfig(object):
if arg in self.fstypes + self.vmtypes + self.wictypes:
self.check_arg_fstype(arg)
elif arg == 'nographic':
- if ('sdl' in sys.argv):
- raise RunQemuError('Option nographic makes no sense alongside the sdl option.' % (arg))
- if ('gtk' in sys.argv):
- raise RunQemuError('Option nographic makes no sense alongside the gtk option.' % (arg))
- self.qemu_opt_script += ' -nographic'
- self.kernel_cmdline_script += ' console=ttyS0'
+ self.nographic = True
elif arg == 'sdl':
- if 'gl' in sys.argv[1:]:
- self.set_dri_path()
- self.qemu_opt_script += ' -vga virtio -display sdl,gl=on,show-cursor=on'
- elif 'gl-es' in sys.argv[1:]:
- self.set_dri_path()
- self.qemu_opt_script += ' -vga virtio -display sdl,gl=es,show-cursor=on'
- else:
- self.qemu_opt_script += ' -display sdl,show-cursor=on'
+ self.sdl = True
elif arg == 'gtk':
- if 'gl' in sys.argv[1:]:
- self.set_dri_path()
- self.qemu_opt_script += ' -vga virtio -display gtk,gl=on,show-cursor=on'
- elif 'gl-es' in sys.argv[1:]:
- self.set_dri_path()
- self.qemu_opt_script += ' -vga virtio -display gtk,gl=es,show-cursor=on'
- else:
- self.qemu_opt_script += ' -display gtk,show-cursor=on'
- elif arg == 'gl' or arg == 'gl-es':
- # These args are handled inside sdl or gtk blocks above
- if ('gtk' not in sys.argv) and ('sdl' not in sys.argv):
- raise RunQemuError('Option %s also needs gtk or sdl option.' % (arg))
+ self.gtk = True
+ elif arg == 'gl':
+ self.gl = True
+ elif 'gl-es' in sys.argv[1:]:
+ self.gl_es = True
elif arg == 'egl-headless':
- self.set_dri_path()
- self.qemu_opt_script += ' -vga virtio -display egl-headless,show-cursor=on'
+ self.egl_headless = True
elif arg == 'novga':
- self.qemu_opt_script += ' -vga none'
+ self.novga = True
elif arg == 'serial':
- self.kernel_cmdline_script += ' console=ttyS0'
self.serialconsole = True
elif arg == "serialstdio":
- self.kernel_cmdline_script += ' console=ttyS0'
self.serialstdio = True
elif arg == 'audio':
logger.info("Enabling audio in qemu")
@@ -1210,6 +1196,15 @@ class BaseConfig(object):
self.fstype = self.fstype[4:]
rootfs_format = self.fstype if self.fstype in ('vmdk', 'vhd', 'vhdx', 'qcow2', 'vdi') else 'raw'
+ tmpfsdir = os.environ.get("RUNQEMU_TMPFS_DIR", None)
+ if self.snapshot and tmpfsdir:
+ newrootfs = os.path.join(tmpfsdir, os.path.basename(self.rootfs)) + "." + str(os.getpid())
+ shutil.copyfile(self.rootfs, newrootfs)
+ #print("Copying rootfs to tmpfs: %s" % newrootfs)
+ self.rootfs = newrootfs
+ # Don't need a second copy now!
+ self.snapshot = False
+
qb_rootfs_opt = self.get('QB_ROOTFS_OPT')
if qb_rootfs_opt:
self.rootfs_options = qb_rootfs_opt.replace('@ROOTFS@', self.rootfs)
@@ -1321,6 +1316,65 @@ class BaseConfig(object):
raise RunQemuError("Failed to boot, QB_SYSTEM_NAME is NULL!")
self.qemu_system = qemu_system
+ def setup_vga(self):
+ if self.nographic == True:
+ if self.sdl == True:
+ raise RunQemuError('Option nographic makes no sense alongside the sdl option.')
+ if self.gtk == True:
+ raise RunQemuError('Option nographic makes no sense alongside the gtk option.')
+ self.qemu_opt += ' -nographic'
+
+ if self.novga == True:
+ self.qemu_opt += ' -vga none'
+ return
+
+ if (self.gl_es == True or self.gl == True) and (self.sdl == False and self.gtk == False):
+ raise RunQemuError('Option gl/gl-es needs gtk or sdl option.')
+
+ if self.sdl == True or self.gtk == True or self.egl_headless == True:
+ self.set_dri_path()
+ self.qemu_opt += ' -vga virtio -display '
+ if self.egl_headless == True:
+ self.qemu_opt += 'egl-headless,'
+ else:
+ if self.sdl == True:
+ self.qemu_opt += 'sdl,'
+ elif self.gtk == True:
+ self.qemu_opt += 'gtk,'
+
+ if self.gl == True:
+ self.qemu_opt += 'gl=on,'
+ elif self.gl_es == True:
+ self.qemu_opt += 'gl=es,'
+ self.qemu_opt += 'show-cursor=on'
+
+ self.qemu_opt += ' %s' %self.get('QB_GRAPHICS')
+
+ def setup_serial(self):
+ # Setup correct kernel command line for serial
+ if self.serialstdio == True or self.serialconsole == True or self.nographic == True or self.tcpserial_portnum:
+ for entry in self.get('SERIAL_CONSOLES').split(' '):
+ self.kernel_cmdline_script += ' console=%s' %entry.split(';')[1]
+
+ if self.serialstdio == True or self.nographic == True:
+ self.qemu_opt += " -serial mon:stdio"
+ else:
+ self.qemu_opt += " -serial mon:vc"
+ if self.serialconsole:
+ if sys.stdin.isatty():
+ subprocess.check_call(("stty", "intr", "^]"))
+ logger.info("Interrupt character is '^]'")
+
+ self.qemu_opt += " %s" % self.get("QB_SERIAL_OPT")
+
+ # We always wants ttyS0 and ttyS1 in qemu machines (see SERIAL_CONSOLES).
+ # If no serial or serialtcp options were specified, only ttyS0 is created
+ # and sysvinit shows an error trying to enable ttyS1:
+ # INIT: Id "S1" respawning too fast: disabled for 5 minutes
+ serial_num = len(re.findall("-serial", self.qemu_opt))
+ if serial_num < 2:
+ self.qemu_opt += " -serial null"
+
def setup_final(self):
qemu_bin = os.path.join(self.bindir_native, self.qemu_system)
@@ -1345,6 +1399,8 @@ class BaseConfig(object):
for ovmf in self.ovmf_bios:
format = ovmf.rsplit('.', 1)[-1]
+ if format == "bin":
+ format = "raw"
self.qemu_opt += ' -drive if=pflash,format=%s,file=%s' % (format, ovmf)
self.qemu_opt += ' ' + self.qemu_opt_script
@@ -1363,37 +1419,8 @@ class BaseConfig(object):
if self.snapshot:
self.qemu_opt += " -snapshot"
- if self.serialconsole:
- if sys.stdin.isatty():
- subprocess.check_call(("stty", "intr", "^]"))
- logger.info("Interrupt character is '^]'")
-
- first_serial = ""
- if not re.search("-nographic", self.qemu_opt):
- first_serial = "-serial mon:vc"
- # We always want a ttyS1. Since qemu by default adds a serial
- # port when nodefaults is not specified, it seems that all that
- # would be needed is to make sure a "-serial" is there. However,
- # it appears that when "-serial" is specified, it ignores the
- # default serial port that is normally added. So here we make
- # sure to add two -serial if there are none. And only one if
- # there is one -serial already.
- serial_num = len(re.findall("-serial", self.qemu_opt))
- if serial_num == 0:
- self.qemu_opt += " %s %s" % (first_serial, self.get("QB_SERIAL_OPT"))
- elif serial_num == 1:
- self.qemu_opt += " %s" % self.get("QB_SERIAL_OPT")
-
- # We always wants ttyS0 and ttyS1 in qemu machines (see SERIAL_CONSOLES),
- # if not serial or serialtcp options was specified only ttyS0 is created
- # and sysvinit shows an error trying to enable ttyS1:
- # INIT: Id "S1" respawning too fast: disabled for 5 minutes
- serial_num = len(re.findall("-serial", self.qemu_opt))
- if serial_num == 0:
- if re.search("-nographic", self.qemu_opt) or self.serialstdio:
- self.qemu_opt += " -serial mon:stdio -serial null"
- else:
- self.qemu_opt += " -serial mon:vc -serial null"
+ self.setup_serial()
+ self.setup_vga()
def start_qemu(self):
import shlex
diff --git a/poky/scripts/sstate-diff-machines.sh b/poky/scripts/sstate-diff-machines.sh
index 1d721eb87..8b64e11be 100755
--- a/poky/scripts/sstate-diff-machines.sh
+++ b/poky/scripts/sstate-diff-machines.sh
@@ -127,6 +127,8 @@ for M in ${machines}; do
fi
done
+COMPARE_TASKS="do_configure.sigdata do_populate_sysroot.sigdata do_package_write_ipk.sigdata do_package_write_rpm.sigdata do_package_write_deb.sigdata do_package_write_tar.sigdata"
+
function compareSignatures() {
MACHINE1=$1
MACHINE2=$2
@@ -134,7 +136,7 @@ function compareSignatures() {
PRE_PATTERN=""
[ -n "${PATTERN}" ] || PRE_PATTERN="-v"
[ -n "${PATTERN}" ] || PATTERN="MACHINE"
- for TASK in do_configure.sigdata do_populate_sysroot.sigdata do_package_write_ipk.sigdata; do
+ for TASK in $COMPARE_TASKS; do
printf "\n\n === Comparing signatures for task ${TASK} between ${MACHINE1} and ${MACHINE2} ===\n" | tee -a ${OUTPUT}/signatures.${MACHINE2}.${TASK}.log
diff ${OUTPUT}/${MACHINE1}/list.M ${OUTPUT}/${MACHINE2}/list.M | grep ${PRE_PATTERN} "${PATTERN}" | grep ${TASK} > ${OUTPUT}/signatures.${MACHINE2}.${TASK}
for i in `cat ${OUTPUT}/signatures.${MACHINE2}.${TASK} | sed 's#[^/]*/\([^/]*\)/.*#\1#g' | sort -u | xargs`; do
diff --git a/poky/scripts/verify-bashisms b/poky/scripts/verify-bashisms
index fb0cc719e..14d8c298e 100755
--- a/poky/scripts/verify-bashisms
+++ b/poky/scripts/verify-bashisms
@@ -100,7 +100,7 @@ if __name__=='__main__':
args = parser.parse_args()
if shutil.which("checkbashisms.pl") is None:
- print("Cannot find checkbashisms.pl on $PATH, get it from https://anonscm.debian.org/cgit/collab-maint/devscripts.git/plain/scripts/checkbashisms.pl")
+ print("Cannot find checkbashisms.pl on $PATH, get it from https://salsa.debian.org/debian/devscripts/raw/master/scripts/checkbashisms.pl")
sys.exit(1)
# The order of defining the worker function,